Conversation
| return new cl() | ||
| } | ||
|
|
||
| string_to_facets( search: string ) |
There was a problem hiding this comment.
Думаю тут и далее бы тоже не помешала мемоизация.
| for( const facet of val ) | ||
| { | ||
| if( !result[ facet.facet ] ) result[ facet.facet ] = [] | ||
| result[ facet.facet ].push( facet.label ) | ||
| } |
There was a problem hiding this comment.
Кажется тут можно применить $mol_array_groups.
optimade/zero/api.ts
Outdated
| uri_to_facets() | ||
| { | ||
| const res = [] as $optimade_zero_api_Facet[] | ||
| const dict = $mol_mem_cached( () => $mol_state_arg.dict() )! |
There was a problem hiding this comment.
А почему потребовалось брать значение из кеша напрямую? Никто не гарантирует, что в кеше в этот момент что-то будет.
optimade/zero/api.ts
Outdated
|
|
||
| if( search && Object.keys( search ).length ) | ||
| { | ||
| const response = $mol_fetch.json( this.srch_endpoint() + '?' + new URLSearchParams( { q: JSON.stringify( search ) } ).toString() ) as unknown as $optimade_zero_api_SearchResponse |
There was a problem hiding this comment.
Думаю сборку урла имеет смысл вынести в отдельную функцию, чтобы не копипастить её много раз.
There was a problem hiding this comment.
А зачем дублировать одни и те же картинки по нескольку раз?
optimade/zero/htmlstring.view.ts
Outdated
| export class $optimade_zero_htmlstring extends $.$optimade_zero_htmlstring { | ||
| @$mol_mem | ||
| auto(){ | ||
| this.dom_node().innerHTML = this.html() |
There was a problem hiding this comment.
Это очень не безопасно вставлять дикий html из апи в приложение. Лучше использовать $mol_html_view.
optimade/zero/profile.view.tree
Outdated
| event_click? <=> event_logout? null | ||
| login_content $mol_row | ||
| sub / | ||
| <= ltitle @ \Please login (api dont work, CORS error, random SID generated) |
optimade/zero/profile.view.ts
Outdated
| } else { | ||
| this.login_status('Login failed') | ||
| // set random sid | ||
| this.api().user_sid(Math.random().toString(36).substring(2, 15)) |
optimade/zero/search.view.tree
Outdated
| <= SearchButton $mol_button_major | ||
| title <= sblabel @ \Search | ||
| click? <=> search_click? null | ||
| <= Subrowsearch $mol_row |
There was a problem hiding this comment.
Слипшиеся слова довольно сложно читать.
optimade/zero/search.view.ts
Outdated
| this.reload_search() | ||
| this.$.$mol_wait_timeout( 200 ) | ||
|
|
||
| return this.api().selectize( this.word() ).map( el => ({...el, label:el.label.replaceAll('<sup>', '').replaceAll('</sup>', '').replaceAll('<sub>', '').replaceAll('</sub>', '')}) ) |
There was a problem hiding this comment.
Думаю тут можно было бы обойтись и одной регуляркой.
|
пулл реквест обновлён |
|
Пулл реквест обновлен
|
Описание в readme.