;
+
+export const Secondary: Story = {
+ name: 'Map with OpenLayers',
+ args: {
+ layers: [
+ {
+ url: 'https://openlayers.org/data/vector/ecoregions.json',
+ name: 'Ecoregions',
+ },
+ ],
+ },
+};
+
+export const Primary: Story = {
+ name: 'Map with OpenLayers 2',
+ args: {
+ layers: [
+ {
+ url: 'https://d2ad6b4ur7yvpq.cloudfront.net/naturalearth-3.3.0/ne_10m_geography_marine_polys.geojson',
+ name: 'Marine regions',
+ },
+ ],
+ },
+};
+
+export const MapWithPopover: Story = {
+ name: 'Map with popup',
+ args: {
+ layers: [
+ {
+ url: 'https://openlayers.org/data/vector/ecoregions.json',
+ name: 'Ecoregions',
+ },
+ ],
+ popup: (feature: any) => {
+ return (
+
+ Biome name
+ {feature.values_.BIOME_NAME}
+
+ );
+ },
+ },
+};
+
+export const Third: Story = {
+ name: 'Map with two layers',
+ args: {
+ layers: [
+ {
+ url: 'https://d2ad6b4ur7yvpq.cloudfront.net/naturalearth-3.3.0/ne_10m_geography_marine_polys.geojson',
+ name: 'Marine regions',
+ },
+ {
+ url: 'https://openlayers.org/data/vector/ecoregions.json',
+ name: 'Ecoregions',
+ },
+ ],
+ },
+};
+
+export const CustomCenter: Story = {
+ name: 'Map with custom center and zoom',
+ args: {
+ layers: [
+ {
+ url: 'https://openlayers.org/data/vector/ecoregions.json',
+ name: 'Ecoregions',
+ },
+ ],
+ center: [-15, 20],
+ zoom: 4,
+ },
+};
+
+export const PointsOnMap: Story = {
+ name: 'Map with points on',
+ args: {
+ layers: [
+ {
+ url: 'https://opendata.arcgis.com/datasets/9c58741995174fbcb017cf46c8a42f4b_25.geojson',
+ name: 'E-Scooter Parking Bays',
+ },
+ ],
+ center: [-1.055429957881787, 53.963900188025301],
+ zoom: 12,
+ },
+};
+
+export const KMLFile: Story = {
+ name: 'Map with KML File',
+ args: {
+ layers: [
+ {
+ url: 'https://openlayers.org/en/latest/examples/data/kml/2012_Earthquakes_Mag5.kml',
+ name: '2012 Earthquakes M5+',
+ format: 'kml',
+ heatmap: true,
+ },
+ ],
+ },
+};
diff --git a/packages/components/tailwind.config.js b/packages/components/tailwind.config.js
index d21f1cda..98fd9860 100644
--- a/packages/components/tailwind.config.js
+++ b/packages/components/tailwind.config.js
@@ -1,8 +1,6 @@
/** @type {import('tailwindcss').Config} */
export default {
content: ['./index.html', './src/**/*.{js,ts,jsx,tsx}'],
- theme: {
- extend: {},
- },
+ theme: {},
plugins: [],
};
diff --git a/packages/components/vite.config.ts b/packages/components/vite.config.ts
index ddc2109f..a0604ea1 100644
--- a/packages/components/vite.config.ts
+++ b/packages/components/vite.config.ts
@@ -1,29 +1,15 @@
-import react from '@vitejs/plugin-react'
-import path from 'node:path'
-import { defineConfig } from 'vitest/config'
-import dts from 'vite-plugin-dts'
-import tailwindcss from 'tailwindcss'
-import { UserConfigExport } from 'vite'
-import replace from "rollup-plugin-re"
+import react from '@vitejs/plugin-react-swc';
+import path from 'node:path';
+import { defineConfig } from 'vitest/config';
+import dts from 'vite-plugin-dts';
+import tailwindcss from 'tailwindcss';
+import { UserConfigExport } from 'vite';
+import replace from 'rollup-plugin-re';
const app = async (): Promise => {
return defineConfig({
plugins: [
react(),
- replace({
- patterns: [
- {
- match: /js-sha256/,
- test: `eval("require('crypto')")`,
- replace: `require('crypto')`,
- },
- {
- match: /js-sha256/,
- test: `eval("require('buffer').Buffer")`,
- replace: `require('buffer').Buffer`,
- },
- ],
- }),
dts({
insertTypesEntry: true,
}),
@@ -34,6 +20,7 @@ const app = async (): Promise => {
},
},
build: {
+ target: 'es2020',
lib: {
entry: path.resolve(__dirname, 'src/index.ts'),
name: 'components',
@@ -41,12 +28,27 @@ const app = async (): Promise => {
fileName: (format) => `components.${format}.js`,
},
rollupOptions: {
- external: ['react', 'react-dom', 'tailwindcss', 'vega-lite', 'vega', 'react-vega'],
+ external: [
+ 'react',
+ 'ol-mapbox-style',
+ 'react-dom',
+ 'tailwindcss',
+ 'vega-lite',
+ 'vega',
+ 'react-vega',
+ 'ol',
+ 'leaflet'
+ ],
output: {
+ manualChunks: undefined,
globals: {
react: 'React',
+ ol: 'ol',
+ 'ol-mapbox-style': 'ol-mapbox-style',
+ 'react-vega': 'react-vega',
'react-dom': 'ReactDOM',
tailwindcss: 'tailwindcss',
+ leaflet: 'leaflet'
},
},
},
@@ -55,7 +57,7 @@ const app = async (): Promise => {
globals: true,
environment: 'jsdom',
},
- })
-}
+ });
+};
// https://vitejs.dev/config/
-export default app
+export default app;
diff --git a/packages/components/vite.config.ts.timestamp-1688577409260-11eb314b205fb.mjs b/packages/components/vite.config.ts.timestamp-1688577409260-11eb314b205fb.mjs
new file mode 100644
index 00000000..c5af1bba
--- /dev/null
+++ b/packages/components/vite.config.ts.timestamp-1688577409260-11eb314b205fb.mjs
@@ -0,0 +1,64 @@
+// vite.config.ts
+import react from "file:///home/urutu-branco/Projetos/portaljs/node_modules/@vitejs/plugin-react-swc/index.mjs";
+import path from "node:path";
+import { defineConfig } from "file:///home/urutu-branco/Projetos/portaljs/node_modules/vitest/dist/config.js";
+import dts from "file:///home/urutu-branco/Projetos/portaljs/node_modules/vite-plugin-dts/dist/index.mjs";
+import tailwindcss from "file:///home/urutu-branco/Projetos/portaljs/node_modules/tailwindcss/lib/index.js";
+var __vite_injected_original_dirname = "/home/urutu-branco/Projetos/portaljs/packages/components";
+var app = async () => {
+ return defineConfig({
+ plugins: [
+ react(),
+ dts({
+ insertTypesEntry: true
+ })
+ ],
+ css: {
+ postcss: {
+ plugins: [tailwindcss]
+ }
+ },
+ build: {
+ target: "es2020",
+ lib: {
+ entry: path.resolve(__vite_injected_original_dirname, "src/index.ts"),
+ name: "components",
+ formats: ["es", "umd"],
+ fileName: (format) => `components.${format}.js`
+ },
+ rollupOptions: {
+ external: [
+ "react",
+ "ol-mapbox-style",
+ "react-dom",
+ "tailwindcss",
+ "vega-lite",
+ "vega",
+ "react-vega",
+ "ol",
+ "ol/dom.js"
+ ],
+ output: {
+ manualChunks: void 0,
+ globals: {
+ react: "React",
+ ol: "ol",
+ "ol/dom.js": "ol/dom.js",
+ "react-vega": "react-vega",
+ "react-dom": "ReactDOM",
+ tailwindcss: "tailwindcss"
+ }
+ }
+ }
+ },
+ test: {
+ globals: true,
+ environment: "jsdom"
+ }
+ });
+};
+var vite_config_default = app;
+export {
+ vite_config_default as default
+};
+//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvaG9tZS91cnV0dS1icmFuY28vUHJvamV0b3MvcG9ydGFsanMvcGFja2FnZXMvY29tcG9uZW50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2hvbWUvdXJ1dHUtYnJhbmNvL1Byb2pldG9zL3BvcnRhbGpzL3BhY2thZ2VzL2NvbXBvbmVudHMvdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL2hvbWUvdXJ1dHUtYnJhbmNvL1Byb2pldG9zL3BvcnRhbGpzL3BhY2thZ2VzL2NvbXBvbmVudHMvdml0ZS5jb25maWcudHNcIjtpbXBvcnQgcmVhY3QgZnJvbSAnQHZpdGVqcy9wbHVnaW4tcmVhY3Qtc3djJztcbmltcG9ydCBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tICd2aXRlc3QvY29uZmlnJztcbmltcG9ydCBkdHMgZnJvbSAndml0ZS1wbHVnaW4tZHRzJztcbmltcG9ydCB0YWlsd2luZGNzcyBmcm9tICd0YWlsd2luZGNzcyc7XG5pbXBvcnQgeyBVc2VyQ29uZmlnRXhwb3J0IH0gZnJvbSAndml0ZSc7XG5pbXBvcnQgcmVwbGFjZSBmcm9tICdyb2xsdXAtcGx1Z2luLXJlJztcblxuY29uc3QgYXBwID0gYXN5bmMgKCk6IFByb21pc2U8VXNlckNvbmZpZ0V4cG9ydD4gPT4ge1xuICByZXR1cm4gZGVmaW5lQ29uZmlnKHtcbiAgICBwbHVnaW5zOiBbXG4gICAgICByZWFjdCgpLFxuICAgICAgZHRzKHtcbiAgICAgICAgaW5zZXJ0VHlwZXNFbnRyeTogdHJ1ZSxcbiAgICAgIH0pLFxuICAgIF0sXG4gICAgY3NzOiB7XG4gICAgICBwb3N0Y3NzOiB7XG4gICAgICAgIHBsdWdpbnM6IFt0YWlsd2luZGNzc10sXG4gICAgICB9LFxuICAgIH0sXG4gICAgYnVpbGQ6IHtcbiAgICAgIHRhcmdldDogJ2VzMjAyMCcsXG4gICAgICBsaWI6IHtcbiAgICAgICAgZW50cnk6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICdzcmMvaW5kZXgudHMnKSxcbiAgICAgICAgbmFtZTogJ2NvbXBvbmVudHMnLFxuICAgICAgICBmb3JtYXRzOiBbJ2VzJywgJ3VtZCddLFxuICAgICAgICBmaWxlTmFtZTogKGZvcm1hdCkgPT4gYGNvbXBvbmVudHMuJHtmb3JtYXR9LmpzYCxcbiAgICAgIH0sXG4gICAgICByb2xsdXBPcHRpb25zOiB7XG4gICAgICAgIGV4dGVybmFsOiBbXG4gICAgICAgICAgJ3JlYWN0JyxcbiAgICAgICAgICAnb2wtbWFwYm94LXN0eWxlJyxcbiAgICAgICAgICAncmVhY3QtZG9tJyxcbiAgICAgICAgICAndGFpbHdpbmRjc3MnLFxuICAgICAgICAgICd2ZWdhLWxpdGUnLFxuICAgICAgICAgICd2ZWdhJyxcbiAgICAgICAgICAncmVhY3QtdmVnYScsXG4gICAgICAgICAgJ29sJyxcbiAgICAgICAgICAnb2wvZG9tLmpzJyxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0OiB7XG4gICAgICAgICAgbWFudWFsQ2h1bmtzOiB1bmRlZmluZWQsXG4gICAgICAgICAgZ2xvYmFsczoge1xuICAgICAgICAgICAgcmVhY3Q6ICdSZWFjdCcsXG4gICAgICAgICAgICBvbDogJ29sJyxcbiAgICAgICAgICAgICdvbC9kb20uanMnOiAnb2wvZG9tLmpzJyxcbiAgICAgICAgICAgICdyZWFjdC12ZWdhJzogJ3JlYWN0LXZlZ2EnLFxuICAgICAgICAgICAgJ3JlYWN0LWRvbSc6ICdSZWFjdERPTScsXG4gICAgICAgICAgICB0YWlsd2luZGNzczogJ3RhaWx3aW5kY3NzJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHRlc3Q6IHtcbiAgICAgIGdsb2JhbHM6IHRydWUsXG4gICAgICBlbnZpcm9ubWVudDogJ2pzZG9tJyxcbiAgICB9LFxuICB9KTtcbn07XG4vLyBodHRwczovL3ZpdGVqcy5kZXYvY29uZmlnL1xuZXhwb3J0IGRlZmF1bHQgYXBwO1xuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUEwVixPQUFPLFdBQVc7QUFDNVcsT0FBTyxVQUFVO0FBQ2pCLFNBQVMsb0JBQW9CO0FBQzdCLE9BQU8sU0FBUztBQUNoQixPQUFPLGlCQUFpQjtBQUp4QixJQUFNLG1DQUFtQztBQVF6QyxJQUFNLE1BQU0sWUFBdUM7QUFDakQsU0FBTyxhQUFhO0FBQUEsSUFDbEIsU0FBUztBQUFBLE1BQ1AsTUFBTTtBQUFBLE1BQ04sSUFBSTtBQUFBLFFBQ0Ysa0JBQWtCO0FBQUEsTUFDcEIsQ0FBQztBQUFBLElBQ0g7QUFBQSxJQUNBLEtBQUs7QUFBQSxNQUNILFNBQVM7QUFBQSxRQUNQLFNBQVMsQ0FBQyxXQUFXO0FBQUEsTUFDdkI7QUFBQSxJQUNGO0FBQUEsSUFDQSxPQUFPO0FBQUEsTUFDTCxRQUFRO0FBQUEsTUFDUixLQUFLO0FBQUEsUUFDSCxPQUFPLEtBQUssUUFBUSxrQ0FBVyxjQUFjO0FBQUEsUUFDN0MsTUFBTTtBQUFBLFFBQ04sU0FBUyxDQUFDLE1BQU0sS0FBSztBQUFBLFFBQ3JCLFVBQVUsQ0FBQyxXQUFXLGNBQWM7QUFBQSxNQUN0QztBQUFBLE1BQ0EsZUFBZTtBQUFBLFFBQ2IsVUFBVTtBQUFBLFVBQ1I7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFVBQ0E7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFVBQ0E7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFFBQ0Y7QUFBQSxRQUNBLFFBQVE7QUFBQSxVQUNOLGNBQWM7QUFBQSxVQUNkLFNBQVM7QUFBQSxZQUNQLE9BQU87QUFBQSxZQUNQLElBQUk7QUFBQSxZQUNKLGFBQWE7QUFBQSxZQUNiLGNBQWM7QUFBQSxZQUNkLGFBQWE7QUFBQSxZQUNiLGFBQWE7QUFBQSxVQUNmO0FBQUEsUUFDRjtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBQUEsSUFDQSxNQUFNO0FBQUEsTUFDSixTQUFTO0FBQUEsTUFDVCxhQUFhO0FBQUEsSUFDZjtBQUFBLEVBQ0YsQ0FBQztBQUNIO0FBRUEsSUFBTyxzQkFBUTsiLAogICJuYW1lcyI6IFtdCn0K