Files
2025-09-30 14:14:52 +03:00

1 line
11 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="675px" preserveAspectRatio="none" style="width:830px;height:675px;background:#FFFFFF;" version="1.1" viewBox="0 0 830 675" width="830px" zoomAndPan="magnify"><defs/><g><!--class IFacade--><g class="entity" data-entity="IFacade" data-source-line="4" data-uid="ent0002" id="entity_IFacade"><rect fill="#F1F1F1" height="123.7813" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="323.1582" x="7" y="7"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="54.5371" x="141.3105" y="24.9951">IFacade</text><line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="329.1582" y1="33.2969" y2="33.2969"/><line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="329.1582" y1="41.2969" y2="41.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="311.1582" x="13" y="58.292">+createNote(title: String, text: String): UUID</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="288.9893" x="13" y="74.5889">+updateNote(id: UUID, text: String): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="196.041" x="13" y="90.8857">+deleteNote(id: UUID): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="230.8359" x="13" y="107.1826">+find(query: String): List&lt;Note&gt;</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="145.2979" x="13" y="123.4795">+get(id: UUID): Note</text></g><!--class NoteFacade--><g class="entity" data-entity="NoteFacade" data-source-line="12" data-uid="ent0003" id="entity_NoteFacade"><rect fill="#F1F1F1" height="42.2969" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="89.5488" x="123.8" y="216.23"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="83.5488" x="126.8" y="234.2251">NoteFacade</text><line style="stroke:#181818;stroke-width:0.5;" x1="124.8" x2="212.3488" y1="242.5269" y2="242.5269"/><line style="stroke:#181818;stroke-width:0.5;" x1="124.8" x2="212.3488" y1="250.5269" y2="250.5269"/></g><!--class NoteRepository--><g class="entity" data-entity="NoteRepository" data-source-line="13" data-uid="ent0005" id="entity_NoteRepository"><rect fill="#F1F1F1" height="123.7813" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="267.8486" x="295.65" y="359.97"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="108.2129" x="375.4679" y="377.9651">NoteRepository</text><line style="stroke:#181818;stroke-width:0.5;" x1="296.65" x2="562.4986" y1="386.2669" y2="386.2669"/><line style="stroke:#181818;stroke-width:0.5;" x1="296.65" x2="562.4986" y1="394.2669" y2="394.2669"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="173.8447" x="301.65" y="411.262">+save(note: Note): UUID</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="255.8486" x="301.65" y="427.5589">+update(id: UUID, text: String): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="162.9004" x="301.65" y="443.8557">+delete(id: UUID): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="176.2031" x="301.65" y="460.1526">+getById(id: UUID): Note</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="129.2539" x="301.65" y="476.4495">+all(): List&lt;Note&gt;</text></g><!--class SearchService--><g class="entity" data-entity="SearchService" data-source-line="20" data-uid="ent0006" id="entity_SearchService"><rect fill="#F1F1F1" height="91.1875" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="263.0703" x="560.04" y="191.78"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="100.1465" x="641.5019" y="209.7751">SearchService</text><line style="stroke:#181818;stroke-width:0.5;" x1="561.04" x2="822.1103" y1="218.0769" y2="218.0769"/><line style="stroke:#181818;stroke-width:0.5;" x1="561.04" x2="822.1103" y1="226.0769" y2="226.0769"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="173.8447" x="566.04" y="243.072">+index(note: Note): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="172.2656" x="566.04" y="259.3689">+remove(id: UUID): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="251.0703" x="566.04" y="275.6657">+search(query: String): List&lt;Note&gt;</text></g><!--class EncryptionService--><g class="entity" data-entity="EncryptionService" data-source-line="25" data-uid="ent0007" id="entity_EncryptionService"><rect fill="#F1F1F1" height="58.5938" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="277.0771" x="248.04" y="208.08"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="126.9023" x="323.1274" y="226.0751">EncryptionService</text><line style="stroke:#181818;stroke-width:0.5;" x1="249.04" x2="524.1171" y1="234.3769" y2="234.3769"/><line style="stroke:#181818;stroke-width:0.5;" x1="249.04" x2="524.1171" y1="242.3769" y2="242.3769"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="265.0771" x="254.04" y="259.372">+checkAccess(userId: UUID): boolean</text></g><!--class Note--><g class="entity" data-entity="Note" data-source-line="28" data-uid="ent0008" id="entity_Note"><rect fill="#F1F1F1" height="123.7813" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="174.333" x="342.41" y="544.75"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="33.1406" x="413.0062" y="562.7451">Note</text><line style="stroke:#181818;stroke-width:0.5;" x1="343.41" x2="515.743" y1="571.0469" y2="571.0469"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69.0771" x="348.41" y="588.042">+id: UUID</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="90.0498" x="348.41" y="604.3389">+title: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="90.5557" x="348.41" y="620.6357">+text: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="157.7529" x="348.41" y="636.9326">+createdAt: DateTime</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="162.333" x="348.41" y="653.2295">+updatedAt: DateTime</text><line style="stroke:#181818;stroke-width:0.5;" x1="343.41" x2="515.743" y1="660.5313" y2="660.5313"/></g><!--reverse link IFacade to NoteFacade--><g class="link" data-entity-1="IFacade" data-entity-2="NoteFacade" data-source-line="12" data-uid="lnk4" id="link_IFacade_NoteFacade"><path d="M168.58,148.94 C168.58,178.82 168.58,194.82 168.58,215.94" fill="none" id="IFacade-backto-NoteFacade" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="none" points="168.58,130.94,162.58,148.94,174.58,148.94,168.58,130.94" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link NoteFacade to NoteRepository--><g class="link" data-entity-1="NoteFacade" data-entity-2="NoteRepository" data-source-line="36" data-uid="lnk9" id="link_NoteFacade_NoteRepository"><path codeLine="36" d="M206.6335,265.9185 C217.1735,273.5185 219.53,275.17 230.58,282.97 C266.46,308.3 306.21,335.93 340.69,359.76" fill="none" id="NoteFacade-backto-NoteRepository" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="196.9,258.9,199.4273,265.6537,206.6335,265.9185,204.1062,259.1647,196.9,258.9" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link NoteFacade to SearchService--><g class="link" data-entity-1="NoteFacade" data-entity-2="SearchService" data-source-line="37" data-uid="lnk10" id="link_NoteFacade_SearchService"><path codeLine="37" d="M190.6943,206.4668 C204.8643,188.0368 220.77,172.24 248.08,161.28 C362.33,115.42 404.79,135.09 525.08,161.28 C553.65,167.5 583.19,179.08 609.31,191.36" fill="none" id="NoteFacade-backto-SearchService" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="183.38,215.98,190.2082,213.6615,190.6943,206.4668,183.8661,208.7853,183.38,215.98" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link NoteFacade to EncryptionService--><g class="link" data-entity-1="NoteFacade" data-entity-2="EncryptionService" data-source-line="38" data-uid="lnk11" id="link_NoteFacade_EncryptionService"><path codeLine="38" d="M225.71,237.37 C237.08,237.37 236.45,237.37 247.81,237.37" fill="none" id="NoteFacade-backto-EncryptionService" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="213.71,237.37,219.71,241.37,225.71,237.37,219.71,233.37,213.71,237.37" style="stroke:#181818;stroke-width:1;"/></g><!--link SearchService to NoteRepository--><g class="link" data-entity-1="SearchService" data-entity-2="NoteRepository" data-source-line="39" data-uid="lnk12" id="link_SearchService_NoteRepository"><path codeLine="39" d="M627.15,283.25 C594.12,306.25 558.3237,331.1911 522.4537,356.1711" fill="none" id="SearchService-to-NoteRepository" style="stroke:#181818;stroke-width:1;"/><polygon fill="#181818" points="517.53,359.6,527.2015,357.7391,521.6331,356.7426,522.6296,351.1742,517.53,359.6" style="stroke:#181818;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="29.7832" x="584.58" y="326.0369">uses</text></g><!--reverse link NoteRepository to Note--><g class="link" data-entity-1="NoteRepository" data-entity-2="Note" data-source-line="40" data-uid="lnk13" id="link_NoteRepository_Note"><path codeLine="40" d="M429.58,496.23 C429.58,515.62 429.58,525.05 429.58,544.43" fill="none" id="NoteRepository-backto-Note" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="429.58,484.23,425.58,490.23,429.58,496.23,433.58,490.23,429.58,484.23" style="stroke:#181818;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="8.271" x="421.1579" y="503.9461">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="6.5" x="423.2796" y="533.8796">*</text></g><!--SRC=[ZL9DJyCm3BtdLqGzbOzAS9qGqj10geGuKFO3iiJRhAL9IT9g1Us_atOjJTi9SKkU_Mo_P-zH0ELek0HY3wWAPbXEkMJMBfqpk2aTf5oh3B-0tX62oe7PCWuqVM6SUV8teVI66s0EthI3sA6JiA2P9wlTBNLmTFtlQa7NwtJL4Cf2z0GKPtYMMsaKJQu02PFS8Bf59UBF4amTK5_HkeU6yTYaxC25p0Od9q9QbUslau9v8I47vMolBiXvXq9RTDhKPycMLH0h7pWNd6dxhwvBclp0JtKgPaFx49Co7WiyTKDcm0pVPs0gvDrQl3Lm70_Pjp2Gw-fYSzlM-SlIlkEpugOk7Fhp2BloFV33adEmDYujc7JeiT5Q0bE_5PfwtQXYC71qGYqG63YScrXwSEKV7vZ3OFmOzdiEDgoJoIudmP67azXCBHaxdYIFqqDPKA_VaWaQtKU-NaAZwwWb_000]--></g></svg>