0.1.0 • Published 1 year ago

@doegis/core v0.1.0

Weekly downloads
-
License
SEE LICENSE IN co...
Repository
-
Last release
1 year ago

@arcgis/core

A minified, unbuilt version of the ArcGIS Maps SDK for JavaScript ES modules.

Features

For an overview of the SDK, visit the developer documentation site.

You can install these modules with npm and then use them directly in a framework such as React, Vue.js or Angular. Or, you can also create your own custom builds with Webpack or rollup.js.

The SDK includes TypeScript type definitions. The .d.ts declaration files are bundled with the install.

Sample applications can be found at github.com/jsapi-resources/.

Get started

Install the modules into your project:

npm install @arcgis/core

Configure CSS

Set the CSS to the same version as the installed SDK modules. You can verify the installed SDK version by running npm list @arcgis/core. If you are working with locally hosted assets skip to the Manage assets locally section.

The first example shows importing CSS for production SDK version 4.25.0:

index.css

@import "https://js.arcgis.com/4.25/@arcgis/core/assets/esri/themes/light/main.css";

The second example shows importing CSS for next SDK version 4.25.0-next.20220921:

index.css

@import "https://cdn.jsdelivr.net/npm/@arcgis/core@4.25.0-next.20220921/assets/esri/themes/light/main.css";

For more information using the next version visit the feedback-js-api-next repository.

Working with assets

The default configuration for local builds is for the SDK to automatically pull assets from a CDN at runtime, there is no need for additional configuration. The assets include styles, images, web workers, wasm and localization files. Production versions of the SDK's assets are hosted on the ArcGIS CDN, and next builds (e.g. 4.25.0-next.20220921) use assets hosted on the jsDelivr CDN.

Manage assets locally

If you need to manage the assets locally, copy them into your project from /node_modules/@arcgis/core/assets, and then set config.assetsPath to insure requests for assets are resolved correctly. A simple way to accomplish this is to configure an npm script that runs during your build process. For example, use npm to install ncp and configure a script in package.json to copy the folder.

Important: Every time you upgrade the SDK, be sure to recopy the new version of the assets to your project. This ensures the assets stay synchronized.

Here’s a React example:

package.json

{
  "scripts": {
    "start": "ncp ./node_modules/@arcgis/core/assets ./public/assets && react-scripts start",
    "build": "ncp ./node_modules/@arcgis/core/assets ./public/assets && react-scripts build"
  }
}

App.js

import esriConfig from "@arcgis/core/config.js";
esriConfig.assetsPath = "./assets"; 

index.css

@import "@arcgis/core/assets/esri/themes/light/main.css";

For Angular, copy the asset files by configuring the architect/build/options/assets section of angular.json, for example:

angular.json

{
  "assets": [
    {
      "glob": "**/*",
      "input": "node_modules/@arcgis/core/assets",
      "output": "/assets/"
    }
  ]
}

app.component.ts

import esriConfig from "@arcgis/core/config.js";
esriConfig.assetsPath = "./assets"; 

app.component.css

@import "@arcgis/core/assets/esri/themes/light/main.css";

For other installations, consider using this npm script as a starting point:

package.json

{
  "script": {
    "copy": "cp -R ./node_modules/@arcgis/core/assets ./dist/assets"
  }
}

Windows users can use xcopy or ncp for any platform.

Requirements

Use of the ArcGIS Maps SDK for JavaScript is subject to the terms described in the product-specific terms of use. Learn more about licensing here.

Resources

Issues

Licensing

COPYRIGHT © 2022 Esri

All rights reserved under the copyright laws of the United States and applicable international laws, treaties, and conventions.

This material is licensed for use under the Esri Master License Agreement (MLA), and is bound by the terms of that agreement. You may redistribute and use this code without modification, provided you adhere to the terms of the MLA and include this copyright notice.

For additional information, contact: Environmental Systems Research Institute, Inc. Attn: Contracts and Legal Services Department 380 New York Street Redlands, California, USA 92373 USA

email: contracts@esri.com