diff --git a/.jshintrc b/.jshintrc index 4a8af9f..4f21427 100644 --- a/.jshintrc +++ b/.jshintrc @@ -87,12 +87,11 @@ "yui" : false, // Yahoo User Interface // Custom Globals - "globals" : { + "globals" : { "debugOn": true, "hippie": true, - "initLeft": true, - "initY": true, "viewHover": true, "basicEase": true - } // additional predefined global variables + }, + "esversion" : 6 // additional predefined global variables } diff --git a/gulpfile.js b/gulpfile.js index 97762aa..e12916b 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -191,7 +191,7 @@ function code (cb) { }), plumber(), // cache('code'), - babel(), + babel({ presets: ['@babel/env']}), concat(hippie.jsFile +'.js'), dest(output.code), uglify(), diff --git a/package-lock.json b/package-lock.json index 19bcc40..4af889d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "hippie", - "version": "0.4.1", + "version": "0.4.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -65,6 +65,57 @@ "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.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.0.tgz", + "integrity": "sha512-SdqDfbVdNQCBp3WhK2mNdDvHd3BD6qbmIc43CAyjnsfCmgHMeqgDcM3BzY2lchi7HBJGJ2CVdynLWbezaE4mmQ==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.4.0", + "@babel/traverse": "^7.4.0", + "@babel/types": "^7.4.0" + } + }, + "@babel/helper-define-map": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.4.0.tgz", + "integrity": "sha512-wAhQ9HdnLIywERVcSvX40CEJwKdAa1ID4neI9NXQPDOHwwA+57DqwLiPEVy2AIyWzAk0CQ8qx4awO0VUURwLtA==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/types": "^7.4.0", + "lodash": "^4.17.11" + } + }, + "@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", @@ -85,6 +136,106 @@ "@babel/types": "^7.0.0" } }, + "@babel/helper-hoist-variables": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.0.tgz", + "integrity": "sha512-/NErCuoe/et17IlAQFKWM24qtyYYie7sFIrW/tIQXpck6vAu2hhtYYsKLBWQV+BQZMbcIYPU/QMYuTufrY4aQw==", + "dev": true, + "requires": { + "@babel/types": "^7.4.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.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.3.tgz", + "integrity": "sha512-H88T9IySZW25anu5uqyaC1DaQre7ofM+joZtAaO2F8NBdFfupH0SZ4gKjgSFVcvtx/aAirqA9L9Clio2heYbZA==", + "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.2.2", + "@babel/types": "^7.2.2", + "lodash": "^4.17.11" + } + }, + "@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.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.3.tgz", + "integrity": "sha512-hnoq5u96pLCfgjXuj8ZLX3QQ+6nAulS+zSgi6HulUwFbEruRAKwbGLU5OvXkE14L8XW6XsQEKsIDfgthKLRAyA==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "@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.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.4.0.tgz", + "integrity": "sha512-PVwCVnWWAgnal+kJ+ZSAphzyl58XrFeSKSAJRiqg5QToTsjL+Xu1f9+RJ+d+Q0aPhPfBGaYfkox66k86thxNSg==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.0.0", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/traverse": "^7.4.0", + "@babel/types": "^7.4.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.4.0", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", @@ -94,6 +245,18 @@ "@babel/types": "^7.4.0" } }, + "@babel/helper-wrap-function": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", + "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.2.0" + } + }, "@babel/helpers": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.2.tgz", @@ -153,6 +316,497 @@ "integrity": "sha512-9fJTDipQFvlfSVdD/JBtkiY0br9BtfvW2R8wo6CX/Ej2eMuV0gWPk1M67Mt3eggQvBqYW1FCEk8BN7WvGm/g5g==", "dev": true }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", + "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "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.2.0" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", + "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-json-strings": "^7.2.0" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.3.tgz", + "integrity": "sha512-xC//6DNSSHVjq8O2ge0dyYlhshsH4T7XdCVoxbi5HzLYWfsC5ooFlJjrXk8RcAT+hjHAK9UjBXdylzSoDK3t4g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.0.tgz", + "integrity": "sha512-h/KjEZ3nK9wv1P1FSNb9G079jXrNYR0Ko+7XkOx85+gM24iZbPn0rh4vCftk+5QKY7y1uByFataBTmX7irEF1w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0", + "regexpu-core": "^4.5.4" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", + "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", + "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", + "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", + "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.4.0.tgz", + "integrity": "sha512-EeaFdCeUULM+GPFEsf7pFcNSxM7hYjoj5fiYbyuiXobW4JhFnjAv9OWzNwHyHcKoPNpAfeRDuW6VyaXEDUBa7g==", + "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.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", + "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.0.tgz", + "integrity": "sha512-AWyt3k+fBXQqt2qb9r97tn3iBwFpiv9xdAiG+Gr2HpAZpuayvbL55yWrsV3MyHvXk/4vmSiedhDRl1YI2Iy5nQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "lodash": "^4.17.11" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.3.tgz", + "integrity": "sha512-PUaIKyFUDtG6jF5DUJOfkBdwAS/kFFV3XFk7Nn0a6vR7ZT8jYw5cGtIlat77wcnd0C6ViGqo/wyNf4ZHytF/nQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-define-map": "^7.4.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.4.0", + "@babel/helper-split-export-declaration": "^7.4.0", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + } + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", + "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.4.3.tgz", + "integrity": "sha512-rVTLLZpydDFDyN4qnXdzwoVpk1oaXHIvPEOkOLyr88o7oHxVc/LyrnDx+amuBWGOwUb7D1s/uLsKBNTx08htZg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.3.tgz", + "integrity": "sha512-9Arc2I0AGynzXRR/oPdSALv3k0rM38IMFyto7kOCwb5F9sLUt2Ykdo3V9yUPR+Bgr4kb6bVEyLkPEiBhzcTeoA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.3", + "regexpu-core": "^4.5.4" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz", + "integrity": "sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", + "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", + "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.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.3.tgz", + "integrity": "sha512-UselcZPwVWNSURnqcfpnxtMehrb8wjXYOimlYQPBnup/Zld426YzIhNEvuRsEWVHfESIECGrxoI6L5QqzuLH5Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.3.tgz", + "integrity": "sha512-uT5J/3qI/8vACBR9I1GlAuU/JqBtWdfCrynuOkrWG6nCDieZd5przB1vfP59FRHBZQ9DC2IUfqr/xKqzOD5x0A==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", + "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", + "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz", + "integrity": "sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.3.tgz", + "integrity": "sha512-sMP4JqOTbMJMimqsSZwYWsMjppD+KRyDIUVW91pd7td0dZKAvPmhCaxhOzkzLParKwgQc7bdL9UNv+rpJB0HfA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.4.3", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.4.0.tgz", + "integrity": "sha512-gjPdHmqiNhVoBqus5qK60mWPp1CmYWp/tkh11mvb0rrys01HycEGD7NvvSoKXlWEfSM9TcL36CpsK8ElsADptQ==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.4.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", + "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.2.tgz", + "integrity": "sha512-NsAuliSwkL3WO2dzWTOL1oZJHm0TM8ZY8ZSxk2ANyKkt5SQlToGA4pzctmq1BEjoacurdwZ3xp2dCQWJkME0gQ==", + "dev": true, + "requires": { + "regexp-tree": "^0.1.0" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.0.tgz", + "integrity": "sha512-6ZKNgMQmQmrEX/ncuCwnnw1yVGoaOW5KpxNhoWI7pCQdA0uZ0HqHGqenCUIENAnxRjy2WwNQ30gfGdIgqJXXqw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz", + "integrity": "sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.1.0" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.3.tgz", + "integrity": "sha512-ULJYC2Vnw96/zdotCZkMGr2QVfKpIT/4/K+xWWY0MbOJyMZuk660BGkr3bEKWQrrciwz6xpmft39nA4BF7hJuA==", + "dev": true, + "requires": { + "@babel/helper-call-delegate": "^7.4.0", + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", + "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.3.tgz", + "integrity": "sha512-kEzotPuOpv6/iSlHroCDydPkKYw7tiJGKlmYp6iJn4a6C/+b2FdttlJsLKYxolYHgotTJ5G5UY5h0qey5ka3+A==", + "dev": true, + "requires": { + "regenerator-transform": "^0.13.4" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", + "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", + "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz", + "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", + "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.2.0.tgz", + "integrity": "sha512-FkPix00J9A/XWXv4VoKJBMeSkyY9x/TqIh76wzcdfl57RJJcf8CehQ08uwfhCDNtRQYtHQKBTwKZDEyjE13Lwg==", + "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.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", + "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.3.tgz", + "integrity": "sha512-lnSNgkVjL8EMtnE8eSS7t2ku8qvKH3eqNf/IwIfnSPUqzgqYmRwzdsQWv4mNQAN9Nuo6Gz1Y0a4CSmdpu1Pp6g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.3", + "regexpu-core": "^4.5.4" + } + }, + "@babel/preset-env": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.4.3.tgz", + "integrity": "sha512-FYbZdV12yHdJU5Z70cEg0f6lvtpZ8jFSDakTm7WXeJbLXh4R0ztGEu/SW7G1nJ2ZvKwDhz8YrbA84eYyprmGqw==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-async-generator-functions": "^7.2.0", + "@babel/plugin-proposal-json-strings": "^7.2.0", + "@babel/plugin-proposal-object-rest-spread": "^7.4.3", + "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.0", + "@babel/plugin-syntax-async-generators": "^7.2.0", + "@babel/plugin-syntax-json-strings": "^7.2.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", + "@babel/plugin-transform-arrow-functions": "^7.2.0", + "@babel/plugin-transform-async-to-generator": "^7.4.0", + "@babel/plugin-transform-block-scoped-functions": "^7.2.0", + "@babel/plugin-transform-block-scoping": "^7.4.0", + "@babel/plugin-transform-classes": "^7.4.3", + "@babel/plugin-transform-computed-properties": "^7.2.0", + "@babel/plugin-transform-destructuring": "^7.4.3", + "@babel/plugin-transform-dotall-regex": "^7.4.3", + "@babel/plugin-transform-duplicate-keys": "^7.2.0", + "@babel/plugin-transform-exponentiation-operator": "^7.2.0", + "@babel/plugin-transform-for-of": "^7.4.3", + "@babel/plugin-transform-function-name": "^7.4.3", + "@babel/plugin-transform-literals": "^7.2.0", + "@babel/plugin-transform-member-expression-literals": "^7.2.0", + "@babel/plugin-transform-modules-amd": "^7.2.0", + "@babel/plugin-transform-modules-commonjs": "^7.4.3", + "@babel/plugin-transform-modules-systemjs": "^7.4.0", + "@babel/plugin-transform-modules-umd": "^7.2.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.4.2", + "@babel/plugin-transform-new-target": "^7.4.0", + "@babel/plugin-transform-object-super": "^7.2.0", + "@babel/plugin-transform-parameters": "^7.4.3", + "@babel/plugin-transform-property-literals": "^7.2.0", + "@babel/plugin-transform-regenerator": "^7.4.3", + "@babel/plugin-transform-reserved-words": "^7.2.0", + "@babel/plugin-transform-shorthand-properties": "^7.2.0", + "@babel/plugin-transform-spread": "^7.2.0", + "@babel/plugin-transform-sticky-regex": "^7.2.0", + "@babel/plugin-transform-template-literals": "^7.2.0", + "@babel/plugin-transform-typeof-symbol": "^7.2.0", + "@babel/plugin-transform-unicode-regex": "^7.4.3", + "@babel/types": "^7.4.0", + "browserslist": "^4.5.2", + "core-js-compat": "^3.0.0", + "invariant": "^2.2.2", + "js-levenshtein": "^1.1.3", + "semver": "^5.5.0" + }, + "dependencies": { + "browserslist": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.5.4.tgz", + "integrity": "sha512-rAjx494LMjqKnMPhFkuLmLp8JWEX0o8ADTGeAbOqaF+XCvYLreZrG5uVjnPBlAQ8REZK4pzXGvp0bWgrFtKaag==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000955", + "electron-to-chromium": "^1.3.122", + "node-releases": "^1.1.13" + } + }, + "caniuse-lite": { + "version": "1.0.30000957", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000957.tgz", + "integrity": "sha512-8wxNrjAzyiHcLXN/iunskqQnJquQQ6VX8JHfW5kLgAPRSiSuKZiNfmIkP5j7jgyXqAQBSoXyJxfnbCFS0ThSiQ==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.122", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.122.tgz", + "integrity": "sha512-3RKoIyCN4DhP2dsmleuFvpJAIDOseWH88wFYBzb22CSwoFDSWRc4UAMfrtc9h8nBdJjTNIN3rogChgOy6eFInw==", + "dev": true + }, + "node-releases": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.13.tgz", + "integrity": "sha512-fKZGviSXR6YvVPyc011NHuJDSD8gFQvLPmc2d2V3BS4gr52ycyQ1Xzs7a8B+Ax3Ni/W+5h1h4SqmzeoA8WZRmA==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + } + } + }, "@babel/template": { "version": "7.4.0", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", @@ -2067,6 +2721,70 @@ "is-plain-object": "^2.0.1" } }, + "core-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.0.0.tgz", + "integrity": "sha512-WBmxlgH2122EzEJ6GH8o9L/FeoUKxxxZ6q6VUxoTlsE4EvbTWKJb447eyVxTEuq0LpXjlq/kCB2qgBvsYRkLvQ==", + "dev": true + }, + "core-js-compat": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.0.0.tgz", + "integrity": "sha512-W/Ppz34uUme3LmXWjMgFlYyGnbo1hd9JvA0LNQ4EmieqVjg2GPYbj3H6tcdP2QGPGWdRKUqZVbVKLNIFVs/HiA==", + "dev": true, + "requires": { + "browserslist": "^4.5.1", + "core-js": "3.0.0", + "core-js-pure": "3.0.0", + "semver": "^5.6.0" + }, + "dependencies": { + "browserslist": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.5.4.tgz", + "integrity": "sha512-rAjx494LMjqKnMPhFkuLmLp8JWEX0o8ADTGeAbOqaF+XCvYLreZrG5uVjnPBlAQ8REZK4pzXGvp0bWgrFtKaag==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000955", + "electron-to-chromium": "^1.3.122", + "node-releases": "^1.1.13" + } + }, + "caniuse-lite": { + "version": "1.0.30000957", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000957.tgz", + "integrity": "sha512-8wxNrjAzyiHcLXN/iunskqQnJquQQ6VX8JHfW5kLgAPRSiSuKZiNfmIkP5j7jgyXqAQBSoXyJxfnbCFS0ThSiQ==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.122", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.122.tgz", + "integrity": "sha512-3RKoIyCN4DhP2dsmleuFvpJAIDOseWH88wFYBzb22CSwoFDSWRc4UAMfrtc9h8nBdJjTNIN3rogChgOy6eFInw==", + "dev": true + }, + "node-releases": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.13.tgz", + "integrity": "sha512-fKZGviSXR6YvVPyc011NHuJDSD8gFQvLPmc2d2V3BS4gr52ycyQ1Xzs7a8B+Ax3Ni/W+5h1h4SqmzeoA8WZRmA==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "core-js-pure": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.0.0.tgz", + "integrity": "sha512-yPiS3fQd842RZDgo/TAKGgS0f3p2nxssF1H65DIZvZv0Od5CygP8puHXn3IQiM/39VAvgCbdaMQpresrbGgt9g==", + "dev": true + }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -4949,6 +5667,15 @@ "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", "dev": true }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "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", @@ -5287,6 +6014,12 @@ "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", "dev": true }, + "js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "dev": true + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -5793,6 +6526,15 @@ "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==", + "dev": true, + "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", @@ -7338,6 +8080,12 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", "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", @@ -7901,6 +8649,30 @@ "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": "8.0.2", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.0.2.tgz", + "integrity": "sha512-SbA/iNrBUf6Pv2zU8Ekv1Qbhv92yxL4hiDa2siuxs4KKn4oOoMDHXjAf7+Nz9qinUQ46B1LcWEi/PhJfPWpZWQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.0" + } + }, + "regenerator-transform": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.13.4.tgz", + "integrity": "sha512-T0QMBjK3J0MtxjPmdIMXm72Wvj2Abb0Bd4HADdfijwMdoIsyQZ6fWC7kDFhk2YinBBEMZDL7Y7wh0J1sGx3S4A==", + "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", @@ -7920,6 +8692,49 @@ "safe-regex": "^1.1.0" } }, + "regexp-tree": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.5.tgz", + "integrity": "sha512-nUmxvfJyAODw+0B13hj8CFVAxhe7fDEAgJgaotBu3nnR+IgGgZq59YedJP5VYTlkEfqjuK6TuRpnymKdatLZfQ==", + "dev": true + }, + "regexpu-core": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", + "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.0.2", + "regjsgen": "^0.5.0", + "regjsparser": "^0.6.0", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.1.0" + } + }, + "regjsgen": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", + "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", + "dev": true + }, + "regjsparser": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", + "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", + "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-bom-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", @@ -9537,6 +10352,34 @@ "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", "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.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", + "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", + "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", + "dev": true + }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", diff --git a/package.json b/package.json index 54cd303..06c17d3 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "homepage": "https://github.com/sthag/hippie#readme", "devDependencies": { "@babel/core": "^7.4.0", + "@babel/preset-env": "^7.4.3", "browser-sync": "^2.26.3", "del": "^4.0.0", "gulp": "^4.0.0", diff --git a/source/code/hippie/functions.js b/source/code/hippie/functions.js index 936c590..948d156 100644 --- a/source/code/hippie/functions.js +++ b/source/code/hippie/functions.js @@ -1,50 +1,62 @@ // This is called everytime function setup () { 'use strict'; + console.info('\n', hippie.brand, '\n\n'); if (debugOn) { - console.log('Debug information:\n', 'HTML:', hippie.screen, 'BODY:', hippie.body); + console.info('Debug information:\n', 'HTML:', hippie.screen, 'BODY:', hippie.body); } - if ($('#js_tph').length && viewHover) { - // $('body').prepend("
"); - $('#js_tph').addClass("hover_full_view_change"); + + // WANNABE MODULE Mouse over effect + // With CSS only + if ($('#js_mob').length && viewHover) { + $('#js_mob').addClass('mouse_over'); } + // if (viewHover) { + // $('body').prepend('
'); + // } + // With JS } // MODULE Scroll navigation -function HippieScroll ($el) { +// Using constructor function +function HippieScroll ($tp, $dn) { 'use strict'; - // this.$el = $el; - // console.log('Elements:', $el, this.$el); - // Toggle display on scroll position - // console.log('Scroll object added'); + // this.$tp = $tp; + // Define initial situation + let initLeft = false; + const initY = hippie.screen.vh; + + $tp.addClass('hide'); + + // Check scroll position and toggle element this.check = function () { - // console.log('Scroll position checked'); hippie.screen.y = Math.min($(document).scrollTop(), document.documentElement.scrollTop); if (hippie.screen.y > initY) { if (!initLeft) { - $el.parent().removeClass('magic'); + $tp.removeClass('hide'); console.info('Initial viewport left'); } initLeft = true; } else { if (initLeft) { - $el.parent().addClass('magic'); + $tp.addClass('hide'); console.info('Initial viewport entered'); } initLeft = false; } }; + // Add events to navigation elements - $('.js_scrolltop').click(function (event) { + $tp.click(function (event) { event.preventDefault(); - $('html, body').animate({ + $('html, body').stop().animate({ scrollTop: 0 }, basicEase); // console.log('Scrolled to top'); }); - $('.js_scrolldown').click(function (event) { + $dn.click(function (event) { event.preventDefault(); var pos = Math.max(hippie.screen.dh, hippie.body.h) - hippie.screen.vh; $('html').scrollTop(pos); @@ -53,6 +65,82 @@ function HippieScroll ($el) { }); } +// MODULE Meta elements +function HippieMeta ($ma, $pp) { + 'use strict'; + + let metaOn = false; + + $ma.click(function () { + var $wrap, $pop; + + // if (metaOn !== true) { + if (!metaOn) { + metaOn = true; + + $pp.each(function () { + // if ($(this).css('position') === 'static') { + // $(this).addClass('js_changed_pos'); + // $(this).css('position', 'relative'); + // } + // $pop = $(this).next('.exp_pop').detach(); + // $wrap = $(this).wrap('').parent().prepend('').prepend(''); + // $wrap.after($pop); + + $('
').addClass('exp_overlay').css({ + position: 'absolute', + width: '100%', + height: '100%', + top: 0, + left: 0 + }).appendTo($(this).addClass('exp_wrap')); + + // Displays explanation popup following the mouse + $(this).on({ + mouseenter: function () { + // if ($(this).attr('emmet')) { + // + // } + $(this).next('.exp_pop').show(); + }, + mouseleave: function () { + $(this).next('.exp_pop').hide(); + }, + mousemove: function (event) { + $(this).next('.exp_pop').css({ + 'top': event.pageY - $(this).next('.exp_pop').outerHeight() - 4, + 'left': event.pageX + 8 + // 'left': event.pageX - $(this).offset().left + 8 + }); + } + }) + }); + + } else { + $pp.each(function () { + $(this).off('mouseenter mouseleave mousemove'); + + $(this).removeClass('exp_wrap').find('.exp_overlay').remove(); + // $wrap = $(this).parent('.exp_wrap'); + // $pop = $wrap.next('.exp_pop').detach(); + // $wrap.find('.exp_marker_pop').remove(); + // $(this).unwrap('.exp_wrap'); + // $(this).after($pop); + // if ($(this).hasClass('js_changed_pos')) { + // $(this).css('position', ''); + // if ($(this).attr('style') === '') { + // $(this).removeAttr('style'); + // } + // $(this).removeClass('js_changed_pos'); + // } + }); + + metaOn = false; + } + console.log('Explanation mode', metaOn); + }); +} + // get document coordinates of the element // function getCoords (elem) { // let box = elem.getBoundingClientRect(); @@ -83,22 +171,3 @@ function HippieScroll ($el) { // }; // // var Utils = new Utils(); - -// TEST - -function scrollNav () { - 'use strict'; - $('.nav a').click(function () { - //Toggle Class - $(".active").removeClass("active"); - $(this).closest('li').addClass("active"); - var theClass = $(this).attr("class"); - $('.'+theClass).parent('li').addClass('active'); - //Animate - $('html, body').stop().animate({ - scrollTop: $( $(this).attr('href') ).offset().top - 160 - }, 400); - return false; - }); - $('.scrollTop a').scrollTop(); -} diff --git a/source/code/hippie/global.js b/source/code/hippie/global.js index 9aa2e96..f1f941f 100644 --- a/source/code/hippie/global.js +++ b/source/code/hippie/global.js @@ -8,80 +8,4 @@ $(document).ready(function () { 'use strict'; // logPerf('DOM ready.'); - - // Modules - // --------------------------------------------------------------------------- - - // Explanation module scripts - var expMode = false; - - // Displays explanation popup - $('.js_pop').hover( - function () { - // if ($(this).attr('emmet')) { - // - // } - $(this).next('.exp_pop').show(); - }, function () { - $(this).next('.exp_pop').hide(); - } - ).mousemove( - function (event) { - $(this).next('.exp_pop').css({ - 'top': event.pageY - $(this).next('.exp_pop').outerHeight() - 4, - 'left': event.pageX + 8 - // 'left': event.pageX - $(this).offset().left + 8 - }); - // TODO - needs more love - // console.log(event.pageX); - } - ); - - // WIP Activates layer with explanation elements - // Besser ::after oder ::before benutzen - $('.js_showmeta').click(function (e) { - var $wrap, $pop; - - if (expMode !== true) { - expMode = true; - - $('.js_pop').each(function (i, e) { - if ($(this).css('position') === 'static') { - $(this).addClass('js_changed_pos'); - $(this).css('position', 'relative'); - } - - $pop = $(this).next('.exp_pop').detach(); - $wrap = $(this).wrap('').parent().prepend(''); - $wrap.after($pop); - }); - - } else { - $('.js_pop').each(function (i, e) { - $wrap = $(this).parent('.exp_wrap'); - $pop = $wrap.next('.exp_pop').detach(); - $wrap.find('.exp_marker_pop').remove(); - $(this).unwrap('.exp_wrap'); - $(this).after($pop); - if ($(this).hasClass('js_changed_pos')) { - $(this).css('position', ''); - if ($(this).attr('style') === '') { - $(this).removeAttr('style'); - } - $(this).removeClass('js_changed_pos'); - } - }); - - expMode = false; - - } - console.log('Explanation mode', expMode); - }); - - $('#gameIcon').click(function (event) { - event.preventDefault(); - $(this).clone().appendTo('#gameDetail'); - $(this).siblings().clone().appendTo('#gameDetail'); - $('#gameDetail').removeClass('magic'); - }); }); diff --git a/source/code/hippie/variables.js b/source/code/hippie/variables.js index b3c557b..8ca57a6 100644 --- a/source/code/hippie/variables.js +++ b/source/code/hippie/variables.js @@ -13,9 +13,6 @@ var hippie = { } }; -var initLeft = false; -var initY = hippie.screen.vh; - var viewHover = true; var basicEase = 600; diff --git a/source/screens/demo/intro.njk b/source/screens/demo/intro.njk index 94bc439..f7d9ca2 100644 --- a/source/screens/demo/intro.njk +++ b/source/screens/demo/intro.njk @@ -229,7 +229,7 @@

Eingebundene Inhalte

{# // picture // source // img // iframe // embed // object // param // video // audio // track // map // area #} Fahne von Interaktionsweise -

Die ist ein Bild. Es wird mit dem Element <img> eingebunden. Solch ein Bild hat üblicherweise die Attribute width und height. Mit ihnen werden die Abmessungen (Breite und Höhe) festgelegt. Außerdem sollte immer das Attribut alt für eine alternative Beschreibung in Textform verwendet werden.

+

Dies ist ein Bild. Es wird mit dem Element <img> eingebunden. Solch ein Bild hat üblicherweise die Attribute width und height. Mit ihnen werden die Abmessungen (Breite und Höhe) festgelegt. Außerdem sollte immer das Attribut alt für eine alternative Beschreibung in Textform verwendet werden.

Das Bild selbst liegt normalerweise als Datei vor. Die Quelle wird mit dem Attribut src angegeben. Es können einige Alternativen zur Angabe einer konkreten Datei eingesetzt werden. Zum Beispiel können mehrere Dateien in Abhängigkeit zur Darstellung oder dem unterstützen Format angegeben werden. Dafür können dann die Elemente <source> und <picture> in Kombination verwendet werden.

@@ -590,7 +590,8 @@ assetsLoaded = true; logPerf('Assets loaded.'); // Create instance of object made by contructor function -var scrollUi = new HippieScroll($('.js_scrolltop')); +var scrollUi = new HippieScroll($('.js_scrolltop'), $('.js_scrolldown')); +var helpUi = new HippieMeta($('.js_showmeta'), $('.js_pop')); $(document).ready(function () { logPerf('JQ document ready event fired.'); diff --git a/source/style/hippie/elements/_sections.scss b/source/style/hippie/elements/_sections.scss index 59605a4..268dbbb 100644 --- a/source/style/hippie/elements/_sections.scss +++ b/source/style/hippie/elements/_sections.scss @@ -1,189 +1,189 @@ -// Root -// ----------------------------------------------------------------------------- -html { - // height: 100%; -} - - - -// Sections -// ----------------------------------------------------------------------------- -// body -// article -// section -// nav -// aside -// h1-h6 -// header -// footer - - - -// Body -// ----------------------------------------------------------------------------- -body { - position: relative; - box-sizing: $box_sizing; - margin: 0; - font-family: $family_text_basic; - font-size: $size_text_basic; - line-height: $line_basic; - line-height: $line_text_basic; - color: $color_text_basic; - background-color: $color_back_basic; - - *, - ::before, - ::after { - box-sizing: inherit; - } - - &:hover { - - .layer_hover { - background-color: transparent !important; - transition: background-color $duration_double $timing_basic 0s !important; - } - } -} - -// Article -// ----------------------------------------------------------------------------- -article { - -} - -// Section -// ----------------------------------------------------------------------------- -section { - -} - -.sec_main_center { - width: $width_basic; - margin: 0 auto; - padding-top: $space_small; - - @include forTabletPortraitUp { - width: $width_small; - } - @include forTabletLandscapeUp { - width: $width_medium; - } - @include forBigDesktopUp { - width: $width_large; - } -} - -.sec_main_status { - border-top-width: $width_border_8; - border-top-style: solid; - border-color: $color_border_basic; - padding-top: $space_small; -} - -// Navigation -// ----------------------------------------------------------------------------- -nav { - -} - -// Aside element -// ----------------------------------------------------------------------------- -aside { - width: $width_aside_basic; - - &.right + .bside { - margin-right: calc(#{$width_aside_basic} + #{$space_basic}); - } - - &.left + .bside { - margin-left: calc(#{$width_aside_basic} + #{$space_basic}); - } - - &.right { - float: right; - } - - &.left { - float: left; - } - - *:first-child { - margin-top: 0; - } -} - -// Headings -// ----------------------------------------------------------------------------- -h1, h2, h3, h4, h5, h6 { - @extend %head_all; -} - -h1 { - @extend %head_1; - margin: $space_large 0 $space_small; -} - -h1 + h1 { - margin-top: 0; -} - -h2 { - @extend %head_2; - margin: $space_medium 0 $space_small; -} - -h2 + h2 { - margin-top: 0; -} - -h3 { - @extend %head_3; - margin: $space_double 0; - text-transform: uppercase; -} - -h4 { - @extend %head_3; - margin: $space_double 0; - text-transform: none; -} - -h5 { - @extend %head_4; - margin: $space_double 0 $space_basic; - text-transform: none; -} - -h6 { - @extend %basic; - margin: $space_basic 0; - text-transform: none; - font-weight: bold; -} - -// Header -// ----------------------------------------------------------------------------- -header { - -} - -.header_page { - overflow: auto; -} - -.header_txt { - margin-bottom: $space_small; - border-bottom: $border_dotted; - - h1 { - border-top: $border_basic; - } -} - -// Footer -// ----------------------------------------------------------------------------- -footer { - -} +// Root +// ----------------------------------------------------------------------------- +html { + // height: 100%; +} + + + +// Sections +// ----------------------------------------------------------------------------- +// body +// article +// section +// nav +// aside +// h1-h6 +// header +// footer + + + +// Body +// ----------------------------------------------------------------------------- +body { + position: relative; + box-sizing: $box_sizing; + margin: 0; + font-family: $family_text_basic; + font-size: $size_text_basic; + line-height: $line_basic; + line-height: $line_text_basic; + color: $color_text_basic; + background-color: $color_back_basic; + + *, + ::before, + ::after { + box-sizing: inherit; + } + + &:hover { + + .mouse_over { + background-color: transparent !important; + transition: background-color $duration_double $timing_basic 0s !important; + } + } +} + +// Article +// ----------------------------------------------------------------------------- +article { + +} + +// Section +// ----------------------------------------------------------------------------- +section { + +} + +.sec_main_center { + width: $width_basic; + margin: 0 auto; + padding-top: $space_small; + + @include forTabletPortraitUp { + width: $width_small; + } + @include forTabletLandscapeUp { + width: $width_medium; + } + @include forBigDesktopUp { + width: $width_large; + } +} + +.sec_main_status { + border-top-width: $width_border_8; + border-top-style: solid; + border-color: $color_border_basic; + padding-top: $space_small; +} + +// Navigation +// ----------------------------------------------------------------------------- +nav { + +} + +// Aside element +// ----------------------------------------------------------------------------- +aside { + width: $width_aside_basic; + + &.right + .bside { + margin-right: calc(#{$width_aside_basic} + #{$space_basic}); + } + + &.left + .bside { + margin-left: calc(#{$width_aside_basic} + #{$space_basic}); + } + + &.right { + float: right; + } + + &.left { + float: left; + } + + *:first-child { + margin-top: 0; + } +} + +// Headings +// ----------------------------------------------------------------------------- +h1, h2, h3, h4, h5, h6 { + @extend %head_all; +} + +h1 { + @extend %head_1; + margin: $space_large 0 $space_small; +} + +h1 + h1 { + margin-top: 0; +} + +h2 { + @extend %head_2; + margin: $space_medium 0 $space_small; +} + +h2 + h2 { + margin-top: 0; +} + +h3 { + @extend %head_3; + margin: $space_double 0; + text-transform: uppercase; +} + +h4 { + @extend %head_3; + margin: $space_double 0; + text-transform: none; +} + +h5 { + @extend %head_4; + margin: $space_double 0 $space_basic; + text-transform: none; +} + +h6 { + @extend %basic; + margin: $space_basic 0; + text-transform: none; + font-weight: bold; +} + +// Header +// ----------------------------------------------------------------------------- +header { + +} + +.header_page { + overflow: auto; +} + +.header_txt { + margin-bottom: $space_small; + border-bottom: $border_dotted; + + h1 { + border-top: $border_basic; + } +} + +// Footer +// ----------------------------------------------------------------------------- +footer { + +} diff --git a/source/style/hippie/global/_common.scss b/source/style/hippie/global/_common.scss index ddb95a2..05feec7 100644 --- a/source/style/hippie/global/_common.scss +++ b/source/style/hippie/global/_common.scss @@ -1,316 +1,316 @@ -// General classes -// ----------------------------------------------------------------------------- - - - -%size_content { - box-sizing: content-box; -} - -%size_content_solo { - @extend %size_content; - - *, - ::before, - ::after { - box-sizing: $box_sizing; - } -} - -%h_content_full { - height: 100%; - - body { - min-height: 100%; - } -} - -%hidden { - display: none; -} - -.magic { - @extend %hidden; -} - -.space_even_auto { - margin-right: auto; - margin-left: auto; -} - -.space_even_half { - margin-right: 25%; - margin-left: 25%; -} - -.space_even_fourth { - margin-right: 37.5%; - margin-left: 37.5%; -} - -@each $size, $variable in (basic, #{$space_basic}), - (small, #{$space_small}), - (medium, #{$space_medium}), - (large, #{$space_large}) { - .space_top_#{$size} { - margin-top: $variable; - } - .space_right_#{$size} { - margin-right: $variable; - } - .space_bottom_#{$size} { - margin-bottom: $variable; - } - .space_left_#{$size} { - margin-left: $variable; - } -} - -.space_left_fourth { - margin-left: 25%; -} - -.width_full { - width: 100%; - margin-right: 0; - margin-left: 0; -} - -.width_half { - width: 50%; - margin-right: 0; - margin-left: 0; -} - -.width_third { - width: 33.3%; - margin-right: 0; - margin-left: 0; -} - -.h_basic { - height: 1024px; -} - -.h_full_view { - height: 100vh; -} - -.h_100 { - height: 100%; -} - -.wrap_center { - & > * { - margin-right: (100% - $width_basic) / 2; - margin-left: (100% - $width_basic) / 2; - - @include forTabletPortraitUp { - margin-right: (100% - $width_small) / 2; - margin-left: (100% - $width_small) / 2; - } - @include forTabletLandscapeUp { - margin-right: (100% - $width_medium) / 2; - margin-left: (100% - $width_medium) / 2; - } - @include forBigDesktopUp { - margin-right: (100% - $width_large) / 2; - margin-left: (100% - $width_large) / 2; - } - } -} - - - -// Clearing and floating -// ----------------------------------------------------------------------------- -.clear { - clear: both; - - &::before, - &::after { - clear: both; - } -} - -.overflow { - overflow: auto; -} - -.float_left { - float: left; -} - -.float_right { - float: right; -} - -.float_space_left { - @extend .float_left; - margin-right: $space_small; -} - -.float_half_size { - float: left; - width: 50%; -} - -.x_long { - overflow-x: scroll; -} - - - -// Inlining -// ----------------------------------------------------------------------------- -.inline { - display: inline-block; -} - - - -// Positioned elements -// ----------------------------------------------------------------------------- -%viewport_fixed { - position: fixed; - top: 0; - left: 0; - width: 100vw; - height: 100vh; -} - -%full_parent { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - // width: 100%; - // height: 100%; -} - -.pos_abs { - position: absolute; -} - -.pos_rel { - position: relative; -} - -.pos_fix { - position: fixed; -} - -.pin_top { - top: 0; -} - -.pin_right { - right: 0; -} - -.pin_bottom { - bottom: 0; -} - -.pin_left { - left: 0; -} - -.pos_full_view { - @extend %viewport_fixed; - background-color: rgba($alpha_color, 0.5); -} - -.pos_full_page { - @extend %full_parent; - background-color: rgba($charlie_color, 0.25); -} - -.hover_back_change { - background-color: $color_darker; - transition: background-color 0.2s ease-in-out; - - &:hover { - background-color: $color_back_basic; - } -} - -.hover_full_view_change { - @extend %viewport_fixed; - z-index: $z_heaven; - background-color: transparentize($color_darkest, 0.5); - transition: background-color $duration_long $timing_basic $duration_long; - pointer-events: none; -} - - - -// Colors -// ----------------------------------------------------------------------------- -.txt_color_light { - color: $color_brighter; -} - -.txt_color_dark { - color: $color_darker; -} - - - -// Text -// ----------------------------------------------------------------------------- -.txt_tiny { - font-size: .5em !important; -} - -.txt_smaller { - font-size: .75em !important; -} - -.txt_larger { - font-size: 1.2em !important; -} - -.txt_huge { - font-size: 3em !important; -} - -.txt_hero { - font-size: $size_hero; -} - -.txt_center { - text-align: center !important; -} - -.txt_right { - text-align: right !important; -} - -.txt_left { - text-align: left !important; -} - -.txt_top { - vertical-align: top !important; -} - -.txt_bottom { - vertical-align: bottom !important; -} - -.txt_white { - color: white; -} - -.txt_black { - color: black; -} - -.txt_gradient { - background: linear-gradient(165deg, $alpha_color 30%, $bravo_color 45%, $charlie_color 50%, $delta_color, $echo_color 80%, $foxtrot_color); - background-clip: text; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; -} +// General classes +// ----------------------------------------------------------------------------- + + + +%size_content { + box-sizing: content-box; +} + +%size_content_solo { + @extend %size_content; + + *, + ::before, + ::after { + box-sizing: $box_sizing; + } +} + +%h_content_full { + height: 100%; + + body { + min-height: 100%; + } +} + +%hidden { + display: none; +} + +.hide { + @extend %hidden; +} + +.space_even_auto { + margin-right: auto; + margin-left: auto; +} + +.space_even_half { + margin-right: 25%; + margin-left: 25%; +} + +.space_even_fourth { + margin-right: 37.5%; + margin-left: 37.5%; +} + +@each $size, $variable in (basic, #{$space_basic}), + (small, #{$space_small}), + (medium, #{$space_medium}), + (large, #{$space_large}) { + .space_top_#{$size} { + margin-top: $variable; + } + .space_right_#{$size} { + margin-right: $variable; + } + .space_bottom_#{$size} { + margin-bottom: $variable; + } + .space_left_#{$size} { + margin-left: $variable; + } +} + +.space_left_fourth { + margin-left: 25%; +} + +.width_full { + width: 100%; + margin-right: 0; + margin-left: 0; +} + +.width_half { + width: 50%; + margin-right: 0; + margin-left: 0; +} + +.width_third { + width: 33.3%; + margin-right: 0; + margin-left: 0; +} + +.h_basic { + height: 1024px; +} + +.h_full_view { + height: 100vh; +} + +.h_100 { + height: 100%; +} + +.wrap_center { + & > * { + margin-right: (100% - $width_basic) / 2; + margin-left: (100% - $width_basic) / 2; + + @include forTabletPortraitUp { + margin-right: (100% - $width_small) / 2; + margin-left: (100% - $width_small) / 2; + } + @include forTabletLandscapeUp { + margin-right: (100% - $width_medium) / 2; + margin-left: (100% - $width_medium) / 2; + } + @include forBigDesktopUp { + margin-right: (100% - $width_large) / 2; + margin-left: (100% - $width_large) / 2; + } + } +} + + + +// Clearing and floating +// ----------------------------------------------------------------------------- +.clear { + clear: both; + + &::before, + &::after { + clear: both; + } +} + +.overflow { + overflow: auto; +} + +.float_left { + float: left; +} + +.float_right { + float: right; +} + +.float_space_left { + @extend .float_left; + margin-right: $space_small; +} + +.float_half_size { + float: left; + width: 50%; +} + +.x_long { + overflow-x: scroll; +} + + + +// Inlining +// ----------------------------------------------------------------------------- +.inline { + display: inline-block; +} + + + +// Positioned elements +// ----------------------------------------------------------------------------- +%viewport_fixed { + position: fixed; + top: 0; + left: 0; + width: 100vw; + height: 100vh; +} + +%full_parent { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + // width: 100%; + // height: 100%; +} + +.pos_abs { + position: absolute; +} + +.pos_rel { + position: relative; +} + +.pos_fix { + position: fixed; +} + +.pin_top { + top: 0; +} + +.pin_right { + right: 0; +} + +.pin_bottom { + bottom: 0; +} + +.pin_left { + left: 0; +} + +.pos_full_view { + @extend %viewport_fixed; + background-color: rgba($alpha_color, 0.5); +} + +.pos_full_page { + @extend %full_parent; + background-color: rgba($charlie_color, 0.25); +} + +.hover_back_change { + background-color: $color_darker; + transition: background-color 0.2s ease-in-out; + + &:hover { + background-color: $color_back_basic; + } +} + +.mouse_over { + @extend %viewport_fixed; + z-index: $z_heaven; + background-color: transparentize($color_darkest, 0.5); + transition: background-color $duration_long $timing_basic $duration_long; + pointer-events: none; +} + + + +// Colors +// ----------------------------------------------------------------------------- +.txt_color_light { + color: $color_brighter; +} + +.txt_color_dark { + color: $color_darker; +} + + + +// Text +// ----------------------------------------------------------------------------- +.txt_tiny { + font-size: .5em !important; +} + +.txt_smaller { + font-size: .75em !important; +} + +.txt_larger { + font-size: 1.2em !important; +} + +.txt_huge { + font-size: 3em !important; +} + +.txt_hero { + font-size: $size_hero; +} + +.txt_center { + text-align: center !important; +} + +.txt_right { + text-align: right !important; +} + +.txt_left { + text-align: left !important; +} + +.txt_top { + vertical-align: top !important; +} + +.txt_bottom { + vertical-align: bottom !important; +} + +.txt_white { + color: white; +} + +.txt_black { + color: black; +} + +.txt_gradient { + background: linear-gradient(165deg, $alpha_color 30%, $bravo_color 45%, $charlie_color 50%, $delta_color, $echo_color 80%, $foxtrot_color); + background-clip: text; + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} diff --git a/source/style/hippie/modules/card/_card_module.scss b/source/style/hippie/modules/card/_card_module.scss index c51a19f..2f40b1d 100644 --- a/source/style/hippie/modules/card/_card_module.scss +++ b/source/style/hippie/modules/card/_card_module.scss @@ -2,75 +2,75 @@ // ------------------------------------------------------------------------------ .html_card { - @extend %h_content_full; + @extend %h_content_full; - body { + body { - .card_bkg { - @extend %full_parent; - transition-duration: 800ms; - overflow: hidden; - vertical-align: top; - z-index: -1; + .card_bkg { + @extend %full_parent; + transition-duration: 800ms; + overflow: hidden; + vertical-align: top; + z-index: -1; - & > svg { - position: relative; - } - } + & > svg { + position: relative; + } + } - .card_box { - display: flex; - align-items: center; - justify-content: center; - height: 100vh; + .card_box { + display: flex; + align-items: center; + justify-content: center; + height: 100vh; - * { - font-family: $family_text_card; - // text-align: center; - } + * { + font-family: $family_text_card; + // text-align: center; + } - & > div { - position: relative; - padding: 64px 64px 24px 64px; - border: 1px solid #FFF; - background-color: #F5F5F5; - z-index: 40; - } - } + & > div { + position: relative; + padding: 64px 64px 24px 64px; + border: 1px solid #FFF; + background-color: #F5F5F5; + z-index: 40; + } + } - h1 { - margin: 16px 0; - color: #1E1E1E; - font-size: 24px; - line-height: 1.4em; - font-weight: normal; - } + h1 { + margin: 16px 0; + color: #1E1E1E; + font-size: 24px; + line-height: 1.4em; + font-weight: normal; + } - p { - margin-top: 0; - margin-bottom: 16px; - font-size: 12px; - line-height: 1.4em; - } + p { + margin-top: 0; + margin-bottom: 16px; + font-size: 12px; + line-height: 1.4em; + } - .marked { - // padding-left: 1em; - // text-indent: -1em; + .marked { + // padding-left: 1em; + // text-indent: -1em; - &::before { content: "*\0000a0" } - } + &::before { content: "*\0000a0" } + } - .decent { color: #666 } + .decent { color: #666 } - a { - color: #000; - text-decoration: none; + a { + color: #000; + text-decoration: none; - &:hover { - color: #F4F9FA; - background-color: #0C85FF; - text-decoration: none; - } - } - } + &:hover { + color: #F4F9FA; + background-color: #0C85FF; + text-decoration: none; + } + } + } } diff --git a/source/style/hippie/modules/explanation/_explanation_module.scss b/source/style/hippie/modules/explanation/_explanation_module.scss index 981bdce..f42f450 100644 --- a/source/style/hippie/modules/explanation/_explanation_module.scss +++ b/source/style/hippie/modules/explanation/_explanation_module.scss @@ -1,115 +1,120 @@ -// Custom extends and mixins -// ------------------------------------------------------------------------------ -@import "mixins"; -@import "extends"; - -// Explanation module styles -// ------------------------------------------------------------------------------ - -%expose_after { - &::after { - content: ""; - display: block; - height: 48px; - background-color: rgba($delta_color, 0.1) !important; - } -} -%expose_before { - &::before { - content: ""; - display: block; - height: 48px; - background-color: rgba($delta_color, 0.1) !important; - } -} -%expose { - &::before, &::after { - content: ""; - display: block; - height: 48px; - background-color: rgba($delta_color, 0.1) !important; - } -} -%exp { -} -%exp_hidden { - display: none; -} - -.exp_wrap { - position: relative; -} - -.exp_pop { - @extend %exp_hidden !optional; - position: absolute; - z-index: 100; - top: $space_large; - left: $space_large; - padding: $space_half; - border: 4px solid $color_back_basic; - border-radius: 4px; - background-color: $color_back_basic; - pointer-events: none; -} -.exp_marker_pop { - position: absolute; - top: -$size_text_basic / 4 * 3; - right: -$size_text_basic / 2; - width: $size_text_basic; - height: $size_text_basic; - border: $space_tiny solid $color_highlight_basic; - border-radius: $size_text_basic; - color: $color_highlight_basic; - background-color: $color_darkest; -} - -.exp_expose { - @extend %expose !optional; -} -.exp_expose_pre { - @extend %expose_after; -} -.exp_expose_post { - @extend %expose_before; -} - -.exp_overlay_btn { - position: fixed; - width: 3em; - height: 2em; - // padding: $space_basic $space_basic * 2; - cursor: pointer; -} -.exp_help_btn { - display: table; - right: $space_double; - bottom: $space_double; - background-color: rgba($color_darkest, 0.4); - &:hover { - background-color: $color_brightest; - > .span_solo { - color: $color_darkest; - } - } - .span_solo { - display: table-cell; - color: rgba($color_brightest, 0.8); - font-family: $family_text_mono; - font-size: 1.4em; - text-align: center; - vertical-align: middle; - } -} - - - -.expose_height { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - background-color: rgba($delta_color, 0.1) !important; - @include vendor-prefix(transition, height 0.5s ease); -} +// Custom extends and mixins +// ------------------------------------------------------------------------------ +@import "mixins"; +@import "extends"; + +// Explanation module styles +// ------------------------------------------------------------------------------ + +%expose_after { + &::after { + content: ""; + display: block; + height: 48px; + background-color: rgba($delta_color, 0.1) !important; + } +} +%expose_before { + &::before { + content: ""; + display: block; + height: 48px; + background-color: rgba($delta_color, 0.1) !important; + } +} +%expose { + &::before, &::after { + content: ""; + display: block; + height: 48px; + background-color: rgba($delta_color, 0.1) !important; + } +} +%exp { +} +%exp_hidden { + display: none; +} + +.exp_wrap { + position: relative; +} + +.exp_overlay { + @extend %full_parent; + background-color: transparentize($alpha_color, .6); +} + +.exp_pop { + @extend %exp_hidden !optional; + position: absolute; + z-index: 100; + top: $space_large; + left: $space_large; + padding: $space_half; + border: 4px solid $color_back_basic; + border-radius: 4px; + background-color: $color_back_basic; + pointer-events: none; +} +.exp_marker_pop { + position: absolute; + top: -$size_text_basic / 4 * 3; + right: -$size_text_basic / 2; + width: $size_text_basic; + height: $size_text_basic; + border: $space_tiny solid $color_highlight_basic; + border-radius: $size_text_basic; + color: $color_highlight_basic; + background-color: $color_darkest; +} + +.exp_expose { + @extend %expose !optional; +} +.exp_expose_pre { + @extend %expose_after; +} +.exp_expose_post { + @extend %expose_before; +} + +.exp_overlay_btn { + position: fixed; + width: 3em; + height: 2em; + // padding: $space_basic $space_basic * 2; + cursor: pointer; +} +.exp_help_btn { + display: table; + right: $space_double; + bottom: $space_double; + background-color: rgba($color_darkest, 0.4); + &:hover { + background-color: $color_brightest; + > .span_solo { + color: $color_darkest; + } + } + .span_solo { + display: table-cell; + color: rgba($color_brightest, 0.8); + font-family: $family_text_mono; + font-size: 1.4em; + text-align: center; + vertical-align: middle; + } +} + + + +.expose_height { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: rgba($delta_color, 0.1) !important; + @include vendor-prefix(transition, height 0.5s ease); +} diff --git a/source/style/hippie/modules/explanation/_extends.scss b/source/style/hippie/modules/explanation/_extends.scss deleted file mode 100644 index e69de29..0000000 diff --git a/source/style/hippie/modules/explanation/_mixins.scss b/source/style/hippie/modules/explanation/_mixins.scss deleted file mode 100644 index e69de29..0000000 diff --git a/source/templates/hippie/partials/_body_hover.njk b/source/templates/hippie/partials/_body_hover.njk index 9e94f28..61fb3ec 100644 --- a/source/templates/hippie/partials/_body_hover.njk +++ b/source/templates/hippie/partials/_body_hover.njk @@ -1,2 +1,2 @@ - -
+ +
diff --git a/source/templates/hippie/partials/_body_nav.njk b/source/templates/hippie/partials/_body_nav.njk index 5f555fe..5553439 100644 --- a/source/templates/hippie/partials/_body_nav.njk +++ b/source/templates/hippie/partials/_body_nav.njk @@ -1,28 +1,28 @@ - -
- -
-{#
- ? -
#} + +
+ +
+{#
+? +
#}