@planet/maps 8.0.0-dev.1675704426846 → 8.0.0-dev.1675901329705

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/Map.js CHANGED
@@ -14,8 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import OLMap from 'ol/Map.js';
17
+ import propTypes from 'prop-types';
17
18
  import {Component, createElement, createRef, forwardRef} from 'react';
18
- import {any, func, node, object, oneOfType, shape, string} from 'prop-types';
19
19
  import {render, updateInstanceFromProps} from '../renderer/render.js';
20
20
 
21
21
  const defaultDivStyle = {
@@ -58,11 +58,14 @@ class Map extends Component {
58
58
  }
59
59
 
60
60
  Map.propTypes = {
61
- className: string,
62
- id: string,
63
- style: object,
64
- children: node,
65
- innerRef: oneOfType([func, shape({current: any})]),
61
+ className: propTypes.string,
62
+ id: propTypes.string,
63
+ style: propTypes.object,
64
+ children: propTypes.node,
65
+ innerRef: propTypes.oneOfType([
66
+ propTypes.func,
67
+ propTypes.shape({current: propTypes.any}),
68
+ ]),
66
69
  };
67
70
 
68
71
  export default forwardRef((props, ref) =>
package/lib/layer/Base.js CHANGED
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLBase from 'ol/layer/Base.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Base = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLBase, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Base.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Base;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLBaseImage from 'ol/layer/BaseImage.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const BaseImage = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLBaseImage, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  BaseImage.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default BaseImage;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLBaseTile from 'ol/layer/BaseTile.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const BaseTile = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLBaseTile, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  BaseTile.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default BaseTile;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLBaseVector from 'ol/layer/BaseVector.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const BaseVector = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLBaseVector, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  BaseVector.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default BaseVector;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLGraticule from 'ol/layer/Graticule.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Graticule = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLGraticule, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Graticule.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Graticule;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLGroup from 'ol/layer/Group.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Group = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLGroup, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Group.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Group;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLHeatmap from 'ol/layer/Heatmap.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Heatmap = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLHeatmap, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Heatmap.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Heatmap;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLImage from 'ol/layer/Image.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Image = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLImage, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Image.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Image;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLLayer from 'ol/layer/Layer.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Layer = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLLayer, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Layer.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Layer;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLMapboxVector from 'ol/layer/MapboxVector.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const MapboxVector = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLMapboxVector, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  MapboxVector.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default MapboxVector;
package/lib/layer/Tile.js CHANGED
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLTile from 'ol/layer/Tile.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Tile = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLTile, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Tile.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Tile;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLVector from 'ol/layer/Vector.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const Vector = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLVector, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  Vector.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default Vector;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLVectorImage from 'ol/layer/VectorImage.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const VectorImage = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLVectorImage, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  VectorImage.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default VectorImage;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLVectorTile from 'ol/layer/VectorTile.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const VectorTile = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLVectorTile, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  VectorTile.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default VectorTile;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLWebGLPoints from 'ol/layer/WebGLPoints.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const WebGLPoints = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLWebGLPoints, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  WebGLPoints.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default WebGLPoints;
@@ -15,15 +15,15 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import OLWebGLTile from 'ol/layer/WebGLTile.js';
18
+ import propTypes from 'prop-types';
18
19
  import {createElement, forwardRef} from 'react';
19
- import {node} from 'prop-types';
20
20
 
21
21
  const WebGLTile = forwardRef(({children, ...props}, ref) => {
22
22
  return createElement('layer', {cls: OLWebGLTile, ref, ...props}, children);
23
23
  });
24
24
 
25
25
  WebGLTile.propTypes = {
26
- children: node,
26
+ children: propTypes.node,
27
27
  };
28
28
 
29
29
  export default WebGLTile;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@planet/maps",
3
- "version": "8.0.0-dev.1675704426846",
3
+ "version": "8.0.0-dev.1675901329705",
4
4
  "description": "Declarative mapping components for React",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -9,9 +9,9 @@
9
9
  "test:unit": "vitest run -r ./tests/unit",
10
10
  "lint": "eslint .",
11
11
  "test:rendering": "playwright test --config=tests/rendering/playwright.config.js",
12
- "start": "vite serve",
12
+ "start": "astro dev --root ./site",
13
13
  "start:rendering": "vite serve --config=tests/rendering/vite.config.js",
14
- "build": "vite build",
14
+ "build": "astro build --root ./site",
15
15
  "generate": "node tools/generate.js && npm run lint -- --fix",
16
16
  "clean": "node tools/clean.js"
17
17
  },
@@ -25,12 +25,20 @@
25
25
  "react-reconciler": "^0.29.0"
26
26
  },
27
27
  "devDependencies": {
28
+ "@astrojs/mdx": "^0.16.0",
29
+ "@astrojs/react": "^2.0.2",
28
30
  "@octokit/rest": "^19.0.5",
29
31
  "@playwright/test": "^1.25.2",
32
+ "@types/react": "^18.0.27",
33
+ "@types/react-dom": "^18.0.10",
34
+ "astro": "^2.0.8",
30
35
  "c8": "^7.12.0",
31
36
  "es-main": "^1.2.0",
32
- "eslint": "^8.23.1",
37
+ "eslint": "^8.32.0",
33
38
  "eslint-config-planet": "^20.0.3",
39
+ "eslint-plugin-astro": "^0.23.0",
40
+ "eslint-plugin-mdx": "^2.0.5",
41
+ "eslint-plugin-react": "^7.32.1",
34
42
  "fs-extra": "^11.1.0",
35
43
  "import-meta-resolve": "^2.0.2",
36
44
  "jsdom": "^21.0.0",
@@ -38,24 +46,67 @@
38
46
  "mustache": "^4.2.0",
39
47
  "ol": "^7.1.0",
40
48
  "prop-types": "^15.8.1",
41
- "react-dom": "^18.1.0",
49
+ "react": "^18.2.0",
50
+ "react-dom": "^18.2.0",
51
+ "remark-html": "^15.0.2",
52
+ "remark-parse": "^10.0.1",
42
53
  "semapro": "^1.1.0",
43
54
  "semver": "^7.3.7",
44
- "vite": "^4.0.0",
55
+ "shiki": "^0.11.0",
56
+ "unified": "^10.1.2",
57
+ "vite": "^4.0.4",
45
58
  "vitest": "^0.28.3"
46
59
  },
47
60
  "eslintConfig": {
48
- "extends": "planet/react",
61
+ "extends": [
62
+ "planet"
63
+ ],
64
+ "parserOptions": {
65
+ "ecmaVersion": "latest",
66
+ "sourceType": "module"
67
+ },
68
+ "rules": {
69
+ "import/named": "off",
70
+ "import/default": "off",
71
+ "import/no-unresolved": [
72
+ "error",
73
+ {
74
+ "ignore": [
75
+ "astro:content",
76
+ "@astrojs/*"
77
+ ]
78
+ }
79
+ ]
80
+ },
49
81
  "overrides": [
50
82
  {
51
83
  "files": [
52
- "*.jsx",
53
- "*.js"
84
+ "*.astro"
85
+ ],
86
+ "extends": [
87
+ "plugin:astro/recommended"
88
+ ]
89
+ },
90
+ {
91
+ "files": [
92
+ "*.jsx"
93
+ ],
94
+ "extends": [
95
+ "planet/react"
96
+ ],
97
+ "rules": {
98
+ "import/named": "off"
99
+ }
100
+ },
101
+ {
102
+ "files": [
103
+ "*.mdx"
104
+ ],
105
+ "extends": [
106
+ "plugin:mdx/recommended",
107
+ "planet/react"
54
108
  ]
55
109
  }
56
- ],
57
- "parserOptions": {
58
- "ecmaVersion": "latest"
59
- }
110
+ ]
60
111
  }
61
112
  }
package/readme.md CHANGED
@@ -10,29 +10,7 @@ Declarative mapping components
10
10
  npm install @planet/maps
11
11
  ```
12
12
 
13
- Import the components you need for your map. Provide an `options` prop to pass to the underlying OpenLayers constructor. Provide other props for values that you want to update with state changes.
14
-
15
- ```js
16
- import Map from '@planet/maps/lib/Map';
17
- import OSM from '@planet/maps/lib/source/OSM';
18
- import ScaleLine from '@planet/maps/lib/control/ScaleLine';
19
- import View from '@planet/maps/lib/View';
20
- import WebGLTile from '@planet/maps/lib/layer/WebGLTile';
21
-
22
- function MyApp() {
23
- return (
24
- <Map style={{width: '100%', height: '100%'}}>
25
- <View options={{center: [0, 0], zoom: 1}} />
26
- <WebGLTile>
27
- <OSM />
28
- </WebGLTile>
29
- <ScaleLine />
30
- </Map>
31
- );
32
- }
33
- ```
34
-
35
- You can also listen to any events on the map, view, controls, interactions, layers, or sources; use `ref`s to get access to the underlying OpenLayers instances; and more.
13
+ See the [planetlabs.github.io/maps](https://planetlabs.github.io/maps/) website for more details and examples using the library.
36
14
 
37
15
  ## Background
38
16
 
@@ -73,6 +51,16 @@ Install project dependencies:
73
51
  npm install
74
52
  ```
75
53
 
54
+ Start the development server:
55
+ ```bash
56
+ npm start
57
+ ```
58
+
59
+ Run the tests:
60
+ ```bash
61
+ npm test
62
+ ```
63
+
76
64
  The rendering tests use Playwright for visual snapshot comparison. See the [`tests/rendering/readme.md`](tests/rendering/readme.md) for more detail.
77
65
 
78
66