From 4a32c1ceb26f9d9f6aab811d516eac5da987d41d Mon Sep 17 00:00:00 2001 From: patrick lambret Date: Tue, 9 Apr 2019 18:20:00 +0200 Subject: [PATCH 01/13] added templates --- .gitlab/issue_templates/bug.md | 27 + .gitlab/issue_templates/feature_proposal.md | 37 + .../checklist_before_merging.md | 13 + package-lock.json | 959 ++---------------- 4 files changed, 135 insertions(+), 901 deletions(-) create mode 100644 .gitlab/issue_templates/bug.md create mode 100644 .gitlab/issue_templates/feature_proposal.md create mode 100644 .gitlab/merge_request_templates/checklist_before_merging.md diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md new file mode 100644 index 0000000..abb674b --- /dev/null +++ b/.gitlab/issue_templates/bug.md @@ -0,0 +1,27 @@ +### Summary + +(Summarize the bug encountered concisely) + +### Steps to reproduce + +(How one can reproduce the issue - this is very important) + +### What is the current *bug* behavior? + +(What actually happens) + +### What is the expected *correct* behavior? + +(What you should see instead) + +### Relevant logs and/or screenshots + +(Paste any relevant logs - please use code blocks (```) to format console output, +logs, and code as it's very hard to read otherwise.) + +### Possible fixes + +(If you can, link to the line of code that might be responsible for the problem) + +Also please add labels to your bug issue : +/label ~BUG ~Reproduced ~Needs investigation diff --git a/.gitlab/issue_templates/feature_proposal.md b/.gitlab/issue_templates/feature_proposal.md new file mode 100644 index 0000000..8a49715 --- /dev/null +++ b/.gitlab/issue_templates/feature_proposal.md @@ -0,0 +1,37 @@ +### Problem to solve + + + +### Intended users + + + +### Further details + + + +### Proposal + + + +### Permissions and Security + + + +### Documentation + + + +### Testing + + + +### What does success look like, and how can we measure that? + + + +### Links / references + +/label ~feature diff --git a/.gitlab/merge_request_templates/checklist_before_merging.md b/.gitlab/merge_request_templates/checklist_before_merging.md new file mode 100644 index 0000000..eb79fb3 --- /dev/null +++ b/.gitlab/merge_request_templates/checklist_before_merging.md @@ -0,0 +1,13 @@ +Please make sure your MR is ready to be merged ! + +- [ ] You added the changes in CHANGELOG.md +- [ ] You described the MR as below +- [ ] You updated the [HD APP wiki](https://github.com/recalbox/recalbox-os/wiki/) or the [dev wiki](https://gitlab.com/recalbox/recalbox/wikis/home) + +Fixes #XXX + +Changes : +- describe changes here + +Related to : +- link other PR or issues here diff --git a/package-lock.json b/package-lock.json index c05eb3a..ff61feb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -83,57 +83,6 @@ "trim-right": "^1.0.1" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", - "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-call-delegate": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz", - "integrity": "sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.0.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-define-map": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz", - "integrity": "sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.0.0", - "lodash": "^4.17.10" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", - "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", - "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, "@babel/helper-function-name": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", @@ -154,106 +103,6 @@ "@babel/types": "^7.0.0" } }, - "@babel/helper-hoist-variables": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz", - "integrity": "sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz", - "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", - "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.1.0.tgz", - "integrity": "sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0", - "lodash": "^4.17.10" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", - "dev": true - }, - "@babel/helper-regex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.0.0.tgz", - "integrity": "sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg==", - "dev": true, - "requires": { - "lodash": "^4.17.10" - } - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-replace-supers": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz", - "integrity": "sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", - "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", - "dev": true, - "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, "@babel/helper-split-export-declaration": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", @@ -263,18 +112,6 @@ "@babel/types": "^7.0.0" } }, - "@babel/helper-wrap-function": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz", - "integrity": "sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, "@babel/helpers": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.1.0.tgz", @@ -303,572 +140,6 @@ "integrity": "sha512-SmjnXCuPAlai75AFtzv+KCBcJ3sDDWbIn+WytKw1k+wAtEy6phqI2RqKh/zAnw53i1NR8su3Ep/UoqaKcimuLg==", "dev": true }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.1.0.tgz", - "integrity": "sha512-Fq803F3Jcxo20MXUSDdmZZXrPe6BWyGcWBPPNB/M7WaUYESKDeKMOGIxEzQOjGSmW/NWb6UaPZrtTB2ekhB/ew==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.0.0" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz", - "integrity": "sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.0.0" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz", - "integrity": "sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz", - "integrity": "sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.0.0" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0.tgz", - "integrity": "sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.2.0" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0.tgz", - "integrity": "sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz", - "integrity": "sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz", - "integrity": "sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz", - "integrity": "sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz", - "integrity": "sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.1.0.tgz", - "integrity": "sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz", - "integrity": "sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz", - "integrity": "sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "lodash": "^4.17.10" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz", - "integrity": "sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.1.0", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz", - "integrity": "sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0.tgz", - "integrity": "sha512-Fr2GtF8YJSXGTyFPakPFB4ODaEKGU04bPsAllAIabwoXdFrPxL0LVXQX5dQWoxOjjgozarJcC9eWGsj0fD6Zsg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0.tgz", - "integrity": "sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.1.3" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0.tgz", - "integrity": "sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.1.0.tgz", - "integrity": "sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz", - "integrity": "sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.1.0.tgz", - "integrity": "sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz", - "integrity": "sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.1.0.tgz", - "integrity": "sha512-wt8P+xQ85rrnGNr2x1iV3DW32W8zrB6ctuBkYBbf5/ZzJY99Ob4MFgsZDFgczNU76iy9PWsy4EuxOliDjdKw6A==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz", - "integrity": "sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.0.0.tgz", - "integrity": "sha512-8EDKMAsitLkiF/D4Zhe9CHEE2XLh4bfLbb9/Zf3FgXYQOZyZYyg7EAel/aT2A7bHv62jwHf09q2KU/oEexr83g==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.1.0.tgz", - "integrity": "sha512-enrRtn5TfRhMmbRwm7F8qOj0qEYByqUvTttPEGimcBH4CJHphjyK1Vg7sdU7JjeEmgSpM890IT/efS2nMHwYig==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz", - "integrity": "sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.1.0.tgz", - "integrity": "sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz", - "integrity": "sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw==", - "dev": true, - "requires": { - "@babel/helper-call-delegate": "^7.1.0", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz", - "integrity": "sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw==", - "dev": true, - "requires": { - "regenerator-transform": "^0.13.3" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz", - "integrity": "sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz", - "integrity": "sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz", - "integrity": "sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz", - "integrity": "sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0.tgz", - "integrity": "sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz", - "integrity": "sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.1.3" - } - }, - "@babel/preset-env": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.1.0.tgz", - "integrity": "sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.1.0", - "@babel/plugin-proposal-json-strings": "^7.0.0", - "@babel/plugin-proposal-object-rest-spread": "^7.0.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.0.0", - "@babel/plugin-syntax-async-generators": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.0.0", - "@babel/plugin-transform-arrow-functions": "^7.0.0", - "@babel/plugin-transform-async-to-generator": "^7.1.0", - "@babel/plugin-transform-block-scoped-functions": "^7.0.0", - "@babel/plugin-transform-block-scoping": "^7.0.0", - "@babel/plugin-transform-classes": "^7.1.0", - "@babel/plugin-transform-computed-properties": "^7.0.0", - "@babel/plugin-transform-destructuring": "^7.0.0", - "@babel/plugin-transform-dotall-regex": "^7.0.0", - "@babel/plugin-transform-duplicate-keys": "^7.0.0", - "@babel/plugin-transform-exponentiation-operator": "^7.1.0", - "@babel/plugin-transform-for-of": "^7.0.0", - "@babel/plugin-transform-function-name": "^7.1.0", - "@babel/plugin-transform-literals": "^7.0.0", - "@babel/plugin-transform-modules-amd": "^7.1.0", - "@babel/plugin-transform-modules-commonjs": "^7.1.0", - "@babel/plugin-transform-modules-systemjs": "^7.0.0", - "@babel/plugin-transform-modules-umd": "^7.1.0", - "@babel/plugin-transform-new-target": "^7.0.0", - "@babel/plugin-transform-object-super": "^7.1.0", - "@babel/plugin-transform-parameters": "^7.1.0", - "@babel/plugin-transform-regenerator": "^7.0.0", - "@babel/plugin-transform-shorthand-properties": "^7.0.0", - "@babel/plugin-transform-spread": "^7.0.0", - "@babel/plugin-transform-sticky-regex": "^7.0.0", - "@babel/plugin-transform-template-literals": "^7.0.0", - "@babel/plugin-transform-typeof-symbol": "^7.0.0", - "@babel/plugin-transform-unicode-regex": "^7.0.0", - "browserslist": "^4.1.0", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.3.0" - } - }, - "@babel/preset-es2016": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/preset-es2016/-/preset-es2016-7.0.0-beta.53.tgz", - "integrity": "sha1-pHMhHG9jybkDoWFiFxiIq2g8iu0=", - "requires": { - "@babel/helper-plugin-utils": "7.0.0-beta.53", - "@babel/plugin-transform-exponentiation-operator": "7.0.0-beta.53" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.53.tgz", - "integrity": "sha1-mA0VYLhjV1v1o3eSUDfgEy71kh4=", - "requires": { - "@babel/highlight": "7.0.0-beta.53" - } - }, - "@babel/generator": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-beta.53.tgz", - "integrity": "sha1-uMrXLFcr4yNK/94ivm2sxCUOA0s=", - "requires": { - "@babel/types": "7.0.0-beta.53", - "jsesc": "^2.5.1", - "lodash": "^4.17.5", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.0.0-beta.53.tgz", - "integrity": "sha1-RFZwliPX2vqivulPglUD9MDs6Fs=", - "requires": { - "@babel/helper-explode-assignable-expression": "7.0.0-beta.53", - "@babel/types": "7.0.0-beta.53" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.0.0-beta.53.tgz", - "integrity": "sha1-1bytK2tH9ATAruillk3/2TEkc6g=", - "requires": { - "@babel/traverse": "7.0.0-beta.53", - "@babel/types": "7.0.0-beta.53" - } - }, - "@babel/helper-function-name": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.53.tgz", - "integrity": "sha1-USgEro6cvOVDHr6hnkdijC7WU/I=", - "requires": { - "@babel/helper-get-function-arity": "7.0.0-beta.53", - "@babel/template": "7.0.0-beta.53", - "@babel/types": "7.0.0-beta.53" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.53.tgz", - "integrity": "sha1-3tiKsp+bHbYch9G7jTijXdp3neY=", - "requires": { - "@babel/types": "7.0.0-beta.53" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0-beta.53.tgz", - "integrity": "sha1-1kRYY2/8JYtCcUqd2Trrb4uM8+0=" - }, - "@babel/helper-split-export-declaration": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.53.tgz", - "integrity": "sha1-rvVLix+ZYW6jfJhHhxajeAJjMls=", - "requires": { - "@babel/types": "7.0.0-beta.53" - } - }, - "@babel/highlight": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.53.tgz", - "integrity": "sha1-9OlS2tF4fSBeGI0+OEzc5JyjaPs=", - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^3.0.0" - } - }, - "@babel/parser": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0-beta.53.tgz", - "integrity": "sha1-H0XrYXv5Rj1IKywE00nZ5O2/SJI=" - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.0.0-beta.53.tgz", - "integrity": "sha1-PiZxeSBMd1GdhBepsZnyUiIejZU=", - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "7.0.0-beta.53", - "@babel/helper-plugin-utils": "7.0.0-beta.53" - } - }, - "@babel/template": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.53.tgz", - "integrity": "sha1-MyIpCQDQsYewpxdDgeHzu3EFDS4=", - "requires": { - "@babel/code-frame": "7.0.0-beta.53", - "@babel/parser": "7.0.0-beta.53", - "@babel/types": "7.0.0-beta.53", - "lodash": "^4.17.5" - } - }, - "@babel/traverse": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.53.tgz", - "integrity": "sha1-ANMs2NC1j0wB0xFXvmIsZigm00Q=", - "requires": { - "@babel/code-frame": "7.0.0-beta.53", - "@babel/generator": "7.0.0-beta.53", - "@babel/helper-function-name": "7.0.0-beta.53", - "@babel/helper-split-export-declaration": "7.0.0-beta.53", - "@babel/parser": "7.0.0-beta.53", - "@babel/types": "7.0.0-beta.53", - "debug": "^3.1.0", - "globals": "^11.1.0", - "invariant": "^2.2.0", - "lodash": "^4.17.5" - } - }, - "@babel/types": { - "version": "7.0.0-beta.53", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.53.tgz", - "integrity": "sha1-GaRhwNpRVZXftnQLS0Xce7Dms3U=", - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.5", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "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==" - } - } - }, "@babel/template": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.0.tgz", @@ -1045,6 +316,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -1673,17 +945,6 @@ "stream-throttle": "^0.1.3" } }, - "browserslist": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.1.1.tgz", - "integrity": "sha512-VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30000884", - "electron-to-chromium": "^1.3.62", - "node-releases": "^1.0.0-alpha.11" - } - }, "bs-recipes": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", @@ -1749,12 +1010,6 @@ } } }, - "caniuse-lite": { - "version": "1.0.30000888", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000888.tgz", - "integrity": "sha512-vftg+5p/lPsQGpnhSo/yBuYL36ai/cyjLvU3dOPJY1kkKrekLWIy8SLm+wzjX0hpCUdFTasC4/ZT7uqw4rKOnQ==", - "dev": true - }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -1775,6 +1030,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -1889,6 +1145,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -1896,7 +1153,8 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "combined-stream": { "version": "1.0.7", @@ -2184,12 +1442,6 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "dev": true }, - "electron-to-chromium": { - "version": "1.3.72", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.72.tgz", - "integrity": "sha512-OFbXEC01Lq7A66e3UywkvWYNN00HO1I9MAPereGe0NIXrt2MeaovL1bbY+951HKG0euUdPBe0L7yfKxgqxBMMw==", - "dev": true - }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -2282,12 +1534,14 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true }, "etag": { "version": "1.8.1", @@ -2751,7 +2005,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2772,12 +2027,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -2792,17 +2049,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -2919,7 +2179,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -2931,6 +2192,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -2945,6 +2207,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -2952,12 +2215,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -2976,6 +2241,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3056,7 +2322,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3068,6 +2335,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3153,7 +2421,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3189,6 +2458,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3208,6 +2478,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3251,12 +2522,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -3406,7 +2679,8 @@ "globals": { "version": "11.7.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", - "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==" + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "dev": true }, "globule": { "version": "1.2.1", @@ -3485,7 +2759,8 @@ "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, "has-unicode": { "version": "2.0.1", @@ -3629,14 +2904,6 @@ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "dev": true }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "requires": { - "loose-envify": "^1.0.0" - } - }, "invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", @@ -3781,7 +3048,8 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "dev": true, + "optional": true }, "is-finite": { "version": "1.0.2", @@ -3936,12 +3204,6 @@ "integrity": "sha512-xcinL3AuDJk7VSzsHgb9DvvIXayBbadtMZ4HFPx8rUszbW1MuNMlwYVC4zzCZ6e1sqZpnNS5ZFYOhXqA39T7LQ==", "dev": true }, - "js-levenshtein": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.4.tgz", - "integrity": "sha512-PxfGzSs0ztShKrUYPIn5r0MtyAhYcCwmndozzpz8YObbPnD1jFxzlBGbRnX2mIu6Z13xN6+PTu05TQFnZFlzow==", - "dev": true - }, "js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", @@ -3951,7 +3213,8 @@ "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true }, "jsbn": { "version": "0.1.1", @@ -3963,7 +3226,8 @@ "jsesc": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=" + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "dev": true }, "json-schema": { "version": "0.2.3", @@ -4112,7 +3376,8 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true }, "lodash.assign": { "version": "4.2.0", @@ -4151,14 +3416,6 @@ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", "dev": true }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, "loud-rejection": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", @@ -4402,15 +3659,6 @@ } } }, - "node-releases": { - "version": "1.0.0-alpha.12", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.0.0-alpha.12.tgz", - "integrity": "sha512-VPB4rTPqpVyWKBHbSa4YPFme3+8WHsOSpvbp0Mfj0bWsC8TEjt4HQrLl1hsBDELlp1nB4lflSgSuGTYiuyaP7Q==", - "dev": true, - "requires": { - "semver": "^5.3.0" - } - }, "node-sass": { "version": "4.9.3", "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.3.tgz", @@ -4847,12 +4095,6 @@ "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", "dev": true }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", @@ -5155,35 +4397,11 @@ "strip-indent": "^1.0.1" } }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz", - "integrity": "sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw==", - "dev": true, - "requires": { - "regenerate": "^1.4.0" - } - }, "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" }, - "regenerator-transform": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.13.3.tgz", - "integrity": "sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA==", - "dev": true, - "requires": { - "private": "^0.1.6" - } - }, "regex-cache": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", @@ -5203,43 +4421,6 @@ "safe-regex": "^1.1.0" } }, - "regexpu-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.2.0.tgz", - "integrity": "sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw==", - "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^7.0.0", - "regjsgen": "^0.4.0", - "regjsparser": "^0.3.0", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.0.2" - } - }, - "regjsgen": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.4.0.tgz", - "integrity": "sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA==", - "dev": true - }, - "regjsparser": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.3.0.tgz", - "integrity": "sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } - } - }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -5831,7 +5012,8 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true }, "source-map-resolve": { "version": "0.5.2", @@ -6007,6 +5189,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -6068,7 +5251,8 @@ "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true }, "to-object-path": { "version": "0.3.0", @@ -6136,7 +5320,8 @@ "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true }, "true-case-path": { "version": "1.0.3", @@ -6240,34 +5425,6 @@ "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", "dev": true }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz", - "integrity": "sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz", - "integrity": "sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg==", - "dev": true - }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", From 9c954298845c705443d0fab92ba503c072c24777 Mon Sep 17 00:00:00 2001 From: patrick lambret Date: Wed, 24 Apr 2019 17:15:25 +0200 Subject: [PATCH 02/13] templates --- .gitlab/issue_templates/bug.md | 37 +++++++---- .gitlab/issue_templates/documentation.md | 71 +++++++++++++++++++++ .gitlab/issue_templates/feature.md | 27 ++++++++ .gitlab/issue_templates/feature_proposal.md | 37 ----------- 4 files changed, 123 insertions(+), 49 deletions(-) create mode 100644 .gitlab/issue_templates/documentation.md create mode 100644 .gitlab/issue_templates/feature.md delete mode 100644 .gitlab/issue_templates/feature_proposal.md diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md index abb674b..fdd5972 100644 --- a/.gitlab/issue_templates/bug.md +++ b/.gitlab/issue_templates/bug.md @@ -1,27 +1,40 @@ -### Summary +/label ~BUG -(Summarize the bug encountered concisely) +### How is it now? + +(What actually happens) + +### How should it be? + +(What you should see instead) ### Steps to reproduce (How one can reproduce the issue - this is very important) -### What is the current *bug* behavior? - -(What actually happens) - -### What is the expected *correct* behavior? - -(What you should see instead) +Step 1 +Step 2 ### Relevant logs and/or screenshots -(Paste any relevant logs - please use code blocks (```) to format console output, +(Paste any relevant logs - please use code blocks to format console output, logs, and code as it's very hard to read otherwise.) ### Possible fixes (If you can, link to the line of code that might be responsible for the problem) -Also please add labels to your bug issue : -/label ~BUG ~Reproduced ~Needs investigation +If you can, give an estimation of the time needed to fix (in hours) +/estimate Xh + +### How to fix a Bug + +1. Ask any question you have in the issue comments before starting +1. Create a new branch named issue-${ISSUE_NUMBER} +1. Write a test that is failing to validate that this bug exists +1. If you can not recreate this bug, feel free to submit just a test with clear name and documentation linking to this issue +1. If a test fails indeed, continue to the next step +1. Now, when you have a regression test ready - create a fix for that bug +1. Write any additional tests if needed +1. Document in docstrings in general documentation what was wrong +1. Submit a merge request diff --git a/.gitlab/issue_templates/documentation.md b/.gitlab/issue_templates/documentation.md new file mode 100644 index 0000000..cd217fe --- /dev/null +++ b/.gitlab/issue_templates/documentation.md @@ -0,0 +1,71 @@ +### Feature: `Role or Persona` `Priority` `Objective` + +`Role or persona` What kind of users are we talking about in this particular user story? +`Priority` We need to ask users about how important each feature is. Using the MoSCow method to prioritize requirements. This method is based on four main categories: must, should, could, and won't. +`Objective` What is the users' final objective by using this feature? + +*Example* + +> Feature: User must log in to access the app. + +#### User story: + +As a `role or persona` +I `must/should/could/won't` `goal/need` +So that `value` + +*Example* + +> User story: +> +> As a user, +> I must be sent a link to reinitialize password when requested, +> So that I can log in and access the app. + +#### Acceptance criteria + + +###### Scenario-oriented acceptance criteria + +`Scenario` the name for the behavior that will be described +- `Given` the beginning state of the scenario +- `When` specific action that the user makes +- `Then` the outcome of the action in “When” +- `And` used to continue any previous statement + +*Example* + +> Scenario: User Forgot password +> - Given: The user has navigated to the login page +> - When: The user selected forgot password option +> - And: Entered a valid email to receive a link for password recovery +> - Then: The system sent the link to the entered email +> - Given: The user received the link via the email +> - When: The user navigated through the link received in the email +> - Then: The system enables the user to set a new password + + +###### Rule-oriented acceptance criteria format + +In some cases, it’s difficult to fit acceptance criteria into the Given/When/Then structure. For instance, design and UX features. Also when visuals exist they should be linked. + +- [ ] item 1 + - [ ] item 1-1 + - [ ] item 1-2 + - [ ] item 1-3 + - [ ] item 1-4 +- [ ] item 2 + - [ ] item 2-1 + - [ ] item 2-2 + - [ ] item 2-3 + - [ ] item 2-4 + +*Example* + +> - [ ] Basic new password interface acceptance criteria +> - [ ] Password must be > 8 characters +> - [ ] Password must contain at least one special character +> - [ ] Password must contain at least one upper case letter +> - [ ] Password must contain at least one minus case letter +> - [ ] Password must contain at least one number +> - [ ] Max password length is 255 characters diff --git a/.gitlab/issue_templates/feature.md b/.gitlab/issue_templates/feature.md new file mode 100644 index 0000000..6dacc38 --- /dev/null +++ b/.gitlab/issue_templates/feature.md @@ -0,0 +1,27 @@ +## What needs to be done? + +/estimate Xh +/label ~feature + + +## Technical details + +Are there any technical details worth mentioning? + + +## Links + +1. Link to user story in wiki +1. other related Gitlab issues + + +## How to complete + +1. How to complete a Feature +1. Ask any question you have in the issue comments before starting +1. Create a new branch named issue-${ISSUE_NUMBER} +1. Implement a simple test to illustrate the desired functionality +1. Write some code to complete this task +1. Write some additional tests to cover edge cases and some possible errors +1. Write documentation about what have you done and why you have done it this way +1. Submit a merge request diff --git a/.gitlab/issue_templates/feature_proposal.md b/.gitlab/issue_templates/feature_proposal.md deleted file mode 100644 index 8a49715..0000000 --- a/.gitlab/issue_templates/feature_proposal.md +++ /dev/null @@ -1,37 +0,0 @@ -### Problem to solve - - - -### Intended users - - - -### Further details - - - -### Proposal - - - -### Permissions and Security - - - -### Documentation - - - -### Testing - - - -### What does success look like, and how can we measure that? - - - -### Links / references - -/label ~feature From fbd3a2929dd042fcdd6de5e5f16e309bceab6677 Mon Sep 17 00:00:00 2001 From: patrick lambret Date: Fri, 3 May 2019 11:27:32 +0200 Subject: [PATCH 03/13] issue and merge request templates --- .gitlab/issue_templates/bug.md | 5 +- .gitlab/issue_templates/documentation.md | 71 ------------------- .../checklist_before_merging.md | 66 ++++++++++++++--- 3 files changed, 60 insertions(+), 82 deletions(-) delete mode 100644 .gitlab/issue_templates/documentation.md diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md index fdd5972..9485632 100644 --- a/.gitlab/issue_templates/bug.md +++ b/.gitlab/issue_templates/bug.md @@ -12,8 +12,9 @@ (How one can reproduce the issue - this is very important) -Step 1 -Step 2 +1. Step 1 +1. Step 2 +1. Step 3 ### Relevant logs and/or screenshots diff --git a/.gitlab/issue_templates/documentation.md b/.gitlab/issue_templates/documentation.md deleted file mode 100644 index cd217fe..0000000 --- a/.gitlab/issue_templates/documentation.md +++ /dev/null @@ -1,71 +0,0 @@ -### Feature: `Role or Persona` `Priority` `Objective` - -`Role or persona` What kind of users are we talking about in this particular user story? -`Priority` We need to ask users about how important each feature is. Using the MoSCow method to prioritize requirements. This method is based on four main categories: must, should, could, and won't. -`Objective` What is the users' final objective by using this feature? - -*Example* - -> Feature: User must log in to access the app. - -#### User story: - -As a `role or persona` -I `must/should/could/won't` `goal/need` -So that `value` - -*Example* - -> User story: -> -> As a user, -> I must be sent a link to reinitialize password when requested, -> So that I can log in and access the app. - -#### Acceptance criteria - - -###### Scenario-oriented acceptance criteria - -`Scenario` the name for the behavior that will be described -- `Given` the beginning state of the scenario -- `When` specific action that the user makes -- `Then` the outcome of the action in “When” -- `And` used to continue any previous statement - -*Example* - -> Scenario: User Forgot password -> - Given: The user has navigated to the login page -> - When: The user selected forgot password option -> - And: Entered a valid email to receive a link for password recovery -> - Then: The system sent the link to the entered email -> - Given: The user received the link via the email -> - When: The user navigated through the link received in the email -> - Then: The system enables the user to set a new password - - -###### Rule-oriented acceptance criteria format - -In some cases, it’s difficult to fit acceptance criteria into the Given/When/Then structure. For instance, design and UX features. Also when visuals exist they should be linked. - -- [ ] item 1 - - [ ] item 1-1 - - [ ] item 1-2 - - [ ] item 1-3 - - [ ] item 1-4 -- [ ] item 2 - - [ ] item 2-1 - - [ ] item 2-2 - - [ ] item 2-3 - - [ ] item 2-4 - -*Example* - -> - [ ] Basic new password interface acceptance criteria -> - [ ] Password must be > 8 characters -> - [ ] Password must contain at least one special character -> - [ ] Password must contain at least one upper case letter -> - [ ] Password must contain at least one minus case letter -> - [ ] Password must contain at least one number -> - [ ] Max password length is 255 characters diff --git a/.gitlab/merge_request_templates/checklist_before_merging.md b/.gitlab/merge_request_templates/checklist_before_merging.md index eb79fb3..edd506b 100644 --- a/.gitlab/merge_request_templates/checklist_before_merging.md +++ b/.gitlab/merge_request_templates/checklist_before_merging.md @@ -1,13 +1,61 @@ -Please make sure your MR is ready to be merged ! +## Checklist -- [ ] You added the changes in CHANGELOG.md -- [ ] You described the MR as below -- [ ] You updated the [HD APP wiki](https://github.com/recalbox/recalbox-os/wiki/) or the [dev wiki](https://gitlab.com/recalbox/recalbox/wikis/home) + -Fixes #XXX +I have done ... -Changes : -- describe changes here +- [ ] This commits targets only one specific issue +- [ ] The commit message follows our guidelines +- [ ] Tests for the changes have been added +- [ ] Docs have been added or updated +- [ ] I have assigned my architect to review this merge request +- [ ] I have checked how to create a [merge request]() -Related to : -- link other PR or issues here + +## Issues + + + + +## Time spent + + + +/spend Xh + + +## Assignee + + + +/assign + + +## Feedback + + + + + From 0874b1044525eacb524362d11b4d77a1c13f6b6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABlle=20Morin?= Date: Thu, 9 May 2019 10:38:34 +0200 Subject: [PATCH 04/13] feature: sib-router updated to 0.7 --- src/dependencies.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/dependencies.pug b/src/dependencies.pug index 97000fc..1a08ad7 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -24,8 +24,8 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 //- cdn script(type="module" src="https://unpkg.com/@startinblox/core@0.7") -script(type="module" src="https://unpkg.com/@startinblox/router@0.6") -script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") +script(type="module" src="https://unpkg.com/@startinblox/router@0.7") +script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1") script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1") script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2") script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1") From a7a59033d3e3f37c6e9444bcc356f2ca339d5091 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABlle=20Morin?= Date: Thu, 9 May 2019 12:07:28 +0200 Subject: [PATCH 05/13] feature: sib-router updated to 0.7 --- src/menu-left.pug | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/menu-left.pug b/src/menu-left.pug index a9a83d9..c577438 100644 --- a/src/menu-left.pug +++ b/src/menu-left.pug @@ -27,7 +27,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Projects div.menu-icon.icon-folder-alt - sib-route(hidden,name='project', id-prefix=`${sdn}/projects/`) + sib-route(hidden, name='project', id-prefix=`${sdn}/projects/`, use-id='') div.sub-menu sib-display( data-src=`${sdn}/projects/`, @@ -43,7 +43,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Cercles div.menu-icon.icon-globe - sib-route(hidden, name='circle', id-prefix=`${sdn}/circles/`) + sib-route(hidden, name='circle', id-prefix=`${sdn}/circles/`, use-id='') div.sub-menu sib-display( data-src=`${sdn}/circles/`, @@ -58,7 +58,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Chat div.menu-icon.icon-envelope-letter - sib-route(hidden, name='member-chat', id-prefix=`${sdn}/members/`) + sib-route(hidden, name='member-chat', id-prefix=`${sdn}/members/`, use-id='') div.sub-menu sib-display( data-src=`${sdn}/members/`, From 0bf840271e5993648b2e92bed8284f2fb8edd4d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABlle=20Morin?= Date: Thu, 2 May 2019 18:32:20 +0200 Subject: [PATCH 06/13] ui(general): correct the general display after switching to Core 0.7 + freezed dependancies --- src/dependencies.pug | 14 +++---- src/index.pug | 1 + src/menu-left.pug | 8 ++-- src/page-job-offers.pug | 2 +- src/page-project-edit.pug | 47 +++++++++++---------- src/page-project-profile.pug | 6 +-- src/page-project.pug | 8 ++-- src/styles/form.scss | 72 ++++++++++++++++++++++++++++++++- src/styles/job-offers.scss | 10 +++++ src/styles/main.scss | 1 + src/styles/member-profile.scss | 1 + src/styles/project-profile.scss | 6 ++- src/styles/variables.scss | 2 +- src/templates/template-team.pug | 1 - 14 files changed, 131 insertions(+), 48 deletions(-) diff --git a/src/dependencies.pug b/src/dependencies.pug index 1a08ad7..d6815d5 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -3,7 +3,7 @@ //script(src="/lib/webcomponentsjs/webcomponents-loader.js") //- script(src="lib/html-imports.js") -script(type="module" src="https://unpkg.com/@startinblox/oidc@0.6") +script(type="module" src="https://unpkg.com/@startinblox/oidc@0.6.0") script(src="/scripts/index.js") @@ -23,10 +23,10 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 //link(rel='import', href='/lib/sib-chat/sib-chat.html') //- cdn -script(type="module" src="https://unpkg.com/@startinblox/core@0.7") -script(type="module" src="https://unpkg.com/@startinblox/router@0.7") -script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1") -script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1") -script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2") -script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1") +script(type="module" src="https://unpkg.com/@startinblox/core@0.7.15") +script(type="module" src="https://unpkg.com/@startinblox/router@0.7.2") +script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") +script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1.11") +script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2.1") +script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.10") diff --git a/src/index.pug b/src/index.pug index 86e1bbc..1c2a3b4 100644 --- a/src/index.pug +++ b/src/index.pug @@ -1,4 +1,5 @@ include get_config.pug +doctype html html(lang="en") head meta(charset="UTF-8") diff --git a/src/menu-left.pug b/src/menu-left.pug index c577438..7d6e531 100644 --- a/src/menu-left.pug +++ b/src/menu-left.pug @@ -3,8 +3,8 @@ nav#navbar sib-route.menu(name='members') div.menu-notification sib-display( - data-fields, data-src=`${sdn}/members/`, + data-fields='-', counter-template='${counter}' ) div.menu-label Members @@ -13,8 +13,8 @@ nav#navbar sib-route.menu(name='job-offers') div.menu-notification sib-display( - data-fields, data-src=`${sdn}/job-offers/`, + data-fields='-', counter-template='${counter}' ) div.menu-label Job offers @@ -27,7 +27,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Projects div.menu-icon.icon-folder-alt - sib-route(hidden, name='project', id-prefix=`${sdn}/projects/`, use-id='') + sib-route(hidden,name='project', id-prefix=`${sdn}/projects/`, use-id) div.sub-menu sib-display( data-src=`${sdn}/projects/`, @@ -43,7 +43,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Cercles div.menu-icon.icon-globe - sib-route(hidden, name='circle', id-prefix=`${sdn}/circles/`, use-id='') + sib-route(hidden, name='circle', id-prefix=`${sdn}/circles/`) div.sub-menu sib-display( data-src=`${sdn}/circles/`, diff --git a/src/page-job-offers.pug b/src/page-job-offers.pug index 23731dc..219599d 100644 --- a/src/page-job-offers.pug +++ b/src/page-job-offers.pug @@ -16,7 +16,7 @@ div.grid-layer widget-author.groups='groups-name', multiple-author.groups, - + widget-skills='skills-name', multiple-skills, action-send='member-chat', diff --git a/src/page-project-edit.pug b/src/page-project-edit.pug index 8549be4..f15b79b 100644 --- a/src/page-project-edit.pug +++ b/src/page-project-edit.pug @@ -1,24 +1,27 @@ -sib-widget(name='template-legend-fee') - template - span Fee - -sib-widget(name='template-legend-customer') - template - span Customer information sib-widget(name='template-legend-team') template - span The team + span ${label} + +sib-widget(name='template-members') + template + + sib-form.team.is-horizontal( + naked, + data-src='${id}', + data-fields='user.name, name', + range-user.name=`${sdn}/users/`, + class-name='field', + class-user.name='field', + label-name='Role', + label-user.name='Member(s)', + ) .frame-form h1 Edit your project p.form-goal Here you can edit your projet's details .form-view sib-form.block( - range-businessProvider=`${sdn}/businessproviders/`, - range-team=`${sdn}/users/`, - range-members=`${sdn}/project-members/`, - data-fields='block-project__info, block-project__fee, block-project__customer, block-project__team', set-block-project__info='customer.name, name, customer.logo, description', @@ -28,10 +31,12 @@ sib-widget(name='template-legend-team') label-description='Project description', set-block-project__fee='fieldset-fee, businessProvider, businessProvider.fee', + range-businessProvider=`${sdn}/businessproviders/`, label-businessProvider='Business provider', label-businessProvider.fee='Amount of the contribution (%)', - widget-fieldset-fee='template-legend-fee', + widget-fieldset-fee='template-legend-team', widget-businessProvider.fee='sib-form-number', + label-fieldset-fee='Fee', set-block-project__customer='fieldset-customer, customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone', label-customer.companyRegister='Company registration number', @@ -41,20 +46,14 @@ sib-widget(name='template-legend-team') label-customer.role='Role within the company', label-customer.email='Email', label-customer.phone='Phone', - widget-fieldset-customer='template-legend-customer', + widget-fieldset-customer='template-legend-team', + label-fieldset-customer='Customer information', - set-block-project__team='fieldset-team, team, members', - label-team='Member', - label-members='Role', + set-block-project__team='fieldset-team, members', + label-fieldset-team='The team', widget-fieldset-team='template-legend-team', - multiple-team, + widget-members='template-members', multiple-members, bind-resources ) - - //- - set-block-project__team='fieldset-team, team', - widget-fieldset-team='template-legend-team', - widget-team='sib-form-multiple-dropdown', - (sib-form-multiple-dropdown ne fonctionne pas). \ No newline at end of file diff --git a/src/page-project-profile.pug b/src/page-project-profile.pug index b4f6cb6..5dbd56a 100644 --- a/src/page-project-profile.pug +++ b/src/page-project-profile.pug @@ -23,13 +23,13 @@ widget-businessProvider='template-business-provider' set-block-customer='label-customer, customer', - value-label-customer='CUSTOMER INFORMATIONS:' + value-label-customer='CUSTOMER INFORMATIONS:', widget-customer='customer-template', set-block-team='label-team, members', - value-label-team='TEAM:' + value-label-team='TEAM:', widget-members='team-template', - multiple-members, + multiple-members='', bind-resources ) diff --git a/src/page-project.pug b/src/page-project.pug index 9a93ff1..ed32ffe 100644 --- a/src/page-project.pug +++ b/src/page-project.pug @@ -3,16 +3,16 @@ nav.jsRightMenu(role='navigation') ul li.jsOffsiteToggle a Fold menu - sib-route(name='project-chat') + sib-route(name='project-chat', use-id) li a Chat - sib-route(name='project-profile') + sib-route(name='project-profile', use-id) li a Information - sib-route(name='project-edit') + sib-route(name='project-edit', use-id) li a Edit - sib-route(name='project-create') + sib-route(name='project-create', use-id) li a Add new #views-container diff --git a/src/styles/form.scss b/src/styles/form.scss index ab6514f..17cfa25 100644 --- a/src/styles/form.scss +++ b/src/styles/form.scss @@ -46,6 +46,17 @@ flex-direction: column; } + input { + -webkit-appearance: none; + align-items: center; + background: $color-glitter; + border: none; + color: $color-purple-dark; + display: inline-flex; + justify-content: flex-start; + line-height: 1.5; + vertical-align: top; + } sib-form-auto-completion, sib-form-checkbox, @@ -61,7 +72,6 @@ @extend %label; } - input, select, textarea { background: $color-glitter; @@ -69,9 +79,9 @@ color: $color-purple-dark; line-height: 1.5; width: 100%; + } - input, select, textarea { padding: 1.7rem; @@ -207,6 +217,13 @@ align-items: stretch; } + sib-multiple-form { + + > label { + display: none; + } + } + input[type='submit'] { margin-top: 6rem; @extend %submit-form; @@ -221,3 +238,54 @@ margin-bottom: 3.4rem; } } + +.is-horizontal { + display: flex; +} + +.field { + margin-right: 0.75rem; + max-width: 50%; +} + +.is-expanded { + flex-grow: 1; +} + +sib-multiple-form[name='members'] { + + > div { + align-items: center; + display: flex; + } + + > div:not(:nth-child(-n + 2)) { + + label { + + > div { + display: none; + } + } + } + + button { + appearance: none; + background-color: $color-white; + border: 1px solid; + border-radius: 100%; + color: $color-majorelle-blue; + cursor: pointer; + font-size: 2.55rem; + height: 1em; + line-height: 0; + margin: 0.34rem; + padding: 0 0.04em 0.08em; + vertical-align: middle; + width: 1em; + + &::after { + content: Add; + } + } +} diff --git a/src/styles/job-offers.scss b/src/styles/job-offers.scss index 473156e..d23731a 100644 --- a/src/styles/job-offers.scss +++ b/src/styles/job-offers.scss @@ -45,6 +45,10 @@ sib-multiple[name$='groups'] { display: flex; + label { + display: none; + } + > * { @extend %group; } @@ -87,6 +91,12 @@ line-height: 1.6; margin-bottom: 1.6rem; } + + [name='skills'] { + label { + display: none; + } + } [name='send'] { color: $color-majorelle-blue; diff --git a/src/styles/main.scss b/src/styles/main.scss index 89aaa14..3901cbb 100644 --- a/src/styles/main.scss +++ b/src/styles/main.scss @@ -223,6 +223,7 @@ sib-multiple[name*='skills'] { border: 1px solid $color-selective-yellow; border-radius: 2em; color: $color-white; + display: block; font-size: 1.4rem; font-weight: bold; margin: 0.4rem 1rem 0.4rem 0; diff --git a/src/styles/member-profile.scss b/src/styles/member-profile.scss index db51585..f8c9466 100644 --- a/src/styles/member-profile.scss +++ b/src/styles/member-profile.scss @@ -146,6 +146,7 @@ label { font-weight: bold; + display: block; padding-bottom: 0.5rem; } } diff --git a/src/styles/project-profile.scss b/src/styles/project-profile.scss index 17d17f2..7e321fa 100644 --- a/src/styles/project-profile.scss +++ b/src/styles/project-profile.scss @@ -171,6 +171,10 @@ > sib-multiple { + label { + display: none; + } + > team-template[name='members'] { display: grid; grid-column-gap: 1.6rem; @@ -218,7 +222,7 @@ display: flex; margin-left: 1rem; - div[name='name'] { + sib-multiple [name='name'] { @extend %group; } } diff --git a/src/styles/variables.scss b/src/styles/variables.scss index b9d0219..b9d7b22 100644 --- a/src/styles/variables.scss +++ b/src/styles/variables.scss @@ -93,7 +93,7 @@ $color-majorelle-blue: hsl(244, 73%, 62%); @include mdi('cellphone-iphone'); } - [name="foaf:homepage"] { + [name="foaf:homepage"]:not(:empty) { @include mdi('link-variant'); } } diff --git a/src/templates/template-team.pug b/src/templates/template-team.pug index f4551f1..1f42849 100644 --- a/src/templates/template-team.pug +++ b/src/templates/template-team.pug @@ -1,6 +1,5 @@ sib-widget(name='team-template') template - p ${value} sib-display( data-src="${value.user['@id']}" data-fields='account.picture', From 4c6065886001491f168e3cd6dbfe9800896fab4f Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Fri, 10 May 2019 15:43:11 +0200 Subject: [PATCH 07/13] feature: rdf_type & fix: router user panel --- src/index.pug | 3 +++ src/menu-left.pug | 8 ++++---- src/page-user-panel.pug | 6 +++--- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/index.pug b/src/index.pug index 1c2a3b4..eb5b1ee 100644 --- a/src/index.pug +++ b/src/index.pug @@ -28,6 +28,9 @@ html(lang="en") include page-job-offer-create.pug #project(hidden) include page-project.pug + #user-profile(hidden) + #user-settings(hidden) + #user-admin(hidden) //- #client-creation(hidden) include page-client-creation.pug //-#groups(hidden) diff --git a/src/menu-left.pug b/src/menu-left.pug index 7d6e531..cb22b65 100644 --- a/src/menu-left.pug +++ b/src/menu-left.pug @@ -10,7 +10,7 @@ nav#navbar div.menu-label Members div.menu-icon.icon-people div.divider - sib-route.menu(name='job-offers') + sib-route.menu(name='job-offers', rdf-type='hd:joboffer') div.menu-notification sib-display( data-src=`${sdn}/job-offers/`, @@ -27,7 +27,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Projects div.menu-icon.icon-folder-alt - sib-route(hidden,name='project', id-prefix=`${sdn}/projects/`, use-id) + sib-route(hidden,name='project', id-prefix=`${sdn}/projects/`, rdf-type='hd:project', use-id='') div.sub-menu sib-display( data-src=`${sdn}/projects/`, @@ -43,7 +43,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Cercles div.menu-icon.icon-globe - sib-route(hidden, name='circle', id-prefix=`${sdn}/circles/`) + sib-route(hidden, name='circle', id-prefix=`${sdn}/circles/`, rdf-type='hd:circle') div.sub-menu sib-display( data-src=`${sdn}/circles/`, @@ -58,7 +58,7 @@ nav#navbar div.menu-icon.icon-arrow-up div.menu-label Chat div.menu-icon.icon-envelope-letter - sib-route(hidden, name='member-chat', id-prefix=`${sdn}/members/`, use-id='') + sib-route(hidden, name='member-chat', id-prefix=`${sdn}/members/`, rdf-type='foaf:user', use-id='') div.sub-menu sib-display( data-src=`${sdn}/members/`, diff --git a/src/page-user-panel.pug b/src/page-user-panel.pug index b4ad000..efec855 100644 --- a/src/page-user-panel.pug +++ b/src/page-user-panel.pug @@ -1,13 +1,13 @@ nav(role="user's functionalities menu") sib-router ul - sib-route(name='') + sib-route(name='user-profile') li a(href='#') My profile - sib-route(name='') + sib-route(name='user-settings') li a(href='#') Settings - sib-route(name='') + sib-route(name='user-admin') li a Admin button(role='log out' onclick="document.querySelector('sib-auth').logout();") Log out From e5ae27dc9c1e0745660ab36fe7a2b3866c5b5c06 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Fri, 10 May 2019 15:58:20 +0200 Subject: [PATCH 08/13] git: remove submodules --- www/lib/sib-chat | 1 - www/lib/sib-core | 1 - www/lib/sib-oidc | 1 - www/lib/sib-router | 1 - 4 files changed, 4 deletions(-) delete mode 160000 www/lib/sib-chat delete mode 160000 www/lib/sib-core delete mode 160000 www/lib/sib-oidc delete mode 160000 www/lib/sib-router diff --git a/www/lib/sib-chat b/www/lib/sib-chat deleted file mode 160000 index 2456ba7..0000000 --- a/www/lib/sib-chat +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2456ba747dfdacf96cfaf70469b0eff059287e67 diff --git a/www/lib/sib-core b/www/lib/sib-core deleted file mode 160000 index 9ff71f4..0000000 --- a/www/lib/sib-core +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9ff71f4d047a101f633872db0820736b8baf792c diff --git a/www/lib/sib-oidc b/www/lib/sib-oidc deleted file mode 160000 index 9ce7e6c..0000000 --- a/www/lib/sib-oidc +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9ce7e6cec7447b7d3c04dee03bf068744373ac3f diff --git a/www/lib/sib-router b/www/lib/sib-router deleted file mode 160000 index c358ade..0000000 --- a/www/lib/sib-router +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c358adefa38f93cd3acdf1f75c8c79e4b8379dc4 From 54ad5a612f0d2417b8b7fb8ab5de0c23b99581be Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Fri, 10 May 2019 16:25:58 +0200 Subject: [PATCH 09/13] update: notification to 0.1.12 --- src/dependencies.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dependencies.pug b/src/dependencies.pug index d6815d5..b15139a 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -26,7 +26,7 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 script(type="module" src="https://unpkg.com/@startinblox/core@0.7.15") script(type="module" src="https://unpkg.com/@startinblox/router@0.7.2") script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") -script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1.11") +script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1.12") script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2.1") script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.10") From 6c1a28f60403aaa67ff990886b5a78d6ee5f0f54 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Mon, 13 May 2019 18:50:34 +0200 Subject: [PATCH 10/13] css: refactoring & fixing - day 1 --- Makefile | 2 +- server.js | 10 +- src/dependencies.pug | 23 +- src/header.pug | 1 - src/index.pug | 58 +-- src/menu-left.pug | 6 +- src/page-group-create.pug | 2 +- src/page-group-edit.pug | 2 +- src/page-group.pug | 2 +- src/page-job-offer-create.pug | 5 +- src/page-job-offers.pug | 4 +- src/page-project-create.pug | 2 +- src/page-project-edit.pug | 2 +- src/page-project-profile.pug | 2 +- src/page-project.pug | 2 +- src/scripts/hd-app.js | 63 ---- src/scripts/index.js | 34 +- src/styles/_index.scss | 17 + src/styles/abstracts/_mixins.scss | 24 ++ src/styles/abstracts/_variables.scss | 25 ++ src/styles/base/_compat.scss | 73 ++++ src/styles/base/main.scss | 114 ++++++ src/styles/components/_index.scss | 8 + src/styles/components/content.scss | 114 ++++++ src/styles/{ => components}/filters.scss | 4 +- src/styles/{ => components}/form.scss | 80 +++-- src/styles/{ => components}/header.scss | 33 +- src/styles/components/howto.scss | 17 + src/styles/components/icons/_index.scss | 3 + .../{ => components}/icons/custom-icons.scss | 0 src/styles/{ => components}/icons/icons.scss | 0 .../icons/material-design-icons.scss | 0 src/styles/{ => components}/menu-left.scss | 65 +--- src/styles/{ => components}/menu-right.scss | 77 ++-- src/styles/components/skills.scss | 18 + src/styles/content.scss | 191 ---------- src/styles/index.scss | 28 -- src/styles/job-offers.scss | 134 ------- src/styles/layout/circle-profile/_index.scss | 1 + .../circle-profile/circle-profile.scss} | 6 +- src/styles/layout/job-offers/_index.scss | 1 + src/styles/layout/job-offers/job-offers.scss | 163 +++++++++ src/styles/layout/member-chat/_index.scss | 1 + .../{ => layout/member-chat}/member-chat.scss | 0 src/styles/layout/members/_index.scss | 2 + .../{ => layout/members}/member-profile.scss | 27 +- src/styles/{ => layout/members}/members.scss | 70 +++- src/styles/layout/project-profile/_index.scss | 1 + .../project-profile}/project-profile.scss | 16 +- src/styles/main.scss | 332 ------------------ src/styles/mixins.scss | 160 --------- src/styles/right-panel.scss | 50 --- src/styles/variables.scss | 150 -------- 53 files changed, 842 insertions(+), 1383 deletions(-) delete mode 100644 src/scripts/hd-app.js create mode 100644 src/styles/_index.scss create mode 100644 src/styles/abstracts/_mixins.scss create mode 100644 src/styles/abstracts/_variables.scss create mode 100644 src/styles/base/_compat.scss create mode 100644 src/styles/base/main.scss create mode 100644 src/styles/components/_index.scss create mode 100644 src/styles/components/content.scss rename src/styles/{ => components}/filters.scss (94%) rename src/styles/{ => components}/form.scss (76%) rename src/styles/{ => components}/header.scss (84%) create mode 100644 src/styles/components/howto.scss create mode 100644 src/styles/components/icons/_index.scss rename src/styles/{ => components}/icons/custom-icons.scss (100%) rename src/styles/{ => components}/icons/icons.scss (100%) rename src/styles/{ => components}/icons/material-design-icons.scss (100%) rename src/styles/{ => components}/menu-left.scss (56%) rename src/styles/{ => components}/menu-right.scss (62%) create mode 100644 src/styles/components/skills.scss delete mode 100644 src/styles/content.scss delete mode 100644 src/styles/index.scss delete mode 100644 src/styles/job-offers.scss create mode 100644 src/styles/layout/circle-profile/_index.scss rename src/styles/{group-profile.scss => layout/circle-profile/circle-profile.scss} (93%) create mode 100644 src/styles/layout/job-offers/_index.scss create mode 100644 src/styles/layout/job-offers/job-offers.scss create mode 100644 src/styles/layout/member-chat/_index.scss rename src/styles/{ => layout/member-chat}/member-chat.scss (100%) create mode 100644 src/styles/layout/members/_index.scss rename src/styles/{ => layout/members}/member-profile.scss (84%) rename src/styles/{ => layout/members}/members.scss (73%) create mode 100644 src/styles/layout/project-profile/_index.scss rename src/styles/{ => layout/project-profile}/project-profile.scss (92%) delete mode 100644 src/styles/main.scss delete mode 100644 src/styles/mixins.scss delete mode 100644 src/styles/right-panel.scss delete mode 100644 src/styles/variables.scss diff --git a/Makefile b/Makefile index 5ef536c..240e5f3 100644 --- a/Makefile +++ b/Makefile @@ -60,7 +60,7 @@ $(DIST_DIR)/index.staging.html: src/index.pug src/config.json $(wildcard src/*.p node_modules/.bin/pug --pretty $< --out $(dir $@) -E staging.html -O src/config.json || touch $@ # sass -$(DIST_DIR)/styles/index.css: src/styles/index.scss $(wildcard src/*.scss src/*/*.scss) +$(DIST_DIR)/styles/index.css: src/styles/_index.scss $(wildcard src/*.scss src/*/*.scss src/*/*/*.scss src/*/*/*/*.scss) @echo sass: $< ➜ $@ @node_modules/.bin/node-sass $< $@ --source-map true --source-map-contents || touch $@ diff --git a/server.js b/server.js index 7b0f156..df4f56e 100644 --- a/server.js +++ b/server.js @@ -21,6 +21,12 @@ bs.init({ proxy: `http://localhost:${port}`, open: false, notify: false, - port: browserSyncPort - // tunnel: true, + port: browserSyncPort, + files: [ + 'www/styles/index.css', + 'www/scripts/index.js', + 'www/index.html', + 'www/images/**', + 'www/fonts/**' + ] }); diff --git a/src/dependencies.pug b/src/dependencies.pug index b15139a..54d675a 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -1,28 +1,21 @@ -// Scripts -//- script(src="https://unpkg.com/@webcomponents/webcomponentsjs@1.2.7/webcomponents-loader.js") -//script(src="/lib/webcomponentsjs/webcomponents-loader.js") -//- script(src="lib/html-imports.js") - script(type="module" src="https://unpkg.com/@startinblox/oidc@0.6.0") - script(src="/scripts/index.js") -// Stylesheets +//- Stylesheets link(rel='stylesheet', href='/lib/normalize.css') link(rel='stylesheet', href='/styles/index.css') link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:300,400,400i,600,700&subset=latin-ext') link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i') -// Web components - //- local -//script(type="module" src="/lib/sib-core/sib-display.js") -//script(type="module" src="/lib/sib-router/sib-router.js") -//script(type="module" src="/lib/sib-core/sib-form.js") +//- script(type="module" src="/lib/sib-core/src/index.js") +//- script(type="module" src="/lib/sib-router/src/index.js") +//- script(type="module" src="/lib/sib-chat/sib-chat.js") +//- script(type="module" src="/lib/sib-notifications/sib-notifications.js") +//- script(type="module" src="/lib/sib-conversation/sib-conversation.js") +//- script(type="module" src="/lib/sib-directory/sib-directory.js") -//link(rel='import', href='/lib/sib-chat/sib-chat.html') - -//- cdn +//- CDN script(type="module" src="https://unpkg.com/@startinblox/core@0.7.15") script(type="module" src="https://unpkg.com/@startinblox/router@0.7.2") script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") diff --git a/src/header.pug b/src/header.pug index 6aced93..9099c88 100644 --- a/src/header.pug +++ b/src/header.pug @@ -1,4 +1,3 @@ -#button-toggle #logo img(src="/images/logo.png" width=111 height=32) diff --git a/src/index.pug b/src/index.pug index eb5b1ee..666c4c9 100644 --- a/src/index.pug +++ b/src/index.pug @@ -9,33 +9,33 @@ html(lang="en") link(rel="icon" type="image/png" href="/images/favicon.png") include dependencies.pug body - div.layer - header#header.row(role='banner') - include header.pug - .content.row - include menu-left.pug + header#header.row(role='banner') + include header.pug + .content.row + include menu-left.pug + main#mainContainer + + #members(hidden).padded-width + include page-members.pug + + #job-offers(hidden).padded-width + include page-job-offers.pug + + #job-offer-create(hidden).padded-width + sib-link(class="backlink", next="job-offers") Back + include page-job-offer-create.pug + + #project(hidden) + include page-project.pug - main#mainContainer - //- #dashboard(hidden) - include page-dashboard.pug - #members(hidden) - include page-members.pug - #member-chat(hidden) - include page-member-chat.pug - #job-offers(hidden) - include page-job-offers.pug - #job-offer-create(hidden) - include page-job-offer-create.pug - #project(hidden) - include page-project.pug - #user-profile(hidden) - #user-settings(hidden) - #user-admin(hidden) - //- #client-creation(hidden) - include page-client-creation.pug - //-#groups(hidden) - include page-groups.pug - #circle(hidden) - include page-group.pug - //- #search(hidden) - include page-search.pug + #circle(hidden) + include page-group.pug + + #member-chat(hidden) + include page-member-chat.pug + + #user-profile(hidden) + + #user-settings(hidden) + + #user-admin(hidden) diff --git a/src/menu-left.pug b/src/menu-left.pug index cb22b65..bc86895 100644 --- a/src/menu-left.pug +++ b/src/menu-left.pug @@ -4,8 +4,7 @@ nav#navbar div.menu-notification sib-display( data-src=`${sdn}/members/`, - data-fields='-', - counter-template='${counter}' + data-fields='-' ) div.menu-label Members div.menu-icon.icon-people @@ -14,8 +13,7 @@ nav#navbar div.menu-notification sib-display( data-src=`${sdn}/job-offers/`, - data-fields='-', - counter-template='${counter}' + data-fields='-' ) div.menu-label Job offers div.menu-icon.icon-briefcase diff --git a/src/page-group-create.pug b/src/page-group-create.pug index 922bd3a..343db17 100644 --- a/src/page-group-create.pug +++ b/src/page-group-create.pug @@ -1,4 +1,4 @@ -.frame-form +.frame-form.full-wide h1 New group p.form-goal Here you can create a new group according to your interests, what you want to share, etc. .form-view diff --git a/src/page-group-edit.pug b/src/page-group-edit.pug index edcfa1c..b4c0676 100644 --- a/src/page-group-edit.pug +++ b/src/page-group-edit.pug @@ -1,4 +1,4 @@ -#circle-edit +#circle-edit.frame-form h1 Edit group .form-view sib-form.block( diff --git a/src/page-group.pug b/src/page-group.pug index 2c1cb89..39635d0 100644 --- a/src/page-group.pug +++ b/src/page-group.pug @@ -16,7 +16,7 @@ nav.jsRightMenu(role='navigation') sib-route(name='circle-create') li a Add new -#views-container +.views-container #circle-chat include page-group-chat.pug #circle-profile diff --git a/src/page-job-offer-create.pug b/src/page-job-offer-create.pug index 14f9388..93be66f 100644 --- a/src/page-job-offer-create.pug +++ b/src/page-job-offer-create.pug @@ -1,5 +1,5 @@ -.frame-form - +.frame-form.frame + sib-widget(name='title-text') template p Be clear and specific with the name of your offer. You can indicate which skill is important, the start date or the name of the client. Ex: "Looking for a plumber for planet Mars ASAP". @@ -8,7 +8,6 @@ template p Be specific and exhaustive to avoid answering too many questions later. Indicate what is the best way to fill the offer, the prerequisites...' - sib-link(next='job-offers' class='back') Back h1 Post a new job offer p.form-goal This form allows you to share an offer to all members of the network. .form-view diff --git a/src/page-job-offers.pug b/src/page-job-offers.pug index 219599d..be4a39f 100644 --- a/src/page-job-offers.pug +++ b/src/page-job-offers.pug @@ -5,7 +5,7 @@ div.grid-layer include templates/template-joboffers-filter.pug div.grid-layer-main.containerV - h2 New offers + h1 New offers span Here you can find and post offers sib-display#offers-list( data-src=`${sdn}/job-offers/`, @@ -38,7 +38,7 @@ div.grid-layer div.grid-layer-links.containerV template#groups-list-template p ${value} - sib-link(next="job-offer-create").containerH.containerCenter.action-link + sib-link(next="job-offer-create").plus-button div.icon-plus div Post a new offer //-sib-link().containerH.containerCenter.how-link diff --git a/src/page-project-create.pug b/src/page-project-create.pug index 7e8fc7e..4e26997 100644 --- a/src/page-project-create.pug +++ b/src/page-project-create.pug @@ -1,4 +1,4 @@ -.frame-form +.frame-form.full-wide h1 New project p.form-goal Here you can create your project, add members and assign them a job. .form-view diff --git a/src/page-project-edit.pug b/src/page-project-edit.pug index f15b79b..7849547 100644 --- a/src/page-project-edit.pug +++ b/src/page-project-edit.pug @@ -17,7 +17,7 @@ sib-widget(name='template-members') label-user.name='Member(s)', ) -.frame-form +.frame-form.full-wide h1 Edit your project p.form-goal Here you can edit your projet's details .form-view diff --git a/src/page-project-profile.pug b/src/page-project-profile.pug index 5dbd56a..7330f28 100644 --- a/src/page-project-profile.pug +++ b/src/page-project-profile.pug @@ -1,4 +1,4 @@ -.frame +.frame-form.full-wide include templates/template-business-provider.pug include templates/template-customer.pug diff --git a/src/page-project.pug b/src/page-project.pug index ed32ffe..f06a683 100644 --- a/src/page-project.pug +++ b/src/page-project.pug @@ -15,7 +15,7 @@ nav.jsRightMenu(role='navigation') sib-route(name='project-create', use-id) li a Add new -#views-container +.views-container #project-chat include page-project-chat.pug #project-profile diff --git a/src/scripts/hd-app.js b/src/scripts/hd-app.js deleted file mode 100644 index 1fe90ce..0000000 --- a/src/scripts/hd-app.js +++ /dev/null @@ -1,63 +0,0 @@ -document.addEventListener("DOMContentLoaded", function (event) { - // Constants declaration - const navBar = document.querySelector("#navbar"); - const searchBar = document.querySelector("#search-bar"); - const searchView = document.querySelector("#search-view"); - const searchInput = searchBar.querySelector("#search-input"); - const btnToggle = document.querySelector("#button-toggle"); - - - // Shortcuts - window.addEventListener("keydown", function (e) { - // CTRL + K triggers the search feature - if ((e.keyCode == 75 || e.keyCode == 80) && (e.ctrlKey === true || e.metaKey === true)) { - e.preventDefault(); - e.stopPropagation(); - openSearchBar(); - } - - // Escape key - else if (e.keyCode == 27 && navBar.classList.contains("search-mode")) { - closeSearchBar(); - } - }); - - searchBar.querySelector("#close-search-icon").addEventListener("click", emptySearchBar); - - function openSearchBar(e) { - navBar.classList.add("search-mode"); - searchBar.querySelector("#search-input").focus(); - searchView.classList.add("search-mode"); - } - - function closeSearchBar(e) { - navBar.classList.remove("search-mode"); - searchView.classList.remove("search-mode"); - } - - function emptySearchBar(e) { - searchInput.value = ''; - openSearchBar(); - searchInput.focus; - } - - - // Synchronizes the search input with the s - searchInput.addEventListener("keyup", (e) => { - searchView.querySelectorAll("ldp-form input[type=text]").forEach((el) => { - el.value = searchInput.value; - }); - }); - - - btnToggle.addEventListener('click', e => { - navBar.classList.toggle('open'); - e.stopPropagation(); - }); - - window.addEventListener('click', e => { - navBar.classList.remove('open'); - }); - - -}); diff --git a/src/scripts/index.js b/src/scripts/index.js index 9b4fac6..7d19dde 100644 --- a/src/scripts/index.js +++ b/src/scripts/index.js @@ -1,33 +1,6 @@ document.addEventListener('DOMContentLoaded', function (event) { - const navBar = document.querySelector('#navbar'); - const btnToggle = document.querySelector('#button-toggle'); const menuWrappers = Array.from(document.querySelectorAll('.menu-wrapper')); const rightMenus = Array.from(document.querySelectorAll('nav.jsRightMenu')); - - if (!navBar || !btnToggle) return; - - btnToggle.addEventListener('click', e => { - navBar.classList.toggle('open'); - e.stopPropagation(); - }); - - window.addEventListener('click', e => { - navBar.classList.remove('open'); - }); - - function resize() { - setTimeout(() => - Array.from(document.querySelectorAll('.chat-view')).forEach(elm => { - if (!elm.offsetParent) return; - elm.style.setProperty('--pos-top', elm.offsetTop + 'px'); - })); - } - window.addEventListener('resize', resize); - window.addEventListener('navigate', resize); - window.addEventListener('popstate', resize); - document.addEventListener('load', resize); - document.addEventListener('WebComponentsReady', resize); - resize(); // Toggle sub-menus menuWrappers.forEach(menuWrapper => { @@ -40,9 +13,10 @@ document.addEventListener('DOMContentLoaded', function (event) { // Open/close menu on the right rightMenus.forEach(rightMenu => { const btnRightMenu = rightMenu.querySelector("li.jsOffsiteToggle"); - + btnRightMenu.addEventListener('click', e => { rightMenu.classList.toggle('offsite-is-closed'); }) - }) -}); + }); + +}); \ No newline at end of file diff --git a/src/styles/_index.scss b/src/styles/_index.scss new file mode 100644 index 0000000..e8c7a32 --- /dev/null +++ b/src/styles/_index.scss @@ -0,0 +1,17 @@ +@charset "UTF-8"; + +@import '../../node_modules/include-media/dist/include-media'; + +@import 'abstracts/variables'; +@import 'abstracts/mixins'; +@import 'components/icons/index'; +@import 'base/main'; +@import 'components/index'; + +main#mainContainer { + @import 'layout/members/index'; + @import 'layout/job-offers/index'; + @import 'layout/project-profile/index'; + @import 'layout/circle-profile/index'; + @import 'layout/member-chat/index'; +} diff --git a/src/styles/abstracts/_mixins.scss b/src/styles/abstracts/_mixins.scss new file mode 100644 index 0000000..31cde50 --- /dev/null +++ b/src/styles/abstracts/_mixins.scss @@ -0,0 +1,24 @@ +@mixin style-template-fieldset($name: 'default') { + template-legend-#{$name} { + border-bottom: 1px solid $color-221-51-90; + color: $color-233-18-29; + font-size: 1.8rem; + font-weight: 600; + padding-bottom: 1rem; + } +} + +@mixin window-style-modal($background: $color-0-0-100, $shadow: hsla(212, 7%, 55%, 0.19)) { + box-shadow: 0 0 8px 0 $shadow; + background-color: $background; +} + +%user-role { + border: 1px solid $color-45-95-54; + border-radius: 3px; + color: $color-210-4-50; + font-size: 1.4rem; + font-weight: 400; + margin-right: 0.4rem; + padding: calc(1.6rem - 0.8em) 0.7em; +} \ No newline at end of file diff --git a/src/styles/abstracts/_variables.scss b/src/styles/abstracts/_variables.scss new file mode 100644 index 0000000..e63db81 --- /dev/null +++ b/src/styles/abstracts/_variables.scss @@ -0,0 +1,25 @@ +// Color Variables +$color-43-100-50: hsl(43, 100%, 50%); +$color-45-95-54: hsl(45, 95%, 54%); +$color-46-100-67: hsl(46, 100%, 67%); +$color-46-100-50: hsl(46, 100%, 50%); +$color-0-0-100: hsl(0, 0%, 100%); +$color-210-17-91: hsl(210, 17%, 91%); +$color-222-52-90: hsl(222, 52%, 90%); +$color-210-25-95: hsl(210, 25%, 95%); +$color-222-57-95: hsl(222, 57%, 95%); +$color-213-20-91: hsl(213, 20%, 91%); +$color-221-51-90: hsl(221, 51%, 90%); +$color-0-0-85: hsl(0, 0%, 85%); +$color-229-25-79: hsl(229, 25%, 79%); +$color-215-9-73: hsl(215, 9%, 73%); +$color-244-10-70: hsl(244, 10%, 70%); +$color-215-6-63: hsl(215, 6%, 63%); +$color-210-5-56: hsl(210, 5%, 56%); +$color-210-4-50: hsl(210, 4%, 50%); +$color-213-4-50: hsl(213, 4%, 50%); +$color-213-13-86: hsla(213, 13%, 86%, 0.2); +$color-0-0-29: hsl(0, 0%, 29%); +$color-233-18-29: hsl(233, 18%, 29%); +$color-216-4-22: hsl(216, 4%, 22%); +$color-244-73-62: hsl(244, 73%, 62%); diff --git a/src/styles/base/_compat.scss b/src/styles/base/_compat.scss new file mode 100644 index 0000000..8a31961 --- /dev/null +++ b/src/styles/base/_compat.scss @@ -0,0 +1,73 @@ +.grid-layer { + display: grid; + font-size: 16px; + grid-template-columns: [start]auto[middle]25%[end]; + grid-template-rows: [start]7em[middle]auto[end]; +} + +%flex-grid-layer { + display: flex; + flex-direction: column; + align-items: stretch; +} + +.grid-layer-main { + @extend %flex-grid-layer; + grid-column-start: start; + grid-column-end: end; + grid-row-start: start; + grid-row-end: end; +} + +.grid-layer-links { + @extend %flex-grid-layer; + grid-column-start: middle; + grid-column-end: end; + grid-row-start: start; + grid-row-end: middle; +} + +.containerH { + display: flex; + flex-wrap: wrap; +} + +.containerV { + display: flex; + flex-direction: column; + align-items: stretch; +} + +.grow { + flex-grow: 1; + flex-shrink: 1; +} + +.fix { + flex-grow: 0; + flex-shrink: 0; +} + +.containerCenter { + justify-content: center; + align-items: center; +} + +.reverse { + flex-direction: row-reverse; +} + +.row { + display: flex; + max-width: 100%; +} + +.content { + flex-direction: row; + height: 100%; + overflow: hidden; +} + +.col { + min-width: 0; +} \ No newline at end of file diff --git a/src/styles/base/main.scss b/src/styles/base/main.scss new file mode 100644 index 0000000..c4d2251 --- /dev/null +++ b/src/styles/base/main.scss @@ -0,0 +1,114 @@ +$breakpoints: (phone: 480px, + tablet: 768px, + desktop: 1024px) !default; + +[hidden], +.hidden { + display: none !important; +} + +:root { + font-size: 10px; + font-family: Open Sans, sans-serif; + --sib-notifications-theme: #{$color-46-100-50}; + + body { + background-color: $color-210-25-95; + color: $color-213-4-50; + font-size: 1.6rem; + overflow: hidden; + overflow-wrap: break-word; + display: flex; + flex-direction: column; + height: 100vh; + overflow: hidden; + } +} + +img { + max-height: 100%; + max-width: 100%; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + color: $color-216-4-22; + font-weight: 600; + padding: 0; + + span { + font-weight: 400; + padding-left: 0.85rem; + + &:before { + content: '// '; + } + } +} + +h1 { + font-size: 2.1rem; +} + +h2 { + font-size: 2rem; +} + +h3 { + font-size: 1.6rem; +} + +h4 { + font-size: 1.2rem; +} + +h5 { + font-size: 2rem; +} + +button { + background: none; + border: none; + padding: 0; +} + +%padding-main { + padding: 5rem; +} + +.padded-width { + flex: 1; + @extend %padding-main; +} + +.frame { + @include window-style-modal(); + @extend %padding-main; + display: flex; + flex-direction: column; + flex-grow: 1; + margin: 2rem 1rem 5rem 2rem; +} + +/* Dividing into columns */ +@mixin respond-to($breakpoint) { + + @if map-has-key($breakpoints, $breakpoint) { + + @media (min-width: map-get($breakpoints, $breakpoint)) { + @content; + } + } + + @else { + @warn "Sorry, no value could be retrieved from `#{$breakpoint}`." + +"Available breakpoints are: #{map-keys($breakpoints)}."; + } +} + +// Compatibility layer for non-updated components +@import 'compat'; diff --git a/src/styles/components/_index.scss b/src/styles/components/_index.scss new file mode 100644 index 0000000..b9c8a25 --- /dev/null +++ b/src/styles/components/_index.scss @@ -0,0 +1,8 @@ +@import 'form'; +@import 'content'; +@import 'filters'; +@import 'howto'; +@import 'header'; +@import 'menu-left'; +@import 'menu-right'; +@import 'skills'; \ No newline at end of file diff --git a/src/styles/components/content.scss b/src/styles/components/content.scss new file mode 100644 index 0000000..762cec9 --- /dev/null +++ b/src/styles/components/content.scss @@ -0,0 +1,114 @@ +.backlink { + font-size: 1.5rem; + margin: 2rem 0 0 2rem; + @include icon('arrow-left-circle'); + color: #3d4057; + text-decoration: underline; + + &::before { + text-decoration: none; + } + + &::before { + font-size: 2rem; + margin-right: 1rem; + } +} + +sib-route, +sib-link { + cursor: pointer; +} + +// group + +#group-profile { + sib-display-div[name='name'] div { + @extend h1; + } + + sib-display-div[name='label-description'] div { + @extend h2; + } +} +// chat + +.chat-view { + padding: 1.7rem; + position: relative; + z-index: 0; + @include window-style-modal(); + height: calc(100vh - 104px); + + > sib-chat { + position: absolute; + top: 0; + left: 0; + right: 0; + } +} + +#member-profile { + @include media('width>tablet') { + div[name='header'] { + float: left; + width: 50%; + } + } + + div[name='name'] { + @extend h1; + + div { + display: inline-block; + margin-right: 0.7rem; + } + } + + sib-link[next='member-chat'] { + border-style: solid; + display: flex; + border-radius: 25px; + border-style: solid; + border-color: $color-244-73-62; + color: $color-244-73-62; + padding: 1.7rem; + text-decoration:none; + } + + div[name='pseudonym'] { + margin-top: -1.7rem; + margin-bottom: 1.7rem; + } + + #member-info { + &:after { + content: ''; + display: block; + clear: both; + } + } +} + +sib-form { + + form > * { + margin-top: 0.85rem; + } + + // button like + input[type='color'], + input[type='file'], + input[type='reset'], + input[type='submit'] { + display: inline-block; + padding: 0.85rem 2.55rem; + border: none; + border-radius: 100em; + font-weight: normal; + } + + input[type='reset'] { + display: none; + } +} diff --git a/src/styles/filters.scss b/src/styles/components/filters.scss similarity index 94% rename from src/styles/filters.scss rename to src/styles/components/filters.scss index d97dc63..03faa2e 100644 --- a/src/styles/filters.scss +++ b/src/styles/components/filters.scss @@ -14,7 +14,7 @@ -webkit-appearance: none; border-style: none; box-shadow: 0 0 5px 0 rgba(133, 140, 148, 0.09); - color: $color-taupe-gray; + color: $color-210-5-56; font-size: 1.36rem; line-height: 1.80; margin-top: 1.36rem; @@ -27,7 +27,7 @@ } select { - background: $color-white; + background: $color-0-0-100; background-image: url("/images/chevron-down.png"); background-position: right 12px top 60%; background-repeat: no-repeat; diff --git a/src/styles/form.scss b/src/styles/components/form.scss similarity index 76% rename from src/styles/form.scss rename to src/styles/components/form.scss index 17cfa25..add6ffd 100644 --- a/src/styles/form.scss +++ b/src/styles/components/form.scss @@ -1,31 +1,26 @@ +@include style-template-fieldset('fee'); +@include style-template-fieldset('customer'); +@include style-template-fieldset('team'); + .frame-form { - display: flex; - flex-direction: column; - margin: 0 auto; - min-height: 100vh; - padding: 6.8rem 8.5rem 10.2rem; - @extend %frame; + &.full-wide { + display: flex; + flex: 1; + font-size: 1.5rem; + flex-direction: column; + margin: 0 auto; + min-height: 100vh; + padding: 6.8rem 8.5rem 10.2rem; + background: $color-0-0-100; + } .form-view { - border-bottom: 1px solid $color-platinum; + border-bottom: 1px solid $color-210-17-91; padding-bottom: 2.55rem; } -} - -@include styleTemplateFieldset('fee'); -@include styleTemplateFieldset('customer'); -@include styleTemplateFieldset('team'); - -#circle-create, -#circle-edit, -#job-offer-create, -#project-create, -#project-edit { - flex: 1; - font-size: 1.5rem; h1 { - color: $color-purple-dark; + color: $color-233-18-29; font-weight: bold; font-size: 2rem; text-align: center; @@ -49,9 +44,9 @@ input { -webkit-appearance: none; align-items: center; - background: $color-glitter; + background: $color-222-57-95; border: none; - color: $color-purple-dark; + color: $color-233-18-29; display: inline-flex; justify-content: flex-start; line-height: 1.5; @@ -69,14 +64,21 @@ flex-direction: column; > label { - @extend %label; + color: $color-244-10-70; + font-weight: 600; + margin: 2em 0 0.5em; + text-transform: uppercase; + + > div { + padding-bottom: 1rem; + } } select, textarea { - background: $color-glitter; + background: $color-222-57-95; border: none; - color: $color-purple-dark; + color: $color-233-18-29; line-height: 1.5; width: 100%; @@ -97,7 +99,7 @@ sib-form-multiple-dropdown { label { - color: $color-dark-lava; + color: $color-216-4-22; font-weight: 600; text-transform: initial; } @@ -119,7 +121,7 @@ /*@extend %skill;*/ button.choices__button { - border-left: 1px solid $color-selective-yellow; + border-left: 1px solid $color-43-100-50; opacity: 1; padding-left: 0; } @@ -142,7 +144,7 @@ margin-top: 2em; &:before { - border: 2px solid $color-taupe-gray; + border: 2px solid $color-210-5-56; content: ''; height: 1rem; left: 0; @@ -155,8 +157,8 @@ &:checked { &:before { - border: 2px solid $color-taupe-gray; - color: $color-majorelle-blue; + border: 2px solid $color-210-5-56; + color: $color-244-73-62; height: 1rem; left: 0; margin-left: 1rem; @@ -169,7 +171,7 @@ } &:after { - background: $color-white; + background: $color-0-0-100; content: ''; height: 1rem; position: absolute; @@ -198,10 +200,10 @@ button { appearance: none; - background-color: $color-white; + background-color: $color-0-0-100; border: 1px solid; border-radius: 100%; - color: $color-majorelle-blue; + color: $color-244-73-62; cursor: pointer; font-size: 2.55rem; height: 1em; @@ -226,7 +228,11 @@ input[type='submit'] { margin-top: 6rem; - @extend %submit-form; + background-color: $color-233-18-29; + color: $color-0-0-100; + float: right; + font-weight: bold; + text-transform: uppercase; } } @@ -271,10 +277,10 @@ sib-multiple-form[name='members'] { button { appearance: none; - background-color: $color-white; + background-color: $color-0-0-100; border: 1px solid; border-radius: 100%; - color: $color-majorelle-blue; + color: $color-244-73-62; cursor: pointer; font-size: 2.55rem; height: 1em; diff --git a/src/styles/header.scss b/src/styles/components/header.scss similarity index 84% rename from src/styles/header.scss rename to src/styles/components/header.scss index 8b448da..95b7238 100644 --- a/src/styles/header.scss +++ b/src/styles/components/header.scss @@ -1,8 +1,8 @@ #header { align-items: center; - background-color: $color-white; - color: $color-dark-lava; + background-color: $color-0-0-100; + color: $color-216-4-22; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.09); display: flex; flex-shrink: 0; @@ -15,15 +15,6 @@ } } -#button-toggle { - color: $color-dark-lava; - cursor: pointer; - display: none; - font-size: 3.2rem; - padding: 2.3rem; - @include icon('menu'); -} - #logo { flex: 1 1 0; } @@ -34,14 +25,14 @@ #search-input { border-radius: 10em; padding: 0.64rem 1.28rem; - border: 1px solid $color-bombay; + border: 1px solid $color-215-9-73; height: 3.8rem; width: 28rem; -webkit-appearance: textfield; & ~ #close-search-icon, & ~ #search-icon { - color: $color-bombay; + color: $color-215-9-73; display: block; font-size: 1.7rem; margin: auto; @@ -49,7 +40,7 @@ right: 3.7rem; top: 50%; transform: translateY(-50%); - -webkit-text-stroke: 1px $color-bombay; + -webkit-text-stroke: 1px $color-215-9-73; } & ~ #close-search-icon { @@ -115,8 +106,8 @@ details { details#user-controls { summary:focus { - background-color: $color-purple-dark; - color: $color-white; + background-color: $color-233-18-29; + color: $color-0-0-100; outline: none; } @@ -160,7 +151,7 @@ details#user-controls { z-index: 1; > nav { - background-color: $color-white; + background-color: $color-0-0-100; box-shadow: 0 7px 8px 0 rgba(0, 0, 0, 0.16); position: absolute; right: 0; @@ -178,14 +169,14 @@ details#user-controls { padding: 1.6rem 1.3rem; a { - color: $color-text-base; + color: $color-213-4-50; text-decoration: none; } } } button { - color: $color-text-base; + color: $color-213-4-50; padding: 1.6rem 1.3rem; text-align: left; width: 100%; @@ -194,8 +185,8 @@ details#user-controls { } &[open] { - background-color: $color-purple-dark; - color: $color-white; + background-color: $color-233-18-29; + color: $color-0-0-100; #user-controls__profile { diff --git a/src/styles/components/howto.scss b/src/styles/components/howto.scss new file mode 100644 index 0000000..391e9ba --- /dev/null +++ b/src/styles/components/howto.scss @@ -0,0 +1,17 @@ +.howto { + padding: 0.85rem; + margin-bottom: 1.7rem; + margin-left: 8.5rem; + flex-basis: auto; + border-radius: 2em; + + div[class*="icon-"] { + align-items: center; + display: flex; + flex-grow: 0; + flex-shrink: 0; + } +} + + + diff --git a/src/styles/components/icons/_index.scss b/src/styles/components/icons/_index.scss new file mode 100644 index 0000000..37259f7 --- /dev/null +++ b/src/styles/components/icons/_index.scss @@ -0,0 +1,3 @@ +@import 'custom-icons'; +@import 'icons'; +@import 'material-design-icons'; \ No newline at end of file diff --git a/src/styles/icons/custom-icons.scss b/src/styles/components/icons/custom-icons.scss similarity index 100% rename from src/styles/icons/custom-icons.scss rename to src/styles/components/icons/custom-icons.scss diff --git a/src/styles/icons/icons.scss b/src/styles/components/icons/icons.scss similarity index 100% rename from src/styles/icons/icons.scss rename to src/styles/components/icons/icons.scss diff --git a/src/styles/icons/material-design-icons.scss b/src/styles/components/icons/material-design-icons.scss similarity index 100% rename from src/styles/icons/material-design-icons.scss rename to src/styles/components/icons/material-design-icons.scss diff --git a/src/styles/menu-left.scss b/src/styles/components/menu-left.scss similarity index 56% rename from src/styles/menu-left.scss rename to src/styles/components/menu-left.scss index 223051c..5e44ee6 100644 --- a/src/styles/menu-left.scss +++ b/src/styles/components/menu-left.scss @@ -1,14 +1,10 @@ #navbar { - background-color: $color-purple-dark; - color: $color-white; + background-color: $color-233-18-29; + color: $color-0-0-100; display: block; - flex: 0 0 16em; - flex-direction: column; overflow: auto; + flex: 0 0 16em; transition: flex-basis 0.5s ease-in-out; - // max-width: 16rem; - // position: relative; - // min-height: 100%; &.open { transform: translateX(0); @@ -35,18 +31,17 @@ padding: 1.6rem; &[active] { - background-color: $color-mustard; - color: $color-purple-dark; + background-color: $color-46-100-67; + color: $color-233-18-29; .menu-icon:before { - background-color: $color-purple-dark; - color: $color-white; - // transform: perspective(1000px) translateZ(1px) scale(0.8); + background-color: $color-233-18-29; + color: $color-0-0-100; } .menu-notification > sib-display > div:first-child { - background-color: $color-purple-dark; - color: $color-mustard; + background-color: $color-233-18-29; + color: $color-46-100-67; } } @@ -64,9 +59,6 @@ height: 1.9em; line-height: 1.9em; width: 1.9em; - // transform: perspective(1000px) translateZ(1px) scale(1); - // will-change: transform; - // transition: all 0.3s ease, transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.4); } } @@ -81,27 +73,10 @@ text-transform: uppercase; width: 8em; } - - /*Fix: presque doublon avec main.scss ligne 71 qui gère le nombre de notifications sur la cloche */ - .menu-notification { - align-self: center; - display: flex; - flex-grow: 0; - flex-shrink: 0; - justify-content: center; - width: 2em; - - > sib-display { - - > div:first-of-type { - @extend %notification; - } - } - } .menu-chevron { align-items: center; - color: $color-spun-pearl; + color: $color-244-10-70; display: flex; flex-grow: 0; flex-shrink: 0; @@ -118,7 +93,7 @@ padding-left: 2.88rem; div { - color: $color-spun-pearl; + color: $color-244-10-70; cursor: pointer; padding-bottom: 1.12rem; @@ -138,24 +113,8 @@ .divider { height: 1px; - background-color: $color-gainsboro-a02; + background-color: $color-213-13-86; } } } -@include media('width div { + display: flex; + flex-grow: 1; + flex-shrink: 1; + overflow-y: auto; + + + >div#project, + >div#circle { + flex-grow: 1; + display: flex; + flex-direction: row-reverse; + align-items: stretch; + overflow-x: hidden; + + .views-container { + flex: 1 0 0; + overflow-y: auto; + } + + >div { + transition: all 0.5s; + } + } + + >div { nav { transition: all 0.5s; - > sib-router { + >sib-router { background-color: $color-222-52-90; - color: $color-purple-dark; + color: $color-233-18-29; flex: 0 0 auto; font-weight: 600; - > ul { + >ul { cursor: pointer; list-style: none; margin: 0; @@ -19,7 +42,7 @@ li { align-items: center; - border-bottom: 1px solid $color-lavender-gray; + border-bottom: 1px solid $color-229-25-79; display: flex; margin: 0; padding: 2.55rem 2.55rem; @@ -34,57 +57,57 @@ } } - > li { + >li { @include icon('arrow-right-circle'); } - - > sib-route { - + + >sib-route { + &[active] { - background-color: $color-purple-dark; - color: $color-mustard; + background-color: $color-233-18-29; + color: $color-46-100-67; display: inline-block; } &[name^='circle'], &[name^='project'] { - - > li::before { + + >li::before { font-size: 4rem; } } - - &[name$='chat'] > li { + + &[name$='chat']>li { @include ci('chat'); } - - &[name$='create'] > li { + + &[name$='create']>li { @include ci('offer'); } - - &[name$='edit'] > li { + + &[name$='edit']>li { @include ci('list'); } - - &[name$='profile'] > li { + + &[name$='profile']>li { @include ci('information'); - } + } } } } - + &.offsite-is-closed { transform: translate(15.5rem); - + & .jsOffsiteToggle::before { transform: rotate(180deg); } - & ~ #views-container { + &~.views-container { margin-left: -15.5rem; transform: translate(15.5rem); } } } } -} +} \ No newline at end of file diff --git a/src/styles/components/skills.scss b/src/styles/components/skills.scss new file mode 100644 index 0000000..48bbbae --- /dev/null +++ b/src/styles/components/skills.scss @@ -0,0 +1,18 @@ +/* TEMPLATE SKILLS*/ + +sib-multiple[name*='skills'] { + display: flex; + flex-wrap: wrap; +} + +.skill { + background-color: $color-43-100-50; + border: 1px solid $color-43-100-50; + border-radius: 2em; + color: $color-0-0-100; + display: block; + font-size: 1.4rem; + font-weight: bold; + margin: 0.4rem 1rem 0.4rem 0; + padding: 0.5rem 2rem; +} \ No newline at end of file diff --git a/src/styles/content.scss b/src/styles/content.scss deleted file mode 100644 index 4d66ca7..0000000 --- a/src/styles/content.scss +++ /dev/null @@ -1,191 +0,0 @@ -// job offers -// .new-job-offer { -// @extend %button; -// text-transform: uppercase; -// margin-left: 1em; -// margin-bottom: 1em -// //float: right; -// } - -// skills - -/*#member-profile sib-display-lookuplist { - display: flex; - - ul { - display: flex; - flex-wrap: wrap; - list-style: none; - } - - li[name*='skills'] { - padding: 0.3em 1.2em; - border: 1px solid; - border-radius: 2em; - margin: 0.25em; - background-color: $color-selective-yellow; - color: $color-white; - font-weight: bold; - } -} -*/ -// group - -#group-profile { - sib-display-div[name='name'] div { - @extend h1; - } - - sib-display-div[name='label-description'] div { - @extend h2; - } -} -// chat - -.chat-view { - padding: 1.7rem; - position: relative; - z-index: 0; - @extend %frame; - height: calc(100vh - 104px); - - > sib-chat { - @include pos(); - } -} -// member-profile && members - -/*.members-list-condensed { - img { - width: 50px; - height: 100px; - border-radius: 100%; - object-fit: cover; - object-position: top; - } - - label { - display: none; - } - - > div > sib-display > div { - display: grid; - grid-template-columns: 0.5fr 2fr; - grid-template-rows: repeat(3, auto); - grid-column-gap: 3rem; - align-items: center; - - div[name="teammate-img"] { - background: blue; - grid-row: 1 / -1; - } - - } - - - ul{ - margin-top: 0px; - margin-bottom: 0px; - list-style-type: none; - } - >[name$="user"]{ - color: $color-dark-lava; - } - >[name$="avatar"]{ - grid-column-start: first; - grid-column-end: middle; - grid-row-start: first; - grid-row-end: end; - } - } - - // ul { - // padding-left: 1em; - // } -}*/ - -hdapp-available { - display: block; - text-align: right; - - strong { - @extend %button; - } -} - -/*#member-profile { - ul { - @include list-reset(); - } -}*/ - -#member-profile { - @include media('width>tablet') { - div[name='header'] { - float: left; - width: 50%; - } - } - - div[name='name'] { - @extend h1; - - div { - display: inline-block; - margin-right: 0.7rem; - } - } - - sib-link[next='member-chat'] { - border-style: solid; - display: flex; - border-radius: 25px; - border-style: solid; - border-color: $color-majorelle-blue; - color: $color-majorelle-blue; - padding: 1.7rem; - text-decoration:none; - } - - div[name='pseudonym'] { - margin-top: -1.7rem; - margin-bottom: 1.7rem; - } - - #member-info { - &:after { - content: ''; - display: block; - clear: both; - } - } -} - -sib-form { - - form > * { - margin-top: 0.85rem; - } - - // button like - input[type='color'], - input[type='file'], - input[type='reset'], - input[type='submit'] { - @extend %button; - } - - input[type='reset'] { - display: none; - } -} - -/* -label { - @extend h2; - &:after { - content: ':'; - } -} -*/ - diff --git a/src/styles/index.scss b/src/styles/index.scss deleted file mode 100644 index 14a79e8..0000000 --- a/src/styles/index.scss +++ /dev/null @@ -1,28 +0,0 @@ -@charset "UTF-8"; - -@import '../../node_modules/include-media/dist/include-media'; -@import 'https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css'; -@import 'icons/custom-icons'; -@import 'icons/icons'; -@import 'icons/material-design-icons'; - -@import 'variables'; -@import 'mixins'; -@import 'main'; -@import 'form'; -@import 'content'; - -@import 'filters'; -@import 'right-panel'; - -@import 'group-profile'; -@import 'job-offers'; -@import 'member-profile'; -@import 'members'; -@import 'project-profile'; -@import 'member-chat'; - -// @import 'members'; -@import 'header'; -@import 'menu-left'; -@import 'menu-right'; \ No newline at end of file diff --git a/src/styles/job-offers.scss b/src/styles/job-offers.scss deleted file mode 100644 index d23731a..0000000 --- a/src/styles/job-offers.scss +++ /dev/null @@ -1,134 +0,0 @@ -#offers-list { - @extend .grid-layer; - - > sib-form { - grid-column-start: start; - grid-column-end: middle; - grid-row-start: start; - grid-row-end: middle; - } - - > div { - grid-column-start: start; - grid-column-end: end; - grid-row-start: middle; - grid-row-end: end; - - &:first-of-type { - margin-top: 5rem; - } - - > sib-display { - @extend %frame; - display: block; - font-size: 1.5rem; - margin: 1.7rem 0; - padding: 3.4rem; - /*&:nth-child(odd) { - background-color: $color-anti-flash-white; - }*/ - - [name='user-thumb'] { - align-items: center; - display: flex; - margin: -0.25em; - - > * { - margin: 0.25em; - } - - [name='author.first_name'] { - color: $color-quartz; - font-weight: 600; - } - - sib-multiple[name$='groups'] { - display: flex; - - label { - display: none; - } - - > * { - @extend %group; - } - } - - sib-display-img { - background-color: $color-white; - border-radius: 50%; - height: 4.25rem; - overflow: hidden; - position: relative; - width: 4.25rem; - - img { - height: 100%; - left: 0; - object-fit: cover; - position: absolute; - top: 0; - width: 100%; - } - } - } - - [name='creationDate'] { - display: block; - margin-bottom: 0.7rem; - margin-top: 2rem; - } - - [name='title'] { - @extend h3; - display: block; - font-weight: bold; - line-height: 19px; - } - - [name='description'] { - display: block; - line-height: 1.6; - margin-bottom: 1.6rem; - } - - [name='skills'] { - label { - display: none; - } - } - - [name='send'] { - color: $color-majorelle-blue; - font-size: 1.3rem; - float: right; - - > sib-link { - cursor: pointer; - @include icon('speech'); - - &::before { - font-size: 1.5rem; - margin-right: 1.2rem; - } - } - } - - [name='status'] { - float: right; - display: flex; - align-items: center; - margin: -0.25em; - - > * { - margin: 0.25em; - } - - strong { - @extend %status-open; - } - } - } - } -} - diff --git a/src/styles/layout/circle-profile/_index.scss b/src/styles/layout/circle-profile/_index.scss new file mode 100644 index 0000000..293bc89 --- /dev/null +++ b/src/styles/layout/circle-profile/_index.scss @@ -0,0 +1 @@ +@import 'circle-profile'; \ No newline at end of file diff --git a/src/styles/group-profile.scss b/src/styles/layout/circle-profile/circle-profile.scss similarity index 93% rename from src/styles/group-profile.scss rename to src/styles/layout/circle-profile/circle-profile.scss index ddc1f87..882ce86 100644 --- a/src/styles/group-profile.scss +++ b/src/styles/layout/circle-profile/circle-profile.scss @@ -31,7 +31,7 @@ } > div[name='teammate-img'] { - background-color: $color-bombay; + background-color: $color-215-9-73; border-radius: 50%; grid-column: 1 / span 2; grid-row: 1 / span 2; @@ -61,7 +61,7 @@ } > sib-display-value[name='teammate-profile'] { - color: $color-dark-lava; + color: $color-216-4-22; display: block; font-size: 1.2rem; grid-column: 1 / span 2; @@ -69,7 +69,7 @@ } > sib-display-value[name='teammate-contact'] { - color: $color-majorelle-blue; + color: $color-244-73-62; font-size: 1.2rem; justify-self: stretch; grid-column: 3 / span 2; diff --git a/src/styles/layout/job-offers/_index.scss b/src/styles/layout/job-offers/_index.scss new file mode 100644 index 0000000..07a4c0e --- /dev/null +++ b/src/styles/layout/job-offers/_index.scss @@ -0,0 +1 @@ +@import 'job-offers.scss'; \ No newline at end of file diff --git a/src/styles/layout/job-offers/job-offers.scss b/src/styles/layout/job-offers/job-offers.scss new file mode 100644 index 0000000..42858a7 --- /dev/null +++ b/src/styles/layout/job-offers/job-offers.scss @@ -0,0 +1,163 @@ +#job-offers { + + .plus-button { + @extend .howto; + background-color: $color-43-100-50; + color: $color-0-0-100; + font-weight: bold; + text-transform: uppercase; + cursor: pointer; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + + .icon-plus { + font-size: 20px; + justify-content: center; + margin: 0.5rem 0.5rem 0.5rem 0; + + } + } + + #offers-list { + @extend .grid-layer; + + >sib-form { + grid-column-start: start; + grid-column-end: middle; + grid-row-start: start; + grid-row-end: middle; + } + + >div { + grid-column-start: start; + grid-column-end: end; + grid-row-start: middle; + grid-row-end: end; + + &:first-of-type { + margin-top: 5rem; + } + + >sib-display { + @include window-style-modal(); + display: block; + font-size: 1.5rem; + margin: 1.7rem 0; + padding: 3.4rem; + /*&:nth-child(odd) { + background-color: $color-210-25-95; + }*/ + + [name='user-thumb'] { + align-items: center; + display: flex; + margin: -0.25em; + + >* { + margin: 0.25em; + } + + [name='author.first_name'] { + color: $color-0-0-29; + font-weight: 600; + } + + sib-multiple[name$='groups'] { + display: flex; + + label { + display: none; + } + + >* { + @extend %user-role; + } + } + + sib-display-img { + background-color: $color-0-0-100; + border-radius: 50%; + height: 4.25rem; + overflow: hidden; + position: relative; + width: 4.25rem; + + img { + height: 100%; + left: 0; + object-fit: cover; + position: absolute; + top: 0; + width: 100%; + } + } + } + + [name='creationDate'] { + display: block; + margin-bottom: 0.7rem; + margin-top: 2rem; + } + + [name='title'] { + @extend h3; + display: block; + font-weight: bold; + line-height: 19px; + } + + [name='description'] { + display: block; + line-height: 1.6; + margin-bottom: 1.6rem; + } + + [name='skills'] { + label { + display: none; + } + } + + [name='send'] { + color: $color-244-73-62; + font-size: 1.3rem; + float: right; + + >sib-link { + cursor: pointer; + @include icon('speech'); + + &::before { + font-size: 1.5rem; + margin-right: 1.2rem; + } + } + } + + [name='status'] { + float: right; + display: flex; + align-items: center; + margin: -0.25em; + + >* { + margin: 0.25em; + } + + strong { + background-color: $color-244-73-62; + border: none; + border-radius: 100em; + color: $color-0-0-100; + display: inline-block; + font-weight: normal; + padding: 0.85rem 1.7rem; + } + } + } + } + } + +} \ No newline at end of file diff --git a/src/styles/layout/member-chat/_index.scss b/src/styles/layout/member-chat/_index.scss new file mode 100644 index 0000000..5f2bf8f --- /dev/null +++ b/src/styles/layout/member-chat/_index.scss @@ -0,0 +1 @@ +@import 'member-chat.scss'; \ No newline at end of file diff --git a/src/styles/member-chat.scss b/src/styles/layout/member-chat/member-chat.scss similarity index 100% rename from src/styles/member-chat.scss rename to src/styles/layout/member-chat/member-chat.scss diff --git a/src/styles/layout/members/_index.scss b/src/styles/layout/members/_index.scss new file mode 100644 index 0000000..2450f36 --- /dev/null +++ b/src/styles/layout/members/_index.scss @@ -0,0 +1,2 @@ +@import 'members'; +@import 'member-profile'; diff --git a/src/styles/member-profile.scss b/src/styles/layout/members/member-profile.scss similarity index 84% rename from src/styles/member-profile.scss rename to src/styles/layout/members/member-profile.scss index f8c9466..183a6e9 100644 --- a/src/styles/member-profile.scss +++ b/src/styles/layout/members/member-profile.scss @@ -3,25 +3,14 @@ flex-direction: column; flex-grow: 1; - .backlink { - font-size: 1.5rem; - margin: 2rem 0 0 2rem; - @extend %backlink; - - &::before { - font-size: 2rem; - margin-right: 1rem; - } - } - #member-info { - background-color: $color-white; + background-color: $color-0-0-100; box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.14); margin: 2rem 1rem 5rem 2rem; min-height: 100vh; div[name='member-profile__bio'] { - border-bottom: 1px solid $color-link-water; + border-bottom: 1px solid $color-221-51-90; display: grid; grid-template-areas: "avatar name status" "avatar pseudo status" @@ -49,7 +38,7 @@ grid-area: name; > sib-display-value[name^='user.'] { - color: $color-dark-lava; + color: $color-216-4-22; font-weight: bold; @extend h1; } @@ -80,7 +69,7 @@ member-status[name$='available']{ align-self: flex-end; - color: $color-majorelle-blue; + color: $color-244-73-62; grid-area: status; justify-self: flex-end; @@ -97,7 +86,7 @@ @include ci('awareness'); &::before { - border-bottom: 2px solid $color-selective-yellow; + border-bottom: 2px solid $color-43-100-50; font-size: 7.3rem; padding-bottom: 1.5rem; } @@ -107,7 +96,7 @@ @include ci('armor'); &::before { - border-bottom: 2px solid $color-selective-yellow; + border-bottom: 2px solid $color-43-100-50; font-size: 7.3rem; padding-bottom: 1.5rem; } @@ -122,9 +111,9 @@ [next=member-chat] { @include icon('speech'); - border: 1px solid $color-majorelle-blue; + border: 1px solid $color-244-73-62; border-radius: 2em; - color: $color-majorelle-blue; + color: $color-244-73-62; font-size: 18px; font-weight: bold; justify-self: end; diff --git a/src/styles/members.scss b/src/styles/layout/members/members.scss similarity index 73% rename from src/styles/members.scss rename to src/styles/layout/members/members.scss index 07c3fa4..b616fa4 100644 --- a/src/styles/members.scss +++ b/src/styles/layout/members/members.scss @@ -1,3 +1,51 @@ +%member-info { + + sib-multiple[name^='user.'], + > member-info > div, + > sib-display-value { + display: flex; + flex-wrap: wrap; + margin-bottom: 0; + margin-top: 1.7rem; + + &::before { + color: $color-43-100-50; + padding: 0 0.6em 0 0; + } + } + + [name$='city'] * { + @include mdi('atom'); + } + + [name$='email'] * { + @include mdi('email-outline'); + } + + [name$='phone'] * { + @include mdi('cellphone-iphone'); + } + + [name="foaf:homepage"]:not(:empty) { + @include mdi('link-variant'); + } +} + +.how-link { + @extend .howto; + background-color: $color-0-0-100; + color: $color-216-4-22; + flex-wrap: nowrap; + .icon-idea { + background-color: $color-46-100-67; + border-radius: 100%; + justify-content: center; + margin-right: 1.2rem; + width: 1.8em; + height: 1.8em; + } +} + #members-list { @extend .grid-layer; @@ -11,15 +59,15 @@ justify-content: center; button { - color: $color-anti-flash-white; + color: $color-210-25-95; &:before { - color: $color-dark-lava; + color: $color-216-4-22; @include icon('arrow-left-circle'); } &:disabled::before { - color: $color-manatee; + color: $color-215-6-63; } } @@ -53,14 +101,14 @@ justify-content: space-between; &:first-of-type { - color: $color-quartz; + color: $color-0-0-29; font-weight: bold; justify-content: center; margin: 3.75rem 0; position: relative; &::before { - border-top: 1px solid $color-timberwolf; + border-top: 1px solid $color-0-0-85; bottom: 0; content: ''; left: 0; @@ -73,7 +121,7 @@ } span { - background-color: $color-anti-flash-white; + background-color: $color-210-25-95; padding: 0 60px; } } @@ -81,7 +129,7 @@ > sib-display { background-color: white; box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.14); - color: $color-rolling-stone; + color: $color-210-4-50; cursor: pointer; display: flex; flex-flow: column wrap; @@ -110,7 +158,7 @@ } div[name='header'] { - border-bottom: 1px solid $color-anti-flash-white; + border-bottom: 1px solid $color-210-25-95; display: flex; flex-direction: column; padding: 0.85rem 0 3.4rem; @@ -122,7 +170,7 @@ } member-picture { - background-color: $color-white; + background-color: $color-0-0-100; border-radius: 50%; height: 28vh; margin: 1.7rem auto; @@ -157,9 +205,9 @@ [next=member-chat] { align-self: center; - border: 1px solid $color-majorelle-blue; + border: 1px solid $color-244-73-62; border-radius: 3.4rem; - color: $color-majorelle-blue; + color: $color-244-73-62; font-size: 1.8rem; font-weight: bold; padding: 1rem 2.55rem 0.7rem; diff --git a/src/styles/layout/project-profile/_index.scss b/src/styles/layout/project-profile/_index.scss new file mode 100644 index 0000000..c00467b --- /dev/null +++ b/src/styles/layout/project-profile/_index.scss @@ -0,0 +1 @@ +@import 'project-profile' \ No newline at end of file diff --git a/src/styles/project-profile.scss b/src/styles/layout/project-profile/project-profile.scss similarity index 92% rename from src/styles/project-profile.scss rename to src/styles/layout/project-profile/project-profile.scss index 7e321fa..d81d61c 100644 --- a/src/styles/project-profile.scss +++ b/src/styles/layout/project-profile/project-profile.scss @@ -19,12 +19,12 @@ } [name='block-title'] { - border-bottom: 1px solid $color-link-water; + border-bottom: 1px solid $color-221-51-90; display: flex; padding-bottom: 3.4rem; > * { - color: $color-dark-lava; + color: $color-216-4-22; font-size: 2rem; font-weight: bold; padding-right: 0.85rem; @@ -40,7 +40,7 @@ } > :nth-child(5) { - color: $color-purple-dark; + color: $color-233-18-29; font-weight: normal; text-transform: none; } @@ -50,7 +50,7 @@ } > :nth-last-child(-n+2) { - color: $color-text-base; + color: $color-213-4-50; font-size: 1.6rem; font-weight: normal; text-transform: none; @@ -105,7 +105,7 @@ max-width: 100%; > * { - border: 1px solid $color-link-water; + border: 1px solid $color-221-51-90; flex: 1 1 auto; justify-content: space-between; margin: 0 -0.1rem -0.1rem 0; @@ -158,7 +158,7 @@ } &::before { - color: $color-selective-yellow; + color: $color-43-100-50; font-size: 2.2rem; padding: 0 1rem 0 0; } @@ -187,7 +187,7 @@ grid-row: 1 / span 2; div { - background-color: $color-white; + background-color: $color-0-0-100; border-radius: 50%; height: 7vh; overflow: hidden; @@ -223,7 +223,7 @@ margin-left: 1rem; sib-multiple [name='name'] { - @extend %group; + @extend %user-role; } } } diff --git a/src/styles/main.scss b/src/styles/main.scss deleted file mode 100644 index 3901cbb..0000000 --- a/src/styles/main.scss +++ /dev/null @@ -1,332 +0,0 @@ -[hidden], -.hidden, -.is-hidden { - display: none !important; -} - -:root { - font-size: 62.5%; - font-family: Open Sans, sans-serif; - --sib-notifications-theme: #{$color-46-100-50}; - - body { - /*Will help to make .content fit your height screen size. Part.1*/ - background-color: $color-anti-flash-white; - color: $color-text-base; - display: flex; - flex-direction: column; - font-size: 1.6rem; - height: 100vh; - margin: 0; - overflow: hidden; - overflow-wrap: break-word; - } -} - -img { - max-width: 100%; -} - -h1, -h2, -h3, -h4, -h5, -h6 { - color: $color-dark-lava; - font-weight: 600; - padding: 0; - /*margin: 0.67em 0;*/ - - span { - font-weight: 400; - padding-left: 0.85rem; - - &:before { - content: '// '; - } - } -} - -h1 { - font-size: 2.1rem; -} - -h2 { font-size: 2rem; -} - -h3 { - font-size: 1.6rem; -} - -h4 { - font-size: 1.2rem; -} - -h5 { - font-size: 2rem; -} - -.debug { - outline: 2px dotted red; -} - -button { - background: none; - border: none; - cursor: pointer; - margin: 0; - padding: 0; - text-decoration: none; - -webkit-appearance: none; -} - -li { - list-style: none; - margin-right: 0.4rem; - padding-left: 0; -} - -#job-offers, -#members { - @extend %content-padding; -} - -.frame { - @extend %frame; - padding: 5rem; -} - -.layer { - position: absolute; - bottom: 0; - top: 0; - right: 0; - left: 0; - display: flex; - flex-direction: column; - align-items: stretch; - overflow-x: hidden; -} - -/* -#content { - display: flex; - overflow: hidden; -} -*/ - -#mainContainer { - flex-grow: 1; - flex-shrink: 1; - overflow-y: auto; -} - -.limiter { - display: block; - max-width: 650px; -} -/* sub menu (right menu) */ -#mainContainer { - display: flex; - > div#project, - > div#circle { - flex-grow: 1; - display: flex; - flex-direction: row-reverse; - align-items: stretch; - overflow-x: hidden; - - > div { - transition: all 0.5s; - } - } -} - -sib-route, -sib-link { - cursor: pointer; -} - -sib-link.back { - color: $color-purple-dark; - display: block; - font-size: 2rem; - font-weight: bold; - text-align: right; -} - -.containerH { - display: flex; - flex-wrap: wrap; -} - -.containerV { - display: flex; - flex-direction: column; - align-items: stretch; -} - -.grow { - flex-grow: 1; - flex-shrink: 1; -} - -.fix { - flex-grow: 0; - flex-shrink: 0; -} - -.containerCenter { - justify-content: center; - align-items: center; -} - -.reverse { - flex-direction: row-reverse; -} - -#views-container { - flex: 1 0 0; - overflow-y: auto; -} - -.grid-layer{ - display: grid; - font-size: 16px; - grid-template-columns: [start]auto[middle]25%[end]; - grid-template-rows: [start]7em[middle]auto[end]; -} -.grid-layer-main { - grid-column-start: start; - grid-column-end: end; - grid-row-start: start; - grid-row-end: end; -} -.grid-layer-links { - grid-column-start: middle; - grid-column-end: end; - grid-row-start: start; - grid-row-end: middle; -} - - -/* TEMPLATE SKILLS*/ - -sib-multiple[name*='skills'] { - display: flex; - flex-wrap: wrap; -} - -.skill { - background-color: $color-selective-yellow; - border: 1px solid $color-selective-yellow; - border-radius: 2em; - color: $color-white; - display: block; - font-size: 1.4rem; - font-weight: bold; - margin: 0.4rem 1rem 0.4rem 0; - padding: 0.5rem 2rem; -} - -member-info-groups { - @extend %group; -} - - -/* NEW RESPONSIVE */ - -.right-sidebar { - overflow: hidden; - transition: width 0.3s; -} - -.right-sidebar.js-right-sidebar-expanded { - width: 130px; -} - -.right-sidebar.js-right-sidebar-collapsed { - width: 62px; -} - -/*Define the basic row-column properties that construct the foundation*/ -.row { - display: flex; - max-width: 100%; -} - -.content { - /*Will help to make .content fit your height screen size. Part 2*/ - flex-direction: row; - height: 100%; - overflow: hidden; -} - -.col { - min-width: 0; -} - -.block-grid { - display: flex; - flex-wrap: nowrap; - height: 100%; -} - -/* Dividing into columns */ -@mixin respond-to($breakpoint) { - - @if map-has-key($breakpoints, $breakpoint) { - - @media (min-width: map-get($breakpoints, $breakpoint)) { - @content; - } - } - - @else { - @warn "Sorry, no value could be retrieved from `#{$breakpoint}`." - + "Available breakpoints are: #{map-keys($breakpoints)}."; - } -} - -.small-2 { - - @include respond-to('phone'){ - display: block; - flex: 0 1 calc(100% / 12 * 2); - } -} - -.small-shrink { - - @include respond-to('phone') { - display: block; - flex: 0 1 auto; - } -} - -.medium-auto { - - @include respond-to('tablet') { - display: block; - flex: 1; - overflow: auto; - } -} - -.small-12 { - - @include respond-to('phone') { - display: block; - flex: 0 1 calc(100% / 12 * 12); - } -} - -.small-auto { - - @include respond-to ('phone') { - display: block; - flex: 1; - overflow: auto; - } -} diff --git a/src/styles/mixins.scss b/src/styles/mixins.scss deleted file mode 100644 index d8d0b6e..0000000 --- a/src/styles/mixins.scss +++ /dev/null @@ -1,160 +0,0 @@ -@charset "UTF-8"; -@mixin debug { - $hsla: hsla(random(360), 100%, 50%, 0.3); - background-color: $hsla; -} -@mixin log($v) { - font-family: '__log__:#{$v}'; -} - -@mixin offset($corner: 1, $x: 0, $y: 0) { - // corner: - // 1-----2 - // | | - // | | - // 3-----4 - position: absolute; - @if ($corner == 1) { - top: $y; - left: $x; - } - @if ($corner == 2) { - top: $y; - right: $x; - } - @if ($corner == 3) { - bottom: $y; - left: $x; - } - @if ($corner == 4) { - bottom: $y; - right: $x; - } -} - -@mixin position($top: 0, $right: null, $bottom: null, $left: null) { - // --1-- - // | | - // 4 2 - // | | - // --3-- - @if ($right == null) { - $right: $top; - } - - @if ($bottom == null) { - $bottom: $top; - } - - @if ($left == null) { - $left: $right; - } - - position: absolute; - top: $top; - left: $left; - right: $right; - bottom: $bottom; -} - -@mixin pos($pos: 5, $position: absolute) { - // ╔═──┐ ╔═══╗ ┌──═╗ - // │ 1 │ │ 2 │ │ 3 │ - // └───┘ └───┘ └───┘ - // ╔═──┐ ╔═══╗ ┌──═╗ - // ║ 4 │ ║ 5 ║ │ 6 ║ - // ╚═──┘ ╚═══╝ └──═╝ - // ┌───┐ ┌───┐ ┌───┐ - // │ 7 │ │ 8 │ │ 9 │ - // ╚═──┘ ╚═══╝ └──═╝ - - $mod: ($pos - 1) % 3; - - position: $position; - @if ($pos <= 6) { - top: 0; - } - @if ($mod <= 1) { - left: 0; - } - @if ($mod >= 1) { - right: 0; - } - @if ($pos >= 4) { - bottom: 0; - } -} - -// @mixin border-shadow($border: top, $size: 4px, $opacity: 0.05, $color: black) { -// &:after { -// content: ''; -// position: absolute; -// top: if(($border == bottom), auto, 0); -// left: if(($border == right), auto, 0); -// right: if(($border == left), auto, 0); -// bottom: if(($border == top), auto, 0); -// background-image: linear-gradient(to #{$border}, $color, transparent); -// #{$border}: -$size; -// opacity: $opacity; -// @if ($border == top or $border == bottom) { -// height: $size; -// } @else { -// width: $size; -// } -// } -// } - -@mixin align($horizontal: center, $vertical: middle) { - text-align: $horizontal; - white-space: nowrap; - &:after, - > * { - display: inline-block; - vertical-align: $vertical; - } - &:after { - content: ''; - height: 100%; - width: 0; - visibility: hidden; - } - > * { - //text-align:left; - white-space: normal; - } -} - -@mixin list-reset($deep: 0) { - padding: 0; - margin: 0; - display: block; - list-style: none; - @if ($deep == 0) { - > li { - padding: 0; - margin: 0; - display: block; - list-style: none; - } - } @else { - ul, - ol, - li { - padding: 0; - margin: 0; - display: block; - list-style: none; - } - } -} - -@mixin styleTemplateFieldset($name) { - template-legend-#{$name} { - border-bottom: 1px solid $color-link-water; - color: $color-purple-dark; - font-size: 1.8rem; - font-weight: 600; - padding-bottom: 1rem; - } -} - diff --git a/src/styles/right-panel.scss b/src/styles/right-panel.scss deleted file mode 100644 index 8f8ff5b..0000000 --- a/src/styles/right-panel.scss +++ /dev/null @@ -1,50 +0,0 @@ -.right-link { - padding: 0.85rem; - margin-bottom: 1.7rem; - margin-left: 8.5rem; - flex-basis: auto; - border-radius: 2em; - - div[class*="icon-"] { - align-items: center; - display: flex; - flex-grow: 0; - flex-shrink: 0; - } -} - -.how-link { - @extend .right-link; - background-color: $color-white; - color: $color-dark-lava; - flex-wrap: nowrap; - .icon-idea { - background-color: $color-mustard; - border-radius: 100%; - justify-content: center; - margin-right: 1.2rem; - //flex-direction: column; - width: 1.8em; - height: 1.8em; - //margin-right: 1em; - } -} - -.action-link { - @extend .right-link; - background-color: $color-selective-yellow; - color: $color-white; - font-weight: bold; - text-transform: uppercase; - cursor: pointer; - - .icon-plus { - font-size: 20px; - justify-content: center; - margin: 0.5rem 0.5rem 0.5rem 0; - - &:before { - //font-size: 1.3em; - } - } -} \ No newline at end of file diff --git a/src/styles/variables.scss b/src/styles/variables.scss deleted file mode 100644 index b9d7b22..0000000 --- a/src/styles/variables.scss +++ /dev/null @@ -1,150 +0,0 @@ -//Color Variables -$color-quartz: hsl(0, 0%, 29%); -$color-timberwolf: hsl(0, 0%, 85%); -$color-white: hsl(0, 0%,100%); - -$color-selective-yellow: hsl(43, 100%, 50%); -$color-mikado-yellow: hsl(45, 95%, 54%); -$color-mustard: hsl(46, 100%, 67%); -$color-46-100-50: hsl(46, 100%, 50%); - -$color-rolling-stone: hsl(210, 4%, 50%); -$color-taupe-gray: hsl(210, 5%, 56%); -$color-platinum: hsl(210, 17%, 91%); -$color-anti-flash-white: hsl(210, 25%, 95%); -$color-text-base: hsl(213, 4%, 50%); -$color-gainsboro: hsl(213, 13%, 86%); -$color-gainsboro-a02: hsla(213, 13%, 86%, 0.2); -$color-213-20-91: hsl(213, 20%, 91%); -$color-bombay: hsl(215, 9%, 73%); -$color-manatee: hsl(215, 6%, 63%); -$color-dark-lava: hsl(216, 4%, 22%); -$color-link-water: hsl(221, 51%, 90%); -$color-222-52-90: hsl(222, 52%, 90%); -$color-glitter: hsl(222, 57%, 95%); -$color-lavender-gray: hsl(229, 25%, 79%); -$color-purple-dark: hsl(233, 18%, 29%); -$color-spun-pearl: hsl(244, 10%, 70%); -$color-majorelle-blue: hsl(244, 73%, 62%); - -%backlink { - @include icon('arrow-left-circle'); - color: #3d4057; - text-decoration: underline; - - &::before { - text-decoration: none; - } -} - -%button { - display: inline-block; - padding: 0.85rem 2.55rem; - border: none; - border-radius: 100em; - font-weight: normal; -} - -%content-padding { - flex: 1; - padding: 4.4rem; -} - -%frame { - @extend %shadow; - background-color: $color-white; -} - -%group { - border: 1px solid $color-mikado-yellow; - border-radius: 3px; - color: $color-rolling-stone; - font-size: 1.4rem; - font-weight: 400; - margin-right: 0.4rem; - padding: calc(1.6rem - 0.8em) 0.7em; -} - -%member-info { - - sib-multiple[name^='user.'], - > member-info > div, - > sib-display-value { - display: flex; - flex-wrap: wrap; - margin-bottom: 0; - margin-top: 1.7rem; - - &::before { - color: $color-selective-yellow; - padding: 0 0.6em 0 0; - } - } - - [name$='city'] * { - @include mdi('atom'); - } - - [name$='email'] * { - @include mdi('email-outline'); - } - - [name$='phone'] * { - @include mdi('cellphone-iphone'); - } - - [name="foaf:homepage"]:not(:empty) { - @include mdi('link-variant'); - } -} - -%label { - color: $color-spun-pearl; - font-weight: 600; - margin: 2em 0 0.5em; - text-transform: uppercase; - - > div { - padding-bottom: 1rem; - } -} - -%notification { - align-items: center; - background-color: $color-mustard; - border-radius: 100%; - color: $color-dark-lava; - display: flex !important; - font-size: 1.3rem; - height: 1.7em; - justify-content: center; - width: 1.7em; -} - -%shadow { - box-shadow: 0 0 8px 0 hsla(212, 7%, 55%, 0.19); -} - -%status-open { - background-color: $color-majorelle-blue; - border: none; - border-radius: 100em; - color: $color-white; - display: inline-block; - font-weight: normal; - padding: 0.85rem 1.7rem; -} - -%submit-form { - background-color: $color-purple-dark; - color: $color-white; - float: right; - font-weight: bold; - text-transform: uppercase; -} - -$breakpoints: ( - phone: 480px, - tablet: 768px, - desktop: 1024px -) !default; From 68a187a06b30479b4e8332aff7e6d2332c9095fe Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Tue, 14 May 2019 14:03:11 +0200 Subject: [PATCH 11/13] ui: remove browserify --- Makefile | 29 +- copy_lib.js | 12 +- lib_list.txt | 4 - package-lock.json | 2231 ++++++------------------ package.json | 23 +- server.js | 25 +- src/dependencies.pug | 4 +- src/styles/layout/members/members.scss | 4 + 8 files changed, 577 insertions(+), 1755 deletions(-) diff --git a/Makefile b/Makefile index 240e5f3..d87ebf7 100644 --- a/Makefile +++ b/Makefile @@ -6,11 +6,6 @@ SCRIPT_DEST := $(SCRIPT_SRC:src/%=$(DIST_DIR)/%) default: build -clean: - git clean -fXd -e !src/config.json - -install: node_modules copy_lib copy_samples - build: $(DIST_DIR)/index.html $(DIST_DIR)/styles/index.css $(SCRIPT_DEST) watch: @@ -21,23 +16,6 @@ watch: sleep 0.5; \ done -serve: - node server - -# npm -node_modules: - npm install - -# vendor lib -copy_lib: - @node copy_lib.js - -# samples -copy_samples: src/config.json - -src/config.json: - @cp -n src/config.sample.json src/config.json - # pug $(DIST_DIR)/index.html: src/index.pug src/config.json $(wildcard src/*.pug src/*/*.pug) @echo pug: $< ➜ $@ @@ -76,11 +54,6 @@ buildstaging: build buildprod: build $(MAKE) $(DIST_DIR)/index.prod.html -deploy: pull install build - -pull: - git pull - sync: buildstaging rsync -rv www/* staging-app@ssh-staging-app.happy-dev.fr:~/staging-app.happy-dev.fr/ --exclude=www/index.html --exclude=www/index.prod.html --exclude=www/index.staging.html rsync --no-R --no-implied-dirs www/index.staging.html staging-app@ssh-staging-app.happy-dev.fr:~/staging-app.happy-dev.fr/index.html @@ -91,4 +64,4 @@ syncprod: buildprod rsync --no-R --no-implied-dirs www/index.prod.html alpha@ssh-alpha.happy-dev.fr:~/www/index.html rsync -v www/.htaccess alpha@ssh-alpha.happy-dev.fr:~/www/ -.PHONY: default install copy_lib copy_samples build watch serve clean sync syncprod buildstaging buildprod pull deploy \ No newline at end of file +.PHONY: default build watch sync syncprod buildstaging buildprod \ No newline at end of file diff --git a/copy_lib.js b/copy_lib.js index 4cc6932..07b6dad 100644 --- a/copy_lib.js +++ b/copy_lib.js @@ -1,16 +1,16 @@ const { basename, join, resolve } = require('path'); -const { readFileSync, lstatSync } = require('fs'); +const fs = require('fs'); const { exec } = require('child_process'); const distDir = 'www/lib'; -const filelist = readFileSync('lib_list.txt', 'utf-8').split(/\r?\n/); +const filelist = fs.readFileSync('lib_list.txt', 'utf-8').split(/\r?\n/); exec(`mkdir -p ${distDir}`, () => { filelist.forEach(path => { path = resolve(path); const filename = basename(path); - const dest = lstatSync(path).isDirectory() + const dest = fs.lstatSync(path).isDirectory() ? distDir : join(distDir, filename); const cmd = `rsync -ru ${path} ${dest}`; @@ -18,3 +18,9 @@ exec(`mkdir -p ${distDir}`, () => { exec(cmd); }); }); + +if (!fs.existsSync('src/config.json')) { + const cmd = `rsync -ru src/config.sample.json src/config.json`; + console.log(cmd); + exec(cmd); +} \ No newline at end of file diff --git a/lib_list.txt b/lib_list.txt index c3495ec..254e4ce 100644 --- a/lib_list.txt +++ b/lib_list.txt @@ -1,5 +1 @@ node_modules/normalize.css/normalize.css -node_modules/@webcomponents/webcomponentsjs -node_modules/@webcomponents/html-imports/src/html-imports.js -node_modules/oidc-client/dist/oidc-client.min.js -node_modules/oidc-client/dist/oidc-client.js \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index ff61feb..21ee807 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,21 +1,21 @@ { - "name": "hd-app", + "name": "sib-app", "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { "@babel/cli": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.1.0.tgz", - "integrity": "sha512-+OdtGZcJNH92CnDqwaPxh7P7gddFyhoiHV3GBzgKpYbxIJlQ4WDEiC8m+AMcueYzlI+bXqrYlIU/Pp17NaC0hg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.4.4.tgz", + "integrity": "sha512-XGr5YjQSjgTa6OzQZY57FAJsdeVSAKR/u/KA5exWIz66IKtv/zXtHy+fIZcMry/EgYegwuHE7vzGnrFhjdIAsQ==", "dev": true, "requires": { - "chokidar": "^2.0.3", + "chokidar": "^2.0.4", "commander": "^2.8.1", "convert-source-map": "^1.1.0", "fs-readdir-recursive": "^1.1.0", "glob": "^7.0.0", - "lodash": "^4.17.10", + "lodash": "^4.17.11", "mkdirp": "^0.5.1", "output-file-sync": "^2.0.0", "slash": "^2.0.0", @@ -32,31 +32,31 @@ } }, "@babel/core": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.1.0.tgz", - "integrity": "sha512-9EWmD0cQAbcXSc+31RIoYgEHx3KQ2CCSMDBhnXrShWvo45TMw+3/55KVxlhkG53kw9tl87DqINgHDgFVhZJV/Q==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.4.4.tgz", + "integrity": "sha512-lQgGX3FPRgbz2SKmhMtYgJvVzGZrmjaF4apZ2bLwofAKiSjxU0drPh4S/VasyYXwaTs+A1gvQ45BN8SQJzHsQQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.0.0", - "@babel/helpers": "^7.1.0", - "@babel/parser": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0", + "@babel/generator": "^7.4.4", + "@babel/helpers": "^7.4.4", + "@babel/parser": "^7.4.4", + "@babel/template": "^7.4.4", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4", "convert-source-map": "^1.1.0", - "debug": "^3.1.0", - "json5": "^0.5.0", - "lodash": "^4.17.10", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.11", "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" }, "dependencies": { "debug": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", - "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" @@ -71,14 +71,14 @@ } }, "@babel/generator": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0.tgz", - "integrity": "sha512-/BM2vupkpbZXq22l1ALO7MqXJZH2k8bKVv8Y+pABFnzWdztDB/ZLveP5At21vLz5c2YtSE6p7j2FZEsqafMz5Q==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", + "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", "dev": true, "requires": { - "@babel/types": "^7.0.0", + "@babel/types": "^7.4.4", "jsesc": "^2.5.1", - "lodash": "^4.17.10", + "lodash": "^4.17.11", "source-map": "^0.5.0", "trim-right": "^1.0.1" } @@ -104,23 +104,23 @@ } }, "@babel/helper-split-export-declaration": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", - "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", + "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.4.4" } }, "@babel/helpers": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.1.0.tgz", - "integrity": "sha512-V1jXUTNdTpBn37wqqN73U+eBpzlLHmxA4aDaghJBggmzly/FpIJMHXse9lgdzQQT4gs5jZ5NmYxOL8G3ROc29g==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", + "integrity": "sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A==", "dev": true, "requires": { - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/template": "^7.4.4", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/highlight": { @@ -135,43 +135,43 @@ } }, "@babel/parser": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.0.tgz", - "integrity": "sha512-SmjnXCuPAlai75AFtzv+KCBcJ3sDDWbIn+WytKw1k+wAtEy6phqI2RqKh/zAnw53i1NR8su3Ep/UoqaKcimuLg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.4.tgz", + "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==", "dev": true }, "@babel/template": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.0.tgz", - "integrity": "sha512-yZ948B/pJrwWGY6VxG6XRFsVTee3IQ7bihq9zFpM00Vydu6z5Xwg0C3J644kxI9WOTzd+62xcIsQ+AT1MGhqhA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", + "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/parser": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/traverse": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.0.tgz", - "integrity": "sha512-bwgln0FsMoxm3pLOgrrnGaXk18sSM9JNf1/nHC/FksmNGFbYnPWY4GYCfLxyP1KRmfsxqkRpfoa6xr6VuuSxdw==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.4.tgz", + "integrity": "sha512-Gw6qqkw/e6AGzlyj9KnkabJX7VcubqPtkUQVAwkc0wUMldr3A/hezNB3Rc5eIvId95iSGkGIOe5hh1kMKf951A==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.0.0", + "@babel/generator": "^7.4.4", "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "debug": "^3.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/parser": "^7.4.4", + "@babel/types": "^7.4.4", + "debug": "^4.1.0", "globals": "^11.1.0", - "lodash": "^4.17.10" + "lodash": "^4.17.11" }, "dependencies": { "debug": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", - "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" @@ -186,13 +186,13 @@ } }, "@babel/types": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0.tgz", - "integrity": "sha512-5tPDap4bGKTLPtci2SUl/B7Gv8RnuJFuQoWx26RJobS0fFrz4reUA3JnwIM+HVHEmWE0C1mzKhDtTp8NsWY02Q==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", + "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", "dev": true, "requires": { "esutils": "^2.0.2", - "lodash": "^4.17.10", + "lodash": "^4.17.11", "to-fast-properties": "^2.0.0" } }, @@ -211,16 +211,6 @@ "@types/babel-types": "*" } }, - "@webcomponents/html-imports": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@webcomponents/html-imports/-/html-imports-1.2.0.tgz", - "integrity": "sha512-EIy8RqSfsoJ5Tk2wsfaSX4IKhXg8oYCq/xVEz8LEELXhv5tup/iZ/SInoz8SLtZGFP+vjUh2oRsgkUMhbrr0GQ==" - }, - "@webcomponents/webcomponentsjs": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@webcomponents/webcomponentsjs/-/webcomponentsjs-1.2.7.tgz", - "integrity": "sha512-011DyXjpQoZ7f6oMCpYTYgrzsWJ7+0fEbt6Y8KcfZZa3ZdJ/ttoMgeH75SqHDe7aNdolfMhCvrSNNgh9wcsgpA==" - }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -228,13 +218,30 @@ "dev": true }, "accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "dev": true, "requires": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "dependencies": { + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + } } }, "acorn": { @@ -260,22 +267,16 @@ } } }, - "after": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", - "dev": true - }, "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", + "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "align-text": { @@ -330,6 +331,18 @@ "requires": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "optional": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, "aproba": { @@ -352,19 +365,22 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true + "dev": true, + "optional": true }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true + "dev": true, + "optional": true }, "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true + "dev": true, + "optional": true }, "array-find-index": { "version": "1.0.2", @@ -382,13 +398,8 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "arraybuffer.slice": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", - "dev": true + "dev": true, + "optional": true }, "asap": { "version": "2.0.6", @@ -415,25 +426,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true + "dev": true, + "optional": true }, "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true - }, - "async-each-series": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz", - "integrity": "sha1-dhfBkXQB/Yykooqtzj266Yr+tDI=", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true, + "optional": true }, "async-foreach": { "version": "0.1.3", @@ -441,12 +442,6 @@ "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", "dev": true }, - "async-limiter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", - "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", - "dev": true - }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -457,7 +452,8 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true + "dev": true, + "optional": true }, "aws-sign2": { "version": "0.7.0", @@ -471,39 +467,11 @@ "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", "dev": true }, - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "dev": true, - "requires": { - "follow-redirects": "^1.2.5", - "is-buffer": "^1.1.5" - } - }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", - "optional": true, - "requires": { - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "regenerator-runtime": "^0.10.5" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", - "optional": true - } - } - }, "babel-runtime": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, "requires": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -535,12 +503,6 @@ "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", "dev": true }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -552,6 +514,7 @@ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, + "optional": true, "requires": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", @@ -567,6 +530,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^1.0.0" } @@ -576,6 +540,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -585,6 +550,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -594,6 +560,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "optional": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -602,54 +569,21 @@ } } }, - "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", - "dev": true - }, - "base64id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", - "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true - }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "dev": true, - "optional": true, "requires": { "tweetnacl": "^0.14.3" } }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", - "dev": true, - "requires": { - "callsite": "1.0.0" - } - }, "binary-extensions": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", - "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==", - "dev": true - }, - "blob": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=", - "dev": true + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true, + "optional": true }, "block-stream": { "version": "0.0.9", @@ -661,73 +595,21 @@ } }, "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", "dev": true, "requires": { "bytes": "3.0.0", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.1", - "http-errors": "~1.6.2", - "iconv-lite": "0.4.19", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", "on-finished": "~2.3.0", - "qs": "6.5.1", - "raw-body": "2.3.2", - "type-is": "~1.6.15" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", - "dev": true - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - }, - "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "unpipe": "1.0.0" - }, - "dependencies": { - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", - "dev": true - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "dev": true, - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": ">= 1.3.1 < 2" - } - } - } - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", - "dev": true - } + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" } }, "brace-expansion": { @@ -745,6 +627,7 @@ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, + "optional": true, "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -763,200 +646,13 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } } } }, - "browser-sync": { - "version": "2.24.7", - "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.24.7.tgz", - "integrity": "sha512-NqXek0cPNEayQm77VGnD+qrwcVBTKMIQ9bdP6IWDRUTU1Bk7tZeq5QR3OG5Rr36Rao1t+Vx1QnfolHvvr5qsTA==", - "dev": true, - "requires": { - "browser-sync-ui": "v1.0.1", - "bs-recipes": "1.3.4", - "chokidar": "1.7.0", - "connect": "3.6.6", - "connect-history-api-fallback": "^1.5.0", - "dev-ip": "^1.0.1", - "easy-extender": "^2.3.4", - "eazy-logger": "3.0.2", - "etag": "^1.8.1", - "fresh": "^0.5.2", - "fs-extra": "3.0.1", - "http-proxy": "1.15.2", - "immutable": "3.8.2", - "localtunnel": "1.9.0", - "micromatch": "2.3.11", - "opn": "5.3.0", - "portscanner": "2.1.1", - "qs": "6.2.3", - "raw-body": "^2.3.2", - "resp-modifier": "6.0.2", - "rx": "4.1.0", - "serve-index": "1.9.1", - "serve-static": "1.13.2", - "server-destroy": "1.0.1", - "socket.io": "2.1.1", - "ua-parser-js": "0.7.17", - "yargs": "6.4.0" - }, - "dependencies": { - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - } - }, - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - } - } - }, - "browser-sync-ui": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-1.0.1.tgz", - "integrity": "sha512-RIxmwVVcUFhRd1zxp7m2FfLnXHf59x4Gtj8HFwTA//3VgYI3AKkaQAuDL8KDJnE59XqCshxZa13JYuIWtZlKQg==", - "dev": true, - "requires": { - "async-each-series": "0.1.1", - "connect-history-api-fallback": "^1.1.0", - "immutable": "^3.7.6", - "server-destroy": "1.0.1", - "socket.io-client": "2.0.4", - "stream-throttle": "^0.1.3" - } - }, - "bs-recipes": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", - "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -968,6 +664,7 @@ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, + "optional": true, "requires": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", @@ -980,16 +677,10 @@ "unset-value": "^1.0.0" } }, - "callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true - }, "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", "dev": true }, "camelcase-keys": { @@ -1000,14 +691,6 @@ "requires": { "camelcase": "^2.0.0", "map-obj": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - } } }, "caseless": { @@ -1027,9 +710,9 @@ } }, "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -1047,25 +730,24 @@ } }, "chokidar": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", - "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.5.tgz", + "integrity": "sha512-i0TprVWp+Kj4WRPtInjexJ8Q+BqTE909VpH8xVhXrJkoc5QC8VO9TryGOqTr+2hljzc1sC62t22h5tZePodM/A==", "dev": true, "optional": true, "requires": { "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "fsevents": "^1.2.2", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", "glob-parent": "^3.1.0", - "inherits": "^2.0.1", + "inherits": "^2.0.3", "is-binary-path": "^1.0.0", "is-glob": "^4.0.0", - "lodash.debounce": "^4.0.8", - "normalize-path": "^2.1.1", + "normalize-path": "^3.0.0", "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.5" + "readdirp": "^2.2.1", + "upath": "^1.1.1" } }, "class-utils": { @@ -1073,6 +755,7 @@ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, + "optional": true, "requires": { "arr-union": "^3.1.0", "define-property": "^0.2.5", @@ -1085,6 +768,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^0.1.0" } @@ -1119,12 +803,6 @@ "wrap-ansi": "^2.0.0" } }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -1136,6 +814,7 @@ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, + "optional": true, "requires": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" @@ -1157,9 +836,9 @@ "dev": true }, "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, "requires": { "delayed-stream": "~1.0.0" @@ -1171,23 +850,12 @@ "integrity": "sha512-6CYPa+JP2ftfRU2qkDK+UTVeQYosOg/2GbcjIcKPHfinyOLPVGXu/ovN86RP49Re5ndJK1N0kuiidFFuepc4ZQ==", "dev": true }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", - "dev": true - }, "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", - "dev": true + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", @@ -1195,24 +863,6 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "connect": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", - "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.0", - "parseurl": "~1.3.2", - "utils-merge": "1.0.1" - } - }, - "connect-history-api-fallback": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", - "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", - "dev": true - }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -1268,12 +918,14 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "dev": true, + "optional": true }, "core-js": { "version": "2.5.7", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", - "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==" + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -1328,13 +980,15 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true + "dev": true, + "optional": true }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, + "optional": true, "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -1345,6 +999,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -1354,6 +1009,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -1363,6 +1019,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "optional": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -1395,42 +1052,17 @@ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", "dev": true }, - "dev-ip": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", - "integrity": "sha1-p2o+0YVb56ASu4rBbLgPPADcKPA=", - "dev": true - }, "doctypes": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", "dev": true }, - "easy-extender": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", - "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", - "dev": true, - "requires": { - "lodash": "^4.17.10" - } - }, - "eazy-logger": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.0.2.tgz", - "integrity": "sha1-oyWqXlPROiIliJsqxBE7K5Y29Pw=", - "dev": true, - "requires": { - "tfunk": "^3.0.1" - } - }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", "dev": true, - "optional": true, "requires": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" @@ -1448,74 +1080,6 @@ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", "dev": true }, - "engine.io": { - "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", - "base64id": "1.0.0", - "cookie": "0.3.1", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.0", - "ws": "~3.3.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, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "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==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - }, - "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" - } - } - } - }, - "engine.io-parser": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz", - "integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.4", - "has-binary2": "~1.0.2" - } - }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -1549,17 +1113,12 @@ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", "dev": true }, - "eventemitter3": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", - "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=", - "dev": true - }, "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, + "optional": true, "requires": { "debug": "^2.3.3", "define-property": "^0.2.5", @@ -1575,6 +1134,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^0.1.0" } @@ -1584,72 +1144,22 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } } } }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "express": { - "version": "4.16.3", - "resolved": "http://registry.npmjs.org/express/-/express-4.16.3.tgz", - "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", + "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", "dev": true, "requires": { "accepts": "~1.3.5", "array-flatten": "1.1.1", - "body-parser": "1.18.2", + "body-parser": "1.18.3", "content-disposition": "0.5.2", "content-type": "~1.0.4", "cookie": "0.3.1", @@ -1666,10 +1176,10 @@ "on-finished": "~2.3.0", "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.3", - "qs": "6.5.1", + "proxy-addr": "~2.0.4", + "qs": "6.5.2", "range-parser": "~1.2.0", - "safe-buffer": "5.1.1", + "safe-buffer": "5.1.2", "send": "0.16.2", "serve-static": "1.13.2", "setprototypeof": "1.1.0", @@ -1677,41 +1187,6 @@ "type-is": "~1.6.16", "utils-merge": "1.0.1", "vary": "~1.1.2" - }, - "dependencies": { - "finalhandler": { - "version": "1.1.1", - "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", - "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.4.0", - "unpipe": "~1.0.0" - } - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true - }, - "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", - "dev": true - } } }, "extend": { @@ -1725,6 +1200,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, + "optional": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -1735,6 +1211,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "optional": true, "requires": { "is-plain-object": "^2.0.4" } @@ -1746,6 +1223,7 @@ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, + "optional": true, "requires": { "array-unique": "^0.3.2", "define-property": "^1.0.0", @@ -1762,6 +1240,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^1.0.0" } @@ -1771,6 +1250,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -1780,6 +1260,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -1789,6 +1270,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -1798,6 +1280,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "optional": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -1813,9 +1296,9 @@ "dev": true }, "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", "dev": true }, "fast-json-stable-stringify": { @@ -1824,17 +1307,12 @@ "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", "dev": true }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, + "optional": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -1847,6 +1325,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -1854,17 +1333,17 @@ } }, "finalhandler": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", - "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "~1.0.1", + "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "on-finished": "~2.3.0", "parseurl": "~1.3.2", - "statuses": "~1.3.1", + "statuses": "~1.4.0", "unpipe": "~1.0.0" } }, @@ -1878,40 +1357,12 @@ "pinkie-promise": "^2.0.0" } }, - "follow-redirects": { - "version": "1.5.8", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.8.tgz", - "integrity": "sha512-sy1mXPmv7kLAMKW/8XofG7o9T+6gAjzdZK4AJF6ryqQYUa/hnzgiypoeUecZ53x7XiqKNEpNqLtS97MshW2nxg==", - "dev": true, - "requires": { - "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" - } - } - } - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", "dev": true, - "requires": { - "for-in": "^1.0.1" - } + "optional": true }, "forever-agent": { "version": "0.6.1", @@ -1920,25 +1371,14 @@ "dev": true }, "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", "dev": true, "requires": { "asynckit": "^0.4.0", - "combined-stream": "1.0.6", + "combined-stream": "^1.0.6", "mime-types": "^2.1.12" - }, - "dependencies": { - "combined-stream": { - "version": "1.0.6", - "resolved": "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - } } }, "forwarded": { @@ -1952,6 +1392,7 @@ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, + "optional": true, "requires": { "map-cache": "^0.2.2" } @@ -1962,17 +1403,6 @@ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", "dev": true }, - "fs-extra": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", - "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^3.0.0", - "universalify": "^0.1.0" - } - }, "fs-readdir-recursive": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", @@ -1986,14 +1416,14 @@ "dev": true }, "fsevents": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", - "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", "dev": true, "optional": true, "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" }, "dependencies": { "abbrev": { @@ -2015,7 +1445,7 @@ "optional": true }, "are-we-there-yet": { - "version": "1.1.4", + "version": "1.1.5", "bundled": true, "dev": true, "optional": true, @@ -2041,7 +1471,7 @@ } }, "chownr": { - "version": "1.0.1", + "version": "1.1.1", "bundled": true, "dev": true, "optional": true @@ -2071,16 +1501,16 @@ "optional": true }, "debug": { - "version": "2.6.9", + "version": "4.1.1", "bundled": true, "dev": true, "optional": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "deep-extend": { - "version": "0.5.1", + "version": "0.6.0", "bundled": true, "dev": true, "optional": true @@ -2129,7 +1559,7 @@ } }, "glob": { - "version": "7.1.2", + "version": "7.1.3", "bundled": true, "dev": true, "optional": true, @@ -2149,12 +1579,12 @@ "optional": true }, "iconv-lite": { - "version": "0.4.21", + "version": "0.4.24", "bundled": true, "dev": true, "optional": true, "requires": { - "safer-buffer": "^2.1.0" + "safer-buffer": ">= 2.1.2 < 3" } }, "ignore-walk": { @@ -2219,17 +1649,17 @@ "optional": true }, "minipass": { - "version": "2.2.4", + "version": "2.3.5", "bundled": true, "dev": true, "optional": true, "requires": { - "safe-buffer": "^5.1.1", + "safe-buffer": "^5.1.2", "yallist": "^3.0.0" } }, "minizlib": { - "version": "1.1.0", + "version": "1.2.1", "bundled": true, "dev": true, "optional": true, @@ -2247,35 +1677,35 @@ } }, "ms": { - "version": "2.0.0", + "version": "2.1.1", "bundled": true, "dev": true, "optional": true }, "needle": { - "version": "2.2.0", + "version": "2.3.0", "bundled": true, "dev": true, "optional": true, "requires": { - "debug": "^2.1.2", + "debug": "^4.1.0", "iconv-lite": "^0.4.4", "sax": "^1.2.4" } }, "node-pre-gyp": { - "version": "0.10.0", + "version": "0.12.0", "bundled": true, "dev": true, "optional": true, "requires": { "detect-libc": "^1.0.2", "mkdirp": "^0.5.1", - "needle": "^2.2.0", + "needle": "^2.2.1", "nopt": "^4.0.1", "npm-packlist": "^1.1.6", "npmlog": "^4.0.2", - "rc": "^1.1.7", + "rc": "^1.2.7", "rimraf": "^2.6.1", "semver": "^5.3.0", "tar": "^4" @@ -2292,13 +1722,13 @@ } }, "npm-bundled": { - "version": "1.0.3", + "version": "1.0.6", "bundled": true, "dev": true, "optional": true }, "npm-packlist": { - "version": "1.1.10", + "version": "1.4.1", "bundled": true, "dev": true, "optional": true, @@ -2375,12 +1805,12 @@ "optional": true }, "rc": { - "version": "1.2.7", + "version": "1.2.8", "bundled": true, "dev": true, "optional": true, "requires": { - "deep-extend": "^0.5.1", + "deep-extend": "^0.6.0", "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" @@ -2410,16 +1840,16 @@ } }, "rimraf": { - "version": "2.6.2", + "version": "2.6.3", "bundled": true, "dev": true, "optional": true, "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" } }, "safe-buffer": { - "version": "5.1.1", + "version": "5.1.2", "bundled": true, "dev": true, "optional": true @@ -2437,7 +1867,7 @@ "optional": true }, "semver": { - "version": "5.5.0", + "version": "5.7.0", "bundled": true, "dev": true, "optional": true @@ -2490,17 +1920,17 @@ "optional": true }, "tar": { - "version": "4.4.1", + "version": "4.4.8", "bundled": true, "dev": true, "optional": true, "requires": { - "chownr": "^1.0.1", + "chownr": "^1.1.1", "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", + "safe-buffer": "^5.1.2", "yallist": "^3.0.2" } }, @@ -2511,12 +1941,12 @@ "optional": true }, "wide-align": { - "version": "1.1.2", + "version": "1.1.3", "bundled": true, "dev": true, "optional": true, "requires": { - "string-width": "^1.0.2" + "string-width": "^1.0.2 || 2" } }, "wrappy": { @@ -2526,7 +1956,7 @@ "optional": true }, "yallist": { - "version": "3.0.2", + "version": "3.0.3", "bundled": true, "dev": true, "optional": true @@ -2592,7 +2022,8 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "dev": true, + "optional": true }, "getpass": { "version": "0.1.7", @@ -2617,42 +2048,6 @@ "path-is-absolute": "^1.0.0" } }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - } - } - }, "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", @@ -2677,9 +2072,9 @@ } }, "globals": { - "version": "11.7.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", - "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true }, "globule": { @@ -2706,12 +2101,12 @@ "dev": true }, "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", "dev": true, "requires": { - "ajv": "^5.1.0", + "ajv": "^6.5.5", "har-schema": "^2.0.0" } }, @@ -2733,29 +2128,6 @@ "ansi-regex": "^2.0.0" } }, - "has-binary2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", - "dev": true, - "requires": { - "isarray": "2.0.1" - }, - "dependencies": { - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - } - } - }, - "has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "dev": true - }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -2773,6 +2145,7 @@ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, + "optional": true, "requires": { "get-value": "^2.0.6", "has-values": "^1.0.0", @@ -2784,6 +2157,7 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "dev": true, + "optional": true, "requires": { "is-number": "^3.0.0", "kind-of": "^4.0.0" @@ -2794,6 +2168,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -2808,7 +2183,7 @@ }, "http-errors": { "version": "1.6.3", - "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", "dev": true, "requires": { @@ -2816,24 +2191,6 @@ "inherits": "2.0.3", "setprototypeof": "1.1.0", "statuses": ">= 1.4.0 < 2" - }, - "dependencies": { - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "http-proxy": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.15.2.tgz", - "integrity": "sha1-ZC/cr/5S00SNK9o7AHnpQJBk2jE=", - "dev": true, - "requires": { - "eventemitter3": "1.x.x", - "requires-port": "1.x.x" } }, "http-signature": { @@ -2856,12 +2213,6 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "immutable": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", - "integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM=", - "dev": true - }, "in-publish": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", @@ -2882,12 +2233,6 @@ "repeating": "^2.0.0" } }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -2911,9 +2256,9 @@ "dev": true }, "ipaddr.js": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", - "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", + "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==", "dev": true }, "is-accessor-descriptor": { @@ -2921,6 +2266,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2" }, @@ -2930,6 +2276,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -2947,6 +2294,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, + "optional": true, "requires": { "binary-extensions": "^1.0.0" } @@ -2957,20 +2305,12 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "dev": true }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "http://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } - }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2" }, @@ -2980,6 +2320,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -2991,6 +2332,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, + "optional": true, "requires": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", @@ -3001,25 +2343,11 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true + "dev": true, + "optional": true } } }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, "is-expression": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", @@ -3042,7 +2370,8 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "dev": true, + "optional": true }, "is-extglob": { "version": "2.1.1", @@ -3070,9 +2399,9 @@ } }, "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "optional": true, "requires": { @@ -3084,6 +2413,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2" }, @@ -3093,21 +2423,13 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } } } }, - "is-number-like": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", - "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", - "dev": true, - "requires": { - "lodash.isfinite": "^3.3.2" - } - }, "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", @@ -3119,22 +2441,11 @@ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, + "optional": true, "requires": { "isobject": "^3.0.1" } }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", @@ -3166,13 +2477,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "dev": true, + "optional": true }, "isarray": { "version": "1.0.0", @@ -3190,7 +2496,8 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "dev": true, + "optional": true }, "isstream": { "version": "0.1.2", @@ -3199,9 +2506,9 @@ "dev": true }, "js-base64": { - "version": "2.4.9", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.9.tgz", - "integrity": "sha512-xcinL3AuDJk7VSzsHgb9DvvIXayBbadtMZ4HFPx8rUszbW1MuNMlwYVC4zzCZ6e1sqZpnNS5ZFYOhXqA39T7LQ==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", "dev": true }, "js-stringify": { @@ -3220,13 +2527,12 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true, - "optional": true + "dev": true }, "jsesc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, "json-schema": { @@ -3236,9 +2542,9 @@ "dev": true }, "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stringify-safe": { @@ -3248,18 +2554,20 @@ "dev": true }, "json5": { - "version": "0.5.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsonfile": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", - "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", + "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.6" + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } } }, "jsprim": { @@ -3274,11 +2582,6 @@ "verror": "1.10.0" } }, - "jsrsasign": { - "version": "8.0.12", - "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-8.0.12.tgz", - "integrity": "sha1-Iqu5ZW00owuVMENnIINeicLlwxY=" - }, "jstransformer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", @@ -3293,7 +2596,8 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true + "dev": true, + "optional": true }, "lazy-cache": { "version": "1.0.4", @@ -3310,15 +2614,9 @@ "invert-kv": "^1.0.0" } }, - "limiter": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.3.tgz", - "integrity": "sha512-zrycnIMsLw/3ZxTbW7HCez56rcFGecWTx5OZNplzcXUUmJLmoYArC6qdJzmAN5BWiNXGcpjhF9RQ1HSv5zebEw==", - "dev": true - }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -3329,87 +2627,12 @@ "strip-bom": "^2.0.0" } }, - "localtunnel": { - "version": "1.9.0", - "resolved": "http://registry.npmjs.org/localtunnel/-/localtunnel-1.9.0.tgz", - "integrity": "sha512-wCIiIHJ8kKIcWkTQE3m1VRABvsH2ZuOkiOpZUofUCf6Q42v3VIZ+Q0YfX1Z4sYDRj0muiKL1bLvz1FeoxsPO0w==", - "dev": true, - "requires": { - "axios": "0.17.1", - "debug": "2.6.8", - "openurl": "1.1.1", - "yargs": "6.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", - "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "yargs": { - "version": "6.6.0", - "resolved": "http://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^4.2.0" - } - } - } - }, "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", "dev": true }, - "lodash.assign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true, - "optional": true - }, - "lodash.isfinite": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", - "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=", - "dev": true - }, - "lodash.mergewith": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz", - "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==", - "dev": true - }, "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", @@ -3427,9 +2650,9 @@ } }, "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "dev": true, "requires": { "pseudomap": "^1.0.2", @@ -3440,7 +2663,8 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true + "dev": true, + "optional": true }, "map-obj": { "version": "1.0.1", @@ -3453,16 +2677,11 @@ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, + "optional": true, "requires": { "object-visit": "^1.0.0" } }, - "math-random": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", - "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", - "dev": true - }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -3489,7 +2708,7 @@ "dependencies": { "minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true } @@ -3512,6 +2731,7 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, + "optional": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -3569,6 +2789,7 @@ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, + "optional": true, "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -3579,6 +2800,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "optional": true, "requires": { "is-plain-object": "^2.0.4" } @@ -3601,16 +2823,18 @@ "dev": true }, "nan": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz", - "integrity": "sha512-F4miItu2rGnV2ySkXOQoA8FKz/SR2Q2sWP0sbTxNxz/tuokeC8WxOhPMcwi0qIyGtVn/rrSeLbvVkznqCdwYnw==", - "dev": true + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", + "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", + "dev": true, + "optional": true }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "dev": true, + "optional": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -3626,9 +2850,9 @@ } }, "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", "dev": true }, "node-gyp": { @@ -3660,9 +2884,9 @@ } }, "node-sass": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.3.tgz", - "integrity": "sha512-XzXyGjO+84wxyH7fV6IwBOTrEBe2f0a6SBze9QWWYR/cL74AcQUks2AsqcCZenl/Fp/JVbuEaLpgrLtocwBUww==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz", + "integrity": "sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==", "dev": true, "requires": { "async-foreach": "^0.1.3", @@ -3672,15 +2896,13 @@ "get-stdin": "^4.0.1", "glob": "^7.0.3", "in-publish": "^2.0.0", - "lodash.assign": "^4.2.0", - "lodash.clonedeep": "^4.3.2", - "lodash.mergewith": "^4.6.0", + "lodash": "^4.17.11", "meow": "^3.7.0", "mkdirp": "^0.5.1", - "nan": "^2.10.0", + "nan": "^2.13.2", "node-gyp": "^3.8.0", "npmlog": "^4.0.0", - "request": "2.87.0", + "request": "^2.88.0", "sass-graph": "^2.2.4", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" @@ -3694,7 +2916,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -3705,6 +2927,12 @@ "supports-color": "^2.0.0" } }, + "nan": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", + "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", + "dev": true + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -3723,30 +2951,39 @@ } }, "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", + "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "resolve": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.1.tgz", + "integrity": "sha512-KuIe4mf++td/eFb6wkaPbMDnP6kObCaEtIDuHOUED6MNUo4K670KZUHuuvYPZDxNF0WVLw49n06M2m2dXphEzA==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + } } }, "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } + "optional": true }, "normalize.css": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.0.tgz", - "integrity": "sha512-iXcbM3NWr0XkNyfiSBsoPezi+0V92P9nj84yVV1/UZxRUrGczgX/X91KMAGM0omWLY2+2Q1gKD/XRn4gQRDB2A==" + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz", + "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==" }, "npmlog": { "version": "4.1.2", @@ -3767,9 +3004,9 @@ "dev": true }, "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", "dev": true }, "object-assign": { @@ -3778,17 +3015,12 @@ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", - "dev": true - }, "object-copy": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "dev": true, + "optional": true, "requires": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", @@ -3800,6 +3032,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^0.1.0" } @@ -3809,55 +3042,33 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } } } }, - "object-path": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.9.2.tgz", - "integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=", - "dev": true - }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "dev": true, + "optional": true, "requires": { "isobject": "^3.0.0" } }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "dev": true, + "optional": true, "requires": { "isobject": "^3.0.1" } }, - "oidc-client": { - "version": "1.5.3-beta.1", - "resolved": "https://registry.npmjs.org/oidc-client/-/oidc-client-1.5.3-beta.1.tgz", - "integrity": "sha512-p4EcEuMuVV2mwcH59BSNE/0zNalksELSpOp/r7oH4vGppIwsE1cHvXhHqc4hX7jpfrxU7wYsEZ74ECNXXnZB5g==", - "requires": { - "babel-polyfill": ">=6.9.1", - "jsrsasign": "^8.0.12" - } - }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", @@ -3876,21 +3087,6 @@ "wrappy": "1" } }, - "openurl": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", - "integrity": "sha1-OHW0sO96UsFW8NtB1GCduw+Us4c=", - "dev": true - }, - "opn": { - "version": "5.3.0", - "resolved": "http://registry.npmjs.org/opn/-/opn-5.3.0.tgz", - "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -3899,7 +3095,7 @@ }, "os-locale": { "version": "1.4.0", - "resolved": "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", "dev": true, "requires": { @@ -3933,35 +3129,6 @@ "mkdirp": "^0.5.1" } }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - }, - "dependencies": { - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - } - } - }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -3971,35 +3138,18 @@ "error-ex": "^1.2.0" } }, - "parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } - }, - "parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } - }, "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true }, "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true + "dev": true, + "optional": true }, "path-dirname": { "version": "1.0.2", @@ -4073,27 +3223,12 @@ "pinkie": "^2.0.0" } }, - "portscanner": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.1.1.tgz", - "integrity": "sha1-6rtAnk3iSVD1oqUW01rnaTQ/u5Y=", - "dev": true, - "requires": { - "async": "1.5.2", - "is-number-like": "^1.0.3" - } - }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true + "dev": true, + "optional": true }, "process-nextick-args": { "version": "2.0.0", @@ -4111,13 +3246,13 @@ } }, "proxy-addr": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", - "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", + "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", "dev": true, "requires": { "forwarded": "~0.1.2", - "ipaddr.js": "1.8.0" + "ipaddr.js": "1.9.0" } }, "pseudomap": { @@ -4126,6 +3261,12 @@ "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", "dev": true }, + "psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", + "dev": true + }, "pug": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.3.tgz", @@ -4292,40 +3433,21 @@ "dev": true }, "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "qs": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", - "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, - "randomatic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz", - "integrity": "sha512-KnGPVE0lo2WoXxIZ7cPR8YBpiol4gsSuOwDSg410oHh80ZMp5EiypNqL2K4Z77vJn6lB5rap7IkAmcUlalcnBQ==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "dev": true }, "raw-body": { @@ -4381,6 +3503,7 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, + "optional": true, "requires": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", @@ -4400,22 +3523,15 @@ "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, + "optional": true, "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" @@ -4425,13 +3541,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true + "dev": true, + "optional": true }, "repeat-element": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true + "dev": true, + "optional": true }, "repeat-string": { "version": "1.6.1", @@ -4449,39 +3567,31 @@ } }, "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", "dev": true, "requires": { "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", + "aws4": "^1.8.0", "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" - }, - "dependencies": { - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - } + "uuid": "^3.3.2" } }, "require-directory": { @@ -4496,12 +3606,6 @@ "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", "dev": true }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, "resolve": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", @@ -4515,23 +3619,15 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "resp-modifier": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz", - "integrity": "sha1-sSTeXE+6/LpUH0j/pzlw9KpFa08=", "dev": true, - "requires": { - "debug": "^2.2.0", - "minimatch": "^3.0.2" - } + "optional": true }, "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true + "dev": true, + "optional": true }, "right-align": { "version": "0.1.3", @@ -4543,20 +3639,14 @@ } }, "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "dev": true, "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" } }, - "rx": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", - "dev": true - }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -4568,6 +3658,7 @@ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, + "optional": true, "requires": { "ret": "~0.1.10" } @@ -4588,38 +3679,6 @@ "lodash": "^4.0.0", "scss-tokenizer": "^0.2.3", "yargs": "^7.0.0" - }, - "dependencies": { - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - } - } } }, "scss-tokenizer": { @@ -4668,29 +3727,6 @@ "on-finished": "~2.3.0", "range-parser": "~1.2.0", "statuses": "~1.4.0" - }, - "dependencies": { - "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", - "dev": true - } - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" } }, "serve-static": { @@ -4705,12 +3741,6 @@ "send": "0.16.2" } }, - "server-destroy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=", - "dev": true - }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -4722,6 +3752,7 @@ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, + "optional": true, "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -4734,6 +3765,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -4752,11 +3784,6 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true }, - "simple-line-icons": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/simple-line-icons/-/simple-line-icons-2.4.1.tgz", - "integrity": "sha1-t1vFoNh+UwkowszaVzUnS7JW8jQ=" - }, "slash": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", @@ -4768,6 +3795,7 @@ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, + "optional": true, "requires": { "base": "^0.11.1", "debug": "^2.2.0", @@ -4784,6 +3812,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^0.1.0" } @@ -4793,6 +3822,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -4804,6 +3834,7 @@ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, + "optional": true, "requires": { "define-property": "^1.0.0", "isobject": "^3.0.0", @@ -4815,6 +3846,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^1.0.0" } @@ -4824,6 +3856,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -4833,6 +3866,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -4842,6 +3876,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "optional": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -4855,6 +3890,7 @@ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^3.2.0" }, @@ -4864,151 +3900,13 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } } } }, - "socket.io": { - "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": "~3.1.0", - "engine.io": "~3.2.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "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" - } - }, - "engine.io-client": { - "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", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - } - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "socket.io-client": { - "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": "~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.2.0", - "to-array": "0.1.4" - } - }, - "socket.io-parser": { - "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", - "isarray": "2.0.1" - } - } - } - }, - "socket.io-adapter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz", - "integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=", - "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=", - "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", - "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", - "to-array": "0.1.4" - } - }, - "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==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "has-binary2": "~1.0.2", - "isarray": "2.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, - "requires": { - "ms": "2.0.0" - } - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - } - } - }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -5020,6 +3918,7 @@ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "dev": true, + "optional": true, "requires": { "atob": "^2.1.1", "decode-uri-component": "^0.2.0", @@ -5032,12 +3931,13 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true + "dev": true, + "optional": true }, "spdx-correct": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.1.tgz", - "integrity": "sha512-hxSPZbRZvSDuOvADntOElzJpenIR7wXJkuoUcUtS0erbgt2fgeaoPIYretfKpslMhfFDY4k0MZ2F5CUzhBsSvQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -5045,9 +3945,9 @@ } }, "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", "dev": true }, "spdx-expression-parse": { @@ -5061,9 +3961,9 @@ } }, "spdx-license-ids": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz", - "integrity": "sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", "dev": true }, "split-string": { @@ -5071,14 +3971,15 @@ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, + "optional": true, "requires": { "extend-shallow": "^3.0.0" } }, "sshpk": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", - "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", "dev": true, "requires": { "asn1": "~0.2.3", @@ -5097,6 +3998,7 @@ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, + "optional": true, "requires": { "define-property": "^0.2.5", "object-copy": "^0.1.0" @@ -5107,6 +4009,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, + "optional": true, "requires": { "is-descriptor": "^0.1.0" } @@ -5114,9 +4017,9 @@ } }, "statuses": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", "dev": true }, "stdout-stream": { @@ -5128,16 +4031,6 @@ "readable-stream": "^2.0.1" } }, - "stream-throttle": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz", - "integrity": "sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=", - "dev": true, - "requires": { - "commander": "^2.2.0", - "limiter": "^1.0.5" - } - }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -5205,49 +4098,6 @@ "inherits": "2" } }, - "tfunk": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/tfunk/-/tfunk-3.1.0.tgz", - "integrity": "sha1-OORBT8ZJd9h6/apy+sttKfgve1s=", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "object-path": "^0.9.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": 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" - } - }, - "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 - } - } - }, - "to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", - "dev": true - }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -5259,6 +4109,7 @@ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2" }, @@ -5268,6 +4119,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5279,6 +4131,7 @@ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, + "optional": true, "requires": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", @@ -5291,6 +4144,7 @@ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, + "optional": true, "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" @@ -5303,12 +4157,21 @@ "dev": true }, "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", "dev": true, "requires": { + "psl": "^1.1.24", "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } } }, "trim-newlines": { @@ -5345,25 +4208,35 @@ "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, - "optional": true + "dev": true }, "type-is": { - "version": "1.6.16", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", - "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, "requires": { "media-typer": "0.3.0", - "mime-types": "~2.1.18" + "mime-types": "~2.1.24" + }, + "dependencies": { + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + } } }, - "ua-parser-js": { - "version": "0.7.17", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", - "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==", - "dev": true - }, "uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", @@ -5419,17 +4292,12 @@ "dev": true, "optional": true }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true - }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, + "optional": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", @@ -5442,6 +4310,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, + "optional": true, "requires": { "is-extendable": "^0.1.0" } @@ -5451,6 +4320,7 @@ "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "dev": true, + "optional": true, "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -5460,12 +4330,6 @@ } } }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -5477,6 +4341,7 @@ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, + "optional": true, "requires": { "has-value": "^0.3.1", "isobject": "^3.0.0" @@ -5487,6 +4352,7 @@ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, + "optional": true, "requires": { "get-value": "^2.0.3", "has-values": "^0.1.4", @@ -5498,6 +4364,7 @@ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", "dev": true, + "optional": true, "requires": { "isarray": "1.0.0" } @@ -5508,28 +4375,40 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true + "dev": true, + "optional": true } } }, "upath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", + "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", "dev": true, "optional": true }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true + "dev": true, + "optional": true }, "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true + "dev": true, + "optional": true }, "util-deprecate": { "version": "1.0.2", @@ -5606,12 +4485,6 @@ "string-width": "^1.0.2 || 2" } }, - "window-size": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", - "integrity": "sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=", - "dev": true - }, "with": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", @@ -5630,7 +4503,7 @@ }, "wrap-ansi": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "dev": true, "requires": { @@ -5644,23 +4517,6 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } - }, - "xmlhttprequest-ssl": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", - "dev": true - }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -5674,9 +4530,9 @@ "dev": true }, "yargs": { - "version": "6.4.0", - "resolved": "http://registry.npmjs.org/yargs/-/yargs-6.4.0.tgz", - "integrity": "sha1-gW4ahm1VmMzzTlWW3c4i2S2kkNQ=", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", "dev": true, "requires": { "camelcase": "^3.0.0", @@ -5690,25 +4546,34 @@ "set-blocking": "^2.0.0", "string-width": "^1.0.2", "which-module": "^1.0.0", - "window-size": "^0.2.0", "y18n": "^3.2.1", - "yargs-parser": "^4.1.0" + "yargs-parser": "^5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + } } }, "yargs-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", "dev": true, "requires": { "camelcase": "^3.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + } } - }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", - "dev": true } } } diff --git a/package.json b/package.json index 9d65ac5..69734fc 100644 --- a/package.json +++ b/package.json @@ -1,21 +1,20 @@ { - "name": "hd-app", + "name": "sib-app", "version": "1.0.0", - "license": "ISC", + "license": "MIT", + "scripts": { + "serve": "node server.js", + "postinstall": "node copy_lib.js" + }, "devDependencies": { - "@babel/core": "^7.1.0", - "@babel/cli": "^7.1.0", - "node-sass": "^4.9.3", + "@babel/core": "^7.4.4", + "@babel/cli": "^7.4.4", + "node-sass": "^4.12.0", "pug-cli": "^1.0.0-alpha6", - "browser-sync": "^2.24.7", - "express": "^4.16.3" + "express": "^4.16.4" }, "dependencies": { - "@webcomponents/html-imports": "^1.2.0", - "@webcomponents/webcomponentsjs": "^1.2.7", "include-media": "^1.4.9", - "normalize.css": "^8.0.0", - "oidc-client": "^1.5.3-beta.1", - "simple-line-icons": "^2.4.1" + "normalize.css": "^8.0.1" } } diff --git a/server.js b/server.js index df4f56e..f525bc3 100644 --- a/server.js +++ b/server.js @@ -1,5 +1,4 @@ -const port = 9000; -const browserSyncPort = 3000; +const port = 3000; const distPath = 'www'; // express server @@ -8,25 +7,5 @@ const express = require('express'); const app = express(); app .use(express.static(distPath)) - // .use('/src', express.static(join(__dirname, 'src'))) - .get(/^[^.]*$/, (req, rep) => - rep.sendFile(join(__dirname, distPath, '/index.html')), - ) + .get(/^[^.]*$/, (req, rep) => rep.sendFile(join(__dirname, distPath, '/index.html'))) .listen(port); - -// browser sync -const bs = require('browser-sync').create(); -bs.init({ - files: [distPath + '/**/*'], - proxy: `http://localhost:${port}`, - open: false, - notify: false, - port: browserSyncPort, - files: [ - 'www/styles/index.css', - 'www/scripts/index.js', - 'www/index.html', - 'www/images/**', - 'www/fonts/**' - ] -}); diff --git a/src/dependencies.pug b/src/dependencies.pug index 54d675a..fe25872 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -16,10 +16,10 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 //- script(type="module" src="/lib/sib-directory/sib-directory.js") //- CDN -script(type="module" src="https://unpkg.com/@startinblox/core@0.7.15") +script(type="module" src="https://unpkg.com/@startinblox/core@0.7") script(type="module" src="https://unpkg.com/@startinblox/router@0.7.2") script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1.12") script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2.1") -script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.10") +script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.11") diff --git a/src/styles/layout/members/members.scss b/src/styles/layout/members/members.scss index b616fa4..40a52b1 100644 --- a/src/styles/layout/members/members.scss +++ b/src/styles/layout/members/members.scss @@ -31,6 +31,10 @@ } } +member-info-groups { + @extend %user-role; +} + .how-link { @extend .howto; background-color: $color-0-0-100; From 2c649c447e69924fe52cc37caed1902fadde2ed0 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Tue, 14 May 2019 17:32:42 +0200 Subject: [PATCH 12/13] css: refactoring & fixing - day 2 --- copy_lib.js | 26 -- package.json | 2 +- postinstall.js | 8 + src/dependencies.pug | 7 +- src/get_config.pug | 3 +- src/index.pug | 24 +- src/menu-left.pug | 12 +- src/page-chat.pug | 0 ...ge-group-chat.pug => page-circle-chat.pug} | 2 +- src/page-circle-create.pug | 26 ++ src/page-circle-edit.pug | 9 + ...up-profile.pug => page-circle-profile.pug} | 2 +- src/{page-group.pug => page-circle.pug} | 17 +- src/page-group-create.pug | 26 -- src/page-group-edit.pug | 10 - src/page-groups.pug | 7 - src/page-job-offer-create.pug | 37 ++- src/page-job-offers.pug | 12 +- src/page-member-chat.pug | 19 +- src/page-member-edit.pug | 96 ------ ...members.pug => page-members-directory.pug} | 0 src/page-project-chat.pug | 2 +- src/page-project-create.pug | 58 ++-- src/page-project-edit.pug | 106 +++---- src/page-project-profile.pug | 2 +- src/page-projects.pug | 10 - src/styles/_index.scss | 10 +- src/styles/abstracts/_mixins.scss | 20 -- src/styles/base/_compat.scss | 47 +-- src/styles/base/form.scss | 294 +++++++++++++++++ src/styles/{components => base}/header.scss | 3 +- src/styles/base/main.scss | 61 +++- .../{components => base}/menu-left.scss | 2 +- src/styles/components/_index.scss | 10 +- src/styles/components/chat.scss | 15 + src/styles/components/content.scss | 114 ------- src/styles/components/form.scss | 297 ------------------ src/styles/components/menu-right.scss | 113 ------- src/styles/components/sidebar.scss | 106 +++++++ src/styles/components/skills.scss | 2 - src/styles/components/user-role.scss | 9 + .../layout/circle-profile/circle-profile.scss | 1 - src/styles/layout/job-offers/job-offers.scss | 19 +- src/styles/layout/member-chat/_index.scss | 1 - .../layout/member-chat/member-chat.scss | 3 - src/styles/layout/members/members.scss | 20 +- .../project-profile/project-profile.scss | 269 ++++++++-------- 47 files changed, 824 insertions(+), 1115 deletions(-) delete mode 100644 copy_lib.js create mode 100644 postinstall.js delete mode 100644 src/page-chat.pug rename src/{page-group-chat.pug => page-circle-chat.pug} (82%) create mode 100644 src/page-circle-create.pug create mode 100644 src/page-circle-edit.pug rename src/{page-group-profile.pug => page-circle-profile.pug} (96%) rename src/{page-group.pug => page-circle.pug} (58%) delete mode 100644 src/page-group-create.pug delete mode 100644 src/page-group-edit.pug delete mode 100644 src/page-groups.pug delete mode 100644 src/page-member-edit.pug rename src/{page-members.pug => page-members-directory.pug} (100%) delete mode 100644 src/page-projects.pug create mode 100644 src/styles/base/form.scss rename src/styles/{components => base}/header.scss (98%) rename src/styles/{components => base}/menu-left.scss (99%) create mode 100644 src/styles/components/chat.scss delete mode 100644 src/styles/components/content.scss delete mode 100644 src/styles/components/form.scss delete mode 100644 src/styles/components/menu-right.scss create mode 100644 src/styles/components/sidebar.scss create mode 100644 src/styles/components/user-role.scss delete mode 100644 src/styles/layout/member-chat/_index.scss delete mode 100644 src/styles/layout/member-chat/member-chat.scss diff --git a/copy_lib.js b/copy_lib.js deleted file mode 100644 index 07b6dad..0000000 --- a/copy_lib.js +++ /dev/null @@ -1,26 +0,0 @@ -const { basename, join, resolve } = require('path'); -const fs = require('fs'); -const { exec } = require('child_process'); - -const distDir = 'www/lib'; - -const filelist = fs.readFileSync('lib_list.txt', 'utf-8').split(/\r?\n/); - -exec(`mkdir -p ${distDir}`, () => { - filelist.forEach(path => { - path = resolve(path); - const filename = basename(path); - const dest = fs.lstatSync(path).isDirectory() - ? distDir - : join(distDir, filename); - const cmd = `rsync -ru ${path} ${dest}`; - console.log(cmd); - exec(cmd); - }); -}); - -if (!fs.existsSync('src/config.json')) { - const cmd = `rsync -ru src/config.sample.json src/config.json`; - console.log(cmd); - exec(cmd); -} \ No newline at end of file diff --git a/package.json b/package.json index 69734fc..637731c 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "license": "MIT", "scripts": { "serve": "node server.js", - "postinstall": "node copy_lib.js" + "postinstall": "node postinstall.js" }, "devDependencies": { "@babel/core": "^7.4.4", diff --git a/postinstall.js b/postinstall.js new file mode 100644 index 0000000..ff2fe59 --- /dev/null +++ b/postinstall.js @@ -0,0 +1,8 @@ +const fs = require('fs'); +const { exec } = require('child_process'); + +if (!fs.existsSync('src/config.json')) { + const cmd = `rsync -ru src/config.sample.json src/config.json`; + console.log(cmd); + exec(cmd); +} \ No newline at end of file diff --git a/src/dependencies.pug b/src/dependencies.pug index fe25872..10349e7 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -2,7 +2,6 @@ script(type="module" src="https://unpkg.com/@startinblox/oidc@0.6.0") script(src="/scripts/index.js") //- Stylesheets -link(rel='stylesheet', href='/lib/normalize.css') link(rel='stylesheet', href='/styles/index.css') link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:300,400,400i,600,700&subset=latin-ext') link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i') @@ -10,7 +9,7 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 //- local //- script(type="module" src="/lib/sib-core/src/index.js") //- script(type="module" src="/lib/sib-router/src/index.js") -//- script(type="module" src="/lib/sib-chat/sib-chat.js") +script(type="module" src="/lib/sib-chat/sib-chat.js") //- script(type="module" src="/lib/sib-notifications/sib-notifications.js") //- script(type="module" src="/lib/sib-conversation/sib-conversation.js") //- script(type="module" src="/lib/sib-directory/sib-directory.js") @@ -18,8 +17,8 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 //- CDN script(type="module" src="https://unpkg.com/@startinblox/core@0.7") script(type="module" src="https://unpkg.com/@startinblox/router@0.7.2") -script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") +//- script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1.12") script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2.1") -script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.11") +script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.14") diff --git a/src/get_config.pug b/src/get_config.pug index befcb19..5a04ca7 100644 --- a/src/get_config.pug +++ b/src/get_config.pug @@ -1,6 +1,5 @@ -- var __env = locals[process.env.ENV] - - + var __env = locals[process.env.ENV] for(k in __env){ eval(`var ${k} = __env[${JSON.stringify(k)}]`); } \ No newline at end of file diff --git a/src/index.pug b/src/index.pug index 666c4c9..6d997c3 100644 --- a/src/index.pug +++ b/src/index.pug @@ -9,29 +9,29 @@ html(lang="en") link(rel="icon" type="image/png" href="/images/favicon.png") include dependencies.pug body - header#header.row(role='banner') + header#header(role='banner') include header.pug - .content.row + main include menu-left.pug - main#mainContainer + div#viewport - #members(hidden).padded-width - include page-members.pug + #members(hidden).no-sidebar + include page-members-directory.pug - #job-offers(hidden).padded-width + #job-offers(hidden).no-sidebar include page-job-offers.pug - #job-offer-create(hidden).padded-width + #job-offer-create(hidden).no-sidebar sib-link(class="backlink", next="job-offers") Back include page-job-offer-create.pug - #project(hidden) + #project(hidden).with-sidebar include page-project.pug - - #circle(hidden) - include page-group.pug - #member-chat(hidden) + #circle(hidden).with-sidebar + include page-circle.pug + + #member-chat(hidden).no-sidebar include page-member-chat.pug #user-profile(hidden) diff --git a/src/menu-left.pug b/src/menu-left.pug index bc86895..beb5cfc 100644 --- a/src/menu-left.pug +++ b/src/menu-left.pug @@ -1,20 +1,10 @@ -nav#navbar +nav#main__menu sib-router#navbar-router(default-route='members') sib-route.menu(name='members') - div.menu-notification - sib-display( - data-src=`${sdn}/members/`, - data-fields='-' - ) div.menu-label Members div.menu-icon.icon-people div.divider sib-route.menu(name='job-offers', rdf-type='hd:joboffer') - div.menu-notification - sib-display( - data-src=`${sdn}/job-offers/`, - data-fields='-' - ) div.menu-label Job offers div.menu-icon.icon-briefcase sib-route(hidden, name='job-offer-create') diff --git a/src/page-chat.pug b/src/page-chat.pug deleted file mode 100644 index e69de29..0000000 diff --git a/src/page-group-chat.pug b/src/page-circle-chat.pug similarity index 82% rename from src/page-group-chat.pug rename to src/page-circle-chat.pug index 72bb999..606e5a7 100644 --- a/src/page-group-chat.pug +++ b/src/page-circle-chat.pug @@ -1,4 +1,4 @@ -.chat-view +.content-box.full-width.chat-view sib-chat( data-authentication='login', data-auto-login='true', diff --git a/src/page-circle-create.pug b/src/page-circle-create.pug new file mode 100644 index 0000000..e7eeb59 --- /dev/null +++ b/src/page-circle-create.pug @@ -0,0 +1,26 @@ +.content-box.with-form.full-width + h1 New group + p Here you can create a new group according to your interests, what you want to share, etc. + + sib-form( + data-src=`${sdn}/circles/`, + range-owner=`${sdn}/users/`, + range-team=`${sdn}/members/` + + data-fields='name, description, description-text, owner, owner-text, team, team-text, jabberRoom, foaf:jabberID', + + label-name="Channel's name", + label-description='Description', + label-owner='Owner of this channel', + label-foaf:jabberID='Chatroom id', + label-team='Member(s) of this channel', + + value-description-text='You can write a short description like "Here, we are like Pinky and the Brain, we talk about strategy to conquer the world".', + value-owner-text='The one who will admin this channel', + value-team-text='Add any members as you want.', + + + widget-description='sib-form-textarea', + widget-jabberRoom='sib-form-checkbox', + widget-team='sib-form-multiple-dropdown' + ) diff --git a/src/page-circle-edit.pug b/src/page-circle-edit.pug new file mode 100644 index 0000000..008bc6d --- /dev/null +++ b/src/page-circle-edit.pug @@ -0,0 +1,9 @@ +#circle-edit.content-box.with-form.full-width + h1 Edit group + sib-form.block( + range-owner=`${sdn}/members/`, + data-fields="name, description, owner, team, jabberID, jabberRoom" + range-team=`${sdn}/members/`, + widget-team='sib-form-multiple-dropdown', + bind-resources + ) diff --git a/src/page-group-profile.pug b/src/page-circle-profile.pug similarity index 96% rename from src/page-group-profile.pug rename to src/page-circle-profile.pug index 55114d3..7784abf 100644 --- a/src/page-group-profile.pug +++ b/src/page-circle-profile.pug @@ -1,4 +1,4 @@ -.frame +.content-box.full-width h2 Channel's name: sib-display( data-fields='name', diff --git a/src/page-group.pug b/src/page-circle.pug similarity index 58% rename from src/page-group.pug rename to src/page-circle.pug index 39635d0..a65038d 100644 --- a/src/page-group.pug +++ b/src/page-circle.pug @@ -8,20 +8,19 @@ nav.jsRightMenu(role='navigation') a Chat sib-route(name='circle-profile') li - a Info - sib-ac-checker(permission='change' bind-resources) - sib-route(name='circle-edit') - li - a Edit + a Information + sib-route(name='circle-edit') + li + a Edit sib-route(name='circle-create') li a Add new .views-container #circle-chat - include page-group-chat.pug + include page-circle-chat.pug #circle-profile - include page-group-profile.pug + include page-circle-profile.pug #circle-edit - include page-group-edit.pug + include page-circle-edit.pug #circle-create - include page-group-create.pug + include page-circle-create.pug diff --git a/src/page-group-create.pug b/src/page-group-create.pug deleted file mode 100644 index 343db17..0000000 --- a/src/page-group-create.pug +++ /dev/null @@ -1,26 +0,0 @@ -.frame-form.full-wide - h1 New group - p.form-goal Here you can create a new group according to your interests, what you want to share, etc. - .form-view - sib-form( - data-src=`${sdn}/circles/`, - range-owner=`${sdn}/users/`, - range-team=`${sdn}/members/` - - data-fields='name, description, description-text, owner, owner-text, team, team-text, jabberRoom, foaf:jabberID', - - label-name="Channel's name", - label-description='Description', - label-owner='Owner of this channel', - label-foaf:jabberID='Chatroom id', - label-team='Member(s) of this channel', - - value-description-text='You can write a short description like "Here, we are like Pinky and the Brain, we talk about strategy to conquer the world".', - value-owner-text='The one who will admin this channel', - value-team-text='Add any members as you want.', - - - widget-description='sib-form-textarea', - widget-jabberRoom='sib-form-checkbox', - widget-team='sib-form-multiple-dropdown' - ) diff --git a/src/page-group-edit.pug b/src/page-group-edit.pug deleted file mode 100644 index b4c0676..0000000 --- a/src/page-group-edit.pug +++ /dev/null @@ -1,10 +0,0 @@ -#circle-edit.frame-form - h1 Edit group - .form-view - sib-form.block( - range-owner=`${sdn}/members/`, - data-fields="name, description, owner, team, jabberID, jabberRoom" - range-team=`${sdn}/members/`, - widget-team='sib-form-multiple-dropdown', - bind-resources - ) diff --git a/src/page-groups.pug b/src/page-groups.pug deleted file mode 100644 index 68885fb..0000000 --- a/src/page-groups.pug +++ /dev/null @@ -1,7 +0,0 @@ -#circles - sib-display#circles-list( - data-src=`${sdn}/circles/`, - data-fields='name, description', - search-fields='name, description', - next='group' - ) diff --git a/src/page-job-offer-create.pug b/src/page-job-offer-create.pug index 93be66f..9e8619a 100644 --- a/src/page-job-offer-create.pug +++ b/src/page-job-offer-create.pug @@ -1,4 +1,6 @@ -.frame-form.frame +.content-box.with-form + h1 Post a new job offer + p This form allows you to share an offer to all members of the network. sib-widget(name='title-text') template @@ -8,23 +10,20 @@ template p Be specific and exhaustive to avoid answering too many questions later. Indicate what is the best way to fill the offer, the prerequisites...' - h1 Post a new job offer - p.form-goal This form allows you to share an offer to all members of the network. - .form-view - sib-form.block( - data-src=`${sdn}/job-offers/`, - range-skills= `${sdn}/skills/`, - range-author= `${sdn}/users/`, + sib-form.block( + data-src=`${sdn}/job-offers/`, + range-skills= `${sdn}/skills/`, + range-author= `${sdn}/users/`, - data-fields='title, title-text, description, description-text, skills', + data-fields='title, title-text, description, description-text, skills', - label-title='Title*', - label-description='Description*', - label-skills='The required skills for this mission:*', - - widget-title-text='title-text', - widget-description-text='description-text', - widget-skills='sib-form-auto-completion', - - next="job-offers" - ) + label-title='Title*', + label-description='Description*', + label-skills='The required skills for this mission:*', + + widget-title-text='title-text', + widget-description-text='description-text', + widget-skills='sib-form-auto-completion', + + next="job-offers" + ) diff --git a/src/page-job-offers.pug b/src/page-job-offers.pug index be4a39f..f648a42 100644 --- a/src/page-job-offers.pug +++ b/src/page-job-offers.pug @@ -1,10 +1,10 @@ -div.grid-layer +div.job-offers__main include templates/template-groups.pug include templates/template-skills.pug include templates/template-joboffers-filter.pug - div.grid-layer-main.containerV + div.job-offers__content h1 New offers span Here you can find and post offers sib-display#offers-list( @@ -35,15 +35,9 @@ div.grid-layer search-widget-open='joboffers-filter' ) - div.grid-layer-links.containerV + div.job-offers__newoffer template#groups-list-template p ${value} sib-link(next="job-offer-create").plus-button div.icon-plus div Post a new offer - //-sib-link().containerH.containerCenter.how-link - div.icon-idea - div.grow How To find a new offer? - //-sib-link().containerH.containerCenter.how-link - div.icon-idea - div.grow How to set notification? diff --git a/src/page-member-chat.pug b/src/page-member-chat.pug index a082cf0..fdc62b2 100644 --- a/src/page-member-chat.pug +++ b/src/page-member-chat.pug @@ -1,10 +1,9 @@ -div - .chat-view - sib-chat( - data-authentication='login', - data-auto-login='true', - data-bosh-service-url=xmpp, - data-debug='false', - data-locales-url='en', - bind-resources - ) +.content-box.full-width.chat-view + sib-chat( + data-authentication='login', + data-auto-login='true', + data-bosh-service-url=xmpp, + data-debug='false', + data-locales-url='en', + bind-resources + ) diff --git a/src/page-member-edit.pug b/src/page-member-edit.pug deleted file mode 100644 index 31aaa9e..0000000 --- a/src/page-member-edit.pug +++ /dev/null @@ -1,96 +0,0 @@ -.form-view - sib-form.block( - data-fields='user.first_name, user.last_name, user.account.picture, bio, groups, phone, skills, website', - widget-user='hdapp-usereditinfo', - range-groups=`${sdn}/groups/`, widget-skills='sib-form-multiple-dropdown', - range-skills=`${sdn}/skills/`, - bind-resources - ) - - #crop-modal - .crop-wrapper - img#crop-preview(src='') - .control-bar - button#cancel-img-cropping.btn.btn-link Annuler - i#rotate-img.fa.fa-undo(aria-hidden='true') - button#crop-img.btn.btn-link Valider - - -//-script. - class LDPFormImgUpload extends SIBWidget { - get template() { - return ` - `; - } - - render() { - store.get(this.value).then( (value) => { - this._value = value; - this.innerHTML = this.template; - }); - } - } - customElements.define("ldp-form-img-upload", LDPFormImgUpload); - widget-avatar="ldp-form-img-upload" - - -//-script. - // Constant declaration - const avatarPreview = document.querySelector("#avatar-preview"); - const avatarInput = document.querySelector("#avatar-input"); - const cropModal = document.querySelector("#crop-modal"); - const cropPreview = cropModal.querySelector("#crop-preview"); - const $cropPreview = $(cropPreview); - - // Triggers cropping on image upload - avatarInput.addEventListener("change", function(e) { - var img = avatarInput.files[0]; - var reader = new FileReader(); - - reader.onloadend = function () { - cropPreview.src = reader.result; - cropModal.classList.add("cropping-mode"); - } - - if (img) { - reader.readAsDataURL(img);//reads the data as a URL - } - }); - cropPreview.addEventListener("load", () => { - $cropPreview.cropper({ - aspectRatio: 1/1, - viewMode: 3, - zoomable: false, - }); - }); - - - // Rotate image - cropModal.querySelector("#rotate-img").addEventListener("click", () => { - $cropPreview.cropper("rotate", -90); - }); - - - // Cancel cropping - cropModal.querySelector("#cancel-img-cropping").addEventListener("click", () => { - closeCropping(); - }); - - // Shortcut - document.querySelector("body").addEventListener("keydown", function(e) { - // Escape key - if (e.keyCode == 27 && cropModal.classList.contains("cropping-mode")) { - closeCropping(); - } - }); - function closeCropping() { - cropModal.classList.remove("cropping-mode"); - avatarInput.value = null; - } - - - // Validating cropping - cropModal.querySelector("#crop-img").addEventListener("click", () => { - avatarPreview.src = $cropPreview.cropper("getCroppedCanvas").toDataURL() - closeCropping(); - }); diff --git a/src/page-members.pug b/src/page-members-directory.pug similarity index 100% rename from src/page-members.pug rename to src/page-members-directory.pug diff --git a/src/page-project-chat.pug b/src/page-project-chat.pug index 59730e7..fdc62b2 100644 --- a/src/page-project-chat.pug +++ b/src/page-project-chat.pug @@ -1,4 +1,4 @@ -.chat-view +.content-box.full-width.chat-view sib-chat( data-authentication='login', data-auto-login='true', diff --git a/src/page-project-create.pug b/src/page-project-create.pug index 4e26997..e954c5a 100644 --- a/src/page-project-create.pug +++ b/src/page-project-create.pug @@ -1,33 +1,33 @@ -.frame-form.full-wide +.content-box.with-form.full-width h1 New project - p.form-goal Here you can create your project, add members and assign them a job. - .form-view - sib-form.block( - data-src=`${sdn}/projects/`, - range-members=`${sdn}/members/`, - range-team=`${sdn}/users/`, + p Here you can create your project, add members and assign them a job. + + sib-form.block( + data-src=`${sdn}/projects/`, + range-members=`${sdn}/members/`, + range-team=`${sdn}/users/`, - data-fields='block-project__info, block-project__fee, block-project__customer', + data-fields='block-project__info, block-project__fee, block-project__customer', - set-block-project__info='customer.name, name, customer.logo, description', - label-customer.name='Customer\'s name', - label-name='Project\'s name', - label-customer.logo='Customer\'s logo', - label-description='Project description', - - set-block-project__fee='fieldset-fee, businessProvider, businessProviderFee', - widget-fieldset-fee='template-legend-fee', - label-businessProvider='Business provider', - label-businessProviderFee='Amount of the contribution', - - set-block-project__customer='fieldset-customer, customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone', - widget-fieldset-customer='template-legend-customer', - label-customer.companyRegister='Company register', - label-customer.address='Address', - label-customer.firstName='Name of the contact at the customer\'s premises', - label-customer.lastName='Firstname of the contact at the customer\'s premises', - label-customer.role='Role within the company', - label-customer.email='Email', - label-customer.phone='Phone' - ) + set-block-project__info='customer.name, name, customer.logo, description', + label-customer.name='Customer\'s name', + label-name='Project\'s name', + label-customer.logo='Customer\'s logo', + label-description='Project description', + + set-block-project__fee='fieldset-fee, businessProvider, businessProviderFee', + widget-fieldset-fee='hd-template-project-title', + label-businessProvider='Business provider', + label-businessProviderFee='Amount of the contribution', + + set-block-project__customer='fieldset-customer, customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone', + widget-fieldset-customer='hd-template-project-title', + label-customer.companyRegister='Company register', + label-customer.address='Address', + label-customer.firstName='Name of the contact at the customer\'s premises', + label-customer.lastName='Firstname of the contact at the customer\'s premises', + label-customer.role='Role within the company', + label-customer.email='Email', + label-customer.phone='Phone' + ) \ No newline at end of file diff --git a/src/page-project-edit.pug b/src/page-project-edit.pug index 7849547..3038890 100644 --- a/src/page-project-edit.pug +++ b/src/page-project-edit.pug @@ -1,59 +1,59 @@ -sib-widget(name='template-legend-team') - template - span ${label} -sib-widget(name='template-members') - template - - sib-form.team.is-horizontal( - naked, - data-src='${id}', - data-fields='user.name, name', - range-user.name=`${sdn}/users/`, - class-name='field', - class-user.name='field', - label-name='Role', - label-user.name='Member(s)', - ) - -.frame-form.full-wide +.content-box.with-form.full-width h1 Edit your project - p.form-goal Here you can edit your projet's details - .form-view - sib-form.block( - data-fields='block-project__info, block-project__fee, block-project__customer, block-project__team', + p Here you can edit your projet's details - set-block-project__info='customer.name, name, customer.logo, description', - label-customer.name='Customer\'s name', - label-name='Project\'s name', - label-customer.logo='Customer\'s logo', - label-description='Project description', - - set-block-project__fee='fieldset-fee, businessProvider, businessProvider.fee', - range-businessProvider=`${sdn}/businessproviders/`, - label-businessProvider='Business provider', - label-businessProvider.fee='Amount of the contribution (%)', - widget-fieldset-fee='template-legend-team', - widget-businessProvider.fee='sib-form-number', - label-fieldset-fee='Fee', - - set-block-project__customer='fieldset-customer, customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone', - label-customer.companyRegister='Company registration number', - label-customer.address='Address', - label-customer.firstName='Name of the contact at the customer\'s premises', - label-customer.lastName='Firstname of the contact at the customer\'s premises', - label-customer.role='Role within the company', - label-customer.email='Email', - label-customer.phone='Phone', - widget-fieldset-customer='template-legend-team', - label-fieldset-customer='Customer information', + sib-widget(name='hd-template-project-title') + template + span ${label} - set-block-project__team='fieldset-team, members', - label-fieldset-team='The team', - widget-fieldset-team='template-legend-team', - widget-members='template-members', - multiple-members, + sib-widget(name='template-members') + template + sib-form.team.is-horizontal( + naked, + data-src='${id}', + data-fields='user.name, name', + range-user.name=`${sdn}/users/`, + class-name='field', + class-user.name='field', + label-name='Role', + label-user.name='Member(s)', + ) - bind-resources - ) + sib-form.block( + data-fields='block-project__info, block-project__fee, block-project__customer, block-project__team', + + set-block-project__info='customer.name, name, customer.logo, description', + label-customer.name='Customer\'s name', + label-name='Project\'s name', + label-customer.logo='Customer\'s logo', + label-description='Project description', + + set-block-project__fee='fieldset-fee, businessProvider, businessProvider.fee', + range-businessProvider=`${sdn}/businessproviders/`, + label-businessProvider='Business provider', + label-businessProvider.fee='Amount of the contribution (%)', + widget-fieldset-fee='hd-template-project-title', + widget-businessProvider.fee='sib-form-number', + label-fieldset-fee='Fee', + + set-block-project__customer='fieldset-customer, customer.companyRegister, customer.address, customer.firstName, customer.lastName, customer.role, customer.email, customer.phone', + label-customer.companyRegister='Company registration number', + label-customer.address='Address', + label-customer.firstName='Name of the contact at the customer\'s premises', + label-customer.lastName='Firstname of the contact at the customer\'s premises', + label-customer.role='Role within the company', + label-customer.email='Email', + label-customer.phone='Phone', + widget-fieldset-customer='hd-template-project-title', + label-fieldset-customer='Customer information', + + set-block-project__team='fieldset-team, members', + label-fieldset-team='The team', + widget-fieldset-team='hd-template-project-title', + widget-members='template-members', + multiple-members, + + bind-resources + ) diff --git a/src/page-project-profile.pug b/src/page-project-profile.pug index 7330f28..fb8cf93 100644 --- a/src/page-project-profile.pug +++ b/src/page-project-profile.pug @@ -1,4 +1,4 @@ -.frame-form.full-wide +.content-box.full-width include templates/template-business-provider.pug include templates/template-customer.pug diff --git a/src/page-projects.pug b/src/page-projects.pug deleted file mode 100644 index 4490ae2..0000000 --- a/src/page-projects.pug +++ /dev/null @@ -1,10 +0,0 @@ -//#projects -div - h1 Projects - sib-display( - data-src=`${sdn}/projects/`, - data-fields='phone, customer, name', - widget-customer='hdapp-client', - search-fields='phone, name', - next='project' - ) diff --git a/src/styles/_index.scss b/src/styles/_index.scss index e8c7a32..7da5802 100644 --- a/src/styles/_index.scss +++ b/src/styles/_index.scss @@ -1,17 +1,21 @@ @charset "UTF-8"; @import '../../node_modules/include-media/dist/include-media'; +@import '../../node_modules/normalize.css/normalize'; @import 'abstracts/variables'; @import 'abstracts/mixins'; @import 'components/icons/index'; @import 'base/main'; -@import 'components/index'; -main#mainContainer { +div#viewport { + display: flex; + flex-grow: 1; + flex-shrink: 1; + overflow-y: auto; + @import 'components/index'; @import 'layout/members/index'; @import 'layout/job-offers/index'; @import 'layout/project-profile/index'; @import 'layout/circle-profile/index'; - @import 'layout/member-chat/index'; } diff --git a/src/styles/abstracts/_mixins.scss b/src/styles/abstracts/_mixins.scss index 31cde50..741219e 100644 --- a/src/styles/abstracts/_mixins.scss +++ b/src/styles/abstracts/_mixins.scss @@ -1,24 +1,4 @@ -@mixin style-template-fieldset($name: 'default') { - template-legend-#{$name} { - border-bottom: 1px solid $color-221-51-90; - color: $color-233-18-29; - font-size: 1.8rem; - font-weight: 600; - padding-bottom: 1rem; - } -} - @mixin window-style-modal($background: $color-0-0-100, $shadow: hsla(212, 7%, 55%, 0.19)) { box-shadow: 0 0 8px 0 $shadow; background-color: $background; -} - -%user-role { - border: 1px solid $color-45-95-54; - border-radius: 3px; - color: $color-210-4-50; - font-size: 1.4rem; - font-weight: 400; - margin-right: 0.4rem; - padding: calc(1.6rem - 0.8em) 0.7em; } \ No newline at end of file diff --git a/src/styles/base/_compat.scss b/src/styles/base/_compat.scss index 8a31961..4a5b345 100644 --- a/src/styles/base/_compat.scss +++ b/src/styles/base/_compat.scss @@ -1,4 +1,4 @@ -.grid-layer { +%grid-layer { display: grid; font-size: 16px; grid-template-columns: [start]auto[middle]25%[end]; @@ -11,7 +11,7 @@ align-items: stretch; } -.grid-layer-main { +%grid-layer-main { @extend %flex-grid-layer; grid-column-start: start; grid-column-end: end; @@ -19,7 +19,7 @@ grid-row-end: end; } -.grid-layer-links { +%grid-layer-links { @extend %flex-grid-layer; grid-column-start: middle; grid-column-end: end; @@ -27,47 +27,8 @@ grid-row-end: middle; } -.containerH { - display: flex; - flex-wrap: wrap; -} - -.containerV { +%containerV { display: flex; flex-direction: column; align-items: stretch; -} - -.grow { - flex-grow: 1; - flex-shrink: 1; -} - -.fix { - flex-grow: 0; - flex-shrink: 0; -} - -.containerCenter { - justify-content: center; - align-items: center; -} - -.reverse { - flex-direction: row-reverse; -} - -.row { - display: flex; - max-width: 100%; -} - -.content { - flex-direction: row; - height: 100%; - overflow: hidden; -} - -.col { - min-width: 0; } \ No newline at end of file diff --git a/src/styles/base/form.scss b/src/styles/base/form.scss new file mode 100644 index 0000000..c0e8006 --- /dev/null +++ b/src/styles/base/form.scss @@ -0,0 +1,294 @@ +.content-box { + + &.with-form { + + hd-template-project-title { + border-bottom: 1px solid $color-221-51-90; + color: $color-233-18-29; + font-size: 1.8rem; + font-weight: 600; + padding-bottom: 1rem; + } + + sib-form { + border-bottom: 1px solid $color-210-17-91; + padding-bottom: 2.55rem; + } + + h1 { + color: $color-233-18-29; + font-weight: bold; + font-size: 2rem; + text-align: center; + } + + p:first-child { + margin-bottom: 6.8rem; + text-align: center; + } + + [name$='-text'] { + font-size: 1.5rem; + margin-bottom: 2em; + } + + div[name^='block-'] { + display: flex; + flex-direction: column; + } + + input { + -webkit-appearance: none; + align-items: center; + background: $color-222-57-95; + border: none; + color: $color-233-18-29; + display: inline-flex; + justify-content: flex-start; + line-height: 1.5; + vertical-align: top; + } + + sib-form-auto-completion, + sib-form-checkbox, + sib-form-dropdown, + sib-form-label-text, + sib-form-multiple-dropdown, + sib-form-number, + sib-form-textarea { + display: flex; + flex-direction: column; + + >label { + color: $color-244-10-70; + font-weight: 600; + margin: 2em 0 0.5em; + text-transform: uppercase; + + >div { + padding-bottom: 1rem; + } + } + + select, + textarea { + background: $color-222-57-95; + border: none; + color: $color-233-18-29; + line-height: 1.5; + width: 100%; + + } + + select, + textarea { + padding: 1.7rem; + } + + select { + margin-bottom: 1.7rem; + } + } + + sib-form-auto-completion, + sib-form-checkbox, + sib-form-multiple-dropdown { + + label { + color: $color-216-4-22; + font-weight: 600; + text-transform: initial; + } + } + + sib-form-auto-completion { + + div.choices__inner { + background-color: inherit; + border: none; + display: flex; + flex-direction: column-reverse; + padding-left: 0; + + div.choices__list { + margin-top: 1.7rem; + + div.choices__item { + + button.choices__button { + border-left: 1px solid $color-43-100-50; + opacity: 1; + padding-left: 0; + } + } + } + + input[type='text'].choices__input { + max-width: 27.2rem; + min-width: 27.2rem; + } + } + } + + sib-form-checkbox { + flex-direction: row; + + [type='checkbox'] { + position: relative; + margin-top: 2em; + + &:before { + border: 2px solid $color-210-5-56; + content: ''; + height: 1rem; + left: 0; + margin-left: 1rem; + padding-bottom: 0.2rem; + position: absolute; + width: 1.2rem; + z-index: 1; + } + + &:checked { + &:before { + border: 2px solid $color-210-5-56; + color: $color-244-73-62; + height: 1rem; + left: 0; + margin-left: 1rem; + padding-bottom: 0.2rem; + position: absolute; + width: 1.2rem; + z-index: 1; + @include mdi('check'); + } + } + + &:after { + background: $color-0-0-100; + content: ''; + height: 1rem; + position: absolute; + width: 1rem; + } + } + } + + sib-form-dropdown { + + select { + appearance: none; + -moz-appearance: none; + -webkit-appearance: none; + background-image: url("/images/chevron-down.png"); + background-position: right 12px top 60%; + background-repeat: no-repeat; + background-size: 14px 9px; + box-sizing: border-box; + } + } + + /* A REFACTORISER. PAS ENCORE UTILISE SUR L'APPLI */ + + sib-form-multiple-dropdown { + + button { + appearance: none; + background-color: $color-0-0-100; + border: 1px solid; + border-radius: 100%; + color: $color-244-73-62; + font-size: 2.55rem; + height: 1em; + line-height: 0; + margin: 0.34rem; + padding: 0 0.04em 0.08em; + vertical-align: middle; + width: 1em; + } + } + + sib-form-textarea { + align-items: stretch; + } + + sib-multiple-form { + + >label { + display: none; + } + } + + input[type='submit'] { + margin-top: 6rem; + background-color: $color-233-18-29; + color: $color-0-0-100; + float: right; + font-weight: bold; + text-transform: uppercase; + } + } + + .is-horizontal { + display: flex; + } + + sib-multiple-form[name='members'] { + + >div { + align-items: center; + display: flex; + } + + >div:not(:nth-child(-n + 2)) { + + label { + + >div { + display: none; + } + } + } + + button { + appearance: none; + background-color: $color-0-0-100; + border: 1px solid; + border-radius: 100%; + color: $color-244-73-62; + font-size: 2.55rem; + height: 1em; + line-height: 0; + margin: 0.34rem; + padding: 0 0.04em 0.08em; + vertical-align: middle; + width: 1em; + + &::after { + content: Add; + } + } + } +} +sib-form { + + form > * { + margin-top: 0.85rem; + } + + // button like + input[type='color'], + input[type='file'], + input[type='reset'], + input[type='submit'] { + display: inline-block; + padding: 0.85rem 2.55rem; + border: none; + border-radius: 100em; + font-weight: normal; + } + + input[type='reset'] { + display: none; + } +} \ No newline at end of file diff --git a/src/styles/components/header.scss b/src/styles/base/header.scss similarity index 98% rename from src/styles/components/header.scss rename to src/styles/base/header.scss index 95b7238..c9bafca 100644 --- a/src/styles/components/header.scss +++ b/src/styles/base/header.scss @@ -1,5 +1,6 @@ - #header { + max-height: 51px; + height: 51px; align-items: center; background-color: $color-0-0-100; color: $color-216-4-22; diff --git a/src/styles/base/main.scss b/src/styles/base/main.scss index c4d2251..b27746a 100644 --- a/src/styles/base/main.scss +++ b/src/styles/base/main.scss @@ -23,6 +23,14 @@ $breakpoints: (phone: 480px, height: 100vh; overflow: hidden; } + + main { + display: flex; + flex-direction: row; + height: 100%; + max-width: 100%; + overflow: hidden; + } } img { @@ -76,39 +84,60 @@ button { padding: 0; } +sib-route, +sib-link, +button, +input, +a { + cursor: pointer; + &:hover, + &:link, + &:active { + cursor: pointer; + } +} + %padding-main { padding: 5rem; } -.padded-width { - flex: 1; - @extend %padding-main; -} - -.frame { +.content-box { @include window-style-modal(); @extend %padding-main; display: flex; flex-direction: column; flex-grow: 1; margin: 2rem 1rem 5rem 2rem; + + &.full-width { + background: $color-0-0-100; + flex: 1; + font-size: 1.5rem; + margin: 0 auto; + min-height: calc(100vh - 84px); + } } -/* Dividing into columns */ -@mixin respond-to($breakpoint) { +.backlink { + font-size: 1.5rem; + margin: 2rem 0 0 2rem; + @include icon('arrow-left-circle'); + color: #3d4057; + text-decoration: underline; - @if map-has-key($breakpoints, $breakpoint) { - - @media (min-width: map-get($breakpoints, $breakpoint)) { - @content; - } + &::before { + text-decoration: none; } - @else { - @warn "Sorry, no value could be retrieved from `#{$breakpoint}`." - +"Available breakpoints are: #{map-keys($breakpoints)}."; + &::before { + font-size: 2rem; + margin-right: 1rem; } } // Compatibility layer for non-updated components @import 'compat'; +// Other base components +@import 'form'; +@import 'header'; +@import 'menu-left'; \ No newline at end of file diff --git a/src/styles/components/menu-left.scss b/src/styles/base/menu-left.scss similarity index 99% rename from src/styles/components/menu-left.scss rename to src/styles/base/menu-left.scss index 5e44ee6..4f10076 100644 --- a/src/styles/components/menu-left.scss +++ b/src/styles/base/menu-left.scss @@ -1,4 +1,4 @@ -#navbar { +#main__menu { background-color: $color-233-18-29; color: $color-0-0-100; display: block; diff --git a/src/styles/components/_index.scss b/src/styles/components/_index.scss index b9c8a25..ee78562 100644 --- a/src/styles/components/_index.scss +++ b/src/styles/components/_index.scss @@ -1,8 +1,6 @@ -@import 'form'; -@import 'content'; +@import 'chat'; @import 'filters'; @import 'howto'; -@import 'header'; -@import 'menu-left'; -@import 'menu-right'; -@import 'skills'; \ No newline at end of file +@import 'sidebar'; +@import 'skills'; +@import 'user-role'; \ No newline at end of file diff --git a/src/styles/components/chat.scss b/src/styles/components/chat.scss new file mode 100644 index 0000000..bfc68a3 --- /dev/null +++ b/src/styles/components/chat.scss @@ -0,0 +1,15 @@ + +// chat + +.chat-view { + padding: 1.7rem; + height: calc(100vh - 84px); + + > sib-chat { + position: absolute; + top: 0; + left: 0; + right: 0; + } +} + diff --git a/src/styles/components/content.scss b/src/styles/components/content.scss deleted file mode 100644 index 762cec9..0000000 --- a/src/styles/components/content.scss +++ /dev/null @@ -1,114 +0,0 @@ -.backlink { - font-size: 1.5rem; - margin: 2rem 0 0 2rem; - @include icon('arrow-left-circle'); - color: #3d4057; - text-decoration: underline; - - &::before { - text-decoration: none; - } - - &::before { - font-size: 2rem; - margin-right: 1rem; - } -} - -sib-route, -sib-link { - cursor: pointer; -} - -// group - -#group-profile { - sib-display-div[name='name'] div { - @extend h1; - } - - sib-display-div[name='label-description'] div { - @extend h2; - } -} -// chat - -.chat-view { - padding: 1.7rem; - position: relative; - z-index: 0; - @include window-style-modal(); - height: calc(100vh - 104px); - - > sib-chat { - position: absolute; - top: 0; - left: 0; - right: 0; - } -} - -#member-profile { - @include media('width>tablet') { - div[name='header'] { - float: left; - width: 50%; - } - } - - div[name='name'] { - @extend h1; - - div { - display: inline-block; - margin-right: 0.7rem; - } - } - - sib-link[next='member-chat'] { - border-style: solid; - display: flex; - border-radius: 25px; - border-style: solid; - border-color: $color-244-73-62; - color: $color-244-73-62; - padding: 1.7rem; - text-decoration:none; - } - - div[name='pseudonym'] { - margin-top: -1.7rem; - margin-bottom: 1.7rem; - } - - #member-info { - &:after { - content: ''; - display: block; - clear: both; - } - } -} - -sib-form { - - form > * { - margin-top: 0.85rem; - } - - // button like - input[type='color'], - input[type='file'], - input[type='reset'], - input[type='submit'] { - display: inline-block; - padding: 0.85rem 2.55rem; - border: none; - border-radius: 100em; - font-weight: normal; - } - - input[type='reset'] { - display: none; - } -} diff --git a/src/styles/components/form.scss b/src/styles/components/form.scss deleted file mode 100644 index add6ffd..0000000 --- a/src/styles/components/form.scss +++ /dev/null @@ -1,297 +0,0 @@ -@include style-template-fieldset('fee'); -@include style-template-fieldset('customer'); -@include style-template-fieldset('team'); - -.frame-form { - &.full-wide { - display: flex; - flex: 1; - font-size: 1.5rem; - flex-direction: column; - margin: 0 auto; - min-height: 100vh; - padding: 6.8rem 8.5rem 10.2rem; - background: $color-0-0-100; - } - - .form-view { - border-bottom: 1px solid $color-210-17-91; - padding-bottom: 2.55rem; - } - - h1 { - color: $color-233-18-29; - font-weight: bold; - font-size: 2rem; - text-align: center; - } - - p.form-goal { - margin-bottom: 6.8rem; - text-align: center; - } - - [name$='-text'] { - font-size: 1.5rem; - margin-bottom: 2em; - } - - div[name^='block-'] { - display: flex; - flex-direction: column; - } - - input { - -webkit-appearance: none; - align-items: center; - background: $color-222-57-95; - border: none; - color: $color-233-18-29; - display: inline-flex; - justify-content: flex-start; - line-height: 1.5; - vertical-align: top; - } - - sib-form-auto-completion, - sib-form-checkbox, - sib-form-dropdown, - sib-form-label-text, - sib-form-multiple-dropdown, - sib-form-number, - sib-form-textarea { - display: flex; - flex-direction: column; - - > label { - color: $color-244-10-70; - font-weight: 600; - margin: 2em 0 0.5em; - text-transform: uppercase; - - > div { - padding-bottom: 1rem; - } - } - - select, - textarea { - background: $color-222-57-95; - border: none; - color: $color-233-18-29; - line-height: 1.5; - width: 100%; - - } - - select, - textarea { - padding: 1.7rem; - } - - select { - margin-bottom: 1.7rem; - } - } - - sib-form-auto-completion, - sib-form-checkbox, - sib-form-multiple-dropdown { - - label { - color: $color-216-4-22; - font-weight: 600; - text-transform: initial; - } - } - - sib-form-auto-completion { - - div.choices__inner { - background-color: inherit; - border: none; - display: flex; - flex-direction: column-reverse; - padding-left: 0; - - div.choices__list { - margin-top: 1.7rem; - - div.choices__item { - /*@extend %skill;*/ - - button.choices__button { - border-left: 1px solid $color-43-100-50; - opacity: 1; - padding-left: 0; - } - } - } - - input[type='text'].choices__input { - max-width: 27.2rem; - min-width: 27.2rem; - } - } - } - - sib-form-checkbox { - flex-direction: row; - - [type='checkbox'] { - cursor: pointer; - position: relative; - margin-top: 2em; - - &:before { - border: 2px solid $color-210-5-56; - content: ''; - height: 1rem; - left: 0; - margin-left: 1rem; - padding-bottom: 0.2rem; - position: absolute; - width: 1.2rem; - z-index: 1; - } - - &:checked { - &:before { - border: 2px solid $color-210-5-56; - color: $color-244-73-62; - height: 1rem; - left: 0; - margin-left: 1rem; - padding-bottom: 0.2rem; - position: absolute; - width: 1.2rem; - z-index: 1; - @include mdi('check'); - } - } - - &:after { - background: $color-0-0-100; - content: ''; - height: 1rem; - position: absolute; - width: 1rem; - } - } - } - - sib-form-dropdown { - - select { - appearance: none; - -moz-appearance: none; - -webkit-appearance: none; - background-image: url("/images/chevron-down.png"); - background-position: right 12px top 60%; - background-repeat: no-repeat; - background-size: 14px 9px; - box-sizing: border-box; - } - } - - /* A REFACTORISER. PAS ENCORE UTILISE SUR L'APPLI */ - - sib-form-multiple-dropdown { - - button { - appearance: none; - background-color: $color-0-0-100; - border: 1px solid; - border-radius: 100%; - color: $color-244-73-62; - cursor: pointer; - font-size: 2.55rem; - height: 1em; - line-height: 0; - margin: 0.34rem; - padding: 0 0.04em 0.08em; - vertical-align: middle; - width: 1em; - } - } - - sib-form-textarea { - align-items: stretch; - } - - sib-multiple-form { - - > label { - display: none; - } - } - - input[type='submit'] { - margin-top: 6rem; - background-color: $color-233-18-29; - color: $color-0-0-100; - float: right; - font-weight: bold; - text-transform: uppercase; - } -} - -#project-create, -#project-edit { - - input, - textarea { - margin-bottom: 3.4rem; - } -} - -.is-horizontal { - display: flex; -} - -.field { - margin-right: 0.75rem; - max-width: 50%; -} - -.is-expanded { - flex-grow: 1; -} - -sib-multiple-form[name='members'] { - - > div { - align-items: center; - display: flex; - } - - > div:not(:nth-child(-n + 2)) { - - label { - - > div { - display: none; - } - } - } - - button { - appearance: none; - background-color: $color-0-0-100; - border: 1px solid; - border-radius: 100%; - color: $color-244-73-62; - cursor: pointer; - font-size: 2.55rem; - height: 1em; - line-height: 0; - margin: 0.34rem; - padding: 0 0.04em 0.08em; - vertical-align: middle; - width: 1em; - - &::after { - content: Add; - } - } -} diff --git a/src/styles/components/menu-right.scss b/src/styles/components/menu-right.scss deleted file mode 100644 index ae75eed..0000000 --- a/src/styles/components/menu-right.scss +++ /dev/null @@ -1,113 +0,0 @@ -#mainContainer { - display: flex; - flex-grow: 1; - flex-shrink: 1; - overflow-y: auto; - - - >div#project, - >div#circle { - flex-grow: 1; - display: flex; - flex-direction: row-reverse; - align-items: stretch; - overflow-x: hidden; - - .views-container { - flex: 1 0 0; - overflow-y: auto; - } - - >div { - transition: all 0.5s; - } - } - - >div { - - nav { - transition: all 0.5s; - - >sib-router { - background-color: $color-222-52-90; - color: $color-233-18-29; - flex: 0 0 auto; - font-weight: 600; - - >ul { - cursor: pointer; - list-style: none; - margin: 0; - padding-left: 0; - - li { - align-items: center; - border-bottom: 1px solid $color-229-25-79; - display: flex; - margin: 0; - padding: 2.55rem 2.55rem; - position: relative; - width: 12em; - - &::before { - float: left; - font-size: 4rem; - margin-left: 0; - margin-right: 2.55rem; - } - } - - >li { - @include icon('arrow-right-circle'); - } - - >sib-route { - - &[active] { - background-color: $color-233-18-29; - color: $color-46-100-67; - display: inline-block; - } - - &[name^='circle'], - &[name^='project'] { - - >li::before { - font-size: 4rem; - } - } - - &[name$='chat']>li { - @include ci('chat'); - } - - &[name$='create']>li { - @include ci('offer'); - } - - &[name$='edit']>li { - @include ci('list'); - } - - &[name$='profile']>li { - @include ci('information'); - } - } - } - } - - &.offsite-is-closed { - transform: translate(15.5rem); - - & .jsOffsiteToggle::before { - transform: rotate(180deg); - } - - &~.views-container { - margin-left: -15.5rem; - transform: translate(15.5rem); - } - } - } - } -} \ No newline at end of file diff --git a/src/styles/components/sidebar.scss b/src/styles/components/sidebar.scss new file mode 100644 index 0000000..872aaae --- /dev/null +++ b/src/styles/components/sidebar.scss @@ -0,0 +1,106 @@ +.no-sidebar { + flex: 1; + @extend %padding-main; +} + +.with-sidebar { + flex-grow: 1; + display: flex; + flex-direction: row-reverse; + align-items: stretch; + overflow-x: hidden; + + .views-container { + flex: 1 0 0; + overflow-y: auto; + } + + >div { + transition: all 0.5s; + } + + nav { + transition: all 0.5s; + + >sib-router { + background-color: $color-222-52-90; + color: $color-233-18-29; + flex: 0 0 auto; + font-weight: 600; + + >ul { + cursor: pointer; + list-style: none; + margin: 0; + padding-left: 0; + + li { + align-items: center; + border-bottom: 1px solid $color-229-25-79; + display: flex; + margin: 0; + padding: 2.55rem 2.55rem; + position: relative; + width: 12em; + + &::before { + float: left; + font-size: 4rem; + margin-left: 0; + margin-right: 2.55rem; + } + } + + >li { + @include icon('arrow-right-circle'); + } + + >sib-route { + + &[active] { + background-color: $color-233-18-29; + color: $color-46-100-67; + display: inline-block; + } + + &[name^='circle'], + &[name^='project'] { + + >li::before { + font-size: 4rem; + } + } + + &[name$='chat']>li { + @include ci('chat'); + } + + &[name$='create']>li { + @include ci('offer'); + } + + &[name$='edit']>li { + @include ci('list'); + } + + &[name$='profile']>li { + @include ci('information'); + } + } + } + } + + &.offsite-is-closed { + transform: translate(15.5rem); + + & .jsOffsiteToggle::before { + transform: rotate(180deg); + } + + &~.views-container { + margin-left: -15.5rem; + transform: translate(15.5rem); + } + } + } +} \ No newline at end of file diff --git a/src/styles/components/skills.scss b/src/styles/components/skills.scss index 48bbbae..a526548 100644 --- a/src/styles/components/skills.scss +++ b/src/styles/components/skills.scss @@ -1,5 +1,3 @@ -/* TEMPLATE SKILLS*/ - sib-multiple[name*='skills'] { display: flex; flex-wrap: wrap; diff --git a/src/styles/components/user-role.scss b/src/styles/components/user-role.scss new file mode 100644 index 0000000..fed7680 --- /dev/null +++ b/src/styles/components/user-role.scss @@ -0,0 +1,9 @@ +%user-role { + border: 1px solid $color-45-95-54; + border-radius: 3px; + color: $color-210-4-50; + font-size: 1.4rem; + font-weight: 400; + margin-right: 0.4rem; + padding: calc(1.6rem - 0.8em) 0.7em; + } \ No newline at end of file diff --git a/src/styles/layout/circle-profile/circle-profile.scss b/src/styles/layout/circle-profile/circle-profile.scss index 882ce86..94d0bbf 100644 --- a/src/styles/layout/circle-profile/circle-profile.scss +++ b/src/styles/layout/circle-profile/circle-profile.scss @@ -1,5 +1,4 @@ #circle-profile { - min-height: 100%; .block-group > div { display: flex; diff --git a/src/styles/layout/job-offers/job-offers.scss b/src/styles/layout/job-offers/job-offers.scss index 42858a7..186b446 100644 --- a/src/styles/layout/job-offers/job-offers.scss +++ b/src/styles/layout/job-offers/job-offers.scss @@ -1,3 +1,17 @@ +.job-offers__main { + @extend %grid-layer; +} + +.job-offers__content { + @extend %grid-layer-main; + @extend %containerV; +} + +.job-offers__newoffer { + @extend %grid-layer-links; + @extend %containerV; +} + #job-offers { .plus-button { @@ -21,7 +35,7 @@ } #offers-list { - @extend .grid-layer; + @extend %grid-layer; >sib-form { grid-column-start: start; @@ -46,9 +60,6 @@ font-size: 1.5rem; margin: 1.7rem 0; padding: 3.4rem; - /*&:nth-child(odd) { - background-color: $color-210-25-95; - }*/ [name='user-thumb'] { align-items: center; diff --git a/src/styles/layout/member-chat/_index.scss b/src/styles/layout/member-chat/_index.scss deleted file mode 100644 index 5f2bf8f..0000000 --- a/src/styles/layout/member-chat/_index.scss +++ /dev/null @@ -1 +0,0 @@ -@import 'member-chat.scss'; \ No newline at end of file diff --git a/src/styles/layout/member-chat/member-chat.scss b/src/styles/layout/member-chat/member-chat.scss deleted file mode 100644 index bd679dc..0000000 --- a/src/styles/layout/member-chat/member-chat.scss +++ /dev/null @@ -1,3 +0,0 @@ -#member-chat { - width: 100%; -} \ No newline at end of file diff --git a/src/styles/layout/members/members.scss b/src/styles/layout/members/members.scss index 40a52b1..e430fbb 100644 --- a/src/styles/layout/members/members.scss +++ b/src/styles/layout/members/members.scss @@ -35,26 +35,11 @@ member-info-groups { @extend %user-role; } -.how-link { - @extend .howto; - background-color: $color-0-0-100; - color: $color-216-4-22; - flex-wrap: nowrap; - .icon-idea { - background-color: $color-46-100-67; - border-radius: 100%; - justify-content: center; - margin-right: 1.2rem; - width: 1.8em; - height: 1.8em; - } -} - #members-list { - @extend .grid-layer; + @extend %grid-layer; #members-list__content { - @extend .grid-layer; + @extend %grid-layer; nav { align-items: center; @@ -194,7 +179,6 @@ member-info-groups { [name='user.name'] { font-weight: bold; - margin: 0; @extend h1; } diff --git a/src/styles/layout/project-profile/project-profile.scss b/src/styles/layout/project-profile/project-profile.scss index d81d61c..67adc47 100644 --- a/src/styles/layout/project-profile/project-profile.scss +++ b/src/styles/layout/project-profile/project-profile.scss @@ -1,8 +1,8 @@ #project-profile { - + [name^='block-']:not([name='block-title']) { margin-top: 5.1rem; - + [name^='label-'] { display: block; font-weight: bold; @@ -10,7 +10,7 @@ text-transform: uppercase; @extend h2; } - + sib-display-value:not(:first-of-type), ul, [name*='job'] { @@ -22,23 +22,23 @@ border-bottom: 1px solid $color-221-51-90; display: flex; padding-bottom: 3.4rem; - - > * { + + >* { color: $color-216-4-22; font-size: 2rem; font-weight: bold; padding-right: 0.85rem; text-transform: uppercase; } - - > [name^='const-'] { + + >[name^='const-'] { padding: 0; } - > sib-display-value[name='name'] { + >sib-display-value[name='name'] { padding-left: 0.85rem; } - + > :nth-child(5) { color: $color-233-18-29; font-weight: normal; @@ -66,7 +66,7 @@ flex-direction: column; width: 90%; } - + [name='block-logo'] { box-sizing: border-box; display: block; @@ -78,162 +78,163 @@ } [name='businessProvider'] { - + ul { list-style: none; padding-left: 0; li { - + &:first-child { margin-bottom: 0.5em; } - + span { font-weight: bold; } } } } -} -#clientBox { - display: flex; - margin-left: auto; - margin-right: auto; - margin-top: 1.7rem; - max-width: 100%; + #clientBox { + display: flex; + margin-left: auto; + margin-right: auto; + margin-top: 1.7rem; + max-width: 100%; - > * { - border: 1px solid $color-221-51-90; - flex: 1 1 auto; - justify-content: space-between; - margin: 0 -0.1rem -0.1rem 0; - min-width: 25vw; - padding: 0; + >* { + border: 1px solid $color-221-51-90; + flex: 1 1 auto; + justify-content: space-between; + margin: 0 -0.1rem -0.1rem 0; + min-width: 25vw; + padding: 0; - h5 { - margin-left: 2rem; - margin-top: 2rem; - } - - ul { - font-size: 1.5rem; - list-style: none; - margin: -2.04rem 0 3.74rem -2.04rem; - - li { - - span { - font-weight: bold; - } + h5 { + margin-left: 2rem; + margin-top: 2rem; } - } - &:first-child { - li { - - span { - margin-right: 0.3em; - } + ul { + font-size: 1.5rem; + list-style: none; + margin: -2.04rem 0 3.74rem -2.04rem; - &:first-child { - margin-bottom: 0.5em; - } + li { - &:last-child { - margin-top: 2.4em; - } - } - } - - &:not(:first-child) { - padding-left: 5.1rem; - - li { - margin-bottom: 1.7rem; - - &:last-child { - margin-top: 2.2rem; - } - - &::before { - color: $color-43-100-50; - font-size: 2.2rem; - padding: 0 1rem 0 0; - } - } - } - } -} - -[name='block-team'] { - - > sib-multiple { - - label { - display: none; - } - - > team-template[name='members'] { - display: grid; - grid-column-gap: 1.6rem; - grid-template-columns: 7vh auto; - grid-template-rows: repeat(2, 5.2vh); - - > sib-display:first-child { - align-self: center; - grid-column: 1 / span 1; - grid-row: 1 / span 2; - - div { - background-color: $color-0-0-100; - border-radius: 50%; - height: 7vh; - overflow: hidden; - position: relative; - width: 7vh; - - img { - height: 100%; - left: 0; - object-fit: cover; - position: absolute; - top: 0; - width: 100%; + span { + font-weight: bold; } } } - > div:nth-child(2) { - align-self: end; - display: flex; - grid-column: 2 / span 1; - grid-row: 1 / span 1; + &:first-child { + li { - span { - align-self: center; - font-weight: 600; + span { + margin-right: 0.3em; + } + + &:first-child { + margin-bottom: 0.5em; + } + + &:last-child { + margin-top: 2.4em; + } } + } - span ~ sib-display { - - > div { - display: flex; - margin-left: 1rem; - - sib-multiple [name='name'] { - @extend %user-role; + &:not(:first-child) { + padding-left: 5.1rem; + + li { + margin-bottom: 1.7rem; + + &:last-child { + margin-top: 2.2rem; + } + + &::before { + color: $color-43-100-50; + font-size: 2.2rem; + padding: 0 1rem 0 0; + } + } + } + } + } + + [name='block-team'] { + + >sib-multiple { + + label { + display: none; + } + + >team-template[name='members'] { + display: grid; + grid-column-gap: 1.6rem; + grid-template-columns: 7vh auto; + grid-template-rows: repeat(2, 5.2vh); + + >sib-display:first-child { + align-self: center; + grid-column: 1 / span 1; + grid-row: 1 / span 2; + + div { + background-color: $color-0-0-100; + border-radius: 50%; + height: 7vh; + overflow: hidden; + position: relative; + width: 7vh; + + img { + height: 100%; + left: 0; + object-fit: cover; + position: absolute; + top: 0; + width: 100%; } } } - } - > span:nth-child(3) { - align-self: start; - grid-column: 2 / span 1; - grid-row: 2 / span 1; + >div:nth-child(2) { + align-self: end; + display: flex; + grid-column: 2 / span 1; + grid-row: 1 / span 1; + + span { + align-self: center; + font-weight: 600; + } + + span~sib-display { + + >div { + display: flex; + margin-left: 1rem; + + sib-multiple [name='name'] { + @extend %user-role; + } + } + } + } + + >span:nth-child(3) { + align-self: start; + grid-column: 2 / span 1; + grid-row: 2 / span 1; + } } } } -} + +} \ No newline at end of file From 9d26dd59548b062906203df72bdd6e14a4eb065d Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Pasquier Date: Tue, 14 May 2019 18:19:30 +0200 Subject: [PATCH 13/13] css: refactoring & fixing - finalized --- src/dependencies.pug | 6 +++--- src/index.pug | 2 +- src/page-circle.pug | 20 ++++++++++---------- src/page-job-offer-create.pug | 2 +- src/page-project.pug | 20 ++++++++++---------- src/scripts/index.js | 8 +++++--- src/styles/base/form.scss | 2 +- src/styles/base/main.scss | 4 ++++ src/styles/components/chat.scss | 6 +++++- src/styles/components/sidebar.scss | 13 +++++++------ 10 files changed, 47 insertions(+), 36 deletions(-) diff --git a/src/dependencies.pug b/src/dependencies.pug index 10349e7..f1c82fd 100644 --- a/src/dependencies.pug +++ b/src/dependencies.pug @@ -9,7 +9,7 @@ link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Open+Sans:3 //- local //- script(type="module" src="/lib/sib-core/src/index.js") //- script(type="module" src="/lib/sib-router/src/index.js") -script(type="module" src="/lib/sib-chat/sib-chat.js") +//- script(type="module" src="/lib/sib-chat/sib-chat.js") //- script(type="module" src="/lib/sib-notifications/sib-notifications.js") //- script(type="module" src="/lib/sib-conversation/sib-conversation.js") //- script(type="module" src="/lib/sib-directory/sib-directory.js") @@ -17,8 +17,8 @@ script(type="module" src="/lib/sib-chat/sib-chat.js") //- CDN script(type="module" src="https://unpkg.com/@startinblox/core@0.7") script(type="module" src="https://unpkg.com/@startinblox/router@0.7.2") -//- script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") +script(type="module" src="https://unpkg.com/@startinblox/component-chat@0.1.7") script(type="module" src="https://unpkg.com/@startinblox/component-notifications@0.1.12") script(type="module" src="https://unpkg.com/@startinblox/component-conversation@0.2.1") -script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.14") +script(type="module" src="https://unpkg.com/@startinblox/component-directory@0.1.15") diff --git a/src/index.pug b/src/index.pug index 6d997c3..0a96eec 100644 --- a/src/index.pug +++ b/src/index.pug @@ -31,7 +31,7 @@ html(lang="en") #circle(hidden).with-sidebar include page-circle.pug - #member-chat(hidden).no-sidebar + #member-chat(hidden).with-sidebar include page-member-chat.pug #user-profile(hidden) diff --git a/src/page-circle.pug b/src/page-circle.pug index a65038d..a8fd84d 100644 --- a/src/page-circle.pug +++ b/src/page-circle.pug @@ -1,3 +1,12 @@ +.views-container + #circle-chat + include page-circle-chat.pug + #circle-profile + include page-circle-profile.pug + #circle-edit + include page-circle-edit.pug + #circle-create + include page-circle-create.pug nav.jsRightMenu(role='navigation') sib-router(default-route='circle-chat') ul @@ -14,13 +23,4 @@ nav.jsRightMenu(role='navigation') a Edit sib-route(name='circle-create') li - a Add new -.views-container - #circle-chat - include page-circle-chat.pug - #circle-profile - include page-circle-profile.pug - #circle-edit - include page-circle-edit.pug - #circle-create - include page-circle-create.pug + a Add new \ No newline at end of file diff --git a/src/page-job-offer-create.pug b/src/page-job-offer-create.pug index 9e8619a..f15bf1a 100644 --- a/src/page-job-offer-create.pug +++ b/src/page-job-offer-create.pug @@ -1,6 +1,6 @@ .content-box.with-form h1 Post a new job offer - p This form allows you to share an offer to all members of the network. + p.center This form allows you to share an offer to all members of the network. sib-widget(name='title-text') template diff --git a/src/page-project.pug b/src/page-project.pug index f06a683..ec2e276 100644 --- a/src/page-project.pug +++ b/src/page-project.pug @@ -1,3 +1,12 @@ +.views-container + #project-chat + include page-project-chat.pug + #project-profile + include page-project-profile.pug + #project-edit + include page-project-edit.pug + #project-create + include page-project-create.pug nav.jsRightMenu(role='navigation') sib-router(default-route='project-chat') ul @@ -14,13 +23,4 @@ nav.jsRightMenu(role='navigation') a Edit sib-route(name='project-create', use-id) li - a Add new -.views-container - #project-chat - include page-project-chat.pug - #project-profile - include page-project-profile.pug - #project-edit - include page-project-edit.pug - #project-create - include page-project-create.pug + a Add new \ No newline at end of file diff --git a/src/scripts/index.js b/src/scripts/index.js index 7d19dde..7146e97 100644 --- a/src/scripts/index.js +++ b/src/scripts/index.js @@ -1,8 +1,9 @@ document.addEventListener('DOMContentLoaded', function (event) { const menuWrappers = Array.from(document.querySelectorAll('.menu-wrapper')); const rightMenus = Array.from(document.querySelectorAll('nav.jsRightMenu')); + const viewsContainer = Array.from(document.querySelectorAll('.views-container')); - // Toggle sub-menus + //- Toggle sub-menus menuWrappers.forEach(menuWrapper => { const menu = menuWrapper.querySelector('.menu'); menu.addEventListener('click', e => { @@ -10,12 +11,13 @@ document.addEventListener('DOMContentLoaded', function (event) { }); }); - // Open/close menu on the right + //- Open/close menu on the right rightMenus.forEach(rightMenu => { const btnRightMenu = rightMenu.querySelector("li.jsOffsiteToggle"); btnRightMenu.addEventListener('click', e => { - rightMenu.classList.toggle('offsite-is-closed'); + rightMenus.forEach(rM => rM.classList.toggle('offsite-is-closed')); + viewsContainer.forEach(vC => vC.classList.toggle('sidebar-is-closed')); }) }); diff --git a/src/styles/base/form.scss b/src/styles/base/form.scss index c0e8006..5265551 100644 --- a/src/styles/base/form.scss +++ b/src/styles/base/form.scss @@ -22,7 +22,7 @@ text-align: center; } - p:first-child { + p.center { margin-bottom: 6.8rem; text-align: center; } diff --git a/src/styles/base/main.scss b/src/styles/base/main.scss index b27746a..c8274c4 100644 --- a/src/styles/base/main.scss +++ b/src/styles/base/main.scss @@ -7,6 +7,10 @@ $breakpoints: (phone: 480px, display: none !important; } +* { + outline: none; +} + :root { font-size: 10px; font-family: Open Sans, sans-serif; diff --git a/src/styles/components/chat.scss b/src/styles/components/chat.scss index bfc68a3..26407af 100644 --- a/src/styles/components/chat.scss +++ b/src/styles/components/chat.scss @@ -2,14 +2,18 @@ // chat .chat-view { - padding: 1.7rem; + padding: 0; height: calc(100vh - 84px); + position: relative; > sib-chat { position: absolute; top: 0; left: 0; right: 0; + bottom: 0; + max-height: calc(100vh - 84px); + z-index: 0; } } diff --git a/src/styles/components/sidebar.scss b/src/styles/components/sidebar.scss index 872aaae..ed30795 100644 --- a/src/styles/components/sidebar.scss +++ b/src/styles/components/sidebar.scss @@ -6,13 +6,19 @@ .with-sidebar { flex-grow: 1; display: flex; - flex-direction: row-reverse; + flex-direction: row; align-items: stretch; overflow-x: hidden; .views-container { flex: 1 0 0; overflow-y: auto; + -webkit-backface-visibility: hidden; + + &.sidebar-is-closed { + margin-left: -15.5rem; + transform: translate(15.5rem); + } } >div { @@ -96,11 +102,6 @@ & .jsOffsiteToggle::before { transform: rotate(180deg); } - - &~.views-container { - margin-left: -15.5rem; - transform: translate(15.5rem); - } } } } \ No newline at end of file