You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by GitBox <gi...@apache.org> on 2018/09/23 09:33:43 UTC
[GitHub] awasum closed pull request #4: fixed bugs on login screen
awasum closed pull request #4: fixed bugs on login screen
URL: https://github.com/apache/fineract-cn-group-finance/pull/4
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git a/center.json b/center.json
new file mode 100644
index 0000000..f2ae48d
--- /dev/null
+++ b/center.json
@@ -0,0 +1,19 @@
+{
+ "posts": [
+ {
+ "id": 1,
+ "title": "json-server",
+ "author": "typicode"
+ }
+ ],
+ "comments": [
+ {
+ "id": 1,
+ "body": "some comment",
+ "postId": 1
+ }
+ ],
+ "profile": {
+ "name": "typicode"
+ }
+}
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 7a0d690..f489938 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -399,13 +399,6 @@
}
}
},
- "addressparser": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz",
- "integrity": "sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y=",
- "dev": true,
- "optional": true
- },
"adm-zip": {
"version": "0.4.11",
"resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz",
@@ -479,49 +472,6 @@
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
"dev": true
},
- "amqplib": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.5.2.tgz",
- "integrity": "sha512-l9mCs6LbydtHqRniRwYkKdqxVa6XMz3Vw1fh+2gJaaVgTM6Jk3o8RccAKWKtlhT1US5sWrFh+KKxsVUALURSIA==",
- "dev": true,
- "optional": true,
- "requires": {
- "bitsyntax": "~0.0.4",
- "bluebird": "^3.4.6",
- "buffer-more-ints": "0.0.2",
- "readable-stream": "1.x >=1.1.9",
- "safe-buffer": "^5.0.1"
- },
- "dependencies": {
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
- "dev": true,
- "optional": true
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "dev": true,
- "optional": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "dev": true,
- "optional": true
- }
- }
- },
"angular2-text-mask": {
"version": "8.0.5",
"resolved": "https://registry.npmjs.org/angular2-text-mask/-/angular2-text-mask-8.0.5.tgz",
@@ -711,13 +661,6 @@
"integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
"dev": true
},
- "ast-types": {
- "version": "0.11.5",
- "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.5.tgz",
- "integrity": "sha512-oJjo+5e7/vEc2FBK8gUalV0pba4L3VdBIs2EKhOLHLcOd2FgQIVQN9xb0eZ9IjEWyAL7vq6fGJxOvVvdCHNyMw==",
- "dev": true,
- "optional": true
- },
"async": {
"version": "2.6.1",
"resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz",
@@ -785,28 +728,6 @@
"integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==",
"dev": true
},
- "axios": {
- "version": "0.15.3",
- "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz",
- "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=",
- "dev": true,
- "optional": true,
- "requires": {
- "follow-redirects": "1.0.0"
- },
- "dependencies": {
- "follow-redirects": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz",
- "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=",
- "dev": true,
- "optional": true,
- "requires": {
- "debug": "^2.2.0"
- }
- }
- }
- },
"babel-code-frame": {
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
@@ -1063,57 +984,6 @@
"integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
"dev": true
},
- "bitsyntax": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.0.4.tgz",
- "integrity": "sha1-6xDMb4K4xJDj6FaY8H6D1G4MuoI=",
- "dev": true,
- "optional": true,
- "requires": {
- "buffer-more-ints": "0.0.2"
- }
- },
- "bl": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz",
- "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=",
- "dev": true,
- "optional": true,
- "requires": {
- "readable-stream": "~2.0.5"
- },
- "dependencies": {
- "process-nextick-args": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
- "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
- "dev": true,
- "optional": true
- },
- "readable-stream": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
- "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
- "dev": true,
- "optional": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "~1.0.0",
- "process-nextick-args": "~1.0.6",
- "string_decoder": "~0.10.x",
- "util-deprecate": "~1.0.1"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "dev": true,
- "optional": true
- }
- }
- },
"blob": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
@@ -1367,6 +1237,28 @@
"isarray": "^1.0.0"
}
},
+ "buffer-alloc": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
+ "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
+ "dev": true,
+ "requires": {
+ "buffer-alloc-unsafe": "^1.1.0",
+ "buffer-fill": "^1.0.0"
+ }
+ },
+ "buffer-alloc-unsafe": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
+ "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
+ "dev": true
+ },
+ "buffer-fill": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
+ "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
+ "dev": true
+ },
"buffer-from": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz",
@@ -1379,34 +1271,12 @@
"integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
"dev": true
},
- "buffer-more-ints": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/buffer-more-ints/-/buffer-more-ints-0.0.2.tgz",
- "integrity": "sha1-JrOIXRD6E9t/wBquOquHAZngEkw=",
- "dev": true
- },
"buffer-xor": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
"integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
"dev": true
},
- "buildmail": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/buildmail/-/buildmail-4.0.1.tgz",
- "integrity": "sha1-h393OLeHKYccmhBeO4N9K+EaenI=",
- "dev": true,
- "optional": true,
- "requires": {
- "addressparser": "1.0.1",
- "libbase64": "0.1.0",
- "libmime": "3.0.0",
- "libqp": "1.1.0",
- "nodemailer-fetch": "1.6.0",
- "nodemailer-shared": "1.1.0",
- "punycode": "1.4.1"
- }
- },
"builtin-modules": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
@@ -1635,9 +1505,9 @@
"dev": true
},
"circular-json": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.5.tgz",
- "integrity": "sha512-13YaR6kiz0kBNmIVM87Io8Hp7bWOo4r61vkEANy8iH9R9bc6avud/1FT0SBpqR1RpIQADOh/Q+yHZDA1iL6ysA==",
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.7.tgz",
+ "integrity": "sha512-/pXoV1JA847qRKPrHbBK6YIBGFF8GOP4wzSgUOA7q0ew0vAv0iJswP+2/nZQ9uzA3Azi7eTrg9L2yzXc/7ZMIA==",
"dev": true
},
"clap": {
@@ -2165,7 +2035,7 @@
"dev": true
},
"cryptiles": {
- "version": "2.0.5",
+ "version": "4.1.2",
"resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
"integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
"dev": true,
@@ -2368,13 +2238,6 @@
}
}
},
- "data-uri-to-buffer": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz",
- "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==",
- "dev": true,
- "optional": true
- },
"date-format": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz",
@@ -2419,13 +2282,6 @@
"integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=",
"dev": true
},
- "deep-is": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
- "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
- "dev": true,
- "optional": true
- },
"default-require-extensions": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz",
@@ -2482,27 +2338,6 @@
"integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
"dev": true
},
- "degenerator": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz",
- "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=",
- "dev": true,
- "optional": true,
- "requires": {
- "ast-types": "0.x.x",
- "escodegen": "1.x.x",
- "esprima": "3.x.x"
- },
- "dependencies": {
- "esprima": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
- "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
- "dev": true,
- "optional": true
- }
- }
- },
"del": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz",
@@ -2837,13 +2672,6 @@
"domelementtype": "1"
}
},
- "double-ended-queue": {
- "version": "2.1.0-0",
- "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz",
- "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=",
- "dev": true,
- "optional": true
- },
"duplexer": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
@@ -2933,9 +2761,9 @@
}
},
"engine.io": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.5.tgz",
- "integrity": "sha512-D06ivJkYxyRrcEe0bTpNnBQNgP9d3xog+qZlLbui8EsMr/DouQpf5o9FzJnWYHEYE0YsFHllUv2R1dkgYZXHcA==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.0.tgz",
+ "integrity": "sha512-mRbgmAtQ4GAlKwuPnnAvXXwdPhEx+jkc0OBCLrXuD/CRvwNK3AxRSnqK4FSqmAMRRHryVJP8TopOvmEaA64fKw==",
"dev": true,
"requires": {
"accepts": "~1.3.4",
@@ -2943,7 +2771,6 @@
"cookie": "0.3.1",
"debug": "~3.1.0",
"engine.io-parser": "~2.1.0",
- "uws": "~9.14.0",
"ws": "~3.3.1"
},
"dependencies": {
@@ -2959,9 +2786,9 @@
}
},
"engine.io-client": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.6.tgz",
- "integrity": "sha512-hnuHsFluXnsKOndS4Hv6SvUrgdYx1pk2NqfaDMW+GWdgfU3+/V25Cj7I8a0x92idSpa5PIhJRKxPvp9mnoLsfg==",
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
+ "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==",
"dev": true,
"requires": {
"component-emitter": "1.2.1",
@@ -3140,36 +2967,6 @@
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
"dev": true
},
- "escodegen": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz",
- "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==",
- "dev": true,
- "optional": true,
- "requires": {
- "esprima": "^3.1.3",
- "estraverse": "^4.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1",
- "source-map": "~0.6.1"
- },
- "dependencies": {
- "esprima": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
- "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
- "dev": true,
- "optional": true
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "optional": true
- }
- }
- },
"escope": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz",
@@ -3628,13 +3425,6 @@
"integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
"dev": true
},
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
- "dev": true,
- "optional": true
- },
"fastparse": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz",
@@ -3668,13 +3458,6 @@
"loader-utils": "^1.0.2"
}
},
- "file-uri-to-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
- "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
- "dev": true,
- "optional": true
- },
"filename-regex": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
@@ -4458,46 +4241,6 @@
"rimraf": "2"
}
},
- "ftp": {
- "version": "0.3.10",
- "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz",
- "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=",
- "dev": true,
- "optional": true,
- "requires": {
- "readable-stream": "1.1.x",
- "xregexp": "2.0.0"
- },
- "dependencies": {
- "isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
- "dev": true,
- "optional": true
- },
- "readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
- "dev": true,
- "optional": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
- "dev": true,
- "optional": true
- }
- }
- },
"function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
@@ -4564,21 +4307,6 @@
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
"dev": true
},
- "get-uri": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.2.tgz",
- "integrity": "sha512-ZD325dMZOgerGqF/rF6vZXyFGTAay62svjQIT+X/oU2PtxYpFxvSkbsdi+oxIrsNxlZVd4y8wUDqkaExWTI/Cw==",
- "dev": true,
- "optional": true,
- "requires": {
- "data-uri-to-buffer": "1",
- "debug": "2",
- "extend": "3",
- "file-uri-to-path": "1",
- "ftp": "~0.3.10",
- "readable-stream": "2"
- }
- },
"get-value": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
@@ -4911,17 +4639,6 @@
"resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.10.0.tgz",
"integrity": "sha1-+fCxTAvgDw5PseV3t0n+2eb1L1U="
},
- "hipchat-notifier": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz",
- "integrity": "sha1-ttJJdVQ3wZEII2d5nTupoPI7Ix4=",
- "dev": true,
- "optional": true,
- "requires": {
- "lodash": "^4.0.0",
- "request": "^2.0.0"
- }
- },
"hmac-drbg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@@ -5087,27 +4804,6 @@
"requires-port": "^1.0.0"
}
},
- "http-proxy-agent": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz",
- "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==",
- "dev": true,
- "requires": {
- "agent-base": "4",
- "debug": "3.1.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
- }
- },
"http-proxy-middleware": {
"version": "0.17.4",
"resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz",
@@ -5242,22 +4938,6 @@
"sshpk": "^1.7.0"
}
},
- "httpntlm": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/httpntlm/-/httpntlm-1.6.1.tgz",
- "integrity": "sha1-rQFScUOi6Hc8+uapb1hla7UqNLI=",
- "dev": true,
- "requires": {
- "httpreq": ">=0.4.22",
- "underscore": "~1.7.0"
- }
- },
- "httpreq": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/httpreq/-/httpreq-0.4.24.tgz",
- "integrity": "sha1-QzX/2CzZaWaKOUZckprGHWOTYn8=",
- "dev": true
- },
"https-browserify": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
@@ -5414,13 +5094,6 @@
"integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
"dev": true
},
- "inflection": {
- "version": "1.12.0",
- "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz",
- "integrity": "sha1-ogCTVlbW9fa8TcdQLhrstwMihBY=",
- "dev": true,
- "optional": true
- },
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -5797,10 +5470,13 @@
"dev": true
},
"isbinaryfile": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz",
- "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=",
- "dev": true
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz",
+ "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==",
+ "dev": true,
+ "requires": {
+ "buffer-alloc": "^1.2.0"
+ }
},
"isexe": {
"version": "2.0.0",
@@ -6266,9 +5942,9 @@
}
},
"karma": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/karma/-/karma-2.0.5.tgz",
- "integrity": "sha512-rECezBeY7mjzGUWhFlB7CvPHgkHJLXyUmWg+6vHCEsdWNUTnmiS6jRrIMcJEWgU2DUGZzGWG0bTRVky8fsDTOA==",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/karma/-/karma-3.0.0.tgz",
+ "integrity": "sha512-ZTjyuDXVXhXsvJ1E4CnZzbCjSxD6sEdzEsFYogLuZM0yqvg/mgz+O+R1jb0J7uAQeuzdY8kJgx6hSNXLwFuHIQ==",
"dev": true,
"requires": {
"bluebird": "^3.3.0",
@@ -6286,20 +5962,26 @@
"http-proxy": "^1.13.0",
"isbinaryfile": "^3.0.0",
"lodash": "^4.17.4",
- "log4js": "^2.5.3",
- "mime": "^1.3.4",
+ "log4js": "^3.0.0",
+ "mime": "^2.3.1",
"minimatch": "^3.0.2",
"optimist": "^0.6.1",
"qjobs": "^1.1.4",
"range-parser": "^1.2.0",
"rimraf": "^2.6.0",
"safe-buffer": "^5.0.1",
- "socket.io": "2.0.4",
+ "socket.io": "2.1.1",
"source-map": "^0.6.1",
"tmp": "0.0.33",
"useragent": "2.2.1"
},
"dependencies": {
+ "mime": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz",
+ "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==",
+ "dev": true
+ },
"optimist": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
@@ -6546,48 +6228,6 @@
}
}
},
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "dev": true,
- "optional": true,
- "requires": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- }
- },
- "libbase64": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-0.1.0.tgz",
- "integrity": "sha1-YjUag5VjrF/1vSbxL2Dpgwu3UeY=",
- "dev": true
- },
- "libmime": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/libmime/-/libmime-3.0.0.tgz",
- "integrity": "sha1-UaGp50SOy9Ms2lRCFnW7IbwJPaY=",
- "dev": true,
- "requires": {
- "iconv-lite": "0.4.15",
- "libbase64": "0.1.0",
- "libqp": "1.1.0"
- },
- "dependencies": {
- "iconv-lite": {
- "version": "0.4.15",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz",
- "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=",
- "dev": true
- }
- }
- },
- "libqp": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz",
- "integrity": "sha1-9ebgatdLeU+1tbZpiL9yjvHe2+g=",
- "dev": true
- },
"license-checker": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/license-checker/-/license-checker-7.1.1.tgz",
@@ -6793,152 +6433,32 @@
"dev": true
},
"log4js": {
- "version": "2.11.0",
- "resolved": "https://registry.npmjs.org/log4js/-/log4js-2.11.0.tgz",
- "integrity": "sha512-z1XdwyGFg8/WGkOyF6DPJjivCWNLKrklGdViywdYnSKOvgtEBo2UyEMZS5sD2mZrQlU3TvO8wDWLc8mzE1ncBQ==",
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/log4js/-/log4js-3.0.5.tgz",
+ "integrity": "sha512-IX5c3G/7fuTtdr0JjOT2OIR12aTESVhsH6cEsijloYwKgcPRlO6DgOU72v0UFhWcoV1HN6+M3dwT89qVPLXm0w==",
"dev": true,
"requires": {
- "amqplib": "^0.5.2",
- "axios": "^0.15.3",
- "circular-json": "^0.5.4",
+ "circular-json": "^0.5.5",
"date-format": "^1.2.0",
"debug": "^3.1.0",
- "hipchat-notifier": "^1.1.0",
- "loggly": "^1.1.0",
- "mailgun-js": "^0.18.0",
- "nodemailer": "^2.5.0",
- "redis": "^2.7.1",
- "semver": "^5.5.0",
- "slack-node": "~0.2.0",
+ "rfdc": "^1.1.2",
"streamroller": "0.7.0"
},
"dependencies": {
"debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
- }
- },
- "loggly": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/loggly/-/loggly-1.1.1.tgz",
- "integrity": "sha1-Cg/B0/o6XsRP3HuJe+uipGlc6+4=",
- "dev": true,
- "optional": true,
- "requires": {
- "json-stringify-safe": "5.0.x",
- "request": "2.75.x",
- "timespan": "2.3.x"
- },
- "dependencies": {
- "caseless": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
- "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=",
- "dev": true,
- "optional": true
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "dev": true,
- "optional": true,
- "requires": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- }
- },
- "form-data": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.0.0.tgz",
- "integrity": "sha1-bwrrrcxdoWwT4ezBETfYX5uIOyU=",
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz",
+ "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==",
"dev": true,
- "optional": true,
"requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.5",
- "mime-types": "^2.1.11"
+ "ms": "^2.1.1"
}
},
- "har-validator": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
- "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
- "dev": true,
- "optional": true,
- "requires": {
- "chalk": "^1.1.1",
- "commander": "^2.9.0",
- "is-my-json-valid": "^2.12.4",
- "pinkie-promise": "^2.0.0"
- }
- },
- "node-uuid": {
- "version": "1.4.8",
- "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
- "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=",
- "dev": true,
- "optional": true
- },
- "qs": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz",
- "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=",
- "dev": true,
- "optional": true
- },
- "request": {
- "version": "2.75.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.75.0.tgz",
- "integrity": "sha1-0rgmiihtoT6qXQGt9dGMyQ9lfZM=",
- "dev": true,
- "optional": true,
- "requires": {
- "aws-sign2": "~0.6.0",
- "aws4": "^1.2.1",
- "bl": "~1.1.2",
- "caseless": "~0.11.0",
- "combined-stream": "~1.0.5",
- "extend": "~3.0.0",
- "forever-agent": "~0.6.1",
- "form-data": "~2.0.0",
- "har-validator": "~2.0.6",
- "hawk": "~3.1.3",
- "http-signature": "~1.1.0",
- "is-typedarray": "~1.0.0",
- "isstream": "~0.1.2",
- "json-stringify-safe": "~5.0.1",
- "mime-types": "~2.1.7",
- "node-uuid": "~1.4.7",
- "oauth-sign": "~0.8.1",
- "qs": "~6.2.0",
- "stringstream": "~0.0.4",
- "tough-cookie": "~2.3.0",
- "tunnel-agent": "~0.4.1"
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
- "dev": true,
- "optional": true
- },
- "tunnel-agent": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
- "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=",
- "dev": true,
- "optional": true
+ "ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "dev": true
}
}
},
@@ -6998,59 +6518,6 @@
"vlq": "^0.2.2"
}
},
- "mailcomposer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz",
- "integrity": "sha1-DhxEsqB890DuF9wUm6AJ8Zyt/rQ=",
- "dev": true,
- "optional": true,
- "requires": {
- "buildmail": "4.0.1",
- "libmime": "3.0.0"
- }
- },
- "mailgun-js": {
- "version": "0.18.1",
- "resolved": "https://registry.npmjs.org/mailgun-js/-/mailgun-js-0.18.1.tgz",
- "integrity": "sha512-lvuMP14u24HS2uBsJEnzSyPMxzU2b99tQsIx1o6QNjqxjk8b3WvR+vq5oG1mjqz/IBYo+5gF+uSoDS0RkMVHmg==",
- "dev": true,
- "optional": true,
- "requires": {
- "async": "~2.6.0",
- "debug": "~3.1.0",
- "form-data": "~2.3.0",
- "inflection": "~1.12.0",
- "is-stream": "^1.1.0",
- "path-proxy": "~1.0.0",
- "promisify-call": "^2.0.2",
- "proxy-agent": "~3.0.0",
- "tsscmp": "~1.0.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "optional": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "form-data": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
- "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
- "dev": true,
- "optional": true,
- "requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "1.0.6",
- "mime-types": "^2.1.12"
- }
- }
- }
- },
"make-dir": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
@@ -7417,13 +6884,6 @@
"integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==",
"dev": true
},
- "netmask": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz",
- "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=",
- "dev": true,
- "optional": true
- },
"next-tick": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
@@ -7640,91 +7100,6 @@
}
}
},
- "nodemailer": {
- "version": "2.7.2",
- "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-2.7.2.tgz",
- "integrity": "sha1-8kLmSa7q45tsftdA73sGHEBNMPk=",
- "dev": true,
- "optional": true,
- "requires": {
- "libmime": "3.0.0",
- "mailcomposer": "4.0.1",
- "nodemailer-direct-transport": "3.3.2",
- "nodemailer-shared": "1.1.0",
- "nodemailer-smtp-pool": "2.8.2",
- "nodemailer-smtp-transport": "2.7.2",
- "socks": "1.1.9"
- },
- "dependencies": {
- "socks": {
- "version": "1.1.9",
- "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.9.tgz",
- "integrity": "sha1-Yo1+TQSRJDVEWsC25Fk3bLPm1pE=",
- "dev": true,
- "optional": true,
- "requires": {
- "ip": "^1.1.2",
- "smart-buffer": "^1.0.4"
- }
- }
- }
- },
- "nodemailer-direct-transport": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz",
- "integrity": "sha1-6W+vuQNYVglH5WkBfZfmBzilCoY=",
- "dev": true,
- "optional": true,
- "requires": {
- "nodemailer-shared": "1.1.0",
- "smtp-connection": "2.12.0"
- }
- },
- "nodemailer-fetch": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz",
- "integrity": "sha1-ecSQihwPXzdbc/6IjamCj23JY6Q=",
- "dev": true
- },
- "nodemailer-shared": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz",
- "integrity": "sha1-z1mU4v0mjQD1zw+nZ6CBae2wfsA=",
- "dev": true,
- "requires": {
- "nodemailer-fetch": "1.6.0"
- }
- },
- "nodemailer-smtp-pool": {
- "version": "2.8.2",
- "resolved": "https://registry.npmjs.org/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz",
- "integrity": "sha1-LrlNbPhXgLG0clzoU7nL1ejajHI=",
- "dev": true,
- "optional": true,
- "requires": {
- "nodemailer-shared": "1.1.0",
- "nodemailer-wellknown": "0.1.10",
- "smtp-connection": "2.12.0"
- }
- },
- "nodemailer-smtp-transport": {
- "version": "2.7.2",
- "resolved": "https://registry.npmjs.org/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz",
- "integrity": "sha1-A9ccdjFPFKx9vHvwM6am0W1n+3c=",
- "dev": true,
- "optional": true,
- "requires": {
- "nodemailer-shared": "1.1.0",
- "nodemailer-wellknown": "0.1.10",
- "smtp-connection": "2.12.0"
- }
- },
- "nodemailer-wellknown": {
- "version": "0.1.10",
- "resolved": "https://registry.npmjs.org/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz",
- "integrity": "sha1-WG24EB2zDLRDjrVGc3pBqtDPE9U=",
- "dev": true
- },
"nopt": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz",
@@ -7962,30 +7337,6 @@
"wordwrap": "~0.0.2"
}
},
- "optionator": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz",
- "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=",
- "dev": true,
- "optional": true,
- "requires": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.4",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "wordwrap": "~1.0.0"
- },
- "dependencies": {
- "wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
- "dev": true,
- "optional": true
- }
- }
- },
"original": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/original/-/original-1.0.1.tgz",
@@ -8067,60 +7418,6 @@
"integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
"dev": true
},
- "pac-proxy-agent": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz",
- "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==",
- "dev": true,
- "optional": true,
- "requires": {
- "agent-base": "^4.2.0",
- "debug": "^3.1.0",
- "get-uri": "^2.0.0",
- "http-proxy-agent": "^2.1.0",
- "https-proxy-agent": "^2.2.1",
- "pac-resolver": "^3.0.0",
- "raw-body": "^2.2.0",
- "socks-proxy-agent": "^3.0.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "optional": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "socks-proxy-agent": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz",
- "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==",
- "dev": true,
- "optional": true,
- "requires": {
- "agent-base": "^4.1.0",
- "socks": "^1.1.10"
- }
- }
- }
- },
- "pac-resolver": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz",
- "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==",
- "dev": true,
- "optional": true,
- "requires": {
- "co": "^4.6.0",
- "degenerator": "^1.0.4",
- "ip": "^1.1.5",
- "netmask": "^1.0.6",
- "thunkify": "^2.1.2"
- }
- },
"pako": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz",
@@ -8286,25 +7583,6 @@
"integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=",
"dev": true
},
- "path-proxy": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/path-proxy/-/path-proxy-1.0.0.tgz",
- "integrity": "sha1-GOijaFn8nS8aU7SN7hOFQ8Ag3l4=",
- "dev": true,
- "optional": true,
- "requires": {
- "inflection": "~1.3.0"
- },
- "dependencies": {
- "inflection": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.3.8.tgz",
- "integrity": "sha1-y9Fg2p91sUw8xjV41POWeEvzAU4=",
- "dev": true,
- "optional": true
- }
- }
- },
"path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
@@ -9000,12 +8278,6 @@
"uniqs": "^2.0.0"
}
},
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
- "dev": true
- },
"prepend-http": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
@@ -9062,16 +8334,6 @@
"integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
"dev": true
},
- "promisify-call": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/promisify-call/-/promisify-call-2.0.4.tgz",
- "integrity": "sha1-1IwtRWUszM1SgB3ey9UzptS9X7o=",
- "dev": true,
- "optional": true,
- "requires": {
- "with-callback": "^1.0.2"
- }
- },
"protractor": {
"version": "5.4.0",
"resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.0.tgz",
@@ -9295,42 +8557,6 @@
"ipaddr.js": "1.6.0"
}
},
- "proxy-agent": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.0.1.tgz",
- "integrity": "sha512-mAZexaz9ZxQhYPWfAjzlrloEjW+JHiBFryE4AJXFDTnaXfmH/FKqC1swTRKuEPbHWz02flQNXFOyDUF7zfEG6A==",
- "dev": true,
- "optional": true,
- "requires": {
- "agent-base": "^4.2.0",
- "debug": "^3.1.0",
- "http-proxy-agent": "^2.1.0",
- "https-proxy-agent": "^2.2.1",
- "lru-cache": "^4.1.2",
- "pac-proxy-agent": "^2.0.1",
- "proxy-from-env": "^1.0.0",
- "socks-proxy-agent": "^4.0.1"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "optional": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
- }
- },
- "proxy-from-env": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz",
- "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=",
- "dev": true,
- "optional": true
- },
"prr": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
@@ -9613,32 +8839,6 @@
"strip-indent": "^1.0.1"
}
},
- "redis": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz",
- "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==",
- "dev": true,
- "optional": true,
- "requires": {
- "double-ended-queue": "^2.1.0-0",
- "redis-commands": "^1.2.0",
- "redis-parser": "^2.6.0"
- }
- },
- "redis-commands": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.5.tgz",
- "integrity": "sha512-foGF8u6MXGFF++1TZVC6icGXuMYPftKXt1FBT2vrfU9ZATNtZJ8duRC5d1lEfE8hyVe3jhelHGB91oB7I6qLsA==",
- "dev": true,
- "optional": true
- },
- "redis-parser": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz",
- "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=",
- "dev": true,
- "optional": true
- },
"reduce-css-calc": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz",
@@ -9865,28 +9065,6 @@
"throttleit": "^1.0.0"
}
},
- "requestretry": {
- "version": "1.13.0",
- "resolved": "https://registry.npmjs.org/requestretry/-/requestretry-1.13.0.tgz",
- "integrity": "sha512-Lmh9qMvnQXADGAQxsXHP4rbgO6pffCfuR8XUBdP9aitJcLQJxhp7YZK4xAVYXnPJ5E52mwrfiKQtKonPL8xsmg==",
- "dev": true,
- "optional": true,
- "requires": {
- "extend": "^3.0.0",
- "lodash": "^4.15.0",
- "request": "^2.74.0",
- "when": "^3.7.7"
- },
- "dependencies": {
- "when": {
- "version": "3.7.8",
- "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz",
- "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=",
- "dev": true,
- "optional": true
- }
- }
- },
"require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -9935,6 +9113,12 @@
"integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
"dev": true
},
+ "rfdc": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.2.tgz",
+ "integrity": "sha512-92ktAgvZhBzYTIK0Mja9uen5q5J3NRVMoDkJL2VMwq6SXjVCgqvQeVP2XAaUY6HT+XpQYeLSjb3UoitBryKmdA==",
+ "dev": true
+ },
"right-align": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
@@ -10337,16 +9521,6 @@
"debug": "^2.2.0"
}
},
- "slack-node": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/slack-node/-/slack-node-0.2.0.tgz",
- "integrity": "sha1-3kuN3aqLeT9h29KTgQT9q/N9+jA=",
- "dev": true,
- "optional": true,
- "requires": {
- "requestretry": "^1.2.2"
- }
- },
"slash": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
@@ -10359,23 +9533,6 @@
"integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=",
"dev": true
},
- "smart-buffer": {
- "version": "1.1.15",
- "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz",
- "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=",
- "dev": true,
- "optional": true
- },
- "smtp-connection": {
- "version": "2.12.0",
- "resolved": "https://registry.npmjs.org/smtp-connection/-/smtp-connection-2.12.0.tgz",
- "integrity": "sha1-1275EnyyPCJZ7bHoNJwujV4tdME=",
- "dev": true,
- "requires": {
- "httpntlm": "1.6.1",
- "nodemailer-shared": "1.1.0"
- }
- },
"snapdragon": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
@@ -10503,16 +9660,28 @@
}
},
"socket.io": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.0.4.tgz",
- "integrity": "sha1-waRZDO/4fs8TxyZS8Eb3FrKeYBQ=",
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz",
+ "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==",
"dev": true,
"requires": {
- "debug": "~2.6.6",
- "engine.io": "~3.1.0",
+ "debug": "~3.1.0",
+ "engine.io": "~3.2.0",
+ "has-binary2": "~1.0.2",
"socket.io-adapter": "~1.1.0",
- "socket.io-client": "2.0.4",
- "socket.io-parser": "~3.1.1"
+ "socket.io-client": "2.1.1",
+ "socket.io-parser": "~3.2.0"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ }
}
},
"socket.io-adapter": {
@@ -10522,35 +9691,46 @@
"dev": true
},
"socket.io-client": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz",
- "integrity": "sha1-CRilUkBtxeVAs4Dc2Xr8SmQzL44=",
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz",
+ "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==",
"dev": true,
"requires": {
"backo2": "1.0.2",
"base64-arraybuffer": "0.1.5",
"component-bind": "1.0.0",
"component-emitter": "1.2.1",
- "debug": "~2.6.4",
- "engine.io-client": "~3.1.0",
+ "debug": "~3.1.0",
+ "engine.io-client": "~3.2.0",
+ "has-binary2": "~1.0.2",
"has-cors": "1.1.0",
"indexof": "0.0.1",
"object-component": "0.0.3",
"parseqs": "0.0.5",
"parseuri": "0.0.5",
- "socket.io-parser": "~3.1.1",
+ "socket.io-parser": "~3.2.0",
"to-array": "0.1.4"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ }
}
},
"socket.io-parser": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.3.tgz",
- "integrity": "sha512-g0a2HPqLguqAczs3dMECuA1RgoGFPyvDqcbaDEdCWY9g59kdUAz3YRmaJBNKXflrHNwB7Q12Gkf/0CZXfdHR7g==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
+ "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==",
"dev": true,
"requires": {
"component-emitter": "1.2.1",
"debug": "~3.1.0",
- "has-binary2": "~1.0.2",
"isarray": "2.0.1"
},
"dependencies": {
@@ -10614,48 +9794,6 @@
}
}
},
- "socks": {
- "version": "1.1.10",
- "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz",
- "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=",
- "dev": true,
- "optional": true,
- "requires": {
- "ip": "^1.1.4",
- "smart-buffer": "^1.0.13"
- }
- },
- "socks-proxy-agent": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz",
- "integrity": "sha512-Kezx6/VBguXOsEe5oU3lXYyKMi4+gva72TwJ7pQY5JfqUx2nMk7NXA6z/mpNqIlfQjWYVfeuNvQjexiTaTn6Nw==",
- "dev": true,
- "optional": true,
- "requires": {
- "agent-base": "~4.2.0",
- "socks": "~2.2.0"
- },
- "dependencies": {
- "smart-buffer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.1.tgz",
- "integrity": "sha512-RFqinRVJVcCAL9Uh1oVqE6FZkqsyLiVOYEZ20TqIOjuX7iFVJ+zsbs4RIghnw/pTs7mZvt8ZHhvm1ZUrR4fykg==",
- "dev": true,
- "optional": true
- },
- "socks": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/socks/-/socks-2.2.1.tgz",
- "integrity": "sha512-0GabKw7n9mI46vcNrVfs0o6XzWzjVa3h6GaSo2UPxtWAROXUWavfJWh1M4PR5tnE0dcnQXZIDFP4yrAysLze/w==",
- "dev": true,
- "optional": true,
- "requires": {
- "ip": "^1.1.5",
- "smart-buffer": "^4.0.1"
- }
- }
- }
- },
"sort-keys": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
@@ -10930,13 +10068,19 @@
},
"dependencies": {
"debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz",
+ "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==",
"dev": true,
"requires": {
- "ms": "2.0.0"
+ "ms": "^2.1.1"
}
+ },
+ "ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "dev": true
}
}
},
@@ -11153,13 +10297,6 @@
"xtend": "~4.0.1"
}
},
- "thunkify": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz",
- "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=",
- "dev": true,
- "optional": true
- },
"thunky": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz",
@@ -11181,13 +10318,6 @@
"setimmediate": "^1.0.4"
}
},
- "timespan": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz",
- "integrity": "sha1-SQLOBAvRPYRcj1myfp1ZutbzmSk=",
- "dev": true,
- "optional": true
- },
"tmp": {
"version": "0.0.33",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
@@ -11440,13 +10570,6 @@
}
}
},
- "tsscmp": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz",
- "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==",
- "dev": true,
- "optional": true
- },
"tsutils": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/tsutils/-/tsutils-1.9.1.tgz",
@@ -11475,15 +10598,6 @@
"dev": true,
"optional": true
},
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2"
- }
- },
"type-is": {
"version": "1.6.16",
"resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
@@ -11596,12 +10710,6 @@
"integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==",
"dev": true
},
- "underscore": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz",
- "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=",
- "dev": true
- },
"union-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz",
@@ -11767,7 +10875,7 @@
}
},
"url-parse": {
- "version": "1.4.0",
+ "version": "1.4.3",
"resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.0.tgz",
"integrity": "sha512-ERuGxDiQ6Xw/agN4tuoCRbmwRuZP0cJ1lJxJubXr5Q/5cDa78+Dc4wfvtxzhzhkm5VvmW6Mf8EVj9SPGN4l8Lg==",
"dev": true,
@@ -11856,13 +10964,6 @@
"integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==",
"dev": true
},
- "uws": {
- "version": "9.14.0",
- "resolved": "https://registry.npmjs.org/uws/-/uws-9.14.0.tgz",
- "integrity": "sha512-HNMztPP5A1sKuVFmdZ6BPVpBQd5bUjNC8EFMFiICK+oho/OQsAJy5hnIx4btMHiOk8j04f/DbIlqnEZ9d72dqg==",
- "dev": true,
- "optional": true
- },
"v8flags": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz",
@@ -12514,13 +11615,6 @@
"integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
"dev": true
},
- "with-callback": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/with-callback/-/with-callback-1.0.2.tgz",
- "integrity": "sha1-oJYpuakgAo1yFAT7Q1vc/1yRvCE=",
- "dev": true,
- "optional": true
- },
"wordwrap": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
@@ -12586,13 +11680,6 @@
"integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=",
"dev": true
},
- "xregexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz",
- "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=",
- "dev": true,
- "optional": true
- },
"xtend": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
diff --git a/package.json b/package.json
index dd90665..c0565ed 100644
--- a/package.json
+++ b/package.json
@@ -74,7 +74,7 @@
"codelyzer": "3.0.0",
"jasmine-core": "2.5.2",
"jasmine-spec-reporter": "3.2.0",
- "karma": "^2.0.5",
+ "karma": "^3.0.0",
"karma-chrome-launcher": "2.0.0",
"karma-cli": "1.0.1",
"karma-coverage-istanbul-reporter": "0.2.2",
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index 2607262..904a66b 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -114,6 +114,7 @@ export function HttpLoaderFactory(http: Http) {
ExistsGuardService,
...appRoutingProviders,
ImageService,
+
{
provide: LOCALE_ID, useFactory: getSelectedLanguage, deps: [TranslateService],
}
diff --git a/src/app/centers/center-exists.guard.ts b/src/app/centers/center-exists.guard.ts
index 6936b08..7c562ed 100644
--- a/src/app/centers/center-exists.guard.ts
+++ b/src/app/centers/center-exists.guard.ts
@@ -21,7 +21,7 @@ import {Injectable} from '@angular/core';
import {OfficeService} from '../services/office/office.service';
import * as fromEmployees from './store';
import {Observable} from 'rxjs/Observable';
-import {LoadAction} from './store/employee.actions';
+import {LoadAction} from './store/center.actions';
import {of} from 'rxjs/observable/of';
import {EmployeesStore} from './store/index';
import {ExistsGuardService} from '../common/guards/exists-guard';
diff --git a/src/app/centers/center.component.html b/src/app/centers/center.component.html
index bd1065a..7765d49 100644
--- a/src/app/centers/center.component.html
+++ b/src/app/centers/center.component.html
@@ -1,15 +1,41 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
<fims-layout-card-over title="{{'Manage centers' | translate}}">
- <fims-layout-card-over-header-menu>
- <td-search-box #searchBox placeholder="{{'Search' | translate}}" (search)="search($event)" [alwaysVisible]="false"></td-search-box>
- </fims-layout-card-over-header-menu>
- <fims-data-table flex
- (onFetch)="fetchEmployees($event)"
- (onActionCellClick)="rowSelect($event)"
- [columns]="columns"
- [data]="employeeData$ | async"
- [loading]="loading$ | async"
- [sortable]="true"
- [pageable]="true">
- </fims-data-table>
- </fims-layout-card-over>
- <fims-fab-button title="{{'Create new center' | translate}}" icon="add" [link]="['create']" [permission]="{ id: 'office_employees', accessLevel: 'CHANGE'}"></fims-fab-button>
\ No newline at end of file
+ <fims-layout-card-over-header-menu>
+ <td-search-box #searchBox placeholder="{{'Search' | translate}}" (search)="search($event)" [alwaysVisible]="false"></td-search-box>
+ </fims-layout-card-over-header-menu>
+
+ <table style="width:100%; font-size: 14px;">
+ <tr>
+ <th>Name</th>
+ <th>Account #</th>
+ <th>External Id</th>
+ <th>Status</th>
+ <th>Office</th>
+ </tr>
+ <tr *ngFor = "let data of DataArray" (onActionCellClick)="rowSelect($event)">
+ <td style="text-align: center; vertical-align: middle;">{{data.name}}</td>
+ <td style="text-align: center; vertical-align: middle;">{{data.accountNo}}</td>
+ <td style="text-align: center; vertical-align: middle;">{{data.id}}</td>
+ <td style="text-align: center; vertical-align: middle;">{{data.status.value}}</td>
+ <td style="text-align: center; vertical-align: middle;"><a (click)="rowSelect($event)">{{data.officeName}}</a></td>
+ </tr>
+
+ </table>
+</fims-layout-card-over>
+<fims-fab-button title="{{'Create new center' | translate}}" icon="add" [link]="['create']" [permission]="{ id: 'office_employees', accessLevel: 'CHANGE'}"></fims-fab-button>
\ No newline at end of file
diff --git a/src/app/centers/center.component.scss b/src/app/centers/center.component.scss
deleted file mode 100644
index e69de29..0000000
diff --git a/src/app/centers/center.component.ts b/src/app/centers/center.component.ts
index ab58913..4ab8312 100644
--- a/src/app/centers/center.component.ts
+++ b/src/app/centers/center.component.ts
@@ -1,3 +1,21 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
import {Component, OnInit} from '@angular/core';
import {ActivatedRoute, Params, Router} from '@angular/router';
import {Employee} from '../services/office/domain/employee.model';
@@ -7,20 +25,23 @@ import {Store} from '@ngrx/store';
import * as fromRoot from '../store';
import {Observable} from 'rxjs/Observable';
import {SEARCH} from '../store/employee/employee.actions';
+import {OfficeService} from '../services/office/office.service';
@Component({
selector: 'fims-center',
- templateUrl: './center.component.html',
- styleUrls: ['./center.component.scss']
+ templateUrl: './center.component.html'
})
export class CenterComponent implements OnInit {
-
+
employeeData$: Observable<TableData>;
loading$: Observable<boolean>;
+ DataArray: any =[];
+
+
columns: any[] = [
{ name: 'name', label: 'Name' },
{ name: 'accountNumber', label: 'Account #' },
@@ -33,7 +54,7 @@ export class CenterComponent implements OnInit {
private lastFetchRequest: FetchRequest = {};
- constructor(private router: Router, private route: ActivatedRoute, private store: Store<fromRoot.State>) {}
+ constructor(private router: Router, private route: ActivatedRoute, private store: Store<fromRoot.State>, public data: OfficeService) {}
ngOnInit(): void {
@@ -49,13 +70,15 @@ export class CenterComponent implements OnInit {
this.route.queryParams.subscribe((params: Params) => {
this.search(params['term']);
});
+ this.LoadTableData();
+
}
search(searchTerm: string): void {
this.searchTerm = searchTerm;
this.fetchEmployees();
}
-
+
rowSelect(row: Employee): void {
this.router.navigate(['detail', row.identifier], { relativeTo: this.route });
}
@@ -69,4 +92,15 @@ export class CenterComponent implements OnInit {
this.store.dispatch({ type: SEARCH, payload: this.lastFetchRequest });
}
+
+ LoadTableData(){
+ this.data.allCenters().subscribe(
+ data => {
+ this.DataArray = data;
+ console.log(data);
+ }
+ )
+ }
+
+
}
diff --git a/src/app/centers/center.module.ts b/src/app/centers/center.module.ts
index 10ded43..fbb9b68 100644
--- a/src/app/centers/center.module.ts
+++ b/src/app/centers/center.module.ts
@@ -1,11 +1,29 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
import {NgModule} from '@angular/core';
import {RouterModule} from '@angular/router';
import {CenterComponent} from './center.component';
import {CenterRoutes} from './center.routing';
import {CenterFormComponent} from './form/form.component';
import {CreateCenterFormComponent} from './form/create/create.form.component';
-import {EmployeeDetailComponent} from './detail/employee.detail.component';
-import {EditEmployeeFormComponent} from './form/edit/edit.form.component';
+import {CenterDetailComponent} from './detail/center.detail.component';
+import {EditCenterFormComponent} from './form/edit/edit.form.component';
import {UserResolver} from './user.resolver';
import {FimsSharedModule} from '../common/common.module';
import {CenterExistsGuard} from './center-exists.guard';
@@ -54,8 +72,8 @@ import {ReactiveFormsModule} from '@angular/forms';
CenterComponent,
CenterFormComponent,
CreateCenterFormComponent,
- EditEmployeeFormComponent,
- EmployeeDetailComponent
+ EditCenterFormComponent,
+ CenterDetailComponent
],
providers: [
UserResolver,
@@ -63,4 +81,4 @@ import {ReactiveFormsModule} from '@angular/forms';
{ provide: EmployeesStore, useFactory: employeeStoreFactory, deps: [Store]}
]
})
- export class CenterModule {}
\ No newline at end of file
+export class CenterModule {}
diff --git a/src/app/centers/center.routing.ts b/src/app/centers/center.routing.ts
index 3b7718a..071b1d0 100644
--- a/src/app/centers/center.routing.ts
+++ b/src/app/centers/center.routing.ts
@@ -1,8 +1,26 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
import {Routes} from '@angular/router';
import {CenterComponent} from './center.component';
import {CreateCenterFormComponent} from './form/create/create.form.component';
-import {EmployeeDetailComponent} from './detail/employee.detail.component';
-import {EditEmployeeFormComponent} from './form/edit/edit.form.component';
+import {CenterDetailComponent} from './detail/center.detail.component';
+import {EditCenterFormComponent} from './form/edit/edit.form.component';
import {UserResolver} from './user.resolver';
import {CenterExistsGuard} from './center-exists.guard';
@@ -18,15 +36,13 @@ export const CenterRoutes: Routes = [
data: {title: 'Create Employee', hasPermission: {id: 'office_employees', accessLevel: 'CHANGE'}}
},
{
- path: 'detail/:id/edit',
- component: EditEmployeeFormComponent,
- canActivate: [CenterExistsGuard],
- resolve: {user: UserResolver},
- data: {title: 'Edit Employee', hasPermission: {id: 'office_employees', accessLevel: 'CHANGE'}}
+ path: 'detail',
+ component: EditCenterFormComponent,
+
},
{
path: 'detail/:id',
- component: EmployeeDetailComponent,
+ component: CenterDetailComponent,
canActivate: [CenterExistsGuard],
resolve: {user: UserResolver},
data: {title: 'View Employee', hasPermission: {id: 'office_employees', accessLevel: 'READ'}}
diff --git a/src/app/centers/detail/employee.detail.component.html b/src/app/centers/detail/center.detail.component.html
similarity index 100%
rename from src/app/centers/detail/employee.detail.component.html
rename to src/app/centers/detail/center.detail.component.html
diff --git a/src/app/centers/detail/employee.detail.component.ts b/src/app/centers/detail/center.detail.component.ts
similarity index 90%
rename from src/app/centers/detail/employee.detail.component.ts
rename to src/app/centers/detail/center.detail.component.ts
index c019833..c496105 100644
--- a/src/app/centers/detail/employee.detail.component.ts
+++ b/src/app/centers/detail/center.detail.component.ts
@@ -18,26 +18,26 @@
*/
import {ActivatedRoute, Router} from '@angular/router';
import {Component, OnDestroy, OnInit} from '@angular/core';
-import {Center} from '../../services/office/domain/employee.model';
+import {Employee} from '../../services/office/domain/employee.model';
import {TdDialogService} from '@covalent/core';
import {Observable} from 'rxjs/Observable';
import {Subscription} from 'rxjs/Subscription';
import {User} from '../../services/identity/domain/user.model';
import * as fromEmployee from '../store';
-import {DELETE, SelectAction} from '../store/employee.actions';
+import {DELETE, SelectAction} from '../store/center.actions';
import {EmployeesStore} from '../store/index';
@Component({
- selector: 'fims-employee-detail',
- templateUrl: './employee.detail.component.html'
+ selector: 'fims-center-detail',
+ templateUrl: './center.detail.component.html'
})
-export class EmployeeDetailComponent implements OnInit, OnDestroy {
+export class CenterDetailComponent implements OnInit, OnDestroy {
private actionsSubscription: Subscription;
private employeeSubscription: Subscription;
- employee: Center;
+ employee: Employee;
user: User;
diff --git a/src/app/centers/form/create/create.form.component.html b/src/app/centers/form/create/create.form.component.html
index 16a62e0..b7345c6 100644
--- a/src/app/centers/form/create/create.form.component.html
+++ b/src/app/centers/form/create/create.form.component.html
@@ -19,6 +19,6 @@
<fims-center-form-component #form
(onSave)="onSave($event)"
(onCancel)="onCancel()"
- [formData]="centerFormData">
+ [formData]="employeeFormData">
</fims-center-form-component>
</fims-layout-card-over>
diff --git a/src/app/centers/form/create/create.form.component.spec.ts b/src/app/centers/form/create/create.form.component.spec.ts
index 0475674..22aeecb 100644
--- a/src/app/centers/form/create/create.form.component.spec.ts
+++ b/src/app/centers/form/create/create.form.component.spec.ts
@@ -20,20 +20,20 @@ import {async, ComponentFixture, inject, TestBed} from '@angular/core/testing';
import {TranslateModule} from '@ngx-translate/core';
import {ReactiveFormsModule} from '@angular/forms';
import {CovalentStepsModule} from '@covalent/core';
-import {CenterFormComponent, CenterSaveEvent} from '../form.component';
+import {CenterFormComponent, EmployeeSaveEvent} from '../form.component';
import {ActivatedRoute, Router} from '@angular/router';
import {Observable} from 'rxjs/Observable';
import {CreateCenterFormComponent} from './create.form.component';
import {mapEmployee, mapUser} from '../form.mapper';
import {EmployeesStore} from '../../store/index';
-import {CREATE} from '../../store/employee.actions';
+import {CREATE} from '../../store/center.actions';
import {Store} from '@ngrx/store';
import {NoopAnimationsModule} from '@angular/platform-browser/animations';
import {MatCardModule, MatInputModule, MatOptionModule, MatSelectModule} from '@angular/material';
import {CUSTOM_ELEMENTS_SCHEMA} from '@angular/core';
import {FimsSharedModule} from '../../../common/common.module';
-const eventMock: CenterSaveEvent = {
+const eventMock: EmployeeSaveEvent = {
detailForm: {
identifier: 'test',
firstName: 'test',
@@ -47,7 +47,6 @@ const eventMock: CenterSaveEvent = {
mobile: 'test',
phone: 'test'
},
-
officeForm: {
assignedOffice: 'test'
}
diff --git a/src/app/centers/form/create/create.form.component.ts b/src/app/centers/form/create/create.form.component.ts
index f5c1d0a..cf2d413 100644
--- a/src/app/centers/form/create/create.form.component.ts
+++ b/src/app/centers/form/create/create.form.component.ts
@@ -18,13 +18,13 @@
*/
import {Component, OnDestroy, OnInit, ViewChild} from '@angular/core';
import {ActivatedRoute, Router} from '@angular/router';
-import {CenterFormComponent, CenterFormData, CenterSaveEvent} from '../form.component';
+import {CenterFormComponent, EmployeeFormData, EmployeeSaveEvent} from '../form.component';
import {mapEmployee, mapUser} from '../form.mapper';
-import {Center} from '../../../services/office/domain/employee.model';
+import {Employee} from '../../../services/office/domain/employee.model';
import {UserWithPassword} from '../../../services/identity/domain/user-with-password.model';
import * as fromEmployees from '../../store';
import {Subscription} from 'rxjs/Subscription';
-import {CREATE, RESET_FORM} from '../../store/employee.actions';
+import {CREATE, RESET_FORM} from '../../store/center.actions';
import {Error} from '../../../services/domain/error.model';
import {EmployeesStore} from '../../store/index';
@@ -37,7 +37,7 @@ export class CreateCenterFormComponent implements OnInit, OnDestroy {
@ViewChild('form') formComponent: CenterFormComponent;
- centerFormData: CenterFormData = {
+ employeeFormData: EmployeeFormData = {
user: { identifier: '', role: ''},
employee: { identifier: '', givenName: '', surname: '', contactDetails: [] }
};
@@ -62,8 +62,8 @@ export class CreateCenterFormComponent implements OnInit, OnDestroy {
this.store.dispatch({ type: RESET_FORM });
}
- onSave(event: CenterSaveEvent): void {
- const employee: Center = mapEmployee(event);
+ onSave(event: EmployeeSaveEvent): void {
+ const employee: Employee = mapEmployee(event);
const user: UserWithPassword = mapUser(event);
this.store.dispatch({ type: CREATE, payload: {
diff --git a/src/app/centers/form/edit/edit.form.component.spec.ts b/src/app/centers/form/edit/edit.form.component.spec.ts
index c3dd78b..14d7685 100644
--- a/src/app/centers/form/edit/edit.form.component.spec.ts
+++ b/src/app/centers/form/edit/edit.form.component.spec.ts
@@ -20,15 +20,15 @@ import {async, ComponentFixture, inject, TestBed} from '@angular/core/testing';
import {TranslateModule} from '@ngx-translate/core';
import {ReactiveFormsModule} from '@angular/forms';
import {CovalentStepsModule} from '@covalent/core';
-import {EditEmployeeFormComponent} from './edit.form.component';
+import {EditCenterFormComponent} from './edit.form.component';
import {CenterFormComponent} from '../form.component';
import {ActivatedRoute, Router} from '@angular/router';
import {User} from '../../../services/identity/domain/user.model';
-import {Center} from '../../../services/office/domain/employee.model';
+import {Employee} from '../../../services/office/domain/employee.model';
import {Observable} from 'rxjs/Observable';
import {EmployeesStore} from '../../store/index';
import {Store} from '@ngrx/store';
-import {UPDATE} from '../../store/employee.actions';
+import {UPDATE} from '../../store/center.actions';
import * as fromEmployees from '../../store';
import {NoopAnimationsModule} from '@angular/platform-browser/animations';
import {MatCardModule, MatInputModule, MatOptionModule, MatSelectModule} from '@angular/material';
@@ -40,7 +40,7 @@ const userMock: User = {
role: 'test'
};
-const employeeMock: Center = {
+const employeeMock: Employee = {
identifier: 'test',
assignedOffice: 'test',
givenName: 'test',
@@ -54,7 +54,6 @@ const employeeMock: Center = {
preferenceLevel: 1
}
]
-
};
const activatedRoute = {
@@ -66,9 +65,9 @@ let router: Router;
describe('Test employee form component', () => {
- let fixture: ComponentFixture<EditEmployeeFormComponent>;
+ let fixture: ComponentFixture<EditCenterFormComponent>;
- let testComponent: EditEmployeeFormComponent;
+ let testComponent: EditCenterFormComponent;
beforeEach(() => {
router = jasmine.createSpyObj('Router', ['navigate']);
@@ -76,7 +75,7 @@ describe('Test employee form component', () => {
TestBed.configureTestingModule({
declarations: [
CenterFormComponent,
- EditEmployeeFormComponent,
+ EditCenterFormComponent,
],
imports: [
TranslateModule.forRoot(),
@@ -114,7 +113,7 @@ describe('Test employee form component', () => {
schemas: [CUSTOM_ELEMENTS_SCHEMA]
});
- fixture = TestBed.createComponent(EditEmployeeFormComponent);
+ fixture = TestBed.createComponent(EditCenterFormComponent);
testComponent = fixture.componentInstance;
});
diff --git a/src/app/centers/form/edit/edit.form.component.ts b/src/app/centers/form/edit/edit.form.component.ts
index f0ab243..ebf4456 100644
--- a/src/app/centers/form/edit/edit.form.component.ts
+++ b/src/app/centers/form/edit/edit.form.component.ts
@@ -18,24 +18,24 @@
*/
import {Component, OnInit, ViewChild} from '@angular/core';
import {ActivatedRoute, Router} from '@angular/router';
-import {CenterFormComponent, CenterFormData, CenterSaveEvent} from '../form.component';
+import {CenterFormComponent, EmployeeFormData, EmployeeSaveEvent} from '../form.component';
import {mapContactDetails, mapEmployee} from '../form.mapper';
-import {Center} from '../../../services/office/domain/employee.model';
+import {Employee} from '../../../services/office/domain/employee.model';
import {User} from '../../../services/identity/domain/user.model';
-import {UPDATE} from '../../store/employee.actions';
+import {UPDATE} from '../../store/center.actions';
import {Observable} from 'rxjs/Observable';
import {EmployeesStore, getSelectedEmployee} from '../../store/index';
@Component({
templateUrl: './edit.form.component.html'
})
-export class EditEmployeeFormComponent implements OnInit {
+export class EditCenterFormComponent implements OnInit {
@ViewChild('form') formComponent: CenterFormComponent;
- formData: Observable<CenterFormData>;
+ formData: Observable<EmployeeFormData>;
- employee: Center;
+ employee: Employee;
user: User;
@@ -45,7 +45,7 @@ export class EditEmployeeFormComponent implements OnInit {
this.formData = Observable.combineLatest(
this.store.select(getSelectedEmployee),
this.route.data,
- (employee: Center, data: { user: User }) => {
+ (employee: Employee, data: { user: User }) => {
return {
user: data.user,
employee: employee
@@ -54,8 +54,8 @@ export class EditEmployeeFormComponent implements OnInit {
);
}
- onSave(event: CenterSaveEvent) {
- const employee: Center = mapEmployee(event);
+ onSave(event: EmployeeSaveEvent) {
+ const employee: Employee = mapEmployee(event);
this.store.dispatch({ type: UPDATE, payload: {
employee: employee,
diff --git a/src/app/centers/form/form.component.html b/src/app/centers/form/form.component.html
index 43ff2d4..cbfe883 100644
--- a/src/app/centers/form/form.component.html
+++ b/src/app/centers/form/form.component.html
@@ -43,7 +43,8 @@
noSelectionMessage="{{'No office assigned to employee, yet.' | translate}}">
</fims-select-list>
<br/>
- <mat-form-field>
+
+ <mat-form-field>
<mat-select placeholder="Select Staff">
<mat-option *ngFor="let staff of staffs" [value]="staff.value">
{{staff.viewValue}}
@@ -51,13 +52,13 @@
</mat-select>
</mat-form-field>
-
+
<ng-template td-step-actions>
- <fims-form-continue-action (onContinue)="contactStep.open()"></fims-form-continue-action>
+ <fims-form-continue-action (onContinue)="groupStep.open()"></fims-form-continue-action>
</ng-template>
</td-step>
- <td-step #officeStep label="{{'Assign group to center' | translate}}"
+ <td-step #groupStep label="{{'Assign group to center' | translate}}"
[state]="officeForm.get('assignedOffice').value ? 'complete' : 'none'">
<fims-select-list #officeList flex
@@ -67,10 +68,6 @@
noSelectionMessage="{{'No group assigned to center, yet.' | translate}}">
</fims-select-list>
-
- <ng-template td-step-actions>
- <fims-form-continue-action (onContinue)="contactStep.open()"></fims-form-continue-action>
- </ng-template>
</td-step>
<td-step label="{{'Final step' | translate}}" [state]="'complete'">
diff --git a/src/app/centers/form/form.component.spec.ts b/src/app/centers/form/form.component.spec.ts
index 621eefa..645b857 100644
--- a/src/app/centers/form/form.component.spec.ts
+++ b/src/app/centers/form/form.component.spec.ts
@@ -18,8 +18,8 @@
*/
import {ComponentFixture, TestBed} from '@angular/core/testing';
import {Component, EventEmitter, ViewChild} from '@angular/core';
-import {Center} from '../../services/office/domain/employee.model';
-import {CenterFormComponent, CenterFormData, CenterSaveEvent} from './form.component';
+import {Employee} from '../../services/office/domain/employee.model';
+import {CenterFormComponent, EmployeeFormData, EmployeeSaveEvent} from './form.component';
import {User} from '../../services/identity/domain/user.model';
import {TranslateModule} from '@ngx-translate/core';
import {ReactiveFormsModule} from '@angular/forms';
@@ -30,7 +30,7 @@ import {NoopAnimationsModule} from '@angular/platform-browser/animations';
import {FimsSharedModule} from '../../common/common.module';
import {MatIconModule, MatInputModule, MatOptionModule, MatSelectModule} from '@angular/material';
-const employeeTemplate: Center = {
+const employeeTemplate: Employee = {
identifier: 'test',
givenName: 'test',
middleName: 'test',
@@ -40,7 +40,7 @@ const employeeTemplate: Center = {
group: 'BUSINESS',
value: 'test@test.de',
preferenceLevel: 0
- }],
+ }],
assignedOffice: 'test'
};
@@ -88,7 +88,7 @@ describe('Test employee form component', () => {
it('should test if the form save the original values', () => {
fixture.detectChanges();
- testComponent.saveEmitter.subscribe((saveEvent: CenterSaveEvent) => {
+ testComponent.saveEmitter.subscribe((saveEvent: EmployeeSaveEvent) => {
expect(employeeTemplate.identifier).toEqual(saveEvent.detailForm.identifier);
expect(employeeTemplate.givenName).toEqual(saveEvent.detailForm.firstName);
expect(employeeTemplate.middleName).toEqual(saveEvent.detailForm.middleName);
@@ -115,11 +115,11 @@ describe('Test employee form component', () => {
})
class TestComponent {
- saveEmitter = new EventEmitter<CenterSaveEvent>();
+ saveEmitter = new EventEmitter<EmployeeSaveEvent>();
- @ViewChild('form') formComponent: CenterFormComponent;
+ @ViewChild('form') formComponent: EmployeeFormComponent;
- employeeFormData: CenterFormData = {
+ employeeFormData: EmployeeFormData = {
employee: employeeTemplate,
user: userTemplate
};
@@ -128,7 +128,7 @@ class TestComponent {
this.formComponent.save();
}
- onSave(event: CenterSaveEvent): void {
+ onSave(event: EmployeeSaveEvent): void {
this.saveEmitter.emit(event);
}
diff --git a/src/app/centers/form/form.component.ts b/src/app/centers/form/form.component.ts
index 6f1e6cc..4c2d42c 100644
--- a/src/app/centers/form/form.component.ts
+++ b/src/app/centers/form/form.component.ts
@@ -21,7 +21,7 @@ import {FormBuilder, FormGroup, ValidatorFn, Validators} from '@angular/forms';
import {Observable} from 'rxjs/Observable';
import {TdStepComponent} from '@covalent/core';
import {Office} from '../../services/office/domain/office.model';
-import {Center} from '../../services/office/domain/employee.model';
+import {Employee} from '../../services/office/domain/employee.model';
import {BUSINESS, ContactDetail, EMAIL, MOBILE, PHONE} from '../../services/domain/contact/contact-detail.model';
import {FetchRequest} from '../../services/domain/paging/fetch-request.model';
import {Role} from '../../services/identity/domain/role.model';
@@ -32,12 +32,12 @@ import * as fromRoot from '../../store';
import {SEARCH as SEARCH_OFFICE} from '../../store/office/office.actions';
import {SEARCH as SEARCH_ROLE} from '../../store/role/role.actions';
-export interface CenterFormData {
+export interface EmployeeFormData {
user: User;
- employee: Center;
+ employee: Employee;
}
-export interface CenterSaveEvent {
+export interface EmployeeSaveEvent {
detailForm: {
identifier: string;
firstName: string;
@@ -51,7 +51,6 @@ export interface CenterSaveEvent {
phone: string;
mobile: string;
};
-
officeForm: {
assignedOffice: string;
};
@@ -75,13 +74,13 @@ export class CenterFormComponent implements OnInit {
@Input('editMode') editMode: boolean;
- @Input('formData') set formData(formData: CenterFormData) {
+ @Input('formData') set formData(formData: EmployeeFormData) {
this.prepareDetailForm(formData.employee, formData.user);
this.prepareOfficeForm(formData.employee);
this.prepareContactForm(formData.employee.contactDetails);
}
- @Output('onSave') onSave = new EventEmitter<CenterSaveEvent>();
+ @Output('onSave') onSave = new EventEmitter<EmployeeSaveEvent>();
@Output('onCancel') onCancel = new EventEmitter<void>();
constructor(private formBuilder: FormBuilder, private store: Store<fromRoot.State>) {}
@@ -98,7 +97,7 @@ export class CenterFormComponent implements OnInit {
this.step.open();
}
- prepareDetailForm(employee: Center, user: User): void {
+ prepareDetailForm(employee: Employee, user: User): void {
const passwordValidators: ValidatorFn[] = [Validators.minLength(8)];
if (!this.editMode) {
@@ -115,13 +114,13 @@ export class CenterFormComponent implements OnInit {
});
}
- private prepareOfficeForm(employee: Center) {
+ private prepareOfficeForm(employee: Employee) {
this.officeForm = this.formBuilder.group({
assignedOffice: [employee.assignedOffice]
});
}
- private prepareContactForm(contactDetails: ContactDetail[]): void {
+ private prepareContactForm(contactDetails: ContactDetail[]): void {
let phone = '';
let mobile = '';
let email = '';
@@ -140,7 +139,6 @@ export class CenterFormComponent implements OnInit {
mobile: [mobile, Validators.maxLength(256)]
});
}
-
getFirstItemByType(contactDetails: ContactDetail[], type: string): string {
const items = contactDetails.filter(contact => contact.type === type);
@@ -153,8 +151,6 @@ export class CenterFormComponent implements OnInit {
|| this.detailForm.invalid;
}
-
-
save(): void {
this.onSave.emit({
detailForm: this.detailForm.value,
diff --git a/src/app/centers/form/form.mapper.ts b/src/app/centers/form/form.mapper.ts
index c74aab3..eb6339f 100644
--- a/src/app/centers/form/form.mapper.ts
+++ b/src/app/centers/form/form.mapper.ts
@@ -17,9 +17,9 @@
* under the License.
*/
-import {CenterSaveEvent} from './form.component';
+import {EmployeeSaveEvent} from './form.component';
import {ContactDetail, ContactDetailType} from '../../services/domain/contact/contact-detail.model';
-import {Center} from '../../services/office/domain/employee.model';
+import {Employee} from '../../services/office/domain/employee.model';
import {UserWithPassword} from '../../services/identity/domain/user-with-password.model';
function buildContactDetail(type: ContactDetailType, value: string): ContactDetail {
@@ -29,7 +29,7 @@ function buildContactDetail(type: ContactDetailType, value: string): ContactDeta
value: value,
preferenceLevel: 1
};
-}
+}
export function mapContactDetails(contactForm: any): ContactDetail[] {
const contactDetails: ContactDetail[] = [];
@@ -49,13 +49,12 @@ export function mapContactDetails(contactForm: any): ContactDetail[] {
return contactDetails;
}
-
-export function mapEmployee(event: CenterSaveEvent): Center {
+export function mapEmployee(event: EmployeeSaveEvent): Employee {
const assignedOffice = event.officeForm.assignedOffice;
const contactDetails: ContactDetail[] = mapContactDetails(event.contactForm);
- const employee: Center = {
+ const employee: Employee = {
identifier: event.detailForm.identifier,
givenName: event.detailForm.firstName,
middleName: event.detailForm.middleName,
@@ -67,7 +66,7 @@ export function mapEmployee(event: CenterSaveEvent): Center {
return employee;
}
-export function mapUser(event: CenterSaveEvent): UserWithPassword {
+export function mapUser(event: EmployeeSaveEvent): UserWithPassword {
const userWithPassword: UserWithPassword = {
identifier: event.detailForm.identifier,
password: event.detailForm.password,
diff --git a/src/app/centers/store/employee.actions.ts b/src/app/centers/store/center.actions.ts
similarity index 100%
rename from src/app/centers/store/employee.actions.ts
rename to src/app/centers/store/center.actions.ts
diff --git a/src/app/centers/store/effects/notification.effects.ts b/src/app/centers/store/effects/notification.effects.ts
index 3de745e..e41532c 100644
--- a/src/app/centers/store/effects/notification.effects.ts
+++ b/src/app/centers/store/effects/notification.effects.ts
@@ -20,7 +20,7 @@ import {Injectable} from '@angular/core';
import {Actions, Effect} from '@ngrx/effects';
import {Observable} from 'rxjs/Observable';
import {Action} from '@ngrx/store';
-import * as employeeActions from '../employee.actions';
+import * as employeeActions from '../center.actions';
import {NotificationService, NotificationType} from '../../../services/notification/notification.service';
@Injectable()
diff --git a/src/app/centers/store/effects/route.effects.ts b/src/app/centers/store/effects/route.effects.ts
index 3e35dd1..a21e12b 100644
--- a/src/app/centers/store/effects/route.effects.ts
+++ b/src/app/centers/store/effects/route.effects.ts
@@ -20,7 +20,7 @@ import {Injectable} from '@angular/core';
import {Actions, Effect} from '@ngrx/effects';
import {Observable} from 'rxjs/Observable';
import {Action} from '@ngrx/store';
-import * as employeeActions from '../employee.actions';
+import * as employeeActions from '../center.actions';
import {Router} from '@angular/router';
@Injectable()
diff --git a/src/app/centers/store/effects/service.effects.spec.ts b/src/app/centers/store/effects/service.effects.spec.ts
index 5afcd87..4cd24c0 100644
--- a/src/app/centers/store/effects/service.effects.spec.ts
+++ b/src/app/centers/store/effects/service.effects.spec.ts
@@ -22,7 +22,7 @@ import {EmployeeApiEffects} from './service.effects';
import {OfficeService} from '../../../services/office/office.service';
import {IdentityService} from '../../../services/identity/identity.service';
import {Observable} from 'rxjs/Observable';
-import {UpdateEmployeeAction, UpdateEmployeeSuccessAction} from '../employee.actions';
+import {UpdateEmployeeAction, UpdateEmployeeSuccessAction} from '../center.actions';
import {Employee} from '../../../services/office/domain/employee.model';
describe('Account Search Api Effects', () => {
diff --git a/src/app/centers/store/effects/service.effects.ts b/src/app/centers/store/effects/service.effects.ts
index 0a17834..1b7ce1a 100644
--- a/src/app/centers/store/effects/service.effects.ts
+++ b/src/app/centers/store/effects/service.effects.ts
@@ -22,7 +22,7 @@ import {Actions, Effect} from '@ngrx/effects';
import {Observable} from 'rxjs/Observable';
import {Action} from '@ngrx/store';
import {of} from 'rxjs/observable/of';
-import * as employeeActions from '../employee.actions';
+import * as employeeActions from '../center.actions';
import {IdentityService} from '../../../services/identity/identity.service';
import {RoleIdentifier} from '../../../services/identity/domain/role-identifier.model';
import {Password} from '../../../services/identity/domain/password.model';
diff --git a/src/app/centers/store/index.ts b/src/app/centers/store/index.ts
index 6b4ea4e..59ce9fa 100644
--- a/src/app/centers/store/index.ts
+++ b/src/app/centers/store/index.ts
@@ -48,4 +48,4 @@ export class EmployeesStore extends Store<State> {}
export function employeeStoreFactory(appStore: Store<fromRoot.State>) {
appStore.replaceReducer(employeeModuleReducer);
return appStore;
-}
+}
\ No newline at end of file
diff --git a/src/app/collection/collection.component.html b/src/app/collection/collection.component.html
new file mode 100644
index 0000000..62e6477
--- /dev/null
+++ b/src/app/collection/collection.component.html
@@ -0,0 +1,55 @@
+<fims-layout-card-over title="{{'Collection sheet' | translate}}">
+ <fims-layout-card-over-header-menu>
+ <td-search-box #searchBox placeholder="{{'Search' | translate}}" (search)="search($event)" [alwaysVisible]="false"></td-search-box>
+ </fims-layout-card-over-header-menu>
+
+ <mat-form-field>
+ <mat-select placeholder="Select office">
+ <mat-option *ngFor="let office of offices" [value]="office.value">
+ {{office.viewValue}}
+ </mat-option>
+ </mat-select>
+ </mat-form-field>
+ <br/>
+
+ <mat-form-field>
+ <mat-select placeholder="Select Loan officer">
+ <mat-option *ngFor="let staff of staffs" [value]="staff.value">
+ {{staff.viewValue}}
+ </mat-option>
+ </mat-select>
+ </mat-form-field>
+ <br/>
+
+ <button mat-raised-button color="primary" class="button">
+ Productive Collection Sheet
+ </button>
+ <br/>
+
+
+ <mat-form-field>
+ <mat-select placeholder="Select center">
+ <mat-option *ngFor="let center of centers" [value]="center.value">
+ {{center.viewValue}}
+ </mat-option>
+ </mat-select>
+ </mat-form-field>
+ <br/>
+
+ <mat-form-field>
+ <mat-select placeholder="Select group">
+ <mat-option *ngFor="let group of groups" [value]="group.value">
+ {{group.viewValue}}
+ </mat-option>
+ </mat-select>
+ </mat-form-field>
+ <br/>
+
+ <button mat-raised-button color="primary" class="button">
+ Collection Sheet
+ </button>
+
+
+
+ </fims-layout-card-over>
+
\ No newline at end of file
diff --git a/src/app/collection/collection.component.scss b/src/app/collection/collection.component.scss
new file mode 100644
index 0000000..1140c93
--- /dev/null
+++ b/src/app/collection/collection.component.scss
@@ -0,0 +1,7 @@
+mat-form-field{
+ margin-left: 50px;
+}
+
+.button{
+ margin-left:20%;
+}
diff --git a/src/app/centers/center.component.spec.ts b/src/app/collection/collection.component.spec.ts
similarity index 60%
rename from src/app/centers/center.component.spec.ts
rename to src/app/collection/collection.component.spec.ts
index da7698d..ff1d68f 100644
--- a/src/app/centers/center.component.spec.ts
+++ b/src/app/collection/collection.component.spec.ts
@@ -1,20 +1,20 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
-import { CenterComponent } from './center.component';
+import { CollectionComponent } from './collection.component';
describe('CenterComponent', () => {
- let component: CenterComponent;
- let fixture: ComponentFixture<CenterComponent>;
+ let component: CollectionComponent;
+ let fixture: ComponentFixture<CollectionComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
- declarations: [ CenterComponent ]
+ declarations: [ CollectionComponent ]
})
.compileComponents();
}));
beforeEach(() => {
- fixture = TestBed.createComponent(CenterComponent);
+ fixture = TestBed.createComponent(CollectionComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/src/app/collection/collection.component.ts b/src/app/collection/collection.component.ts
new file mode 100644
index 0000000..e338269
--- /dev/null
+++ b/src/app/collection/collection.component.ts
@@ -0,0 +1,72 @@
+import {Component, OnInit} from '@angular/core';
+import {ActivatedRoute, Params, Router} from '@angular/router';
+import {Employee} from '../services/office/domain/employee.model';
+import {FetchRequest} from '../services/domain/paging/fetch-request.model';
+import {TableData} from '../common/data-table/data-table.component';
+import {Store} from '@ngrx/store';
+import * as fromRoot from '../store';
+import {Observable} from 'rxjs/Observable';
+import {SEARCH} from '../store/employee/employee.actions';
+
+
+
+@Component({
+ selector: 'fims-collection',
+ templateUrl: './collection.component.html',
+ styleUrls: ['./collection.component.scss']
+})
+export class CollectionComponent implements OnInit {
+
+ employeeData$: Observable<TableData>;
+
+ loading$: Observable<boolean>;
+
+ columns: any[] = [
+ { name: 'name', label: 'Name' },
+ { name: 'accountNumber', label: 'Account #' },
+ { name: 'id', label: 'External Id' },
+ { name: 'status', label: 'Status' },
+ { name: 'office', label: 'Office' }
+ ];
+
+ searchTerm: string;
+
+ private lastFetchRequest: FetchRequest = {};
+
+ constructor(private router: Router, private route: ActivatedRoute, private store: Store<fromRoot.State>) {}
+
+ ngOnInit(): void {
+
+ this.employeeData$ = this.store.select(fromRoot.getEmployeeSearchResults)
+ .map(employeePage => ({
+ data: employeePage.employees,
+ totalElements: employeePage.totalElements,
+ totalPages: employeePage.totalPages
+ }));
+
+ this.loading$ = this.store.select(fromRoot.getEmployeeSearchLoading);
+
+ this.route.queryParams.subscribe((params: Params) => {
+ this.search(params['term']);
+ });
+ }
+
+ search(searchTerm: string): void {
+ this.searchTerm = searchTerm;
+ this.fetchEmployees();
+ }
+
+ rowSelect(row: Employee): void {
+ this.router.navigate(['detail', row.identifier], { relativeTo: this.route });
+ }
+
+ fetchEmployees(fetchRequest?: FetchRequest) {
+ if (fetchRequest) {
+ this.lastFetchRequest = fetchRequest;
+ }
+
+ this.lastFetchRequest.searchTerm = this.searchTerm;
+
+ this.store.dispatch({ type: SEARCH, payload: this.lastFetchRequest });
+ }
+}
diff --git a/src/app/collection/collection.module.ts b/src/app/collection/collection.module.ts
new file mode 100644
index 0000000..6dc14a9
--- /dev/null
+++ b/src/app/collection/collection.module.ts
@@ -0,0 +1,52 @@
+import {NgModule} from '@angular/core';
+import {RouterModule} from '@angular/router';
+import {CollectionComponent} from './collection.component';
+import {CollectionRoutes} from './collection.routing';
+import {UserResolver} from './user.resolver';
+import {FimsSharedModule} from '../common/common.module';
+import {Store} from '@ngrx/store';
+
+import {EffectsModule} from '@ngrx/effects';
+
+import {
+ MatButtonModule,
+ MatIconModule,
+ MatInputModule,
+ MatListModule,
+ MatOptionModule,
+ MatSelectModule,
+ MatToolbarModule
+} from '@angular/material';
+import {CovalentSearchModule, CovalentStepsModule} from '@covalent/core';
+import {TranslateModule} from '@ngx-translate/core';
+import {CommonModule} from '@angular/common';
+import {ReactiveFormsModule} from '@angular/forms';
+
+@NgModule({
+ imports: [
+ RouterModule.forChild(CollectionRoutes),
+ FimsSharedModule,
+ ReactiveFormsModule,
+ CommonModule,
+ TranslateModule,
+ MatIconModule,
+ MatListModule,
+ MatToolbarModule,
+ MatOptionModule,
+ MatInputModule,
+ MatButtonModule,
+ MatSelectModule,
+ CovalentSearchModule,
+ CovalentStepsModule,
+
+ ],
+ declarations: [
+ CollectionComponent,
+
+ ],
+ providers: [
+ UserResolver,
+
+ ]
+})
+ export class CollectionModule {}
\ No newline at end of file
diff --git a/src/app/collection/collection.routing.ts b/src/app/collection/collection.routing.ts
new file mode 100644
index 0000000..2c5baed
--- /dev/null
+++ b/src/app/collection/collection.routing.ts
@@ -0,0 +1,13 @@
+import {Routes} from '@angular/router';
+import {CollectionComponent} from './collection.component';
+import {UserResolver} from './user.resolver';
+
+
+export const CollectionRoutes: Routes = [
+ {
+ path: '',
+ component: CollectionComponent,
+ data: {title: 'Manage Employees', hasPermission: {id: 'office_employees', accessLevel: 'READ'}}
+ },
+
+];
diff --git a/src/app/collection/user.resolver.ts b/src/app/collection/user.resolver.ts
new file mode 100644
index 0000000..34f29cd
--- /dev/null
+++ b/src/app/collection/user.resolver.ts
@@ -0,0 +1,33 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import {Injectable} from '@angular/core';
+import {ActivatedRouteSnapshot, Resolve} from '@angular/router';
+import {Observable} from 'rxjs/Observable';
+import {IdentityService} from '../services/identity/identity.service';
+import {User} from '../services/identity/domain/user.model';
+
+@Injectable()
+export class UserResolver implements Resolve<User> {
+
+ constructor(private identityService: IdentityService) {}
+
+ resolve(route: ActivatedRouteSnapshot): Observable<User> {
+ return this.identityService.getUser(route.params['id']);
+ }
+}
diff --git a/src/app/employees/employee.component.ts b/src/app/employees/employee.component.ts
index e9c35bf..e974ef3 100644
--- a/src/app/employees/employee.component.ts
+++ b/src/app/employees/employee.component.ts
@@ -25,6 +25,8 @@ import {Store} from '@ngrx/store';
import * as fromRoot from '../store';
import {Observable} from 'rxjs/Observable';
import {SEARCH} from '../store/employee/employee.actions';
+import {OfficeService} from '../services/office/office.service';
+
@Component({
selector: 'fims-employee',
@@ -35,7 +37,8 @@ export class EmployeeComponent implements OnInit {
employeeData$: Observable<TableData>;
loading$: Observable<boolean>;
-
+
+
columns: any[] = [
{ name: 'identifier', label: 'Id' },
{ name: 'givenName', label: 'First Name' },
@@ -62,6 +65,7 @@ export class EmployeeComponent implements OnInit {
this.route.queryParams.subscribe((params: Params) => {
this.search(params['term']);
});
+
}
search(searchTerm: string): void {
@@ -82,4 +86,6 @@ export class EmployeeComponent implements OnInit {
this.store.dispatch({ type: SEARCH, payload: this.lastFetchRequest });
}
+
+
}
diff --git a/src/app/employees/store/index.ts b/src/app/employees/store/index.ts
index 6b4ea4e..59ce9fa 100644
--- a/src/app/employees/store/index.ts
+++ b/src/app/employees/store/index.ts
@@ -48,4 +48,4 @@ export class EmployeesStore extends Store<State> {}
export function employeeStoreFactory(appStore: Store<fromRoot.State>) {
appStore.replaceReducer(employeeModuleReducer);
return appStore;
-}
+}
\ No newline at end of file
diff --git a/src/app/login/login.component.html b/src/app/login/login.component.html
index 8aea8b0..acdec56 100644
--- a/src/app/login/login.component.html
+++ b/src/app/login/login.component.html
@@ -70,11 +70,11 @@
</div>
<div class="app-input1">
<mat-form-field class="app-input2">
- <input matInput placeholder="Password" type="password" formControlName="password" autocomplete="new-password" [type]="hide ? 'password' : 'text'">
+ <input matInput placeholder="Password" type="password" formControlName="password" autocomplete="new-password" [type]="!hide ? 'password' : 'text'">
<mat-error *ngIf="form.get('password').hasError('required')">
Required
</mat-error>
- <mat-icon matSuffix (click)="hide = !hide">{{hide ? 'visibility' : 'visibility_off'}}</mat-icon>
+ <mat-icon matSuffix (click)="hide = !hide">{{hide ? 'visibility_off' : 'visibility' }}</mat-icon>
</mat-form-field>
</div>
<br>
diff --git a/src/app/main/main.component.html b/src/app/main/main.component.html
index 758205a..c9d513c 100644
--- a/src/app/main/main.component.html
+++ b/src/app/main/main.component.html
@@ -38,8 +38,8 @@
</button>
<mat-menu #client="matMenu">
<a mat-menu-item [routerLink]="['/customers']">Client</a>
- <a mat-menu-item [routerLink]="['/centers']">Group</a>
- <a mat-menu-item [routerLink]="['/']">Center</a>
+ <a mat-menu-item [routerLink]="['/']">Group</a>
+ <a mat-menu-item [routerLink]="['/centers']">Center</a>
</mat-menu>
</li>
<li>
@@ -51,8 +51,8 @@
<mat-icon>arrow_drop_down</mat-icon>
</button>
<mat-menu #report="matMenu">
- <a mat-menu-item [routerLink]="['/reporting']">Member</a>
- <a mat-menu-item [routerLink]="['/reporting/deposits']">Deposit</a>
+ <a mat-menu-item [routerLink]="['/reports']">Member</a>
+ <a mat-menu-item [routerLink]="['/deposits']">Deposit</a>
</mat-menu>
</li>
@@ -75,15 +75,7 @@
</div>
<div class="search1">
<ul id="menu">
- <li>
- <input matInput placeholder="click or press alt + X to Search" type="text" class="fineract-toolsearch">
- </li>
- <li class="dropdown-button">
- <button mat-icon-button [routerLink]="['/navbar/notification']">
- <mat-icon>notifications</mat-icon>
- </button>
- </li>
<li>
<button mat-button [matMenuTriggerFor]="mifos" class="dropdown-button">Fineract CN
<mat-icon>arrow_drop_down</mat-icon>
diff --git a/src/app/main/main.component.scss b/src/app/main/main.component.scss
index 94b91a5..e30caba 100644
--- a/src/app/main/main.component.scss
+++ b/src/app/main/main.component.scss
@@ -68,10 +68,11 @@ mat-list > a{
}
ul#menu li{
display: inline;
+
}
.search1{
- margin-left:8%;
+ margin-left:0;
}
.fineract-toolsearch{
diff --git a/src/app/main/main.routing.ts b/src/app/main/main.routing.ts
index d94d87b..b4f8f67 100644
--- a/src/app/main/main.routing.ts
+++ b/src/app/main/main.routing.ts
@@ -39,7 +39,8 @@ export const MainRoutes: Routes = [
{ path: 'teller', loadChildren: './../teller/teller.module#TellerModule' },
{ path: 'reports', loadChildren: './../reporting/reporting.module#ReportingModule' },
{ path: 'denied', component: AccessDeniedComponent, data: { title: 'Not allowed' }},
- { path: 'centers', loadChildren: './../centers/center.module#CenterModule' }
+ { path: 'centers', loadChildren: './../centers/center.module#CenterModule' },
+ { path: 'collection', loadChildren: './../collection/collection.module#CollectionModule' }
]
},
diff --git a/src/app/services/office/office.service.ts b/src/app/services/office/office.service.ts
index 6496062..cb70732 100644
--- a/src/app/services/office/office.service.ts
+++ b/src/app/services/office/office.service.ts
@@ -28,6 +28,8 @@ import {EmployeePage} from './domain/employee-page.model';
import {Employee} from './domain/employee.model';
import {buildSearchParams} from '../domain/paging/search-param.builder';
import {ContactDetail} from '../domain/contact/contact-detail.model';
+import { BaseRequestOptions } from '@angular/http/src/base_request_options';
+import 'rxjs/add/operator/map';
@Injectable()
export class OfficeService {
@@ -87,8 +89,8 @@ export class OfficeService {
search: params
};
- return this.http.get(this.baseUrl + '/employees', requestOptions)
- .catch(Error.handleError);
+ return this.http.get(this.baseUrl + '/employees/', requestOptions)
+ .catch(Error.handleError);
}
getEmployee(id: string, silent?: true): Observable<Employee> {
@@ -97,7 +99,7 @@ export class OfficeService {
}
createEmployee(employee: Employee): Observable<Employee> {
- return this.http.post(this.baseUrl + '/employees', employee)
+ return this.http.post(this.baseUrl + '/employees/' , employee)
.catch(Error.handleError);
}
@@ -115,4 +117,10 @@ export class OfficeService {
return this.http.put(this.baseUrl + '/employees/' + id + '/contacts', contactDetails);
}
+ allCenters(){
+ return this.http.get('http://localhost:3000/pageItems')
+ .map((response:Response) => response);
+
+ }
+
}
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services