{"id":19097475,"url":"https://github.com/danretegan/cat-information-search","last_synced_at":"2025-06-15T11:38:26.498Z","repository":{"id":208017220,"uuid":"719927356","full_name":"danretegan/cat-information-search","owner":"danretegan","description":null,"archived":false,"fork":false,"pushed_at":"2024-01-25T11:57:29.000Z","size":4101,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-03T00:34:28.592Z","etag":null,"topics":["axios","javascript","notiflix","slimselect"],"latest_commit_sha":null,"homepage":"https://danretegan.github.io/cat-information-search/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/danretegan.png","metadata":{"files":{"readme":"README.CatFinder.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-17T07:46:23.000Z","updated_at":"2024-10-15T07:07:53.000Z","dependencies_parsed_at":"2024-11-09T03:40:54.580Z","dependency_job_id":"6c1ca259-55c4-4e4b-bc2c-e1bcf59e6bcc","html_url":"https://github.com/danretegan/cat-information-search","commit_stats":null,"previous_names":["danretegan/goit-js-hw-10","danretegan/cat-information-search"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danretegan%2Fcat-information-search","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danretegan%2Fcat-information-search/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danretegan%2Fcat-information-search/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danretegan%2Fcat-information-search/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danretegan","download_url":"https://codeload.github.com/danretegan/cat-information-search/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240149875,"owners_count":19755755,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["axios","javascript","notiflix","slimselect"],"created_at":"2024-11-09T03:40:47.426Z","updated_at":"2025-02-22T09:04:24.919Z","avatar_url":"https://github.com/danretegan.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Este creat repozitoriul goit-js-hw-10. Când accesați pagina live a unui\nexercițiu, nu există erori sau avertismente în consolă. Proiectul este construit\ncu ajutorul parcel-project-template. Codul este formatat de Prettier.\n\nFișiere start Descărcați fișierul de start index.html cu structura de bază a\nsarcinii. Copiați-l pentru proiectul dvs. în folderul src în\nparcel-project-template.\n\nSarcină - Cat Finder Creați partea frontend a aplicației de căutare a\ninformațiilor despre pisici în funcție de rasă. Vizionați filmulețul\ndemonstrativ al aplicației și folosiți-l ca punct de referință pentru\nfuncționalitatea necesară.\n\nHTTP-cereri Folosiți The Cat API public. Pentru a începe trebuie să vă\nînregistrați și să primiți cheia de acces unică, care trebuie să fie atașată\nfiecărei cereri. Accesați pagina principală și apăsați butonul de mai jos,\nSignup for free, urmați instrucțiunile și cheia va fi trimisă la adresa e-mail\npe care ați furnizat-o.\n\nCheia trebuie utilizată în antetul HTTP x-api-key. Este recomandat ca axios să\nfie utilizat și ca un antet să fie adăugat pentru toate interogările.\n\nimport axios from \"axios\";\n\naxios.defaults.headers.common[\"x-api-key\"] = \"cheia ta\";\n\nColecția de rase Când pagina este încărcată, trebuie să se execute HTTP-cererea\npentru colecția de rase. Pentru asta trebuie efectuată o cerere GET către adresa\nhttps://api.thecatapi.com/v1/breeds, returnând o matrice de obiecte. Dacă\nsolicitarea este reușită, trebuie de completat select.breed-select cu opțiuni,\nastfel încât value opțiunii să conțină id rasei, iar interfața utilizatorului să\nafișeze denumirea rasei.\n\nScrieți funcția fetchBreeds(), care creează o cerere HTTP și returnează Promise\ncu o matrice de rase - rezultatul cererii. Extrageți-o în fișierul cat-api.js și\nexportați-o cu nume.\n\nInformații despre pisică Când utilizatorul selectează o anumită opțiune în\nselector, este necesar să se efectueze o cerere pentru informații complete\ndespre pisică la adresa https://api.thecatapi.com/v1/images/search. Nu uitați să\nspecificați în această interogare parametrul șirului interogării breed_ids cu\nidentificatorul rasei.\n\nIată cum va arăta URL-ul pentru solicitarea tuturor informațiilor despre câine,\nîn funcție de ID-ul rasei.\n\nhttps://api.thecatapi.com/v1/images/search?breed_ids=identificator_rasă\n\nScrieți funcția fetchCatByBreed(breedId), care așteaptă identificarea rasei,\ncreează o cerere HTTP și returnează un promise cu informații despre pisică -\nrezultatul cererii. Extrageți-o în fișierul cat-api.js și exportați-o cu nume.\n\nDacă cererea a fost reușită, sub selector, în blocul div.cat-info va apărea\nimaginea și informații detaliate despre pisică: denumirea rasei, descrierea și\ntemperamentul.\n\nProcesarea stării de încărcare Pe perioada efectuării cererii HTTP, trebuie să\nse afișeze loaderul - elementul p.loader. Dacă nu există cereri sau dacă cererea\ns-a încheiat, loaderul trebuie ascuns. Folosiți clasele CSS suplimentare pentru\nacest lucru.\n\nÎn timp ce se desfășoară cererea pentru lista de rase, select.breed-select\ntrebuie ascuns și trebuie afișat p.loader. În timp ce se desfășoară cererea\ninformațiilor despre pisică, div.cat-info trebuie ascuns și trebuie afișat\np.loader. Când se încheie orice cerere, p.loader trebuie ascuns. Tratarea\nerorilor Dacă utilizatorul întâmpină o eroare la orice solicitare HTTP, de\nexemplu, dacă a căzut rețeaua, a apărut o pierdere de pachete etc, adică\npromise-ul a fost respins, trebuie să se afișeze elementul p.error, și să fie\nascuns la fiecare solicitare ulterioară. Folosiți clase CSS suplimentare pentru\na realiza acest lucru.\n\nPentru a testa dacă eroarea se afișează, modificați adresa cererii adăugând\norice caracter la sfârșit, de exemplu, în loc de\nhttps://api.thecatapi.com/v1/breeds, folosiți\nhttps://api.thecatapi.com/v1/breeds123. Cererea de obținere a listei de rase va\nfi respinsă cu o eroare. La fel și pentru solicitarea informațiilor despre\npisici, în funcție de rasă.\n\nInterfața Adăugați un design minimalist pentru elementele de interfață. În loc\nde select.breed-select, puteți folosi orice librărie cu select, de exemplu\nhttps://slimselectjs.com/ În loc de p.loader, puteți folosi orice librărie cu\nCSS loaders, de exemplu https://cssloaders.github.io/ În loc de p.error, puteți\nfolosi orice librărie cu alerte, de exemplu Notiflix\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanretegan%2Fcat-information-search","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanretegan%2Fcat-information-search","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanretegan%2Fcat-information-search/lists"}