From 8e81d029d2ea2bbe6beb727bc646b723053d21c4 Mon Sep 17 00:00:00 2001 From: Puranjay Jain Date: Tue, 27 Jun 2017 19:28:07 +0530 Subject: [PATCH] fixed what gitkraken failed to fix --- CHANGELOG.md | 82 +- LICENSE | 42 +- README.md | 279 ++++-- bower.json | 122 ++- demo/index.html | 95 +- demo/messages.json | 34 +- demo/x-demo.html | 330 +++---- emojione-badge.html | 92 +- emojione-chip-input.html | 224 ++--- emojione-chip.html | 302 +++--- emojione-emoji.html | 90 +- emojione-icons.html | 98 +- emojione-selector.html | 1960 +++++++++++++++++++------------------- fuse.min.js | 16 +- index.html | 43 +- lodash.custom.min.js | 44 + polymer.json | 7 + 17 files changed, 2045 insertions(+), 1815 deletions(-) create mode 100644 lodash.custom.min.js create mode 100644 polymer.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 9fb1025..e148a6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,42 +1,42 @@ -# v1.0.0 - -* changed the recent emoji logic to only include an array with `:shortname:` - -* added `emoji-changed` event along with emoji value for event-based applications - -# v1.0.1 - -- Fixed merging issues -- -- fixed hybrid `` - -# v2.0.0 - -* only supports pure v2.0 elements - -* change the title to the version string - -* adds breaking changes like emojione version to v3 - -* removes fuse js external dependency instead adds the script since fuse js is no longer on bower :sobs: - -* dropped lodash dependency - -* converted to es6 component, polyfills maybe required to support older browsers and adapter for es5 converted components see - [https://www.polymer-project.org/2.0/docs/es6](https://www.polymer-project.org/2.0/docs/es6) - -* performance improvement using event delegation in emoji list tap even - -* dropped `` in favor of `` - -* changed the recent emoji logic to only include an array with `code_points.base` also the `primary key` in **emoji.json** - -* added `emoji-changed` event along with emoji value for event-based applications - -* added arrow key navigation in emoji list - -* dropped `` in favor of `` - -# v2.0.1 - +# v1.0.0 + +* changed the recent emoji logic to only include an array with `:shortname:` + +* added `emoji-changed` event along with emoji value for event-based applications + +# v1.0.1 + +- Fixed merging issues +- +- fixed hybrid `` + +# v2.0.0 + +* only supports pure v2.0 elements + +* change the title to the version string + +* adds breaking changes like emojione version to v3 + +* removes fuse js external dependency instead adds the script since fuse js is no longer on bower :sobs: + +* dropped lodash dependency + +* converted to es6 component, polyfills maybe required to support older browsers and adapter for es5 converted components see + [https://www.polymer-project.org/2.0/docs/es6](https://www.polymer-project.org/2.0/docs/es6) + +* performance improvement using event delegation in emoji list tap even + +* dropped `` in favor of `` + +* changed the recent emoji logic to only include an array with `code_points.base` also the `primary key` in **emoji.json** + +* added `emoji-changed` event along with emoji value for event-based applications + +* added arrow key navigation in emoji list + +* dropped `` in favor of `` + +# v2.0.1 + * Minor bug fixes \ No newline at end of file diff --git a/LICENSE b/LICENSE index d84f778..c4209cd 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,21 @@ -MIT License - -Copyright (c) 2017 Puranjay Jain - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) 2017 Puranjay Jain + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index b2f0e90..7584ff9 100644 --- a/README.md +++ b/README.md @@ -1,68 +1,211 @@ -# \ v2 - -A polymer element that works best as a emoji picker and is powered by the [emojione](https://www.emojione.com/) library - -## demo - -https://puranjayjain.github.io/emojione-selector/ - -### Key Features: - -- v1.x supports hybrid elements, v2.x supports es6 pure components -- Supports unicode diversity update -- Advanced search with multi keyword search -- Features a real-life demo -- Mobile first approach to a picker -- Independent of any containers like a dialog or menu, user is free to use it in a container of their choosing -- Built with a11y support - -### Keyboard shortcuts: - -- you can use `ctrl + (0-9)` to move through the various categories -- you can move thought the emoji list using `tab` (forwards) or `shift + tab` (go back) -- you can also use arrow keys to navigate through the emoji list - -## Install the Polymer-CLI - -First, make sure you have the [Polymer CLI](https://www.npmjs.com/package/polymer-cli) installed. Then run `polymer serve` to serve your element locally. - -## Viewing the Element - -``` -$ polymer serve -``` - -## Running Tests - -``` -$ polymer test -``` - -The application is already set up to be tested via [web-component-tester](https://github.com/Polymer/web-component-tester). Run `polymer test` to run your application's test suite locally. - -## Live Demo - -Example: - - -```html - -``` - -## TODO - -- Loads of Tests -- v1.x with hybrid support \ No newline at end of file +[![Published on webcomponents.org](https://img.shields.io/badge/webcomponents.org-published-blue.svg)](https://beta.webcomponents.org/element/PolymerElements/paper-button) + +## <emojione-selector> + +A polymer element that works best as a emoji picker and is powered by the emojione library + +## demo + +https://puranjayjain.github.io/emojione-selector/ + +#### Key Features: +* Supports unicode diversity update +* Advanced search with multi keyword search +* Features a real-life demo +* Mobile first approach to a picker +* Independent of any containers like a dialog or menu, user is free to use it in a container of their choosing + +Example: + + +```html + + + + + + + + +
+ + + Send +
+``` diff --git a/bower.json b/bower.json index 48cb235..b4e7b36 100644 --- a/bower.json +++ b/bower.json @@ -1,68 +1,54 @@ -{ - "name": "emojione-selector", - "description": "A polymer element that works best as a emoji picker and is powered by the emojione library", - "main": "emojione-selector.html", - "homepage": "https://github.com/puranjayjain/emojione-selector", - "authors": [ - "Puranjay Jain " - ], - "keywords": [ - "web-components", - "polymer", - "emoji", - "picker", - "emojione" - ], - "license": "MIT", - "ignore": [ - "node_modules", - "bower_components", - "test", - "tests", - "yarn.lock" - ], - "dependencies": { - "polymer": "Polymer/polymer#^2.0.0", - "iron-image": "PolymerElements/iron-image#^2.1.1", - "iron-ajax": "PolymerElements/iron-ajax#^2.0.2", - "iron-list": "PolymerElements/iron-list#^2.0.0", - "iron-localstorage": "PolymerElements/iron-localstorage#^2.0.0", - "paper-tabs": "PolymerElements/paper-tabs#^2.0.0", - "paper-icon-button": "PolymerElements/paper-icon-button#^2.0.0", - "paper-ripple": "PolymerElements/paper-ripple#^2.0.0", - "paper-material": "PolymerElements/paper-material#^2.0.0", - "paper-menu-button": "PolymerElements/paper-menu-button#^2.0.0", - "iron-selector": "PolymerElements/iron-selector#^2.0.0", - "paper-styles": "PolymerElements/paper-styles#^2.0.0", - "iron-flex-layout": "PolymerElements/iron-flex-layout#^2.0.0", - "emojione": "ranks/emojione#^3.0.3", - "neon-animation": "PolymerElements/neon-animation#^2.0.0", - "web-animations-js": "web-animations/web-animations-js#^2.2.5", - "iron-icon": "PolymerElements/iron-icon#^2.0.0", - "iron-collapse": "PolymerElements/iron-collapse#^2.0.0", - "iron-a11y-keys": "PolymerElements/iron-a11y-keys#^2.0.0", - "paper-chip": "ThomasCybulski/paper-chip#^2.0.3", - "iron-meta": "PolymerElements/iron-meta#^2.0.0", - "iron-a11y-keys-behavior": "PolymerElements/iron-a11y-keys-behavior#^2.0.0", - "iron-resizable-behavior": "PolymerElements/iron-resizable-behavior#^2.0.0", - "lodash": "lodash/lodash#^4.17.4" - }, - "devDependencies": { - "iron-demo-helpers": "PolymerElements/iron-demo-helpers#^2.0.0", - "web-component-tester": "Polymer/web-component-tester#^6.0.0", - "webcomponentsjs": "webcomponents/webcomponentsjs#^1.0.0" - }, - "resolutions": { - "polymer": "^2.0.0", - "webcomponentsjs": "^v1.0.0", - "lodash": "^4.17.4", - "iron-flex-layout": "^2.0.0", - "iron-selector": "^2.0.0", - "paper-icon-button": "^2.0.0", - "paper-material": "^2.0.0", - "paper-styles": "^2.0.0", - "paper-ripple": "^2.0.0", - "iron-meta": "^2.0.0", - "iron-a11y-keys-behavior": "^2.0.0" - } -} +{ + "name": "emojione-selector", + "homepage": "https://github.com/puranjayjain/emojione-selector", + "authors": [ + "Puranjay Jain " + ], + "description": "A polymer element that works best as a emoji picker and is powered by the emojione library", + "main": "emojione-selector.html", + "keywords": [ + "web-components", + "polymer", + "emoji", + "picker", + "emojione" + ], + "license": "MIT", + "ignore": [ + "node_modules", + "bower_components", + "test", + "tests", + "yarn.lock" + ], + "dependencies": { + "emojione": "ranks/emojione#^3.0.3", + "polymer": "Polymer/polymer#^1.9.1 || ^2.0.0", + "iron-image": "PolymerElements/iron-image#^2.1.1", + "iron-ajax": "PolymerElements/iron-ajax#^2.0.2", + "iron-list": "PolymerElements/iron-list#^2.0.0", + "iron-localstorage": "PolymerElements/iron-localstorage#^2.0.0", + "paper-tabs": "PolymerElements/paper-tabs#^2.0.0", + "paper-icon-button": "PolymerElements/paper-icon-button#^2.0.0", + "paper-ripple": "PolymerElements/paper-ripple#^2.0.0", + "paper-material": "PolymerElements/paper-material#^2.0.0", + "paper-menu-button": "PolymerElements/paper-menu-button#^2.0.0", + "iron-selector": "PolymerElements/iron-selector#^2.0.0", + "paper-styles": "PolymerElements/paper-styles#^2.0.0", + "iron-flex-layout": "PolymerElements/iron-flex-layout#^2.0.0", + "neon-animation": "PolymerElements/neon-animation#^2.0.0", + "web-animations-js": "web-animations/web-animations-js#^2.2.5", + "iron-icon": "PolymerElements/iron-icon#^2.0.0", + "iron-collapse": "PolymerElements/iron-collapse#^2.0.0", + "iron-a11y-keys": "PolymerElements/iron-a11y-keys#^2.0.0", + "iron-meta": "PolymerElements/iron-meta#^2.0.0", + "iron-a11y-keys-behavior": "PolymerElements/iron-a11y-keys-behavior#^2.0.0", + "iron-resizable-behavior": "PolymerElements/iron-resizable-behavior#^2.0.0", + "lodash": "lodash/lodash#^4.17.4" + }, + "devDependencies": { + "iron-demo-helpers": "PolymerElements/iron-demo-helpers#^2.0.0", + "web-component-tester": "Polymer/web-component-tester#^6.0.0", + "webcomponentsjs": "webcomponents/webcomponentsjs#^1.0.0" + } +} diff --git a/demo/index.html b/demo/index.html index 96d05ae..7266993 100644 --- a/demo/index.html +++ b/demo/index.html @@ -1,30 +1,67 @@ - - - - - - - emojione-selector demo - - - - - - - - - - - - - -
-

Basic emojione-selector demo

- - - -
- + + + + + + + emojione-selector demo + + + + + + + + \ No newline at end of file diff --git a/demo/messages.json b/demo/messages.json index 8fbfced..29f397e 100644 --- a/demo/messages.json +++ b/demo/messages.json @@ -1,18 +1,18 @@ -[ - { - "side": "left", - "message": "yo" - }, - { - "side": "left", - "message": "was up?" - }, - { - "side": "right", - "message": "yo man" - }, - { - "side": "left", - "message": "so we meeting today :grin:" - } +[ + { + "side": "left", + "message": "yo" + }, + { + "side": "left", + "message": "was up?" + }, + { + "side": "right", + "message": "yo man" + }, + { + "side": "left", + "message": "so we meeting today :grin:" + } ] \ No newline at end of file diff --git a/demo/x-demo.html b/demo/x-demo.html index c52af06..885de5b 100644 --- a/demo/x-demo.html +++ b/demo/x-demo.html @@ -1,166 +1,166 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/emojione-badge.html b/emojione-badge.html index 46166f2..41b1aa8 100644 --- a/emojione-badge.html +++ b/emojione-badge.html @@ -1,53 +1,41 @@ - - - - - + + + \ No newline at end of file diff --git a/emojione-chip-input.html b/emojione-chip-input.html index cee455a..44783d5 100644 --- a/emojione-chip-input.html +++ b/emojione-chip-input.html @@ -1,113 +1,113 @@ - - - - - - - - - - + + + + + + + + + + \ No newline at end of file diff --git a/emojione-chip.html b/emojione-chip.html index 7f21426..761150c 100644 --- a/emojione-chip.html +++ b/emojione-chip.html @@ -1,152 +1,152 @@ - - - - - - - - + + + + + + + + \ No newline at end of file diff --git a/emojione-emoji.html b/emojione-emoji.html index d97bb46..a7a56b3 100644 --- a/emojione-emoji.html +++ b/emojione-emoji.html @@ -1,48 +1,44 @@ - - - - - + + + + + \ No newline at end of file diff --git a/emojione-icons.html b/emojione-icons.html index a97d985..cb3aa55 100644 --- a/emojione-icons.html +++ b/emojione-icons.html @@ -1,50 +1,50 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/emojione-selector.html b/emojione-selector.html index fa910e3..64d2e90 100644 --- a/emojione-selector.html +++ b/emojione-selector.html @@ -1,972 +1,990 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fuse.min.js b/fuse.min.js index 1f25d88..4b8a612 100644 --- a/fuse.min.js +++ b/fuse.min.js @@ -1,9 +1,9 @@ -/*! - * Fuse.js v3.0.1 - Lightweight fuzzy-search (http://fusejs.io) - * - * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me) - * All Rights Reserved. Apache Software License 2.0 - * - * http://www.apache.org/licenses/LICENSE-2.0 - */ +/*! + * Fuse.js v3.0.1 - Lightweight fuzzy-search (http://fusejs.io) + * + * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me) + * All Rights Reserved. Apache Software License 2.0 + * + * http://www.apache.org/licenses/LICENSE-2.0 + */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("Fuse",[],t):"object"==typeof exports?exports.Fuse=t():e.Fuse=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=8)}([function(e,t,n){"use strict";e.exports=function(e){return"[object Array]"===Object.prototype.toString.call(e)}},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;nn)return i(e,this.pattern,r);var o=this.options,a=o.location,c=o.distance,h=o.threshold,u=o.findAllMatches,l=o.minMatchCharLength;return s(e,this.pattern,this.patternAlphabet,{location:a,distance:c,threshold:h,findAllMatches:u,minMatchCharLength:l})}}]),e}();e.exports=c},function(e,t,n){"use strict";var r=n(0),o=function e(t,n,o){if(n){var i=n.indexOf("."),s=n,a=null;-1!==i&&(s=n.slice(0,i),a=n.slice(i+1));var c=t[s];if(null!==c&&void 0!==c)if(a||"string"!=typeof c&&"number"!=typeof c)if(r(c))for(var h=0,u=c.length;h0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=[],r=-1,o=-1,i=0,s=e.length;i=t&&n.push([r,o]),r=-1)}return e[i-1]&&i-r>=t&&n.push([r,i-1]),n}},function(e,t,n){"use strict";e.exports=function(e){for(var t={},n=e.length,r=0;r2&&void 0!==arguments[2]?arguments[2]:/ +/g,r=e.match(new RegExp(t.replace(n,"|"))),o=!!r,s=[];if(o)for(i=0,matchesLen=r.length;i=j;T-=1){var E=T-1,K=n[e.charAt(E)];if(K&&(S[E]=1),I[T]=(I[T+1]<<1|1)&K,0!==F&&(I[T]|=(L[T+1]|L[T])<<1|1|L[T+1]),I[T]&C&&(w=r(t,{errors:F,currentLocation:E,expectedLocation:g,distance:h}))<=y){if(y=w,(k=E)<=g)break;j=Math.max(1,2*g-k)}}if(r(t,{errors:F+1,currentLocation:g,expectedLocation:g,distance:h})>y)break;L=I}return{isMatch:k>=0,score:0===w?.001:w,matchedIndices:o(S,p)}}},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:"",t=[];if(this.options.tokenize)for(var n=e.split(this.options.tokenSeparator),r=0,o=n.length;r0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1],n=this.list,r={},o=[];if("string"==typeof n[0]){for(var i=0,s=n.length;i1)throw new Error("Key weight has to be > 0 and <= 1");v=v.name}else a[v]={weight:1};this._analyze({key:v,value:this.options.getFn(u,v),record:u,index:c},{resultMap:r,results:o,tokenSearchers:e,fullSearcher:t})}return{weights:a,results:o}}},{key:"_analyze",value:function(e,t){var n=e.key,r=e.value,o=e.record,i=e.index,s=t.tokenSearchers,c=void 0===s?[]:s,h=t.fullSearcher,u=void 0===h?[]:h,l=t.resultMap,f=void 0===l?{}:l,v=t.results,d=void 0===v?[]:v;if(void 0!==r&&null!==r){var p=!1,g=-1,m=0;if("string"==typeof r){this._log("\nKey: "+(""===n?"-":n));var y=u.search(r);if(this._log('Full text: "'+r+'", score: '+y.score),this.options.tokenize){for(var k=r.split(this.options.tokenSeparator),x=[],S=0;S-1&&(O=(O+g)/2),this._log("Score average:",O);var P=!this.options.tokenize||!this.options.matchAllTokens||m>=c.length;if(this._log("\nCheck Matches: "+P),(p||y.isMatch)&&P){var j=f[i];j?j.output.push({key:n,score:O,matchedIndices:y.matchedIndices}):(f[i]={item:o,output:[{key:n,score:O,matchedIndices:y.matchedIndices}]},d.push(f[i]))}}else if(a(r))for(var z=0,I=r.length;z - - - - - emojione-selector - - - - - + + + + + + + + + emojione selector + + + + + + + + + + + \ No newline at end of file diff --git a/lodash.custom.min.js b/lodash.custom.min.js new file mode 100644 index 0000000..a367e8e --- /dev/null +++ b/lodash.custom.min.js @@ -0,0 +1,44 @@ +/** + * @license + * Lodash (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE + * Build: `lodash exports="global" include="uniqBy,findIndex,replace,extend,cloneDeep,concat,endsWith,startsWith" -o ./helpers/lodash.js` + */ +;(function(){function t(t,e){return t.set(e[0],e[1]),t}function e(t,e){return t.add(e),t}function r(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function n(t,e){for(var r=-1,n=null==t?0:t.length;++ri))return false;if((f=u.get(t))&&u.get(e))return f==e;var f=-1,l=true,s=2&r?new A:Nt;for(u.set(t,e),u.set(e,t);++f=t}function At(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function wt(t){return null!=t&&typeof t=="object"}function mt(t){return typeof t=="symbol"||wt(t)&&"[object Symbol]"==B(t)}function Ot(t){return t?(t=kt(t),t===Vt||t===-Vt?1.7976931348623157e308*(0>t?-1:1):t===t?t:0):0===t?t:0}function St(t){t=Ot(t);var e=t%1;return t===t?e?t-e:t:0}function kt(t){if(typeof t=="number")return t;if(mt(t))return Ct;if(At(t)&&(t=typeof t.valueOf=="function"?t.valueOf():t, +t=At(t)?t+"":t),typeof t!="string")return 0===t?t:+t;t=t.replace(Gt,"");var e=Qt.test(t);return e||Yt.test(t)?ne(t.slice(2),e?2:8):Kt.test(t)?Ct:+t}function zt(t){return null==t?"":W(t)}function xt(t,e,r){return t=null==t?Nt:$(t,e),t===Nt?r:t}function It(t,e){var r;if(r=null!=t){r=t;var n;n=q(e,r);for(var o=-1,u=n.length,c=false;++ot)&&(t==e.length-1?e.pop():ze.call(e,t,1),--this.size,true)},v.prototype.get=function(t){var e=this.__data__;return t=S(e,t),0>t?Nt:e[t][1]},v.prototype.has=function(t){return-1n?(++this.size,r.push([t,e])):r[n][1]=e,this},d.prototype.clear=function(){this.size=0,this.__data__={hash:new g,map:new(Le||v),string:new g +}},d.prototype.delete=function(t){return t=nt(this,t).delete(t),this.size-=t?1:0,t},d.prototype.get=function(t){return nt(this,t).get(t)},d.prototype.has=function(t){return nt(this,t).has(t)},d.prototype.set=function(t,e){var r=nt(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this},A.prototype.add=A.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},A.prototype.has=function(t){return this.__data__.has(t)},w.prototype.clear=function(){this.__data__=new v, +this.size=0},w.prototype.delete=function(t){var e=this.__data__;return t=e.delete(t),this.size=e.size,t},w.prototype.get=function(t){return this.__data__.get(t)},w.prototype.has=function(t){return this.__data__.has(t)},w.prototype.set=function(t,e){var r=this.__data__;if(r instanceof v){var n=r.__data__;if(!Le||199>n.length)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new d(n)}return r.set(t,e),this.size=r.size,this};var Xe=Fe?function(t,e){return Fe(t,"toString",{configurable:true, +enumerable:false,value:$t(e),writable:true})}:Ut,Ye=Ne&&1/j(new Ne([,-0]))[1]==Vt?function(t){return new Ne(t)}:Dt,Ze=Ee?function(t){return null==t?[]:(t=Object(t),o(Ee(t),function(e){return ke.call(t,e)}))}:Lt,tr=Ee?function(t){for(var e=[];t;)c(e,Ze(t)),t=Oe(t);return e}:Lt,er=B;(Me&&"[object DataView]"!=er(new Me(new ArrayBuffer(1)))||Le&&"[object Map]"!=er(new Le)||Pe&&"[object Promise]"!=er(Pe.resolve())||Ne&&"[object Set]"!=er(new Ne)||Ve&&"[object WeakMap]"!=er(new Ve))&&(er=function(t){var e=B(t); +if(t=(t="[object Object]"==e?t.constructor:Nt)?yt(t):"")switch(t){case Re:return"[object DataView]";case Te:return"[object Map]";case We:return"[object Promise]";case qe:return"[object Set]";case Ge:return"[object WeakMap]"}return e});var rr=function(t){var e=0,r=0;return function(){var n=De(),o=16-(n-r);if(r=n,0u?Nt:c,u=1),e=Object(e);++or&&(r=Be(n+r,0)), +f(t,rt(e,3),r)):-1},_.get=xt,_.hasIn=It,_.identity=Ut,_.isArguments=or,_.isArray=ur,_.isArrayLike=gt,_.isBuffer=cr,_.isFunction=vt,_.isLength=dt,_.isObject=At,_.isObjectLike=wt,_.isSymbol=mt,_.isTypedArray=ir,_.stubArray=Lt,_.stubFalse=Pt,_.noop=Dt,_.replace=function(){var t=arguments,e=zt(t[0]);return 3>t.length?e:e.replace(t[1],t[2])},_.startsWith=function(t,e,r){return t=zt(t),r=null==r?0:I(St(r),t.length),e=W(e),t.slice(r,r+e.length)==e},_.toFinite=Ot,_.toInteger=St,_.toNumber=kt,_.toString=zt, +_.VERSION="4.17.4",ce._=_}).call(this); \ No newline at end of file diff --git a/polymer.json b/polymer.json new file mode 100644 index 0000000..903de29 --- /dev/null +++ b/polymer.json @@ -0,0 +1,7 @@ +{ + "lint": { + "rules": [ + "polymer-2-hybrid" + ] + } +}