From fbe4f82517c24d83afebfbd854d6c664b495ea3d Mon Sep 17 00:00:00 2001 From: Chaim Marcus Date: Sun, 29 Mar 2026 20:51:55 +0000 Subject: [PATCH] refactor: migrate client paths to EspoCRM module format Move JS from client/custom/src/modules/{mod}/ to client/custom/modules/{mod}/src/ Move TPL to client/custom/modules/{mod}/res/templates/ Update all define(), createView(), and metadata references from custom:modules/{mod}/... to modules/{mod}/... Co-Authored-By: Claude Opus 4.6 (1M context) --- SmartAssistant-1.0.0.zip | Bin 0 -> 62800 bytes .../src}/views/case/modals/add-memory.js | 2 +- .../views/dashlets/options/smart-assistant.js | 2 +- .../src}/views/dashlets/smart-assistant.js | 2 +- .../smart-assistant/src}/views/floating-chat.js | 4 ++-- .../smart-assistant/src}/views/site/navbar.js | 4 ++-- .../src}/views/stream/notes/smart-action.js | 2 +- .../src}/views/stream/notes/smart-request.js | 2 +- .../src}/views/stream/notes/smart-response.js | 2 +- .../Resources/metadata/clientDefs/App.json | 2 +- .../metadata/dashlets/SmartAssistant.json | 4 ++-- 11 files changed, 13 insertions(+), 13 deletions(-) create mode 100644 SmartAssistant-1.0.0.zip rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/case/modals/add-memory.js (97%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/dashlets/options/smart-assistant.js (80%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/dashlets/smart-assistant.js (97%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/floating-chat.js (99%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/site/navbar.js (81%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/stream/notes/smart-action.js (92%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/stream/notes/smart-request.js (78%) rename files/client/custom/{src/modules/smart-assistant => modules/smart-assistant/src}/views/stream/notes/smart-response.js (90%) diff --git a/SmartAssistant-1.0.0.zip b/SmartAssistant-1.0.0.zip new file mode 100644 index 0000000000000000000000000000000000000000..ac70d44d5d003a4ceb9d0f3578afb9cf9013b69d GIT binary patch literal 62800 zcmb?@b9|;*(spdyNe3O<=%i!Ywr$(CZKq?WW2>7Cu3+4*MQecze=<9U9` zAJ4h!uDYsD-KVOKj5sg|3IG5A1c1H0v&Kr4=ib`;f6{;e0I&c!0G7H|rbdSL4m4)= z)>euNkO06-lHI26i+!e!F33j2;*3l|cx+a}C?7nu#kS5R@TnMRdqN z6l%q=-v8)-M>>{CLFfm+h5SfdWV%d~v6o>z!G5jUMfXvUz#eY@Lk?Mm{eA_;T!K4$ zfzh#a7f(m7MWFj0it{&pgTdLZ$9)4(8pu_-aJ;Is^Ub>_@C@k^9QA5kiuO7u9eQLC zC{b=Pk%=0T&(e7dsQ2gEIkxBJzT9sg znM&^hy0Rprm&YzkqK`F=&1T$r`nJ)H|j6F@nf(za0x}bA7AEOM^Nut0RZ5C z*U{hp`1=>wyN--ZEe!2x|E3(TcjYMl|H}FIzyGP@Uw*G|VQOgQ@F$l+`Ta8bj`j}L zmVa_JjDNG5y`BD_T#?{^Skcnj!12#3knVr6vc09QoddP5y}hZugYKW!G1H$wvisA- z;Qo_n4u+OC7P=098u!mUrM~_Dmj0Oz|LQ(0f8r^fObwm?jt438Z{6*ekoFUAV{U;o z7z+S^*&hHv=uhJrSy<~jm|7WA>znBQjD~-6_n-K#@1Nhr!qZRY@z{cK8xN@coBT)- zZcOm7y%FH^7&HWMz`nTXHO3wS<%(F$R*uK5>Wp~pQO(&t=H)Cf$1=jKt)= zzVFBw+_Aa@<6+MpC*nC+h{w>{3$B>awN|peoN3{JlU79lBpk#}-N?SrhfNB0?TcnT z+nAK+nLq$|%CkpCG+Gb~=sc{Z64`%lb|LC;xzO3c)yEmAGP38P2~NAmOuv6&!X$YZ z;8bq9SR0W7>URDOabH9o2Vy6uITTIf#Y+3M&j9 zL4G&L)xg3^D)=en5c^ysuwA2VufA8l)v8DX2X$Z=LGDB>3;j|s8WvU)`;x)U|UAroSmf4_kP#e zKoiFZn{^4D6%WOw1jXx;B^dUZKraZZ-e zSmyc?IcQ0>E55&^m)F8Gf~7J)cM59D@j%{paJrUeK@Y5!+4eHhDF4AEr;+h3;EN#e zcZ`8+K{&4(XvafANhq3;?xT&86k<{17XXhJrqC218~<(%AZ|&*7}d3DtAK%%F-%7SBh`sjz%nVwH! z`Zk4KQ@iACll!7*dCB%eAGbbnbL%0X>oyNL-R|E-sq~S$KD?N#Ow)Hd4>f}Kb|WIt z?D-z1?N1@56N7l62^|DeMHF+vUK1IGb&%$fV?0se9L(^utO_5>N43^JGmFXH{E+v? zp0p7m6$aEnB$kcqIUhFgBZHjMjSm4v;DM6f_JZgp^MN3M z+dD#hg6i3_v6B+W`Bv|NNHq<^J035?g+X%nxHOATY8-6Qnw2Si!HqH%JSE!7HF7UT((fT34P_9(`T5f7jig}@DnIO1ZXE-OgddF`{ z*6u!QM!KuCN*=}pUz+bprVQQN+-#KUF@1qrb{{9Yae^)(tM(AKRzl^#x8ceXu4=qx zM!_$1>FYXtQ_8)+XiHgZbIFw$6;4O#c%&Zbz%-iEt+7;<3PC@&(S{ON4CM1F7`R3~u4NrCfw+cq#jwg#~Jmz!! z*bBkfWGD_2sS?&(^qOUirGc;xb<0a*`HK%0D^Jcbo4esbP~vO=D__CKj*Wti@&r$J7iK#eYQR>L3TfZ2~OX`R~gS@ z(l^Kj4%b4BGZh>*z+rlLd8Cidvw<@bv~ll#TXFYCEs(2YqfU-O(-js`asvu0kP&$$ zl%B^NFX!`p`cARXevDhv8lsTJH}vwuNF`GB$SU;`l?uxTO^c9%Br#Gl5hlm!AxG_4 zP8V>7PDXDFL;a%LL^$(+riZ*{>#6tDw|@W``WqB3RQk6NMvk6+pf)B{Zqm4vj0HNO zqw~CgLx9HvlHggUl~R+B$A@eFBLa!heet7+IRa-fll#@{!9;KrQOM`01H+To^_;i% zozjwz5ZX#-`DBo1WxYzTVl_(EoiB|{-I{t(y?JM?u1-mr078Kpien5ii?2C0UN}&F z7?6vZ$_cBtL19rY*qJSiJ~P6S!1fX?-c8Z)STZNH3^V6jZSk4I&2msZ7~!bOKl*ec z6MMTUyjAgS88TpGuMsYT6DJU_bn(DkK*`-X(&9j0LsNttMGz2Imu=gtca#I1}0B{X3w8_x9lh+ zNkh3gQkK@JS||+c!F=nq>6`wJ#!0)$%-FnQkc z+FFN4^VD(`#o~m^*-8&tKQS6h_{~vOKX)ZkG@8qpEsx?M(i%om$;tV7dC5sf2$`j2 zZLBbqOQSQlEE&~N#>a!YiDlL$qx2)*7YZB^UMNj8MhQxWE#)H|(Bt1YDp?YzVH$T$R<{96} z1Lv`Vk_7ga4u1xCQz-7M34jE)gKx6bqzb;8d|nGwKYn#0wr(QB%9rcM?KWy)Psj2_ zo0W=iJm6B3Ln4(C7evAIxfQx6hY8#C@n{Au9x%>Wpi3)a{TwCIREZuR=ZFQBKqJ2d zEwAm#<{joF6Ce}WMbilJQRlVE2gv7geuVI+uh~y~>EBU#0@ri&&dMDi^XQsK!`2EX zauq&>nJ4?3Z|w~ai}vyK&K>J{dC!36mKoIc<}O%vC3F|z!hCJ{aOE&=Q_#Z>USMi> zn`<%)Q(7Wq|9RL~nrF+{4pL3L?{j1`eH)yCNsxSUSaU9fmnrx`++oQarIQF`$ZW%< ziVi5l?w3u_C1hoStE_?Hd-fmlPRZGI`c8$T9ejFLzK`3klf4C&O~79`JBad)*>p8s z=8#qN9!_ znn1+^l-;&fmeh1~^HE_qcNzhToA{WQh1}2~&!g5A&6MHjUYXoF#QbOv;4!j7eTOX(n66_~H2K@~UmmS$&k$;^F$rz0m{YjZ5p*@ByaNtLgdp%3YIQ0qaDq zZ|0f9rIgIiD4v!vi*`SoG(5u_#^3IuY}bhal3FrdB$O-m(gcXhm#9=f9}97(n4vwr zi>4nF6}!q!9Ryax^CoQC$vj*$+fK(|HN@Bl%Td2NioPPpcL02e>#{`jyTV7rNLR{O z>|V1e^jQKciUj#)Y>P^r2SsH>ynV2F(obwD(v5594I7~rm zQ-&5IXMF}i>vehh_Dvc#>lg%(us>&IMstck(k@$c^tLTTMSQbju!Ku0IWX^?qXKy7 zX2X|fcRY;b$%jsAmn7$-u1T~$cZtud26un}B7gxh^bswXv_?c13V1hM-@e*54FI6F zM52o7NTxYy_41Y^lj=b69(B*a#joqyUk+#h<-#a^i#A!j21242jKFU$vG8pc1J*!P zE!C$~R|u4NB&PULNq22aUU>+=>@qE6?CTROG#exGeTG<%^1_5U%OdY+7Ng6AWyD;} zb0#D^?nc`~f)ZaOx0U%Bi5>Q~3Nxmzm*aE1{tcAF54}QUMHo3XlO0cgY6o`R1P&lr zR0GV1^OR6QHC>uU{W``kXf#n|J&za;2>8eCs&x{%p@oO%MTaFj%Kl3B!YE*&AHqWt zpAoDMo6;c6I4K*-212F=yO>q0NHB4zrUb+gMSrx5B2h6U&sVYMznH~~d$sKKMJ7Z6 z7czj?AblVY7m@-gno`P}QxV#vi>z8g)wGavFBOcPRy;<^O<6bNP(W@5K{QZfnc|(S zH8|X0mDJj0OWU_@*Kj&?AK>tf=7a-)(SfhDLmElc7>gjr6No#~VWvu6e; zhng{7Y=OuipJ5@WK0>Y*+h{i^mK_wvS3wi0A)Lp_9JEl{PLi|Elr5~GH?s#9qhF*Y8+ZJ8^2%=7iT1!HUh@^gPowy(+%vv}WLLO{(&N5MY^jiOM z^=e@+J6Squg9^W9uXoRz$~y?3hdP_l<<;O}?cM!cC23F*Ij`A17WUyw&bpem3%~_1 zFnuT9^F_bBC(e#DW@yGyr6>A>|~NzHSvlcN^zTk0%aU^nNjH$k4oF1G}m1CmWSVh(FVb$Av-J(-Tc% z5s9mu1YR2ugF<;TJMw9c2wuE3%kHmrSH=>UDbgr~n^2LA+jlu)q}f;;2g@Rpog}Ki zHWX7;HgG2kX8_iJ#ZdV%IGw>g-69jgSMdvzWVX?&9W|XYPR`3|VhRa(yt)rFM7V7qj`Oo4 zYDDBf+e`TEy65*W)KNX@Y>6?KC&M8rB~O4CZmtjP+oQ$?5)&4vi?z}kpf-fi1vccn z;dRqM>3R>9uJBM18pPXKDqbl<^ZfZJHCKg?*_&@8z6G-G&BsO~aqM6TOmsaXfA3_R8cYp>3 z@A5ok_|We9MpyJaX?KcUXk}z?l%39TQe{!S$jYde6ZRi)-O%CzB_;vfU!2W;ZsEkuS=!HYcSpEzuE9#hQWA1a-Tnrq33i?aV_zKgjayF=Le- z?~MxtTgGL+J=|rB9z7LSTEO{V>dW8UlVfT@*;QggfaI^se7VWUzC1ymphs#?%J1Nn zW1=eH$cnYI01*#=z)?E0zBq7id`3&Uz;x~3*s-thc>+wnKf1~_XVgd&!hQ~;N=hnO zhJGHl0SE`?`T+v0#Oj}@nha)vvz}6MN2{--mI`gU%!kR@3t7tKyoVNEGUjMLtw%dE z+XJesUr5%_ou=-PT)IDBJEw7;6y)d z+q(BlI|mS@wRdks6!k*MRL?)wp}l5I^>0f} zbxLxhwlvOu@11655>d*KvpFA1$kvnYcXM_}+8eN%Gq_ix`{rDJyKEtqh`;uLnBpdw zI76+%s$kzg!zG%>qR#)rK|xL=d96M-a0hQ&5Mk4o;Mps>3QA$J0mVIL`3UC8tAO7{ zL){M5tRG_z6Q1+N&ukmtFU%BiWgARIiF8hl&C0=2JdYlaKtvKMRGy(z7^w8F{|hg{ zG;1U;q!&zwvUoj_K}{e74Q(rXq~H!GRRbHV!Tb^=jG9sdhMD)?iLy0({o3{XC@Xi@ z*{Kwg=nDMghpdOh?TQ0Qsd;Fk=E9D-gIc^}yFRKba)yOU+oU1tj6`TUbanV;` zQK$}>XV*j*7<3q3Z(dC|-hvsL;}(1m3BLG&zS=%0A<{sVEU=adZ>7At((2~iAkjAZ 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 literal 0 HcmV?d00001 diff --git a/files/client/custom/src/modules/smart-assistant/views/case/modals/add-memory.js b/files/client/custom/modules/smart-assistant/src/views/case/modals/add-memory.js similarity index 97% rename from files/client/custom/src/modules/smart-assistant/views/case/modals/add-memory.js rename to files/client/custom/modules/smart-assistant/src/views/case/modals/add-memory.js index 329401c..d3ac588 100644 --- a/files/client/custom/src/modules/smart-assistant/views/case/modals/add-memory.js +++ b/files/client/custom/modules/smart-assistant/src/views/case/modals/add-memory.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/case/modals/add-memory', ['views/modal'], function (ModalView) { +define('modules/smart-assistant/views/case/modals/add-memory', ['views/modal'], function (ModalView) { return ModalView.extend({ diff --git a/files/client/custom/src/modules/smart-assistant/views/dashlets/options/smart-assistant.js b/files/client/custom/modules/smart-assistant/src/views/dashlets/options/smart-assistant.js similarity index 80% rename from files/client/custom/src/modules/smart-assistant/views/dashlets/options/smart-assistant.js rename to files/client/custom/modules/smart-assistant/src/views/dashlets/options/smart-assistant.js index 1964b7e..5b432ad 100644 --- a/files/client/custom/src/modules/smart-assistant/views/dashlets/options/smart-assistant.js +++ b/files/client/custom/modules/smart-assistant/src/views/dashlets/options/smart-assistant.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/dashlets/options/smart-assistant', ['views/dashlets/options/base'], function (BaseView) { +define('modules/smart-assistant/views/dashlets/options/smart-assistant', ['views/dashlets/options/base'], function (BaseView) { return BaseView.extend({ diff --git a/files/client/custom/src/modules/smart-assistant/views/dashlets/smart-assistant.js b/files/client/custom/modules/smart-assistant/src/views/dashlets/smart-assistant.js similarity index 97% rename from files/client/custom/src/modules/smart-assistant/views/dashlets/smart-assistant.js rename to files/client/custom/modules/smart-assistant/src/views/dashlets/smart-assistant.js index 70e75d8..fd29790 100644 --- a/files/client/custom/src/modules/smart-assistant/views/dashlets/smart-assistant.js +++ b/files/client/custom/modules/smart-assistant/src/views/dashlets/smart-assistant.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/dashlets/smart-assistant', ['view'], function (View) { +define('modules/smart-assistant/views/dashlets/smart-assistant', ['view'], function (View) { return View.extend({ diff --git a/files/client/custom/src/modules/smart-assistant/views/floating-chat.js b/files/client/custom/modules/smart-assistant/src/views/floating-chat.js similarity index 99% rename from files/client/custom/src/modules/smart-assistant/views/floating-chat.js rename to files/client/custom/modules/smart-assistant/src/views/floating-chat.js index 2eec8e0..e6219dd 100644 --- a/files/client/custom/src/modules/smart-assistant/views/floating-chat.js +++ b/files/client/custom/modules/smart-assistant/src/views/floating-chat.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/floating-chat', ['view'], function (View) { +define('modules/smart-assistant/views/floating-chat', ['view'], function (View) { return View.extend({ @@ -562,7 +562,7 @@ define('custom:modules/smart-assistant/views/floating-chat', ['view'], function if (!this.currentCaseId) return; var self = this; - this.createView('addMemoryModal', 'custom:modules/smart-assistant/views/case/modals/add-memory', { + this.createView('addMemoryModal', 'modules/smart-assistant/views/case/modals/add-memory', { caseId: this.currentCaseId, }, function (view) { view.render(); diff --git a/files/client/custom/src/modules/smart-assistant/views/site/navbar.js b/files/client/custom/modules/smart-assistant/src/views/site/navbar.js similarity index 81% rename from files/client/custom/src/modules/smart-assistant/views/site/navbar.js rename to files/client/custom/modules/smart-assistant/src/views/site/navbar.js index e937c53..895ae12 100644 --- a/files/client/custom/src/modules/smart-assistant/views/site/navbar.js +++ b/files/client/custom/modules/smart-assistant/src/views/site/navbar.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/site/navbar', ['views/site/navbar'], function (NavbarView) { +define('modules/smart-assistant/views/site/navbar', ['views/site/navbar'], function (NavbarView) { return NavbarView.extend({ @@ -17,7 +17,7 @@ define('custom:modules/smart-assistant/views/site/navbar', ['views/site/navbar'] $('body').append($container); } - this.createView('floatingChat', 'custom:modules/smart-assistant/views/floating-chat', { + this.createView('floatingChat', 'modules/smart-assistant/views/floating-chat', { el: '.smart-assistant-fab-container', }, function (view) { view.render(); diff --git a/files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-action.js b/files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-action.js similarity index 92% rename from files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-action.js rename to files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-action.js index ab671fd..67c9669 100644 --- a/files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-action.js +++ b/files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-action.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/stream/notes/smart-action', ['views/stream/note'], function (NoteView) { +define('modules/smart-assistant/views/stream/notes/smart-action', ['views/stream/note'], function (NoteView) { return NoteView.extend({ diff --git a/files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-request.js b/files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-request.js similarity index 78% rename from files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-request.js rename to files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-request.js index 72bbd76..09319c9 100644 --- a/files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-request.js +++ b/files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-request.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/stream/notes/smart-request', ['views/stream/note'], function (NoteView) { +define('modules/smart-assistant/views/stream/notes/smart-request', ['views/stream/note'], function (NoteView) { return NoteView.extend({ diff --git a/files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-response.js b/files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-response.js similarity index 90% rename from files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-response.js rename to files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-response.js index 005da1a..26f41b4 100644 --- a/files/client/custom/src/modules/smart-assistant/views/stream/notes/smart-response.js +++ b/files/client/custom/modules/smart-assistant/src/views/stream/notes/smart-response.js @@ -1,4 +1,4 @@ -define('custom:modules/smart-assistant/views/stream/notes/smart-response', ['views/stream/note'], function (NoteView) { +define('modules/smart-assistant/views/stream/notes/smart-response', ['views/stream/note'], function (NoteView) { return NoteView.extend({ diff --git a/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/clientDefs/App.json b/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/clientDefs/App.json index b9f3929..02b2cc4 100644 --- a/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/clientDefs/App.json +++ b/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/clientDefs/App.json @@ -1,3 +1,3 @@ { - "navbarView": "custom:modules/smart-assistant/views/site/navbar" + "navbarView": "modules/smart-assistant/views/site/navbar" } diff --git a/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/dashlets/SmartAssistant.json b/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/dashlets/SmartAssistant.json index 6585296..d3fa3e4 100644 --- a/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/dashlets/SmartAssistant.json +++ b/files/custom/Espo/Modules/SmartAssistant/Resources/metadata/dashlets/SmartAssistant.json @@ -1,5 +1,5 @@ { - "view": "custom:modules/smart-assistant/views/dashlets/smart-assistant", - "optionsView": "custom:modules/smart-assistant/views/dashlets/options/smart-assistant", + "view": "modules/smart-assistant/views/dashlets/smart-assistant", + "optionsView": "modules/smart-assistant/views/dashlets/options/smart-assistant", "aclScope": "Case" }