Skip to content

Commit 703021e

Browse files
authored
Merge pull request #172 from zendesk/wxing/VEG-1404
[VEG-1404] Enable ZAF SDK to be imported as a Node Module
2 parents c09d8e6 + 6f1db9d commit 703021e

File tree

10 files changed

+35
-18
lines changed

10 files changed

+35
-18
lines changed

dist/zaf_sdk.js

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/zaf_sdk.js.LICENSE.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
/*! Native Promise Only
2+
v0.8.1 (c) Kyle Simpson
3+
MIT License: http://getify.mit-license.org
4+
*/

dist/zaf_sdk.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/zaf_sdk.min.js

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/zaf_sdk.min.js.LICENSE.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
/*! Native Promise Only
2+
v0.8.1 (c) Kyle Simpson
3+
MIT License: http://getify.mit-license.org
4+
*/

dist/zaf_sdk.min.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/client.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* global URL */
2-
import version from 'version'
2+
import pkgJson from '../package.json'
33
import { when, isObject, isString } from './utils'
44
import IdleState from './utils/idleState'
55
import Tracker from './tracker'
@@ -380,7 +380,7 @@ export default class Client {
380380
const tracker = new Tracker(this)
381381
tracker.setup()
382382
window.addEventListener('message', messageHandler.bind(null, this))
383-
this.postMessage('iframe.handshake', { version: version })
383+
this.postMessage('iframe.handshake', { version: pkgJson.version })
384384
}
385385

386386
/**

package.json

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "zendesk_app_framework_sdk",
33
"version": "2.0.33",
4-
"main": "lib/zendesk-app-framework-sdk.js",
4+
"main": "dist/zaf_sdk.min.js",
55
"description": "The Zendesk App Framework (ZAF) SDK is a JavaScript library that simplifies cross-frame communication between iframed apps and ZAF.",
66
"homepage": "http://developer.zendesk.com",
77
"bugs": "[email protected]",
@@ -11,9 +11,7 @@
1111
"url": "http://developer.zendesk.com"
1212
},
1313
"engines": {
14-
"node": ">=12.10.0",
15-
"npm": ">=5.6.0",
16-
"yarn": "Yarn is disabled for this project, use npm instead"
14+
"node": ">=12.10.0"
1715
},
1816
"repository": {
1917
"type": "git",
@@ -82,5 +80,10 @@
8280
"snyk-protect": "snyk protect",
8381
"prepare": "npm run snyk-protect"
8482
},
83+
"standard": {
84+
"ignore": [
85+
"/dist/"
86+
]
87+
},
8588
"snyk": true
8689
}

spec/client_spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/* global expect Promise */
33
import Client, * as clientUtils from '../lib/client'
44
import Tracker from '../lib/tracker'
5-
import version from 'version'
5+
import pkgJson from '../package.json'
66
import sinon from 'sinon'
77

88
describe('#collateActions', () => {
@@ -200,7 +200,7 @@ describe('Client', () => {
200200
it('posts an "iframe.handshake" message when initialised', () => {
201201
const data = {
202202
key: 'iframe.handshake',
203-
message: { version: version },
203+
message: { version: pkgJson.version },
204204
appGuid: appGuid,
205205
instanceGuid: appGuid
206206
}

webpack.config.js

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
const path = require('path')
2-
const packageJson = require('./package.json')
32
const webpackMerge = require('webpack-merge')
43
const TerserPlugin = require('terser-webpack-plugin')
54
const Visualizer = require('webpack-visualizer-plugin')
@@ -40,21 +39,20 @@ const commonConfig = {
4039
},
4140

4241
output: {
43-
library: 'ZAFClient',
44-
libraryExport: 'default',
42+
library: {
43+
name: 'ZAFClient',
44+
type: 'umd',
45+
export: 'default'
46+
},
4547
filename: '[name].js',
4648
sourceMapFilename: '[name].js.map',
47-
path: path.resolve(__dirname, 'build')
49+
path: path.resolve(__dirname, 'dist')
4850
},
4951

50-
externals: {
51-
version: `"${packageJson.version}"`
52-
},
53-
54-
// Note: devServer does not serve from build/, but from cache. It also doesn't respect mode
52+
// Note: devServer does not serve from dist/, but from cache. It also doesn't respect mode
5553
// so outputed files are very different from server/build/build:dev
5654
devServer: {
57-
contentBase: path.join(__dirname, 'build'),
55+
contentBase: path.join(__dirname, 'dist'),
5856
hot: false,
5957
inline: false,
6058
compress: true,

0 commit comments

Comments
 (0)