cleaning up

This commit is contained in:
Stephan Meijer
2016-12-18 00:39:51 +01:00
parent 4cc5e998da
commit c7c2bd4af3
16 changed files with 68 additions and 521 deletions

172
.gitignore vendored
View File

@@ -1,170 +1,6 @@
#################
## Eclipse
#################
*.pydevproject
.project
.metadata
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.classpath
.settings/
.loadpath
# External tool builders
.externalToolBuilders/
# Locally stored "Eclipse launch configurations"
*.launch
# CDT-specific
.cproject
# PDT-specific
.buildpath
#################
## Visual Studio
#################
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.sln.docstates
# Build results
[Dd]ebug/
[Rr]elease/
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.vspscc
.builds
*.dotCover
## TODO: If you have NuGet Package Restore enabled, uncomment this
#packages/
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
# Visual Studio profiler
*.psess
*.vsp
# ReSharper is a .NET coding add-in
_ReSharper*
# Installshield output folder
[Ee]xpress
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish
# Others
[Bb]in
[Oo]bj
sql
TestResults
*.Cache
ClientBin
stylecop.*
~$*
*.dbmdl
Generated_Code #added for RIA/Silverlight projects
# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
############
## Windows
############
# Windows image file caches
Thumbs.db
# Folder config file
Desktop.ini
#############
## Python
#############
*.py[co]
# Packages
*.egg
*.egg-info
node_modules
coverage
*.log
lib
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
# Installer logs
pip-log.txt
# Unit test / coverage reports
.coverage
.tox
#Translations
*.mo
#Mr Developer
.mr.developer.cfg
# Mac crap
.DS_Store
*.sublime-project
*.sublime-workspace
.idea
dist/
lib/
node_modules/

View File

@@ -1,11 +0,0 @@
{
"tagname-lowercase": true,
"attr-lowercase": true,
"attr-value-double-quotes": true,
"doctype-first": false,
"tag-pair": true,
"spec-char-escape": true,
"id-unique": true,
"src-not-empty": true,
"attr-no-duplication": true
}

67
.jscsrc
View File

@@ -1,67 +0,0 @@
{
"disallowSpacesInNamedFunctionExpression": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInFunctionExpression": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInAnonymousFunctionExpression": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInFunctionDeclaration": {
"beforeOpeningRoundBrace": true
},
"disallowEmptyBlocks": true,
"disallowSpacesInsideArrayBrackets": true,
"disallowSpacesInsideParentheses": true,
"disallowSpaceAfterObjectKeys": true,
"disallowSpaceAfterPrefixUnaryOperators": true,
"disallowSpaceBeforePostfixUnaryOperators": true,
"disallowSpaceBeforeBinaryOperators": [
","
],
"disallowMixedSpacesAndTabs": true,
"disallowTrailingWhitespace": true,
"disallowTrailingComma": true,
"disallowYodaConditions": true,
"disallowKeywords": [ "with" ],
"disallowMultipleLineBreaks": true,
"disallowMultipleVarDecl": true,
"requireSpaceBeforeBlockStatements": true,
"requireParenthesesAroundIIFE": true,
"requireSpacesInConditionalExpression": true,
"requireBlocksOnNewline": 1,
"requireCommaBeforeLineBreak": true,
"requireSpaceBeforeBinaryOperators": true,
"requireSpaceAfterBinaryOperators": true,
"requireCamelCaseOrUpperCaseIdentifiers": true,
"requireLineFeedAtFileEnd": true,
"requireCapitalizedConstructors": true,
"requireDotNotation": true,
"requireSpacesInForStatement": true,
"requireSpaceBetweenArguments": true,
"requireCurlyBraces": [
"do"
],
"requireSpaceAfterKeywords": [
"if",
"else",
"for",
"while",
"do",
"switch",
"case",
"return",
"try",
"catch",
"typeof"
],
"requirePaddingNewLinesBeforeLineComments": {
"allExcept": "firstAfterCurly"
},
"requirePaddingNewLinesAfterBlocks": true,
"safeContextKeyword": ["self", "instance"],
"validateLineBreaks": "LF",
"validateQuoteMarks": "'",
"validateIndentation": 2
}

View File

@@ -1,63 +0,0 @@
{
/*
* ENVIRONMENTS
* =================
*/
// Define globals exposed by modern browsers.
"browser": true,
// Define globals exposed by jQuery.
"jquery": false,
// Define globals exposed by Node.js.
"node": false,
"globals" : {
"L": false
},
/*
* ENFORCING OPTIONS
* =================
*/
// Force all variable names to use either camelCase style or UPPER_CASE
// with underscores.
"camelcase": false,
// Prohibit use of == and != in favor of === and !==.
"eqeqeq": true,
// Enforce tab width of 2 spaces.
"indent": 2,
// Prohibit use of a variable before it is defined.
"latedef": true,
// Enforce line length to 80 characters
"maxlen": 100,
// Require capitalized names for constructor functions.
"newcap": true,
// Enforce use of single quotation marks for strings.
"quotmark": "single",
// Enforce placing 'use strict' at the top function scope
"strict": true,
// Prohibit use of explicitly undeclared variables.
"undef": true,
// Warn when variables are defined but never used.
"unused": false,
/*
* RELAXING OPTIONS
* =================
*/
// Suppress warnings about == null comparisons.
"eqnull": true
}

View File

@@ -1,35 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>Leaflet.GeoSearch / Google Provider</title>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<script src="../src/js/l.control.geosearch.js"></script>
<script src="../src/js/l.geosearch.provider.bing.js"></script>
<link rel="stylesheet" href="../src/css/l.geosearch.css" />
</head>
<body>
<div id="map" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></div>
<script type="text/javascript">
var osmTileUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var basemap = new L.TileLayer(osmTileUrl, {maxZoom: 18});
var map = new L.Map('map', {
layers: [basemap],
center: new L.LatLng(53.2, 5.8), zoom: 12
});
new L.Control.GeoSearch({
provider: new L.GeoSearch.Provider.Bing({
// request your free key at: bingmapsportal.com
key: '__YOUR_BING_API_KEY_HERE__'
})
}).addTo(map);
</script>
</body>
</html>

View File

@@ -1,5 +1,4 @@
import preact, { Component } from 'preact';
import Search from './Search';
class Layout extends Component {
constructor(props) {

View File

@@ -1,6 +1,10 @@
import preact, { Component } from 'preact';
import merge from 'lodash.merge';
import { GeoSearchControl, OpenStreetMapProvider, Provider as BaseProvider } from '../src';
import {
GeoSearchControl,
OpenStreetMapProvider,
Provider as BaseProvider,
} from '../../src';
const L = window.L;

View File

@@ -1,6 +1,6 @@
import preact, { Component } from 'preact';
import debounce from 'lodash.debounce';
import * as providers from '../src/providers';
import * as providers from '../../src/providers';
import SearchResults from './SearchResults';
const specialKeys = ['ArrowDown', 'ArrowUp', 'Escape'];

View File

@@ -1,4 +1,4 @@
import preact, { Component } from 'preact';
import preact from 'preact';
const SearchResults = ({ results = [], selected }) => (
<div className="results">

View File

@@ -0,0 +1,3 @@
export { default as Layout } from './Layout';
export { default as Map } from './Map';
export { default as Search } from './Search';

View File

@@ -1,32 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>Leaflet.GeoSearch / Esri Provider</title>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<script src="../src/js/l.control.geosearch.js"></script>
<script src="../src/js/l.geosearch.provider.esri.js"></script>
<link rel="stylesheet" href="../src/css/l.geosearch.css" />
</head>
<body>
<div id="map" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></div>
<script type="text/javascript">
var osmTileUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var basemap = new L.TileLayer(osmTileUrl, {maxZoom: 18});
var map = new L.Map('map', {
layers: [basemap],
center: new L.LatLng(53.2, 5.8), zoom: 12
});
new L.Control.GeoSearch({
provider: new L.GeoSearch.Provider.Esri()
}).addTo(map);
</script>
</body>
</html>

View File

@@ -1,32 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>Leaflet.GeoSearch / Google Provider</title>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<script src="../src/js/l.control.geosearch.js"></script>
<script src="../src/js/l.geosearch.provider.google.js"></script>
<link rel="stylesheet" href="../src/css/l.geosearch.css" />
</head>
<body>
<div id="map" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></div>
<script type="text/javascript">
var osmTileUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var basemap = new L.TileLayer(osmTileUrl, {maxZoom: 18});
var map = new L.Map('map', {
layers: [basemap],
center: new L.LatLng(53.2, 5.8), zoom: 12
});
new L.Control.GeoSearch({
provider: new L.GeoSearch.Provider.Google()
}).addTo(map);
</script>
</body>
</html>

View File

@@ -1,8 +1,6 @@
import preact, { render } from 'preact';
import Layout from './Layout';
import Search from './Search';
import Map from './Map';
import * as providers from '../src/providers';
import { Layout } from './components';
import pages from './pages';
// import css to enable hot reloading
if (process.env.NODE_ENV !== 'production') {
@@ -12,46 +10,6 @@ if (process.env.NODE_ENV !== 'production') {
require('../assets/css/leaflet.css');
}
const pages = [
{
slug: 'search',
title: 'Search',
view: () => (<Search />),
},
{
slug: 'openstreetmap',
title: 'OpenStreetMap',
view: () => (<Map Provider={providers.OpenStreetMapProvider} />),
},
{
slug: 'google',
title: 'Google',
view: () => {
const Provider = new providers.GoogleProvider({ params: {
key: 'AIzaSyDigZ5WMPoTj_gnkUn3p1waYPDa5oE8WOw',
} });
return <Map Provider={Provider} />;
},
},
{
slug: 'bing',
title: 'Bing',
view: () => {
const Provider = new providers.BingProvider({ params: {
key: 'AtUDjSVEBxo8BwgYUPdfnzHpznaYwDdjjS27jyFDj18nhTUDUjrhc0NwMndZvrXs',
} });
return <Map Provider={Provider} />;
},
},
{
slug: 'esri',
title: 'Esri',
view: () => (<Map Provider={providers.EsriProvider} />),
},
];
if (location.hash === '') {
location.hash = 'search';
}

View File

@@ -1,32 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>Leaflet.GeoSearch / Nokia Provider</title>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<script src="../src/js/l.control.geosearch.js"></script>
<script src="../src/js/l.geosearch.provider.nokia.js"></script>
<link rel="stylesheet" href="../src/css/l.geosearch.css" />
</head>
<body>
<div id="map" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></div>
<script type="text/javascript">
var osmTileUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var basemap = new L.TileLayer(osmTileUrl, {maxZoom: 18});
var map = new L.Map('map', {
layers: [basemap],
center: new L.LatLng(53.2, 5.8), zoom: 12
});
new L.Control.GeoSearch({
provider: new L.GeoSearch.Provider.Nokia()
}).addTo(map);
</script>
</body>
</html>

View File

@@ -1,33 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>Leaflet.GeoSearch / OSM Provider</title>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<script src="../dist/geosearch.js"></script>
<link rel="stylesheet" href="../assets/css/leaflet.css" />
</head>
<body>
<div id="map" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></div>
<script type="text/javascript">
const { GeoSearchControl, OpenStreetMapProvider } = window.GeoSearch;
const osmTileUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
const basemap = new L.TileLayer(osmTileUrl, { maxZoom: 18 });
const map = new L.Map('map', {
layers: [basemap],
center: new L.LatLng(53.2, 5.8), zoom: 12
});
const provider = new OpenStreetMapProvider();
new GeoSearchControl({
provider
}).addTo(map);
</script>
</body>
</html>

52
example/pages.js Normal file
View File

@@ -0,0 +1,52 @@
import preact from 'preact';
import { Search, Map } from './components';
import {
OpenStreetMapProvider,
GoogleProvider,
BingProvider,
EsriProvider,
} from '../src/providers';
const BING_KEY = 'AtUDjSVEBxo8BwgYUPdfnzHpznaYwDdjjS27jyFDj18nhTUDUjrhc0NwMndZvrXs';
const GOOGLE_KEY = 'AIzaSyDigZ5WMPoTj_gnkUn3p1waYPDa5oE8WOw';
export default [
{
slug: 'search',
title: 'Search',
view: () => (<Search />),
},
{
slug: 'openstreetmap',
title: 'OpenStreetMap',
view: () => (<Map Provider={OpenStreetMapProvider} />),
},
{
slug: 'google',
title: 'Google',
view: () => {
const Provider = new GoogleProvider({ params: {
key: GOOGLE_KEY,
} });
return <Map Provider={Provider} />;
},
},
{
slug: 'bing',
title: 'Bing',
view: () => {
const Provider = new BingProvider({ params: {
key: BING_KEY,
} });
return <Map Provider={Provider} />;
},
},
{
slug: 'esri',
title: 'Esri',
view: () => (<Map Provider={EsriProvider} />),
},
];