Skip to content

Commit

Permalink
fix(import-export): add missing imports
Browse files Browse the repository at this point in the history
fix(print): pdf height-width undefined

https://stackoverflow.com/questions/51487855/jspdf-width-height-show-undefined-when-set
fix(context): locale do not contains common keys (infra-geo-ouverte#192)
fix(layer-list): remove empty space above the list - fix issue infra-geo-ouverte#187 (infra-geo-ouverte#190)
feat(map): Prevent zooming on result if already contained in map extent (infra-geo-ouverte#193)

* feat(*) Prevent zooming on result if already contained im map extent

* refactor(*) refactor zoomif to zoomIfOutMapExtent & interface to enum

* fix(overlay) zoom if outside map extent

* refactor(demo) set to false because it is not provided in search module.
fix(datasource): always lowercase type
fix(search-layer): fix search layer type
refactor(*): remove unused files
chore(release): ignore untracked files
fix(context): stop propagation on button
fix(context): fix default context
fix(metadata): define metadata in layerOptions
fix(getCapabilities): merge getCapabilities and json options
feat(search-source): Provide interface for reseautq (infra-geo-ouverte#199)
feat(overlay): Feature zoom if not in extent based on feature geometry.  (infra-geo-ouverte#198)

* fix(overlay) prevent false extent overlap. Validate to coordinate level

* fix(overlay) The zoom behave is now based on geometry, not on extent.

* feat(search) Provide a zoom Level threshold to trigger zoom on feature

* fix(demo) nominatim as a enabled source

* fix(overlay) Enabling a  parameter to overide the default zoom behavior

* refactor(demo) Forgot to provideDataSourceSearchSource to demo.

* fix(overlay) click feature intersection validation

* refactor(demo) Enabling a parameter to overide the default zoom behavior

* feat(context) provide zoom to feature for sidenav

* fix(context) Validation if geometry available.

* fic(overlay) Validation if geometry available

* fix(overlay) wrong condition on geometry simplification

* rename zoomLevelTriggerFeatureZoom to zoomMaxOnSelect

* rename zoomLevelTriggerFeatureZoom to zoomMaxOnSelect
fix(ogc-filter): Fix for Angular 6 and adjustements for minilib (infra-geo-ouverte#186)

* refactor(map) a more customizable way to add overlay

* feat(wkt service) refactor and adding ways to return wkt objects

* fix(ogc-fillter interface and class) refactor interfaces and operators

* refactor(ogc-filter) bing map to ogcfilter.

* (feat) feature color used as a extent (0000 vs gray) and autorefresh

* fix(download-service) with right properties

* feat(ogc-filter) Autorefresh toggle feature extent and bind map

* refactor(wfs) interface for outputFormatDownload

* ui(ogc-filter) updating demo with proper params.

* fix(ogc-filter) Moving to angular 6 and selectionChange on select

* i18n(ogc-filter) translation for feature extent.

* feat(ogc-filter-form) AutoRefresh on change, feature extent overlay

* refactor(*) sourcefields

* refactor(wms-datasource)managing sourcefield for wms

* refactor(ogc-filter) isOgcFilterable/filtersAreEditable enabled/editable

* fix(wfs) not using filters when filters are disabled.

* refactor(ogc-filter) ogcFilters: {enabled: true,editable: true,...}

* fix(wfs) default value for ogcfilters

* ui(ogc-filter) cleaner example

* ui(ogc-filter) refresh button removed due to autorefresh on change.

* feat(ogc-filter) refactor and defining a cleaner way for refresh events

* refactor(*)move wfs-service usage from ogc-filter.service to datasources

* fix(wkt-service) Wrong regex. Was excluding some SNRC

* feat(datasource) providing data wfs-service to datasources

* fix(download-service) Adjustement on interface and services params.

* feat(wms wfs)  wfs for wms source and common interfaces on wms and wfs

* fix(filterable-datasource) Let filterable layer apply active filters.

* refactor(ogc-fliter) adjustements for wms with linked wfs

* fix(ogc-filter) active filter geometry footprint on init

* refactor(ogc-filter) various interfaces

* fix(ogc-filter) fixing wrong conflict resolution.

* fic(ogc-filter-button) Fix button integration

* fix(ogc-filter-button) fix button integration into layer-list

* fix(ogc-filter-button) download button shown.

* ui(ogc-filter) hide spatial extent button if no geometry active.

* fix(ogc-filter-button) fix button integration into layer-list

* Update layer.component.ts

* Update ogc-filter.component.ts

* lint code

* Update map.ts

* remove inused import

* fix position buttons layer
fix(ogc-filter-button) Placement and duplicated
fix(ogc-filter-button)  wrong map provided. Using map from directive.
fix(searc-result) Default Behavior on focus
feat(igo-toast) provite zoom to feature for mobile devices
fix(message-service) Attempt to fix Issue infra-geo-ouverte#194
feat(notifications): upgrade angular-notifications
fix(layer-list): fix css of the sorting button and filter on mobile
fix(time-filter): take current date if min is not defined
fix(time-filter): get options from capabilities
fix(css): add padding to forms
refactor(search-result)Provide interface for search-results (focusFirst)
fix(context-service) enable tools options configuration
fix(reseautq) fix false call due to regex remplacement.
feat(backdrop): let the backdrop be shown on any media instead of on mobiles only (infra-geo-ouverte#202)
feat(toolbar): toolbar emit a click event as well as the usual select event (infra-geo-ouverte#201)
fix(WMTS): GetCapbilities import error (infra-geo-ouverte#205)

* fix WMTS GetCapbilities import error

* remove unnecessary import
fix(toolbar): rename toolbar click event to trigger to avoid overriding the default click event (infra-geo-ouverte#206)
fix(import-export): fix drop file on map
fix(context): send type layer to api
fix(context): rename order to zIndex
refactor(query): Moving from displayField to sourceOptions.queryTitle (infra-geo-ouverte#208)

* fix)(datasource-interface) enable displayField for vector or wfs Source

* refactor(query) Moving from displayField to sourceOptions.queryTitle

* refactor(datasource.interface) displayField (use queryTitle instead)

* refactor(query) console & remove title

* refactor(reseau-transport-quebec) decrecated empty observable
feat(wms-datasources) a way to bypass info_format given for getinfo
feat(custom-html) building custom html from param.
feat(about-tool) Adding a new tool named About
ui(custom-html) default padding in pixels
fix(custom-html): add padding
fix(ogc-filter) WMS with linked wfs
fic(ogc-filter) fix  geometry fieldname
fix(dropGeoFile): directive not working (build prod - aot)
  • Loading branch information
ulysseskao committed Oct 25, 2018
1 parent 38af356 commit d7f5dcd
Show file tree
Hide file tree
Showing 119 changed files with 16,826 additions and 669 deletions.
34 changes: 33 additions & 1 deletion demo/src/app/context/context/context.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,46 @@
</mat-card-content>

<igo-map-browser
igoMapBrowserBinding
igoMapContext
igoLayerContext
[map]="map">
igoOverlay
igoQuery
[map]="map"
(query)="handleQueryResults($event)">
<igo-zoom-button [map]="map" color="primary"></igo-zoom-button>
<igo-geolocate-button [map]="map" color="primary"></igo-geolocate-button>
</igo-map-browser>

<igo-panel title="Contexts list">
<igo-context-list igoContextListBinding></igo-context-list>
</igo-panel>

<igo-panel title="Layers">
<igo-layer-list igoLayerListBinding>
<ng-template #igoLayerItemToolbar let-layer="layer">
<igo-metadata-button [layer]="layer"></igo-metadata-button>
</ng-template>
</igo-layer-list>
</igo-panel>

<igo-panel title="Features list">
<igo-feature-list
igoFeatureListBinding
[focusFirst]="true"
(focus)="handleFeatureFocus($event)"
(select)="handleFeatureSelect($event)">
</igo-feature-list>
<button
mat-icon-button
panelRightButton
(click)="clearFeature()">
<mat-icon>close</mat-icon>
</button>
</igo-panel>

<igo-panel title="Details">
<igo-feature-details igoFeatureDetailsBinding></igo-feature-details>
</igo-panel>

</mat-card>
4 changes: 4 additions & 0 deletions demo/src/app/context/context/context.component.scss
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,7 @@ igo-map-browser {
width: 800px;
height: 300px;
}

igo-panel {
margin-bottom: 5px;
}
27 changes: 24 additions & 3 deletions demo/src/app/context/context/context.component.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import { Component } from '@angular/core';

import { LanguageService } from '@ximple/igo2-core';
import { IgoMap } from '@ximple/igo2-geo';

import { IgoMap, OverlayService, Feature, FeatureService } from '@ximple/igo2-geo';
@Component({
selector: 'app-context',
templateUrl: './context.component.html',
Expand All @@ -23,6 +22,28 @@ export class AppContextComponent {
};

constructor(
private languageService: LanguageService
private languageService: LanguageService,
private overlayService: OverlayService,
private featureService: FeatureService
) {}

clearFeature() {
this.featureService.clear();
this.overlayService.clear();
}

handleQueryResults(results) {
const features: Feature[] = results.features;
if (features.length) {
this.featureService.setFeatures(features);
}
}

handleFeatureFocus(feature: Feature) {
this.overlayService.setFeatures([feature]);
}

handleFeatureSelect(feature: Feature) {
this.overlayService.setFeatures([feature]);
}
}
23 changes: 20 additions & 3 deletions demo/src/app/context/context/context.module.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,19 @@
import { NgModule } from '@angular/core';
import { MatCardModule, MatButtonModule } from '@angular/material';
import {
MatCardModule,
MatButtonModule,
MatIconModule
} from '@angular/material';

import { IgoPanelModule } from '@ximple/igo2-common';
import { IgoMapModule } from '@ximple/igo2-geo';
import { IgoPanelModule } from '@igo2/common';
import {
IgoMapModule,
IgoLayerModule,
IgoMetadataModule,
IgoOverlayModule,
IgoQueryModule,
IgoFeatureModule
} from '@ximple/igo2-geo';
import { IgoContextManagerModule } from '@ximple/igo2-context';

import { AppContextComponent } from './context.component';
Expand All @@ -14,8 +25,14 @@ import { AppContextRoutingModule } from './context-routing.module';
AppContextRoutingModule,
MatCardModule,
MatButtonModule,
MatIconModule,
IgoPanelModule,
IgoMapModule,
IgoLayerModule,
IgoMetadataModule,
IgoOverlayModule,
IgoQueryModule,
IgoFeatureModule,
IgoContextManagerModule
],
exports: [AppContextComponent]
Expand Down
3 changes: 2 additions & 1 deletion demo/src/app/geo/feature/feature.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import {
IgoMap,
DataSourceService,
LayerService,
OverlayAction,
OverlayService,
Feature,
FeatureType,
Expand Down Expand Up @@ -105,6 +106,6 @@ export class AppFeatureComponent {
}

handleFeatureSelect(feature: Feature) {
this.overlayService.setFeatures([feature], 'zoom');
this.overlayService.setFeatures([feature], OverlayAction.ZoomIfOutMapExtent);
}
}
1 change: 1 addition & 0 deletions demo/src/app/geo/layer/layer.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<ng-template #igoLayerItemToolbar let-layer="layer">
<igo-metadata-button [layer]="layer"></igo-metadata-button>
<igo-download-button [layer]="layer"></igo-download-button>
<igo-ogc-filter-button [layer]="layer"></igo-ogc-filter-button>
</ng-template>

</igo-layer-list>
Expand Down
103 changes: 86 additions & 17 deletions demo/src/app/geo/layer/layer.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,10 @@ import {
DataSourceService,
LayerService,
WMSDataSourceOptions,
MetadataDataSourceOptions
LayerOptions,
WFSDataSourceOptions,
OgcFilterableDataSourceOptions,
MetadataLayerOptions
} from '@ximple/igo2-geo';

@Component({
Expand Down Expand Up @@ -46,12 +49,49 @@ export class AppLayerComponent {
);
});

interface WFSoptions
extends WFSDataSourceOptions,
OgcFilterableDataSourceOptions {}

const wfsDatasource: WFSoptions = {
type: 'wfs',
url: 'https://geoegl.msp.gouv.qc.ca/igo2/api/ws/igo_gouvouvert.fcgi',
params: {
featureTypes: 'vg_observation_v_autre_wmst',
fieldNameGeometry: 'geometry',
maxFeatures: 10000,
version: '2.0.0',
outputFormat: 'geojson_utf8',
outputFormatDownload: 'shp'
},
ogcFilters: {
enabled: true,
editable: true,
filters: {
operator: 'PropertyIsEqualTo',
propertyName: 'code_municipalite',
expression: '10043'
}
}
};

this.dataSourceService
.createAsyncDataSource(wfsDatasource)
.subscribe(dataSource => {
const layer: LayerOptions = {
title: 'WFS ',
visible: true,
source: dataSource
};
this.map.addLayer(this.layerService.createLayer(layer));
});

this.layerService
.createAsyncLayer({
title: 'School board',
sourceOptions: {
type: 'wms',
url: 'https://geoegl.msp.gouv.qc.ca/igo2/api/ws/igo_gouvouvert.fcgi',
optionsFromCapabilities: true,
params: {
layers: 'MELS_CS_ANGLO_S',
version: '1.3.0'
Expand All @@ -60,34 +100,63 @@ export class AppLayerComponent {
})
.subscribe(l => this.map.addLayer(l));

interface WMSoptions
extends WMSDataSourceOptions,
MetadataDataSourceOptions {}
this.layerService
.createAsyncLayer({
title: 'Réseau routier',
visible: false,
sourceOptions: {
type: 'wms',
url: 'https://ws.mapserver.transports.gouv.qc.ca/swtq',
params: {
layers: 'bgr_v_sous_route_res_sup_act',
version: '1.3.0'
}
}
})
.subscribe(l => this.map.addLayer(l));

this.layerService
.createAsyncLayer({
title: 'Avertissements routier',
visible: false,
sourceOptions: {
type: 'wms',
url: 'https://ws.mapserver.transports.gouv.qc.ca/swtq',
params: {
layers: 'evenements',
version: '1.3.0'
}
}
})
.subscribe(l => this.map.addLayer(l));

const datasource: WMSoptions = {
const datasource: WMSDataSourceOptions = {
type: 'wms',
url: 'https://geoegl.msp.gouv.qc.ca/igo2/api/ws/igo_gouvouvert.fcgi',
refreshIntervalSec: 15,
params: {
layers: 'vg_observation_v_inondation_embacle_wmst',
version: '1.3.0'
},
metadata: {
url:
'https://www.donneesquebec.ca/recherche/fr/dataset/historique-publique-d-embacles-repertories-au-msp',
extern: true
}
};

interface LayerOptionsWithMetadata
extends LayerOptions,
MetadataLayerOptions {}

this.dataSourceService
.createAsyncDataSource(datasource)
.subscribe(dataSource => {
this.map.addLayer(
this.layerService.createLayer({
title: 'Embâcle',
source: dataSource
})
);
const layer: LayerOptionsWithMetadata = {
title: 'Embâcle',
source: dataSource,
metadata: {
url:
'https://www.donneesquebec.ca/recherche/fr/dataset/historique-publique-d-embacles-repertories-au-msp',
extern: true
}
};
this.map.addLayer(this.layerService.createLayer(layer));
});
}
}
2 changes: 2 additions & 0 deletions demo/src/app/geo/layer/layer.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import { IgoPanelModule } from '@ximple/igo2-common';
import {
IgoMapModule,
IgoLayerModule,
IgoFilterModule,
IgoMetadataModule,
IgoDownloadModule
} from '@ximple/igo2-geo';
Expand All @@ -26,6 +27,7 @@ import { AppLayerRoutingModule } from './layer-routing.module';
IgoPanelModule,
IgoMapModule,
IgoLayerModule,
IgoFilterModule,
IgoMetadataModule,
IgoDownloadModule
],
Expand Down
2 changes: 1 addition & 1 deletion demo/src/app/geo/ogc-filter/ogc-filter.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
</igo-map-browser>

<igo-panel title="Layers">
<igo-ogc-filterable-list [layers]="map.layers">
<igo-ogc-filterable-list [map]="map" [layers]="map.layers">

</igo-ogc-filterable-list>
</igo-panel>
Expand Down
Loading

0 comments on commit d7f5dcd

Please sign in to comment.