Browse Source

fixing build with external dependencies

Raanan Weber 7 years ago
parent
commit
ea510f73cf

+ 0 - 97
Viewer/assets/deepmerge.min.js

@@ -1,97 +0,0 @@
-(function (global, factory) {
-	typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
-	typeof define === 'function' && define.amd ? define(factory) :
-	(global.deepmerge = factory());
-}(this, (function () { 'use strict';
-
-var isMergeableObject = function isMergeableObject(value) {
-	return isNonNullObject(value)
-		&& !isSpecial(value)
-};
-
-function isNonNullObject(value) {
-	return !!value && typeof value === 'object'
-}
-
-function isSpecial(value) {
-	var stringValue = Object.prototype.toString.call(value);
-
-	return stringValue === '[object RegExp]'
-		|| stringValue === '[object Date]'
-		|| isReactElement(value)
-}
-
-// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25
-var canUseSymbol = typeof Symbol === 'function' && Symbol.for;
-var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;
-
-function isReactElement(value) {
-	return value.$$typeof === REACT_ELEMENT_TYPE
-}
-
-function emptyTarget(val) {
-	return Array.isArray(val) ? [] : {}
-}
-
-function cloneUnlessOtherwiseSpecified(value, optionsArgument) {
-	var clone = !optionsArgument || optionsArgument.clone !== false;
-
-	return (clone && isMergeableObject(value))
-		? deepmerge(emptyTarget(value), value, optionsArgument)
-		: value
-}
-
-function defaultArrayMerge(target, source, optionsArgument) {
-	return target.concat(source).map(function(element) {
-		return cloneUnlessOtherwiseSpecified(element, optionsArgument)
-	})
-}
-
-function mergeObject(target, source, optionsArgument) {
-	var destination = {};
-	if (isMergeableObject(target)) {
-		Object.keys(target).forEach(function(key) {
-			destination[key] = cloneUnlessOtherwiseSpecified(target[key], optionsArgument);
-		});
-	}
-	Object.keys(source).forEach(function(key) {
-		if (!isMergeableObject(source[key]) || !target[key]) {
-			destination[key] = cloneUnlessOtherwiseSpecified(source[key], optionsArgument);
-		} else {
-			destination[key] = deepmerge(target[key], source[key], optionsArgument);
-		}
-	});
-	return destination
-}
-
-function deepmerge(target, source, optionsArgument) {
-	var sourceIsArray = Array.isArray(source);
-	var targetIsArray = Array.isArray(target);
-	var options = optionsArgument || { arrayMerge: defaultArrayMerge };
-	var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;
-
-	if (!sourceAndTargetTypesMatch) {
-		return cloneUnlessOtherwiseSpecified(source, optionsArgument)
-	} else if (sourceIsArray) {
-		var arrayMerge = options.arrayMerge || defaultArrayMerge;
-		return arrayMerge(target, source, optionsArgument)
-	} else {
-		return mergeObject(target, source, optionsArgument)
-	}
-}
-
-deepmerge.all = function deepmergeAll(array, optionsArgument) {
-	if (!Array.isArray(array)) {
-		throw new Error('first argument should be an array')
-	}
-
-	return array.reduce(function(prev, next) {
-		return deepmerge(prev, next, optionsArgument)
-	}, {})
-};
-
-var deepmerge_1 = deepmerge;
-
-return deepmerge_1;
-
-})));

File diff suppressed because it is too large
+ 0 - 1
Viewer/assets/es6-promise.min.js


File diff suppressed because it is too large
+ 0 - 29
Viewer/assets/handlebars.min.js


File diff suppressed because it is too large
+ 0 - 210
Viewer/assets/pep.min.js


+ 5 - 1
Viewer/package.json

@@ -27,6 +27,8 @@
         "@types/node": "^8.9.4",
         "base64-font-loader": "0.0.4",
         "base64-image-loader": "^1.2.1",
+        "deepmerge": "^2.1.1",
+        "handlebars": "^4.0.11",
         "html-loader": "^0.5.5",
         "json-loader": "^0.5.7",
         "ts-loader": "^2.3.7",
@@ -35,5 +37,7 @@
         "webpack": "^3.11.0",
         "webpack-dev-server": "^2.11.2"
     },
-    "dependencies": {}
+    "dependencies": {
+        "pepjs": "^0.4.3"
+    }
 }

+ 2 - 0
Viewer/src/helper/deepmerge.d.ts

@@ -1,9 +1,11 @@
 interface Ideepmerge {
     (a: any, b: any, options?: any): any;
     all(array: Array<any>, options?: any): any;
+    default: Ideepmerge;
 }
 declare const deepmerge: Ideepmerge;
 
 declare module "deepmerge" {
+    export default deepmerge;
     export = deepmerge;
 }

+ 2 - 1
Viewer/src/helper/index.ts

@@ -1,6 +1,7 @@
 import * as deepmerge from 'deepmerge';
 
-export { deepmerge };
+let expDm = deepmerge['default'];
+export { expDm as deepmerge };
 
 /**
  * Is the provided string a URL?

+ 1 - 1
Viewer/src/templating/templateManager.ts

@@ -2,7 +2,7 @@
 import { Observable, IFileRequest, Tools } from 'babylonjs';
 import { isUrl, camelToKebab, kebabToCamel } from '../helper';
 
-import * as Handlebars from 'handlebars/runtime';
+import * as Handlebars from 'handlebars/dist/handlebars';
 import { EventManager } from './eventManager';
 import { ITemplateConfiguration } from '../configuration/interfaces';
 import { deepmerge } from '../helper/';

+ 3 - 0
Viewer/tsconfig.json

@@ -33,6 +33,9 @@
             ],
             "deepmerge": [
                 "./helper/deepmerge.d.ts"
+            ],
+            "handlebars": [
+                "./templates/handlebars.d.ts"
             ]
         },
         "outDir": "./dist/build"

+ 1 - 5
Viewer/webpack.config.js

@@ -18,17 +18,13 @@ module.exports = {
         alias: {
             "babylonjs": __dirname + '/../dist/preview release/babylon.max.js',
             "babylonjs-materials": __dirname + '/../dist/preview release/materialsLibrary/babylonjs.materials.js',
-            "babylonjs-loaders": __dirname + '/../dist/preview release/loaders/babylonjs.loaders.js',
-            "pep": __dirname + '/assets/pep.min.js',
-            "deepmerge": __dirname + '/assets/deepmerge.min.js',
-            "handlebars": __dirname + '/assets/handlebars.min.js',
+            "babylonjs-loaders": __dirname + '/../dist/preview release/loaders/babylonjs.loaders.js'
         }
     },
     externals: {
         // until physics will be integrated in the viewer, ignore cannon
         cannon: 'CANNON',
         oimo: 'OIMO',
-        './Oimo': 'OIMO',
         earcut: true
     },
     devtool: 'source-map',