Skip to content

Commit c9d1df2

Browse files
committed
configure build script and fix packages
1 parent 24b3ece commit c9d1df2

File tree

8 files changed

+4154
-4973
lines changed

8 files changed

+4154
-4973
lines changed

build/scripts/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ echo "Unknown options -> ${POSITIONAL}"
6666
set -- "${POSITIONAL[@]}" # restore positional parameters
6767

6868
# build local SW file for dev env
69-
./build/scripts/buildServiceWorker.sh $BUILD_ORIGIN
69+
./build/scripts/buildServiceWorker.sh $BUILD_ORIGIN $NO_DEV_PORT $HTTPS
7070

7171
ENV=$ENV API=$API BUILD_ORIGIN=$BUILD_ORIGIN API_ORIGIN=$API_ORIGIN HTTPS=$HTTPS NO_DEV_PORT=$NO_DEV_PORT yarn transpile:sources
7272
ENV=$ENV API=$API BUILD_ORIGIN=$BUILD_ORIGIN API_ORIGIN=$API_ORIGIN HTTPS=$HTTPS NO_DEV_PORT=$NO_DEV_PORT yarn bundle-sw
Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
11
#!/bin/bash
22

33
# Builds the local service worker files for express_webpack for use in local dev env
4-
echo "importScripts(\"https://${1}/sdks/Dev-OneSignalSDKWorker.js\");" > express_webpack/push/onesignal/OneSignalSDKWorker.js
5-
echo "importScripts(\"https://${1}/sdks/Dev-OneSignalSDKWorker.js\");" > express_webpack/OneSignalSDKWorker.js
4+
ORIGIN=${1}
5+
NO_PORT=${2:-false}
6+
HTTPS=${3:-true}
7+
8+
if [ "$HTTPS" = true ]; then
9+
PORT=4001
10+
else
11+
PORT=4000
12+
fi
13+
14+
if [ "$NO_PORT" = true ]; then
15+
SW_ORIGIN="https://${ORIGIN}"
16+
else
17+
SW_ORIGIN="https://${ORIGIN}:${PORT}"
18+
fi
19+
20+
echo "importScripts(\"${SW_ORIGIN}/sdks/Dev-OneSignalSDKWorker.js\");" > express_webpack/push/onesignal/OneSignalSDKWorker.js
21+
echo "importScripts(\"${SW_ORIGIN}/sdks/Dev-OneSignalSDKWorker.js\");" > express_webpack/OneSignalSDKWorker.js

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"bowser": "github:OneSignal/bowser#fix-android8-opr6-build-detection",
88
"jsdom": "^9.12.0",
99
"jsonp": "github:OneSignal/jsonp#onesignal",
10-
"node-sass": "^4.9.0",
10+
"sass": "^1.90.0",
1111
"npm-css": "https://registry.npmjs.org/npm-css/-/npm-css-0.2.3.tgz",
1212
"postcss-discard-comments": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz",
1313
"postcss-filter-plugins": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz",
@@ -88,7 +88,7 @@
8888
"nyc": "^11.1.0",
8989
"postcss-loader": "^2.0.6",
9090
"prettier": "^2.7.1",
91-
"sass-loader": "^6.0.6",
91+
"sass-loader": "^7.3.1",
9292
"sinon": "^2.4.1",
9393
"svgo": "^0.7.2",
9494
"text-encoding": "^0.6.4",
@@ -98,7 +98,7 @@
9898
"uglifyjs-webpack-plugin": "^1.2.4",
9999
"webpack": "^4.3.0",
100100
"webpack-bundle-analyzer": "^3.3.2",
101-
"webpack-cli": "^2.0.13"
101+
"webpack-cli": "3.3.12"
102102
},
103103
"ava": {
104104
"extensions": [

src/libraries/WorkerMessenger.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ export class WorkerMessenger {
192192
Log.debug(`(${location.origin}) [Worker Messenger] Page is now listening for messages.`);
193193
}
194194

195-
onWorkerMessageReceivedFromPage(event: ServiceWorkerMessageEvent) {
195+
onWorkerMessageReceivedFromPage(event: ExtendableMessageEvent) {
196196
const data: WorkerMessengerMessage = event.data;
197197

198198
/* If this message doesn't contain our expected fields, discard the message */
@@ -235,7 +235,7 @@ export class WorkerMessenger {
235235
message topic. If no one is listening to the message, it is discarded;
236236
otherwise, the listener callback is executed.
237237
*/
238-
onPageMessageReceivedFromServiceWorker(event: ServiceWorkerMessageEvent) {
238+
onPageMessageReceivedFromServiceWorker(event: ExtendableMessageEvent) {
239239
const data: WorkerMessengerMessage = event.data;
240240

241241
/* If this message doesn't contain our expected fields, discard the message */

src/managers/ServiceWorkerManager.ts

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,22 @@
1+
import { Utils } from "../context/shared/utils/Utils";
12
import Environment from '../Environment';
3+
import NotImplementedError from '../errors/NotImplementedError';
4+
import ServiceWorkerRegistrationError from "../errors/ServiceWorkerRegistrationError";
5+
import Event from '../Event';
6+
import ServiceWorkerUtilHelper from "../helpers/page/ServiceWorkerUtilHelper";
7+
import ServiceWorkerHelper, { ServiceWorkerActiveState, ServiceWorkerManagerConfig } from "../helpers/ServiceWorkerHelper";
8+
import Log from '../libraries/Log';
29
import { WorkerMessengerCommand } from '../libraries/WorkerMessenger';
3-
import Path from '../models/Path';
410
import SdkEnvironment from '../managers/SdkEnvironment';
5-
import Database from '../services/Database';
11+
import { ContextSWInterface } from '../models/ContextSW';
612
import { IntegrationKind } from '../models/IntegrationKind';
13+
import Path from '../models/Path';
14+
import { PageVisibilityRequest, PageVisibilityResponse } from "../models/Session";
715
import { WindowEnvironmentKind } from '../models/WindowEnvironmentKind';
8-
import NotImplementedError from '../errors/NotImplementedError';
9-
import ProxyFrameHost from '../modules/frames/ProxyFrameHost';
10-
import Log from '../libraries/Log';
11-
import Event from '../Event';
1216
import ProxyFrame from '../modules/frames/ProxyFrame';
13-
import ServiceWorkerRegistrationError from "../errors/ServiceWorkerRegistrationError";
17+
import ProxyFrameHost from '../modules/frames/ProxyFrameHost';
18+
import Database from '../services/Database';
1419
import OneSignalUtils from "../utils/OneSignalUtils";
15-
import ServiceWorkerHelper, { ServiceWorkerActiveState, ServiceWorkerManagerConfig }
16-
from "../helpers/ServiceWorkerHelper";
17-
import { ContextSWInterface } from '../models/ContextSW';
18-
import { Utils } from "../context/shared/utils/Utils";
19-
import { PageVisibilityRequest, PageVisibilityResponse } from "../models/Session";
20-
import ServiceWorkerUtilHelper from "../helpers/page/ServiceWorkerUtilHelper";
2120

2221
export class ServiceWorkerManager {
2322
private context: ContextSWInterface;

src/utils/OneSignalShimLoader.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { isPushNotificationsSupported } from "../context/browser/utils/BrowserSupportsPush";
2-
import { OneSignalStubES6 } from "./OneSignalStubES6";
3-
import { OneSignalStubES5 } from "./OneSignalStubES5";
42
import { PossiblePredefinedOneSignal } from "./OneSignalStub";
3+
import { OneSignalStubES5 } from "./OneSignalStubES5";
4+
import { OneSignalStubES6 } from "./OneSignalStubES6";
55
// NOTE: Careful if adding imports, ES5 targets can't clean up functions never called.
66

77
// See sdk.ts for what entry points this handles
@@ -79,7 +79,7 @@ export class OneSignalShimLoader {
7979
// instead of "OneSignal.js" for importScripts();
8080
if (OneSignalShimLoader.isServiceWorkerRuntime()) {
8181
(<ServiceWorkerGlobalScope><any>self).importScripts(
82-
`${OneSignalShimLoader.getPathAndPrefix()}OneSignalSDKWorker.js?v=${OneSignalShimLoader.VERSION}`
82+
`${OneSignalShimLoader.getPathAndPrefix()}OneSignalSDKWorker.js?v=${OneSignalShimLoader.VERSION}`,
8383
);
8484
}
8585
else if (isPushNotificationsSupported()) {

typings/globals/serviceworker.d.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,18 @@ declare module 'ServiceWorker' {
22
var OneSignal: any;
33
export = OneSignal;
44
}
5+
6+
interface PushSubscriptionChangeEvent extends ExtendableEvent {
7+
readonly newSubscription: PushSubscription | null;
8+
readonly oldSubscription: PushSubscription | null;
9+
}
10+
11+
declare var PushSubscriptionChangeEvent: {
12+
prototype: PushSubscriptionChangeEvent;
13+
new(type: string, eventInitDict?: PushSubscriptionChangeEventInit): PushSubscriptionChangeEvent;
14+
};
15+
16+
interface PushSubscriptionChangeEventInit extends ExtendableEventInit {
17+
newSubscription?: PushSubscription;
18+
oldSubscription?: PushSubscription;
19+
}

0 commit comments

Comments
 (0)