# Przygotowanie komputera ## Instalacja node.js https://nodejs.org/en/download ## Instalacja git - Windows - https://git-scm.com/download/win - Konfiguracja: podejdzie programista - https://gitlab.infocity.pl/global/wiki/-/wikis/praca-z-gitlab ## Instalacja VS Code https://code.visualstudio.com ## Konfiguroawanie VS Code - lewy pasek (ciemny) wybrać `Extensions` - poszukać rozszerzenia `Vue - Official` - zainstalować (Install) # Ściągnięcie projektu z GitLab - wejść w adres projektu na GitLab poprzez przeglądarkę, przykładowo dla tego projektu będzie to: https://gitlab.infocity.pl/witkac/libraries/umowa-szablon-test - z lewego paska wybrać opcję "Repository" - w prawym roku pojawi się niebieski przycisk "Clone" - po rozwinięciu pojawi się opcja "Open in your IDE" - "Visual Studio Code (SSH)" - naley wskazać folder nadrzędny dla projektu, zostanie utworzony folder na projekt # Praca z projektem w VS Code - otworzyć folder w Visual Studio Code (menu `File` -> `Open Folder`) - otworzyć Terminal (menu `Terminal` -> `New Terminal`) - uruchomić projekt wpisując w terminalu komendę `npm run dev` i Enter - UWAGA: przed pierszym uruchomieniem nalezy jeszcze uruchomić `npm install` - szablon umowy znajduje się w pliku `views/UmowaPreview/UmowaPreview.vue` - dane do umowy znajdują się plikach `data/Umowa.ts` i `data/Oferta.ts` - aktualna dokumentacja tagów umowy znajduje się tutaj: - https://npm.witkac.pl/-/web/detail/@witkac/document-components - dostępna jest tez lokalnie w projekcie w pliku `node_modules/@witkac/document-components/README.md` # Wysłanie zmian w projekcie - z lewego paska wyboramy opcję `Source Control` - w pole `Message` wpisujemy komentarz jakich zmian dokonaliśmy - wciskamy `Commit` - jak wszystko będzie ok to pojawi się przysisk `Sync Changes` - wciskamy # Ściąganie najnowszych zmian (dokonanych przez inne osoby) - na dolnym (niebieskim) pasku mamy napis `master` i obok niego strzałki, wciskamy, następuje synchrnizacja # Aktualizacja pakietów - gdy pojawi się koniecznośc aktualizacji komponentów tworzących umowę np. po zmianach naley w terminu wpisać komendę - `npm install` # Zmiany w stosunku do `umowa-components` - doszedł tag `w-section` który umożliwia podział dokumentu na sekcje, sekcja to zawsze pełna liczba stron, zwykle używamy do tego aby np. częśc dokumentu miała inną orientację (np. Harmonogram w poziomie) bo włąśnie dla sekcji da się to określić (podobnie jak osobny `w-header` i `w-footer`) - niektóre tagi (jak właśnie `w-preview`) dostały atrybut `schema` żeby wyciągać dane poprzez schemat, czyli zamiast pisać `{{ schema.NazwaZadania.$value` należy to zrobić tak ``. Dlaczego tak jest lepiej ? Chciażby dlatego że w te komponenty wbudowany jest mechanizm porówywania, i w trybie porównywarki zamiast pojedyńczego tekstu pojawią się oba, wcześniejszy i aktualny - w `w-tr` pojawił się atrybut `bg` który możemy sobie zdefiniować w tagu `w-document` i wtedy wszystkie komórki z tym atrybutem (lub całe wiersz bo można ustawić `bg` dla tagu `w-tr`) będa miały zdefiniowany kolor tła