NonRT-RIC A1 Northbound API
[nonrtric.git] / sdnc-a1-controller / oam / configbackuprestore / vnfconfigbackupservice / src / main / webapp / node_modules / angular-object-diff / demo.js
1 // Angular JS code
2 (function () {
3     'use-strict';
4
5     angular.module('demoApp', ['ds.objectDiff'])
6         .config([
7           '$interpolateProvider',
8             function ($interpolateProvider) {
9                 return $interpolateProvider.startSymbol('{(').endSymbol(')}');
10           }
11         ])
12         .controller('DemoController', DemoController);
13
14     DemoController.$inject = ['$scope', 'ObjectDiff'];
15
16     function DemoController($scope, ObjectDiff) {
17         $scope.objectOne = "{\n" +
18             "   a: {\n" +
19             "     b: 1,\n" +
20             "     c: [1, 2]\n" +
21             "   },\n" +
22             "   \"2b\": {\n" +
23             "     foo: 'bar'\n" +
24             "   }\n" +
25             " }";
26         $scope.objectTwo = "{\n" +
27             "   a: { \n" +
28             "     b: 2,\n" +
29             "     c: [1, 2, 3]\n" +
30             "   },\n" +
31             "   x: 1\n" +
32             " }";
33
34
35         function makeDiff() {
36             var objectOne, objectTwo, diff;
37             try {
38                 $scope.errorA = false;
39                 objectOne = eval('(' + $scope.objectOne + ')'); //JSON.parse($scope.objectOne);
40             } catch (err) {
41                 $scope.errorA = true;
42             }
43             try {
44                 $scope.errorB = false;
45                 objectTwo = eval('(' + $scope.objectTwo + ')'); //JSON.parse($scope.objectTwo);
46             } catch (err) {
47                 $scope.errorB = true;
48             }
49
50             // you can directly diff your objects if they are not string
51             diff = ObjectDiff.diffOwnProperties(objectOne, objectTwo);
52
53             $scope.diffValue = ObjectDiff.toJsonView(diff);
54             $scope.diffValueChanges = ObjectDiff.toJsonDiffView(diff);
55
56             $scope.yourObjectOne = objectOne;
57             $scope.yourObjectTwo = objectTwo;
58         }
59
60         $scope.$watch('objectOne', function (newValue, oldValue) {
61             makeDiff();
62         });
63         $scope.$watch('objectTwo', function (newValue, oldValue) {
64             makeDiff();
65         });
66     }
67
68 })();