From ce1d6780bfe3cbd563c96fe84be392707c8c66da Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Tue, 14 Apr 2026 16:11:26 +0200 Subject: [PATCH 01/17] [releng] Prepare the changelog for 2026.5.0 --- CHANGELOG.adoc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 56c25c9..2939a38 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -1,5 +1,16 @@ = Changelog +== v2026.5.0 + +=== Dependency update + +=== New features + +=== Improvements + +=== Bug fixes + + == v2026.3.0 === Dependency update From fa7794885d3c309ec22d08a4e33eebfb09b9a7fd Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Mon, 13 Apr 2026 15:12:10 +0200 Subject: [PATCH 02/17] [43] Add the empty pepper project to the home menu Issue : https://github.com/ObeoNetwork/pepper/issues/43 --- CHANGELOG.adoc | 3 +++ .../PepperMMProjectTemplateInitializer.java | 17 +++++++++++++++-- .../PepperMMProjectTemplateProvider.java | 11 ++++++++--- .../PepperMM-EmptyProject.png | Bin 0 -> 28361 bytes ...pperMM-Template.png => PepperMM-Sample.png} | Bin 5 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 backend/pepper-starter/src/main/resources/project-templates/PepperMM-EmptyProject.png rename backend/pepper-starter/src/main/resources/project-templates/{PepperMM-Template.png => PepperMM-Sample.png} (100%) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 2939a38..6f1e33a 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -8,6 +8,9 @@ === Improvements +- https://github.com/ObeoNetwork/pepper/issues/43[#43] Add an empty pepper template to the home menu + + === Bug fixes diff --git a/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java b/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java index 93a3f26..80090cd 100644 --- a/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java +++ b/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java @@ -23,6 +23,9 @@ import org.eclipse.sirius.web.application.project.services.api.ISemanticDataInitializer; import org.springframework.stereotype.Service; +import static pepper.starter.services.PepperMMProjectTemplateProvider.PEPPERMM_EMPTY; +import static pepper.starter.services.PepperMMProjectTemplateProvider.PEPPERMM_PEPPER_SAMPLE; + /** * Provides Pepper meta model specific project templates initializers. * @@ -39,7 +42,7 @@ public PepperMMProjectTemplateInitializer(IEditingContextPersistenceService edit @Override public boolean canHandle(String projectTemplateId) { - return PepperMMProjectTemplateProvider.PEPPERMM_EXAMPLE_TEMPLATE_ID.equals(projectTemplateId); + return PepperMMProjectTemplateProvider.PEPPERMM_EXAMPLE_TEMPLATE_ID.equals(projectTemplateId) || PepperMMProjectTemplateProvider.PEPPERMM_EMPTY_TEMPLATE_ID.equals(projectTemplateId); } @Override @@ -47,12 +50,22 @@ public void handle(ICause cause, IEditingContext editingContext, String projectT if (PepperMMProjectTemplateProvider.PEPPERMM_EXAMPLE_TEMPLATE_ID.equals(projectTemplateId) && editingContext instanceof IEMFEditingContext emfEditingContext) { var documentId = UUID.randomUUID(); var resource = new JSONResourceFactory().createResourceFromPath(documentId.toString()); - var resourceMetadataAdapter = new ResourceMetadataAdapter("Pepper"); + var resourceMetadataAdapter = new ResourceMetadataAdapter(PEPPERMM_PEPPER_SAMPLE); resource.eAdapters().add(resourceMetadataAdapter); emfEditingContext.getDomain().getResourceSet().getResources().add(resource); resource.getContents().add(new PepperMMSampleBuilder().getSampleContent()); + this.editingContextPersistenceService.persist(cause, editingContext); + } else if (PepperMMProjectTemplateProvider.PEPPERMM_EMPTY_TEMPLATE_ID.equals(projectTemplateId) && editingContext instanceof IEMFEditingContext emfEditingContext) { + var documentId = UUID.randomUUID(); + var resource = new JSONResourceFactory().createResourceFromPath(documentId.toString()); + var resourceMetadataAdapter = new ResourceMetadataAdapter(PEPPERMM_EMPTY); + resource.eAdapters().add(resourceMetadataAdapter); + emfEditingContext.getDomain().getResourceSet().getResources().add(resource); + + resource.getContents().add(new PepperMMSampleBuilder().getEmptySampleContent()); + this.editingContextPersistenceService.persist(cause, editingContext); } } diff --git a/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateProvider.java b/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateProvider.java index 7afa81d..5354055 100644 --- a/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateProvider.java +++ b/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateProvider.java @@ -27,13 +27,18 @@ @Service public class PepperMMProjectTemplateProvider implements IProjectTemplateProvider { - public static final String PEPPERMM_EXAMPLE_TEMPLATE_ID = "pepper-template"; + public static final String PEPPERMM_EXAMPLE_TEMPLATE_ID = "pepper-sample"; + public static final String PEPPERMM_PEPPER_SAMPLE = "Pepper Sample"; + + public static final String PEPPERMM_EMPTY_TEMPLATE_ID = "pepper-empty-project"; + public static final String PEPPERMM_EMPTY = "Pepper Empty Project"; public static final String PEPPERMM_NATURE = "siriusWeb://nature?kind=peppermm"; @Override public List getProjectTemplates() { - var pepperMMTemplate = new ProjectTemplate(PEPPERMM_EXAMPLE_TEMPLATE_ID, "Pepper", "/project-templates/PepperMM-Template.png", List.of(new ProjectTemplateNature(PEPPERMM_NATURE))); - return List.of(pepperMMTemplate); + var pepperMMTemplate = new ProjectTemplate(PEPPERMM_EXAMPLE_TEMPLATE_ID, PEPPERMM_PEPPER_SAMPLE, "/project-templates/PepperMM-Sample.png", List.of(new ProjectTemplateNature(PEPPERMM_NATURE))); + var pepperMMEmptyTemplate = new ProjectTemplate(PEPPERMM_EMPTY_TEMPLATE_ID, PEPPERMM_EMPTY, "/project-templates/PepperMM-EmptyProject.png", List.of(new ProjectTemplateNature(PEPPERMM_NATURE))); + return List.of(pepperMMTemplate, pepperMMEmptyTemplate); } } diff --git a/backend/pepper-starter/src/main/resources/project-templates/PepperMM-EmptyProject.png b/backend/pepper-starter/src/main/resources/project-templates/PepperMM-EmptyProject.png new file mode 100644 index 0000000000000000000000000000000000000000..423b7513bf480f28432b3aa5b44153726f14abae GIT binary patch literal 28361 zcmeHvdq5L+w!eK?YN@5IUD;M4+ls|rD_OOQ3MAWZUFxNp>$aAyJW@ra6-bORypyq7 ztCmV`MWOOaTdPzpq=*ngAR{V96o?uz;E)UuA%-vsAuxGNX682$bocHp?eF*N`rGdP z@dr%i^_?^4obNfG^Z3sG|5y__{fQTzm@;L`^i^-Y`R6H99yu~)%EPUXKSmun#yG~O zHV^Ut9QnqSiniG%YUk0!*H^zjWlE*k*Rx?NwLfj!TklgBJ-fsE_mF-IEuA{}?2eUx z+3^l{%Z{`S+c!^%+`f4;hyNjWNBp|SsarUISoP-X@21BiI3`1q;;*KaGS9N{m8v^2 zgF*kEw(nW!x2wva&$k3UZ}K$-mH+9vfYtN2KEB|MeJ{Qs-}hG1{-BM2-nemP-dj(< z^ym*W9(jG}01w!4mrM0WH#?EmiBW4AdNPG3#AK zu8mKsa1=_c#S;8`;Z0xI9s%=TT6HjJ)$p^*p*hUqIl?nS4kTjcr+*Ljsxan);#KtY-M)O9GdHrDPvgcDP;3Ad-nKO zjGhABr&zG71a@`rb2yC_gMwkIV!_T+ZTL5uFuiCL3F*U>!zpEsh#e5L#_GO&iW`mZ zNdwc}`C?a>MnPz}^5Lu^Dc*9W48+vr5ltA_J*&bKNWEpVQRAgiF2Up)7CFLV+k%1N zU>4IhgUQQ;AU*1g>W9Gok(((eJm1P9vax89Yxib*xrCe%O|~Ssm1^=EO(@YXT^_Rt zPIYI2163@*x-h>*ob5bcM)S-842?pOwg4Rc8pifWvP~l?<_NN5`20`Gfg=|r#)`qHX zH~B>MYfIy^4f$5jorA8cMYRu&Erhu}YME61PWl%Ic9D ziXNdy<~OYHb?X=#2uURw~>+~sOidrtZ|41k+0Y%}d zhZG>D5OatBLXDN%b;c8*Y#OcI6sR}aY79~?u}s{CT0>+2AjiX65IBKDF6Ar45ZLY= zYA3%`G1neST!fuhL3!8ARx75ohABI7c|XLa_5a|BNXO2D=j$y&_E#1h@tfH~X{Qf4 zw=<=&tJA*~0U5qtdcxGYgRZ&k;kjjM=jZD5^IZHUH$tdN%U0Q119zVyXtN%;xGVhVwGE%aPA5PG;OXm@yi8v|c$_N=9#`9T8{W9!UT!vsj?hZehH897Ly5U}1)094a+4ChWlB=^C#~UTYKqo?!_ma$y`CN#(PJoLK5KPd`CYar@WrTo;E_dtZ1cDBVKQlU8pCD5K-o=@EDx+hGnI zR*42xxm>S-o>DtC>Sgb?d*fdgd0%CU|M`Q{yxZE}=D+RTo^ASJ)5G2$A)n5j;oWXq z_$p=2DVgMKXud1v*w0M`EnLq!N$Y;E_5NXI{@aXo-m$)K@?~SIxe;G@O;*OVGUnLz z;bH&xk9zXQsLiugG3`o?*fYeM&83`7`paKtHG59d!*K&y1*h(2r@IFX&?Ao9=V`p5~eW!9k-U{JpFqeLgfsCwVZu10mUvr)$`-@oMsDX)m4PJ150`zEDY)3VmnyvZT zOHDIq@U3t~6-PR>WF5?RE3LSXDoq^O%@wuFVoh#;at=^Jy>ID)kh)Do4}e8U>!-K@ zqJo}%C#445&s4VdYqLjXjFHs+G5IYTQzVN$VuP^MZ}wxA5$}ZI^$;SCIVIP}3Zcr3|rX~%f>u{3MN;a^w zvlmlpRCak~L5tdXMqAK=Y}yX2mEo<}7j}OkjZ|k3d^OkJ4+HoidzXFXND)hNT8B2n zo~x2hE?Eu?NBYSU)+q<0KzF0Tz$W~ehLIUeqRJ1~Gt-SMCGVtDOWq=#SFLe{)EkKU z%V4ZqNPf(6EmpyqK{eb0onB3uZZOkR9@z_$pUMKZIAkS66*waB6Z)DgsCA}ThUWq} zGhBJ)l@8@pDuO%hpdk;*uGu_?lC*NNL zbc4(Ao98z=KWOwg$=;DG@Jj6340RP0&wj%%_$xm~J{J@gdYyk+n$lj<><2i{tC+-F zp6hg>vr(2tyhA#zD{!Y6Z_SV!KHx#Y@sH#gVvYNw7|6R1hR6mTWrVbZ6vINVU^7{Wsb6+*x zHSLR;_Ql-Ma<0&96EhY;vJW`okCBDKw$x!!n-wnsh8v*MK2{Tfp%I%EliFuT?!UpV-j50DGqi?uRJ_uXX25Z zkRur2G;*_>$Q_>YS*`?9&wgQ;Mr4!}DMtkfWN4AXSayhpH-r+!+{426I^sR#Vajk; z)OUa*IRt3~oE1Le9HxVGedYraC1k&mapwEvDBVSr`=X2uU@@>L-LIf$7Kx@Y(@FMl zVmwF#%`&0B+>wCM?SD?8KNwp`|wxQWC<-J)tC*Y~1~hIi=DwOx{kSc}V0F zH=ltqBO0s?(%IzWlmT6Qg;Ma~wz#PN)o=)QF{e!|iW;;9@v)=8b}Wq(N-|0VAz5%B z+XLK86y99P9DTG~DeeqzNyNFvyGk#uA3&o3CXz7@)%nf4^WOw6s`9cV64o@6ONQvnX zJNSIeQA?Tk#ixfTzs9^{cbjgv&uBIS$NPx|RcvQ>%w{S1+w{U@Isp&o%VIq%$u?lv zpXlGM(hA6RS{m`SWEoBq*=di zl=dgaP0kQ_dcGRk0~vu}n0A(A=`avaja)xwT$lAKTW z(v}NVG8*0M`qWFQNiDev#G&iCZuF)>(y6x;0t(j(8NPS-Q2h_WoI4~DiZ|{J424cR z`srAqk9ZW(k{8KQ{-@-;{bf8Ry0Sdv2=vAo^2sjPGfM>T=Gt`~1ub;pd$s>Cf#3&Sz-$&l_4>vyw|* zdx>xU7lXLhc4!#7p*D8T_;1dXbG9R?V!sI{O-f7hm7#XZ+OaX z90d?DdsCyruRuu?XCBO$v1SoX!uB+=SKwd6jznqp8o(najv0z5Y!beX@_&}#BSsDr zv=$?9U;wI}W<2AisoRu40%+VnkQC%Y|JkVb^X_Cu-1%Zm*`I1=9>h&y2u& z9SX9EKDH=3FLGlR0AaU0F@TvH0ASOpXpCV!Aj_KBVKE1bdV`fbNeu~zNHtShR8Lnq z_<1mz0;hV8vJTl*m;1{^17)Rp0+lgGma0^G6on)Tx;0a)2&|VNw(Xn9hE@aK(Lqaq zpokC%lUt2E2?sJ*=PP^X2WA#UZpiw6HjNo7x2=+ltn$l#A=xpSjn*)0{((C+nItqSkFhS6byFZT8xvGIMgPdN?t8c9ikCM)5>jWgtH8nI1IUuPYjK0Er5BSvwQHjxL;p)r{b)C&H`$u`ppY5R2?%57(bB#`zruW* z%pH;uM^3k<|9Fl%6-!xw_H|$P>%~{zsyeqC@U4ZF;Nufpz=&a|3QtQzU$tHvNVIB^7|W7+|y z`vY*Mc*{lYGhvWcpipBEd(Kq+Mt#e??*OtK`>3Vs;`h=yOVOlumk_3rVtW9~(NkkA zDSCl19hEu+Wg6DOGFRaSl5+&-+0WVLc^EuS)*=S56Mk(FlYrK|F2cyo?5VF5+GN3E zbI2~0|5^-YNUCr-Vo0VX0J}N~2jjeg`C_aik((r6IMB$CD=4u`d*Wo)vMt61R=YsQ z-WKb~C}qFP$=q-{txj#oFdW}Z$qTWPo`>t<0=o)MgX9KxvZiCkP^QWW~XX z?{pk@ChRciFQ7_J=EEIUb=+csChyW}8Qg>}sr_gg%tVO-e{IAOj*LAp^$$I3w}`+s zh*(~3MCCeJ`$eKdm)NVcCO(%oD(8IELA1C81I}8=nBZ8;FskHAac_-!1JF~;{v)^U z)7e}YXoygT*j8+0zOr2TJK%a$|Epe2W86e5t%ZB8#cDSvD)2hBy$+&}uGpAhR^YC( z#$)l3Hv%C{alyPV(d6PLU|)vDfvB-Yv1Q=6@oW(Xco&sIHUndNVBd-#*m)tNg&VNN zMzxHd?3a(^7Sr~yKQrWMQ6ln5EaNIdutTRnDm_DGSh)>+JlTF(;i=1w#~YXHl|Vp^|4@vi941_`X|LD&VJq$Rjp)J} z=@nOw1WDk?-~z+-%1ZW|HNHclXBfcevn9VrWiTzqC_Z9m%D{cM2oJgxA}wsOxenf& zAX6yy+SaSW4!w4@|4E$Dwd9@9xIs=GzP3}DuTq&-)1O)zGRm7Tc7IaIPIQ>vl%iYh zs1ZHZQzJEMHcF}x(P49o4QiIX-$hHq`0c36!k0I+3iFSfYY{i&pz!8pe!Jf8Ob^p5 z$xNV4N8=V`22{pXp?j>(f;Z-TIV!kt^FuH-;&S!IM^z!l!NqB})3Iah$U$q8wZ1`u zBxQN7eEv*qui#CD*Q|X8>xvtwbJQj~`i>h*aDIK#aZct_^(HiOv&0;1tF6n4ls}a$ z!RE3T4`#t=x^8{=2y$AyU1iyrWyF3rc+KI1F@mtO%z-JhmxC}AoSOYC%rqgQ+4Nly z6z{(sI6F89Skk{xAdTdAgRFN$M?2^*sjzL+a^u?MCPoP?(lzZ!AY*WI=?~WPE?=+& zudLB26}X$XSC~aJvLQo)*_n~T%~E!7#1eDhEGPv_FdyeSbTo|$vRX7xd!WP4lEkQC}!JI6OA%T3hd?^RZWUNM2 z4h9ApvJ@6tSaR2yKg?#z8n9!vW{T6uimHe$lWF_U-tp3Q;F;{~`T$Dhg~_gY zVr@|etRhD1E#~x(wqytJV*ea+jo>ZwYL<#{AqApC_*|ckU;zSwXUVKF}lZ?zX7a)9rVvaT93y1pd!`#>BS*g;?}+S zErz^H!sX!Ol1OUM>1r3eY;a-VXfLlVt9n+U5S1${H)XUZdS3 zw8vSnidE#b>5_7M(@1YrKk*Ha#Z={3h-ra78~nDzJ{H@#%=#e<{oBws`Yu)QPJZqJ z&J!XHB0fi~lq35`YOu^{ZHn2Q9MJNTK!nBl4HW6qHnUrDqflECSjCiwx8+?T7&WRs zQ6&R-+sc;VQ?I%34nSB0L4y*lfD(unUrTZGVk+q1&hP9ZNKvn?R%|LkaQ%pqQ&?g^ zRBTv)2|Fuhse%!MVJl@dS;NydgLFu{4I?Af(z4Jca%$f8QHG@I!p%)ZYDCF#xST-#RHVghxdQ6?5qPz+TDR=b4h#oA}8Rg`5ZW*UpD$i5NRK~GREk|fX! z&gL=+cLg**wB#k`>NZfM()t!1jbA({7TcL=*XHtb8pzcuUSn6S>EqKt7bf~5*Z-y+ zT)u*wS#SU`SkF7pl+JGJv|=cOll9PPL4fNVT7Tt>BIQz}%qmf(NX}CR7FIr{oU#3z+P!sti{QD@>MXIHC+_mP!PHzC z4G?M(N1tcKX`n%>SQ_g#=$mZr)LEfAnb!k(t;4B7{tx8bexh2}#rjRn^Ds3Pj5TS% z?154IqtoD9x7f=9CD_%Kq_%k+Y`yNaFqKyTX7n;qvQc%us;oJM4bBM_5}`WLENs-` zp+8Emp#tIG$pVgXS-mQ7t-jWh8}WqdDx%s@5j<(kJ~3-{=v2^zo=Yiv z+c@ZdLZP?tmRYxNQsC)d+=2omvn}gS2JS)ZO4Ga9i3<2=ehbBOt}av>Gwc8nJ)_NK zNVf8|yJTr$@n50Ar3sEVOf}5T07*US|4t|__i9+<>MDLc?lhM`ddKQP?FnQ%A#u`W5Z-rBK&~mk> zq1qEyC{%Qjq4uXz7#}wzHFkB-YgMw0E^u0H$Q{NR)jREml|#;R8;zbAZ)xTC+pcxE@)cS-Qid}PsdsR4XW--msqa|#QRH%wiweflob2haC4SU0_Gt0 zFeQldGDVm`OqFSuMe=l`$jiBig@P1vuKkNa`uAdS-vPv2r#_F84ppnINh1)KQNcm_ zAuo56T5K`%(@_6I*eG(`Skz!3merd^&w1gXXaQ5yRm1^b)3$n*w)c`iaz5{NM_;kI zzsDJ#Mky#Z>UMU;61{x~yBw6xF6L9U0^;$ zavVZ1C6TLaz|qtg5PuV??;`~A1GxD#?n)?X#ix;;h1Dd2pdcjWX09EbH@KMRnVpLI ze^{gfgE|4Of(DT=6=lHZ>e9lj3Q%oV_EoM^q$FFd*)ttjYO_C|f~g$N(%dS(2ElxH z;k;@ch=^$PEm<=A7Hwtd3dS0lBaQI?0MlBXJgGuGr;{m#l$J16YN#$gCP0puU1vI^ z4`BvTQ5j;tMWj)|Ch;YMU5g&+(xY`M4N(gbX+Z2DjyO{YJUb|M;d=}sCVGS!Ki?5( z)P9N=g3PBJNd_A)qh3gk#)*rdcv|>=f1X!to)x_-DzMq5K@`#pKcIbP7M3vJF)&W3 zZnQBTQK>f=YbYBXDGXSv(4pZO_2Q$Q7L|Zs#Val;;z*@)0ym?m)U2sJ4qv2zMs5kG zP6$ZSgcU|{5wei~#aur4A6>UyCAUIuVDOV1P}cBxt$7XHBzRp+wrw)j<#fBQT7Z6M z)AGkCdow&mM;nx7v=OcYx9dW}FzsNyTJLaHLxCR{7f{hjGEZkr-$bFYW_!O%b%PSh zR0q$$r3A8AiO?(+_#)KFaM;zGllY#P_5B&h8RQZwEYpT~%S0`F zN*WLnvllljV6_2i&*{D>SPXcc%E1v-dgT}``mniz8_G-GPC4l71I1prk%uIm7KRwv z8r+;Yn5xr?vWlpnlo-_!X%ack577mVx`}T)q$`bTEoQgc7B;k=Bjj8z7#EBtUDw;| zw7y!MlB^5oKWg~h9;_q&HK!?7Jm9cD#|fBv+Y6gk;&n$svFB?I#>}Od5D6l zMuFD653;DfFb8V15v<%TWUw+pZ~9S zW8S-6XL41Eo1qc9i+k(63*+~vt{)B}OIlk#6fk#W?LfI<3{g}F=VCR%sn4yY)#-9O z6{Q%%p_7j#IsfAynC!gh%N(_&Nygi0^54GOFVl2plXn|L@Avf<=0BPVSel~O(3Qgj zwipp_`g*~cfe+iSowW0jm#6FKIvMvim8g(3Xjw zs(s9R%zI0QkeBJYyhIY+elqE?u(4zBSGIo=)xSQ5m^U`)(RC_QZ1ky$=LfxyIJz#e z>Ae{tN0L%pN3T+Qk*BCfl=0)r>$dzbwpa3-nANqLDysX$Z+OpnA648Y_^-tD9F*V8 zXFhR{4BiUuKbU~(O%=|?oBs6m7=7g{))?#73tB(8OKtgz`89=Gn`3!bXnV%!J2SAX z#JshA$?m(S##sD^#EI`Z?;zddekNbZn(w8+(3{RcOMa8Pnp| zja|K7z-AZ6*WCjVcSl$+i1vaAd2c@R-^cFW+AbLL+Y0YkTifIA0|)P3`$@`Sjsu6W zy|nwl;Rbc?E@9)qVQf!#A2|H^9vLNLz~Qe1i~)xSNWeI7IB}10=r!4n@!^8xP0fz@iz&+qF zv5>}q!#`0-W0U>C5pWMUOemyr;PB5A(zr`_a0J`~4iir0ao{kqmON-7jRzqQj(~CC zF!59#2M!Zz$paVCco6d72p9(r6WiNy;4q<bfN|h3vArDw4ijt1gBH@j z9&LOU@>&k$-`y0=*mh2LFD7lPS=L}ZRv?YFXRQ1C@LZYcnZ50=c>{Ov$mPRH4C%@L zqZpU6f-=dARkwaBlAlDDUWoOtjVymQ{-Ba6w!}-HPn_==!;KTiACn2E$%Iq#k_Vm@ z{J9|UmlALfH{P?r|1B#xnQ(eV(NyW z;VX2>7TYNOEGEr#o|~{u=>dhBzoI^=@e;+vxyApFGSDTrya@oIMYq1e zam>M%mr#9uiUn(|8E{lt0bArc;&9fFd@DHES*}eTF*XLb+Sc1%y>m-XUA6I)e=h4Q z^=T-d)KmR~!>fi)-Ya2a?t`x0`)FXoEWz8<=PzQsb%tM2HUH-V!%4*L1q{vwsg)CFwd~LS34e)Qe{i&G&ssA&>b~surd8Fd? zdrkfEREyw`t~2nq2u=*gCQH4OrQXR>FV#r;pcjDrY}dvwCBSP6C)XBCt}U2cTkvaN zTQIQ48~xvH5p1A0Y|k8RkIvY8FT5X15d3(79|rpJy4T%nu5^qxnU3AZ2V+3_f2XOx zdJ~6QfK$By_#X_b#?AS}G2(chYOZJBq^yZ*Pua^8#-wKVs^Wn0F-B_N}p&5_n;{{6y%=!zd(I3VhFF7JNfUQ2)K4e`q{}b(q|4~JD|9fsunF-U(iiA~AIk$o-ER;4+eUx(-!%mEj{JN>!2kP| q?SE|#oVZN*KfZqyCm&k&>9 Date: Tue, 14 Apr 2026 15:44:23 +0200 Subject: [PATCH 03/17] [44] Add a Gantt Diagram to the first workpackage of the Gantt Sample Template Issue: https://github.com/ObeoNetwork/pepper/issues/44 --- CHANGELOG.adoc | 2 +- backend/pepper-parent/pom.xml | 5 ++ backend/pepper-starter/pom.xml | 6 +- .../PepperMMProjectTemplateInitializer.java | 56 ++++++++++++++++++- 4 files changed, 66 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 6f1e33a..c6da7a7 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -9,7 +9,7 @@ === Improvements - https://github.com/ObeoNetwork/pepper/issues/43[#43] Add an empty pepper template to the home menu - +- https://github.com/ObeoNetwork/pepper/issues/44[#44] Add a Gantt Diagram to the first workpackage of the Gantt Sample Template === Bug fixes diff --git a/backend/pepper-parent/pom.xml b/backend/pepper-parent/pom.xml index e901846..89a3cb6 100644 --- a/backend/pepper-parent/pom.xml +++ b/backend/pepper-parent/pom.xml @@ -167,6 +167,11 @@ sirius-components-collaborative ${sirius.web.version} + + org.eclipse.sirius + sirius-components-collaborative-gantt + ${sirius.web.version} + org.eclipse.sirius sirius-components-collaborative-trees diff --git a/backend/pepper-starter/pom.xml b/backend/pepper-starter/pom.xml index 4775c26..d74f22d 100644 --- a/backend/pepper-starter/pom.xml +++ b/backend/pepper-starter/pom.xml @@ -71,7 +71,11 @@ sirius-components-tests test - + + org.eclipse.sirius + sirius-components-collaborative-gantt + + diff --git a/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java b/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java index 80090cd..c839964 100644 --- a/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java +++ b/backend/pepper-starter/src/main/java/pepper/starter/services/PepperMMProjectTemplateInitializer.java @@ -12,19 +12,33 @@ ******************************************************************************/ package pepper.starter.services; +import pepper.peppermm.Organization; +import pepper.peppermm.Workpackage; + +import java.util.List; import java.util.UUID; +import org.eclipse.sirius.components.collaborative.api.IRepresentationMetadataPersistenceService; +import org.eclipse.sirius.components.collaborative.api.IRepresentationPersistenceService; +import org.eclipse.sirius.components.collaborative.gantt.api.IGanttCreationService; +import org.eclipse.sirius.components.core.RepresentationMetadata; import org.eclipse.sirius.components.core.api.IEditingContext; import org.eclipse.sirius.components.core.api.IEditingContextPersistenceService; +import org.eclipse.sirius.components.core.api.IRepresentationDescriptionSearchService; import org.eclipse.sirius.components.emf.ResourceMetadataAdapter; import org.eclipse.sirius.components.emf.services.JSONResourceFactory; import org.eclipse.sirius.components.emf.services.api.IEMFEditingContext; import org.eclipse.sirius.components.events.ICause; +import org.eclipse.sirius.components.gantt.Gantt; +import org.eclipse.sirius.components.gantt.description.GanttDescription; +import org.eclipse.sirius.components.representations.VariableManager; +import org.eclipse.sirius.emfjson.resource.JsonResource; import org.eclipse.sirius.web.application.project.services.api.ISemanticDataInitializer; import org.springframework.stereotype.Service; import static pepper.starter.services.PepperMMProjectTemplateProvider.PEPPERMM_EMPTY; import static pepper.starter.services.PepperMMProjectTemplateProvider.PEPPERMM_PEPPER_SAMPLE; +import static pepper.starter.services.view.ViewGanttDescriptionBuilder.WORKPACKAGE_GANTT_REP_DESC_NAME; /** * Provides Pepper meta model specific project templates initializers. @@ -35,9 +49,19 @@ public class PepperMMProjectTemplateInitializer implements ISemanticDataInitializer { private final IEditingContextPersistenceService editingContextPersistenceService; + private final IRepresentationPersistenceService representationPersistenceService; + private final IGanttCreationService ganttCreationService; + private final IRepresentationDescriptionSearchService representationDescriptionSearchService; + private final IRepresentationMetadataPersistenceService representationMetadataPersistenceService; - public PepperMMProjectTemplateInitializer(IEditingContextPersistenceService editingContextPersistenceService) { + public PepperMMProjectTemplateInitializer(IEditingContextPersistenceService editingContextPersistenceService, IRepresentationPersistenceService representationPersistenceService, + IGanttCreationService ganttCreationService, IRepresentationDescriptionSearchService representationDescriptionSearchService, + IRepresentationMetadataPersistenceService representationMetadataPersistenceService) { this.editingContextPersistenceService = editingContextPersistenceService; + this.representationPersistenceService = representationPersistenceService; + this.ganttCreationService = ganttCreationService; + this.representationDescriptionSearchService = representationDescriptionSearchService; + this.representationMetadataPersistenceService = representationMetadataPersistenceService; } @Override @@ -57,6 +81,8 @@ public void handle(ICause cause, IEditingContext editingContext, String projectT resource.getContents().add(new PepperMMSampleBuilder().getSampleContent()); this.editingContextPersistenceService.persist(cause, editingContext); + + this.createGanttOfWorkpackage(cause, editingContext, resource); } else if (PepperMMProjectTemplateProvider.PEPPERMM_EMPTY_TEMPLATE_ID.equals(projectTemplateId) && editingContext instanceof IEMFEditingContext emfEditingContext) { var documentId = UUID.randomUUID(); var resource = new JSONResourceFactory().createResourceFromPath(documentId.toString()); @@ -69,4 +95,32 @@ public void handle(ICause cause, IEditingContext editingContext, String projectT this.editingContextPersistenceService.persist(cause, editingContext); } } + + private void createGanttOfWorkpackage(ICause cause, IEditingContext editingContext, JsonResource resource) { + var optionalGanttDescription = this.representationDescriptionSearchService.findAll(editingContext) + .values() + .stream() + .filter(GanttDescription.class::isInstance) + .map(GanttDescription.class::cast) + .filter(desc -> WORKPACKAGE_GANTT_REP_DESC_NAME.equals(desc.getLabel())) + .findFirst(); + if (optionalGanttDescription.isPresent()) { + GanttDescription ganttDescription = optionalGanttDescription.get(); + Workpackage workpackage = ((Organization) resource.getContents().get(0)).getOwnedProjects().get(0).getOwnedWorkpackages().get(0); + var variableManager = new VariableManager(); + variableManager.put(VariableManager.SELF, workpackage); + String label = ganttDescription.labelProvider().apply(variableManager); + List iconURLs = ganttDescription.getIconURLsProvider().apply(variableManager); + + Gantt gantt = this.ganttCreationService.create(workpackage, ganttDescription, editingContext); + var representationMetadata = RepresentationMetadata.newRepresentationMetadata(gantt.getId()) + .kind(gantt.getKind()) + .label(label) + .descriptionId(gantt.descriptionId()) + .iconURLs(iconURLs) + .build(); + this.representationMetadataPersistenceService.save(cause, editingContext, representationMetadata, gantt.targetObjectId()); + this.representationPersistenceService.save(cause, editingContext, gantt); + } + } } From aba9f43a8516d92987273dfd75373eeff8e84a45 Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Thu, 30 Apr 2026 14:54:37 +0200 Subject: [PATCH 04/17] test yalc --- backend/pepper-parent/pom.xml | 2 +- frontend/package-lock.json | 3565 ++++++++++++++++++++---------- frontend/pepper-web/package.json | 58 +- 3 files changed, 2448 insertions(+), 1177 deletions(-) diff --git a/backend/pepper-parent/pom.xml b/backend/pepper-parent/pom.xml index 89a3cb6..d377d40 100644 --- a/backend/pepper-parent/pom.xml +++ b/backend/pepper-parent/pom.xml @@ -30,7 +30,7 @@ 17 - 2026.3.0 + 2026.3.3 7.4.14-SNAPSHOT diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 541d5d7..8d178ae 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -76,59 +76,12 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", - "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", - "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-compilation-targets": "^7.28.6", - "@babel/helper-module-transforms": "^7.28.6", - "@babel/helpers": "^7.28.6", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/traverse": "^7.29.0", - "@babel/types": "^7.29.0", - "@jridgewell/remapping": "^2.3.5", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true, - "license": "MIT" - }, "node_modules/@babel/generator": { "version": "7.29.1", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/parser": "^7.29.0", "@babel/types": "^7.29.0", @@ -140,28 +93,12 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", - "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.28.6", - "@babel/helper-validator-option": "^7.27.1", - "browserslist": "^4.24.0", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-globals": { "version": "7.28.0", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", "license": "MIT", + "peer": true, "engines": { "node": ">=6.9.0" } @@ -171,6 +108,7 @@ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/traverse": "^7.28.6", "@babel/types": "^7.28.6" @@ -179,39 +117,12 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", - "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.28.6", - "@babel/helper-validator-identifier": "^7.28.5", - "@babel/traverse": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", - "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-string-parser": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "license": "MIT", + "peer": true, "engines": { "node": ">=6.9.0" } @@ -225,35 +136,12 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", - "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.28.6", - "@babel/types": "^7.29.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/parser": { "version": "7.29.2", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", "license": "MIT", + "peer": true, "dependencies": { "@babel/types": "^7.29.0" }, @@ -264,38 +152,6 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", - "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", - "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/runtime": { "version": "7.29.2", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz", @@ -323,6 +179,7 @@ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.28.6", "@babel/parser": "^7.28.6", @@ -337,6 +194,7 @@ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", @@ -355,6 +213,7 @@ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", "@babel/helper-validator-identifier": "^7.28.5" @@ -364,387 +223,124 @@ } }, "node_modules/@eclipse-sirius/sirius-components-browser": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-browser/2026.3.0/f97a4aed8b8d1645bbe2fbc09f2bcef3f7b53236", - "integrity": "sha512-YUdHe1L2HtHeXx9sMj/Vm2H6X58z2tDq/hGlEx6TUzRYVxNLjeRplXHKFcwPnJlKdowYLCug3VyvPrVbAXVRJw==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@eclipse-sirius/sirius-components-trees": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@mui/x-tree-view": "7.29.1", - "graphql": "16.8.1", - "lexical": "0.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-browser", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-charts": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-charts/2026.3.0/fac6f1b4483f99f2e2ac8e41bde259a08f54ac8e", - "integrity": "sha512-P4dpdhDQP7d6H27HOeYF8g/E5h+QUzqTwnev21navBKz04tmRkGFgwaBgoy+1SWE5F/4W6g7nUnc8mdkg6JERA==", - "license": "EPL-2.0", - "peerDependencies": { - "d3": "7.0.0", - "react": "18.3.1" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-charts", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-core": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-core/2026.3.0/5a2c8b307209800a5821baefaf0e093a10785174", - "integrity": "sha512-t0ScUrrLpKD2Vd7FJkCKl1u6eQl6Yrspxayg2WAeA1jneMxm82/Lqdq7uqS/GDTNfb+wnKtBJA6tnb4SvI2ntA==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-core", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-datatree": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-datatree/2026.3.0/13a39c116418b8019c7cf191e1e154800943dac5", - "integrity": "sha512-9aIUDtwKNd0IQR/stm8siC6dUkyF/nEviyNf9x0DApJRNPTDOxrIuY/W/cmO+5FHB6u5Yv1qOZ4hEwohXEi5fg==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-datatree", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-deck": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-deck/2026.3.0/2e7c1073b407ba121ae9a5c38408cd2c80c2e528", - "integrity": "sha512-0R1UiCT5T35+8/H4e6iRzPWgg4mpGEnvqhJiKlaK87ky8QTNPvPchBam75IreIz/hMBZFBl3w3z6Vh/k6SM3Mw==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@ObeoNetwork/react-trello": "2.4.11", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-deck", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-diagrams": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-diagrams/2026.3.0/642c154c70190d98706f2e65bde7789963dd2184", - "integrity": "sha512-0upSBANxAmreY/wsBWkKvaAlHEixzTsyJyZzNIgK8g4GU1z6+xeXG78/PC4B0AAX83/4QF8UfFxieylXrd4BQA==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@xyflow/react": "12.6.0", - "elkjs": "0.11.0", - "graphql": "16.8.1", - "html-to-image": "1.11.11", - "pathfinding": "0.4.18", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-draggable": "4.4.6", - "react-i18next": "16.2.3", - "react-resizable": "3.0.5", - "react-resizable-panels": "3.0.2", - "svg-path-parser": "1.1.0", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-diagrams", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-formdescriptioneditors": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-formdescriptioneditors/2026.3.0/6ad9c5d39812642809911a5c6fc6e9e0c0724b44", - "integrity": "sha512-z0+QfClcUOIWbgLeHx15QLDZ2uPylYuEyIDqWJHR66/Id0qjfx3FW32WwC0vkuyU7PPbehBququ0zDiXsXQqBw==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-charts": "*", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-forms": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@mui/x-tree-view": "7.29.1", - "d3": "7.0.0", - "export-to-csv": "1.3.0", - "graphql": "16.8.1", - "lexical": "0.8.1", - "material-react-table": "3.2.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-forms": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-forms/2026.3.0/958c6cef008cab9ab803a044d2ee0e9c6de58d81", - "integrity": "sha512-V4JaZJZxK6ndrh+FpLUuwpykb5e/pVC8XRlCpp3YlWfvZIS+Un2AQZvsdzCx4oPw7UA2m3iQeX0JGpZvqXgshQ==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-charts": "*", - "@eclipse-sirius/sirius-components-core": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@mui/x-tree-view": "7.29.1", - "d3": "7.0.0", - "export-to-csv": "1.3.0", - "graphql": "16.8.1", - "lexical": "0.8.1", - "material-react-table": "3.2.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-forms", + "link": true + }, + "node_modules/@eclipse-sirius/sirius-components-gantt": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-gantt", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-impactanalysis": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-impactanalysis/2026.3.0/ba712a3dc3aef0db2671000f286fdacda8982cf3", - "integrity": "sha512-xbijXtnsZ6D/OdHoxbbl6q9IyZfevTj8M1WEEtL2OklSWwcuXpvflyOTIxJ9gsgyBvM03Vd7rfnKVoh7UfX0yg==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-omnibox": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-omnibox/2026.3.0/d2cb892ee01547c5f018918b6c00c081dd3afeff", - "integrity": "sha512-hwEosv2KnW4obU/ku8j38ERj7naCXYYEPPsGje+ZfQgVhNXDL6snBSiDUXmmtJxFOoBaNWFGp2Yj2HPPaIXgEQ==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-omnibox", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-palette": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-palette/2026.3.0/2cc3f9d679ba77c05436e808183b2015bae958b9", - "integrity": "sha512-pgWNGyzYUJREsTJ2n3TWry80gJPyuvMbNgBU0NsC1E2ltSBkLK61T2qiIxOMk0k2N9g6zjrRLgvGovsvQIpXyg==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-palette", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-portals": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-portals/2026.3.0/63c34dbc5f1d455973ef5711f190ea7f38f3c9fd", - "integrity": "sha512-52QYqgD5daBaUtUl7/LdIxhoudVNJZRtVM7qNXy3WXC9xlwkibXqgaQa/Wz0GGKQNkE/0HwqhXKo4pOEDL7VVw==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-grid-layout": "1.4.4", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-portals", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-selection": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-selection/2026.3.0/202f13bd5d99a57dfc23ff7bd923b2882ec0057e", - "integrity": "sha512-Zmu7710W8SaSWSWcMSmSFutC5Vqq5yjDmwnkNqDuNBIDIjzGZuZd7oNVgrFU0JwMDpbukYVnfN8Ud2UkD9ntfQ==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-diagrams": "*", - "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@eclipse-sirius/sirius-components-trees": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@xyflow/react": "12.6.0", - "elkjs": "0.11.0", - "graphql": "16.8.1", - "html-to-image": "1.11.11", - "pathfinding": "0.4.18", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-draggable": "4.4.6", - "react-i18next": "16.2.3", - "react-resizable": "3.0.5", - "react-resizable-panels": "3.0.2", - "svg-path-parser": "1.1.0", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-selection", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-tables": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-tables/2026.3.0/0bd571366d9ecb114f1b55f1072b7187c68ac7d2", - "integrity": "sha512-CnxkmNE3jA9pwgGa0HIEJ20DBIG8RpckD/LyQrqw9XnhTTv+mrWeFmdomnsNB/xw6NhIY8pt+S1AFgfjuAbeVQ==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "export-to-csv": "1.3.0", - "graphql": "16.8.1", - "material-react-table": "3.2.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-tables", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-trees": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-trees/2026.3.0/e9a5a62d01818d70ad5eda56a5c24b9320cbbc85", - "integrity": "sha512-bqAaYXwgXhfrd0kq5Dnf0B4P21INJ3B/+ADuiJJcoaS54zx37XiwNj+LVleMaoZEL0FukKs174pW/3nQbVZHZQ==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-trees", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-validation": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-validation/2026.3.0/9d0b6eeebafc9022bd088f6f6c9b069ed886ed0c", - "integrity": "sha512-5ApzA7Zh9fBjbILq9Q87NSCT+EmPlq57nRmX75ayJIl/iEr5lfos+RGdKAPF6Zf8O0foOrYX2feUkst5hdut/w==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "graphql": "16.8.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-validation", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-widget-reference": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-widget-reference/2026.3.0/1e9403af80c1b42c9f02c32eee712a7629212f56", - "integrity": "sha512-wohq4la3lPJ6gjjvvOGkt6DHVizIsincIxyv7wzrB0LUt2j/F9mP2UXaqaOzVAM6LR15Ng5RQbw/jThcytxoYg==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "*", - "@eclipse-sirius/sirius-components-charts": "*", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-forms": "*", - "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@eclipse-sirius/sirius-components-trees": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@mui/x-tree-view": "7.29.1", - "d3": "7.0.0", - "export-to-csv": "1.3.0", - "graphql": "16.8.1", - "lexical": "0.8.1", - "material-react-table": "3.2.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" - } + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-reference", + "link": true }, "node_modules/@eclipse-sirius/sirius-components-widget-table": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-widget-table/2026.3.0/48ba49adedfe3a53c894a24ba84fd97b315395f2", - "integrity": "sha512-IuRC+zuxppK9fbjspeTH9bx6zMRcwGMT+RmWuU3BfA7qbzrQmOjODjlGvGaXxxKg1szLihDG0CNBzsSt2VIZEw==", - "license": "EPL-2.0", - "peerDependencies": { - "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-charts": "*", - "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-forms": "*", - "@eclipse-sirius/sirius-components-tables": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@mui/x-tree-view": "7.29.1", - "d3": "7.0.0", - "export-to-csv": "1.3.0", - "graphql": "16.8.1", - "lexical": "0.8.1", - "material-react-table": "3.2.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "16.2.3", - "react-resizable-panels": "3.0.2", - "tss-react": "4.9.16" + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-table", + "link": true + }, + "node_modules/@eclipse-sirius/sirius-web-application": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-web-application", + "link": true + }, + "node_modules/@eclipse-sirius/sirius-web-view-fork": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-web-view-fork", + "link": true + }, + "node_modules/@emnapi/core": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz", + "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz", + "integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", + "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.4.0" } }, "node_modules/@emotion/babel-plugin": { @@ -1449,27 +1045,18 @@ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "license": "MIT", + "peer": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" } }, - "node_modules/@jridgewell/remapping": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "license": "MIT", + "peer": true, "engines": { "node": ">=6.0.0" } @@ -1485,271 +1072,86 @@ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "license": "MIT", + "peer": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@lexical/clipboard": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/clipboard/-/clipboard-0.8.1.tgz", - "integrity": "sha512-+gXrs00PjLY0udFZF3g0GXBVeCRUmxWFWnpNbTDz+RKjSs72+oQbzJLMZfRTuUbL2mI6nNi9x+ZiAKH233KkWQ==", - "license": "MIT", - "dependencies": { - "@lexical/html": "0.8.1", - "@lexical/list": "0.8.1", - "@lexical/selection": "0.8.1", - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/code": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/code/-/code-0.8.1.tgz", - "integrity": "sha512-xzTsne500ebu5mkHHOettdu2XOD5Qswomxiuf5Xn/VScS+Zg1C/NLgtELcz7GZw53mBrdKumd98kANck8d+U/Q==", - "license": "MIT", - "dependencies": { - "@lexical/utils": "0.8.1", - "prismjs": "^1.27.0" - }, - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/dragon": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/dragon/-/dragon-0.8.1.tgz", - "integrity": "sha512-AnGolX/J8I+2Wc08fIz2mM52GgvxYLSBfvIMbN2ztc+UPgPB16cVzBVaJOEZm1+D7YeOG2pVRk+rfrsOdL7i4Q==", - "license": "MIT", - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/hashtag": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/hashtag/-/hashtag-0.8.1.tgz", - "integrity": "sha512-H7Owb8BxcqexJpihsccvw3sc6PKI+IzosIYUZ5NC+PB/0D6uUSoAyuNugySvTx57iIVzQECDa4kTvqO1lQHXGw==", - "license": "MIT", - "dependencies": { - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/history": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/history/-/history-0.8.1.tgz", - "integrity": "sha512-QRgV8UTLfw0yPDiL80J27i5MdKtK7bLNr+YLU48lxgKhQe9j9YSSERNRTjvHADZ7dz9ERMvEYoDXK9Wl4zVgDA==", - "license": "MIT", - "dependencies": { - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/html": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/html/-/html-0.8.1.tgz", - "integrity": "sha512-tt77LIGlNaHA5MdDI0PsS9QBKUEQkNYsVvS6eo26IdnJgvY2F110B3/cYsRzZZUmR0N4WWuuqIVpDN2lL/M6pw==", + "node_modules/@lexical/code-core": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/code-core/-/code-core-0.42.0.tgz", + "integrity": "sha512-vrZTUPWDJkHjAAvuV2+Qte4vYE80s7hIO7wxipiJmWojGx6lcmQjO+UqJ8AIrqI4Wjy8kXrK74kisApWmwxuCw==", "license": "MIT", "dependencies": { - "@lexical/selection": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" + "lexical": "0.42.0" } }, - "node_modules/@lexical/link": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/link/-/link-0.8.1.tgz", - "integrity": "sha512-G2MmZcGlth0TzXqHRYC4rvEGRqS9wZ0JsazkxPSLPD4lFQD+u2tVJb7rLXqVNgw0bxQSYUYmGbLnjiNvq8uLRg==", - "license": "MIT", - "dependencies": { - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } + "node_modules/@lexical/code-core/node_modules/lexical": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", + "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", + "license": "MIT" }, - "node_modules/@lexical/list": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/list/-/list-0.8.1.tgz", - "integrity": "sha512-sZjs1yKYLye3/uQNuJbWRgC6RtFTsR3QXBpkxRI6E0OoVViqhGh0vhWXmerLUq61V9McLVJ6noOOzWU1tud6xA==", + "node_modules/@lexical/code-prism": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/code-prism/-/code-prism-0.42.0.tgz", + "integrity": "sha512-KgngkUtgcgC8ocBnfGyN71CC3EnP5PMFAmH1KcGp/+jSgl11nRpCjwYYIoUHm6AB7jKJ8dLbd/UUmShARjUnGA==", "license": "MIT", + "peer": true, "dependencies": { - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" + "@lexical/code-core": "0.42.0", + "lexical": "0.42.0", + "prismjs": "^1.30.0" } }, - "node_modules/@lexical/mark": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/mark/-/mark-0.8.1.tgz", - "integrity": "sha512-UTKpBr43L+PYJZ0U+Xer8y6f2imtMY3WQ5RQ8HnyFl10WMMPuldZxm6QMW25syT8OHmuEzknvkrU3bQm6rInsg==", + "node_modules/@lexical/code-prism/node_modules/lexical": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", + "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", "license": "MIT", - "dependencies": { - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } + "peer": true }, - "node_modules/@lexical/markdown": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/markdown/-/markdown-0.8.1.tgz", - "integrity": "sha512-cMwCN28rWvLMYDVLJN0pKnB6qaktJVDtx2sOjcUMg96fP8Aul4OgUzYWcEdd9OCxiy+oHp6iu1FbMa9+JeCs7Q==", + "node_modules/@lexical/extension": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/extension/-/extension-0.42.0.tgz", + "integrity": "sha512-rkZq/h8d1BenKRqU4t/zQUVfY/RinMX1Tz7t+Ee3ss0sk+kzP4W+URXNAxpn7r39Vn6wrFBqmCziah3dLAIqPw==", "license": "MIT", "dependencies": { - "@lexical/code": "0.8.1", - "@lexical/link": "0.8.1", - "@lexical/list": "0.8.1", - "@lexical/rich-text": "0.8.1", - "@lexical/text": "0.8.1", - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/offset": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/offset/-/offset-0.8.1.tgz", - "integrity": "sha512-h/LV5FNet3vGoSgCRQJHg80MQbLul2HwnZg515WuF12nL5e/xpYdmXizFircVwfabWiYIYWQhO8w4Cui2Vi4Rg==", - "license": "MIT", - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/overflow": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/overflow/-/overflow-0.8.1.tgz", - "integrity": "sha512-MEieO36IQfdhDLycqpfCxSP++HCGCusv8t6Gv6HgvKmsqHyGh5NN3mGMCTk2F58mMyTrA7Np8TiStw5Th6WbVA==", - "license": "MIT", - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/plain-text": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/plain-text/-/plain-text-0.8.1.tgz", - "integrity": "sha512-ySv4Szvxikkl1ESVsDfoYelyOT6YXtR27LyyxejPN7MrwCOo0MOgdBvFNYi5Ay+QJ0nS4r7VCJuGe6St7ElE1Q==", - "license": "MIT", - "peerDependencies": { - "@lexical/clipboard": "0.8.1", - "@lexical/selection": "0.8.1", - "@lexical/utils": "0.8.1", - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/react": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/react/-/react-0.8.1.tgz", - "integrity": "sha512-+bQwr1LhsOBveYdtBrVHoEsqSfBZbh2G/V32MMiFD57932UaWp0KyRQWgjQtd6y/5VMPCus+rknk6EwS6PT5Zg==", - "license": "MIT", - "dependencies": { - "@lexical/clipboard": "0.8.1", - "@lexical/code": "0.8.1", - "@lexical/dragon": "0.8.1", - "@lexical/hashtag": "0.8.1", - "@lexical/history": "0.8.1", - "@lexical/link": "0.8.1", - "@lexical/list": "0.8.1", - "@lexical/mark": "0.8.1", - "@lexical/markdown": "0.8.1", - "@lexical/overflow": "0.8.1", - "@lexical/plain-text": "0.8.1", - "@lexical/rich-text": "0.8.1", - "@lexical/selection": "0.8.1", - "@lexical/table": "0.8.1", - "@lexical/text": "0.8.1", - "@lexical/utils": "0.8.1", - "@lexical/yjs": "0.8.1", - "react-error-boundary": "^3.1.4" - }, - "peerDependencies": { - "lexical": "0.8.1", - "react": ">=17.x", - "react-dom": ">=17.x" - } - }, - "node_modules/@lexical/rich-text": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/rich-text/-/rich-text-0.8.1.tgz", - "integrity": "sha512-uaYt5UcTYewc4gDXEfe/uterK7xEu2CMAUcLyhWeXcrkTnpQR7v/IEJ4MMQexrNas/F1eI7Qi+qw28eE+C59+A==", - "license": "MIT", - "peerDependencies": { - "@lexical/clipboard": "0.8.1", - "@lexical/selection": "0.8.1", - "@lexical/utils": "0.8.1", - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/selection": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.8.1.tgz", - "integrity": "sha512-f94g+Z6n5JJNKw5v46aSn8rSB3RH1eOGiQ/tTXA6snZGlT9ubm5f3vDIZ1q2HQV2vMK1DPwK6ibEyLpVPoyL2w==", - "license": "MIT", - "peerDependencies": { - "lexical": "0.8.1" + "@lexical/utils": "0.42.0", + "@preact/signals-core": "^1.11.0", + "lexical": "0.42.0" } }, - "node_modules/@lexical/table": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/table/-/table-0.8.1.tgz", - "integrity": "sha512-81wqidbw55AE0VjwxHlHFf+0wG2D5SeyxxAXoEzSr+4kFsIkNg5PGQ24iEH/dVj0pQ+AE5W351Jd7y8kauZlig==", + "node_modules/@lexical/extension/node_modules/@lexical/selection": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.42.0.tgz", + "integrity": "sha512-iWTjLA5BSEuUnvWe9Xwu9FSdZFl3Yi0NqalabXKI+7KgCIlIVXE74y4NvWPUSLkSCB/Z1RPKiHmZqZ1vyu/yGQ==", "license": "MIT", "dependencies": { - "@lexical/utils": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" - } - }, - "node_modules/@lexical/text": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/text/-/text-0.8.1.tgz", - "integrity": "sha512-37yOO+VMogyWPwvR2RUJteC9rpF4otQJqYffpwIYE0kA73q6+quBZPZJpMX1PGvixgHypXFZy1YD7YMhXY4m9w==", - "license": "MIT", - "peerDependencies": { - "lexical": "0.8.1" + "lexical": "0.42.0" } }, - "node_modules/@lexical/utils": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/utils/-/utils-0.8.1.tgz", - "integrity": "sha512-mRV1ea4KCnRW8vrxm6/6930CNiOqsDEj2nDygI/fE+sHZI2lajjBpMdBP/F4XhIjn5stGUhKRKWoV5JXG8n70g==", + "node_modules/@lexical/extension/node_modules/@lexical/utils": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/utils/-/utils-0.42.0.tgz", + "integrity": "sha512-wGNdCW3QWEyVdFiSTLZfFPtiASPyYLcekIiYYZmoRVxVimT/jY+QPfnkO4JYgkO7Z70g/dsg9OhqyQSChQfvkQ==", "license": "MIT", "dependencies": { - "@lexical/list": "0.8.1", - "@lexical/selection": "0.8.1", - "@lexical/table": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1" + "@lexical/selection": "0.42.0", + "lexical": "0.42.0" } }, - "node_modules/@lexical/yjs": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@lexical/yjs/-/yjs-0.8.1.tgz", - "integrity": "sha512-wQ/N7WOpOq7PJIEsRLSyPZvHZDRUUFfESLUdSKTzEe2YK6zFRQ69vhE7cVuWF38/JzeB/ogtH3h2lsybQCAvmA==", - "license": "MIT", - "dependencies": { - "@lexical/offset": "0.8.1" - }, - "peerDependencies": { - "lexical": "0.8.1", - "yjs": ">=13.5.22" - } + "node_modules/@lexical/extension/node_modules/lexical": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", + "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", + "license": "MIT" }, "node_modules/@mui/core-downloads-tracker": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.9.tgz", - "integrity": "sha512-MOkOCTfbMJwLshlBCKJ59V2F/uaLYfmKnN76kksj6jlGUVdI25A9Hzs08m+zjBRdLv+sK7Rqdsefe8X7h/6PCw==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.10.tgz", + "integrity": "sha512-vrOpWRmPJSuwLo23J62wggEm/jvGdzqctej+UOCtgDUz6nZJQuj3ByPccVyaa7eQmwAzUwKN56FQPMKkqbj1GA==", "license": "MIT", "funding": { "type": "opencollective", @@ -1761,6 +1163,7 @@ "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.0.2.tgz", "integrity": "sha512-Bo57PFLOqXOqPNrXjd8AhzH5s6TCsNUQbvnQ0VKZ8D+lIlteqKnrk/O1luMJUc/BXONK7BfIdTdc7qOnXYbMdw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.27.0" }, @@ -1787,6 +1190,7 @@ "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.0.2.tgz", "integrity": "sha512-rjJlJ13+3LdLfobRplkXbjIFEIkn6LgpetgU/Cs3Xd8qINCCQK9qXQIjjQ6P0FXFTPFzEVMj0VgBR1mN+FhOcA==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.27.0", "@mui/core-downloads-tracker": "^7.0.2", @@ -1836,6 +1240,7 @@ "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.9.tgz", "integrity": "sha512-ErIyRQvsiQEq7Yvcvfw9UDHngaqjMy9P3JDPnRAaKG5qhpl2C4tX/W1S4zJvpu+feihmZJStjIyvnv6KDbIrlw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.28.6", "@mui/utils": "^7.3.9", @@ -1863,6 +1268,7 @@ "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.9.tgz", "integrity": "sha512-JqujWt5bX4okjUPGpVof/7pvgClqh7HvIbsIBIOOlCh2u3wG/Bwp4+E1bc1dXSwkrkp9WUAoNdI5HEC+5HKvMw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.28.6", "@emotion/cache": "^11.14.0", @@ -1897,6 +1303,7 @@ "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.9.tgz", "integrity": "sha512-aL1q9am8XpRrSabv9qWf5RHhJICJql34wnrc1nz0MuOglPRYF/liN+c8VqZdTvUn9qg+ZjRVbKf4sJVFfIDtmg==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.28.6", "@mui/private-theming": "^7.3.9", @@ -2127,6 +1534,25 @@ "react": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", + "integrity": "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1" + } + }, "node_modules/@ObeoNetwork/pepper": { "resolved": "pepper-web", "link": true @@ -2161,6 +1587,16 @@ "styled-components": ">= 4.0.3" } }, + "node_modules/@oxc-project/types": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.120.0.tgz", + "integrity": "sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, "node_modules/@popperjs/core": { "version": "2.11.8", "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", @@ -2171,6 +1607,16 @@ "url": "https://opencollective.com/popperjs" } }, + "node_modules/@preact/signals-core": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@preact/signals-core/-/signals-core-1.14.1.tgz", + "integrity": "sha512-vxPpfXqrwUe9lpjqfYNjAF/0RF/eFGeLgdJzdmIIZjpOnTmGmAB4BjWone562mJGMRP4frU6iZ6ei3PDsu52Ng==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" + } + }, "node_modules/@remix-run/router": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.19.0.tgz", @@ -2180,12 +1626,260 @@ "node": ">=14.0.0" } }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-beta.30", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.30.tgz", - "integrity": "sha512-whXaSoNUFiyDAjkUF8OBpOm77Szdbk5lGNqFe6CbVbJFrhCCPinCbRA3NjawwlNHla1No7xvXXh+CpSxnPfUEw==", + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.10.tgz", + "integrity": "sha512-jOHxwXhxmFKuXztiu1ORieJeTbx5vrTkcOkkkn2d35726+iwhrY1w/+nYY/AGgF12thg33qC3R1LMBF5tHTZHg==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.10.tgz", + "integrity": "sha512-gED05Teg/vtTZbIJBc4VNMAxAFDUPkuO/rAIyyxZjTj1a1/s6z5TII/5yMGZ0uLRCifEtwUQn8OlYzuYc0m70w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.10.tgz", + "integrity": "sha512-rI15NcM1mA48lqrIxVkHfAqcyFLcQwyXWThy+BQ5+mkKKPvSO26ir+ZDp36AgYoYVkqvMcdS8zOE6SeBsR9e8A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.10.tgz", + "integrity": "sha512-XZRXHdTa+4ME1MuDVp021+doQ+z6Ei4CCFmNc5/sKbqb8YmkiJdj8QKlV3rCI0AJtAeSB5n0WGPuJWNL9p/L2w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.10.tgz", + "integrity": "sha512-R0SQMRluISSLzFE20sPWYHVmJdDQnRyc/FzSCN72BqQmh2SOZUFG+N3/vBZpR4C6WpEUVYJLrYUXaj43sJsNLA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-Y1reMrV/o+cwpduYhJuOE3OMKx32RMYCidf14y+HssARRmhDuWXJ4yVguDg2R/8SyyGNo+auzz64LnPK9Hq6jg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.10.tgz", + "integrity": "sha512-vELN+HNb2IzuzSBUOD4NHmP9yrGwl1DVM29wlQvx1OLSclL0NgVWnVDKl/8tEks79EFek/kebQKnNJkIAA4W2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-ppc64-gnu": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-ZqrufYTgzxbHwpqOjzSsb0UV/aV2TFIY5rP8HdsiPTv/CuAgCRjM6s9cYFwQ4CNH+hf9Y4erHW1GjZuZ7WoI7w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-s390x-gnu": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-gSlmVS1FZJSRicA6IyjoRoKAFK7IIHBs7xJuHRSmjImqk3mPPWbR7RhbnfH2G6bcmMEllCt2vQ/7u9e6bBnByg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-eOCKUpluKgfObT2pHjztnaWEIbUabWzk3qPZ5PuacuPmr4+JtQG4k2vGTY0H15edaTnicgU428XW/IH6AimcQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.10.tgz", + "integrity": "sha512-Xdf2jQbfQowJnLcgYfD/m0Uu0Qj5OdxKallD78/IPPfzaiaI4KRAwZzHcKQ4ig1gtg1SuzC7jovNiM2TzQsBXA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.10.tgz", + "integrity": "sha512-o1hYe8hLi1EY6jgPFyxQgQ1wcycX+qz8eEbVmot2hFkgUzPxy9+kF0u0NIQBeDq+Mko47AkaFFaChcvZa9UX9Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.10.tgz", + "integrity": "sha512-Ugv9o7qYJudqQO5Y5y2N2SOo6S4WiqiNOpuQyoPInnhVzCY+wi/GHltcLHypG9DEUYMB0iTB/huJrpadiAcNcA==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^1.1.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.10.tgz", + "integrity": "sha512-7UODQb4fQUNT/vmgDZBl3XOBAIOutP5R3O/rkxg0aLfEGQ4opbCgU5vOw/scPe4xOqBwL9fw7/RP1vAMZ6QlAQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.10.tgz", + "integrity": "sha512-PYxKHMVHOb5NJuDL53vBUl1VwUjymDcYI6rzpIni0C9+9mTiJedvUxSk7/RPp7OOAm3v+EjgMu9bIy3N6b408w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, "node_modules/@rollup/rollup-android-arm-eabi": { "version": "4.60.0", @@ -2753,57 +2447,23 @@ "@testing-library/dom": ">=7.21.4" } }, - "node_modules/@types/aria-query": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", - "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", "dev": true, "license": "MIT", + "optional": true, "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "tslib": "^2.4.0" } }, - "node_modules/@types/babel__traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "node_modules/@types/aria-query": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", + "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.28.2" - } + "license": "MIT" }, "node_modules/@types/chai": { "version": "5.2.3", @@ -3333,27 +2993,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@vitejs/plugin-react": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.0.0.tgz", - "integrity": "sha512-Jx9JfsTa05bYkS9xo0hkofp2dCmp1blrKjw9JONs5BTHOvJCgLbaPSuZLGSVJW6u2qe0tc4eevY0+gSNNi0YCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.28.0", - "@babel/plugin-transform-react-jsx-self": "^7.27.1", - "@babel/plugin-transform-react-jsx-source": "^7.27.1", - "@rolldown/pluginutils": "1.0.0-beta.30", - "@types/babel__core": "^7.20.5", - "react-refresh": "^0.17.0" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "peerDependencies": { - "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, "node_modules/@vitest/expect": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz", @@ -3680,53 +3319,6 @@ "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", "license": "MIT" }, - "node_modules/baseline-browser-mapping": { - "version": "2.10.10", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.10.tgz", - "integrity": "sha512-sUoJ3IMxx4AyRqO4MLeHlnGDkyXRoUG0/AI9fjK+vS72ekpV0yWVY7O0BVjmBcRtkNcsAO2QDZ4tdKKGoI6YaQ==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "baseline-browser-mapping": "dist/cli.cjs" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/browserslist": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, "node_modules/cac": { "version": "6.7.14", "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", @@ -3806,27 +3398,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001781", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001781.tgz", - "integrity": "sha512-RdwNCyMsNBftLjW6w01z8bKEvT6e/5tpPVEgtn22TiLGlstHOVecsX2KHFkD5e/vRnIE4EGzpuIODb3mtswtkw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, "node_modules/chai": { "version": "5.3.3", "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", @@ -4575,6 +4146,16 @@ "node": ">=6" } }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, "node_modules/diff-sequences": { "version": "26.6.2", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", @@ -4617,13 +4198,6 @@ "node": ">= 0.4" } }, - "node_modules/electron-to-chromium": { - "version": "1.5.323", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.323.tgz", - "integrity": "sha512-oQm+FxbazvN2WICCbvJgj3IYPKV8awip57+W5VP+Aatk4kFU4pDYCPHZOX22Z27zpw8uttBehEqgK+VTJAYrVw==", - "dev": true, - "license": "ISC" - }, "node_modules/elkjs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.11.0.tgz", @@ -4743,16 +4317,6 @@ "@esbuild/win32-x64": "0.25.12" } }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -4890,16 +4454,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/get-intrinsic": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", @@ -5611,6 +5165,7 @@ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "license": "MIT", + "peer": true, "bin": { "jsesc": "bin/jsesc" }, @@ -5625,31 +5180,12 @@ "license": "MIT", "peer": true }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/just-curry-it": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/just-curry-it/-/just-curry-it-3.2.1.tgz", "integrity": "sha512-Q8206k8pTY7krW32cdmPsP+DqqLgWx/hYPSj9/+7SYqSqz7UuwPbfSe07lQtvuuaVyiSJveXk0E5RydOuWwsEg==", "license": "MIT" }, - "node_modules/lexical": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.8.1.tgz", - "integrity": "sha512-+dVoQZldtPCLyMgnvbgeYCmfIQilEHrZYGf6Fdpw4Ck0Xvg7IpvMpIKuMsXYsH1t2TlrTQ3qR6cDYvobuU7kMA==", - "license": "MIT" - }, "node_modules/lib0": { "version": "0.2.117", "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.117.tgz", @@ -5672,6 +5208,267 @@ "url": "https://github.com/sponsors/dmonad" } }, + "node_modules/lightningcss": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -5704,16 +5501,6 @@ "dev": true, "license": "MIT" }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" - } - }, "node_modules/lz-string": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", @@ -5826,13 +5613,6 @@ } } }, - "node_modules/node-releases": { - "version": "2.0.36", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.36.tgz", - "integrity": "sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==", - "dev": true, - "license": "MIT" - }, "node_modules/notistack": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/notistack/-/notistack-3.0.1.tgz", @@ -6139,6 +5919,7 @@ "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", "license": "MIT", + "peer": true, "engines": { "node": ">=6" } @@ -6208,28 +5989,12 @@ "node": ">=6" } }, - "node_modules/react-error-boundary": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-3.1.4.tgz", - "integrity": "sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==", + "node_modules/react-grid-layout": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/react-grid-layout/-/react-grid-layout-1.4.4.tgz", + "integrity": "sha512-7+Lg8E8O8HfOH5FrY80GCIR1SHTn2QnAYKh27/5spoz+OHhMmEhU/14gIkRzJOtympDPaXcVRX/nT1FjmeOUmQ==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - }, - "peerDependencies": { - "react": ">=16.13.1" - } - }, - "node_modules/react-grid-layout": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/react-grid-layout/-/react-grid-layout-1.4.4.tgz", - "integrity": "sha512-7+Lg8E8O8HfOH5FrY80GCIR1SHTn2QnAYKh27/5spoz+OHhMmEhU/14gIkRzJOtympDPaXcVRX/nT1FjmeOUmQ==", - "license": "MIT", - "peer": true, + "peer": true, "dependencies": { "clsx": "^2.0.0", "fast-equals": "^4.0.3", @@ -6326,16 +6091,6 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "license": "MIT" }, - "node_modules/react-refresh": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", - "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/react-resizable": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/react-resizable/-/react-resizable-3.0.5.tgz", @@ -6570,6 +6325,47 @@ "integrity": "sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA==", "license": "Unlicense" }, + "node_modules/rolldown": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.10.tgz", + "integrity": "sha512-q7j6vvarRFmKpgJUT8HCAUljkgzEp4LAhPlJUvQhA5LA1SUL36s5QCysMutErzL3EbNOZOkoziSx9iZC4FddKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/types": "=0.120.0", + "@rolldown/pluginutils": "1.0.0-rc.10" + }, + "bin": { + "rolldown": "bin/cli.mjs" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "optionalDependencies": { + "@rolldown/binding-android-arm64": "1.0.0-rc.10", + "@rolldown/binding-darwin-arm64": "1.0.0-rc.10", + "@rolldown/binding-darwin-x64": "1.0.0-rc.10", + "@rolldown/binding-freebsd-x64": "1.0.0-rc.10", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.10", + "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.10", + "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-x64-musl": "1.0.0-rc.10", + "@rolldown/binding-openharmony-arm64": "1.0.0-rc.10", + "@rolldown/binding-wasm32-wasi": "1.0.0-rc.10", + "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.10", + "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.10" + } + }, + "node_modules/rolldown/node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.10.tgz", + "integrity": "sha512-UkVDEFk1w3mveXeKgaTuYfKWtPbvgck1dT8TUG3bnccrH0XtLTuAyfCoks4Q/M5ZGToSVJTIQYCzy2g/atAOeg==", + "dev": true, + "license": "MIT" + }, "node_modules/rollup": { "version": "4.60.0", "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.0.tgz", @@ -6654,16 +6450,6 @@ "loose-envify": "^1.1.0" } }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", @@ -7261,37 +7047,6 @@ "dev": true, "license": "MIT" }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, "node_modules/use-sync-external-store": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", @@ -7642,13 +7397,6 @@ "dev": true, "license": "MIT" }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true, - "license": "ISC" - }, "node_modules/yaml": { "version": "2.8.3", "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", @@ -7734,32 +7482,32 @@ "license": "EPL-2.0", "dependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.3.0", - "@eclipse-sirius/sirius-components-charts": "2026.3.0", - "@eclipse-sirius/sirius-components-core": "2026.3.0", - "@eclipse-sirius/sirius-components-datatree": "2026.3.0", - "@eclipse-sirius/sirius-components-deck": "2026.3.0", - "@eclipse-sirius/sirius-components-diagrams": "2026.3.0", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.3.0", - "@eclipse-sirius/sirius-components-forms": "2026.3.0", - "@eclipse-sirius/sirius-components-gantt": "2026.3.0", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.3.0", - "@eclipse-sirius/sirius-components-omnibox": "2026.3.0", - "@eclipse-sirius/sirius-components-palette": "2026.3.0", - "@eclipse-sirius/sirius-components-portals": "2026.3.0", - "@eclipse-sirius/sirius-components-selection": "2026.3.0", - "@eclipse-sirius/sirius-components-tables": "2026.3.0", - "@eclipse-sirius/sirius-components-trees": "2026.3.0", - "@eclipse-sirius/sirius-components-validation": "2026.3.0", - "@eclipse-sirius/sirius-components-widget-reference": "2026.3.0", - "@eclipse-sirius/sirius-components-widget-table": "2026.3.0", - "@eclipse-sirius/sirius-web-application": "2026.3.0", - "@eclipse-sirius/sirius-web-view-fork": "2026.3.0", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", + "@eclipse-sirius/sirius-components-browser": "file:.yalc/@eclipse-sirius/sirius-components-browser", + "@eclipse-sirius/sirius-components-charts": "file:.yalc/@eclipse-sirius/sirius-components-charts", + "@eclipse-sirius/sirius-components-core": "file:.yalc/@eclipse-sirius/sirius-components-core", + "@eclipse-sirius/sirius-components-datatree": "file:.yalc/@eclipse-sirius/sirius-components-datatree", + "@eclipse-sirius/sirius-components-deck": "file:.yalc/@eclipse-sirius/sirius-components-deck", + "@eclipse-sirius/sirius-components-diagrams": "file:.yalc/@eclipse-sirius/sirius-components-diagrams", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "file:.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "@eclipse-sirius/sirius-components-forms": "file:.yalc/@eclipse-sirius/sirius-components-forms", + "@eclipse-sirius/sirius-components-gantt": "file:.yalc/@eclipse-sirius/sirius-components-gantt", + "@eclipse-sirius/sirius-components-impactanalysis": "file:.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "@eclipse-sirius/sirius-components-omnibox": "file:.yalc/@eclipse-sirius/sirius-components-omnibox", + "@eclipse-sirius/sirius-components-palette": "file:.yalc/@eclipse-sirius/sirius-components-palette", + "@eclipse-sirius/sirius-components-portals": "file:.yalc/@eclipse-sirius/sirius-components-portals", + "@eclipse-sirius/sirius-components-selection": "file:.yalc/@eclipse-sirius/sirius-components-selection", + "@eclipse-sirius/sirius-components-tables": "file:.yalc/@eclipse-sirius/sirius-components-tables", + "@eclipse-sirius/sirius-components-trees": "file:.yalc/@eclipse-sirius/sirius-components-trees", + "@eclipse-sirius/sirius-components-validation": "file:.yalc/@eclipse-sirius/sirius-components-validation", + "@eclipse-sirius/sirius-components-widget-reference": "file:.yalc/@eclipse-sirius/sirius-components-widget-reference", + "@eclipse-sirius/sirius-components-widget-table": "file:.yalc/@eclipse-sirius/sirius-components-widget-table", + "@eclipse-sirius/sirius-web-application": "file:.yalc/@eclipse-sirius/sirius-web-application", + "@eclipse-sirius/sirius-web-view-fork": "file:.yalc/@eclipse-sirius/sirius-web-view-fork", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", "@mui/x-tree-view": "7.29.1", - "@ObeoNetwork/gantt-task-react": "0.6.3", + "@ObeoNetwork/gantt-task-react": "0.6.4", "@ObeoNetwork/react-trello": "2.4.11", "@xyflow/react": "12.6.0", "d3": "7.0.0", @@ -7769,7 +7517,7 @@ "graphql": "16.8.1", "html-to-image": "1.11.11", "i18next-http-backend": "3.0.2", - "lexical": "0.8.1", + "lexical": "0.42.0", "material-react-table": "3.2.1", "notistack": "3.0.1", "pathfinding": "0.4.18", @@ -7797,26 +7545,30 @@ "@types/react-dom": "18.3.0", "@types/react-resizable": "3.0.8", "@types/react-router-dom": "5.3.3", - "@vitejs/plugin-react": "5.0.0", + "@vitejs/plugin-react": "6.0.1", "jest-junit-reporter": "1.1.0", "prettier": "2.7.1", "typescript": "5.4.5", - "vite": "7.1.1", + "vite": "8.0.1", "vitest": "3.2.4" } }, - "pepper-web/node_modules/@eclipse-sirius/sirius-components-gantt": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-components-gantt/2026.3.0/fb51487e0f77504c2ce5f4d1b7c043a6ce638735", - "integrity": "sha512-ATQbnYNRll5uFOe6KfFnBNgJsX551bxyimlb2/+/H9kuoKOt1FhT8LlCIEL8Kb5RtI/dc46HOVN1ujLQ8RT3bQ==", + "pepper-web/.yalc/@eclipse-sirius/sirius-components-browser": { + "version": "2026.3.3", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", "@eclipse-sirius/sirius-components-core": "*", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@ObeoNetwork/gantt-task-react": "0.6.3", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", "graphql": "16.8.1", + "lexical": "0.42.0", "react": "18.3.1", "react-dom": "18.3.1", "react-i18next": "16.2.3", @@ -7824,136 +7576,1655 @@ "tss-react": "4.9.16" } }, - "pepper-web/node_modules/@eclipse-sirius/sirius-web-application": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-web-application/2026.3.0/beb7039adecb111eb559d8db6b1639df96787e98", - "integrity": "sha512-3iwb2GqQA5plhjuJa7ztuo1KS04vNC4zLWIkHAHTkkdtZoPrsbhLQOiTdZU49lTqTygXKRW8aIZt1IEFsULCBQ==", + "pepper-web/.yalc/@eclipse-sirius/sirius-components-charts": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "d3": "7.0.0", + "react": "18.3.1" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-core": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-datatree": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-deck": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@ObeoNetwork/react-trello": "2.4.11", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-diagrams": { + "version": "2026.3.3", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "*", - "@eclipse-sirius/sirius-components-charts": "*", "@eclipse-sirius/sirius-components-core": "*", "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-deck": "*", - "@eclipse-sirius/sirius-components-diagrams": "*", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "*", - "@eclipse-sirius/sirius-components-forms": "*", - "@eclipse-sirius/sirius-components-gantt": "*", "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@eclipse-sirius/sirius-components-omnibox": "*", - "@eclipse-sirius/sirius-components-palette": "*", - "@eclipse-sirius/sirius-components-portals": "*", - "@eclipse-sirius/sirius-components-selection": "*", - "@eclipse-sirius/sirius-components-tables": "*", - "@eclipse-sirius/sirius-components-trees": "*", - "@eclipse-sirius/sirius-components-validation": "*", - "@eclipse-sirius/sirius-components-widget-reference": "*", - "@eclipse-sirius/sirius-components-widget-table": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@mui/x-tree-view": "7.29.1", - "@ObeoNetwork/gantt-task-react": "0.6.3", - "@ObeoNetwork/react-trello": "2.4.11", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", "@xyflow/react": "12.6.0", - "d3": "7.0.0", "elkjs": "0.11.0", - "export-to-csv": "1.3.0", "graphql": "16.8.1", "html-to-image": "1.11.11", - "i18next-http-backend": "3.0.2", - "lexical": "0.8.1", - "material-react-table": "3.2.1", - "notistack": "3.0.1", "pathfinding": "0.4.18", "react": "18.3.1", "react-dom": "18.3.1", "react-draggable": "4.4.6", - "react-grid-layout": "1.4.4", "react-i18next": "16.2.3", "react-resizable": "3.0.5", "react-resizable-panels": "3.0.2", - "react-router-dom": "6.26.0", - "react-window": "2.2.2", "svg-path-parser": "1.1.0", "tss-react": "4.9.16" } }, - "pepper-web/node_modules/@eclipse-sirius/sirius-web-view-fork": { - "version": "2026.3.0", - "resolved": "https://npm.pkg.github.com/download/@eclipse-sirius/sirius-web-view-fork/2026.3.0/5038c5832e9f81141d679fe4a88a0e7a1bb116bf", - "integrity": "sha512-Y5QiiOjVk9VD8kaJkLGISf/IR/TU16wrikGd+5awJ3/CjFkrhNe2F/FCNYi2tBAlZnPdd+PHdDd9uX7mZ6gEug==", + "pepper-web/.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors": { + "version": "2026.3.3", "license": "EPL-2.0", "peerDependencies": { "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "*", "@eclipse-sirius/sirius-components-charts": "*", "@eclipse-sirius/sirius-components-core": "*", - "@eclipse-sirius/sirius-components-datatree": "*", - "@eclipse-sirius/sirius-components-deck": "*", - "@eclipse-sirius/sirius-components-diagrams": "*", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "*", "@eclipse-sirius/sirius-components-forms": "*", - "@eclipse-sirius/sirius-components-gantt": "*", - "@eclipse-sirius/sirius-components-impactanalysis": "*", - "@eclipse-sirius/sirius-components-omnibox": "*", - "@eclipse-sirius/sirius-components-palette": "*", - "@eclipse-sirius/sirius-components-portals": "*", - "@eclipse-sirius/sirius-components-selection": "*", - "@eclipse-sirius/sirius-components-tables": "*", - "@eclipse-sirius/sirius-components-trees": "*", - "@eclipse-sirius/sirius-components-validation": "*", - "@eclipse-sirius/sirius-components-widget-reference": "*", - "@eclipse-sirius/sirius-components-widget-table": "*", - "@eclipse-sirius/sirius-web-application": "*", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", "@mui/x-tree-view": "7.29.1", - "@ObeoNetwork/gantt-task-react": "0.6.3", - "@ObeoNetwork/react-trello": "2.4.11", - "@xyflow/react": "12.6.0", "d3": "7.0.0", - "elkjs": "0.11.0", "export-to-csv": "1.3.0", "graphql": "16.8.1", - "html-to-image": "1.11.11", - "i18next-http-backend": "3.0.2", - "lexical": "0.8.1", + "lexical": "0.42.0", "material-react-table": "3.2.1", - "notistack": "3.0.1", - "pathfinding": "0.4.18", "react": "18.3.1", "react-dom": "18.3.1", - "react-draggable": "4.4.6", - "react-grid-layout": "1.4.4", "react-i18next": "16.2.3", - "react-resizable": "3.0.5", "react-resizable-panels": "3.0.2", - "react-router-dom": "6.26.0", - "react-window": "2.2.2", - "svg-path-parser": "1.1.0", "tss-react": "4.9.16" } }, - "pepper-web/node_modules/@ObeoNetwork/gantt-task-react": { - "version": "0.6.3", - "resolved": "https://npm.pkg.github.com/download/@ObeoNetwork/gantt-task-react/0.6.3/06bb4553a180609d213dd4753fa5ef1e3335b710", - "integrity": "sha512-wHHCZS/IxMJKQt5qTysKMCsAxiIAiiJ8ihWpD6x7LZEEz2C6oOOymmy8BVER+Lcn5rcq1UE6bAVGGYmfnyUf0w==", - "license": "MIT", - "dependencies": { - "@floating-ui/dom": "1.1.1", - "@floating-ui/react": "0.19.0", - "date-fns": "2.29.3" - }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-forms": { + "version": "2026.3.3", + "license": "EPL-2.0", "peerDependencies": { - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", - "@types/react": "18.3.3", - "@types/react-dom": "18.3.0", + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", "react": "18.3.1", - "react-dom": "18.3.1" + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-gantt": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@ObeoNetwork/gantt-task-react": "0.6.4", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-impactanalysis": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-omnibox": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-palette": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-portals": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-grid-layout": "1.4.4", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-selection": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-diagrams": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@xyflow/react": "12.6.0", + "elkjs": "0.11.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-tables": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-trees": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-validation": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-reference": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-browser": "*", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-table": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-tables": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-web-application": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-browser": "*", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-deck": "*", + "@eclipse-sirius/sirius-components-diagrams": "*", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-gantt": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-omnibox": "*", + "@eclipse-sirius/sirius-components-palette": "*", + "@eclipse-sirius/sirius-components-portals": "*", + "@eclipse-sirius/sirius-components-selection": "*", + "@eclipse-sirius/sirius-components-tables": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@eclipse-sirius/sirius-components-validation": "*", + "@eclipse-sirius/sirius-components-widget-reference": "*", + "@eclipse-sirius/sirius-components-widget-table": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "@ObeoNetwork/gantt-task-react": "0.6.4", + "@ObeoNetwork/react-trello": "2.4.11", + "@xyflow/react": "12.6.0", + "d3": "7.0.0", + "elkjs": "0.11.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "i18next-http-backend": "3.0.2", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "notistack": "3.0.1", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-grid-layout": "1.4.4", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "react-router-dom": "6.26.0", + "react-window": "2.2.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, + "pepper-web/.yalc/@eclipse-sirius/sirius-web-view-fork": { + "version": "2026.3.3", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-browser": "*", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-deck": "*", + "@eclipse-sirius/sirius-components-diagrams": "*", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-gantt": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-omnibox": "*", + "@eclipse-sirius/sirius-components-palette": "*", + "@eclipse-sirius/sirius-components-portals": "*", + "@eclipse-sirius/sirius-components-selection": "*", + "@eclipse-sirius/sirius-components-tables": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@eclipse-sirius/sirius-components-validation": "*", + "@eclipse-sirius/sirius-components-widget-reference": "*", + "@eclipse-sirius/sirius-components-widget-table": "*", + "@eclipse-sirius/sirius-web-application": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "@ObeoNetwork/gantt-task-react": "0.6.4", + "@ObeoNetwork/react-trello": "2.4.11", + "@xyflow/react": "12.6.0", + "d3": "7.0.0", + "elkjs": "0.11.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "i18next-http-backend": "3.0.2", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "notistack": "3.0.1", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-grid-layout": "1.4.4", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "react-router-dom": "6.26.0", + "react-window": "2.2.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, + "pepper-web/node_modules/@esbuild/aix-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", + "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/android-arm": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", + "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/android-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", + "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/android-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", + "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/darwin-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", + "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/darwin-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", + "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/freebsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", + "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/freebsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", + "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-arm": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", + "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", + "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", + "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-loong64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", + "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-mips64el": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", + "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", + "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-riscv64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", + "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-s390x": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", + "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/linux-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", + "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", + "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/netbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", + "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", + "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/openbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", + "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", + "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/sunos-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", + "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/win32-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", + "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/win32-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", + "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@esbuild/win32-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", + "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "pepper-web/node_modules/@lexical/clipboard": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/clipboard/-/clipboard-0.42.0.tgz", + "integrity": "sha512-D3K2ID0zew/+CKpwxnUTTh/N46yU4IK8bFWV9Htz+g1vFhgUF9UnDOQCmqpJbdP7z+9U1F8rk3fzf9OmP2Fm2w==", + "license": "MIT", + "dependencies": { + "@lexical/html": "0.42.0", + "@lexical/list": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/code": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/code/-/code-0.42.0.tgz", + "integrity": "sha512-KMu1nWae9pHvA9nl6dlJacbt3QBBNemgalmLJcZ5QhdGEQA1cVIU4gBPJ5TJqgY9XF7WZgj5JvDIPxjrZmf+XQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "@lexical/code-core": "0.42.0", + "@lexical/code-prism": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/dragon": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/dragon/-/dragon-0.42.0.tgz", + "integrity": "sha512-/TQzP+7PLJMqq9+MlgQWiJsxS9GOOa8Gp0svCD8vNIOciYmXfd28TR1Go+ZnBWwr7k/2W++3XUYVQU2KUcQsDQ==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/hashtag": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/hashtag/-/hashtag-0.42.0.tgz", + "integrity": "sha512-WOg5nFOfhabNBXzEIutdWDj+TUHtJEezj6w8jyYDGqZ31gu0cgrXSeV8UIynz/1oj+rpzEeEB7P6ODnwgjt7qA==", + "license": "MIT", + "dependencies": { + "@lexical/text": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/history": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/history/-/history-0.42.0.tgz", + "integrity": "sha512-YfCZ1ICUt6BCg2ncJWFMuS4yftnB7FEHFRf3qqTSTf6oGZ4IZfzabMNEy47xybUuf7FXBbdaCKJrc/zOM+wGxw==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/html": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/html/-/html-0.42.0.tgz", + "integrity": "sha512-KgBUDLXehufCsXW3w0XsuoI2xecIhouOishnaNOH4zIA7dAtnNAfdPN/kWrWs0s83gz44OrnqccP+Bprw3UDEQ==", + "license": "MIT", + "dependencies": { + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/link": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/link/-/link-0.42.0.tgz", + "integrity": "sha512-cdeM/+f+kn7aGwW/3FIi6USjl1gBNdEEwg0/ZS+KlYcsy8gxx2e4cyVjsomBu/WU17Qxa0NC0paSr7qEJ/1Fig==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/list": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/list/-/list-0.42.0.tgz", + "integrity": "sha512-TIezILnmIVuvfqEEbcMnsT4xQRlswI6ysHISqsvKL6l5EBhs1gqmNYjHa/Yrfzaq5y52TM1PAtxbFts+G7N6kg==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/mark": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/mark/-/mark-0.42.0.tgz", + "integrity": "sha512-H1aGjbMEcL4B8GT7bm/ePHm7j3Wema+wIRNPmxMtXGMz5gpVN3gZlvg2UcUHHJb00SrBA95OUVT5I2nu/KP06w==", + "license": "MIT", + "dependencies": { + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/markdown": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/markdown/-/markdown-0.42.0.tgz", + "integrity": "sha512-+mOxgBiumlgVX8Acna+9HjJfSOw1jywufGcAQq3/8S11wZ4gE0u13AaR8LMmU8ydVeOQg09y8PNzGNQ/avZJbg==", + "license": "MIT", + "dependencies": { + "@lexical/code-core": "0.42.0", + "@lexical/link": "0.42.0", + "@lexical/list": "0.42.0", + "@lexical/rich-text": "0.42.0", + "@lexical/text": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/offset": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/offset/-/offset-0.42.0.tgz", + "integrity": "sha512-V+4af1KmTOnBZrR+kU3e6eD33W/g3QqMPPp3cpFwyXk/dKRc4K8HfyDsSDrjop1mPd9pl3lKSiEmX6uQG8K9XQ==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/overflow": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/overflow/-/overflow-0.42.0.tgz", + "integrity": "sha512-wlrHaM27rODJP5m+CTgfZGLg3qWlQ0ptGodcqoGdq6HSbV8nGFY6TvcLMaMtYQ1lm4v9G7Xe9LwjooR6xS3Gug==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/plain-text": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/plain-text/-/plain-text-0.42.0.tgz", + "integrity": "sha512-YWvBwIxLltrIaZDcv0rK4s44P6Yt17yhOb0E+g3+tjF8GGPrrocox+Pglu0m2RHR+G7zULN3isolmWIm/HhWiw==", + "license": "MIT", + "dependencies": { + "@lexical/clipboard": "0.42.0", + "@lexical/dragon": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/react": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/react/-/react-0.42.0.tgz", + "integrity": "sha512-ujWJXhvlFVVTpwDcnSgEYWRuqUbreZaMB+4bjIDT5r7hkAplUHQndlkeuFHKFiJBasSAreleV7zhXrLL5xa9eA==", + "license": "MIT", + "dependencies": { + "@floating-ui/react": "^0.27.16", + "@lexical/devtools-core": "0.42.0", + "@lexical/dragon": "0.42.0", + "@lexical/extension": "0.42.0", + "@lexical/hashtag": "0.42.0", + "@lexical/history": "0.42.0", + "@lexical/link": "0.42.0", + "@lexical/list": "0.42.0", + "@lexical/mark": "0.42.0", + "@lexical/markdown": "0.42.0", + "@lexical/overflow": "0.42.0", + "@lexical/plain-text": "0.42.0", + "@lexical/rich-text": "0.42.0", + "@lexical/table": "0.42.0", + "@lexical/text": "0.42.0", + "@lexical/utils": "0.42.0", + "@lexical/yjs": "0.42.0", + "lexical": "0.42.0", + "react-error-boundary": "^6.0.0" + }, + "peerDependencies": { + "react": ">=17.x", + "react-dom": ">=17.x" + } + }, + "pepper-web/node_modules/@lexical/react/node_modules/@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "pepper-web/node_modules/@lexical/react/node_modules/@floating-ui/react": { + "version": "0.27.19", + "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.19.tgz", + "integrity": "sha512-31B8h5mm8YxotlE7/AU/PhNAl8eWxAmjL/v2QOxroDNkTFLk3Uu82u63N3b6TXa4EGJeeZLVcd/9AlNlVqzeog==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "tabbable": "^6.0.0" + }, + "peerDependencies": { + "react": ">=17.0.0", + "react-dom": ">=17.0.0" + } + }, + "pepper-web/node_modules/@lexical/react/node_modules/@floating-ui/react/node_modules/@floating-ui/react-dom": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz", + "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.6" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "pepper-web/node_modules/@lexical/react/node_modules/@lexical/devtools-core": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/devtools-core/-/devtools-core-0.42.0.tgz", + "integrity": "sha512-8nP8eE9i8JImgSrvInkWFfMCmXVKp3w3VaOvbJysdlK/Zal6xd8EWJEi6elj0mUW5T/oycfipPs2Sfl7Z+n14A==", + "license": "MIT", + "dependencies": { + "@lexical/html": "0.42.0", + "@lexical/link": "0.42.0", + "@lexical/mark": "0.42.0", + "@lexical/table": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + }, + "peerDependencies": { + "react": ">=17.x", + "react-dom": ">=17.x" + } + }, + "pepper-web/node_modules/@lexical/react/node_modules/react-error-boundary": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-6.1.1.tgz", + "integrity": "sha512-BrYwPOdXi5mqkk5lw+Uvt0ThHx32rCt3BkukS4X23A2AIWDPSGX6iaWTc0y9TU/mHDA/6qOSGel+B2ERkOvD1w==", + "license": "MIT", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0" + } + }, + "pepper-web/node_modules/@lexical/rich-text": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/rich-text/-/rich-text-0.42.0.tgz", + "integrity": "sha512-v4YgiM3oK3FZcRrfB+LetvLbQ5aee9MRO9tHf0EFweXg19XnSjHV0cfPAW7TyPxRELzB69+K0Q3AybRlTMjG4Q==", + "license": "MIT", + "dependencies": { + "@lexical/clipboard": "0.42.0", + "@lexical/dragon": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/selection": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.42.0.tgz", + "integrity": "sha512-iWTjLA5BSEuUnvWe9Xwu9FSdZFl3Yi0NqalabXKI+7KgCIlIVXE74y4NvWPUSLkSCB/Z1RPKiHmZqZ1vyu/yGQ==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/table": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/table/-/table-0.42.0.tgz", + "integrity": "sha512-GKiZyjQsHDXRckq5VBrOowyvds51WoVRECfDgcl8pqLMnKyEdCa58E7fkSJrr5LS80Scod+Cjn6SBRzOcdsrKg==", + "license": "MIT", + "dependencies": { + "@lexical/clipboard": "0.42.0", + "@lexical/extension": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/text": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/text/-/text-0.42.0.tgz", + "integrity": "sha512-hT3EYVtBmONXyXe4TFVgtFcG1tf6JhLEuAf95+cOjgFGFSgvkZ/64BPbKLNTj2/9n6cU7EGPUNNwVigCSECJ2g==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/utils": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/utils/-/utils-0.42.0.tgz", + "integrity": "sha512-wGNdCW3QWEyVdFiSTLZfFPtiASPyYLcekIiYYZmoRVxVimT/jY+QPfnkO4JYgkO7Z70g/dsg9OhqyQSChQfvkQ==", + "license": "MIT", + "dependencies": { + "@lexical/selection": "0.42.0", + "lexical": "0.42.0" + } + }, + "pepper-web/node_modules/@lexical/yjs": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/yjs/-/yjs-0.42.0.tgz", + "integrity": "sha512-DplzWnYhfFceGPR+UyDFpZdB287wF/vNOHFuDsBF/nGDdTezvr0Gf60opzyBEF3oXym6p3xTmGygxvO97LZ+vw==", + "license": "MIT", + "dependencies": { + "@lexical/offset": "0.42.0", + "@lexical/selection": "0.42.0", + "lexical": "0.42.0" + }, + "peerDependencies": { + "yjs": ">=13.5.22" + } + }, + "pepper-web/node_modules/@mui/icons-material": { + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.3.10.tgz", + "integrity": "sha512-Au0ma4NSKGKNiimukj8UT/W1x2Qx6Qwn2RvFGykiSqVLYBNlIOPbjnIMvrwLGLu89EEpTVdu/ys/OduZR+tWqw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@mui/material": "^7.3.10", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "pepper-web/node_modules/@mui/material": { + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.10.tgz", + "integrity": "sha512-cHvGOk2ZEfbQt3LnGe0ZKd/ETs9gsUpkW66DCO+GSjMZhpdKU4XsuIr7zJ/B/2XaN8ihxuzHfYAR4zPtCN4RYg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6", + "@mui/core-downloads-tracker": "^7.3.10", + "@mui/system": "^7.3.10", + "@mui/types": "^7.4.12", + "@mui/utils": "^7.3.10", + "@popperjs/core": "^2.11.8", + "@types/react-transition-group": "^4.4.12", + "clsx": "^2.1.1", + "csstype": "^3.2.3", + "prop-types": "^15.8.1", + "react-is": "^19.2.3", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@mui/material-pigment-css": "^7.3.10", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@mui/material-pigment-css": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "pepper-web/node_modules/@mui/material/node_modules/@mui/system": { + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.10.tgz", + "integrity": "sha512-/sfPpdpJaQn7BSF+avjIdHSYmxHp0UOBYNxSG9QGKfMOD6sLANCpRPCnanq1Pe0lFf0NHkO2iUk0TNzdWC1USQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6", + "@mui/private-theming": "^7.3.10", + "@mui/styled-engine": "^7.3.10", + "@mui/types": "^7.4.12", + "@mui/utils": "^7.3.10", + "clsx": "^2.1.1", + "csstype": "^3.2.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "pepper-web/node_modules/@mui/material/node_modules/@mui/system/node_modules/@mui/private-theming": { + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.10.tgz", + "integrity": "sha512-j3EZN+zOctxUISvJSmsEPo5o2F8zse4l5vRkBY+ps6UtnL6J7o14kUaI4w7gwo73id9e3cDNMVQK/9BVaMHVBw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6", + "@mui/utils": "^7.3.10", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "pepper-web/node_modules/@mui/material/node_modules/@mui/system/node_modules/@mui/styled-engine": { + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.10.tgz", + "integrity": "sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/sheet": "^1.4.0", + "csstype": "^3.2.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "pepper-web/node_modules/@mui/material/node_modules/@mui/utils": { + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.10.tgz", + "integrity": "sha512-7y2eIfy0h7JPz+Yy4pS+wgV68d46PuuxDqKBN4Q8VlPQSsCAGwroMCV6xWyc7g9dvEp8ZNFsknc59GHWO+r6Ow==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6", + "@mui/types": "^7.4.12", + "@types/prop-types": "^15.7.15", + "clsx": "^2.1.1", + "prop-types": "^15.8.1", + "react-is": "^19.2.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "pepper-web/node_modules/@ObeoNetwork/gantt-task-react": { + "version": "0.6.4", + "resolved": "https://npm.pkg.github.com/download/@ObeoNetwork/gantt-task-react/0.6.4/a7808e959159e0a2221058aa200ec9f8c2ca2b58", + "integrity": "sha512-P4DnKTdToWNxN+8r+n34wyqAOvhcx6RzXnI9naMkaOf2Y4BkmQaDgKvMQ+0E8igNH+1iFwThomryGfzr5NLkrg==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "1.1.1", + "@floating-ui/react": "0.19.0", + "date-fns": "2.29.3" + }, + "peerDependencies": { + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@types/react": "18.3.3", + "@types/react-dom": "18.3.0", + "react": "18.3.1", + "react-dom": "18.3.1" + } + }, + "pepper-web/node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.7", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.7.tgz", + "integrity": "sha512-qujRfC8sFVInYSPPMLQByRh7zhwkGFS4+tyMQ83srV1qrxL4g8E2tyxVVyxd0+8QeBM1mIk9KbWxkegRr76XzA==", + "dev": true, + "license": "MIT" + }, + "pepper-web/node_modules/@vitejs/plugin-react": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-6.0.1.tgz", + "integrity": "sha512-l9X/E3cDb+xY3SWzlG1MOGt2usfEHGMNIaegaUGFsLkb3RCn/k8/TOXBcab+OndDI4TBtktT8/9BwwW8Vi9KUQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rolldown/pluginutils": "1.0.0-rc.7" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "@rolldown/plugin-babel": "^0.1.7 || ^0.2.0", + "babel-plugin-react-compiler": "^1.0.0", + "vite": "^8.0.0" + }, + "peerDependenciesMeta": { + "@rolldown/plugin-babel": { + "optional": true + }, + "babel-plugin-react-compiler": { + "optional": true + } + } + }, + "pepper-web/node_modules/esbuild": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.7.tgz", + "integrity": "sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.27.7", + "@esbuild/android-arm": "0.27.7", + "@esbuild/android-arm64": "0.27.7", + "@esbuild/android-x64": "0.27.7", + "@esbuild/darwin-arm64": "0.27.7", + "@esbuild/darwin-x64": "0.27.7", + "@esbuild/freebsd-arm64": "0.27.7", + "@esbuild/freebsd-x64": "0.27.7", + "@esbuild/linux-arm": "0.27.7", + "@esbuild/linux-arm64": "0.27.7", + "@esbuild/linux-ia32": "0.27.7", + "@esbuild/linux-loong64": "0.27.7", + "@esbuild/linux-mips64el": "0.27.7", + "@esbuild/linux-ppc64": "0.27.7", + "@esbuild/linux-riscv64": "0.27.7", + "@esbuild/linux-s390x": "0.27.7", + "@esbuild/linux-x64": "0.27.7", + "@esbuild/netbsd-arm64": "0.27.7", + "@esbuild/netbsd-x64": "0.27.7", + "@esbuild/openbsd-arm64": "0.27.7", + "@esbuild/openbsd-x64": "0.27.7", + "@esbuild/openharmony-arm64": "0.27.7", + "@esbuild/sunos-x64": "0.27.7", + "@esbuild/win32-arm64": "0.27.7", + "@esbuild/win32-ia32": "0.27.7", + "@esbuild/win32-x64": "0.27.7" + } + }, + "pepper-web/node_modules/lexical": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", + "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", + "license": "MIT" + }, + "pepper-web/node_modules/postcss": { + "version": "8.5.12", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.12.tgz", + "integrity": "sha512-W62t/Se6rA0Az3DfCL0AqJwXuKwBeYg6nOaIgzP+xZ7N5BFCI7DYi1qs6ygUYT6rvfi6t9k65UMLJC+PHZpDAA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "pepper-web/node_modules/vite": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.1.tgz", + "integrity": "sha512-wt+Z2qIhfFt85uiyRt5LPU4oVEJBXj8hZNWKeqFG4gRG/0RaRGJ7njQCwzFVjO+v4+Ipmf5CY7VdmZRAYYBPHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "lightningcss": "^1.32.0", + "picomatch": "^4.0.3", + "postcss": "^8.5.8", + "rolldown": "1.0.0-rc.10", + "tinyglobby": "^0.2.15" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "@vitejs/devtools": "^0.1.0", + "esbuild": "^0.27.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "@vitejs/devtools": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } } } } diff --git a/frontend/pepper-web/package.json b/frontend/pepper-web/package.json index 8971b03..dacdb90 100644 --- a/frontend/pepper-web/package.json +++ b/frontend/pepper-web/package.json @@ -12,34 +12,34 @@ }, "private": true, "dependencies": { + "@ObeoNetwork/gantt-task-react": "0.6.4", + "@ObeoNetwork/react-trello": "2.4.11", "@apollo/client": "3.10.4", - "@eclipse-sirius/sirius-components-browser": "2026.3.0", - "@eclipse-sirius/sirius-components-charts": "2026.3.0", - "@eclipse-sirius/sirius-components-core": "2026.3.0", - "@eclipse-sirius/sirius-components-deck": "2026.3.0", - "@eclipse-sirius/sirius-components-datatree": "2026.3.0", - "@eclipse-sirius/sirius-components-diagrams": "2026.3.0", - "@eclipse-sirius/sirius-components-formdescriptioneditors": "2026.3.0", - "@eclipse-sirius/sirius-components-forms": "2026.3.0", - "@eclipse-sirius/sirius-components-impactanalysis": "2026.3.0", - "@eclipse-sirius/sirius-components-gantt": "2026.3.0", - "@eclipse-sirius/sirius-components-palette": "2026.3.0", - "@eclipse-sirius/sirius-components-omnibox": "2026.3.0", - "@eclipse-sirius/sirius-components-portals": "2026.3.0", - "@eclipse-sirius/sirius-components-selection": "2026.3.0", - "@eclipse-sirius/sirius-components-tables": "2026.3.0", - "@eclipse-sirius/sirius-components-trees": "2026.3.0", - "@eclipse-sirius/sirius-components-validation": "2026.3.0", - "@eclipse-sirius/sirius-components-widget-reference": "2026.3.0", - "@eclipse-sirius/sirius-components-widget-table": "2026.3.0", - "@eclipse-sirius/sirius-web-application": "2026.3.0", - "@eclipse-sirius/sirius-web-view-fork": "2026.3.0", - "@lexical/react": "0.8.1", - "@mui/icons-material": "7.0.2", - "@mui/material": "7.0.2", + "@eclipse-sirius/sirius-components-browser": "file:.yalc/@eclipse-sirius/sirius-components-browser", + "@eclipse-sirius/sirius-components-charts": "file:.yalc/@eclipse-sirius/sirius-components-charts", + "@eclipse-sirius/sirius-components-core": "file:.yalc/@eclipse-sirius/sirius-components-core", + "@eclipse-sirius/sirius-components-datatree": "file:.yalc/@eclipse-sirius/sirius-components-datatree", + "@eclipse-sirius/sirius-components-deck": "file:.yalc/@eclipse-sirius/sirius-components-deck", + "@eclipse-sirius/sirius-components-diagrams": "file:.yalc/@eclipse-sirius/sirius-components-diagrams", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "file:.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "@eclipse-sirius/sirius-components-forms": "file:.yalc/@eclipse-sirius/sirius-components-forms", + "@eclipse-sirius/sirius-components-gantt": "file:.yalc/@eclipse-sirius/sirius-components-gantt", + "@eclipse-sirius/sirius-components-impactanalysis": "file:.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "@eclipse-sirius/sirius-components-omnibox": "file:.yalc/@eclipse-sirius/sirius-components-omnibox", + "@eclipse-sirius/sirius-components-palette": "file:.yalc/@eclipse-sirius/sirius-components-palette", + "@eclipse-sirius/sirius-components-portals": "file:.yalc/@eclipse-sirius/sirius-components-portals", + "@eclipse-sirius/sirius-components-selection": "file:.yalc/@eclipse-sirius/sirius-components-selection", + "@eclipse-sirius/sirius-components-tables": "file:.yalc/@eclipse-sirius/sirius-components-tables", + "@eclipse-sirius/sirius-components-trees": "file:.yalc/@eclipse-sirius/sirius-components-trees", + "@eclipse-sirius/sirius-components-validation": "file:.yalc/@eclipse-sirius/sirius-components-validation", + "@eclipse-sirius/sirius-components-widget-reference": "file:.yalc/@eclipse-sirius/sirius-components-widget-reference", + "@eclipse-sirius/sirius-components-widget-table": "file:.yalc/@eclipse-sirius/sirius-components-widget-table", + "@eclipse-sirius/sirius-web-application": "file:.yalc/@eclipse-sirius/sirius-web-application", + "@eclipse-sirius/sirius-web-view-fork": "file:.yalc/@eclipse-sirius/sirius-web-view-fork", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", "@mui/x-tree-view": "7.29.1", - "@ObeoNetwork/gantt-task-react": "0.6.3", - "@ObeoNetwork/react-trello": "2.4.11", "@xyflow/react": "12.6.0", "d3": "7.0.0", "elkjs": "0.11.0", @@ -48,7 +48,7 @@ "graphql": "16.8.1", "html-to-image": "1.11.11", "i18next-http-backend": "3.0.2", - "lexical": "0.8.1", + "lexical": "0.42.0", "material-react-table": "3.2.1", "notistack": "3.0.1", "pathfinding": "0.4.18", @@ -76,11 +76,11 @@ "@types/react-dom": "18.3.0", "@types/react-resizable": "3.0.8", "@types/react-router-dom": "5.3.3", - "@vitejs/plugin-react": "5.0.0", + "@vitejs/plugin-react": "6.0.1", "jest-junit-reporter": "1.1.0", "prettier": "2.7.1", "typescript": "5.4.5", - "vite": "7.1.1", + "vite": "8.0.1", "vitest": "3.2.4" }, "overrides": { From 988d1588cc2f4cc25e8424783c2b0b18fa6831c2 Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Thu, 30 Apr 2026 14:54:37 +0200 Subject: [PATCH 05/17] pom pour SW 2026.5.0 --- backend/pepper-application/pom.xml | 2 +- backend/pepper-parent/pom.xml | 4 ++-- backend/pepper-starter/pom.xml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/backend/pepper-application/pom.xml b/backend/pepper-application/pom.xml index 6187a42..871868c 100644 --- a/backend/pepper-application/pom.xml +++ b/backend/pepper-application/pom.xml @@ -62,7 +62,7 @@ com.tngtech.archunit archunit-junit5 - 1.3.0 + 1.4.1 test diff --git a/backend/pepper-parent/pom.xml b/backend/pepper-parent/pom.xml index d377d40..9da527a 100644 --- a/backend/pepper-parent/pom.xml +++ b/backend/pepper-parent/pom.xml @@ -18,7 +18,7 @@ org.springframework.boot spring-boot-starter-parent - 3.5.11 + 4.0.6 pepper @@ -359,7 +359,7 @@ org.jacoco jacoco-maven-plugin - 0.8.13 + 0.8.14 diff --git a/backend/pepper-starter/pom.xml b/backend/pepper-starter/pom.xml index d74f22d..6eb7d0c 100644 --- a/backend/pepper-starter/pom.xml +++ b/backend/pepper-starter/pom.xml @@ -82,7 +82,7 @@ org.apache.maven.plugins maven-checkstyle-plugin - 3.4.0 + 3.6.0 ./../releng/pepper-resources/checkstyle/CheckstyleConfiguration.xml From d10316704b8f1c05dd1ed24aa0ee54cfb2a4b2fc Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Tue, 5 May 2026 16:12:57 +0200 Subject: [PATCH 06/17] yalc 2026.3.8 --- backend/pepper-parent/pom.xml | 2 +- frontend/package-lock.json | 2197 +++++++++++++++++++-------------- frontend/package.json | 23 + 3 files changed, 1292 insertions(+), 930 deletions(-) diff --git a/backend/pepper-parent/pom.xml b/backend/pepper-parent/pom.xml index 9da527a..64d18c5 100644 --- a/backend/pepper-parent/pom.xml +++ b/backend/pepper-parent/pom.xml @@ -30,7 +30,7 @@ 17 - 2026.3.3 + 2026.3.8 7.4.14-SNAPSHOT diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 8d178ae..287b369 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -11,6 +11,29 @@ "workspaces": [ "pepper-web" ], + "dependencies": { + "@eclipse-sirius/sirius-components-browser": "file:.yalc/@eclipse-sirius/sirius-components-browser", + "@eclipse-sirius/sirius-components-charts": "file:.yalc/@eclipse-sirius/sirius-components-charts", + "@eclipse-sirius/sirius-components-core": "file:.yalc/@eclipse-sirius/sirius-components-core", + "@eclipse-sirius/sirius-components-datatree": "file:.yalc/@eclipse-sirius/sirius-components-datatree", + "@eclipse-sirius/sirius-components-deck": "file:.yalc/@eclipse-sirius/sirius-components-deck", + "@eclipse-sirius/sirius-components-diagrams": "file:.yalc/@eclipse-sirius/sirius-components-diagrams", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "file:.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "@eclipse-sirius/sirius-components-forms": "file:.yalc/@eclipse-sirius/sirius-components-forms", + "@eclipse-sirius/sirius-components-gantt": "file:.yalc/@eclipse-sirius/sirius-components-gantt", + "@eclipse-sirius/sirius-components-impactanalysis": "file:.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "@eclipse-sirius/sirius-components-omnibox": "file:.yalc/@eclipse-sirius/sirius-components-omnibox", + "@eclipse-sirius/sirius-components-palette": "file:.yalc/@eclipse-sirius/sirius-components-palette", + "@eclipse-sirius/sirius-components-portals": "file:.yalc/@eclipse-sirius/sirius-components-portals", + "@eclipse-sirius/sirius-components-selection": "file:.yalc/@eclipse-sirius/sirius-components-selection", + "@eclipse-sirius/sirius-components-tables": "file:.yalc/@eclipse-sirius/sirius-components-tables", + "@eclipse-sirius/sirius-components-trees": "file:.yalc/@eclipse-sirius/sirius-components-trees", + "@eclipse-sirius/sirius-components-validation": "file:.yalc/@eclipse-sirius/sirius-components-validation", + "@eclipse-sirius/sirius-components-widget-reference": "file:.yalc/@eclipse-sirius/sirius-components-widget-reference", + "@eclipse-sirius/sirius-components-widget-table": "file:.yalc/@eclipse-sirius/sirius-components-widget-table", + "@eclipse-sirius/sirius-web-application": "file:.yalc/@eclipse-sirius/sirius-web-application", + "@eclipse-sirius/sirius-web-view-fork": "file:.yalc/@eclipse-sirius/sirius-web-view-fork" + }, "devDependencies": { "turbo": "2.4.4" }, @@ -19,6 +42,487 @@ "npm": "10.9.2" } }, + ".yalc/@eclipse-sirius/sirius-components-browser": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "graphql": "16.8.1", + "lexical": "0.42.0", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-charts": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "d3": "7.0.0", + "react": "18.3.1" + } + }, + ".yalc/@eclipse-sirius/sirius-components-core": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-datatree": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-deck": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@ObeoNetwork/react-trello": "2.4.11", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-diagrams": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@xyflow/react": "12.6.0", + "elkjs": "0.11.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-formdescriptioneditors": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-forms": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-gantt": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@ObeoNetwork/gantt-task-react": "0.6.4", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-impactanalysis": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-omnibox": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-palette": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-portals": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-grid-layout": "1.4.4", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-selection": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-diagrams": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@xyflow/react": "12.6.0", + "elkjs": "0.11.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-tables": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-trees": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-validation": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-core": "*", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "graphql": "16.8.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-widget-reference": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-browser": "*", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-components-widget-table": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-tables": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "d3": "7.0.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-i18next": "16.2.3", + "react-resizable-panels": "3.0.2", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-web-application": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-browser": "*", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-deck": "*", + "@eclipse-sirius/sirius-components-diagrams": "*", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-gantt": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-omnibox": "*", + "@eclipse-sirius/sirius-components-palette": "*", + "@eclipse-sirius/sirius-components-portals": "*", + "@eclipse-sirius/sirius-components-selection": "*", + "@eclipse-sirius/sirius-components-tables": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@eclipse-sirius/sirius-components-validation": "*", + "@eclipse-sirius/sirius-components-widget-reference": "*", + "@eclipse-sirius/sirius-components-widget-table": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "@ObeoNetwork/gantt-task-react": "0.6.4", + "@ObeoNetwork/react-trello": "2.4.11", + "@xyflow/react": "12.6.0", + "d3": "7.0.0", + "elkjs": "0.11.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "i18next-http-backend": "3.0.2", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "notistack": "3.0.1", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-grid-layout": "1.4.4", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "react-router-dom": "6.26.0", + "react-window": "2.2.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, + ".yalc/@eclipse-sirius/sirius-web-view-fork": { + "version": "2026.3.8", + "license": "EPL-2.0", + "peerDependencies": { + "@apollo/client": "3.10.4", + "@eclipse-sirius/sirius-components-browser": "*", + "@eclipse-sirius/sirius-components-charts": "*", + "@eclipse-sirius/sirius-components-core": "*", + "@eclipse-sirius/sirius-components-datatree": "*", + "@eclipse-sirius/sirius-components-deck": "*", + "@eclipse-sirius/sirius-components-diagrams": "*", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "*", + "@eclipse-sirius/sirius-components-forms": "*", + "@eclipse-sirius/sirius-components-gantt": "*", + "@eclipse-sirius/sirius-components-impactanalysis": "*", + "@eclipse-sirius/sirius-components-omnibox": "*", + "@eclipse-sirius/sirius-components-palette": "*", + "@eclipse-sirius/sirius-components-portals": "*", + "@eclipse-sirius/sirius-components-selection": "*", + "@eclipse-sirius/sirius-components-tables": "*", + "@eclipse-sirius/sirius-components-trees": "*", + "@eclipse-sirius/sirius-components-validation": "*", + "@eclipse-sirius/sirius-components-widget-reference": "*", + "@eclipse-sirius/sirius-components-widget-table": "*", + "@eclipse-sirius/sirius-web-application": "*", + "@lexical/code": "0.42.0", + "@lexical/react": "0.42.0", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/x-tree-view": "7.29.1", + "@ObeoNetwork/gantt-task-react": "0.6.4", + "@ObeoNetwork/react-trello": "2.4.11", + "@xyflow/react": "12.6.0", + "d3": "7.0.0", + "elkjs": "0.11.0", + "export-to-csv": "1.3.0", + "graphql": "16.8.1", + "html-to-image": "1.11.11", + "i18next-http-backend": "3.0.2", + "lexical": "0.42.0", + "material-react-table": "3.2.1", + "notistack": "3.0.1", + "pathfinding": "0.4.18", + "react": "18.3.1", + "react-dom": "18.3.1", + "react-draggable": "4.4.6", + "react-grid-layout": "1.4.4", + "react-i18next": "16.2.3", + "react-resizable": "3.0.5", + "react-resizable-panels": "3.0.2", + "react-router-dom": "6.26.0", + "react-window": "2.2.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" + } + }, "node_modules/@apollo/client": { "version": "3.10.4", "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.10.4.tgz", @@ -223,87 +727,87 @@ } }, "node_modules/@eclipse-sirius/sirius-components-browser": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-browser", + "resolved": ".yalc/@eclipse-sirius/sirius-components-browser", "link": true }, "node_modules/@eclipse-sirius/sirius-components-charts": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-charts", + "resolved": ".yalc/@eclipse-sirius/sirius-components-charts", "link": true }, "node_modules/@eclipse-sirius/sirius-components-core": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-core", + "resolved": ".yalc/@eclipse-sirius/sirius-components-core", "link": true }, "node_modules/@eclipse-sirius/sirius-components-datatree": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-datatree", + "resolved": ".yalc/@eclipse-sirius/sirius-components-datatree", "link": true }, "node_modules/@eclipse-sirius/sirius-components-deck": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-deck", + "resolved": ".yalc/@eclipse-sirius/sirius-components-deck", "link": true }, "node_modules/@eclipse-sirius/sirius-components-diagrams": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-diagrams", + "resolved": ".yalc/@eclipse-sirius/sirius-components-diagrams", "link": true }, "node_modules/@eclipse-sirius/sirius-components-formdescriptioneditors": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "resolved": ".yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", "link": true }, "node_modules/@eclipse-sirius/sirius-components-forms": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-forms", + "resolved": ".yalc/@eclipse-sirius/sirius-components-forms", "link": true }, "node_modules/@eclipse-sirius/sirius-components-gantt": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-gantt", + "resolved": ".yalc/@eclipse-sirius/sirius-components-gantt", "link": true }, "node_modules/@eclipse-sirius/sirius-components-impactanalysis": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "resolved": ".yalc/@eclipse-sirius/sirius-components-impactanalysis", "link": true }, "node_modules/@eclipse-sirius/sirius-components-omnibox": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-omnibox", + "resolved": ".yalc/@eclipse-sirius/sirius-components-omnibox", "link": true }, "node_modules/@eclipse-sirius/sirius-components-palette": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-palette", + "resolved": ".yalc/@eclipse-sirius/sirius-components-palette", "link": true }, "node_modules/@eclipse-sirius/sirius-components-portals": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-portals", + "resolved": ".yalc/@eclipse-sirius/sirius-components-portals", "link": true }, "node_modules/@eclipse-sirius/sirius-components-selection": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-selection", + "resolved": ".yalc/@eclipse-sirius/sirius-components-selection", "link": true }, "node_modules/@eclipse-sirius/sirius-components-tables": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-tables", + "resolved": ".yalc/@eclipse-sirius/sirius-components-tables", "link": true }, "node_modules/@eclipse-sirius/sirius-components-trees": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-trees", + "resolved": ".yalc/@eclipse-sirius/sirius-components-trees", "link": true }, "node_modules/@eclipse-sirius/sirius-components-validation": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-validation", + "resolved": ".yalc/@eclipse-sirius/sirius-components-validation", "link": true }, "node_modules/@eclipse-sirius/sirius-components-widget-reference": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-reference", + "resolved": ".yalc/@eclipse-sirius/sirius-components-widget-reference", "link": true }, "node_modules/@eclipse-sirius/sirius-components-widget-table": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-table", + "resolved": ".yalc/@eclipse-sirius/sirius-components-widget-table", "link": true }, "node_modules/@eclipse-sirius/sirius-web-application": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-web-application", + "resolved": ".yalc/@eclipse-sirius/sirius-web-application", "link": true }, "node_modules/@eclipse-sirius/sirius-web-view-fork": { - "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-web-view-fork", + "resolved": ".yalc/@eclipse-sirius/sirius-web-view-fork", "link": true }, "node_modules/@emnapi/core": { @@ -1061,78 +1565,333 @@ "node": ">=6.0.0" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.31", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", - "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@lexical/clipboard": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/clipboard/-/clipboard-0.42.0.tgz", + "integrity": "sha512-D3K2ID0zew/+CKpwxnUTTh/N46yU4IK8bFWV9Htz+g1vFhgUF9UnDOQCmqpJbdP7z+9U1F8rk3fzf9OmP2Fm2w==", + "license": "MIT", + "dependencies": { + "@lexical/html": "0.42.0", + "@lexical/list": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/code": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/code/-/code-0.42.0.tgz", + "integrity": "sha512-KMu1nWae9pHvA9nl6dlJacbt3QBBNemgalmLJcZ5QhdGEQA1cVIU4gBPJ5TJqgY9XF7WZgj5JvDIPxjrZmf+XQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "@lexical/code-core": "0.42.0", + "@lexical/code-prism": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/code-core": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/code-core/-/code-core-0.42.0.tgz", + "integrity": "sha512-vrZTUPWDJkHjAAvuV2+Qte4vYE80s7hIO7wxipiJmWojGx6lcmQjO+UqJ8AIrqI4Wjy8kXrK74kisApWmwxuCw==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/code-prism": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/code-prism/-/code-prism-0.42.0.tgz", + "integrity": "sha512-KgngkUtgcgC8ocBnfGyN71CC3EnP5PMFAmH1KcGp/+jSgl11nRpCjwYYIoUHm6AB7jKJ8dLbd/UUmShARjUnGA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@lexical/code-core": "0.42.0", + "lexical": "0.42.0", + "prismjs": "^1.30.0" + } + }, + "node_modules/@lexical/devtools-core": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/devtools-core/-/devtools-core-0.42.0.tgz", + "integrity": "sha512-8nP8eE9i8JImgSrvInkWFfMCmXVKp3w3VaOvbJysdlK/Zal6xd8EWJEi6elj0mUW5T/oycfipPs2Sfl7Z+n14A==", + "license": "MIT", + "dependencies": { + "@lexical/html": "0.42.0", + "@lexical/link": "0.42.0", + "@lexical/mark": "0.42.0", + "@lexical/table": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + }, + "peerDependencies": { + "react": ">=17.x", + "react-dom": ">=17.x" + } + }, + "node_modules/@lexical/dragon": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/dragon/-/dragon-0.42.0.tgz", + "integrity": "sha512-/TQzP+7PLJMqq9+MlgQWiJsxS9GOOa8Gp0svCD8vNIOciYmXfd28TR1Go+ZnBWwr7k/2W++3XUYVQU2KUcQsDQ==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/extension": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/extension/-/extension-0.42.0.tgz", + "integrity": "sha512-rkZq/h8d1BenKRqU4t/zQUVfY/RinMX1Tz7t+Ee3ss0sk+kzP4W+URXNAxpn7r39Vn6wrFBqmCziah3dLAIqPw==", + "license": "MIT", + "dependencies": { + "@lexical/utils": "0.42.0", + "@preact/signals-core": "^1.11.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/hashtag": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/hashtag/-/hashtag-0.42.0.tgz", + "integrity": "sha512-WOg5nFOfhabNBXzEIutdWDj+TUHtJEezj6w8jyYDGqZ31gu0cgrXSeV8UIynz/1oj+rpzEeEB7P6ODnwgjt7qA==", + "license": "MIT", + "dependencies": { + "@lexical/text": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/history": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/history/-/history-0.42.0.tgz", + "integrity": "sha512-YfCZ1ICUt6BCg2ncJWFMuS4yftnB7FEHFRf3qqTSTf6oGZ4IZfzabMNEy47xybUuf7FXBbdaCKJrc/zOM+wGxw==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/html": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/html/-/html-0.42.0.tgz", + "integrity": "sha512-KgBUDLXehufCsXW3w0XsuoI2xecIhouOishnaNOH4zIA7dAtnNAfdPN/kWrWs0s83gz44OrnqccP+Bprw3UDEQ==", + "license": "MIT", + "dependencies": { + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/link": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/link/-/link-0.42.0.tgz", + "integrity": "sha512-cdeM/+f+kn7aGwW/3FIi6USjl1gBNdEEwg0/ZS+KlYcsy8gxx2e4cyVjsomBu/WU17Qxa0NC0paSr7qEJ/1Fig==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/list": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/list/-/list-0.42.0.tgz", + "integrity": "sha512-TIezILnmIVuvfqEEbcMnsT4xQRlswI6ysHISqsvKL6l5EBhs1gqmNYjHa/Yrfzaq5y52TM1PAtxbFts+G7N6kg==", + "license": "MIT", + "dependencies": { + "@lexical/extension": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/mark": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/mark/-/mark-0.42.0.tgz", + "integrity": "sha512-H1aGjbMEcL4B8GT7bm/ePHm7j3Wema+wIRNPmxMtXGMz5gpVN3gZlvg2UcUHHJb00SrBA95OUVT5I2nu/KP06w==", + "license": "MIT", + "dependencies": { + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/markdown": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/markdown/-/markdown-0.42.0.tgz", + "integrity": "sha512-+mOxgBiumlgVX8Acna+9HjJfSOw1jywufGcAQq3/8S11wZ4gE0u13AaR8LMmU8ydVeOQg09y8PNzGNQ/avZJbg==", + "license": "MIT", + "dependencies": { + "@lexical/code-core": "0.42.0", + "@lexical/link": "0.42.0", + "@lexical/list": "0.42.0", + "@lexical/rich-text": "0.42.0", + "@lexical/text": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/offset": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/offset/-/offset-0.42.0.tgz", + "integrity": "sha512-V+4af1KmTOnBZrR+kU3e6eD33W/g3QqMPPp3cpFwyXk/dKRc4K8HfyDsSDrjop1mPd9pl3lKSiEmX6uQG8K9XQ==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/overflow": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/overflow/-/overflow-0.42.0.tgz", + "integrity": "sha512-wlrHaM27rODJP5m+CTgfZGLg3qWlQ0ptGodcqoGdq6HSbV8nGFY6TvcLMaMtYQ1lm4v9G7Xe9LwjooR6xS3Gug==", + "license": "MIT", + "dependencies": { + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/plain-text": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/plain-text/-/plain-text-0.42.0.tgz", + "integrity": "sha512-YWvBwIxLltrIaZDcv0rK4s44P6Yt17yhOb0E+g3+tjF8GGPrrocox+Pglu0m2RHR+G7zULN3isolmWIm/HhWiw==", + "license": "MIT", + "dependencies": { + "@lexical/clipboard": "0.42.0", + "@lexical/dragon": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", + "lexical": "0.42.0" + } + }, + "node_modules/@lexical/react": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@lexical/react/-/react-0.42.0.tgz", + "integrity": "sha512-ujWJXhvlFVVTpwDcnSgEYWRuqUbreZaMB+4bjIDT5r7hkAplUHQndlkeuFHKFiJBasSAreleV7zhXrLL5xa9eA==", + "license": "MIT", + "dependencies": { + "@floating-ui/react": "^0.27.16", + "@lexical/devtools-core": "0.42.0", + "@lexical/dragon": "0.42.0", + "@lexical/extension": "0.42.0", + "@lexical/hashtag": "0.42.0", + "@lexical/history": "0.42.0", + "@lexical/link": "0.42.0", + "@lexical/list": "0.42.0", + "@lexical/mark": "0.42.0", + "@lexical/markdown": "0.42.0", + "@lexical/overflow": "0.42.0", + "@lexical/plain-text": "0.42.0", + "@lexical/rich-text": "0.42.0", + "@lexical/table": "0.42.0", + "@lexical/text": "0.42.0", + "@lexical/utils": "0.42.0", + "@lexical/yjs": "0.42.0", + "lexical": "0.42.0", + "react-error-boundary": "^6.0.0" + }, + "peerDependencies": { + "react": ">=17.x", + "react-dom": ">=17.x" + } + }, + "node_modules/@lexical/react/node_modules/@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@lexical/react/node_modules/@floating-ui/react": { + "version": "0.27.19", + "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.19.tgz", + "integrity": "sha512-31B8h5mm8YxotlE7/AU/PhNAl8eWxAmjL/v2QOxroDNkTFLk3Uu82u63N3b6TXa4EGJeeZLVcd/9AlNlVqzeog==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "tabbable": "^6.0.0" + }, + "peerDependencies": { + "react": ">=17.0.0", + "react-dom": ">=17.0.0" + } + }, + "node_modules/@lexical/react/node_modules/@floating-ui/react-dom": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz", + "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==", "license": "MIT", - "peer": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" + "@floating-ui/dom": "^1.7.6" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" } }, - "node_modules/@lexical/code-core": { + "node_modules/@lexical/rich-text": { "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/code-core/-/code-core-0.42.0.tgz", - "integrity": "sha512-vrZTUPWDJkHjAAvuV2+Qte4vYE80s7hIO7wxipiJmWojGx6lcmQjO+UqJ8AIrqI4Wjy8kXrK74kisApWmwxuCw==", + "resolved": "https://registry.npmjs.org/@lexical/rich-text/-/rich-text-0.42.0.tgz", + "integrity": "sha512-v4YgiM3oK3FZcRrfB+LetvLbQ5aee9MRO9tHf0EFweXg19XnSjHV0cfPAW7TyPxRELzB69+K0Q3AybRlTMjG4Q==", "license": "MIT", "dependencies": { + "@lexical/clipboard": "0.42.0", + "@lexical/dragon": "0.42.0", + "@lexical/selection": "0.42.0", + "@lexical/utils": "0.42.0", "lexical": "0.42.0" } }, - "node_modules/@lexical/code-core/node_modules/lexical": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", - "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", - "license": "MIT" - }, - "node_modules/@lexical/code-prism": { + "node_modules/@lexical/selection": { "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/code-prism/-/code-prism-0.42.0.tgz", - "integrity": "sha512-KgngkUtgcgC8ocBnfGyN71CC3EnP5PMFAmH1KcGp/+jSgl11nRpCjwYYIoUHm6AB7jKJ8dLbd/UUmShARjUnGA==", + "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.42.0.tgz", + "integrity": "sha512-iWTjLA5BSEuUnvWe9Xwu9FSdZFl3Yi0NqalabXKI+7KgCIlIVXE74y4NvWPUSLkSCB/Z1RPKiHmZqZ1vyu/yGQ==", "license": "MIT", - "peer": true, "dependencies": { - "@lexical/code-core": "0.42.0", - "lexical": "0.42.0", - "prismjs": "^1.30.0" + "lexical": "0.42.0" } }, - "node_modules/@lexical/code-prism/node_modules/lexical": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", - "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", - "license": "MIT", - "peer": true - }, - "node_modules/@lexical/extension": { + "node_modules/@lexical/table": { "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/extension/-/extension-0.42.0.tgz", - "integrity": "sha512-rkZq/h8d1BenKRqU4t/zQUVfY/RinMX1Tz7t+Ee3ss0sk+kzP4W+URXNAxpn7r39Vn6wrFBqmCziah3dLAIqPw==", + "resolved": "https://registry.npmjs.org/@lexical/table/-/table-0.42.0.tgz", + "integrity": "sha512-GKiZyjQsHDXRckq5VBrOowyvds51WoVRECfDgcl8pqLMnKyEdCa58E7fkSJrr5LS80Scod+Cjn6SBRzOcdsrKg==", "license": "MIT", "dependencies": { + "@lexical/clipboard": "0.42.0", + "@lexical/extension": "0.42.0", "@lexical/utils": "0.42.0", - "@preact/signals-core": "^1.11.0", "lexical": "0.42.0" } }, - "node_modules/@lexical/extension/node_modules/@lexical/selection": { + "node_modules/@lexical/text": { "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.42.0.tgz", - "integrity": "sha512-iWTjLA5BSEuUnvWe9Xwu9FSdZFl3Yi0NqalabXKI+7KgCIlIVXE74y4NvWPUSLkSCB/Z1RPKiHmZqZ1vyu/yGQ==", + "resolved": "https://registry.npmjs.org/@lexical/text/-/text-0.42.0.tgz", + "integrity": "sha512-hT3EYVtBmONXyXe4TFVgtFcG1tf6JhLEuAf95+cOjgFGFSgvkZ/64BPbKLNTj2/9n6cU7EGPUNNwVigCSECJ2g==", "license": "MIT", "dependencies": { "lexical": "0.42.0" } }, - "node_modules/@lexical/extension/node_modules/@lexical/utils": { + "node_modules/@lexical/utils": { "version": "0.42.0", "resolved": "https://registry.npmjs.org/@lexical/utils/-/utils-0.42.0.tgz", "integrity": "sha512-wGNdCW3QWEyVdFiSTLZfFPtiASPyYLcekIiYYZmoRVxVimT/jY+QPfnkO4JYgkO7Z70g/dsg9OhqyQSChQfvkQ==", @@ -1142,11 +1901,19 @@ "lexical": "0.42.0" } }, - "node_modules/@lexical/extension/node_modules/lexical": { + "node_modules/@lexical/yjs": { "version": "0.42.0", - "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", - "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", - "license": "MIT" + "resolved": "https://registry.npmjs.org/@lexical/yjs/-/yjs-0.42.0.tgz", + "integrity": "sha512-DplzWnYhfFceGPR+UyDFpZdB287wF/vNOHFuDsBF/nGDdTezvr0Gf60opzyBEF3oXym6p3xTmGygxvO97LZ+vw==", + "license": "MIT", + "dependencies": { + "@lexical/offset": "0.42.0", + "@lexical/selection": "0.42.0", + "lexical": "0.42.0" + }, + "peerDependencies": { + "yjs": ">=13.5.22" + } }, "node_modules/@mui/core-downloads-tracker": { "version": "7.3.10", @@ -1159,13 +1926,12 @@ } }, "node_modules/@mui/icons-material": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.0.2.tgz", - "integrity": "sha512-Bo57PFLOqXOqPNrXjd8AhzH5s6TCsNUQbvnQ0VKZ8D+lIlteqKnrk/O1luMJUc/BXONK7BfIdTdc7qOnXYbMdw==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.3.10.tgz", + "integrity": "sha512-Au0ma4NSKGKNiimukj8UT/W1x2Qx6Qwn2RvFGykiSqVLYBNlIOPbjnIMvrwLGLu89EEpTVdu/ys/OduZR+tWqw==", "license": "MIT", - "peer": true, "dependencies": { - "@babel/runtime": "^7.27.0" + "@babel/runtime": "^7.28.6" }, "engines": { "node": ">=14.0.0" @@ -1175,7 +1941,7 @@ "url": "https://opencollective.com/mui-org" }, "peerDependencies": { - "@mui/material": "^7.0.2", + "@mui/material": "^7.3.10", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, @@ -1186,23 +1952,22 @@ } }, "node_modules/@mui/material": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.0.2.tgz", - "integrity": "sha512-rjJlJ13+3LdLfobRplkXbjIFEIkn6LgpetgU/Cs3Xd8qINCCQK9qXQIjjQ6P0FXFTPFzEVMj0VgBR1mN+FhOcA==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.10.tgz", + "integrity": "sha512-cHvGOk2ZEfbQt3LnGe0ZKd/ETs9gsUpkW66DCO+GSjMZhpdKU4XsuIr7zJ/B/2XaN8ihxuzHfYAR4zPtCN4RYg==", "license": "MIT", - "peer": true, "dependencies": { - "@babel/runtime": "^7.27.0", - "@mui/core-downloads-tracker": "^7.0.2", - "@mui/system": "^7.0.2", - "@mui/types": "^7.4.1", - "@mui/utils": "^7.0.2", + "@babel/runtime": "^7.28.6", + "@mui/core-downloads-tracker": "^7.3.10", + "@mui/system": "^7.3.10", + "@mui/types": "^7.4.12", + "@mui/utils": "^7.3.10", "@popperjs/core": "^2.11.8", "@types/react-transition-group": "^4.4.12", "clsx": "^2.1.1", - "csstype": "^3.1.3", + "csstype": "^3.2.3", "prop-types": "^15.8.1", - "react-is": "^19.1.0", + "react-is": "^19.2.3", "react-transition-group": "^4.4.5" }, "engines": { @@ -1215,7 +1980,7 @@ "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", - "@mui/material-pigment-css": "^7.0.2", + "@mui/material-pigment-css": "^7.3.10", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" @@ -1236,14 +2001,13 @@ } }, "node_modules/@mui/private-theming": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.9.tgz", - "integrity": "sha512-ErIyRQvsiQEq7Yvcvfw9UDHngaqjMy9P3JDPnRAaKG5qhpl2C4tX/W1S4zJvpu+feihmZJStjIyvnv6KDbIrlw==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.10.tgz", + "integrity": "sha512-j3EZN+zOctxUISvJSmsEPo5o2F8zse4l5vRkBY+ps6UtnL6J7o14kUaI4w7gwo73id9e3cDNMVQK/9BVaMHVBw==", "license": "MIT", - "peer": true, "dependencies": { "@babel/runtime": "^7.28.6", - "@mui/utils": "^7.3.9", + "@mui/utils": "^7.3.10", "prop-types": "^15.8.1" }, "engines": { @@ -1264,11 +2028,10 @@ } }, "node_modules/@mui/styled-engine": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.9.tgz", - "integrity": "sha512-JqujWt5bX4okjUPGpVof/7pvgClqh7HvIbsIBIOOlCh2u3wG/Bwp4+E1bc1dXSwkrkp9WUAoNdI5HEC+5HKvMw==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.10.tgz", + "integrity": "sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng==", "license": "MIT", - "peer": true, "dependencies": { "@babel/runtime": "^7.28.6", "@emotion/cache": "^11.14.0", @@ -1299,17 +2062,16 @@ } }, "node_modules/@mui/system": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.9.tgz", - "integrity": "sha512-aL1q9am8XpRrSabv9qWf5RHhJICJql34wnrc1nz0MuOglPRYF/liN+c8VqZdTvUn9qg+ZjRVbKf4sJVFfIDtmg==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.10.tgz", + "integrity": "sha512-/sfPpdpJaQn7BSF+avjIdHSYmxHp0UOBYNxSG9QGKfMOD6sLANCpRPCnanq1Pe0lFf0NHkO2iUk0TNzdWC1USQ==", "license": "MIT", - "peer": true, "dependencies": { "@babel/runtime": "^7.28.6", - "@mui/private-theming": "^7.3.9", - "@mui/styled-engine": "^7.3.9", + "@mui/private-theming": "^7.3.10", + "@mui/styled-engine": "^7.3.10", "@mui/types": "^7.4.12", - "@mui/utils": "^7.3.9", + "@mui/utils": "^7.3.10", "clsx": "^2.1.1", "csstype": "^3.2.3", "prop-types": "^15.8.1" @@ -1357,9 +2119,9 @@ } }, "node_modules/@mui/utils": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.9.tgz", - "integrity": "sha512-U6SdZaGbfb65fqTsH3V5oJdFj9uYwyLE2WVuNvmbggTSDBb8QHrFsqY8BN3taK9t3yJ8/BPHD/kNvLNyjwM7Yw==", + "version": "7.3.10", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.10.tgz", + "integrity": "sha512-7y2eIfy0h7JPz+Yy4pS+wgV68d46PuuxDqKBN4Q8VlPQSsCAGwroMCV6xWyc7g9dvEp8ZNFsknc59GHWO+r6Ow==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.28.6", @@ -1553,6 +2315,25 @@ "@emnapi/runtime": "^1.7.1" } }, + "node_modules/@ObeoNetwork/gantt-task-react": { + "version": "0.6.4", + "resolved": "https://npm.pkg.github.com/download/@ObeoNetwork/gantt-task-react/0.6.4/a7808e959159e0a2221058aa200ec9f8c2ca2b58", + "integrity": "sha512-P4DnKTdToWNxN+8r+n34wyqAOvhcx6RzXnI9naMkaOf2Y4BkmQaDgKvMQ+0E8igNH+1iFwThomryGfzr5NLkrg==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "1.1.1", + "@floating-ui/react": "0.19.0", + "date-fns": "2.29.3" + }, + "peerDependencies": { + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@types/react": "18.3.3", + "@types/react-dom": "18.3.0", + "react": "18.3.1", + "react-dom": "18.3.1" + } + }, "node_modules/@ObeoNetwork/pepper": { "resolved": "pepper-web", "link": true @@ -5186,6 +5967,12 @@ "integrity": "sha512-Q8206k8pTY7krW32cdmPsP+DqqLgWx/hYPSj9/+7SYqSqz7UuwPbfSe07lQtvuuaVyiSJveXk0E5RydOuWwsEg==", "license": "MIT" }, + "node_modules/lexical": { + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", + "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", + "license": "MIT" + }, "node_modules/lib0": { "version": "0.2.117", "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.117.tgz", @@ -5989,6 +6776,15 @@ "node": ">=6" } }, + "node_modules/react-error-boundary": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-6.1.1.tgz", + "integrity": "sha512-BrYwPOdXi5mqkk5lw+Uvt0ThHx32rCt3BkukS4X23A2AIWDPSGX6iaWTc0y9TU/mHDA/6qOSGel+B2ERkOvD1w==", + "license": "MIT", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0" + } + }, "node_modules/react-grid-layout": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/react-grid-layout/-/react-grid-layout-1.4.4.tgz", @@ -8029,357 +8825,135 @@ "react-resizable": "3.0.5", "react-resizable-panels": "3.0.2", "react-router-dom": "6.26.0", - "react-window": "2.2.2", - "svg-path-parser": "1.1.0", - "tss-react": "4.9.16" - } - }, - "pepper-web/node_modules/@esbuild/aix-ppc64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", - "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "peer": true, - "engines": { - "node": ">=18" - } - }, - "pepper-web/node_modules/@esbuild/android-arm": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", - "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "peer": true, - "engines": { - "node": ">=18" - } - }, - "pepper-web/node_modules/@esbuild/android-arm64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", - "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "peer": true, - "engines": { - "node": ">=18" - } - }, - "pepper-web/node_modules/@esbuild/android-x64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", - "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "peer": true, - "engines": { - "node": ">=18" - } - }, - "pepper-web/node_modules/@esbuild/darwin-arm64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", - "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "peer": true, - "engines": { - "node": ">=18" - } - }, - "pepper-web/node_modules/@esbuild/darwin-x64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", - "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "peer": true, - "engines": { - "node": ">=18" + "react-window": "2.2.2", + "svg-path-parser": "1.1.0", + "tss-react": "4.9.16" } }, - "pepper-web/node_modules/@esbuild/freebsd-arm64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", - "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-browser": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-browser", + "link": true }, - "pepper-web/node_modules/@esbuild/freebsd-x64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", - "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-charts": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-charts", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-arm": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", - "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-core": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-core", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-arm64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", - "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-datatree": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-datatree", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-ia32": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", - "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-deck": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-deck", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-loong64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", - "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-diagrams": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-diagrams", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-mips64el": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", - "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-formdescriptioneditors": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-ppc64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", - "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-forms": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-forms", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-riscv64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", - "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-gantt": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-gantt", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-s390x": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", - "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-impactanalysis": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "link": true }, - "pepper-web/node_modules/@esbuild/linux-x64": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", - "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">=18" - } + "pepper-web/node_modules/@eclipse-sirius/sirius-components-omnibox": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-omnibox", + "link": true }, - "pepper-web/node_modules/@esbuild/netbsd-arm64": { + "pepper-web/node_modules/@eclipse-sirius/sirius-components-palette": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-palette", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-portals": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-portals", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-selection": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-selection", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-tables": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-tables", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-trees": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-trees", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-validation": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-validation", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-widget-reference": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-reference", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-components-widget-table": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-components-widget-table", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-web-application": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-web-application", + "link": true + }, + "pepper-web/node_modules/@eclipse-sirius/sirius-web-view-fork": { + "resolved": "pepper-web/.yalc/@eclipse-sirius/sirius-web-view-fork", + "link": true + }, + "pepper-web/node_modules/@esbuild/aix-ppc64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", - "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", + "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", "cpu": [ - "arm64" + "ppc64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "netbsd" + "aix" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/netbsd-x64": { + "pepper-web/node_modules/@esbuild/android-arm": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", - "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", + "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", "cpu": [ - "x64" + "arm" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "netbsd" + "android" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/openbsd-arm64": { + "pepper-web/node_modules/@esbuild/android-arm64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", - "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", + "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", "cpu": [ "arm64" ], @@ -8387,17 +8961,17 @@ "license": "MIT", "optional": true, "os": [ - "openbsd" + "android" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/openbsd-x64": { + "pepper-web/node_modules/@esbuild/android-x64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", - "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", + "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", "cpu": [ "x64" ], @@ -8405,17 +8979,17 @@ "license": "MIT", "optional": true, "os": [ - "openbsd" + "android" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/openharmony-arm64": { + "pepper-web/node_modules/@esbuild/darwin-arm64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", - "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", + "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", "cpu": [ "arm64" ], @@ -8423,17 +8997,17 @@ "license": "MIT", "optional": true, "os": [ - "openharmony" + "darwin" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/sunos-x64": { + "pepper-web/node_modules/@esbuild/darwin-x64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", - "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", + "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", "cpu": [ "x64" ], @@ -8441,17 +9015,17 @@ "license": "MIT", "optional": true, "os": [ - "sunos" + "darwin" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/win32-arm64": { + "pepper-web/node_modules/@esbuild/freebsd-arm64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", - "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", + "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", "cpu": [ "arm64" ], @@ -8459,582 +9033,353 @@ "license": "MIT", "optional": true, "os": [ - "win32" + "freebsd" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/win32-ia32": { + "pepper-web/node_modules/@esbuild/freebsd-x64": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", - "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", + "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", "cpu": [ - "ia32" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" + "freebsd" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@esbuild/win32-x64": { + "pepper-web/node_modules/@esbuild/linux-arm": { "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", - "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", + "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", "cpu": [ - "x64" + "arm" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], "peer": true, "engines": { "node": ">=18" } }, - "pepper-web/node_modules/@lexical/clipboard": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/clipboard/-/clipboard-0.42.0.tgz", - "integrity": "sha512-D3K2ID0zew/+CKpwxnUTTh/N46yU4IK8bFWV9Htz+g1vFhgUF9UnDOQCmqpJbdP7z+9U1F8rk3fzf9OmP2Fm2w==", - "license": "MIT", - "dependencies": { - "@lexical/html": "0.42.0", - "@lexical/list": "0.42.0", - "@lexical/selection": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/code": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/code/-/code-0.42.0.tgz", - "integrity": "sha512-KMu1nWae9pHvA9nl6dlJacbt3QBBNemgalmLJcZ5QhdGEQA1cVIU4gBPJ5TJqgY9XF7WZgj5JvDIPxjrZmf+XQ==", - "license": "MIT", - "peer": true, - "dependencies": { - "@lexical/code-core": "0.42.0", - "@lexical/code-prism": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/dragon": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/dragon/-/dragon-0.42.0.tgz", - "integrity": "sha512-/TQzP+7PLJMqq9+MlgQWiJsxS9GOOa8Gp0svCD8vNIOciYmXfd28TR1Go+ZnBWwr7k/2W++3XUYVQU2KUcQsDQ==", - "license": "MIT", - "dependencies": { - "@lexical/extension": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/hashtag": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/hashtag/-/hashtag-0.42.0.tgz", - "integrity": "sha512-WOg5nFOfhabNBXzEIutdWDj+TUHtJEezj6w8jyYDGqZ31gu0cgrXSeV8UIynz/1oj+rpzEeEB7P6ODnwgjt7qA==", - "license": "MIT", - "dependencies": { - "@lexical/text": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/history": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/history/-/history-0.42.0.tgz", - "integrity": "sha512-YfCZ1ICUt6BCg2ncJWFMuS4yftnB7FEHFRf3qqTSTf6oGZ4IZfzabMNEy47xybUuf7FXBbdaCKJrc/zOM+wGxw==", - "license": "MIT", - "dependencies": { - "@lexical/extension": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/html": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/html/-/html-0.42.0.tgz", - "integrity": "sha512-KgBUDLXehufCsXW3w0XsuoI2xecIhouOishnaNOH4zIA7dAtnNAfdPN/kWrWs0s83gz44OrnqccP+Bprw3UDEQ==", - "license": "MIT", - "dependencies": { - "@lexical/selection": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/link": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/link/-/link-0.42.0.tgz", - "integrity": "sha512-cdeM/+f+kn7aGwW/3FIi6USjl1gBNdEEwg0/ZS+KlYcsy8gxx2e4cyVjsomBu/WU17Qxa0NC0paSr7qEJ/1Fig==", - "license": "MIT", - "dependencies": { - "@lexical/extension": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/list": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/list/-/list-0.42.0.tgz", - "integrity": "sha512-TIezILnmIVuvfqEEbcMnsT4xQRlswI6ysHISqsvKL6l5EBhs1gqmNYjHa/Yrfzaq5y52TM1PAtxbFts+G7N6kg==", - "license": "MIT", - "dependencies": { - "@lexical/extension": "0.42.0", - "@lexical/selection": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/mark": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/mark/-/mark-0.42.0.tgz", - "integrity": "sha512-H1aGjbMEcL4B8GT7bm/ePHm7j3Wema+wIRNPmxMtXGMz5gpVN3gZlvg2UcUHHJb00SrBA95OUVT5I2nu/KP06w==", - "license": "MIT", - "dependencies": { - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/markdown": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/markdown/-/markdown-0.42.0.tgz", - "integrity": "sha512-+mOxgBiumlgVX8Acna+9HjJfSOw1jywufGcAQq3/8S11wZ4gE0u13AaR8LMmU8ydVeOQg09y8PNzGNQ/avZJbg==", - "license": "MIT", - "dependencies": { - "@lexical/code-core": "0.42.0", - "@lexical/link": "0.42.0", - "@lexical/list": "0.42.0", - "@lexical/rich-text": "0.42.0", - "@lexical/text": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/offset": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/offset/-/offset-0.42.0.tgz", - "integrity": "sha512-V+4af1KmTOnBZrR+kU3e6eD33W/g3QqMPPp3cpFwyXk/dKRc4K8HfyDsSDrjop1mPd9pl3lKSiEmX6uQG8K9XQ==", - "license": "MIT", - "dependencies": { - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/overflow": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/overflow/-/overflow-0.42.0.tgz", - "integrity": "sha512-wlrHaM27rODJP5m+CTgfZGLg3qWlQ0ptGodcqoGdq6HSbV8nGFY6TvcLMaMtYQ1lm4v9G7Xe9LwjooR6xS3Gug==", - "license": "MIT", - "dependencies": { - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/plain-text": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/plain-text/-/plain-text-0.42.0.tgz", - "integrity": "sha512-YWvBwIxLltrIaZDcv0rK4s44P6Yt17yhOb0E+g3+tjF8GGPrrocox+Pglu0m2RHR+G7zULN3isolmWIm/HhWiw==", - "license": "MIT", - "dependencies": { - "@lexical/clipboard": "0.42.0", - "@lexical/dragon": "0.42.0", - "@lexical/selection": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - } - }, - "pepper-web/node_modules/@lexical/react": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/react/-/react-0.42.0.tgz", - "integrity": "sha512-ujWJXhvlFVVTpwDcnSgEYWRuqUbreZaMB+4bjIDT5r7hkAplUHQndlkeuFHKFiJBasSAreleV7zhXrLL5xa9eA==", - "license": "MIT", - "dependencies": { - "@floating-ui/react": "^0.27.16", - "@lexical/devtools-core": "0.42.0", - "@lexical/dragon": "0.42.0", - "@lexical/extension": "0.42.0", - "@lexical/hashtag": "0.42.0", - "@lexical/history": "0.42.0", - "@lexical/link": "0.42.0", - "@lexical/list": "0.42.0", - "@lexical/mark": "0.42.0", - "@lexical/markdown": "0.42.0", - "@lexical/overflow": "0.42.0", - "@lexical/plain-text": "0.42.0", - "@lexical/rich-text": "0.42.0", - "@lexical/table": "0.42.0", - "@lexical/text": "0.42.0", - "@lexical/utils": "0.42.0", - "@lexical/yjs": "0.42.0", - "lexical": "0.42.0", - "react-error-boundary": "^6.0.0" - }, - "peerDependencies": { - "react": ">=17.x", - "react-dom": ">=17.x" - } - }, - "pepper-web/node_modules/@lexical/react/node_modules/@floating-ui/dom": { - "version": "1.7.6", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", - "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", - "license": "MIT", - "dependencies": { - "@floating-ui/core": "^1.7.5", - "@floating-ui/utils": "^0.2.11" - } - }, - "pepper-web/node_modules/@lexical/react/node_modules/@floating-ui/react": { - "version": "0.27.19", - "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.19.tgz", - "integrity": "sha512-31B8h5mm8YxotlE7/AU/PhNAl8eWxAmjL/v2QOxroDNkTFLk3Uu82u63N3b6TXa4EGJeeZLVcd/9AlNlVqzeog==", - "license": "MIT", - "dependencies": { - "@floating-ui/react-dom": "^2.1.8", - "@floating-ui/utils": "^0.2.11", - "tabbable": "^6.0.0" - }, - "peerDependencies": { - "react": ">=17.0.0", - "react-dom": ">=17.0.0" + "pepper-web/node_modules/@esbuild/linux-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", + "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/react/node_modules/@floating-ui/react/node_modules/@floating-ui/react-dom": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz", - "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==", + "pepper-web/node_modules/@esbuild/linux-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", + "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", + "cpu": [ + "ia32" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@floating-ui/dom": "^1.7.6" - }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/react/node_modules/@lexical/devtools-core": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/devtools-core/-/devtools-core-0.42.0.tgz", - "integrity": "sha512-8nP8eE9i8JImgSrvInkWFfMCmXVKp3w3VaOvbJysdlK/Zal6xd8EWJEi6elj0mUW5T/oycfipPs2Sfl7Z+n14A==", + "pepper-web/node_modules/@esbuild/linux-loong64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", + "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", + "cpu": [ + "loong64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@lexical/html": "0.42.0", - "@lexical/link": "0.42.0", - "@lexical/mark": "0.42.0", - "@lexical/table": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" - }, - "peerDependencies": { - "react": ">=17.x", - "react-dom": ">=17.x" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/react/node_modules/react-error-boundary": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-6.1.1.tgz", - "integrity": "sha512-BrYwPOdXi5mqkk5lw+Uvt0ThHx32rCt3BkukS4X23A2AIWDPSGX6iaWTc0y9TU/mHDA/6qOSGel+B2ERkOvD1w==", + "pepper-web/node_modules/@esbuild/linux-mips64el": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", + "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", + "cpu": [ + "mips64el" + ], + "dev": true, "license": "MIT", - "peerDependencies": { - "react": "^18.0.0 || ^19.0.0" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/rich-text": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/rich-text/-/rich-text-0.42.0.tgz", - "integrity": "sha512-v4YgiM3oK3FZcRrfB+LetvLbQ5aee9MRO9tHf0EFweXg19XnSjHV0cfPAW7TyPxRELzB69+K0Q3AybRlTMjG4Q==", + "pepper-web/node_modules/@esbuild/linux-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", + "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", + "cpu": [ + "ppc64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@lexical/clipboard": "0.42.0", - "@lexical/dragon": "0.42.0", - "@lexical/selection": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/selection": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.42.0.tgz", - "integrity": "sha512-iWTjLA5BSEuUnvWe9Xwu9FSdZFl3Yi0NqalabXKI+7KgCIlIVXE74y4NvWPUSLkSCB/Z1RPKiHmZqZ1vyu/yGQ==", + "pepper-web/node_modules/@esbuild/linux-riscv64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", + "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", + "cpu": [ + "riscv64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "lexical": "0.42.0" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/table": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/table/-/table-0.42.0.tgz", - "integrity": "sha512-GKiZyjQsHDXRckq5VBrOowyvds51WoVRECfDgcl8pqLMnKyEdCa58E7fkSJrr5LS80Scod+Cjn6SBRzOcdsrKg==", + "pepper-web/node_modules/@esbuild/linux-s390x": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", + "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", + "cpu": [ + "s390x" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@lexical/clipboard": "0.42.0", - "@lexical/extension": "0.42.0", - "@lexical/utils": "0.42.0", - "lexical": "0.42.0" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/text": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/text/-/text-0.42.0.tgz", - "integrity": "sha512-hT3EYVtBmONXyXe4TFVgtFcG1tf6JhLEuAf95+cOjgFGFSgvkZ/64BPbKLNTj2/9n6cU7EGPUNNwVigCSECJ2g==", + "pepper-web/node_modules/@esbuild/linux-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", + "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "lexical": "0.42.0" + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/utils": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/utils/-/utils-0.42.0.tgz", - "integrity": "sha512-wGNdCW3QWEyVdFiSTLZfFPtiASPyYLcekIiYYZmoRVxVimT/jY+QPfnkO4JYgkO7Z70g/dsg9OhqyQSChQfvkQ==", + "pepper-web/node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", + "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@lexical/selection": "0.42.0", - "lexical": "0.42.0" + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@lexical/yjs": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@lexical/yjs/-/yjs-0.42.0.tgz", - "integrity": "sha512-DplzWnYhfFceGPR+UyDFpZdB287wF/vNOHFuDsBF/nGDdTezvr0Gf60opzyBEF3oXym6p3xTmGygxvO97LZ+vw==", + "pepper-web/node_modules/@esbuild/netbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", + "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@lexical/offset": "0.42.0", - "@lexical/selection": "0.42.0", - "lexical": "0.42.0" - }, - "peerDependencies": { - "yjs": ">=13.5.22" + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" } }, - "pepper-web/node_modules/@mui/icons-material": { - "version": "7.3.10", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-7.3.10.tgz", - "integrity": "sha512-Au0ma4NSKGKNiimukj8UT/W1x2Qx6Qwn2RvFGykiSqVLYBNlIOPbjnIMvrwLGLu89EEpTVdu/ys/OduZR+tWqw==", + "pepper-web/node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", + "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.6" - }, + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, - "peerDependencies": { - "@mui/material": "^7.3.10", - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } + "node": ">=18" } }, - "pepper-web/node_modules/@mui/material": { - "version": "7.3.10", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.10.tgz", - "integrity": "sha512-cHvGOk2ZEfbQt3LnGe0ZKd/ETs9gsUpkW66DCO+GSjMZhpdKU4XsuIr7zJ/B/2XaN8ihxuzHfYAR4zPtCN4RYg==", + "pepper-web/node_modules/@esbuild/openbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", + "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.6", - "@mui/core-downloads-tracker": "^7.3.10", - "@mui/system": "^7.3.10", - "@mui/types": "^7.4.12", - "@mui/utils": "^7.3.10", - "@popperjs/core": "^2.11.8", - "@types/react-transition-group": "^4.4.12", - "clsx": "^2.1.1", - "csstype": "^3.2.3", - "prop-types": "^15.8.1", - "react-is": "^19.2.3", - "react-transition-group": "^4.4.5" - }, + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, - "peerDependencies": { - "@emotion/react": "^11.5.0", - "@emotion/styled": "^11.3.0", - "@mui/material-pigment-css": "^7.3.10", - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - }, - "@mui/material-pigment-css": { - "optional": true - }, - "@types/react": { - "optional": true - } + "node": ">=18" } }, - "pepper-web/node_modules/@mui/material/node_modules/@mui/system": { - "version": "7.3.10", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.10.tgz", - "integrity": "sha512-/sfPpdpJaQn7BSF+avjIdHSYmxHp0UOBYNxSG9QGKfMOD6sLANCpRPCnanq1Pe0lFf0NHkO2iUk0TNzdWC1USQ==", + "pepper-web/node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", + "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.6", - "@mui/private-theming": "^7.3.10", - "@mui/styled-engine": "^7.3.10", - "@mui/types": "^7.4.12", - "@mui/utils": "^7.3.10", - "clsx": "^2.1.1", - "csstype": "^3.2.3", - "prop-types": "^15.8.1" - }, + "optional": true, + "os": [ + "openharmony" + ], + "peer": true, "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, - "peerDependencies": { - "@emotion/react": "^11.5.0", - "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - }, - "@types/react": { - "optional": true - } + "node": ">=18" } }, - "pepper-web/node_modules/@mui/material/node_modules/@mui/system/node_modules/@mui/private-theming": { - "version": "7.3.10", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.10.tgz", - "integrity": "sha512-j3EZN+zOctxUISvJSmsEPo5o2F8zse4l5vRkBY+ps6UtnL6J7o14kUaI4w7gwo73id9e3cDNMVQK/9BVaMHVBw==", + "pepper-web/node_modules/@esbuild/sunos-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", + "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.6", - "@mui/utils": "^7.3.10", - "prop-types": "^15.8.1" - }, + "optional": true, + "os": [ + "sunos" + ], + "peer": true, "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, - "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } + "node": ">=18" } }, - "pepper-web/node_modules/@mui/material/node_modules/@mui/system/node_modules/@mui/styled-engine": { - "version": "7.3.10", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.10.tgz", - "integrity": "sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng==", + "pepper-web/node_modules/@esbuild/win32-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", + "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.6", - "@emotion/cache": "^11.14.0", - "@emotion/serialize": "^1.3.3", - "@emotion/sheet": "^1.4.0", - "csstype": "^3.2.3", - "prop-types": "^15.8.1" - }, + "optional": true, + "os": [ + "win32" + ], + "peer": true, "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, - "peerDependencies": { - "@emotion/react": "^11.4.1", - "@emotion/styled": "^11.3.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - } + "node": ">=18" } }, - "pepper-web/node_modules/@mui/material/node_modules/@mui/utils": { - "version": "7.3.10", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.10.tgz", - "integrity": "sha512-7y2eIfy0h7JPz+Yy4pS+wgV68d46PuuxDqKBN4Q8VlPQSsCAGwroMCV6xWyc7g9dvEp8ZNFsknc59GHWO+r6Ow==", + "pepper-web/node_modules/@esbuild/win32-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", + "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", + "cpu": [ + "ia32" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.6", - "@mui/types": "^7.4.12", - "@types/prop-types": "^15.7.15", - "clsx": "^2.1.1", - "prop-types": "^15.8.1", - "react-is": "^19.2.3" - }, + "optional": true, + "os": [ + "win32" + ], + "peer": true, "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, - "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } + "node": ">=18" } }, - "pepper-web/node_modules/@ObeoNetwork/gantt-task-react": { - "version": "0.6.4", - "resolved": "https://npm.pkg.github.com/download/@ObeoNetwork/gantt-task-react/0.6.4/a7808e959159e0a2221058aa200ec9f8c2ca2b58", - "integrity": "sha512-P4DnKTdToWNxN+8r+n34wyqAOvhcx6RzXnI9naMkaOf2Y4BkmQaDgKvMQ+0E8igNH+1iFwThomryGfzr5NLkrg==", + "pepper-web/node_modules/@esbuild/win32-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", + "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "@floating-ui/dom": "1.1.1", - "@floating-ui/react": "0.19.0", - "date-fns": "2.29.3" - }, - "peerDependencies": { - "@mui/icons-material": "7.3.10", - "@mui/material": "7.3.10", - "@types/react": "18.3.3", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1" + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" } }, "pepper-web/node_modules/@rolldown/pluginutils": { @@ -9114,12 +9459,6 @@ "@esbuild/win32-x64": "0.27.7" } }, - "pepper-web/node_modules/lexical": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.42.0.tgz", - "integrity": "sha512-GY9Lg3YEIU7nSFaiUlLspZ1fm4NfIcfABaxy9nT+fRVDkX7iV005T5Swil83gXUmxFUNKGal3j+hUxHOUDr+Aw==", - "license": "MIT" - }, "pepper-web/node_modules/postcss": { "version": "8.5.12", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.12.tgz", diff --git a/frontend/package.json b/frontend/package.json index 5df38c9..f501e41 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -26,5 +26,28 @@ }, "devDependencies": { "turbo": "2.4.4" + }, + "dependencies": { + "@eclipse-sirius/sirius-components-browser": "file:.yalc/@eclipse-sirius/sirius-components-browser", + "@eclipse-sirius/sirius-components-charts": "file:.yalc/@eclipse-sirius/sirius-components-charts", + "@eclipse-sirius/sirius-components-core": "file:.yalc/@eclipse-sirius/sirius-components-core", + "@eclipse-sirius/sirius-components-datatree": "file:.yalc/@eclipse-sirius/sirius-components-datatree", + "@eclipse-sirius/sirius-components-deck": "file:.yalc/@eclipse-sirius/sirius-components-deck", + "@eclipse-sirius/sirius-components-diagrams": "file:.yalc/@eclipse-sirius/sirius-components-diagrams", + "@eclipse-sirius/sirius-components-formdescriptioneditors": "file:.yalc/@eclipse-sirius/sirius-components-formdescriptioneditors", + "@eclipse-sirius/sirius-components-forms": "file:.yalc/@eclipse-sirius/sirius-components-forms", + "@eclipse-sirius/sirius-components-gantt": "file:.yalc/@eclipse-sirius/sirius-components-gantt", + "@eclipse-sirius/sirius-components-impactanalysis": "file:.yalc/@eclipse-sirius/sirius-components-impactanalysis", + "@eclipse-sirius/sirius-components-omnibox": "file:.yalc/@eclipse-sirius/sirius-components-omnibox", + "@eclipse-sirius/sirius-components-palette": "file:.yalc/@eclipse-sirius/sirius-components-palette", + "@eclipse-sirius/sirius-components-portals": "file:.yalc/@eclipse-sirius/sirius-components-portals", + "@eclipse-sirius/sirius-components-selection": "file:.yalc/@eclipse-sirius/sirius-components-selection", + "@eclipse-sirius/sirius-components-tables": "file:.yalc/@eclipse-sirius/sirius-components-tables", + "@eclipse-sirius/sirius-components-trees": "file:.yalc/@eclipse-sirius/sirius-components-trees", + "@eclipse-sirius/sirius-components-validation": "file:.yalc/@eclipse-sirius/sirius-components-validation", + "@eclipse-sirius/sirius-components-widget-reference": "file:.yalc/@eclipse-sirius/sirius-components-widget-reference", + "@eclipse-sirius/sirius-components-widget-table": "file:.yalc/@eclipse-sirius/sirius-components-widget-table", + "@eclipse-sirius/sirius-web-application": "file:.yalc/@eclipse-sirius/sirius-web-application", + "@eclipse-sirius/sirius-web-view-fork": "file:.yalc/@eclipse-sirius/sirius-web-view-fork" } } From 8be9e30d178819b123eaa0702bbb9e289715e85d Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Thu, 30 Apr 2026 16:02:35 +0200 Subject: [PATCH 07/17] change pour sw 2026.5.0 --- ...esentationDescriptionMetaDataProvider.java | 64 ++++++++++++++++++- .../src/nodes/EllipseNodeConverter.ts | 1 + 2 files changed, 62 insertions(+), 3 deletions(-) diff --git a/backend/pepper-starter/src/main/java/pepper/starter/services/descriptions/TableRepresentationDescriptionMetaDataProvider.java b/backend/pepper-starter/src/main/java/pepper/starter/services/descriptions/TableRepresentationDescriptionMetaDataProvider.java index 77bc53f..bff624a 100644 --- a/backend/pepper-starter/src/main/java/pepper/starter/services/descriptions/TableRepresentationDescriptionMetaDataProvider.java +++ b/backend/pepper-starter/src/main/java/pepper/starter/services/descriptions/TableRepresentationDescriptionMetaDataProvider.java @@ -12,12 +12,21 @@ ******************************************************************************/ package pepper.starter.services.descriptions; +import java.util.ArrayList; import java.util.List; +import org.eclipse.emf.ecore.EPackage; import org.eclipse.sirius.components.collaborative.api.IRepresentationDescriptionsProvider; -import org.eclipse.sirius.components.collaborative.api.RepresentationDescriptionMetadata; +import org.eclipse.sirius.components.collaborative.dto.RepresentationDescriptionMetadataDTO; import org.eclipse.sirius.components.core.api.IEditingContext; +import org.eclipse.sirius.components.emf.services.api.IEMFEditingContext; +import org.eclipse.sirius.components.interpreter.AQLInterpreter; import org.eclipse.sirius.components.representations.IRepresentationDescription; +import org.eclipse.sirius.components.representations.VariableManager; +import org.eclipse.sirius.components.view.RepresentationDescription; +import org.eclipse.sirius.components.view.View; +import org.eclipse.sirius.components.view.emf.IJavaServiceProvider; +import org.eclipse.sirius.components.view.emf.IViewRepresentationDescriptionSearchService; import org.springframework.stereotype.Service; /** @@ -28,14 +37,63 @@ @Service public class TableRepresentationDescriptionMetaDataProvider implements IRepresentationDescriptionsProvider { + private final IViewRepresentationDescriptionSearchService viewRepresentationDescriptionSearchService; + + private final List javaServiceProviders; + + public TableRepresentationDescriptionMetaDataProvider(IViewRepresentationDescriptionSearchService viewRepresentationDescriptionSearchService, List javaServiceProviders) { + this.viewRepresentationDescriptionSearchService = viewRepresentationDescriptionSearchService; + this.javaServiceProviders = javaServiceProviders; + } + @Override public boolean canHandle(IRepresentationDescription representationDescription) { return PepperMMEditingContextDescriptionProvider.PROJECT_FORM_ID.equals(representationDescription.getId()); } @Override - public List handle(IEditingContext editingContext, Object object, IRepresentationDescription representationDescription) { - return List.of(new RepresentationDescriptionMetadata(representationDescription.getId(), representationDescription.getLabel(), representationDescription.getLabel())); + public List handle(IEditingContext editingContext, Object object, IRepresentationDescription representationDescription) { + List result = new ArrayList<>(); + var viewRepresentationDescription = this.viewRepresentationDescriptionSearchService.findById(editingContext, representationDescription.getId()); + if (viewRepresentationDescription.isPresent()) { + String defaultName = viewRepresentationDescription.map(view -> this.getDefaultName(view, editingContext, object)).orElse(representationDescription.getLabel()); + String documentation = viewRepresentationDescription.map(RepresentationDescription::getEndUserDocumentation).orElse(""); + result.add(new RepresentationDescriptionMetadataDTO(representationDescription.getId(), representationDescription.getLabel(), defaultName, documentation)); + } + + return result; + } + + + private List getAccessibleEPackages(IEditingContext editingContext) { + if (editingContext instanceof IEMFEditingContext) { + EPackage.Registry packageRegistry = ((IEMFEditingContext) editingContext).getDomain().getResourceSet().getPackageRegistry(); + return packageRegistry.values().stream() + .filter(EPackage.class::isInstance) + .map(EPackage.class::cast) + .toList(); + } else { + return List.of(); + } + } + + private String getDefaultName(org.eclipse.sirius.components.view.RepresentationDescription viewRepresentationDescription, IEditingContext editingContext, Object self) { + String titleExpression = viewRepresentationDescription.getTitleExpression(); + if (titleExpression != null && !titleExpression.isBlank()) { + List accessibleEPackages = this.getAccessibleEPackages(editingContext); + AQLInterpreter interpreter = this.createInterpreter((View) viewRepresentationDescription.eContainer(), accessibleEPackages); + VariableManager variableManager = new VariableManager(); + variableManager.put(VariableManager.SELF, self); + return interpreter.evaluateExpression(variableManager.getVariables(), titleExpression).asString().orElse(null); + } + return null; + } + + private AQLInterpreter createInterpreter(View view, List visibleEPackages) { + List> serviceClasses = this.javaServiceProviders.stream() + .flatMap(provider -> provider.getServiceClasses(view).stream()) + .toList(); + return new AQLInterpreter(serviceClasses, visibleEPackages); } } diff --git a/frontend/pepper-web/src/nodes/EllipseNodeConverter.ts b/frontend/pepper-web/src/nodes/EllipseNodeConverter.ts index 707fd43..fa68ca3 100644 --- a/frontend/pepper-web/src/nodes/EllipseNodeConverter.ts +++ b/frontend/pepper-web/src/nodes/EllipseNodeConverter.ts @@ -115,6 +115,7 @@ const toEllipseNode = ( minComputedWidth: gqlNodeLayoutData?.minComputedSize.width ?? null, minComputedHeight: gqlNodeLayoutData?.minComputedSize.height ?? null, isLastNodeSelected: false, + moving: false, }; data.insideLabel = convertInsideLabel( From a7e67ccd8ab255b7426f478cc32275bf4adf0acf Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Wed, 6 May 2026 14:15:33 +0200 Subject: [PATCH 08/17] change starter pour SW 2026.5.0 pepper sans deplink --- .../services/view/PepperMMJavaService.java | 21 +++++++++++++++++++ .../view/ViewGanttDescriptionBuilder.java | 11 +++------- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/backend/pepper-starter/src/main/java/pepper/starter/services/view/PepperMMJavaService.java b/backend/pepper-starter/src/main/java/pepper/starter/services/view/PepperMMJavaService.java index fcb01b9..1929471 100644 --- a/backend/pepper-starter/src/main/java/pepper/starter/services/view/PepperMMJavaService.java +++ b/backend/pepper-starter/src/main/java/pepper/starter/services/view/PepperMMJavaService.java @@ -33,6 +33,7 @@ import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; import org.eclipse.sirius.components.core.api.IFeedbackMessageService; +import org.eclipse.sirius.components.gantt.StartOrEnd; import org.eclipse.sirius.components.representations.Message; import org.eclipse.sirius.components.representations.MessageLevel; @@ -99,6 +100,26 @@ public void createTask(EObject context) { } } + public List getDependencies(EObject eObject, String sourceStartOrEnd, String targetStartOrEnd) { + if (eObject instanceof Task task) { + if (sourceStartOrEnd.equals("END") && targetStartOrEnd.equals("START")) { + return task.getDependencies(); + } + } + return List.of(); + } + + public void createDependencyLink(EObject target, EObject source, StartOrEnd sourceStartOrEnd, StartOrEnd targetStartOrEnd) { + if (target instanceof Task targetTask && source instanceof Task sourceTask) { + if (sourceStartOrEnd.equals(StartOrEnd.END) && targetStartOrEnd.equals(StartOrEnd.START)) { + targetTask.getDependencies().add(sourceTask); + } else { + this.feedbackMessageService.addFeedbackMessage(new Message("Forbidden dependency creation. This model only accept END-START dependencies", MessageLevel.ERROR)); + } + } + } + + public void createWorkpackage(EObject context) { Workpackage newWorkpackage = PepperFactory.eINSTANCE.createWorkpackage(); newWorkpackage.setName("New Workpackage"); diff --git a/backend/pepper-starter/src/main/java/pepper/starter/services/view/ViewGanttDescriptionBuilder.java b/backend/pepper-starter/src/main/java/pepper/starter/services/view/ViewGanttDescriptionBuilder.java index 7c14d0d..d221f84 100644 --- a/backend/pepper-starter/src/main/java/pepper/starter/services/view/ViewGanttDescriptionBuilder.java +++ b/backend/pepper-starter/src/main/java/pepper/starter/services/view/ViewGanttDescriptionBuilder.java @@ -18,7 +18,6 @@ import org.eclipse.sirius.components.view.builder.generated.gantt.GanttBuilders; import org.eclipse.sirius.components.view.builder.generated.view.ChangeContextBuilder; import org.eclipse.sirius.components.view.builder.generated.view.DeleteElementBuilder; -import org.eclipse.sirius.components.view.builder.generated.view.SetValueBuilder; import org.eclipse.sirius.components.view.builder.generated.view.UnsetValueBuilder; import org.eclipse.sirius.components.view.gantt.CreateTaskDependencyTool; import org.eclipse.sirius.components.view.gantt.CreateTaskTool; @@ -123,12 +122,8 @@ private CreateTaskDependencyTool createTaskDependencyTool() { return new GanttBuilders().newCreateTaskDependencyTool() .name("Create Task Dependency") .body(new ChangeContextBuilder() - .expression("aql:targetObject") - .children(new SetValueBuilder() - .featureName("dependencies") - .valueExpression("aql:sourceObject") + .expression("aql:targetObject.createDependencyLink(sourceObject, sourceStartOrEnd, targetStartOrEnd)") .build()) - .build()) .build(); } @@ -157,7 +152,7 @@ private TaskDescription createTaskDescriptionInWorkpackage() { .endTimeExpression("aql:self.endTime") .progressExpression(AQL_SELF_PROGRESS) .computeStartEndDynamicallyExpression("aql:self.computeStartEndDynamically") - .taskDependenciesExpression("aql:self.dependencies") + .taskDependenciesExpression("aql:self.getDependencies(sourceStartOrEnd.toString(), targetStartOrEnd.toString())") .subTaskElementDescriptions(taskDescriptionInTask) .build(); } @@ -172,7 +167,7 @@ private TaskDescription createTaskDescriptionInTask() { .endTimeExpression("aql:self.endTime") .progressExpression(AQL_SELF_PROGRESS) .computeStartEndDynamicallyExpression("aql:self.computeStartEndDynamically") - .taskDependenciesExpression("aql:self.dependencies") + .taskDependenciesExpression("aql:self.getDependencies(sourceStartOrEnd.toString(), targetStartOrEnd.toString())") .build(); taskDescription.getReusedTaskElementDescriptions().add(taskDescription); From 2ead33798e89511d035306f0cd57c3838b326192 Mon Sep 17 00:00:00 2001 From: Nicolas Couvert Date: Wed, 6 May 2026 14:25:43 +0200 Subject: [PATCH 09/17] local peppermm 2026.3.0 --- backend/pepper-edit/.classpath | 58 + backend/pepper-edit/.project | 23 + .../org.eclipse.core.resources.prefs | 4 + .../.settings/org.eclipse.jdt.apt.core.prefs | 2 + .../.settings/org.eclipse.jdt.core.prefs | 10 + .../.settings/org.eclipse.m2e.core.prefs | 4 + backend/pepper-edit/pom.xml | 39 + .../provider/AbstractTaskItemProvider.java | 306 ++ .../ExternalStakeholderItemProvider.java | 134 + .../InternalStakeholderItemProvider.java | 110 + .../provider/KeyResultItemProvider.java | 110 + .../provider/ObjectiveItemProvider.java | 155 + .../provider/OrganizationItemProvider.java | 195 + .../peppermm/provider/PepperEditPlugin.java | 89 + .../PepperItemProviderAdapterFactory.java | 548 +++ .../peppermm/provider/PersonItemProvider.java | 160 + .../provider/ProjectItemProvider.java | 587 +++ .../provider/ResourceFolderItemProvider.java | 201 + .../provider/ResourceItemProvider.java | 142 + .../peppermm/provider/RiskItemProvider.java | 241 ++ .../provider/TagFolderItemProvider.java | 195 + .../peppermm/provider/TaskItemProvider.java | 123 + .../provider/TaskTagItemProvider.java | 165 + .../peppermm/provider/TeamItemProvider.java | 123 + .../WorkpackageArtefactItemProvider.java | 276 ++ .../provider/WorkpackageItemProvider.java | 315 ++ .../icons/full/obj16/ExternalStakeholder.svg | 12 + .../icons/full/obj16/InternalStakeholder.svg | 5 + .../resources/icons/full/obj16/KeyResult.svg | 1 + .../resources/icons/full/obj16/Objective.svg | 1 + .../icons/full/obj16/Organization.svg | 1 + .../resources/icons/full/obj16/Person.svg | 1 + .../resources/icons/full/obj16/Project.svg | 1 + .../icons/full/obj16/ResourceFolder.svg | 1 + .../main/resources/icons/full/obj16/Risk.svg | 45 + .../resources/icons/full/obj16/TagFolder.svg | 40 + .../main/resources/icons/full/obj16/Task.svg | 1 + .../resources/icons/full/obj16/TaskTag.svg | 1 + .../main/resources/icons/full/obj16/Team.svg | 1 + .../icons/full/obj16/Workpackage.svg | 1 + .../icons/full/obj16/WorkpackageArtefact.svg | 52 + .../src/main/resources/plugin.properties | 163 + .../src/main/resources/plugin_fr.properties | 163 + backend/pepper-mm/.classpath | 58 + backend/pepper-mm/.project | 23 + .../org.eclipse.core.resources.prefs | 4 + .../.settings/org.eclipse.core.runtime.prefs | 3 + .../.settings/org.eclipse.jdt.apt.core.prefs | 2 + .../.settings/org.eclipse.jdt.core.prefs | 505 +++ .../.settings/org.eclipse.jdt.ui.prefs | 293 ++ .../.settings/org.eclipse.m2e.core.prefs | 4 + .../org.springframework.ide.eclipse.prefs | 2 + backend/pepper-mm/README.adoc | 11 + backend/pepper-mm/pom.xml | 46 + .../java/pepper/peppermm/AbstractTask.java | 222 + .../pepper/peppermm/ExternalStakeholder.java | 44 + .../pepper/peppermm/InternalStakeholder.java | 25 + .../main/java/pepper/peppermm/KeyResult.java | 24 + .../main/java/pepper/peppermm/Objective.java | 43 + .../java/pepper/peppermm/Organization.java | 80 + .../java/pepper/peppermm/PepperFactory.java | 160 + .../java/pepper/peppermm/PepperPackage.java | 3670 +++++++++++++++++ .../src/main/java/pepper/peppermm/Person.java | 98 + .../main/java/pepper/peppermm/Project.java | 670 +++ .../java/pepper/peppermm/ProjectState.java | 256 ++ .../main/java/pepper/peppermm/Resource.java | 54 + .../java/pepper/peppermm/ResourceFolder.java | 80 + .../src/main/java/pepper/peppermm/Risk.java | 215 + .../main/java/pepper/peppermm/RiskKind.java | 340 ++ .../main/java/pepper/peppermm/RiskState.java | 256 ++ .../main/java/pepper/peppermm/TagFolder.java | 80 + .../src/main/java/pepper/peppermm/Task.java | 43 + .../main/java/pepper/peppermm/TaskTag.java | 77 + .../src/main/java/pepper/peppermm/Team.java | 43 + .../java/pepper/peppermm/Workpackage.java | 244 ++ .../pepper/peppermm/WorkpackageArtefact.java | 271 ++ .../peppermm/WorkpackageArtefactNature.java | 342 ++ .../peppermm/impl/AbstractTaskImpl.java | 635 +++ .../impl/ExternalStakeholderImpl.java | 164 + .../impl/InternalStakeholderImpl.java | 46 + .../pepper/peppermm/impl/KeyResultImpl.java | 45 + .../pepper/peppermm/impl/ObjectiveImpl.java | 166 + .../peppermm/impl/OrganizationImpl.java | 279 ++ .../peppermm/impl/PepperFactoryImpl.java | 474 +++ .../peppermm/impl/PepperPackageImpl.java | 1863 +++++++++ .../java/pepper/peppermm/impl/PersonImpl.java | 291 ++ .../pepper/peppermm/impl/ProjectImpl.java | 1757 ++++++++ .../peppermm/impl/ResourceFolderImpl.java | 279 ++ .../pepper/peppermm/impl/ResourceImpl.java | 180 + .../java/pepper/peppermm/impl/RiskImpl.java | 572 +++ .../pepper/peppermm/impl/TagFolderImpl.java | 278 ++ .../java/pepper/peppermm/impl/TaskImpl.java | 146 + .../pepper/peppermm/impl/TaskTagImpl.java | 236 ++ .../java/pepper/peppermm/impl/TeamImpl.java | 147 + .../impl/WorkpackageArtefactImpl.java | 697 ++++ .../pepper/peppermm/impl/WorkpackageImpl.java | 699 ++++ .../peppermm/util/PepperAdapterFactory.java | 411 ++ .../pepper/peppermm/util/PepperSwitch.java | 469 +++ .../src/main/resources/icons/svg/Default.svg | 85 + .../src/main/resources/model/pepper.ecore | 191 + .../src/main/resources/model/pepper.genmodel | 172 + backend/pepper-parent/pom.xml | 26 +- backend/pepper-starter/pom.xml | 10 +- backend/pom.xml | 2 + 104 files changed, 23391 insertions(+), 22 deletions(-) create mode 100644 backend/pepper-edit/.classpath create mode 100644 backend/pepper-edit/.project create mode 100644 backend/pepper-edit/.settings/org.eclipse.core.resources.prefs create mode 100644 backend/pepper-edit/.settings/org.eclipse.jdt.apt.core.prefs create mode 100644 backend/pepper-edit/.settings/org.eclipse.jdt.core.prefs create mode 100644 backend/pepper-edit/.settings/org.eclipse.m2e.core.prefs create mode 100644 backend/pepper-edit/pom.xml create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/AbstractTaskItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/ExternalStakeholderItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/InternalStakeholderItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/KeyResultItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/ObjectiveItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/OrganizationItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperEditPlugin.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperItemProviderAdapterFactory.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/PersonItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/ProjectItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceFolderItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/RiskItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/TagFolderItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskTagItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/TeamItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageArtefactItemProvider.java create mode 100644 backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageItemProvider.java create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/ExternalStakeholder.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/InternalStakeholder.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/KeyResult.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Objective.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Organization.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Person.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Project.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/ResourceFolder.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Risk.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/TagFolder.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Task.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/TaskTag.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Team.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/Workpackage.svg create mode 100644 backend/pepper-edit/src/main/resources/icons/full/obj16/WorkpackageArtefact.svg create mode 100644 backend/pepper-edit/src/main/resources/plugin.properties create mode 100644 backend/pepper-edit/src/main/resources/plugin_fr.properties create mode 100644 backend/pepper-mm/.classpath create mode 100644 backend/pepper-mm/.project create mode 100644 backend/pepper-mm/.settings/org.eclipse.core.resources.prefs create mode 100644 backend/pepper-mm/.settings/org.eclipse.core.runtime.prefs create mode 100644 backend/pepper-mm/.settings/org.eclipse.jdt.apt.core.prefs create mode 100644 backend/pepper-mm/.settings/org.eclipse.jdt.core.prefs create mode 100644 backend/pepper-mm/.settings/org.eclipse.jdt.ui.prefs create mode 100644 backend/pepper-mm/.settings/org.eclipse.m2e.core.prefs create mode 100644 backend/pepper-mm/.settings/org.springframework.ide.eclipse.prefs create mode 100644 backend/pepper-mm/README.adoc create mode 100644 backend/pepper-mm/pom.xml create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/AbstractTask.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/ExternalStakeholder.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/InternalStakeholder.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/KeyResult.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Objective.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Organization.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/PepperFactory.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/PepperPackage.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Person.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Project.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/ProjectState.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Resource.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/ResourceFolder.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Risk.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/RiskKind.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/RiskState.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/TagFolder.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Task.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/TaskTag.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Team.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/Workpackage.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/WorkpackageArtefact.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/WorkpackageArtefactNature.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/AbstractTaskImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/ExternalStakeholderImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/InternalStakeholderImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/KeyResultImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/ObjectiveImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/OrganizationImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/PepperFactoryImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/PepperPackageImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/PersonImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/ProjectImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/ResourceFolderImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/ResourceImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/RiskImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/TagFolderImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/TaskImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/TaskTagImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/TeamImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/WorkpackageArtefactImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/impl/WorkpackageImpl.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/util/PepperAdapterFactory.java create mode 100644 backend/pepper-mm/src/main/java/pepper/peppermm/util/PepperSwitch.java create mode 100644 backend/pepper-mm/src/main/resources/icons/svg/Default.svg create mode 100644 backend/pepper-mm/src/main/resources/model/pepper.ecore create mode 100644 backend/pepper-mm/src/main/resources/model/pepper.genmodel diff --git a/backend/pepper-edit/.classpath b/backend/pepper-edit/.classpath new file mode 100644 index 0000000..76325a9 --- /dev/null +++ b/backend/pepper-edit/.classpath @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/backend/pepper-edit/.project b/backend/pepper-edit/.project new file mode 100644 index 0000000..5c1493a --- /dev/null +++ b/backend/pepper-edit/.project @@ -0,0 +1,23 @@ + + + pepper-edit + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/backend/pepper-edit/.settings/org.eclipse.core.resources.prefs b/backend/pepper-edit/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..abdea9a --- /dev/null +++ b/backend/pepper-edit/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding//src/main/resources=UTF-8 +encoding/=UTF-8 diff --git a/backend/pepper-edit/.settings/org.eclipse.jdt.apt.core.prefs b/backend/pepper-edit/.settings/org.eclipse.jdt.apt.core.prefs new file mode 100644 index 0000000..d4313d4 --- /dev/null +++ b/backend/pepper-edit/.settings/org.eclipse.jdt.apt.core.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.apt.aptEnabled=false diff --git a/backend/pepper-edit/.settings/org.eclipse.jdt.core.prefs b/backend/pepper-edit/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..410f726 --- /dev/null +++ b/backend/pepper-edit/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,10 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.methodParameters=generate +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.processAnnotations=disabled +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/backend/pepper-edit/.settings/org.eclipse.m2e.core.prefs b/backend/pepper-edit/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/backend/pepper-edit/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/backend/pepper-edit/pom.xml b/backend/pepper-edit/pom.xml new file mode 100644 index 0000000..9ae03fe --- /dev/null +++ b/backend/pepper-edit/pom.xml @@ -0,0 +1,39 @@ + + + + 4.0.0 + + pepper + pepper-parent + 2026.3.0 + ../pepper-parent + + pepper-edit + pepper-edit + Pepper - Edit Support + + + + org.eclipse.core + org.eclipse.core.runtime + + + pepper + pepper-mm + ${project.version} + + + diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/AbstractTaskItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/AbstractTaskItemProvider.java new file mode 100644 index 0000000..5e805e4 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/AbstractTaskItemProvider.java @@ -0,0 +1,306 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.time.Instant; +import java.util.Collection; +import java.util.List; +import java.util.Optional; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.AbstractTask; +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Task; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.AbstractTask} object. + * + * @generated + */ +public class AbstractTaskItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public AbstractTaskItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + addStartTimePropertyDescriptor(object); + addEndTimePropertyDescriptor(object); + addProgressPropertyDescriptor(object); + addComputeStartEndDynamicallyPropertyDescriptor(object); + addTagsPropertyDescriptor(object); + addAssignedPersonsPropertyDescriptor(object); + addAssignedTeamsPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AbstractTask_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_name_feature", "_UI_AbstractTask_type"), PepperPackage.Literals.ABSTRACT_TASK__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Description feature. + * + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_description_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_description_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__DESCRIPTION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Start Time feature. + * + * @generated + */ + protected void addStartTimePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_startTime_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_startTime_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__START_TIME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the End Time feature. + * + * @generated + */ + protected void addEndTimePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_endTime_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_endTime_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__END_TIME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Progress feature. + * + * @generated + */ + protected void addProgressPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_progress_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_progress_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__PROGRESS, true, false, false, ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Compute Start End Dynamically feature. + * + * @generated + */ + protected void addComputeStartEndDynamicallyPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_computeStartEndDynamically_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_computeStartEndDynamically_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__COMPUTE_START_END_DYNAMICALLY, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Tags feature. + * + * @generated + */ + protected void addTagsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AbstractTask_tags_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_tags_feature", "_UI_AbstractTask_type"), PepperPackage.Literals.ABSTRACT_TASK__TAGS, true, false, true, null, null, + null)); + } + + /** + * This adds a property descriptor for the Assigned Persons feature. + * + * @generated + */ + protected void addAssignedPersonsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_assignedPersons_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_assignedPersons_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__ASSIGNED_PERSONS, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Assigned Teams feature. + * + * @generated + */ + protected void addAssignedTeamsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_AbstractTask_assignedTeams_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AbstractTask_assignedTeams_feature", "_UI_AbstractTask_type"), + PepperPackage.Literals.ABSTRACT_TASK__ASSIGNED_TEAMS, true, false, true, null, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.ABSTRACT_TASK__SUB_TASKS); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((AbstractTask) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_AbstractTask_type") : getString("_UI_AbstractTask_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(AbstractTask.class)) { + case PepperPackage.ABSTRACT_TASK__NAME: + case PepperPackage.ABSTRACT_TASK__DESCRIPTION: + case PepperPackage.ABSTRACT_TASK__START_TIME: + case PepperPackage.ABSTRACT_TASK__END_TIME: + case PepperPackage.ABSTRACT_TASK__PROGRESS: + case PepperPackage.ABSTRACT_TASK__COMPUTE_START_END_DYNAMICALLY: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PepperPackage.ABSTRACT_TASK__SUB_TASKS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated NOT + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + Task task = PepperFactory.eINSTANCE.createTask(); + task.setName(getString("_UI_New") + " " + getString("_UI_Task_type")); + if (object instanceof AbstractTask abstractTask) { + Optional optionalTask = abstractTask.getSubTasks().stream() + .reduce((first, second) -> second) + .filter(filteredTask -> filteredTask.getEndTime() != null && filteredTask.getStartTime() != null); + + if (optionalTask.isPresent()) { + Task lastTask = optionalTask.get(); + task.setStartTime(lastTask.getEndTime()); + task.setEndTime(Instant.ofEpochSecond(2 * lastTask.getEndTime().getEpochSecond() - lastTask.getStartTime().getEpochSecond())); + } else { + if (abstractTask.getEndTime() != null && abstractTask.getStartTime() != null) { + task.setStartTime(abstractTask.getStartTime()); + task.setEndTime(abstractTask.getEndTime()); + } + } + + } + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.ABSTRACT_TASK__SUB_TASKS, task)); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ExternalStakeholderItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ExternalStakeholderItemProvider.java new file mode 100644 index 0000000..6278d0c --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ExternalStakeholderItemProvider.java @@ -0,0 +1,134 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.ExternalStakeholder; +import pepper.peppermm.PepperPackage; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.ExternalStakeholder} object. + * + * + * @generated + */ +public class ExternalStakeholderItemProvider extends ResourceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public ExternalStakeholderItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addGoalsPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Goals feature. + * + * @generated + */ + protected void addGoalsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_ExternalStakeholder_goals_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ExternalStakeholder_goals_feature", "_UI_ExternalStakeholder_type"), + PepperPackage.Literals.EXTERNAL_STAKEHOLDER__GOALS, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns ExternalStakeholder.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/ExternalStakeholder.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((ExternalStakeholder) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_ExternalStakeholder_type") : getString("_UI_ExternalStakeholder_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(ExternalStakeholder.class)) { + case PepperPackage.EXTERNAL_STAKEHOLDER__GOALS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/InternalStakeholderItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/InternalStakeholderItemProvider.java new file mode 100644 index 0000000..4b2ef2d --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/InternalStakeholderItemProvider.java @@ -0,0 +1,110 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; + +import pepper.peppermm.InternalStakeholder; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.InternalStakeholder} object. + * + * + * @generated + */ +public class InternalStakeholderItemProvider extends ResourceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public InternalStakeholderItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns InternalStakeholder.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/InternalStakeholder.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((InternalStakeholder) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_InternalStakeholder_type") : getString("_UI_InternalStakeholder_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/KeyResultItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/KeyResultItemProvider.java new file mode 100644 index 0000000..0f2462b --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/KeyResultItemProvider.java @@ -0,0 +1,110 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; + +import pepper.peppermm.KeyResult; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.KeyResult} object. + * + * @generated + */ +public class KeyResultItemProvider extends AbstractTaskItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public KeyResultItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns KeyResult.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/KeyResult.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((KeyResult) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_KeyResult_type") : getString("_UI_KeyResult_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ObjectiveItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ObjectiveItemProvider.java new file mode 100644 index 0000000..5467a22 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ObjectiveItemProvider.java @@ -0,0 +1,155 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.Objective; +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Objective} object. + * + * @generated + */ +public class ObjectiveItemProvider extends AbstractTaskItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public ObjectiveItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.OBJECTIVE__OWNED_KEY_RESULTS); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Objective.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Objective.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Objective) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Objective_type") : getString("_UI_Objective_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Objective.class)) { + case PepperPackage.OBJECTIVE__OWNED_KEY_RESULTS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(createChildParameter(PepperPackage.Literals.OBJECTIVE__OWNED_KEY_RESULTS, PepperFactory.eINSTANCE.createKeyResult())); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/OrganizationItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/OrganizationItemProvider.java new file mode 100644 index 0000000..7eea81c --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/OrganizationItemProvider.java @@ -0,0 +1,195 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.Organization; +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Organization} object. + * + * @generated + */ +public class OrganizationItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public OrganizationItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Organization_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Organization_name_feature", "_UI_Organization_type"), PepperPackage.Literals.ORGANIZATION__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.ORGANIZATION__OWNED_PROJECTS); + childrenFeatures.add(PepperPackage.Literals.ORGANIZATION__OWNED_RESOURCE_FOLDERS); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Organization.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Organization.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Organization) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Organization_type") : getString("_UI_Organization_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Organization.class)) { + case PepperPackage.ORGANIZATION__NAME: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PepperPackage.ORGANIZATION__OWNED_PROJECTS: + case PepperPackage.ORGANIZATION__OWNED_RESOURCE_FOLDERS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(createChildParameter(PepperPackage.Literals.ORGANIZATION__OWNED_PROJECTS, PepperFactory.eINSTANCE.createProject())); + + newChildDescriptors.add(createChildParameter(PepperPackage.Literals.ORGANIZATION__OWNED_RESOURCE_FOLDERS, PepperFactory.eINSTANCE.createResourceFolder())); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperEditPlugin.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperEditPlugin.java new file mode 100644 index 0000000..0acb6a4 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperEditPlugin.java @@ -0,0 +1,89 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import org.eclipse.emf.common.EMFPlugin; + +import org.eclipse.emf.common.util.ResourceLocator; + +/** + * This is the central singleton for the Pepper edit plugin. + * + * @generated + */ +public final class PepperEditPlugin extends EMFPlugin { + /** + * Keep track of the singleton. + * + * @generated + */ + public static final PepperEditPlugin INSTANCE = new PepperEditPlugin(); + + /** + * Keep track of the singleton. + * + * @generated + */ + private static Implementation plugin; + + /** + * Create the instance. + * + * @generated + */ + public PepperEditPlugin() { + super(new ResourceLocator[] {}); + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * + * @return the singleton instance. + * @generated + */ + @Override + public ResourceLocator getPluginResourceLocator() { + return plugin; + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * + * @return the singleton instance. + * @generated + */ + public static Implementation getPlugin() { + return plugin; + } + + /** + * The actual implementation of the Eclipse Plugin. + * + * @generated + */ + public static class Implementation extends EclipsePlugin { + /** + * Creates an instance. + * + * @generated + */ + public Implementation() { + super(); + + // Remember the static instance. + // + plugin = this; + } + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperItemProviderAdapterFactory.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperItemProviderAdapterFactory.java new file mode 100644 index 0000000..1445ff8 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PepperItemProviderAdapterFactory.java @@ -0,0 +1,548 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.ArrayList; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.edit.provider.ChangeNotifier; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.ComposedAdapterFactory; +import org.eclipse.emf.edit.provider.IChangeNotifier; +import org.eclipse.emf.edit.provider.IDisposable; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.INotifyChangedListener; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import pepper.peppermm.util.PepperAdapterFactory; + +/** + * This is the factory that is used to provide the interfaces needed to support Viewers. The adapters generated by this + * factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. The adapters + * also support Eclipse property sheets. Note that most of the adapters are shared among multiple instances. + * + * @generated + */ +public class PepperItemProviderAdapterFactory extends PepperAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { + /** + * This keeps track of the root adapter factory that delegates to this adapter factory. + * + * @generated + */ + protected ComposedAdapterFactory parentAdapterFactory; + + /** + * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. + * + * @generated + */ + protected IChangeNotifier changeNotifier = new ChangeNotifier(); + + /** + * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. + * + * @generated + */ + protected Collection supportedTypes = new ArrayList(); + + /** + * This constructs an instance. + * + * @generated + */ + public PepperItemProviderAdapterFactory() { + supportedTypes.add(IEditingDomainItemProvider.class); + supportedTypes.add(IStructuredItemContentProvider.class); + supportedTypes.add(ITreeItemContentProvider.class); + supportedTypes.add(IItemLabelProvider.class); + supportedTypes.add(IItemPropertySource.class); + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Organization} instances. + * + * @generated + */ + protected OrganizationItemProvider organizationItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Organization}. + * + * @generated + */ + @Override + public Adapter createOrganizationAdapter() { + if (organizationItemProvider == null) { + organizationItemProvider = new OrganizationItemProvider(this); + } + + return organizationItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.ResourceFolder} instances. + * + * @generated + */ + protected ResourceFolderItemProvider resourceFolderItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.ResourceFolder}. + * + * @generated + */ + @Override + public Adapter createResourceFolderAdapter() { + if (resourceFolderItemProvider == null) { + resourceFolderItemProvider = new ResourceFolderItemProvider(this); + } + + return resourceFolderItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Team} instances. + * + * + * @generated + */ + protected TeamItemProvider teamItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Team}. + * + * @generated + */ + @Override + public Adapter createTeamAdapter() { + if (teamItemProvider == null) { + teamItemProvider = new TeamItemProvider(this); + } + + return teamItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.InternalStakeholder} instances. + * + * @generated + */ + protected InternalStakeholderItemProvider internalStakeholderItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.InternalStakeholder}. + * + * @generated + */ + @Override + public Adapter createInternalStakeholderAdapter() { + if (internalStakeholderItemProvider == null) { + internalStakeholderItemProvider = new InternalStakeholderItemProvider(this); + } + + return internalStakeholderItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.ExternalStakeholder} instances. + * + * @generated + */ + protected ExternalStakeholderItemProvider externalStakeholderItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.ExternalStakeholder}. + * + * @generated + */ + @Override + public Adapter createExternalStakeholderAdapter() { + if (externalStakeholderItemProvider == null) { + externalStakeholderItemProvider = new ExternalStakeholderItemProvider(this); + } + + return externalStakeholderItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Person} instances. + * + * @generated + */ + protected PersonItemProvider personItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Person}. + * + * @generated + */ + @Override + public Adapter createPersonAdapter() { + if (personItemProvider == null) { + personItemProvider = new PersonItemProvider(this); + } + + return personItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.TagFolder} instances. + * + * @generated + */ + protected TagFolderItemProvider tagFolderItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.TagFolder}. + * + * @generated + */ + @Override + public Adapter createTagFolderAdapter() { + if (tagFolderItemProvider == null) { + tagFolderItemProvider = new TagFolderItemProvider(this); + } + + return tagFolderItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.TaskTag} instances. + * + * @generated + */ + protected TaskTagItemProvider taskTagItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.TaskTag}. + * + * @generated + */ + @Override + public Adapter createTaskTagAdapter() { + if (taskTagItemProvider == null) { + taskTagItemProvider = new TaskTagItemProvider(this); + } + + return taskTagItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Task} instances. + * + * + * @generated + */ + protected TaskItemProvider taskItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Task}. + * + * @generated + */ + @Override + public Adapter createTaskAdapter() { + if (taskItemProvider == null) { + taskItemProvider = new TaskItemProvider(this); + } + + return taskItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Objective} instances. + * + * @generated + */ + protected ObjectiveItemProvider objectiveItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Objective}. + * + * @generated + */ + @Override + public Adapter createObjectiveAdapter() { + if (objectiveItemProvider == null) { + objectiveItemProvider = new ObjectiveItemProvider(this); + } + + return objectiveItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.KeyResult} instances. + * + * @generated + */ + protected KeyResultItemProvider keyResultItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.KeyResult}. + * + * @generated + */ + @Override + public Adapter createKeyResultAdapter() { + if (keyResultItemProvider == null) { + keyResultItemProvider = new KeyResultItemProvider(this); + } + + return keyResultItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Project} instances. + * + * @generated + */ + protected ProjectItemProvider projectItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Project}. + * + * @generated + */ + @Override + public Adapter createProjectAdapter() { + if (projectItemProvider == null) { + projectItemProvider = new ProjectItemProvider(this); + } + + return projectItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Workpackage} instances. + * + * @generated + */ + protected WorkpackageItemProvider workpackageItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Workpackage}. + * + * @generated + */ + @Override + public Adapter createWorkpackageAdapter() { + if (workpackageItemProvider == null) { + workpackageItemProvider = new WorkpackageItemProvider(this); + } + + return workpackageItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.WorkpackageArtefact} instances. + * + * @generated + */ + protected WorkpackageArtefactItemProvider workpackageArtefactItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.WorkpackageArtefact}. + * + * @generated + */ + @Override + public Adapter createWorkpackageArtefactAdapter() { + if (workpackageArtefactItemProvider == null) { + workpackageArtefactItemProvider = new WorkpackageArtefactItemProvider(this); + } + + return workpackageArtefactItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link pepper.peppermm.Risk} instances. + * + * + * @generated + */ + protected RiskItemProvider riskItemProvider; + + /** + * This creates an adapter for a {@link pepper.peppermm.Risk}. + * + * @generated + */ + @Override + public Adapter createRiskAdapter() { + if (riskItemProvider == null) { + riskItemProvider = new RiskItemProvider(this); + } + + return riskItemProvider; + } + + /** + * This returns the root adapter factory that contains this factory. + * + * @generated + */ + @Override + public ComposeableAdapterFactory getRootAdapterFactory() { + return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); + } + + /** + * This sets the composed adapter factory that contains this factory. + * + * @generated + */ + @Override + public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) { + this.parentAdapterFactory = parentAdapterFactory; + } + + /** + * + * + * @generated + */ + @Override + public boolean isFactoryForType(Object type) { + return supportedTypes.contains(type) || super.isFactoryForType(type); + } + + /** + * This implementation substitutes the factory itself as the key for the adapter. + * + * @generated + */ + @Override + public Adapter adapt(Notifier notifier, Object type) { + return super.adapt(notifier, this); + } + + /** + * + * + * @generated + */ + @Override + public Object adapt(Object object, Object type) { + if (isFactoryForType(type)) { + Object adapter = super.adapt(object, type); + if (!(type instanceof Class) || (((Class) type).isInstance(adapter))) { + return adapter; + } + } + + return null; + } + + /** + * This adds a listener. + * + * @generated + */ + @Override + public void addListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.addListener(notifyChangedListener); + } + + /** + * This removes a listener. + * + * @generated + */ + @Override + public void removeListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.removeListener(notifyChangedListener); + } + + /** + * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. + * + * @generated + */ + @Override + public void fireNotifyChanged(Notification notification) { + changeNotifier.fireNotifyChanged(notification); + + if (parentAdapterFactory != null) { + parentAdapterFactory.fireNotifyChanged(notification); + } + } + + /** + * This disposes all of the item providers created by this factory. + * + * @generated + */ + @Override + public void dispose() { + if (organizationItemProvider != null) + organizationItemProvider.dispose(); + if (resourceFolderItemProvider != null) + resourceFolderItemProvider.dispose(); + if (teamItemProvider != null) + teamItemProvider.dispose(); + if (internalStakeholderItemProvider != null) + internalStakeholderItemProvider.dispose(); + if (externalStakeholderItemProvider != null) + externalStakeholderItemProvider.dispose(); + if (personItemProvider != null) + personItemProvider.dispose(); + if (tagFolderItemProvider != null) + tagFolderItemProvider.dispose(); + if (taskTagItemProvider != null) + taskTagItemProvider.dispose(); + if (taskItemProvider != null) + taskItemProvider.dispose(); + if (objectiveItemProvider != null) + objectiveItemProvider.dispose(); + if (keyResultItemProvider != null) + keyResultItemProvider.dispose(); + if (projectItemProvider != null) + projectItemProvider.dispose(); + if (workpackageItemProvider != null) + workpackageItemProvider.dispose(); + if (workpackageArtefactItemProvider != null) + workpackageArtefactItemProvider.dispose(); + if (riskItemProvider != null) + riskItemProvider.dispose(); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PersonItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PersonItemProvider.java new file mode 100644 index 0000000..8c0e777 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/PersonItemProvider.java @@ -0,0 +1,160 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Person; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Person} object. + * + * @generated + */ +public class PersonItemProvider extends ResourceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public PersonItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addAliasPropertyDescriptor(object); + addBiographyPropertyDescriptor(object); + addImageUrlPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Alias feature. + * + * @generated + */ + protected void addAliasPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Person_alias_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Person_alias_feature", "_UI_Person_type"), PepperPackage.Literals.PERSON__ALIAS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Biography feature. + * + * @generated + */ + protected void addBiographyPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Person_biography_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Person_biography_feature", "_UI_Person_type"), PepperPackage.Literals.PERSON__BIOGRAPHY, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Image Url feature. + * + * @generated + */ + protected void addImageUrlPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Person_imageUrl_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Person_imageUrl_feature", "_UI_Person_type"), PepperPackage.Literals.PERSON__IMAGE_URL, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns Person.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Person.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Person) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Person_type") : getString("_UI_Person_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Person.class)) { + case PepperPackage.PERSON__ALIAS: + case PepperPackage.PERSON__BIOGRAPHY: + case PepperPackage.PERSON__IMAGE_URL: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ProjectItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ProjectItemProvider.java new file mode 100644 index 0000000..277878e --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ProjectItemProvider.java @@ -0,0 +1,587 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.time.LocalDate; +import java.time.temporal.ChronoUnit; +import java.util.Collection; +import java.util.List; +import java.util.Optional; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Project; +import pepper.peppermm.Workpackage; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Project} object. + * + * @generated + */ +public class ProjectItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public ProjectItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + addReferencePropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + addLeadingUnitPropertyDescriptor(object); + addParticipantUnitsPropertyDescriptor(object); + addPlannifiedClientCopilMeetingsPropertyDescriptor(object); + addMainProgramBrickPropertyDescriptor(object); + addStatePropertyDescriptor(object); + addClientsPropertyDescriptor(object); + addPartnersPropertyDescriptor(object); + addIsTransversePropertyDescriptor(object); + addLeaderPropertyDescriptor(object); + addMembersPropertyDescriptor(object); + addIsSensitivePropertyDescriptor(object); + addContractualStartDatePropertyDescriptor(object); + addDurationPropertyDescriptor(object); + addContractualEndDatePropertyDescriptor(object); + addEffectiveStartDatePropertyDescriptor(object); + addEffectiveEndDatePropertyDescriptor(object); + addContractTermExtensionPropertyDescriptor(object); + addGlobalCostPropertyDescriptor(object); + addFundingRatePropertyDescriptor(object); + addFundingPropertyDescriptor(object); + addManpowerPropertyDescriptor(object); + addEOTPPropertyDescriptor(object); + addStatisticOrderPropertyDescriptor(object); + addInternalNeedPropertyDescriptor(object); + addClientNeedPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_name_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Reference feature. + * + * @generated + */ + protected void addReferencePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_reference_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_reference_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__REFERENCE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Description feature. + * + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_description_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_description_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__DESCRIPTION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Leading Unit feature. + * + * @generated + */ + protected void addLeadingUnitPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_leadingUnit_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_leadingUnit_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__LEADING_UNIT, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Participant Units feature. + * + * @generated + */ + protected void addParticipantUnitsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_participantUnits_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_participantUnits_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__PARTICIPANT_UNITS, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Plannified Client Copil Meetings feature. + * + * @generated + */ + protected void addPlannifiedClientCopilMeetingsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_plannifiedClientCopilMeetings_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_plannifiedClientCopilMeetings_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__PLANNIFIED_CLIENT_COPIL_MEETINGS, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Main Program Brick feature. + * + * @generated + */ + protected void addMainProgramBrickPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_mainProgramBrick_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_mainProgramBrick_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__MAIN_PROGRAM_BRICK, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the State feature. + * + * @generated + */ + protected void addStatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_state_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_state_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__STATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Clients feature. + * + * @generated + */ + protected void addClientsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_clients_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_clients_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__CLIENTS, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Partners feature. + * + * @generated + */ + protected void addPartnersPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_partners_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_partners_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__PARTNERS, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Is Transverse feature. + * + * @generated + */ + protected void addIsTransversePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_isTransverse_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_isTransverse_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__IS_TRANSVERSE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Leader feature. + * + * @generated + */ + protected void addLeaderPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_leader_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_leader_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__LEADER, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Members feature. + * + * @generated + */ + protected void addMembersPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_members_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_members_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__MEMBERS, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Is Sensitive feature. + * + * @generated + */ + protected void addIsSensitivePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_isSensitive_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_isSensitive_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__IS_SENSITIVE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Contractual Start Date feature. + * + * @generated + */ + protected void addContractualStartDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_contractualStartDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_contractualStartDate_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__CONTRACTUAL_START_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Duration feature. + * + * @generated + */ + protected void addDurationPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_duration_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_duration_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__DURATION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Contractual End Date feature. + * + * @generated + */ + protected void addContractualEndDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_contractualEndDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_contractualEndDate_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__CONTRACTUAL_END_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Effective Start Date feature. + * + * @generated + */ + protected void addEffectiveStartDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_effectiveStartDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_effectiveStartDate_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__EFFECTIVE_START_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Effective End Date feature. + * + * @generated + */ + protected void addEffectiveEndDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_effectiveEndDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_effectiveEndDate_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__EFFECTIVE_END_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Contract Term Extension feature. + * + * @generated + */ + protected void addContractTermExtensionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_contractTermExtension_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_contractTermExtension_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__CONTRACT_TERM_EXTENSION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Global Cost feature. + * + * @generated + */ + protected void addGlobalCostPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_globalCost_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_globalCost_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__GLOBAL_COST, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Funding Rate feature. + * + * @generated + */ + protected void addFundingRatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_fundingRate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_fundingRate_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__FUNDING_RATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Funding feature. + * + * @generated + */ + protected void addFundingPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_funding_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_funding_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__FUNDING, false, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Manpower feature. + * + * @generated + */ + protected void addManpowerPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_manpower_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_manpower_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__MANPOWER, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the EOTP feature. + * + * @generated + */ + protected void addEOTPPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Project_eOTP_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Project_eOTP_feature", "_UI_Project_type"), PepperPackage.Literals.PROJECT__EOTP, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Statistic Order feature. + * + * @generated + */ + protected void addStatisticOrderPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_statisticOrder_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_statisticOrder_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__STATISTIC_ORDER, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Internal Need feature. + * + * @generated + */ + protected void addInternalNeedPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_internalNeed_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_internalNeed_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__INTERNAL_NEED, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Client Need feature. + * + * @generated + */ + protected void addClientNeedPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Project_clientNeed_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Project_clientNeed_feature", "_UI_Project_type"), + PepperPackage.Literals.PROJECT__CLIENT_NEED, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.PROJECT__OWNED_WORKPACKAGES); + childrenFeatures.add(PepperPackage.Literals.PROJECT__OWNED_OBJECTIVES); + childrenFeatures.add(PepperPackage.Literals.PROJECT__OWNED_TAG_FOLDERS); + childrenFeatures.add(PepperPackage.Literals.PROJECT__OWNED_RISKS); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Project.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Project.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Project) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Project_type") : getString("_UI_Project_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Project.class)) { + case PepperPackage.PROJECT__NAME: + case PepperPackage.PROJECT__REFERENCE: + case PepperPackage.PROJECT__DESCRIPTION: + case PepperPackage.PROJECT__PLANNIFIED_CLIENT_COPIL_MEETINGS: + case PepperPackage.PROJECT__MAIN_PROGRAM_BRICK: + case PepperPackage.PROJECT__STATE: + case PepperPackage.PROJECT__IS_TRANSVERSE: + case PepperPackage.PROJECT__IS_SENSITIVE: + case PepperPackage.PROJECT__CONTRACTUAL_START_DATE: + case PepperPackage.PROJECT__DURATION: + case PepperPackage.PROJECT__CONTRACTUAL_END_DATE: + case PepperPackage.PROJECT__EFFECTIVE_START_DATE: + case PepperPackage.PROJECT__EFFECTIVE_END_DATE: + case PepperPackage.PROJECT__CONTRACT_TERM_EXTENSION: + case PepperPackage.PROJECT__GLOBAL_COST: + case PepperPackage.PROJECT__FUNDING_RATE: + case PepperPackage.PROJECT__FUNDING: + case PepperPackage.PROJECT__MANPOWER: + case PepperPackage.PROJECT__EOTP: + case PepperPackage.PROJECT__STATISTIC_ORDER: + case PepperPackage.PROJECT__INTERNAL_NEED: + case PepperPackage.PROJECT__CLIENT_NEED: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PepperPackage.PROJECT__OWNED_WORKPACKAGES: + case PepperPackage.PROJECT__OWNED_OBJECTIVES: + case PepperPackage.PROJECT__OWNED_TAG_FOLDERS: + case PepperPackage.PROJECT__OWNED_RISKS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated NOT + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + Workpackage workpackage = PepperFactory.eINSTANCE.createWorkpackage(); + workpackage.setName(getString("_UI_New") + " " + getString("_UI_Workpackage_type")); + if (object instanceof Project project) { + + Optional optionalWorkpackage = project.getOwnedWorkpackages().stream() + .reduce((first, second) -> second) + .filter(filteredWorkpackage -> filteredWorkpackage.getEndDate() != null && filteredWorkpackage.getStartDate() != null); + if (optionalWorkpackage.isPresent()) { + Workpackage lastWorkpackage = optionalWorkpackage.get(); + workpackage.setStartDate(lastWorkpackage.getEndDate().plusDays(1)); + long difference = lastWorkpackage.getStartDate().until(lastWorkpackage.getEndDate(), ChronoUnit.DAYS); + workpackage.setEndDate(lastWorkpackage.getEndDate().plusDays(difference + 1)); + } else { + LocalDate endDate = null; + if (project.getEffectiveEndDate() != null) { + endDate = project.getEffectiveEndDate(); + } + else if (project.getContractualEndDate() != null) { + endDate = project.getContractualEndDate(); + } + LocalDate startDate = null; + if (project.getEffectiveStartDate() != null) { + startDate = project.getEffectiveStartDate(); + } + else if (project.getContractualStartDate() != null) { + startDate = project.getContractualStartDate(); + } + if (startDate != null && endDate != null) { + workpackage.setStartDate(startDate); + workpackage.setEndDate(endDate); + } + } + } + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.PROJECT__OWNED_WORKPACKAGES, workpackage)); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.PROJECT__OWNED_OBJECTIVES, PepperFactory.eINSTANCE.createObjective())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.PROJECT__OWNED_TAG_FOLDERS, PepperFactory.eINSTANCE.createTagFolder())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.PROJECT__OWNED_RISKS, PepperFactory.eINSTANCE.createRisk())); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceFolderItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceFolderItemProvider.java new file mode 100644 index 0000000..b7d624f --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceFolderItemProvider.java @@ -0,0 +1,201 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; +import pepper.peppermm.ResourceFolder; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.ResourceFolder} object. + * + * @generated + */ +public class ResourceFolderItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public ResourceFolderItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_ResourceFolder_name_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ResourceFolder_name_feature", "_UI_ResourceFolder_type"), + PepperPackage.Literals.RESOURCE_FOLDER__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.RESOURCE_FOLDER__OWNED_RESOURCES); + childrenFeatures.add(PepperPackage.Literals.RESOURCE_FOLDER__SUB_FOLDERS); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns ResourceFolder.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/ResourceFolder.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((ResourceFolder) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_ResourceFolder_type") : getString("_UI_ResourceFolder_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(ResourceFolder.class)) { + case PepperPackage.RESOURCE_FOLDER__NAME: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PepperPackage.RESOURCE_FOLDER__OWNED_RESOURCES: + case PepperPackage.RESOURCE_FOLDER__SUB_FOLDERS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated NOT + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.RESOURCE_FOLDER__OWNED_RESOURCES, PepperFactory.eINSTANCE.createPerson())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.RESOURCE_FOLDER__OWNED_RESOURCES, PepperFactory.eINSTANCE.createTeam())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.RESOURCE_FOLDER__OWNED_RESOURCES, PepperFactory.eINSTANCE.createInternalStakeholder())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.RESOURCE_FOLDER__OWNED_RESOURCES, PepperFactory.eINSTANCE.createExternalStakeholder())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.RESOURCE_FOLDER__SUB_FOLDERS, PepperFactory.eINSTANCE.createResourceFolder())); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceItemProvider.java new file mode 100644 index 0000000..eaa204f --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/ResourceItemProvider.java @@ -0,0 +1,142 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Resource; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Resource} object. + * + * @generated + */ +public class ResourceItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public ResourceItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Resource_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Resource_name_feature", "_UI_Resource_type"), PepperPackage.Literals.RESOURCE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Resource) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Resource_type") : getString("_UI_Resource_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Resource.class)) { + case PepperPackage.RESOURCE__NAME: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/RiskItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/RiskItemProvider.java new file mode 100644 index 0000000..cd6d97d --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/RiskItemProvider.java @@ -0,0 +1,241 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Risk; +import pepper.peppermm.RiskKind; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Risk} object. + * + * @generated + */ +public class RiskItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public RiskItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addKindPropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + addCriticityPropertyDescriptor(object); + addActionPropertyDescriptor(object); + addResponsiblePropertyDescriptor(object); + addOperationDatePropertyDescriptor(object); + addStatePropertyDescriptor(object); + addWorkpackagesPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Kind feature. + * + * @generated + */ + protected void addKindPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_kind_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_kind_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Description feature. + * + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_description_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_description_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__DESCRIPTION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Criticity feature. + * + * @generated + */ + protected void addCriticityPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_criticity_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_criticity_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__CRITICITY, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Action feature. + * + * @generated + */ + protected void addActionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_action_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_action_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__ACTION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Responsible feature. + * + * @generated + */ + protected void addResponsiblePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_responsible_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_responsible_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__RESPONSIBLE, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Operation Date feature. + * + * @generated + */ + protected void addOperationDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Risk_operationDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Risk_operationDate_feature", "_UI_Risk_type"), + PepperPackage.Literals.RISK__OPERATION_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the State feature. + * + * @generated + */ + protected void addStatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_state_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_state_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__STATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Workpackages feature. + * + * @generated + */ + protected void addWorkpackagesPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Risk_workpackages_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Risk_workpackages_feature", "_UI_Risk_type"), PepperPackage.Literals.RISK__WORKPACKAGES, true, false, true, null, null, null)); + } + + /** + * This returns Risk.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Risk.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + RiskKind labelValue = ((Risk) object).getKind(); + String label = labelValue == null ? null : labelValue.toString(); + return label == null || label.length() == 0 ? getString("_UI_Risk_type") : getString("_UI_Risk_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Risk.class)) { + case PepperPackage.RISK__KIND: + case PepperPackage.RISK__DESCRIPTION: + case PepperPackage.RISK__CRITICITY: + case PepperPackage.RISK__ACTION: + case PepperPackage.RISK__OPERATION_DATE: + case PepperPackage.RISK__STATE: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TagFolderItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TagFolderItemProvider.java new file mode 100644 index 0000000..2bff24c --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TagFolderItemProvider.java @@ -0,0 +1,195 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; +import pepper.peppermm.TagFolder; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.TagFolder} object. + * + * @generated + */ +public class TagFolderItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public TagFolderItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_TagFolder_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_TagFolder_name_feature", "_UI_TagFolder_type"), PepperPackage.Literals.TAG_FOLDER__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.TAG_FOLDER__OWNED_TAGS); + childrenFeatures.add(PepperPackage.Literals.TAG_FOLDER__SUB_FOLDERS); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns TagFolder.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/TagFolder.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((TagFolder) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_TagFolder_type") : getString("_UI_TagFolder_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(TagFolder.class)) { + case PepperPackage.TAG_FOLDER__NAME: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PepperPackage.TAG_FOLDER__OWNED_TAGS: + case PepperPackage.TAG_FOLDER__SUB_FOLDERS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(createChildParameter(PepperPackage.Literals.TAG_FOLDER__OWNED_TAGS, PepperFactory.eINSTANCE.createTaskTag())); + + newChildDescriptors.add(createChildParameter(PepperPackage.Literals.TAG_FOLDER__SUB_FOLDERS, PepperFactory.eINSTANCE.createTagFolder())); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskItemProvider.java new file mode 100644 index 0000000..2ffc594 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskItemProvider.java @@ -0,0 +1,123 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Task; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Task} object. + * + * @generated + */ +public class TaskItemProvider extends AbstractTaskItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public TaskItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addDependenciesPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Dependencies feature. + * + * @generated + */ + protected void addDependenciesPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Task_dependencies_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Task_dependencies_feature", "_UI_Task_type"), PepperPackage.Literals.TASK__DEPENDENCIES, true, false, true, null, null, null)); + } + + /** + * This returns Task.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Task.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Task) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Task_type") : getString("_UI_Task_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskTagItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskTagItemProvider.java new file mode 100644 index 0000000..4635413 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TaskTagItemProvider.java @@ -0,0 +1,165 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.TaskTag; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.TaskTag} object. + * + * @generated + */ +public class TaskTagItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public TaskTagItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addPrefixPropertyDescriptor(object); + addSuffixPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Prefix feature. + * + * @generated + */ + protected void addPrefixPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_TaskTag_prefix_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_TaskTag_prefix_feature", "_UI_TaskTag_type"), PepperPackage.Literals.TASK_TAG__PREFIX, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Suffix feature. + * + * @generated + */ + protected void addSuffixPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_TaskTag_suffix_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_TaskTag_suffix_feature", "_UI_TaskTag_type"), PepperPackage.Literals.TASK_TAG__SUFFIX, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns TaskTag.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/TaskTag.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((TaskTag) object).getPrefix(); + return label == null || label.length() == 0 ? getString("_UI_TaskTag_type") : getString("_UI_TaskTag_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(TaskTag.class)) { + case PepperPackage.TASK_TAG__PREFIX: + case PepperPackage.TASK_TAG__SUFFIX: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TeamItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TeamItemProvider.java new file mode 100644 index 0000000..4fcf47b --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/TeamItemProvider.java @@ -0,0 +1,123 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Team; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Team} object. + * + * @generated + */ +public class TeamItemProvider extends ResourceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public TeamItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addMembersPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Members feature. + * + * @generated + */ + protected void addMembersPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Team_members_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Team_members_feature", "_UI_Team_type"), PepperPackage.Literals.TEAM__MEMBERS, true, false, true, null, null, null)); + } + + /** + * This returns Team.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Team.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Team) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Team_type") : getString("_UI_Team_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageArtefactItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageArtefactItemProvider.java new file mode 100644 index 0000000..d7df7d8 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageArtefactItemProvider.java @@ -0,0 +1,276 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperPackage; +import pepper.peppermm.WorkpackageArtefact; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.WorkpackageArtefact} object. + * + * + * @generated + */ +public class WorkpackageArtefactItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public WorkpackageArtefactItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + addNaturePropertyDescriptor(object); + addPlannedDeadlinePropertyDescriptor(object); + addEffectiveDeadLinePropertyDescriptor(object); + addIsInvoiceTriggerPropertyDescriptor(object); + addInvoiceAmountPropertyDescriptor(object); + addResponsiblePropertyDescriptor(object); + addVersionPropertyDescriptor(object); + addIsObsoletePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_WorkpackageArtefact_name_feature"), getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_name_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Description feature. + * + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_WorkpackageArtefact_description_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_description_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__DESCRIPTION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Nature feature. + * + * @generated + */ + protected void addNaturePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_WorkpackageArtefact_nature_feature"), getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_nature_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__NATURE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Planned Deadline feature. + * + * @generated + */ + protected void addPlannedDeadlinePropertyDescriptor(Object object) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_WorkpackageArtefact_plannedDeadline_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_plannedDeadline_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__PLANNED_DEADLINE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Effective Dead Line feature. + * + * @generated + */ + protected void addEffectiveDeadLinePropertyDescriptor(Object object) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_WorkpackageArtefact_effectiveDeadLine_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_effectiveDeadLine_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__EFFECTIVE_DEAD_LINE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Is Invoice Trigger feature. + * + * @generated + */ + protected void addIsInvoiceTriggerPropertyDescriptor(Object object) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_WorkpackageArtefact_isInvoiceTrigger_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_isInvoiceTrigger_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__IS_INVOICE_TRIGGER, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Invoice Amount feature. + * + * @generated + */ + protected void addInvoiceAmountPropertyDescriptor(Object object) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_WorkpackageArtefact_invoiceAmount_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_invoiceAmount_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__INVOICE_AMOUNT, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Responsible feature. + * + * @generated + */ + protected void addResponsiblePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_WorkpackageArtefact_responsible_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_responsible_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__RESPONSIBLE, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Version feature. + * + * @generated + */ + protected void addVersionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_WorkpackageArtefact_version_feature"), getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_version_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__VERSION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Is Obsolete feature. + * + * @generated + */ + protected void addIsObsoletePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_WorkpackageArtefact_isObsolete_feature"), getString("_UI_PropertyDescriptor_description", "_UI_WorkpackageArtefact_isObsolete_feature", "_UI_WorkpackageArtefact_type"), + PepperPackage.Literals.WORKPACKAGE_ARTEFACT__IS_OBSOLETE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns WorkpackageArtefact.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/WorkpackageArtefact.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((WorkpackageArtefact) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_WorkpackageArtefact_type") : getString("_UI_WorkpackageArtefact_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(WorkpackageArtefact.class)) { + case PepperPackage.WORKPACKAGE_ARTEFACT__NAME: + case PepperPackage.WORKPACKAGE_ARTEFACT__DESCRIPTION: + case PepperPackage.WORKPACKAGE_ARTEFACT__NATURE: + case PepperPackage.WORKPACKAGE_ARTEFACT__PLANNED_DEADLINE: + case PepperPackage.WORKPACKAGE_ARTEFACT__EFFECTIVE_DEAD_LINE: + case PepperPackage.WORKPACKAGE_ARTEFACT__IS_INVOICE_TRIGGER: + case PepperPackage.WORKPACKAGE_ARTEFACT__INVOICE_AMOUNT: + case PepperPackage.WORKPACKAGE_ARTEFACT__VERSION: + case PepperPackage.WORKPACKAGE_ARTEFACT__IS_OBSOLETE: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageItemProvider.java b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageItemProvider.java new file mode 100644 index 0000000..ca2dbf3 --- /dev/null +++ b/backend/pepper-edit/src/main/java/pepper/peppermm/provider/WorkpackageItemProvider.java @@ -0,0 +1,315 @@ +/******************************************************************************* + * Copyright (c) 2024, 2026 CEA LIST. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Obeo - initial API and implementation + ******************************************************************************/ +package pepper.peppermm.provider; + +import java.time.Instant; +import java.util.Collection; +import java.util.List; +import java.util.Optional; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import pepper.peppermm.PepperFactory; +import pepper.peppermm.PepperPackage; +import pepper.peppermm.Task; +import pepper.peppermm.Workpackage; + +/** + * This is the item provider adapter for a {@link pepper.peppermm.Workpackage} object. + * + * @generated + */ +public class WorkpackageItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * @generated + */ + public WorkpackageItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * @generated + */ + @Override + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + addStartDatePropertyDescriptor(object); + addEndDatePropertyDescriptor(object); + addLeaderPropertyDescriptor(object); + addParticipantsPropertyDescriptor(object); + addEffortPropertyDescriptor(object); + addProgressPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Workpackage_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_name_feature", "_UI_Workpackage_type"), PepperPackage.Literals.WORKPACKAGE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Description feature. + * + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_description_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_description_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__DESCRIPTION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Start Date feature. + * + * @generated + */ + protected void addStartDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_startDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_startDate_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__START_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the End Date feature. + * + * @generated + */ + protected void addEndDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_endDate_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_endDate_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__END_DATE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Leader feature. + * + * @generated + */ + protected void addLeaderPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_leader_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_leader_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__LEADER, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Participants feature. + * + * @generated + */ + protected void addParticipantsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_participants_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_participants_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__PARTICIPANTS, true, false, true, null, null, null)); + } + + /** + * This adds a property descriptor for the Effort feature. + * + * @generated + */ + protected void addEffortPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_effort_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_effort_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__EFFORT, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Progress feature. + * + * @generated + */ + protected void addProgressPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_Workpackage_progress_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Workpackage_progress_feature", "_UI_Workpackage_type"), + PepperPackage.Literals.WORKPACKAGE__PROGRESS, true, false, false, ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * @generated + */ + @Override + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PepperPackage.Literals.WORKPACKAGE__OUTPUTS); + childrenFeatures.add(PepperPackage.Literals.WORKPACKAGE__OWNED_TASKS); + childrenFeatures.add(PepperPackage.Literals.WORKPACKAGE__OWNED_OBJECTIVES); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Workpackage.gif. + * + * @generated NOT + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, this.getClass().getClassLoader().getResource("icons/full/obj16/Workpackage.svg")); + } + + /** + * + * + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Workpackage) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Workpackage_type") : getString("_UI_Workpackage_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached children and by creating + * a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Workpackage.class)) { + case PepperPackage.WORKPACKAGE__NAME: + case PepperPackage.WORKPACKAGE__DESCRIPTION: + case PepperPackage.WORKPACKAGE__START_DATE: + case PepperPackage.WORKPACKAGE__END_DATE: + case PepperPackage.WORKPACKAGE__EFFORT: + case PepperPackage.WORKPACKAGE__PROGRESS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PepperPackage.WORKPACKAGE__OUTPUTS: + case PepperPackage.WORKPACKAGE__OWNED_TASKS: + case PepperPackage.WORKPACKAGE__OWNED_OBJECTIVES: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + default: + super.notifyChanged(notification); + return; + } + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created + * under this object. + * + * @generated NOT + */ + @Override + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + Task task = PepperFactory.eINSTANCE.createTask(); + task.setName(getString("_UI_New") + " " + getString("_UI_Task_type")); + if (object instanceof Workpackage workpackage) { + Optional optionalTask = workpackage.getOwnedTasks().stream() + .reduce((first, second) -> second) + .filter(filteredTask -> filteredTask.getEndTime() != null && filteredTask.getStartTime() != null); + + if (optionalTask.isPresent()) { + Task lastTask = optionalTask.get(); + task.setStartTime(lastTask.getEndTime()); + task.setEndTime(Instant.ofEpochSecond(2 * lastTask.getEndTime().getEpochSecond() - lastTask.getStartTime().getEpochSecond())); + } else { + String localDateToInstantString = "T00:00:00.00Z"; + if (workpackage.getEndDate() != null && workpackage.getStartDate() != null) { + String endTime = workpackage.getEndDate().toString() + localDateToInstantString; + String startTime = workpackage.getStartDate().toString() + localDateToInstantString; + Instant endInstant = Instant.parse(endTime); + Instant startInstant = Instant.parse(startTime); + task.setStartTime(startInstant); + task.setEndTime(endInstant); + } + } + } + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.WORKPACKAGE__OWNED_TASKS, task)); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.WORKPACKAGE__OUTPUTS, PepperFactory.eINSTANCE.createWorkpackageArtefact())); + + newChildDescriptors.add(this.createChildParameter(PepperPackage.Literals.WORKPACKAGE__OWNED_OBJECTIVES, PepperFactory.eINSTANCE.createObjective())); + } + + /** + * Return the resource locator for this item provider's resources. + * + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return PepperEditPlugin.INSTANCE; + } + +} diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/ExternalStakeholder.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/ExternalStakeholder.svg new file mode 100644 index 0000000..5e3e260 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/ExternalStakeholder.svg @@ -0,0 +1,12 @@ + + + + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/InternalStakeholder.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/InternalStakeholder.svg new file mode 100644 index 0000000..802c2be --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/InternalStakeholder.svg @@ -0,0 +1,5 @@ + + + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/KeyResult.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/KeyResult.svg new file mode 100644 index 0000000..470b827 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/KeyResult.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Objective.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Objective.svg new file mode 100644 index 0000000..8be8191 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Objective.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Organization.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Organization.svg new file mode 100644 index 0000000..b6ea2f6 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Organization.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Person.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Person.svg new file mode 100644 index 0000000..f525de7 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Person.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Project.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Project.svg new file mode 100644 index 0000000..2514b13 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Project.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/ResourceFolder.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/ResourceFolder.svg new file mode 100644 index 0000000..116913b --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/ResourceFolder.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Risk.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Risk.svg new file mode 100644 index 0000000..cad0f6d --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Risk.svg @@ -0,0 +1,45 @@ + + + + + + + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/TagFolder.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/TagFolder.svg new file mode 100644 index 0000000..2d378f5 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/TagFolder.svg @@ -0,0 +1,40 @@ + + + + + + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Task.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Task.svg new file mode 100644 index 0000000..47ae836 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Task.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/TaskTag.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/TaskTag.svg new file mode 100644 index 0000000..0470750 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/TaskTag.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Team.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Team.svg new file mode 100644 index 0000000..c68b7bc --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Team.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/Workpackage.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/Workpackage.svg new file mode 100644 index 0000000..d1cc095 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/Workpackage.svg @@ -0,0 +1 @@ + diff --git a/backend/pepper-edit/src/main/resources/icons/full/obj16/WorkpackageArtefact.svg b/backend/pepper-edit/src/main/resources/icons/full/obj16/WorkpackageArtefact.svg new file mode 100644 index 0000000..3bfdc60 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/icons/full/obj16/WorkpackageArtefact.svg @@ -0,0 +1,52 @@ + + + + + + + + + diff --git a/backend/pepper-edit/src/main/resources/plugin.properties b/backend/pepper-edit/src/main/resources/plugin.properties new file mode 100644 index 0000000..dc8b2f4 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/plugin.properties @@ -0,0 +1,163 @@ +################################################################################ +# Copyright (c) 2024, 2026 CEA LIST. +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Obeo - initial API and implementation +################################################################################ +pluginName = PepperMM Edit Support +providerName = www.example.org + +_UI_CreateChild_text = {0} +_UI_CreateChild_text2 = {1} {0} +_UI_CreateChild_text3 = {1} +_UI_CreateChild_tooltip = Create New {0} Under {1} Feature +_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}. +_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent. + +_UI_PropertyDescriptor_description = The {0} of the {1} + +_UI_Organization_type = Organization +_UI_Resource_type = Resource +_UI_ResourceFolder_type = Resource Folder +_UI_Team_type = Team +_UI_InternalStakeholder_type = Internal Stakeholder +_UI_ExternalStakeholder_type = External Stakeholder +_UI_Person_type = Person +_UI_AbstractTask_type = Abstract Task +_UI_TagFolder_type = Tag Folder +_UI_TaskTag_type = Task Tag +_UI_Task_type = Task +_UI_Objective_type = Objective +_UI_KeyResult_type = Key Result +_UI_Project_type = Project +_UI_Workpackage_type = Workpackage +_UI_WorkpackageArtefact_type = Workpackage Artefact +_UI_Risk_type = Risk +_UI_Unknown_type = Object + +_UI_New = New + +_UI_Unknown_datatype= Value + +_UI_Organization_name_feature = Name +_UI_Organization_ownedProjects_feature = Owned Projects +_UI_Organization_ownedResourceFolders_feature = Owned Resource Folders +_UI_Resource_name_feature = Name +_UI_ResourceFolder_name_feature = Name +_UI_ResourceFolder_ownedResources_feature = Owned Resources +_UI_ResourceFolder_subFolders_feature = Sub Folders +_UI_Team_members_feature = Members +_UI_ExternalStakeholder_goals_feature = Goals +_UI_Person_alias_feature = Alias +_UI_Person_biography_feature = Biography +_UI_Person_imageUrl_feature = Image Url +_UI_AbstractTask_name_feature = Name +_UI_AbstractTask_description_feature = Description +_UI_AbstractTask_startTime_feature = Start Time +_UI_AbstractTask_endTime_feature = End Time +_UI_AbstractTask_progress_feature = Progress +_UI_AbstractTask_computeStartEndDynamically_feature = Compute Start End Dynamically +_UI_AbstractTask_tags_feature = Tags +_UI_AbstractTask_assignedPersons_feature = Assigned Persons +_UI_AbstractTask_assignedTeams_feature = Assigned Teams +_UI_AbstractTask_subTasks_feature = Sub Tasks +_UI_TagFolder_name_feature = Name +_UI_TagFolder_ownedTags_feature = Owned Tags +_UI_TagFolder_subFolders_feature = Sub Folders +_UI_TaskTag_prefix_feature = Prefix +_UI_TaskTag_suffix_feature = Suffix +_UI_Task_dependencies_feature = Dependencies +_UI_Objective_ownedKeyResults_feature = Owned Key Results +_UI_Project_name_feature = Name +_UI_Project_ownedWorkpackages_feature = Owned Workpackages +_UI_Project_ownedObjectives_feature = Owned Objectives +_UI_Project_ownedTagFolders_feature = Owned Tag Folders +_UI_Project_ownedRisks_feature = Owned Risks +_UI_Project_reference_feature = Reference +_UI_Project_description_feature = Description +_UI_Project_leadingUnit_feature = Leading Unit +_UI_Project_participantUnits_feature = Participant Units +_UI_Project_plannifiedClientCopilMeetings_feature = Plannified Client Copil Meetings +_UI_Project_mainProgramBrick_feature = Main Program Brick +_UI_Project_state_feature = State +_UI_Project_clients_feature = Clients +_UI_Project_partners_feature = Partners +_UI_Project_isTransverse_feature = Is Transverse +_UI_Project_leader_feature = Leader +_UI_Project_members_feature = Members +_UI_Project_isSensitive_feature = Is Sensitive +_UI_Project_contractualStartDate_feature = Contractual Start Date +_UI_Project_duration_feature = Duration +_UI_Project_contractualEndDate_feature = Contractual End Date +_UI_Project_effectiveStartDate_feature = Effective Start Date +_UI_Project_effectiveEndDate_feature = Effective End Date +_UI_Project_contractTermExtension_feature = Contract Term Extension +_UI_Project_globalCost_feature = Global Cost +_UI_Project_fundingRate_feature = Funding Rate +_UI_Project_funding_feature = Funding +_UI_Project_manpower_feature = Manpower +_UI_Project_eOTP_feature = EOTP +_UI_Project_statisticOrder_feature = Statistic Order +_UI_Project_internalNeed_feature = Internal Need +_UI_Project_clientNeed_feature = Client Need +_UI_Workpackage_name_feature = Name +_UI_Workpackage_description_feature = Description +_UI_Workpackage_startDate_feature = Start Date +_UI_Workpackage_endDate_feature = End Date +_UI_Workpackage_leader_feature = Leader +_UI_Workpackage_participants_feature = Participants +_UI_Workpackage_effort_feature = Effort +_UI_Workpackage_outputs_feature = Outputs +_UI_Workpackage_ownedTasks_feature = Owned Tasks +_UI_Workpackage_ownedObjectives_feature = Owned Objectives +_UI_Workpackage_progress_feature = Progress +_UI_WorkpackageArtefact_name_feature = Name +_UI_WorkpackageArtefact_description_feature = Description +_UI_WorkpackageArtefact_nature_feature = Nature +_UI_WorkpackageArtefact_plannedDeadline_feature = Planned Deadline +_UI_WorkpackageArtefact_effectiveDeadLine_feature = Effective Dead Line +_UI_WorkpackageArtefact_isInvoiceTrigger_feature = Is Invoice Trigger +_UI_WorkpackageArtefact_invoiceAmount_feature = Invoice Amount +_UI_WorkpackageArtefact_responsible_feature = Responsible +_UI_WorkpackageArtefact_version_feature = Version +_UI_WorkpackageArtefact_isObsolete_feature = Is Obsolete +_UI_Risk_kind_feature = Kind +_UI_Risk_description_feature = Description +_UI_Risk_criticity_feature = Criticity +_UI_Risk_action_feature = Action +_UI_Risk_responsible_feature = Responsible +_UI_Risk_operationDate_feature = Operation Date +_UI_Risk_state_feature = State +_UI_Risk_workpackages_feature = Workpackages +_UI_Unknown_feature = Unspecified + +_UI_WorkpackageArtefactNature_Delivrable_literal = DELIVRABLE +_UI_WorkpackageArtefactNature_Decisional_literal = DECISIONAL +_UI_WorkpackageArtefactNature_ProjectReview_literal = PROJECT_REVIEW +_UI_WorkpackageArtefactNature_Action_literal = ACTION +_UI_WorkpackageArtefactNature_Invoicing_literal = INVOICING +_UI_WorkpackageArtefactNature_ExpenseStatement_literal = EXPENSE_STATEMENT +_UI_WorkpackageArtefactNature_ClientSatisfaction_literal = CLIENT_SATISFACTION +_UI_WorkpackageArtefactNature_Other_literal = OTHER +_UI_RiskKind_Manpower_literal = MANPOWER +_UI_RiskKind_Machine_literal = MACHINE +_UI_RiskKind_Material_literal = MATERIAL +_UI_RiskKind_Measurement_literal = MEASUREMENT +_UI_RiskKind_Method_literal = METHOD +_UI_RiskKind_Mission_literal = MISSION +_UI_RiskKind_Management_literal = MANAGEMENT +_UI_RiskKind_Maintenance_literal = MAINTENANCE +_UI_RiskState_OnGoing_literal = ON_GOING +_UI_RiskState_UnderInstruction_literal = UNDER_INSTRUCTION +_UI_RiskState_StopBeforeTerm_literal = STOP_BEFORE_TERM +_UI_RiskState_Completed_literal = COMPLETED +_UI_ProjectState_OnGoing_literal = ON_GOING +_UI_ProjectState_UnderInstruction_literal = UNDER_INSTRUCTION +_UI_ProjectState_StopBeforeTerm_literal = STOP_BEFORE_TERM +_UI_ProjectState_Completed_literal = COMPLETED diff --git a/backend/pepper-edit/src/main/resources/plugin_fr.properties b/backend/pepper-edit/src/main/resources/plugin_fr.properties new file mode 100644 index 0000000..f0f3ae9 --- /dev/null +++ b/backend/pepper-edit/src/main/resources/plugin_fr.properties @@ -0,0 +1,163 @@ +################################################################################ +# Copyright (c) 2024, 2026 CEA LIST. +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Obeo - initial API and implementation +################################################################################ +pluginName = PepperMM Edit Support +providerName = www.example.org + +_UI_CreateChild_text = {0} +_UI_CreateChild_text2 = {1} {0} +_UI_CreateChild_text3 = {1} +_UI_CreateChild_tooltip = Create New {0} Under {1} Feature +_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}. +_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent. + +_UI_PropertyDescriptor_description = The {0} of the {1} + +_UI_Organization_type = Organization +_UI_Resource_type = Resource +_UI_ResourceFolder_type = Resource Folder +_UI_Team_type = Team +_UI_InternalStakeholder_type = Internal Stakeholder +_UI_ExternalStakeholder_type = External Stakeholder +_UI_Person_type = Person +_UI_AbstractTask_type = Abstract Task +_UI_TagFolder_type = Tag Folder +_UI_TaskTag_type = Task Tag +_UI_Task_type = Task +_UI_Objective_type = Objective +_UI_KeyResult_type = Key Result +_UI_Project_type = Project +_UI_Workpackage_type = Workpackage +_UI_WorkpackageArtefact_type = Workpackage Artefact +_UI_Risk_type = Risk +_UI_Unknown_type = Object + +_UI_New = New + +_UI_Unknown_datatype= Value + +_UI_Organization_name_feature = Nom +_UI_Organization_ownedProjects_feature = Projets +_UI_Organization_ownedResourceFolders_feature = R\u00E9pertoire de resource +_UI_Resource_name_feature = Nom +_UI_ResourceFolder_name_feature = Nom +_UI_ResourceFolder_ownedResources_feature = Ressources +_UI_ResourceFolder_subFolders_feature = Sous r\u00E9pertoires +_UI_Team_members_feature = Membres +_UI_ExternalStakeholder_goals_feature = Buts +_UI_Person_alias_feature = Alias +_UI_Person_biography_feature = Biographie +_UI_Person_imageUrl_feature = Image Url +_UI_AbstractTask_name_feature = Nom +_UI_AbstractTask_description_feature = Description +_UI_AbstractTask_startTime_feature = Date d\u00E9but +_UI_AbstractTask_endTime_feature = Date fin +_UI_AbstractTask_progress_feature = Progr\u00E8s +_UI_AbstractTask_computeStartEndDynamically_feature = Calcul de date dynamique +_UI_AbstractTask_tags_feature = Tags +_UI_AbstractTask_assignedPersons_feature = Personnes Assign\u00E9es +_UI_AbstractTask_assignedTeams_feature = Equipes Assign\u00E9es +_UI_AbstractTask_subTasks_feature = Sous t\u00E2ches +_UI_TagFolder_name_feature = Nom +_UI_TagFolder_ownedTags_feature = Tags +_UI_TagFolder_subFolders_feature = Sous r\u00E9pertoires +_UI_TaskTag_prefix_feature = Prefix +_UI_TaskTag_suffix_feature = Suffix +_UI_Task_dependencies_feature = D\u00E9pendences +_UI_Objective_ownedKeyResults_feature = R\u00E9sultats cl\u00E9 +_UI_Project_name_feature = Nom +_UI_Project_ownedWorkpackages_feature = Workpackages +_UI_Project_ownedObjectives_feature = Objectifs +_UI_Project_ownedTagFolders_feature = Répertoire de tags +_UI_Project_ownedRisks_feature = Risques +_UI_Project_reference_feature = Référence +_UI_Project_description_feature = Description +_UI_Project_leadingUnit_feature = Unité porteuse +_UI_Project_participantUnits_feature = Unités associées +_UI_Project_plannifiedClientCopilMeetings_feature = Des COPIL avec le client sont planifiés +_UI_Project_mainProgramBrick_feature = Brique programe principale +_UI_Project_state_feature = Statut +_UI_Project_clients_feature = Clients +_UI_Project_partners_feature = Partenaires +_UI_Project_isTransverse_feature = Project transverse +_UI_Project_leader_feature = Chef de projet +_UI_Project_members_feature = Membres du projet +_UI_Project_isSensitive_feature = Ce projet est sensible +_UI_Project_contractualStartDate_feature = Date de début contractuelle +_UI_Project_duration_feature = Durée contractuelle(semaines) +_UI_Project_contractualEndDate_feature = Date de fin contractuelle +_UI_Project_effectiveStartDate_feature = Date de début effective +_UI_Project_effectiveEndDate_feature = Date de fin effective +_UI_Project_contractTermExtension_feature = Extention de durée contractuelle(semaines) +_UI_Project_globalCost_feature = Coût global(k\u20AC) +_UI_Project_fundingRate_feature = Taux de financement(%) +_UI_Project_funding_feature = Financement(k\u20AC) +_UI_Project_manpower_feature = Main d'oeuvre(p.m.) +_UI_Project_eOTP_feature = EOTP +_UI_Project_statisticOrder_feature = OS +_UI_Project_internalNeed_feature = Besoin interne +_UI_Project_clientNeed_feature = Besoin client +_UI_Workpackage_name_feature = Nom +_UI_Workpackage_description_feature = Description +_UI_Workpackage_startDate_feature = Date d\u00E9but +_UI_Workpackage_endDate_feature = Date fin +_UI_Workpackage_leader_feature = Leader +_UI_Workpackage_participants_feature = Participants +_UI_Workpackage_effort_feature = Effort +_UI_Workpackage_outputs_feature = Ech\u00E9ances +_UI_Workpackage_ownedTasks_feature = Taches +_UI_Workpackage_ownedObjectives_feature = Objectifs +_UI_Workpackage_progress_feature = Progr\u00E8s +_UI_WorkpackageArtefact_name_feature = Nom +_UI_WorkpackageArtefact_description_feature = Description +_UI_WorkpackageArtefact_nature_feature = Nature +_UI_WorkpackageArtefact_plannedDeadline_feature = Deadline plannifi\u00E9e +_UI_WorkpackageArtefact_effectiveDeadLine_feature = Deadline effective +_UI_WorkpackageArtefact_isInvoiceTrigger_feature = D\u00E9clenche facturation +_UI_WorkpackageArtefact_invoiceAmount_feature = Facturation +_UI_WorkpackageArtefact_responsible_feature = Responsible +_UI_WorkpackageArtefact_version_feature = Version +_UI_WorkpackageArtefact_isObsolete_feature = Est obsol\u00E8te +_UI_Risk_kind_feature = Sorte +_UI_Risk_description_feature = Description +_UI_Risk_criticity_feature = Criticit\u00E9 +_UI_Risk_action_feature = Action +_UI_Risk_responsible_feature = Responsable +_UI_Risk_operationDate_feature = Date d'opération +_UI_Risk_state_feature = Etat +_UI_Risk_workpackages_feature = Workpackages +_UI_Unknown_feature = Unspecified + +_UI_WorkpackageArtefactNature_Delivrable_literal = DELIVRABLE +_UI_WorkpackageArtefactNature_Decisional_literal = DECISIONAL +_UI_WorkpackageArtefactNature_ProjectReview_literal = PROJECT_REVIEW +_UI_WorkpackageArtefactNature_Action_literal = ACTION +_UI_WorkpackageArtefactNature_Invoicing_literal = INVOICING +_UI_WorkpackageArtefactNature_ExpenseStatement_literal = EXPENSE_STATEMENT +_UI_WorkpackageArtefactNature_ClientSatisfaction_literal = CLIENT_SATISFACTION +_UI_WorkpackageArtefactNature_Other_literal = OTHER +_UI_RiskKind_Manpower_literal = MANPOWER +_UI_RiskKind_Machine_literal = MACHINE +_UI_RiskKind_Material_literal = MATERIAL +_UI_RiskKind_Measurement_literal = MEASUREMENT +_UI_RiskKind_Method_literal = METHOD +_UI_RiskKind_Mission_literal = MISSION +_UI_RiskKind_Management_literal = MANAGEMENT +_UI_RiskKind_Maintenance_literal = MAINTENANCE +_UI_RiskState_OnGoing_literal = ON_GOING +_UI_RiskState_UnderInstruction_literal = UNDER_INSTRUCTION +_UI_RiskState_StopBeforeTerm_literal = STOP_BEFORE_TERM +_UI_RiskState_Completed_literal = COMPLETED +_UI_ProjectState_OnGoing_literal = ON_GOING +_UI_ProjectState_UnderInstruction_literal = UNDER_INSTRUCTION +_UI_ProjectState_StopBeforeTerm_literal = STOP_BEFORE_TERM +_UI_ProjectState_Completed_literal = COMPLETED diff --git a/backend/pepper-mm/.classpath b/backend/pepper-mm/.classpath new file mode 100644 index 0000000..76325a9 --- /dev/null +++ b/backend/pepper-mm/.classpath @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/backend/pepper-mm/.project b/backend/pepper-mm/.project new file mode 100644 index 0000000..8333aab --- /dev/null +++ b/backend/pepper-mm/.project @@ -0,0 +1,23 @@ + + + pepper-mm + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/backend/pepper-mm/.settings/org.eclipse.core.resources.prefs b/backend/pepper-mm/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..abdea9a --- /dev/null +++ b/backend/pepper-mm/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding//src/main/resources=UTF-8 +encoding/=UTF-8 diff --git a/backend/pepper-mm/.settings/org.eclipse.core.runtime.prefs b/backend/pepper-mm/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 0000000..a287fef --- /dev/null +++ b/backend/pepper-mm/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,3 @@ +#Mon Sep 24 15:04:19 CEST 2007 +eclipse.preferences.version=1 +line.separator=\n diff --git a/backend/pepper-mm/.settings/org.eclipse.jdt.apt.core.prefs b/backend/pepper-mm/.settings/org.eclipse.jdt.apt.core.prefs new file mode 100644 index 0000000..d4313d4 --- /dev/null +++ b/backend/pepper-mm/.settings/org.eclipse.jdt.apt.core.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.apt.aptEnabled=false diff --git a/backend/pepper-mm/.settings/org.eclipse.jdt.core.prefs b/backend/pepper-mm/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..2ab93cd --- /dev/null +++ b/backend/pepper-mm/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,505 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.builder.annotationPath.allLocations=disabled +org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled +org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore +org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull +org.eclipse.jdt.core.compiler.annotation.nonnull.secondary= +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= +org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable +org.eclipse.jdt.core.compiler.annotation.nullable.secondary= +org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.methodParameters=generate +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.APILeak=warning +org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=warning +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore +org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDefaultCase=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning +org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning +org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error +org.eclipse.jdt.core.compiler.problem.nullReference=warning +org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error +org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore +org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info +org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore +org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning +org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled +org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.processAnnotations=disabled +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=17 +org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false +org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false +org.eclipse.jdt.core.formatter.align_with_spaces=false +org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_enum_constant=0 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_field=49 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_local_variable=49 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_method=49 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_package=49 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_parameter=0 +org.eclipse.jdt.core.formatter.alignment_for_annotations_on_type=49 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assertion_message=0 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0 +org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_module_statements=16 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16 +org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_record_components=16 +org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0 +org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0 +org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_type_annotations=0 +org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0 +org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0 +org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=1 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=false +org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false +org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.indent_tag_description=false +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=120 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert +org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert +org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert +org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert +org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_if_empty +org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_if_empty +org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_if_empty +org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_if_empty +org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false +org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false +org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false +org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never +org.eclipse.jdt.core.formatter.lineSplit=200 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0 +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0 +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0 +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.text_block_indentation=0 +org.eclipse.jdt.core.formatter.use_on_off_tags=true +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true +org.eclipse.jdt.core.formatter.wrap_before_assertion_message_operator=true +org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false +org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true +org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true +org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true +org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true +org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true +org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true +org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true +org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true +org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter diff --git a/backend/pepper-mm/.settings/org.eclipse.jdt.ui.prefs b/backend/pepper-mm/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000..a246427 --- /dev/null +++ b/backend/pepper-mm/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,293 @@ +cleanup.add_all=false +cleanup.add_default_serial_version_id=true +cleanup.add_generated_serial_version_id=false +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=false +cleanup.also_simplify_lambda=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=true +cleanup.array_with_curly=false +cleanup.arrays_fill=false +cleanup.bitwise_conditional_expression=false +cleanup.boolean_literal=false +cleanup.boolean_value_rather_than_comparison=true +cleanup.break_loop=false +cleanup.collection_cloning=false +cleanup.comparing_on_criteria=false +cleanup.comparison_statement=false +cleanup.controlflow_merge=false +cleanup.convert_functional_interfaces=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.convert_to_enhanced_for_loop_if_loop_var_used=true +cleanup.convert_to_switch_expressions=false +cleanup.correct_indentation=true +cleanup.do_while_rather_than_while=true +cleanup.double_negation=false +cleanup.else_if=false +cleanup.embedded_if=false +cleanup.evaluate_nullable=false +cleanup.extract_increment=false +cleanup.format_source_code=true +cleanup.format_source_code_changes_only=false +cleanup.hash=false +cleanup.if_condition=false +cleanup.insert_inferred_type_arguments=false +cleanup.instanceof=false +cleanup.instanceof_keyword=false +cleanup.invert_equals=false +cleanup.join=false +cleanup.lazy_logical_operator=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.map_cloning=false +cleanup.merge_conditional_blocks=false +cleanup.multi_catch=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.no_string_creation=false +cleanup.no_super=false +cleanup.number_suffix=false +cleanup.objects_equals=false +cleanup.one_if_rather_than_duplicate_blocks_that_fall_through=true +cleanup.operand_factorization=false +cleanup.organize_imports=true +cleanup.overridden_assignment=false +cleanup.overridden_assignment_move_decl=true +cleanup.plain_replacement=false +cleanup.precompile_regex=false +cleanup.primitive_comparison=false +cleanup.primitive_parsing=false +cleanup.primitive_rather_than_wrapper=true +cleanup.primitive_serialization=false +cleanup.pull_out_if_from_if_else=false +cleanup.pull_up_assignment=false +cleanup.push_down_negation=false +cleanup.qualify_static_field_accesses_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=false +cleanup.qualify_static_method_accesses_with_declaring_class=true +cleanup.reduce_indentation=false +cleanup.redundant_comparator=false +cleanup.redundant_falling_through_block_end=false +cleanup.remove_private_constructors=true +cleanup.remove_redundant_modifiers=false +cleanup.remove_redundant_semicolons=false +cleanup.remove_redundant_type_arguments=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_array_creation=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_method_parameters=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.return_expression=false +cleanup.simplify_lambda_expression_and_method_ref=false +cleanup.single_used_field=false +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.standard_comparison=false +cleanup.static_inner_class=false +cleanup.strictly_equal_or_different=false +cleanup.stringbuffer_to_stringbuilder=false +cleanup.stringbuilder=false +cleanup.stringbuilder_for_local_vars=true +cleanup.stringconcat_stringbuffer_stringbuilder=false +cleanup.stringconcat_to_textblock=false +cleanup.substring=false +cleanup.switch=false +cleanup.system_property=false +cleanup.system_property_boolean=false +cleanup.system_property_file_encoding=false +cleanup.system_property_file_separator=false +cleanup.system_property_line_separator=false +cleanup.system_property_path_separator=false +cleanup.ternary_operator=false +cleanup.try_with_resource=false +cleanup.unlooped_while=false +cleanup.unreachable_block=false +cleanup.use_anonymous_class_creation=false +cleanup.use_autoboxing=false +cleanup.use_blocks=false +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_directly_map_method=false +cleanup.use_lambda=true +cleanup.use_parentheses_in_expressions=false +cleanup.use_string_is_blank=false +cleanup.use_this_for_non_static_field_access=true +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=true +cleanup.use_this_for_non_static_method_access_only_if_necessary=false +cleanup.use_unboxing=false +cleanup.use_var=false +cleanup.useless_continue=false +cleanup.useless_return=false +cleanup.valueof_rather_than_instantiation=false +cleanup_profile=_Sirius +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_Sirius +formatter_settings_version=21 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=com;fr;java;javax;org; +org.eclipse.jdt.ui.javadoc=true +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates=