diff --git a/package-lock.json b/package-lock.json index f924bc8cd..0356fc6d8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10584,9 +10584,9 @@ } }, "cordova-plugin-camera": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/cordova-plugin-camera/-/cordova-plugin-camera-5.0.1.tgz", - "integrity": "sha512-9gXyZvI8u9KzsZuqmB8Yw+uheF+7f+usMAwvOMw7L7pqbykg+bm9US5zjhJbwit3A1cSblgZkpBafe5cFiMcTA==" + "version": "git+https://github.com/PieterVanPoyer/cordova-plugin-camera.git#3911ae8a5a7a21a7bef8c80acd7dc4bb65a2163a", + "from": "git+https://github.com/PieterVanPoyer/cordova-plugin-camera.git#bugfix/issue-665-save-instance-restore-bug", + "dev": true }, "cordova-plugin-compat": { "version": "1.2.0", diff --git a/package.json b/package.json index 156e8d886..8e99fe4b8 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,6 @@ "build": "0.1.4", "ci": "^2.1.1", "cordova": "^10.0.0", - "cordova-plugin-camera": "^5.0.1", "cordova-plugin-filepath": "^1.5.8", "cordova-plugin-okhttp": "^2.0.0", "cordova-res": "^0.15.3", @@ -125,6 +124,7 @@ "cordova-ios": "^6.2.0", "cordova-plugin-androidx": "^3.0.0", "cordova-plugin-androidx-adapter": "^1.1.3", + "cordova-plugin-camera": "git+https://github.com/PieterVanPoyer/cordova-plugin-camera.git#bugfix/issue-665-save-instance-restore-bug", "cordova-plugin-compat": "^1.2.0", "cordova-plugin-device": "^2.0.2", "cordova-plugin-dialogs": "^2.0.2", @@ -165,9 +165,6 @@ "cordova-plugin-splashscreen": {}, "cordova-plugin-ionic-keyboard": {}, "cordova-plugin-inappbrowser": {}, - "cordova-plugin-camera": { - "ANDROID_SUPPORT_V4_VERSION": "27.+" - }, "cordova-sqlite-storage": {}, "cordova-plugin-compat": {}, "cordova-plugin-mfp": {}, @@ -178,7 +175,10 @@ "cordova-plugin-mfp-jsonstore": {}, "cordova-plugin-ionic-webview": {}, "cordova-plugin-screen-orientation": {}, - "cordova-plugin-network-information": {} + "cordova-plugin-network-information": {}, + "cordova-plugin-camera": { + "ANDROID_SUPPORT_V4_VERSION": "27.+" + } }, "platforms": [ "browser", diff --git a/readme.md b/readme.md index b56034849..1410e0477 100644 --- a/readme.md +++ b/readme.md @@ -20,11 +20,25 @@ npm install -g cordova-res ## Mobile first dependencies cordova plugin add cordova-plugin-mfp-jsonstore cordova plugin add cordova-plugin-mfp +ionic cordova plugin add cordova-plugin-network-information ## memory leak set NODE_OPTIONS=--max_old_space_size=10096 ``` +## BUG + +Fix cordova-plugin-camera crash + +```bash +## uninstall +npx cordova plugin remove cordova-plugin-camera +## install + +npx cordova plugin add https://github.com/PieterVanPoyer/cordova-plugin-camera/#bugfix/issue-665-save-instance-restore-bug + +``` + ## Start the development server ```bash diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 792a21e41..c8f7c50b9 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -34,6 +34,7 @@ import {MatDatepickerModule} from '@angular/material/datepicker'; // import { FCM } from 'cordova-plugin-fcm-with-dependecy-updated/ionic/ngx'; import {MAT_DATE_FORMATS, MAT_DATE_LOCALE} from '@angular/material/core'; import { NgxMatDateFormats, NGX_MAT_DATE_FORMATS } from '@angular-material-components/datetime-picker'; +import { Network } from '@ionic-native/network/ngx'; import { @@ -100,6 +101,7 @@ import { ScreenOrientation } from '@ionic-native/screen-orientation/ngx'; WebsocketService, ChatService, ScreenOrientation, + Network ], bootstrap: [AppComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA] diff --git a/src/app/home/home.page.ts b/src/app/home/home.page.ts index fc8dd668e..8415ed43f 100644 --- a/src/app/home/home.page.ts +++ b/src/app/home/home.page.ts @@ -8,12 +8,12 @@ import { Event } from '../models/event.model'; import { ProcessesService } from '../services/processes.service'; import { NotificationsService } from '../services/notifications.service'; import { ModalController, AlertController, AnimationController, Platform } from '@ionic/angular'; -import { NavigationExtras, Router, ActivatedRoute } from '@angular/router'; -import { ToastService } from '../services/toast.service'; +import { Router, ActivatedRoute } from '@angular/router'; import { ToDayEventStorage } from '../store/to-day-event-storage.service'; import { DocumentCounterService } from 'src/app/OtherService/document-counter.service' import { PermissionService } from '../OtherService/permission.service'; import { TotalDocumentService, TotalDocumentStore } from '../store/total-document.service'; +// import { NetworkService } from '../services/network.service'; // import * as Sentry from "@sentry/browser"; @@ -74,6 +74,7 @@ export class HomePage implements OnInit { private platform: Platform, private activeroute: ActivatedRoute, public documentCounterService: DocumentCounterService, + // private network: NetworkService, public p: PermissionService) { this.router.events.subscribe((val) => { @@ -87,7 +88,8 @@ export class HomePage implements OnInit { } ngOnInit() { - + /* this.network.checkNetworkConnection; + this.network.checkNetworkDisconnection; */ console.log('Active route ', this.router.url) if (this.platform.is('desktop') || this.platform.is('mobileweb')) { console.log('Notifications not supported') @@ -99,6 +101,8 @@ export class HomePage implements OnInit { } + + mobilefirstConnect() { if(window['WLAuthorizationManager']) { diff --git a/src/app/modals/document-detail/document-detail.page.html b/src/app/modals/document-detail/document-detail.page.html index 58f777140..0c5240aa5 100644 --- a/src/app/modals/document-detail/document-detail.page.html +++ b/src/app/modals/document-detail/document-detail.page.html @@ -79,8 +79,8 @@
- - + +
diff --git a/src/app/models/fileType.ts b/src/app/models/fileType.ts new file mode 100644 index 000000000..2a7fdf744 --- /dev/null +++ b/src/app/models/fileType.ts @@ -0,0 +1,11 @@ +export let FileType: +"image/apng" | +"image/bmp" | +"image/gif" | +"image/jpeg" | +"image/pjpeg" | +"image/png" | +"image/svg+xml" | +"image/tiff" | +"image/webp" | +"image/x-icon" \ No newline at end of file diff --git a/src/app/models/publication.ts b/src/app/models/publication.ts index 98e726232..6e8e65a88 100644 --- a/src/app/models/publication.ts +++ b/src/app/models/publication.ts @@ -10,4 +10,5 @@ export class Publication{ OriginalFileName?: string; FileBase64?:string; FileExtension?: string; + OrganicEntityId?: number; } \ No newline at end of file diff --git a/src/app/models/synchro.ts b/src/app/models/synchro.ts new file mode 100644 index 000000000..69ccd1e8d --- /dev/null +++ b/src/app/models/synchro.ts @@ -0,0 +1,12 @@ +export interface wss{ + + url: string, + type: 'reflect' | 'emit' + header: { + id: string + bluePrint: string, + jwt: string + } + + } + \ No newline at end of file diff --git a/src/app/pages/agenda/event-actions-popover/event-actions-popover.page.html b/src/app/pages/agenda/event-actions-popover/event-actions-popover.page.html index 2be952653..23cf62d3b 100644 --- a/src/app/pages/agenda/event-actions-popover/event-actions-popover.page.html +++ b/src/app/pages/agenda/event-actions-popover/event-actions-popover.page.html @@ -6,7 +6,7 @@
- +
diff --git a/src/app/pages/chat/messages/messages.page.ts b/src/app/pages/chat/messages/messages.page.ts index 2be316a74..52fcb613a 100644 --- a/src/app/pages/chat/messages/messages.page.ts +++ b/src/app/pages/chat/messages/messages.page.ts @@ -1,7 +1,6 @@ import { AfterViewChecked, AfterViewInit, Component, ElementRef, OnDestroy, OnInit, ViewChild } from '@angular/core'; import {ActivatedRoute, Router} from '@angular/router' import { ModalController, NavParams, PopoverController } from '@ionic/angular'; -import { Status } from 'src/app/models/chat/status.model'; import { ContactsPage } from 'src/app/pages/chat/messages/contacts/contacts.page'; import { AlertService } from 'src/app/services/alert.service'; import { AuthService } from 'src/app/services/auth.service'; diff --git a/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.html b/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.html index 965dd11cc..52b14f8ef 100644 --- a/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.html +++ b/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.html @@ -85,7 +85,7 @@
Outras opções
- + diff --git a/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.ts b/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.ts index e1d290589..d321ef1db 100644 --- a/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.ts +++ b/src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.ts @@ -3,8 +3,8 @@ import { ProcessesService } from 'src/app/services/processes.service'; import { AttachmentsService } from 'src/app/services/attachments.service'; import { EventsService } from 'src/app/services/events.service'; import { InAppBrowser } from '@ionic-native/in-app-browser/ngx'; -import { DailyWorkTask, fullTask } from '../../../../models/dailyworktask.model'; -import { ActivatedRoute, NavigationExtras, Router } from '@angular/router'; +import { fullTask } from '../../../../models/dailyworktask.model'; +import { ActivatedRoute, Router } from '@angular/router'; import { Event } from '../../../../models/event.model'; import { MenuController, ModalController, PopoverController } from '@ionic/angular'; @@ -293,8 +293,9 @@ export class DespachoPrPage implements OnInit { sendExpedienteToPending(){ this.processes.SetTaskToPending(this.serialNumber).subscribe(res=>{ - this.goBack(); + this.popoverController.dismiss('close') this.toastService.successMessage('Processo enviado para pendentes') + this.goBack() },()=>{ this.toastService.badRequest('Processo não encontrado') @@ -486,8 +487,6 @@ export class DespachoPrPage implements OnInit { } - console.log('alert ...'+ JSON.stringify(res)) - })) } diff --git a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.html b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.html index c0db47fc9..310721a0b 100644 --- a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.html +++ b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.html @@ -70,16 +70,16 @@
- + @@ -88,7 +88,7 @@
- +
@@ -98,7 +98,7 @@
- +
@@ -107,7 +107,7 @@
- +
diff --git a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts index 2aa472aef..e35fa01ae 100644 --- a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts +++ b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts @@ -239,7 +239,7 @@ export class DespachoPage implements OnInit { this.despachoService.sendExpedienteToPending(this.serialnumber).subscribe(res=>{ this.goBack(); - this.toastService.successMessage('Processo enviado para despacho') + this.toastService.successMessage() }, error => { this.toastService.badRequest("Processo não enviado para despacho") diff --git a/src/app/pages/gabinete-digital/discart-expedient-modal/discart-expedient-modal.page.ts b/src/app/pages/gabinete-digital/discart-expedient-modal/discart-expedient-modal.page.ts index 803ddd2aa..936b0f32e 100644 --- a/src/app/pages/gabinete-digital/discart-expedient-modal/discart-expedient-modal.page.ts +++ b/src/app/pages/gabinete-digital/discart-expedient-modal/discart-expedient-modal.page.ts @@ -1,7 +1,5 @@ import { Component, OnInit } from '@angular/core'; -import { Router } from '@angular/router'; -import { ModalController, NavParams } from '@ionic/angular'; -import { ProcessesService } from 'src/app/services/processes.service'; +import { ModalController } from '@ionic/angular'; @Component({ selector: 'app-discart-expedient-modal', @@ -9,23 +7,22 @@ import { ProcessesService } from 'src/app/services/processes.service'; styleUrls: ['./discart-expedient-modal.page.scss'], }) export class DiscartExpedientModalPage implements OnInit { + serialNumber:string; folderId:string; action:string; + constructor( - private modalController: ModalController, - private processes:ProcessesService, - private router:Router, - ) { - } + private modalController: ModalController + ) { } - ngOnInit() { - } - close(){ + ngOnInit() {} + + close() { this.modalController.dismiss('No'); } - save(){ + save() { this.modalController.dismiss('Yes'); } diff --git a/src/app/pages/gabinete-digital/event-list/approve-event-modal/approve-event-modal.page.html b/src/app/pages/gabinete-digital/event-list/approve-event-modal/approve-event-modal.page.html index 4dbed3ce7..0e22a2fe3 100644 --- a/src/app/pages/gabinete-digital/event-list/approve-event-modal/approve-event-modal.page.html +++ b/src/app/pages/gabinete-digital/event-list/approve-event-modal/approve-event-modal.page.html @@ -124,6 +124,6 @@
- +
diff --git a/src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page.html b/src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page.html index e484d578e..112d7f4de 100644 --- a/src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page.html +++ b/src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page.html @@ -93,13 +93,13 @@
Solicitar revisão
Outras opções
- + - +
@@ -107,7 +107,7 @@
- +
diff --git a/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html b/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html index c613e0d65..05f4a3b9f 100644 --- a/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html +++ b/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html @@ -116,7 +116,7 @@
- +
diff --git a/src/app/pages/gabinete-digital/gabinete-digital.page.scss b/src/app/pages/gabinete-digital/gabinete-digital.page.scss index 09467c78e..85eb31969 100644 --- a/src/app/pages/gabinete-digital/gabinete-digital.page.scss +++ b/src/app/pages/gabinete-digital/gabinete-digital.page.scss @@ -4,7 +4,6 @@ ion-content{ --padding-start:15px; */ /* --padding-bottom:15px; */ /* --background:#ecf8ff; */ - --background: #ecf8ff; } ion-segment{ overflow: auto; @@ -121,6 +120,8 @@ ion-segment-button{ background:#ecf8ff; overflow:hidden; padding: 0 !important; + border-top-left-radius: 25px; + border-top-right-radius: 25px; .aside-wrapper{ overflow: hidden; diff --git a/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.html b/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.html index 6753b7446..f9a7c35d0 100644 --- a/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.html +++ b/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.html @@ -84,8 +84,8 @@
- - + + @@ -94,8 +94,8 @@
- - + + @@ -104,8 +104,8 @@
- - + + @@ -121,8 +121,8 @@
- - + + diff --git a/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.ts b/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.ts index e0d039108..5d967d6a3 100644 --- a/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.ts +++ b/src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.ts @@ -212,7 +212,7 @@ export class PedidoPage implements OnInit { this.goBack() } - alert(JSON.stringify(res)+' nada') + // alert(JSON.stringify(res)+' nada') })) } diff --git a/src/app/pages/publications/new-publication/new-publication.page.html b/src/app/pages/publications/new-publication/new-publication.page.html index 74e54add6..1a52f2db2 100644 --- a/src/app/pages/publications/new-publication/new-publication.page.html +++ b/src/app/pages/publications/new-publication/new-publication.page.html @@ -42,6 +42,20 @@ -->
+
+
+ image +
+
+
{{publication.OriginalFileName}}.{{publication.FileExtension}}
+
75 Kb
+
+
+
X
+
+ +
+
@@ -54,7 +68,7 @@
- +
@@ -63,7 +77,7 @@
-
+ diff --git a/src/app/pages/publications/new-publication/new-publication.page.scss b/src/app/pages/publications/new-publication/new-publication.page.scss index c4a9f8a30..f4dbabc70 100644 --- a/src/app/pages/publications/new-publication/new-publication.page.scss +++ b/src/app/pages/publications/new-publication/new-publication.page.scss @@ -134,4 +134,32 @@ font-size: 25px; line-height: normal; letter-spacing: normal; color: #000; - } \ No newline at end of file + } + + + + + + +.picture{ + .post-img{ + width: 60px; + } + .picture-file-name{ + font-size: 15px; + color: #0d89d1; + } + .size{ + color: #cecece; + font-size: 13px; + } +} + +.container-title{ + font-size: 15px; + font-weight: bold; +} +.hide-desktop{ + display: block; +} + diff --git a/src/app/pages/publications/new-publication/new-publication.page.ts b/src/app/pages/publications/new-publication/new-publication.page.ts index e80885009..aec77b737 100644 --- a/src/app/pages/publications/new-publication/new-publication.page.ts +++ b/src/app/pages/publications/new-publication/new-publication.page.ts @@ -15,6 +15,8 @@ import { ToastService } from 'src/app/services/toast.service'; import { FormControl, FormGroup, Validators } from '@angular/forms'; import { ThemePalette } from '@angular/material/core'; import { formatDate } from 'src/plugin/momentG.js' +import { FileLoaderService } from 'src/app/services/file/file-loader.service'; +import { FileToBase64Service } from 'src/app/services/file/file-to-base64.service'; @Component({ selector: 'app-new-publication', @@ -66,6 +68,8 @@ export class NewPublicationPage implements OnInit { private publications: PublicationsService, private camera: Camera, private toastService: ToastService, + private fileLoaderService: FileLoaderService, + private fileToBase64Service: FileToBase64Service ) { this.publicationType = this.navParams.get('publicationType'); @@ -100,6 +104,22 @@ export class NewPublicationPage implements OnInit { }); } + + laodPicture() { + const input = this.fileLoaderService.createInput({ + accept: ['image/apng', 'image/jpeg', 'image/png'] + }) + + input.onchange = async () => { + const file = this.fileLoaderService.getFirstFile(input) + + const imageData = await this.fileToBase64Service.convert(file) + this.capturedImage = imageData; + this.capturedImageTitle = file.name + }; + + } + getPicture() { const options: CameraOptions = { quality: 90, diff --git a/src/app/pages/publications/publications.page.ts b/src/app/pages/publications/publications.page.ts index 55fe93adf..0c85a3de9 100644 --- a/src/app/pages/publications/publications.page.ts +++ b/src/app/pages/publications/publications.page.ts @@ -1,6 +1,6 @@ import { Component, OnInit } from '@angular/core'; import { Router, NavigationEnd } from '@angular/router'; -import { ModalController, PopoverController } from '@ionic/angular'; +import { ModalController } from '@ionic/angular'; import { PublicationFolder } from 'src/app/models/publicationfolder'; import { PublicationsService } from 'src/app/services/publications.service'; import { NewActionPage } from './new-action/new-action.page'; diff --git a/src/app/pages/publications/view-publications/view-publications.page.ts b/src/app/pages/publications/view-publications/view-publications.page.ts index 36d7382f5..1888cb060 100644 --- a/src/app/pages/publications/view-publications/view-publications.page.ts +++ b/src/app/pages/publications/view-publications/view-publications.page.ts @@ -3,6 +3,7 @@ import { ActivatedRoute, Router } from '@angular/router'; import { ModalController } from '@ionic/angular'; import { Publication } from 'src/app/models/publication'; import { PublicationFolder } from 'src/app/models/publicationfolder'; +import { PublicationPipe } from 'src/app/pipes/publication.pipe'; import { PublicationsService } from 'src/app/services/publications.service'; import { PublicationEventFolderStorage } from 'src/app/store/publication-event-folder.service'; import { PublicationListStorage } from 'src/app/store/publication-list.service'; @@ -29,12 +30,13 @@ export class ViewPublicationsPage implements OnInit { publicationEventFolderStorage = PublicationEventFolderStorage publicationTravelFolderService = PublicationTravelFolderStore + publicationPipe = new PublicationPipe() + constructor( private modalController: ModalController, private publications: PublicationsService, private activatedRoute: ActivatedRoute, - private router: Router ) - { + private router: Router) { this.item = new PublicationFolder(); this.activatedRoute.paramMap.subscribe(params => { @@ -55,9 +57,10 @@ export class ViewPublicationsPage implements OnInit { } this.getPublicationDetail(); - setTimeout(() => { - this.getPublications(); - }, 3000); + setTimeout(() => { + this.getPublications(); + }, 3000); + } ngOnChanges() { @@ -101,35 +104,15 @@ export class ViewPublicationsPage implements OnInit { this.showLoader = true; const folderId = this.folderId this.publications.GetPublications(this.folderId).subscribe(res=>{ - console.log(res); - let data = []; + this.publicationList = new Array(); + res.forEach(element => { - let itemImage = { - title: 'Title', - url: "data:image/jpg;base64," + element.FileBase64, - format: 'png' - } - let item: Publication = { - "DateIndex": element.DateIndex, - "DocumentId":element.DocumentId, - "ProcessId":element.ProcessId, - "Title":element.Title, - "Message": element.Message, - "DatePublication": element.DatePublication, - /* image:itemImage, */ - "FileBase64": "data:image/jpg;base64," + element.FileBase64, - "OriginalFileName": '', - "FileExtension": '', - } + let item: Publication = this.publicationPipe.itemList(element) this.publicationList.push(item); - data.push(item) - }); - console.log(folderId); - this.publicationListStorage.add(folderId, this.publicationList) this.showLoader = false; diff --git a/src/app/pipes/pipes.module.ts b/src/app/pipes/pipes.module.ts index 11b36ec89..6d5416e45 100644 --- a/src/app/pipes/pipes.module.ts +++ b/src/app/pipes/pipes.module.ts @@ -3,10 +3,11 @@ import { FilterPipe } from './filter.pipe'; import { SearchDocumentPipe } from './search-document.pipe'; import { CustomTaskPipe } from './custom-task.pipe'; import { EventPipe } from './event.pipe'; +import { PublicationPipe } from './publication.pipe'; @NgModule({ - declarations: [FilterPipe, SearchDocumentPipe, CustomTaskPipe, EventPipe], + declarations: [FilterPipe, SearchDocumentPipe, CustomTaskPipe, EventPipe, PublicationPipe], exports: [FilterPipe], imports: [] }) diff --git a/src/app/pipes/publication.pipe.spec.ts b/src/app/pipes/publication.pipe.spec.ts new file mode 100644 index 000000000..26fc30029 --- /dev/null +++ b/src/app/pipes/publication.pipe.spec.ts @@ -0,0 +1,8 @@ +import { PublicationPipe } from './publication.pipe'; + +describe('PublicationPipe', () => { + it('create an instance', () => { + const pipe = new PublicationPipe(); + expect(pipe).toBeTruthy(); + }); +}); diff --git a/src/app/pipes/publication.pipe.ts b/src/app/pipes/publication.pipe.ts new file mode 100644 index 000000000..6a52ba4cb --- /dev/null +++ b/src/app/pipes/publication.pipe.ts @@ -0,0 +1,29 @@ +import { Pipe, PipeTransform } from '@angular/core'; +import { Publication } from 'src/app/models/publication'; + +@Pipe({ + name: 'publication' +}) +export class PublicationPipe implements PipeTransform { + + transform(value: unknown, ...args: unknown[]): unknown { + return null; + } + + itemList(element ): Publication { + return { + "DateIndex": element.DateIndex, + "DocumentId":element.DocumentId, + "ProcessId":element.ProcessId, + "Title":element.Title, + "Message": element.Message, + "DatePublication": element.DatePublication, + /* image:itemImage, */ + "FileBase64": "data:image/jpg;base64," + element.FileBase64, + "OriginalFileName": '', + "FileExtension": '', + "OrganicEntityId": element.OrganicEntityId + } + } + +} diff --git a/src/app/services/file/file-loader.service.spec.ts b/src/app/services/file/file-loader.service.spec.ts new file mode 100644 index 000000000..b3d2db03e --- /dev/null +++ b/src/app/services/file/file-loader.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { FileLoaderService } from './file-loader.service'; + +describe('FileLoaderService', () => { + let service: FileLoaderService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(FileLoaderService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/file/file-loader.service.ts b/src/app/services/file/file-loader.service.ts new file mode 100644 index 000000000..ca3a0f897 --- /dev/null +++ b/src/app/services/file/file-loader.service.ts @@ -0,0 +1,43 @@ +import { Injectable } from '@angular/core'; +import { FileType } from 'src/app/models/fileType'; + + +interface createInput { + type?: string + accept: typeof FileType[] +} + +@Injectable({ + providedIn: 'root' +}) +export class FileLoaderService { + + nice : typeof FileType + constructor() { } + + + createInput(param:createInput): HTMLInputElement { + + let input = document.createElement('input'); + input.type = param.type || 'file'; + input.accept = param.accept.join(', ') + + + // input.onchange = () => { + // // you can use this method to get file and perform respective operations + // let files = Array.from(input.files); + // console.log(files); + // }; + + input.click(); + + return input + + } + + getFirstFile(input: HTMLInputElement) { + let files = Array.from(input.files); + return files[0] + } + +} diff --git a/src/app/services/file/file-to-base64.service.spec.ts b/src/app/services/file/file-to-base64.service.spec.ts new file mode 100644 index 000000000..727e8e7c8 --- /dev/null +++ b/src/app/services/file/file-to-base64.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { FileToBase64Service } from './file-to-base64.service'; + +describe('FileToBase64Service', () => { + let service: FileToBase64Service; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(FileToBase64Service); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/file/file-to-base64.service.ts b/src/app/services/file/file-to-base64.service.ts new file mode 100644 index 000000000..53d7675b6 --- /dev/null +++ b/src/app/services/file/file-to-base64.service.ts @@ -0,0 +1,19 @@ +import { Injectable } from '@angular/core'; + +@Injectable({ + providedIn: 'root' +}) +export class FileToBase64Service { + + constructor() { } + + convert(file) { + return new Promise((resolve, reject) => { + const reader = new FileReader(); + reader.readAsDataURL(file); + reader.onload = () => resolve(reader.result); + reader.onerror = error => reject(error); + }); + + } +} diff --git a/src/app/services/network.service.spec.ts b/src/app/services/network.service.spec.ts new file mode 100644 index 000000000..2c8c63926 --- /dev/null +++ b/src/app/services/network.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { NetworkService } from './network.service'; + +describe('NavigationService', () => { + let service: NetworkService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(NetworkService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/src/app/services/network.service.ts b/src/app/services/network.service.ts new file mode 100644 index 000000000..78b32ba50 --- /dev/null +++ b/src/app/services/network.service.ts @@ -0,0 +1,31 @@ +import { Injectable } from '@angular/core'; +import { Network } from '@ionic-native/network/ngx'; +import { Platform } from '@ionic/angular'; +import { fromEvent, merge, of, Observable } from 'rxjs'; +import { mapTo } from 'rxjs/operators'; + +@Injectable({ + providedIn: 'root' +}) +export class NetworkService { + + constructor( + private network: Network) { } + + checkNetworkConnection(){ + this.network.onConnect().subscribe((value) => { + + document.body.style.setProperty(`--color`, "#0782C9"); + + console.log('network connected!',value); + }); + } + + checkNetworkDisconnection(){ + this.network.onDisconnect().subscribe((value) => { + document.body.style.setProperty(`--color`, "#eeeb30"); + console.log('network was disconnected :-('),value; + + }); + } +} \ No newline at end of file diff --git a/src/app/services/publications.service.ts b/src/app/services/publications.service.ts index f89044eaf..8ca9e4145 100644 --- a/src/app/services/publications.service.ts +++ b/src/app/services/publications.service.ts @@ -5,6 +5,7 @@ import { AuthService } from '../services/auth.service'; import { User } from '../models/user.model'; import { Observable, throwError } from 'rxjs'; import { catchError } from 'rxjs/operators' +import { Publication } from '../models/publication'; @Injectable({ providedIn: 'root' @@ -38,7 +39,7 @@ export class PublicationsService { return this.http.get(`${geturl}`, options); } - UpdatePresidentialAction(body:any){ + UpdatePresidentialAction(body:any) { const geturl = environment.apiURL + 'presidentialActions'; let options = { @@ -86,7 +87,7 @@ export class PublicationsService { headers: this.headers, params: params }; - return this.http.get(`${geturl}`, options) + return this.http.get(`${geturl}`, options) } GetPublicationById( publicationId:any){ diff --git a/src/app/services/rules/publication.service.spec.ts b/src/app/services/rules/publication.service.spec.ts new file mode 100644 index 000000000..3d3effb95 --- /dev/null +++ b/src/app/services/rules/publication.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { PublicationService } from './publication.service'; + +describe('PublicationService', () => { + let service: PublicationService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(PublicationService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/rules/publication.service.ts b/src/app/services/rules/publication.service.ts new file mode 100644 index 000000000..0470a7dfa --- /dev/null +++ b/src/app/services/rules/publication.service.ts @@ -0,0 +1,9 @@ +import { Injectable } from '@angular/core'; + +@Injectable({ + providedIn: 'root' +}) +export class PublicationService { + + constructor() { } +} diff --git a/src/app/services/socket/synchro.service.ts b/src/app/services/socket/synchro.service.ts index 18645fb84..3d9d261eb 100644 --- a/src/app/services/socket/synchro.service.ts +++ b/src/app/services/socket/synchro.service.ts @@ -24,9 +24,14 @@ export class SynchroService { public conected = false private url: string = '' callback = function(){} + private _connected = false; constructor(){} + get connected() { + return this._connected + } + setUrl() { let header ={ @@ -55,7 +60,13 @@ export class SynchroService { } private onopen = () =>{ + document.body.style.setProperty(`--color`, "#0782C9"); + document.body.style.setProperty(`--color2`, "#45BAFF"); + document.body.style.setProperty(`--color3`, "#0782C9"); + document.body.style.setProperty(`--color4`, "#0782c9f0"); + document.body.style.setProperty(`--color5`, "#45BAFF"); console.log('open ======================= welcome to socket server') + this._connected = true } @@ -85,7 +96,14 @@ export class SynchroService { // event.code is usually 1006 in this case console.log('[close] Connection died'); console.log('Reconnect') + document.body.style.setProperty(`--color`, "#ffb703"); + document.body.style.setProperty(`--color2`, "#ffb703"); + document.body.style.setProperty(`--color3`, "#ffb703"); + document.body.style.setProperty(`--color4`, "#ffb703"); + document.body.style.setProperty(`--color5`, "#ffb703"); + this._connected = false this.connect() + } }, 100); } diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.html b/src/app/shared/gabinete-digital/despachos/despachos.page.html index d2896f812..c161a0c78 100644 --- a/src/app/shared/gabinete-digital/despachos/despachos.page.html +++ b/src/app/shared/gabinete-digital/despachos/despachos.page.html @@ -17,7 +17,6 @@ refreshingSpinner="circles" refreshingText="A actualizar..."> - +
diff --git a/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts b/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts index 1cb557183..93477dfb9 100644 --- a/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts +++ b/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts @@ -80,6 +80,9 @@ export class PendentesPage implements OnInit { } async viewTaskDetails({ SerialNumber, WorkflowName, activityInstanceName }:customTask) { + + console.log(SerialNumber, WorkflowName, activityInstanceName) + if(WorkflowName == 'Despacho') { this.router.navigate(['/home/gabinete-digital/despachos',SerialNumber,'gabinete-digital']); } diff --git a/src/app/shared/popover/despachos-options/despachos-options.page.html b/src/app/shared/popover/despachos-options/despachos-options.page.html index 2a5d61f06..362b2db56 100644 --- a/src/app/shared/popover/despachos-options/despachos-options.page.html +++ b/src/app/shared/popover/despachos-options/despachos-options.page.html @@ -9,7 +9,7 @@
- +
@@ -19,7 +19,7 @@
- +
@@ -28,7 +28,7 @@
- +
diff --git a/src/app/shared/popover/despachos-options/despachos-options.page.ts b/src/app/shared/popover/despachos-options/despachos-options.page.ts index 3456398ce..cacb43cf9 100644 --- a/src/app/shared/popover/despachos-options/despachos-options.page.ts +++ b/src/app/shared/popover/despachos-options/despachos-options.page.ts @@ -62,7 +62,7 @@ export class DespachosOptionsPage implements OnInit { cssClass: classs, }); await modal.present(); - modal.onDidDismiss().then(res=>{ + modal.onDidDismiss().then( res => { this.goBack(); }); } @@ -70,6 +70,7 @@ export class DespachosOptionsPage implements OnInit { sendExpedienteToPending(){ this.popoverController.dismiss(); this.processes.SetTaskToPending(this.task.SerialNumber).subscribe(res=>{ + this.toastService.successMessage() console.log(res); this.close(); },()=>{ diff --git a/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.html b/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.html index 8b4952619..191626ccf 100644 --- a/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.html +++ b/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.html @@ -13,13 +13,13 @@ - +
- +
diff --git a/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.ts b/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.ts index 11881ffb2..843591d9e 100644 --- a/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.ts +++ b/src/app/shared/popover/despachos-pr-options/despachos-pr-options.page.ts @@ -97,7 +97,8 @@ export class DespachosPrOptionsPage implements OnInit { sendExpedienteToPending() { this.processes.SetTaskToPending(this.serialNumber).subscribe(res=>{ console.log(res); - this.close(); + this.toastService.successMessage() + this.popoverController.dismiss('close') },()=>{ this.toastService.badRequest('Processo não encontrado') diff --git a/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html b/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html index e2f80ef8f..cf9e5f9d6 100644 --- a/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html +++ b/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html @@ -11,14 +11,14 @@
- +
- - + +
diff --git a/src/app/shared/popover/opts-expediente/opts-expediente.page.html b/src/app/shared/popover/opts-expediente/opts-expediente.page.html index a2cf25007..774c57043 100644 --- a/src/app/shared/popover/opts-expediente/opts-expediente.page.html +++ b/src/app/shared/popover/opts-expediente/opts-expediente.page.html @@ -12,7 +12,7 @@ - +
@@ -20,12 +20,12 @@ - +
- +
diff --git a/src/app/shared/popover/request-options/request-options.page.html b/src/app/shared/popover/request-options/request-options.page.html index 4213a7996..7105a6e4f 100644 --- a/src/app/shared/popover/request-options/request-options.page.html +++ b/src/app/shared/popover/request-options/request-options.page.html @@ -10,8 +10,8 @@
- - + + @@ -20,8 +20,8 @@
- - + + @@ -30,8 +30,8 @@
- - + + @@ -48,8 +48,8 @@
- - + + diff --git a/src/app/shared/popover/request-options/request-options.page.ts b/src/app/shared/popover/request-options/request-options.page.ts index ff2211654..cf4b91daf 100644 --- a/src/app/shared/popover/request-options/request-options.page.ts +++ b/src/app/shared/popover/request-options/request-options.page.ts @@ -31,7 +31,6 @@ export class RequestOptionsPage implements OnInit { private navParams: NavParams, private processes: ProcessesService, private activatedRoute: ActivatedRoute, - private animationController: AnimationController, private toastService: ToastService, private router: Router, public p: PermissionService, @@ -72,18 +71,13 @@ export class RequestOptionsPage implements OnInit { } close() { - if( window.innerWidth < 801) { - this.modalController.dismiss('close'); - } else { - this.modalController.dismiss('close'); - } - - // this.router.navigate(['/home/gabinete-digital/pedidos']); + this.popoverController.dismiss('close') } sendExpedienteToPending() { this.processes.SetTaskToPending(this.task.SerialNumber).subscribe(res=>{ console.log(res); + this.toastService.successMessage() this.close(); },()=>{ diff --git a/src/app/shared/popover/searched-document-options/searched-document-options.page.html b/src/app/shared/popover/searched-document-options/searched-document-options.page.html index 113e1d03a..a712dbd6e 100644 --- a/src/app/shared/popover/searched-document-options/searched-document-options.page.html +++ b/src/app/shared/popover/searched-document-options/searched-document-options.page.html @@ -1,7 +1,7 @@
- - + +
diff --git a/src/app/shared/publication/new-action/new-action.page.html b/src/app/shared/publication/new-action/new-action.page.html index 361402fbd..7a8b68999 100644 --- a/src/app/shared/publication/new-action/new-action.page.html +++ b/src/app/shared/publication/new-action/new-action.page.html @@ -31,13 +31,12 @@
@@ -46,7 +45,6 @@ @@ -76,7 +74,6 @@ displayFormat="D MMM YYYY H:mm" minuteValues="0,15,30,45" monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez" - min="{{minDate}}" max="2025"> @@ -84,7 +81,6 @@ diff --git a/src/app/shared/publication/new-action/new-action.page.ts b/src/app/shared/publication/new-action/new-action.page.ts index 79587e598..733434a1b 100644 --- a/src/app/shared/publication/new-action/new-action.page.ts +++ b/src/app/shared/publication/new-action/new-action.page.ts @@ -24,8 +24,6 @@ export class NewActionPage implements OnInit { public showSeconds = false; public touchUi = false; public enableMeridian = false; - public minDate = new Date().toISOString().slice(0,10) - public maxDate: any; public stepHour = 1; public stepMinute = 5; public stepSecond = 5; diff --git a/src/app/shared/publication/new-publication/new-publication.page.html b/src/app/shared/publication/new-publication/new-publication.page.html index 783d56d80..10dd8c922 100644 --- a/src/app/shared/publication/new-publication/new-publication.page.html +++ b/src/app/shared/publication/new-publication/new-publication.page.html @@ -16,7 +16,7 @@
-
+
@@ -29,7 +29,7 @@
Fotografia Anexada
-
+
image
@@ -43,26 +43,32 @@
- - - + - - +
diff --git a/src/app/shared/publication/new-publication/new-publication.page.ts b/src/app/shared/publication/new-publication/new-publication.page.ts index db2e9b480..404f73f20 100644 --- a/src/app/shared/publication/new-publication/new-publication.page.ts +++ b/src/app/shared/publication/new-publication/new-publication.page.ts @@ -8,7 +8,8 @@ import { PhotoService } from 'src/app/services/photo.service'; import { Camera, CameraOptions } from '@ionic-native/camera/ngx'; import { ToastService } from 'src/app/services/toast.service'; import { FormControl, FormGroup, Validators } from '@angular/forms'; - +import { FileLoaderService } from 'src/app/services/file/file-loader.service' +import { FileToBase64Service } from 'src/app/services/file/file-to-base64.service'; @Component({ selector: 'app-new-publication', templateUrl: './new-publication.page.html', @@ -45,15 +46,15 @@ export class NewPublicationPage implements OnInit { capturedImageTitle:any; constructor( - private modalController: ModalController, public photoService: PhotoService, private publications: PublicationsService, private camera: Camera, - private animationController: AnimationController, private toastService: ToastService, - ) { - this.publicationTitle = 'Nova Publicação'; - } + private fileLoaderService: FileLoaderService, + private fileToBase64Service: FileToBase64Service + ) { + this.publicationTitle = 'Nova Publicação'; + } ngOnInit() { if(this.publicationType == '3'){ @@ -88,7 +89,7 @@ export class NewPublicationPage implements OnInit { } - takePicture(){ + takePicture() { const options: CameraOptions = { quality: 90, destinationType: this.camera.DestinationType.DATA_URL, @@ -99,9 +100,7 @@ export class NewPublicationPage implements OnInit { } this.camera.getPicture(options).then((imageData) => { - // imageData is either a base64 encoded string or a file URI - // If it's base64 (DATA_URL): - let base64Image = 'data:image/jpeg;base64,' + imageData; + this.capturedImage = imageData; this.capturedImageTitle = new Date().getTime() + '.jpeg'; }, (err) => { @@ -109,27 +108,20 @@ export class NewPublicationPage implements OnInit { }); } - getPicture(){ - const options: CameraOptions = { - quality: 90, - sourceType: this.camera.PictureSourceType.PHOTOLIBRARY, - destinationType: this.camera.DestinationType.DATA_URL, - encodingType: this.camera.EncodingType.JPEG, - mediaType: this.camera.MediaType.PICTURE, - targetWidth: 720, - targetHeight: 720, - } - this.camera.getPicture(options).then((imageData) => { - // imageData is either a base64 encoded string or a file URI - // If it's base64 (DATA_URL): - let base64Image = 'data:image/jpeg;base64,' + imageData; - this.capturedImage = imageData; - this.capturedImageTitle = new Date().getTime() + '.jpeg'; - }, (err) => { - console.log(err); - }); - } + laodPicture() { + const input = this.fileLoaderService.createInput({ + accept: ['image/apng', 'image/jpeg', 'image/png'] + }) + + input.onchange = async () => { + const file = this.fileLoaderService.getFirstFile(input) + const imageData = await this.fileToBase64Service.convert(file) + this.capturedImage = imageData; + this.capturedImageTitle = file.name + }; + + } runValidation() { @@ -190,7 +182,7 @@ export class NewPublicationPage implements OnInit { } } - else if (!this.publication.OriginalFileName) { + else if (!this.publication.OriginalFileName) { // this.publication = { DateIndex: this.publication.DateIndex, DocumentId:this.publication.DocumentId, @@ -198,6 +190,7 @@ export class NewPublicationPage implements OnInit { Title: this.pub.Title, Message: this.pub.Message, DatePublication: this.publication.DatePublication, + OriginalFileName: this.capturedImageTitle, // OriginalFileName: this.publication.OriginalFileName, // FileBase64: this.publication.FileBase64, // FileExtension: 'jpeg', @@ -286,10 +279,10 @@ export class NewPublicationPage implements OnInit { this.capturedImage = ''; } setTitle(){ - if(this.publicationType == '1'){ + if(this.publicationType == '1') { this.publicationTitle = 'Nova Publicação Rápida'; } - else if(this.publicationType == '2'){ + else if(this.publicationType == '2') { this.publicationTitle = 'Nova Publicação'; } else if(this.publicationType == '3') { @@ -309,33 +302,4 @@ export class NewPublicationPage implements OnInit { } - /* async openGallery() { - const modal = await this.modalController.create({ - component: GalleryPage, - componentProps:{ - }, - cssClass: 'new-publication', - backdropDismiss: false - }); - await modal.present(); - modal.onDidDismiss(); - } */ - - /* async takePicture(){ - const image = await Plugins.Camera.getPhoto({ - quality: 100, - allowEditing: false, - resultType: CameraResultType.DataUrl, - source: CameraSource.Camera - }); - console.log(image); - - this.photo = this.sanitizer.bypassSecurityTrustResourceUrl(image && (image.dataUrl)); - } */ - - - - - - } diff --git a/src/app/shared/publication/view-publications/view-publications.page.ts b/src/app/shared/publication/view-publications/view-publications.page.ts index 3555473d5..3cf0268f5 100644 --- a/src/app/shared/publication/view-publications/view-publications.page.ts +++ b/src/app/shared/publication/view-publications/view-publications.page.ts @@ -9,6 +9,7 @@ import { NewPublicationPage } from 'src/app/pages/publications/new-publication/n import { PublicationListStorage } from 'src/app/store/publication-list.service' import { PublicationEventFolderStorage } from 'src/app/store/publication-event-folder.service'; import { PublicationTravelFolderStore } from 'src/app/store/publication-travel-folder.service'; +import { PublicationPipe } from 'src/app/pipes/publication.pipe'; @Component({ selector: 'app-view-publications', templateUrl: './view-publications.page.html', @@ -31,16 +32,17 @@ export class ViewPublicationsPage implements OnInit { @Output() goBacktoPublicationDetails = new EventEmitter(); - publicationListStorage = PublicationListStorage // publicationEventFolderStorage = PublicationEventFolderStorage publicationTravelFolderService = PublicationTravelFolderStore + publicationPipe = new PublicationPipe() + constructor( private loadingController: LoadingService, private modalController: ModalController, - private publications: PublicationsService, + private publications: PublicationsService ) { this.item = new PublicationFolder(); } @@ -82,38 +84,23 @@ export class ViewPublicationsPage implements OnInit { } getPublicationDetail() { - let allActions = this.publicationEventFolderStorage.list.concat(this.publicationTravelFolderService.list) - this.item = allActions.find((e)=> e.ProcessId == this.folderId); + + setTimeout(() => { + let allActions = this.publicationEventFolderStorage.list.concat(this.publicationTravelFolderService.list) + this.item = allActions.find((e)=> e.ProcessId == this.folderId); + },100); } getPublications() { this.showLoader = true; - const folderId = this.folderId - this.publications.GetPublications(folderId).subscribe(res=> { this.publicationList = new Array(); res.forEach(element => { - let itemImage = { - title: 'Title', - url: "data:image/jpg;base64," + element.FileBase64, - format: 'png' - } - let item: Publication = { - "DateIndex": element.DateIndex, - "DocumentId":element.DocumentId, - "ProcessId":element.ProcessId, - "Title":element.Title, - "Message": element.Message, - "DatePublication": element.DatePublication, - /* image:itemImage, */ - "FileBase64": "data:image/jpg;base64," + element.FileBase64, - "OriginalFileName": '', - "FileExtension": '', - } + let item: Publication = this.publicationPipe.itemList(element) this.publicationList.push(item); }); diff --git a/src/global.scss b/src/global.scss index 841dad997..2810984a5 100644 --- a/src/global.scss +++ b/src/global.scss @@ -730,13 +730,20 @@ app-header-no-search .ion-toolbar{ overflow-y: auto !important; } */ +:root { + --color : hsl(202, 93%, 41%); + --color2: #45BAFF; + --color3: #0782C9; + --color4: #0782c9f0; + --color5: #45BAFF; + } -body, .blue-background{ background: #0782C9 !important;} +body, .blue-background{ background: var(--color) !important;} @media only screen and (min-width: 1365px) { body{ - background: linear-gradient(270deg, #45BAFF 0%, #0782C9 23.44%, rgba(7, 130, 201, 0.9425) 78.13%, #45BAFF 100%) !important; + background: linear-gradient(270deg, var(--color2) 0%, var(--color3) 23.44%, var(--color4) 78.13%, var(--color5) 100%) !important; } .blue-background { background: linear-gradient(270deg, #45BAFF 0%, #0782C9 23.44%, rgba(7, 130, 201, 0.9425) 78.13%, #45BAFF 100%) !important;