diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..5a49890 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,38 @@ +name: Release NPM Package + +on: + push: + tags: '*' + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + - uses: actions/setup-node@v2 + with: + node-version: '12.x' + registry-url: 'https://registry.npmjs.org' + scope: '@jawg' + - run: npm install + - run: npm test + - run: npm publish --access public + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_JS_ACCESS_TOKEN }} + - name: Install kokai + run: cargo install kokai + - name: Create Release Note + run: kokai release --ref ${{ github.ref }} --tag-from-ref . > RELEASE_NOTE.md + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ github.ref }} + body_path: RELEASE_NOTE.md + draft: false + prerelease: false diff --git a/README.md b/README.md index 09dd5d9..a350698 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,43 @@ # js-loader + +[![npm](https://img.shields.io/npm/v/@jawg/js-loader)](https://www.npmjs.com/package/@jawg/js-loader) + Load the Jawg Maps JavaScript libraries dynamically. + +## Install + +Available via npm as the package [@jawg/js-loader](https://www.npmjs.com/package/@jawg/js-loader). + +```sh +npm i @jawg/js-loader +``` + +or + +```sh +yarn add @jawg/js-loader +``` + +Alternatively you may add the umd package directly to the html document using the unpkg link. + +```html + +``` + +When adding via unpkg, the loader can be accessed at `JawgJSLoader`. + +## Load Jawg Places JS + +```javascript +import JawgJSLoader from '@jawg/js-loader'; + +let loader = new JawgJSLoader({ accessToken: '' }); + +loader.loadJawgPlaces().then((JawgPlaces) => { + let jawgPlaces = new JawgPlaces.Input({ input: '#my-input' }); +}); +``` + +## Feedback + +Please submint an [issue](https://github.com/jawg/js-loader/issues) for new features or when something is not working properly. \ No newline at end of file diff --git a/package.json b/package.json index 2eb0567..8d7644c 100644 --- a/package.json +++ b/package.json @@ -1,16 +1,29 @@ { "name": "@jawg/js-loader", - "version": "0.0.0", + "version": "1.0.0", "description": "A library to load jawg js libraries", "main": "./dist/jawg-js-loader.js", "types": "./index.d.ts", + "typeScriptVersion": "2.3", "scripts": { "build": "rollup -c", "watch": "rollup -c -w", - "start": "ROLLUP_SERVE=true rollup -c -w" + "start": "ROLLUP_SERVE=true rollup -c -w", + "test": "tsc --noEmit test/*.ts" }, - "author": "Jawg", - "license": "SEE LICENSE IN LICENSE", + "repository": { + "type": "git", + "url": "git+https://github.com/jawg/js-loader.git" + }, + "keywords": [ + "maps", + "osm", + "api", + "typescript", + "js-loader" + ], + "author": "Jawg Maps ", + "license": "MIT", "files": [ "src/index.js", "dist/jawg-js-loader.js", @@ -19,6 +32,10 @@ "index.d.ts", "packages.json" ], + "bugs": { + "url": "https://github.com/jawg/js-loader/issues" + }, + "homepage": "https://github.com/jawg/js-loader#readme", "devDependencies": { "@babel/core": "^7.14.8", "@babel/plugin-transform-runtime": "^7.14.5", @@ -32,7 +49,8 @@ "rollup": "^2.53.3", "rollup-plugin-app-utils": "^1.0.6", "rollup-plugin-serve": "^1.1.0", - "rollup-plugin-terser": "^7.0.2" + "rollup-plugin-terser": "^7.0.2", + "typescript": "^4.3.5" }, "dependencies": { "@jawg/types": "^1.0.0" diff --git a/test/jawg-places.ts b/test/jawg-places.ts new file mode 100644 index 0000000..9fe5437 --- /dev/null +++ b/test/jawg-places.ts @@ -0,0 +1,9 @@ +import JawgJSLoader from '../'; +import L = require('leaflet'); + +new JawgJSLoader({ accessToken: 'test' }).loadJawgPlaces().then((JawgPlaces) => { + new JawgPlaces.Input({ input: '#my-input' }); + new JawgPlaces.MapLibre({ searchOnTyping: true }); + new JawgPlaces.Mapbox({ searchOnTyping: true }); + new JawgPlaces.Leaflet({ searchOnTyping: true, L }); +});