├── LICENSE ├── README.md ├── app.css ├── app.js ├── index.html ├── skypad-og-image.png └── vendor ├── codeflask ├── codeflask.css └── codeflask.js ├── mui ├── mui.min.css └── mui.min.js ├── prism ├── prism.css └── prism.js ├── skygear ├── polyfill.min.js └── skygear.min.js └── zepto └── zepto.min.js /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "{}" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright {yyyy} {name of copyright owner} 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Skypad 2 | 3 | Simple, real time collaborative notepad on the cloud. First version quickly built in an hour with [Skygear](https://skygear.io) 4 | 5 | #### Try now: 6 | * Create a new note: https://skygear-demo.github.io/skypad 7 | 8 | ![Code highlight Preview](https://user-images.githubusercontent.com/1916493/28747571-e14a8030-74d4-11e7-8c48-6f2edc1abc0c.gif) 9 | 10 | ## Non-CDN version 11 | * This version's libraries are not served from any CDN. Suitable for independent deployment. 12 | 13 | --- 14 | 15 | # Features 16 | 17 | * Handy - Create a pad instantly. 18 | * Simple UI - Neat, undistracting and responsive. 19 | * Easy Sharing - Share by URL, Twitter or FB. 20 | * Collaboration - Real time sync across all platforms. 21 | * Auto Save - Changes saved on the cloud automatically. 22 | * Syntax Highligting - Support JavaScript, C, HTML and CSS. More comming. 23 | 24 | [Try it here](https://skygear-demo.github.io/skypad) 25 | 26 | # Develop 27 | 28 | * Edit the `config` dict at `app.js` 29 | 30 | ```javascript 31 | const config = { 32 | baseURL: "https://yoursite.com/", // To help generate a correct sharing URL 33 | skygearAPIEndpoint: "https://skypad.skygeario.com/", // API Endpoint 34 | skygearAPIKey: "xxxxc613xxxx4227xxxx6114a401xxxx", // API Key 35 | writerUser: "username", // the default user for creating app 36 | writerPass: "password" // the default user password for creating app 37 | } 38 | ``` 39 | 40 | * Sign up at [Skygear](https://portal.skygear.io/signup) to obtain the API Endpoint and API Key. 41 | * Use `signupWithUserName` to create your own writerUser at Skygear. 42 | 43 | 44 | # Deploy 45 | 46 | This app can be deployed on localhost, AWS s3, Skygear hosting, GitHub Page or other static hosts. 47 | 48 | * These files are required to deploy: 49 | * `index.html` - Main layout 50 | * `app.js` - Main app logic 51 | * `app.css` - CSS styling 52 | * `/vendor` - Required external library files 53 | 54 | # Versions 55 | 56 | You can view the previous version as tags, e.g. `v0.1`, `v0.2` 57 | 58 | * `mvp` Quick first usable version 59 | * `v0.1` Social sharing and UI fixed 60 | * `v0.2` Code highlighting 61 | * `v0.3` Create new pad and pad title 62 | * `v1.0` List of my notes (Automatically managed) 63 | * `v1.1` **(Upcoming)** Private notes 64 | 65 | # Feedback and Contribution 66 | 67 | Feel free to open any issue and PR. Contact at hello@skygear.io 68 | 69 | ### Credits & Thanks 70 | 71 | * Code highlighting powered by [CodeFlask](https://github.com/kazzkiq/CodeFlask.js) by [kazzkiq](https://twitter.com/kazzkiq). That's awesome. 72 | 73 | * CSS and base style: [MUI](https://www.muicss.com/) a lightweight material framework. 74 | 75 | * I didn't use complex JS framework but [zepto.js](http://zeptojs.com/) for quick hacks and keep it lightweight. 76 | 77 | ### Mentions 78 | 79 | * [Discussion on HN](https://news.ycombinator.com/item?id=14864089) 80 | 81 | Skypad @SideProjectors 82 | 83 | ### About Skygear 84 | 85 | [Skygear](https://skygear.io) is a backend for building real-time and cloud-based web/mobile app. Skypad is a perfect simple usecase. 86 | -------------------------------------------------------------------------------- /app.css: -------------------------------------------------------------------------------- 1 | html,body { 2 | height:100%; 3 | } 4 | 5 | body { 6 | background-color: #111; 7 | } 8 | 9 | div#skypad-title { 10 | position: fixed; 11 | } 12 | 13 | div#skypad-title input { 14 | position: fixed; 15 | border: 0; 16 | height: 30px; 17 | width: 100%; 18 | font-family: monospace; 19 | color: #ecf0f1; 20 | margin: 0; 21 | padding: 6px 10px; 22 | top: 0; 23 | line-height: 24px; 24 | font-weight: 600; 25 | background-color: #2c3e50; 26 | } 27 | 28 | div#skypad-title input:focus { 29 | background: #2980b9; 30 | } 31 | 32 | div#skypad-title input::-webkit-input-placeholder { color: #ccc; } 33 | div#skypad-title input::-moz-placeholder {color: #ccc; } 34 | div#skypad-title input:-ms-input-placeholder { color: #ccc; } 35 | div#skypad-title input:-o-input-placeholder { color: #ccc; } 36 | 37 | 38 | div#skypad-display { 39 | position: fixed; 40 | border: 0; 41 | padding: 20px; 42 | margin-top: 42px; 43 | width: 100%; 44 | top: 0; 45 | color: #fff; 46 | background-color: #111; 47 | font-family: monospace; 48 | height: calc(100% - 130px); 49 | } 50 | 51 | textarea,input:focus { 52 | outline: none; 53 | } 54 | .CodeFlask__pre { 55 | bottom: 0; /* Fix the scrolling problem*/ 56 | } 57 | 58 | #credits { 59 | color: #999; 60 | } 61 | 62 | #credits a { 63 | color: #777; 64 | } 65 | 66 | #share-bar { 67 | border: 0; 68 | position: fixed; 69 | margin: 0; 70 | width:100%; 71 | bottom: 0; 72 | height: 40px; 73 | z-index: 20; 74 | color: #fff; 75 | background-color: #333; 76 | font-family: monospace; 77 | padding: 10px; 78 | display: none; 79 | } 80 | 81 | #side-bar { 82 | float;right; 83 | position: fixed; 84 | width: 200px; 85 | max-width: 30%; 86 | top: 42px; 87 | bottom: 0; 88 | color: #fff; 89 | right: 0; 90 | background: #2f3640; 91 | padding: 10px; 92 | border-left: 2px #456184 solid; 93 | transition: 1s; 94 | } 95 | 96 | 97 | #note-list { 98 | list-style-type: none; 99 | } 100 | 101 | #note-list li { 102 | padding-left: 1em; 103 | text-indent: -1em; 104 | text-overflow: ellipsis; 105 | white-space: nowrap; 106 | overflow: hidden; 107 | width: 120px; 108 | } 109 | 110 | #note-list li:before { 111 | content: "📝"; 112 | padding-right: 5px; 113 | } 114 | 115 | @media (max-width: 500px ){ 116 | #side-bar { 117 | right: -200px; 118 | } 119 | } 120 | 121 | .code-highlight-selector { 122 | float: right; 123 | display: none; 124 | } 125 | 126 | .code-highlight-selector button { 127 | font-size: 12px; 128 | } 129 | 130 | .code-highlight-selector ul { 131 | font-size: 12px; 132 | } 133 | 134 | .code-highlight-selector ul li a { 135 | cursor: pointer; 136 | } 137 | @media (max-height: 400px ){ 138 | #share-bar { 139 | visibility: hidden; 140 | } 141 | div#skypad-display { 142 | height: 100%; 143 | } 144 | } -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- 1 | const config = { 2 | baseURL: "https://skygear-demo.github.io/skypad", 3 | skygearAPIEndpoint: "https://skypad.skygeario.com/", // trailing slash is required 4 | skygearAPIKey: "ac59c61350b14227ad5a6114a40176ba", 5 | writerUser: "writer", 6 | writerPass: "writerpass" 7 | } 8 | 9 | let skygearPad = $("div#skypad-display"); 10 | let skygearTitle = $("div#skypad-title input"); 11 | let noteList = $("#note-list"); 12 | let codeHighlightSelector = $(".code-highlight-selector"); 13 | const Note = skygear.Record.extend("Note"); 14 | let thisNote = null; 15 | let ramdomToken = Math.random().toString(36).substring(7); // for distinguishing tabs 16 | 17 | let cachedCode = ''; 18 | 19 | function logoutDefaultUser(callback) { 20 | if (skygear.auth.currentUser && skygear.auth.currentUser.username == config.writerUser) { 21 | skygear.auth.logout().then( 22 | skygear.auth.signupAnonymously().then( 23 | function(user) { 24 | callback(user); 25 | } 26 | ) 27 | ); 28 | } 29 | } 30 | 31 | function createNoteListItem (note) { 32 | let li = document.createElement('li'); 33 | 34 | let item = document.createElement('a'); 35 | let noteURL = config.baseURL+"#"+note._id; 36 | item.textContent = note.title; 37 | item.setAttribute('href', noteURL); 38 | 39 | li.append(item) 40 | return li; 41 | } 42 | 43 | function createNote() { 44 | var note = new Note({ 45 | title:"", 46 | content: "", 47 | viewcount: 0 48 | }); 49 | 50 | note.setPublicReadWriteAccess(); 51 | return skygear.publicDB.save(note); 52 | } 53 | 54 | function saveNote(content) { 55 | thisNote['content'] = content; 56 | 57 | var toSaveNote = new Note({ 58 | _id: thisNote.id, 59 | content: thisNote.content 60 | }); 61 | skygear.publicDB.save(toSaveNote); 62 | } 63 | 64 | function updateTitleUI(title) { 65 | document.title = "Skypad - "+ title + " "; 66 | } 67 | 68 | function saveTitle(title) { 69 | thisNote['title'] = title; 70 | 71 | var toSaveNote = new Note({ 72 | _id: thisNote.id, 73 | title: thisNote.title 74 | }); 75 | skygear.publicDB.save(toSaveNote); 76 | } 77 | 78 | function increaseNoteCount(note) { 79 | var viewCount = note.viewcount; 80 | viewCount = (viewCount == undefined)? 0 :viewCount; 81 | var toSaveNote = new Note({ 82 | _id: note.id, 83 | viewcount: viewCount + 1 84 | }); 85 | skygear.publicDB.save(toSaveNote); 86 | } 87 | 88 | function fireSyncTitle(title) { 89 | if (thisNote) { 90 | skygear.pubsub.publish('note/' + thisNote._id, { 91 | token: ramdomToken, 92 | title: title 93 | }); 94 | updateTitleUI(title); 95 | saveTitle(title); 96 | } 97 | } 98 | 99 | 100 | function fireSync(content) { 101 | if (thisNote) { 102 | skygear.pubsub.publish('note/' + thisNote._id, { 103 | token: ramdomToken, 104 | content: content 105 | }); 106 | saveNote(content); 107 | } 108 | } 109 | 110 | function sync(data) { 111 | if (data.content !== undefined) { 112 | if (data.token === ramdomToken) { 113 | return; 114 | } else { 115 | cachedCode = data.content; 116 | flask.update(data.content); 117 | } 118 | } else { 119 | syncTitle(data); 120 | } 121 | } 122 | 123 | function syncTitle(data) { 124 | loadUserNotes(skygear.auth.currentUser._id); 125 | if (data.token === ramdomToken) { 126 | return; 127 | } else { 128 | skygearTitle.val(data.title); 129 | } 130 | } 131 | 132 | function loadUserNotes(userId) { // User created notes, not included notes user has edited 133 | const query = new skygear.Query(Note); 134 | query.equalTo('_created_by', userId); 135 | query.addDescending('_created_at'); 136 | 137 | skygear.publicDB.query(query) 138 | .then(function(records) { 139 | if (records.length == 0) { 140 | console.log("No Record for " + userId); 141 | return; 142 | } 143 | 144 | console.log(`Found ${records.length} notes for user.`); 145 | noteList.empty(); 146 | for (let note of records) { 147 | let noteItem = createNoteListItem(note); 148 | noteList.append(noteItem); 149 | } 150 | 151 | }, function(error) { 152 | console.error(error); 153 | }); 154 | } 155 | 156 | function loadExistingNote(noteId) { 157 | const query = new skygear.Query(Note); 158 | query.equalTo('_id', noteId); 159 | 160 | skygear.publicDB.query(query) 161 | .then(function(records) { 162 | if (records.length == 0) { 163 | console.log("No Record for " + noteId); 164 | flask.update( 165 | "// ❌ 404 not found.\n\nYou can create a new pad at " + config.baseURL 166 | ); 167 | return; 168 | } 169 | 170 | const record = records[0]; 171 | var noteURL = config.baseURL+"#"+record._id; 172 | 173 | increaseNoteCount(record); 174 | 175 | skygear.pubsub.on('note/' + record._id, sync); 176 | thisNote = record; 177 | 178 | flask.update(record.content); 179 | displaySharingOptions(noteURL); 180 | 181 | var titleText = record.title? record.title : "untitled"; 182 | skygearTitle.val(titleText); 183 | updateTitleUI(titleText); 184 | 185 | }, function(error) { 186 | console.error(error); 187 | }); 188 | } 189 | 190 | function initNote (user) { 191 | var noteId = getHashFromURL(); 192 | codeHighlightSelector.show(); 193 | if (noteId) { 194 | loadExistingNote(noteId); 195 | loadUserNotes(skygear.auth.currentUser._id) 196 | } else { 197 | createNote().then(function(note) { 198 | var noteURL = config.baseURL + "#" + note._id; 199 | 200 | thisNote = note; 201 | skygear.pubsub.on('note/' + note._id, sync); 202 | window.location.hash = note._id; 203 | 204 | var initTitle = 'untitled'; 205 | var initContent = '// Welcome to Skypad!' + 206 | '\n// 😎 Share with this URL ' + noteURL + 207 | '\n\n// Start typing.'; 208 | 209 | initContent += '\n\n// Now supports Syntax highlight. Uncomment the following lines to try:'+ 210 | '\n'+ 211 | '\n/*'+ 212 | '\nfunction hello(name) {'+ 213 | '\n console.log(`hello ${name}!`);'+ 214 | '\n}'+ 215 | '\n'+ 216 | '\nhello(\'world\');'+ 217 | '\n*/'; 218 | flask.update(initContent); 219 | skygearTitle.val(initTitle); 220 | displaySharingOptions(noteURL) 221 | fireSync(initContent); 222 | fireSyncTitle(initTitle); 223 | loadUserNotes(skygear.auth.currentUser._id); 224 | }); 225 | } 226 | } 227 | 228 | function configSkygear(apiEndpoint, apiKey) { 229 | skygear.config({ 230 | 'endPoint': apiEndpoint, 231 | 'apiKey': apiKey, 232 | }).then(function() { 233 | if (skygear.auth.currentUser) { 234 | logoutDefaultUser(initNote); 235 | initNote(skygear.auth.currentUser); 236 | } else { 237 | skygear.auth.signupAnonymously().then(function(user) { 238 | initNote(user); 239 | }); 240 | } 241 | }, function(error) { 242 | console.error(error.message); 243 | }); 244 | } 245 | 246 | function getHashFromURL() { 247 | var readNote = null; 248 | if (window.location.hash) { 249 | // Fragment exists 250 | readNote = window.location.hash.substr(1); 251 | } 252 | return readNote; 253 | } 254 | 255 | function displaySharingOptions(noteURL) { 256 | var shareBarEl = $("#share-bar"); 257 | 258 | var shareURLEl = $("#share-url"); 259 | var shareTwitterEl = $("#share-twitter"); 260 | var shareFBEl = $("#share-fb"); 261 | 262 | shareURLEl[0].href = noteURL; 263 | noteURL=noteURL.replace("#","%23"); 264 | shareTwitterEl[0].href = shareTwitterEl[0].href.replace('{{note-url}}',noteURL); 265 | shareFBEl[0].href = shareFBEl[0].href.replace('{{note-url}}',noteURL); 266 | 267 | shareBarEl.show(); 268 | } 269 | 270 | $().ready(function() { 271 | configSkygear(config.skygearAPIEndpoint, config.skygearAPIKey); 272 | }) 273 | 274 | // Code highlight 275 | var flask = new CodeFlask; 276 | flask.run('#skypad-display', { language: 'javascript'}); 277 | $('#code-highlight-caption').text("JavaScript"); 278 | flask.onUpdate(function(code) { 279 | if (cachedCode !== code) { 280 | cachedCode = code; 281 | fireSync(code); 282 | } 283 | 284 | skygearTitle.on("keyup change blur", function(e){ 285 | var title = skygearTitle.val(); 286 | fireSyncTitle(title); 287 | }) 288 | }); 289 | 290 | $(".code-highlight-selector ul li a").on("click touch", function(e) { 291 | var langChosen = e.target.dataset.lang; 292 | flask.run('#skypad-display', { language: langChosen}); 293 | langChosen = (langChosen =="clike")? "C" : langChosen; 294 | $('#code-highlight-caption').text(langChosen); 295 | flask.onUpdate(function(code) { 296 | if (cachedCode !== code) { 297 | cachedCode = code; 298 | fireSync(code); 299 | } 300 | }); 301 | }) 302 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Skypad - powered by Skygear 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | codeflask 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 |
42 | 43 |
44 |
45 | 50 |
[New] | Share: [url] [twitter] [facebook]
powered by [Skygear] | Source on [GitHub]
51 |
52 | 56 | 64 |
65 | 66 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /skypad-og-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skygear-demo/skypad/db4395b1384c80c926eb128d37dfd016bb9d16e1/skypad-og-image.png -------------------------------------------------------------------------------- /vendor/codeflask/codeflask.css: -------------------------------------------------------------------------------- 1 | .CodeFlask{ 2 | position:relative; 3 | overflow:hidden; 4 | } 5 | 6 | .CodeFlask__textarea, 7 | .CodeFlask__pre, 8 | code[class*="language-"], 9 | pre[class*="language-"]{ 10 | box-sizing:border-box; 11 | position:absolute; 12 | top:0; 13 | left:0; 14 | width:100%; 15 | padding:1rem !important; 16 | border:none; 17 | font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; 18 | font-size:13px; 19 | background:transparent; 20 | white-space:pre-wrap !important; 21 | line-height:1.5em; 22 | word-wrap: break-word; 23 | } 24 | 25 | .CodeFlask__textarea{ 26 | border:none; 27 | background:transparent; 28 | outline:none; 29 | resize:none; 30 | opacity:0.4; 31 | color:#fff; 32 | margin:0; 33 | z-index:1; 34 | height:100%; 35 | -webkit-overflow-scrolling: touch; 36 | -webkit-text-fill-color: transparent; 37 | tab-size: 4; 38 | } 39 | 40 | .CodeFlask__pre{ 41 | z-index:2; 42 | pointer-events:none; 43 | overflow-y:auto; 44 | margin:0; 45 | min-height:100%; 46 | margin:0 !important; 47 | background:transparent !important; 48 | } 49 | 50 | .CodeFlask__code{ 51 | font-size:inherit; 52 | font-family:inherit; 53 | color:inherit; 54 | display:block; 55 | } 56 | 57 | .CodeFlask__is-code { 58 | white-space: pre; 59 | } 60 | 61 | .CodeFlask__textarea_line-numbers { 62 | width: calc(100% - 3.8em); 63 | margin-left: 3.8em; 64 | padding-left: 0px !important; 65 | } 66 | 67 | .CodeFlask__pre_line-numbers { 68 | padding-left: 3.8em !important; 69 | } 70 | -------------------------------------------------------------------------------- /vendor/codeflask/codeflask.js: -------------------------------------------------------------------------------- 1 | function CodeFlask(indent) { 2 | this.indent = indent || " "; 3 | this.docroot = document; 4 | } 5 | 6 | CodeFlask.isString = function(x) { 7 | return Object.prototype.toString.call(x) === "[object String]"; 8 | } 9 | 10 | CodeFlask.prototype.run = function(selector, opts) { 11 | var target = CodeFlask.isString(selector) ? this.docroot.querySelectorAll(selector) : [selector]; 12 | 13 | if(target.length > 1) { 14 | throw 'CodeFlask.js ERROR: run() expects only one element, ' + 15 | target.length + ' given. Use .runAll() instead.'; 16 | } else { 17 | this.scaffold(target[0], false, opts); 18 | } 19 | } 20 | 21 | CodeFlask.prototype.runAll = function(selector, opts) { 22 | // Remove update API for bulk rendering 23 | this.update = null; 24 | this.onUpdate = null; 25 | 26 | var target = CodeFlask.isString(selector) ? this.docroot.querySelectorAll(selector) : selector; 27 | 28 | var i; 29 | for(i=0; i < target.length; i++) { 30 | this.scaffold(target[i], true, opts); 31 | } 32 | 33 | // Add the MutationObserver below for each one of the textAreas so we can listen 34 | // to when the dir attribute has been changed and also return the placeholder 35 | // dir attribute with it so it reflects the changes made to the textarea. 36 | var textAreas = this.docroot.getElementsByClassName("CodeFlask__textarea"); 37 | for(var i = 0; i < textAreas.length; i++) 38 | { 39 | window.MutationObserver = window.MutationObserver 40 | || window.WebKitMutationObserver 41 | || window.MozMutationObserver; 42 | 43 | var target = textAreas[i]; 44 | 45 | observer = new MutationObserver(function(mutation) { 46 | var textAreas = this.docroot.getElementsByClassName("CodeFlask__textarea"); 47 | for(var i = 0; i < textAreas.length; i++) 48 | { 49 | // If the text direction values are different set them 50 | if(textAreas[i].nextSibling.getAttribute("dir") != textAreas[i].getAttribute("dir")){ 51 | textAreas[i].nextSibling.setAttribute("dir", textAreas[i].getAttribute("dir")); 52 | } 53 | } 54 | }), 55 | config = { 56 | attributes: true, 57 | attributeFilter : ['dir'] 58 | }; 59 | observer.observe(target, config); 60 | } 61 | } 62 | 63 | CodeFlask.prototype.scaffold = function(target, isMultiple, opts) { 64 | var textarea = document.createElement('TEXTAREA'), 65 | highlightPre = document.createElement('PRE'), 66 | highlightCode = document.createElement('CODE'), 67 | initialCode = target.textContent, 68 | lang; 69 | 70 | if(opts && !opts.enableAutocorrect) 71 | { 72 | // disable autocorrect and spellcheck features 73 | textarea.setAttribute('spellcheck', 'false'); 74 | textarea.setAttribute('autocapitalize', 'off'); 75 | textarea.setAttribute('autocomplete', 'off'); 76 | textarea.setAttribute('autocorrect', 'off'); 77 | } 78 | 79 | if(opts) 80 | { 81 | lang = this.handleLanguage(opts.language); 82 | } 83 | 84 | this.defaultLanguage = target.dataset.language || lang || 'markup'; 85 | 86 | 87 | // Prevent these vars from being refreshed when rendering multiple 88 | // instances 89 | if(!isMultiple) { 90 | this.textarea = textarea; 91 | this.highlightCode = highlightCode; 92 | } 93 | 94 | target.classList.add('CodeFlask'); 95 | textarea.classList.add('CodeFlask__textarea'); 96 | highlightPre.classList.add('CodeFlask__pre'); 97 | highlightCode.classList.add('CodeFlask__code'); 98 | highlightCode.classList.add('language-' + this.defaultLanguage); 99 | 100 | // Fixing iOS "drunk-text" issue 101 | if(/iPad|iPhone|iPod/.test(navigator.platform)) { 102 | highlightCode.style.paddingLeft = '3px'; 103 | } 104 | 105 | // If RTL add the text-align attribute 106 | if(opts.rtl == true){ 107 | textarea.setAttribute("dir", "rtl") 108 | highlightPre.setAttribute("dir", "rtl") 109 | } 110 | 111 | if(opts.lineNumbers) { 112 | highlightPre.classList.add('line-numbers'); 113 | highlightPre.classList.add('CodeFlask__pre_line-numbers'); 114 | textarea.classList.add('CodeFlask__textarea_line-numbers') 115 | } 116 | 117 | // Appending editor elements to DOM 118 | target.innerHTML = ''; 119 | target.appendChild(textarea); 120 | target.appendChild(highlightPre); 121 | highlightPre.appendChild(highlightCode); 122 | 123 | // Render initial code inside tag 124 | textarea.value = initialCode; 125 | this.renderOutput(highlightCode, textarea); 126 | 127 | this.highlight(highlightCode); 128 | 129 | this.handleInput(textarea, highlightCode, highlightPre); 130 | this.handleScroll(textarea, highlightPre); 131 | 132 | } 133 | 134 | CodeFlask.prototype.renderOutput = function(highlightCode, input) { 135 | highlightCode.innerHTML = input.value.replace(/&/g, "&") 136 | .replace(//g, ">") + "\n"; 138 | } 139 | 140 | CodeFlask.prototype.handleInput = function(textarea, highlightCode, highlightPre) { 141 | var self = this, 142 | input, 143 | selStartPos, 144 | inputVal, 145 | roundedScroll, 146 | currentLineStart, 147 | indentLength; 148 | 149 | textarea.addEventListener('input', function(e) { 150 | input = this; 151 | 152 | input.value = input.value.replace(/\t/g, self.indent); 153 | 154 | self.renderOutput(highlightCode, input); 155 | 156 | self.highlight(highlightCode); 157 | }); 158 | 159 | textarea.addEventListener('keydown', function(e) { 160 | input = this, 161 | selStartPos = input.selectionStart, 162 | inputVal = input.value; 163 | currentLineStart = selStartPos - input.value.substr(0, selStartPos).split("\n").pop().length; 164 | 165 | // If tab pressed, indent 166 | if (e.keyCode === 9) { 167 | e.preventDefault(); 168 | 169 | // Allow shift-tab 170 | if (e.shiftKey) { 171 | indentLength = self.indent.length; 172 | 173 | // If the current line begins with the indent, unindent 174 | if (inputVal.substring(currentLineStart, currentLineStart + indentLength) == self.indent) { 175 | input.value = inputVal.substring(0, currentLineStart) + 176 | inputVal.substring(currentLineStart + indentLength, input.value.length); 177 | input.selectionStart = selStartPos - self.indent.length; 178 | input.selectionEnd = selStartPos - self.indent.length; 179 | } 180 | } else { 181 | input.value = inputVal.substring(0, selStartPos) + self.indent + 182 | inputVal.substring(selStartPos, input.value.length); 183 | input.selectionStart = selStartPos + self.indent.length; 184 | input.selectionEnd = selStartPos + self.indent.length; 185 | } 186 | 187 | highlightCode.innerHTML = input.value.replace(/&/g, "&") 188 | .replace(//g, ">") + "\n"; 190 | self.highlight(highlightCode); 191 | } 192 | }); 193 | } 194 | 195 | CodeFlask.prototype.handleScroll = function(textarea, highlightPre) { 196 | textarea.addEventListener('scroll', function(){ 197 | 198 | roundedScroll = Math.floor(this.scrollTop); 199 | 200 | // Fixes issue of desync text on mouse wheel, fuck Firefox. 201 | if(navigator.userAgent.toLowerCase().indexOf('firefox') < 0) { 202 | this.scrollTop = roundedScroll; 203 | } 204 | 205 | highlightPre.style.top = "-" + roundedScroll + "px"; 206 | }); 207 | } 208 | 209 | CodeFlask.prototype.handleLanguage = function(lang) { 210 | if(lang.match(/html|xml|xhtml|svg/)) { 211 | return 'markup'; 212 | } else if(lang.match(/js/)) { 213 | return 'javascript'; 214 | } else { 215 | return lang; 216 | } 217 | } 218 | 219 | CodeFlask.prototype.onUpdate = function(cb) { 220 | if(typeof(cb) == "function") { 221 | // this.textarea.addEventListener('input', function(e) { 222 | // cb(this.value); 223 | // }); 224 | var area = this.textarea; 225 | if (area.addEventListener) { 226 | area.addEventListener('input', function(e) { 227 | // event handling code for sane browsers 228 | cb(this.value); 229 | }, false); 230 | } else if (area.attachEvent) { 231 | area.attachEvent('onpropertychange', function(e) { 232 | cb(this.value); 233 | // IE-specific event handling code 234 | }); 235 | } 236 | 237 | }else{ 238 | throw 'CodeFlask.js ERROR: onUpdate() expects function, ' + 239 | typeof(cb) + ' given instead.'; 240 | } 241 | } 242 | 243 | CodeFlask.prototype.update = function(string) { 244 | var evt = document.createEvent("HTMLEvents"); 245 | 246 | this.textarea.value = string; 247 | this.renderOutput(this.highlightCode, this.textarea); 248 | this.highlight(this.highlightCode); 249 | 250 | evt.initEvent("input", false, true); 251 | this.textarea.dispatchEvent(evt); 252 | } 253 | 254 | CodeFlask.prototype.highlight = function(highlightCode) { 255 | Prism.highlightElement(highlightCode); 256 | } 257 | -------------------------------------------------------------------------------- /vendor/mui/mui.min.css: -------------------------------------------------------------------------------- 1 | /*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Arial,Verdana,Tahoma;font-size:14px;font-weight:400;line-height:1.429;color:rgba(0,0,0,.87);background-color:#FFF}a{color:#2196F3;text-decoration:none}a:focus,a:hover{text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}p{margin:0 0 10px}ol,ul{margin-top:0;margin-bottom:10px}hr{margin-top:20px;margin-bottom:20px;border:0;height:1px;background-color:rgba(0,0,0,.12)}strong{font-weight:700}abbr[title]{cursor:help;border-bottom:1px dotted #2196F3}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}.mui--appbar-height{height:56px}.mui--appbar-min-height,.mui-appbar{min-height:56px}.mui--appbar-line-height{line-height:56px}.mui--appbar-top{top:56px}@media (orientation:landscape) and (max-height:480px){.mui--appbar-height{height:48px}.mui--appbar-min-height,.mui-appbar{min-height:48px}.mui--appbar-line-height{line-height:48px}.mui--appbar-top{top:48px}}@media (min-width:480px){.mui--appbar-height{height:64px}.mui--appbar-min-height,.mui-appbar{min-height:64px}.mui--appbar-line-height{line-height:64px}.mui--appbar-top{top:64px}}.mui-appbar{background-color:#2196F3;color:#FFF}.mui-btn{font-weight:500;font-size:14px;line-height:18px;text-transform:uppercase;color:rgba(0,0,0,.87);background-color:#FFF;transition:all .2s ease-in-out;display:inline-block;height:36px;padding:0 26px;margin:6px 0;border:none;border-radius:2px;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation;background-image:none;text-align:center;line-height:36px;vertical-align:middle;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px;font-family:inherit;letter-spacing:.03em;position:relative;overflow:hidden}.mui-btn:active,.mui-btn:focus,.mui-btn:hover{color:rgba(0,0,0,.87);background-color:#fff}.mui-btn[disabled]:active,.mui-btn[disabled]:focus,.mui-btn[disabled]:hover{color:rgba(0,0,0,.87);background-color:#FFF}.mui-btn.mui-btn--flat{color:rgba(0,0,0,.87);background-color:transparent}.mui-btn.mui-btn--flat:active,.mui-btn.mui-btn--flat:focus,.mui-btn.mui-btn--flat:hover{color:rgba(0,0,0,.87);background-color:#f2f2f2}.mui-btn.mui-btn--flat[disabled]:active,.mui-btn.mui-btn--flat[disabled]:focus,.mui-btn.mui-btn--flat[disabled]:hover{color:rgba(0,0,0,.87);background-color:transparent}.mui-btn:active,.mui-btn:focus,.mui-btn:hover{outline:0;text-decoration:none;color:rgba(0,0,0,.87)}.mui-btn:focus,.mui-btn:hover{box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mui-btn:focus,.mui-btn:hover{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}}@supports (-ms-ime-align:auto){.mui-btn:focus,.mui-btn:hover{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}}.mui-btn:active:hover{box-shadow:0 0 4px rgba(0,0,0,.12),1px 3px 4px rgba(0,0,0,.2)}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mui-btn:active:hover{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 4px rgba(0,0,0,.12),1px 3px 4px rgba(0,0,0,.2)}}@supports (-ms-ime-align:auto){.mui-btn:active:hover{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 4px rgba(0,0,0,.12),1px 3px 4px rgba(0,0,0,.2)}}.mui-btn.mui--is-disabled,.mui-btn:disabled{cursor:not-allowed;pointer-events:none;opacity:.6;box-shadow:none}.mui-btn+.mui-btn{margin-left:8px}.mui-btn--flat{background-color:transparent}.mui-btn--flat:active,.mui-btn--flat:active:hover,.mui-btn--flat:focus,.mui-btn--flat:hover{box-shadow:none;background-color:#f2f2f2}.mui-btn--fab,.mui-btn--raised{box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mui-btn--fab,.mui-btn--raised{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}}@supports (-ms-ime-align:auto){.mui-btn--fab,.mui-btn--raised{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}}.mui-btn--fab:active,.mui-btn--raised:active{box-shadow:0 0 4px rgba(0,0,0,.12),1px 3px 4px rgba(0,0,0,.2)}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mui-btn--fab:active,.mui-btn--raised:active{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 4px rgba(0,0,0,.12),1px 3px 4px rgba(0,0,0,.2)}}@supports (-ms-ime-align:auto){.mui-btn--fab:active,.mui-btn--raised:active{box-shadow:0 -1px 2px rgba(0,0,0,.12),-1px 0 2px rgba(0,0,0,.12),0 0 4px rgba(0,0,0,.12),1px 3px 4px rgba(0,0,0,.2)}}.mui-btn--fab{position:relative;padding:0;width:55px;height:55px;line-height:55px;border-radius:50%;z-index:1}.mui-btn--primary{color:#FFF;background-color:#2196F3}.mui-btn--primary:active,.mui-btn--primary:focus,.mui-btn--primary:hover{color:#FFF;background-color:#39a1f4}.mui-btn--primary[disabled]:active,.mui-btn--primary[disabled]:focus,.mui-btn--primary[disabled]:hover{color:#FFF;background-color:#2196F3}.mui-btn--primary.mui-btn--flat{color:#2196F3;background-color:transparent}.mui-btn--primary.mui-btn--flat:active,.mui-btn--primary.mui-btn--flat:focus,.mui-btn--primary.mui-btn--flat:hover{color:#2196F3;background-color:#f2f2f2}.mui-btn--primary.mui-btn--flat[disabled]:active,.mui-btn--primary.mui-btn--flat[disabled]:focus,.mui-btn--primary.mui-btn--flat[disabled]:hover{color:#2196F3;background-color:transparent}.mui-btn--dark{color:#FFF;background-color:#424242}.mui-btn--dark:active,.mui-btn--dark:focus,.mui-btn--dark:hover{color:#FFF;background-color:#4f4f4f}.mui-btn--dark[disabled]:active,.mui-btn--dark[disabled]:focus,.mui-btn--dark[disabled]:hover{color:#FFF;background-color:#424242}.mui-btn--dark.mui-btn--flat{color:#424242;background-color:transparent}.mui-btn--dark.mui-btn--flat:active,.mui-btn--dark.mui-btn--flat:focus,.mui-btn--dark.mui-btn--flat:hover{color:#424242;background-color:#f2f2f2}.mui-btn--dark.mui-btn--flat[disabled]:active,.mui-btn--dark.mui-btn--flat[disabled]:focus,.mui-btn--dark.mui-btn--flat[disabled]:hover{color:#424242;background-color:transparent}.mui-btn--danger{color:#FFF;background-color:#F44336}.mui-btn--danger:active,.mui-btn--danger:focus,.mui-btn--danger:hover{color:#FFF;background-color:#f55a4e}.mui-btn--danger[disabled]:active,.mui-btn--danger[disabled]:focus,.mui-btn--danger[disabled]:hover{color:#FFF;background-color:#F44336}.mui-btn--danger.mui-btn--flat{color:#F44336;background-color:transparent}.mui-btn--danger.mui-btn--flat:active,.mui-btn--danger.mui-btn--flat:focus,.mui-btn--danger.mui-btn--flat:hover{color:#F44336;background-color:#f2f2f2}.mui-btn--danger.mui-btn--flat[disabled]:active,.mui-btn--danger.mui-btn--flat[disabled]:focus,.mui-btn--danger.mui-btn--flat[disabled]:hover{color:#F44336;background-color:transparent}.mui-btn--accent{color:#FFF;background-color:#FF4081}.mui-btn--accent:active,.mui-btn--accent:focus,.mui-btn--accent:hover{color:#FFF;background-color:#ff5a92}.mui-btn--accent[disabled]:active,.mui-btn--accent[disabled]:focus,.mui-btn--accent[disabled]:hover{color:#FFF;background-color:#FF4081}.mui-btn--accent.mui-btn--flat{color:#FF4081;background-color:transparent}.mui-btn--accent.mui-btn--flat:active,.mui-btn--accent.mui-btn--flat:focus,.mui-btn--accent.mui-btn--flat:hover{color:#FF4081;background-color:#f2f2f2}.mui-btn--accent.mui-btn--flat[disabled]:active,.mui-btn--accent.mui-btn--flat[disabled]:focus,.mui-btn--accent.mui-btn--flat[disabled]:hover{color:#FF4081;background-color:transparent}.mui-btn--small{height:30.6px;line-height:30.6px;padding:0 16px;font-size:13px}.mui-btn--large{height:54px;line-height:54px;padding:0 26px;font-size:14px}.mui-btn--fab.mui-btn--small{width:44px;height:44px;line-height:44px}.mui-btn--fab.mui-btn--large{width:75px;height:75px;line-height:75px}.mui-checkbox,.mui-radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.mui-checkbox>label,.mui-radio>label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.mui-checkbox input:disabled,.mui-radio input:disabled{cursor:not-allowed}.mui-checkbox input:focus,.mui-radio input:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.mui-checkbox--inline>label>input[type=checkbox],.mui-checkbox>label>input[type=checkbox],.mui-radio--inline>label>input[type=radio],.mui-radio>label>input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px}.mui-checkbox+.mui-checkbox,.mui-radio+.mui-radio{margin-top:-5px}.mui-checkbox--inline,.mui-radio--inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.mui-checkbox--inline>input[type=checkbox],.mui-checkbox--inline>input[type=radio],.mui-checkbox--inline>label>input[type=checkbox],.mui-checkbox--inline>label>input[type=radio],.mui-radio--inline>input[type=checkbox],.mui-radio--inline>input[type=radio],.mui-radio--inline>label>input[type=checkbox],.mui-radio--inline>label>input[type=radio]{margin:4px 0 0;line-height:normal}.mui-checkbox--inline+.mui-checkbox--inline,.mui-radio--inline+.mui-radio--inline{margin-top:0;margin-left:10px}.mui-container{box-sizing:border-box;margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.mui-container:after,.mui-container:before{content:" ";display:table}.mui-container:after{clear:both}@media (min-width:544px){.mui-container{max-width:570px}}@media (min-width:768px){.mui-container{max-width:740px}}@media (min-width:992px){.mui-container{max-width:960px}}@media (min-width:1200px){.mui-container{max-width:1170px}}.mui-container-fluid{box-sizing:border-box;margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.mui-container-fluid:after,.mui-container-fluid:before{content:" ";display:table}.mui-container-fluid:after{clear:both}.mui-divider{display:block;height:1px;background-color:rgba(0,0,0,.12)}.mui--divider-top{border-top:1px solid rgba(0,0,0,.12)}.mui--divider-bottom{border-bottom:1px solid rgba(0,0,0,.12)}.mui--divider-left{border-left:1px solid rgba(0,0,0,.12)}.mui--divider-right{border-right:1px solid rgba(0,0,0,.12)}.mui-dropdown{display:inline-block;position:relative}[data-mui-toggle=dropdown]{outline:0}.mui-dropdown__menu{position:absolute;top:100%;left:0;display:none;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#FFF;border-radius:2px;z-index:1;background-clip:padding-box}.mui-dropdown__menu.mui--is-open{display:block}.mui-dropdown__menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.429;color:rgba(0,0,0,.87);text-decoration:none;white-space:nowrap}.mui-dropdown__menu>li>a:focus,.mui-dropdown__menu>li>a:hover{text-decoration:none;color:rgba(0,0,0,.87);background-color:#EEE}.mui-dropdown__menu>.mui--is-disabled>a,.mui-dropdown__menu>.mui--is-disabled>a:focus,.mui-dropdown__menu>.mui--is-disabled>a:hover{color:#EEE}.mui-dropdown__menu>.mui--is-disabled>a:focus,.mui-dropdown__menu>.mui--is-disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;cursor:not-allowed}.mui-dropdown__menu--right{left:auto;right:0}.mui-form legend{display:block;width:100%;padding:0;margin-bottom:10px;font-size:21px;color:rgba(0,0,0,.87);line-height:inherit;border:0}.mui-form fieldset{border:0;padding:0;margin:0 0 20px 0}@media (min-width:544px){.mui-form--inline .mui-textfield{display:inline-block;vertical-align:bottom;margin-bottom:0}.mui-form--inline .mui-checkbox,.mui-form--inline .mui-radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.mui-form--inline .mui-checkbox>label,.mui-form--inline .mui-radio>label{padding-left:0}.mui-form--inline .mui-checkbox>label>input[type=checkbox],.mui-form--inline .mui-radio>label>input[type=radio]{position:relative;margin-left:0}.mui-form--inline .mui-select{display:inline-block}.mui-form--inline .mui-btn{margin-bottom:0;margin-top:0;vertical-align:bottom}}.mui-row{margin-left:-15px;margin-right:-15px}.mui-row:after,.mui-row:before{content:" ";display:table}.mui-row:after{clear:both}.mui-col-lg-1,.mui-col-lg-10,.mui-col-lg-11,.mui-col-lg-12,.mui-col-lg-2,.mui-col-lg-3,.mui-col-lg-4,.mui-col-lg-5,.mui-col-lg-6,.mui-col-lg-7,.mui-col-lg-8,.mui-col-lg-9,.mui-col-md-1,.mui-col-md-10,.mui-col-md-11,.mui-col-md-12,.mui-col-md-2,.mui-col-md-3,.mui-col-md-4,.mui-col-md-5,.mui-col-md-6,.mui-col-md-7,.mui-col-md-8,.mui-col-md-9,.mui-col-sm-1,.mui-col-sm-10,.mui-col-sm-11,.mui-col-sm-12,.mui-col-sm-2,.mui-col-sm-3,.mui-col-sm-4,.mui-col-sm-5,.mui-col-sm-6,.mui-col-sm-7,.mui-col-sm-8,.mui-col-sm-9,.mui-col-xs-1,.mui-col-xs-10,.mui-col-xs-11,.mui-col-xs-12,.mui-col-xs-2,.mui-col-xs-3,.mui-col-xs-4,.mui-col-xs-5,.mui-col-xs-6,.mui-col-xs-7,.mui-col-xs-8,.mui-col-xs-9{box-sizing:border-box;min-height:1px;padding-left:15px;padding-right:15px}.mui-col-xs-1,.mui-col-xs-10,.mui-col-xs-11,.mui-col-xs-12,.mui-col-xs-2,.mui-col-xs-3,.mui-col-xs-4,.mui-col-xs-5,.mui-col-xs-6,.mui-col-xs-7,.mui-col-xs-8,.mui-col-xs-9{float:left}.mui-col-xs-1{width:8.33333%}.mui-col-xs-2{width:16.66667%}.mui-col-xs-3{width:25%}.mui-col-xs-4{width:33.33333%}.mui-col-xs-5{width:41.66667%}.mui-col-xs-6{width:50%}.mui-col-xs-7{width:58.33333%}.mui-col-xs-8{width:66.66667%}.mui-col-xs-9{width:75%}.mui-col-xs-10{width:83.33333%}.mui-col-xs-11{width:91.66667%}.mui-col-xs-12{width:100%}.mui-col-xs-offset-0{margin-left:0}.mui-col-xs-offset-1{margin-left:8.33333%}.mui-col-xs-offset-2{margin-left:16.66667%}.mui-col-xs-offset-3{margin-left:25%}.mui-col-xs-offset-4{margin-left:33.33333%}.mui-col-xs-offset-5{margin-left:41.66667%}.mui-col-xs-offset-6{margin-left:50%}.mui-col-xs-offset-7{margin-left:58.33333%}.mui-col-xs-offset-8{margin-left:66.66667%}.mui-col-xs-offset-9{margin-left:75%}.mui-col-xs-offset-10{margin-left:83.33333%}.mui-col-xs-offset-11{margin-left:91.66667%}.mui-col-xs-offset-12{margin-left:100%}@media (min-width:544px){.mui-col-sm-1,.mui-col-sm-10,.mui-col-sm-11,.mui-col-sm-12,.mui-col-sm-2,.mui-col-sm-3,.mui-col-sm-4,.mui-col-sm-5,.mui-col-sm-6,.mui-col-sm-7,.mui-col-sm-8,.mui-col-sm-9{float:left}.mui-col-sm-1{width:8.33333%}.mui-col-sm-2{width:16.66667%}.mui-col-sm-3{width:25%}.mui-col-sm-4{width:33.33333%}.mui-col-sm-5{width:41.66667%}.mui-col-sm-6{width:50%}.mui-col-sm-7{width:58.33333%}.mui-col-sm-8{width:66.66667%}.mui-col-sm-9{width:75%}.mui-col-sm-10{width:83.33333%}.mui-col-sm-11{width:91.66667%}.mui-col-sm-12{width:100%}.mui-col-sm-offset-0{margin-left:0}.mui-col-sm-offset-1{margin-left:8.33333%}.mui-col-sm-offset-2{margin-left:16.66667%}.mui-col-sm-offset-3{margin-left:25%}.mui-col-sm-offset-4{margin-left:33.33333%}.mui-col-sm-offset-5{margin-left:41.66667%}.mui-col-sm-offset-6{margin-left:50%}.mui-col-sm-offset-7{margin-left:58.33333%}.mui-col-sm-offset-8{margin-left:66.66667%}.mui-col-sm-offset-9{margin-left:75%}.mui-col-sm-offset-10{margin-left:83.33333%}.mui-col-sm-offset-11{margin-left:91.66667%}.mui-col-sm-offset-12{margin-left:100%}}@media (min-width:768px){.mui-col-md-1,.mui-col-md-10,.mui-col-md-11,.mui-col-md-12,.mui-col-md-2,.mui-col-md-3,.mui-col-md-4,.mui-col-md-5,.mui-col-md-6,.mui-col-md-7,.mui-col-md-8,.mui-col-md-9{float:left}.mui-col-md-1{width:8.33333%}.mui-col-md-2{width:16.66667%}.mui-col-md-3{width:25%}.mui-col-md-4{width:33.33333%}.mui-col-md-5{width:41.66667%}.mui-col-md-6{width:50%}.mui-col-md-7{width:58.33333%}.mui-col-md-8{width:66.66667%}.mui-col-md-9{width:75%}.mui-col-md-10{width:83.33333%}.mui-col-md-11{width:91.66667%}.mui-col-md-12{width:100%}.mui-col-md-offset-0{margin-left:0}.mui-col-md-offset-1{margin-left:8.33333%}.mui-col-md-offset-2{margin-left:16.66667%}.mui-col-md-offset-3{margin-left:25%}.mui-col-md-offset-4{margin-left:33.33333%}.mui-col-md-offset-5{margin-left:41.66667%}.mui-col-md-offset-6{margin-left:50%}.mui-col-md-offset-7{margin-left:58.33333%}.mui-col-md-offset-8{margin-left:66.66667%}.mui-col-md-offset-9{margin-left:75%}.mui-col-md-offset-10{margin-left:83.33333%}.mui-col-md-offset-11{margin-left:91.66667%}.mui-col-md-offset-12{margin-left:100%}}@media (min-width:992px){.mui-col-lg-1,.mui-col-lg-10,.mui-col-lg-11,.mui-col-lg-12,.mui-col-lg-2,.mui-col-lg-3,.mui-col-lg-4,.mui-col-lg-5,.mui-col-lg-6,.mui-col-lg-7,.mui-col-lg-8,.mui-col-lg-9{float:left}.mui-col-lg-1{width:8.33333%}.mui-col-lg-2{width:16.66667%}.mui-col-lg-3{width:25%}.mui-col-lg-4{width:33.33333%}.mui-col-lg-5{width:41.66667%}.mui-col-lg-6{width:50%}.mui-col-lg-7{width:58.33333%}.mui-col-lg-8{width:66.66667%}.mui-col-lg-9{width:75%}.mui-col-lg-10{width:83.33333%}.mui-col-lg-11{width:91.66667%}.mui-col-lg-12{width:100%}.mui-col-lg-offset-0{margin-left:0}.mui-col-lg-offset-1{margin-left:8.33333%}.mui-col-lg-offset-2{margin-left:16.66667%}.mui-col-lg-offset-3{margin-left:25%}.mui-col-lg-offset-4{margin-left:33.33333%}.mui-col-lg-offset-5{margin-left:41.66667%}.mui-col-lg-offset-6{margin-left:50%}.mui-col-lg-offset-7{margin-left:58.33333%}.mui-col-lg-offset-8{margin-left:66.66667%}.mui-col-lg-offset-9{margin-left:75%}.mui-col-lg-offset-10{margin-left:83.33333%}.mui-col-lg-offset-11{margin-left:91.66667%}.mui-col-lg-offset-12{margin-left:100%}}@media (min-width:1200px){.mui-col-xl-1,.mui-col-xl-10,.mui-col-xl-11,.mui-col-xl-12,.mui-col-xl-2,.mui-col-xl-3,.mui-col-xl-4,.mui-col-xl-5,.mui-col-xl-6,.mui-col-xl-7,.mui-col-xl-8,.mui-col-xl-9{float:left}.mui-col-xl-1{width:8.33333%}.mui-col-xl-2{width:16.66667%}.mui-col-xl-3{width:25%}.mui-col-xl-4{width:33.33333%}.mui-col-xl-5{width:41.66667%}.mui-col-xl-6{width:50%}.mui-col-xl-7{width:58.33333%}.mui-col-xl-8{width:66.66667%}.mui-col-xl-9{width:75%}.mui-col-xl-10{width:83.33333%}.mui-col-xl-11{width:91.66667%}.mui-col-xl-12{width:100%}.mui-col-xl-offset-0{margin-left:0}.mui-col-xl-offset-1{margin-left:8.33333%}.mui-col-xl-offset-2{margin-left:16.66667%}.mui-col-xl-offset-3{margin-left:25%}.mui-col-xl-offset-4{margin-left:33.33333%}.mui-col-xl-offset-5{margin-left:41.66667%}.mui-col-xl-offset-6{margin-left:50%}.mui-col-xl-offset-7{margin-left:58.33333%}.mui-col-xl-offset-8{margin-left:66.66667%}.mui-col-xl-offset-9{margin-left:75%}.mui-col-xl-offset-10{margin-left:83.33333%}.mui-col-xl-offset-11{margin-left:91.66667%}.mui-col-xl-offset-12{margin-left:100%}}.mui-panel{padding:15px;margin-bottom:20px;border-radius:0;background-color:#FFF;box-shadow:0 2px 2px 0 rgba(0,0,0,.16),0 0 2px 0 rgba(0,0,0,.12)}.mui-panel:after,.mui-panel:before{content:" ";display:table}.mui-panel:after{clear:both}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mui-panel{box-shadow:0 -1px 2px 0 rgba(0,0,0,.12),-1px 0 2px 0 rgba(0,0,0,.12),0 2px 2px 0 rgba(0,0,0,.16),0 0 2px 0 rgba(0,0,0,.12)}}@supports (-ms-ime-align:auto){.mui-panel{box-shadow:0 -1px 2px 0 rgba(0,0,0,.12),-1px 0 2px 0 rgba(0,0,0,.12),0 2px 2px 0 rgba(0,0,0,.16),0 0 2px 0 rgba(0,0,0,.12)}}.mui-select{display:block;padding-top:15px;margin-bottom:20px;position:relative}.mui-select:focus{outline:0}.mui-select:focus>select{height:33px;margin-bottom:-1px;border-color:#2196F3;border-width:2px}.mui-select>select{display:block;height:32px;width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;outline:0;border:none;border-bottom:1px solid rgba(0,0,0,.26);border-radius:0;box-shadow:none;background-color:transparent;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNiIgd2lkdGg9IjEwIj48cG9seWdvbiBwb2ludHM9IjAsMCAxMCwwIDUsNiIgc3R5bGU9ImZpbGw6cmdiYSgwLDAsMCwuMjQpOyIvPjwvc3ZnPg==);background-repeat:no-repeat;background-position:right center;cursor:pointer;color:rgba(0,0,0,.87);font-size:16px;font-family:inherit;line-height:inherit;padding:0 25px 0 0}.mui-select>select::-ms-expand{display:none}.mui-select>select:focus{outline:0;height:33px;margin-bottom:-1px;border-color:#2196F3;border-width:2px}.mui-select>select:disabled{color:rgba(0,0,0,.38);cursor:not-allowed;background-color:transparent;opacity:1}.mui-select>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.mui-select>select:focus::-ms-value{background:0 0;color:rgba(0,0,0,.87)}.mui-select>label{position:absolute;top:0;display:block;width:100%;color:rgba(0,0,0,.54);font-size:12px;font-weight:400;line-height:15px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.mui-select:focus>label,.mui-select>select:focus~label{color:#2196F3}.mui-select__menu{position:absolute;z-index:2;min-width:100%;overflow-y:auto;padding:8px 0;background-color:#FFF;font-size:16px}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.mui-select__menu{border-left:1px solid rgba(0,0,0,.12);border-top:1px solid rgba(0,0,0,.12)}}@supports (-ms-ime-align:auto){.mui-select__menu{border-left:1px solid rgba(0,0,0,.12);border-top:1px solid rgba(0,0,0,.12)}}.mui-select__menu>div{padding:0 22px;height:42px;line-height:42px;cursor:pointer;white-space:nowrap}.mui-select__menu>div.mui--is-selected{background-color:#EEE}.mui-select__menu>div.mui--is-disabled{color:rgba(0,0,0,.38);cursor:not-allowed}.mui-select__menu>div:not(.mui-optgroup__label):not(.mui--is-disabled):hover{background-color:#E0E0E0}.mui-optgroup__option{text-indent:1em}.mui-optgroup__label{color:rgba(0,0,0,.54);font-size:.9em}.mui-table{width:100%;max-width:100%;margin-bottom:20px}.mui-table>tbody>tr>th,.mui-table>tfoot>tr>th,.mui-table>thead>tr>th{text-align:left}.mui-table>tbody>tr>td,.mui-table>tbody>tr>th,.mui-table>tfoot>tr>td,.mui-table>tfoot>tr>th,.mui-table>thead>tr>td,.mui-table>thead>tr>th{padding:10px;line-height:1.429}.mui-table>thead>tr>th{border-bottom:2px solid rgba(0,0,0,.12);font-weight:700}.mui-table>tbody+tbody{border-top:2px solid rgba(0,0,0,.12)}.mui-table.mui-table--bordered>tbody>tr>td{border-bottom:1px solid rgba(0,0,0,.12)}.mui-tabs__bar{list-style:none;padding-left:0;margin-bottom:0;background-color:transparent;white-space:nowrap;overflow-x:auto}.mui-tabs__bar>li{display:inline-block}.mui-tabs__bar>li>a{display:block;white-space:nowrap;text-transform:uppercase;font-weight:500;font-size:14px;color:rgba(0,0,0,.87);cursor:default;height:48px;line-height:48px;padding-left:24px;padding-right:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mui-tabs__bar>li>a:hover{text-decoration:none}.mui-tabs__bar>li.mui--is-active{border-bottom:2px solid #2196F3}.mui-tabs__bar>li.mui--is-active>a{color:#2196F3}.mui-tabs__bar.mui-tabs__bar--justified{display:table;width:100%;table-layout:fixed}.mui-tabs__bar.mui-tabs__bar--justified>li{display:table-cell}.mui-tabs__bar.mui-tabs__bar--justified>li>a{text-align:center;padding-left:0;padding-right:0}.mui-tabs__pane{display:none}.mui-tabs__pane.mui--is-active{display:block}.mui-textfield{display:block;padding-top:15px;margin-bottom:20px;position:relative}.mui-textfield>label{position:absolute;top:0;display:block;width:100%;color:rgba(0,0,0,.54);font-size:12px;font-weight:400;line-height:15px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.mui-textfield>textarea{padding-top:5px}.mui-textfield>input:focus~label,.mui-textfield>textarea:focus~label{color:#2196F3}.mui-textfield--float-label>label{position:absolute;transform:translate(0,15px);font-size:16px;line-height:32px;color:rgba(0,0,0,.26);text-overflow:clip;cursor:text;pointer-events:none}.mui-textfield--float-label>input:focus~label,.mui-textfield--float-label>textarea:focus~label{transform:translate(0,0);font-size:12px;line-height:15px;text-overflow:ellipsis}.mui-textfield--float-label>input:not(:focus).mui--is-not-empty~label,.mui-textfield--float-label>input:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty)~label,.mui-textfield--float-label>input:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty)~label,.mui-textfield--float-label>textarea:not(:focus).mui--is-not-empty~label,.mui-textfield--float-label>textarea:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty)~label,.mui-textfield--float-label>textarea:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty)~label{color:rgba(0,0,0,.54);font-size:12px;line-height:15px;transform:translate(0,0);text-overflow:ellipsis}.mui-textfield--wrap-label{display:table;width:100%;padding-top:0}.mui-textfield--wrap-label:not(.mui-textfield--float-label)>label{display:table-header-group;position:static;white-space:normal;overflow-x:visible}.mui-textfield>input,.mui-textfield>textarea{box-sizing:border-box;display:block;background-color:transparent;color:rgba(0,0,0,.87);border:none;border-bottom:1px solid rgba(0,0,0,.26);outline:0;width:100%;padding:0;box-shadow:none;border-radius:0;font-size:16px;font-family:inherit;line-height:inherit;background-image:none}.mui-textfield>input:focus,.mui-textfield>textarea:focus{border-color:#2196F3;border-width:2px}.mui-textfield>input:-moz-read-only,.mui-textfield>input:disabled,.mui-textfield>textarea:-moz-read-only,.mui-textfield>textarea:disabled{cursor:not-allowed;background-color:transparent;opacity:1}.mui-textfield>input:disabled,.mui-textfield>input:read-only,.mui-textfield>textarea:disabled,.mui-textfield>textarea:read-only{cursor:not-allowed;background-color:transparent;opacity:1}.mui-textfield>input::-webkit-input-placeholder,.mui-textfield>textarea::-webkit-input-placeholder{color:rgba(0,0,0,.26);opacity:1}.mui-textfield>input::-moz-placeholder,.mui-textfield>textarea::-moz-placeholder{color:rgba(0,0,0,.26);opacity:1}.mui-textfield>input:-ms-input-placeholder,.mui-textfield>textarea:-ms-input-placeholder{color:rgba(0,0,0,.26);opacity:1}.mui-textfield>input::placeholder,.mui-textfield>textarea::placeholder{color:rgba(0,0,0,.26);opacity:1}.mui-textfield>input{height:32px}.mui-textfield>input:focus{height:33px;margin-bottom:-1px}.mui-textfield>textarea{min-height:64px}.mui-textfield>textarea[rows]:not([rows="2"]):focus{margin-bottom:-1px}.mui-textfield>input:focus{height:33px;margin-bottom:-1px}.mui-textfield>input:invalid:not(:focus):not(:required),.mui-textfield>input:invalid:not(:focus):required.mui--is-empty.mui--is-touched,.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:not(:required),.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-touched,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:invalid:not(:focus):not(:required),.mui-textfield>textarea:invalid:not(:focus):required.mui--is-empty.mui--is-touched,.mui-textfield>textarea:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:not(:focus).mui--is-invalid:not(:required),.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-touched,.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty){border-color:#F44336;border-width:2px}.mui-textfield>input:invalid:not(:focus):not(:required),.mui-textfield>input:invalid:not(:focus):required.mui--is-empty.mui--is-touched,.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:not(:required),.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-touched,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty){height:33px;margin-bottom:-1px}.mui-textfield.mui-textfield--float-label>input:invalid:not(:focus):not(:required)~label,.mui-textfield.mui-textfield--float-label>input:invalid:not(:focus):required.mui--is-not-empty~label,.mui-textfield.mui-textfield--float-label>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty)~label,.mui-textfield.mui-textfield--float-label>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty)~label,.mui-textfield.mui-textfield--float-label>textarea:invalid:not(:focus):not(:required)~label,.mui-textfield.mui-textfield--float-label>textarea:invalid:not(:focus):required.mui--is-not-empty~label,.mui-textfield.mui-textfield--float-label>textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty)~label,.mui-textfield.mui-textfield--float-label>textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty)~label{color:#F44336}.mui-textfield:not(.mui-textfield--float-label)>input:invalid:not(:focus):not(:required)~label,.mui-textfield:not(.mui-textfield--float-label)>input:invalid:not(:focus):required.mui--is-empty.mui--is-touched~label,.mui-textfield:not(.mui-textfield--float-label)>input:invalid:not(:focus):required.mui--is-not-empty~label,.mui-textfield:not(.mui-textfield--float-label)>textarea:invalid:not(:focus):not(:required)~label,.mui-textfield:not(.mui-textfield--float-label)>textarea:invalid:not(:focus):required.mui--is-empty.mui--is-touched~label,.mui-textfield:not(.mui-textfield--float-label)>textarea:invalid:not(:focus):required.mui--is-not-empty~label{color:#F44336}.mui-textfield.mui-textfield--float-label>.mui--is-invalid.mui--is-not-empty:not(:focus)~label{color:#F44336}.mui-textfield:not(.mui-textfield--float-label)>.mui--is-invalid:not(:focus)~label{color:#F44336}.mui--no-transition{transition:none!important}.mui--no-user-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mui-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.mui--text-left{text-align:left!important}.mui--text-right{text-align:right!important}.mui--text-center{text-align:center!important}.mui--text-justify{text-align:justify!important}.mui--text-nowrap{white-space:nowrap!important}.mui--align-baseline{vertical-align:baseline!important}.mui--align-top{vertical-align:top!important}.mui--align-middle{vertical-align:middle!important}.mui--align-bottom{vertical-align:bottom!important}.mui--text-dark{color:rgba(0,0,0,.87)}.mui--text-dark-secondary{color:rgba(0,0,0,.54)}.mui--text-dark-hint{color:rgba(0,0,0,.38)}.mui--text-light{color:#FFF}.mui--text-light-secondary{color:rgba(255,255,255,.7)}.mui--text-light-hint{color:rgba(255,255,255,.3)}.mui--text-accent{color:rgba(255,64,129,.87)}.mui--text-accent-secondary{color:rgba(255,64,129,.54)}.mui--text-accent-hint{color:rgba(255,64,129,.38)}.mui--text-black{color:#000}.mui--text-white{color:#FFF}.mui--text-danger{color:#F44336}.mui--bg-primary{background-color:#2196F3}.mui--bg-primary-dark{background-color:#1976D2}.mui--bg-primary-light{background-color:#BBDEFB}.mui--bg-accent{background-color:#FF4081}.mui--bg-accent-dark{background-color:#F50057}.mui--bg-accent-light{background-color:#FF80AB}.mui--bg-danger{background-color:#F44336}.mui-list--unstyled{padding-left:0;list-style:none}.mui-list--inline{padding-left:0;list-style:none;margin-left:-5px}.mui-list--inline>li{display:inline-block;padding-left:5px;padding-right:5px}.mui--z1,.mui-dropdown__menu,.mui-select__menu{box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24)}.mui--z2{box-shadow:0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23)}.mui--z3{box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.23)}.mui--z4{box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22)}.mui--z5{box-shadow:0 19px 38px rgba(0,0,0,.3),0 15px 12px rgba(0,0,0,.22)}.mui--clearfix:after,.mui--clearfix:before{content:" ";display:table}.mui--clearfix:after{clear:both}.mui--pull-right{float:right!important}.mui--pull-left{float:left!important}.mui--hide{display:none!important}.mui--show{display:block!important}.mui--invisible{visibility:hidden}.mui--overflow-hidden{overflow:hidden!important}.mui--overflow-hidden-x{overflow-x:hidden!important}.mui--overflow-hidden-y{overflow-y:hidden!important}.mui--visible-lg-block,.mui--visible-lg-inline,.mui--visible-lg-inline-block,.mui--visible-md-block,.mui--visible-md-inline,.mui--visible-md-inline-block,.mui--visible-sm-block,.mui--visible-sm-inline,.mui--visible-sm-inline-block,.mui--visible-xl-block,.mui--visible-xl-inline,.mui--visible-xl-inline-block,.mui--visible-xs-block,.mui--visible-xs-inline,.mui--visible-xs-inline-block{display:none!important}@media (max-width:543px){.mui-visible-xs{display:block!important}table.mui-visible-xs{display:table}tr.mui-visible-xs{display:table-row!important}td.mui-visible-xs,th.mui-visible-xs{display:table-cell!important}.mui--visible-xs-block{display:block!important}.mui--visible-xs-inline{display:inline!important}.mui--visible-xs-inline-block{display:inline-block!important}}@media (min-width:544px) and (max-width:767px){.mui-visible-sm{display:block!important}table.mui-visible-sm{display:table}tr.mui-visible-sm{display:table-row!important}td.mui-visible-sm,th.mui-visible-sm{display:table-cell!important}.mui--visible-sm-block{display:block!important}.mui--visible-sm-inline{display:inline!important}.mui--visible-sm-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.mui-visible-md{display:block!important}table.mui-visible-md{display:table}tr.mui-visible-md{display:table-row!important}td.mui-visible-md,th.mui-visible-md{display:table-cell!important}.mui--visible-md-block{display:block!important}.mui--visible-md-inline{display:inline!important}.mui--visible-md-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.mui-visible-lg{display:block!important}table.mui-visible-lg{display:table}tr.mui-visible-lg{display:table-row!important}td.mui-visible-lg,th.mui-visible-lg{display:table-cell!important}.mui--visible-lg-block{display:block!important}.mui--visible-lg-inline{display:inline!important}.mui--visible-lg-inline-block{display:inline-block!important}}@media (min-width:1200px){.mui-visible-xl{display:block!important}table.mui-visible-xl{display:table}tr.mui-visible-xl{display:table-row!important}td.mui-visible-xl,th.mui-visible-xl{display:table-cell!important}.mui--visible-xl-block{display:block!important}.mui--visible-xl-inline{display:inline!important}.mui--visible-xl-inline-block{display:inline-block!important}}@media (max-width:543px){.mui--hidden-xs{display:none!important}}@media (min-width:544px) and (max-width:767px){.mui--hidden-sm{display:none!important}}@media (min-width:768px) and (max-width:991px){.mui--hidden-md{display:none!important}}@media (min-width:992px) and (max-width:1199px){.mui--hidden-lg{display:none!important}}@media (min-width:1200px){.mui--hidden-xl{display:none!important}}.mui-scrlock--showbar-y{overflow-y:scroll!important}.mui-scrlock--showbar-x{overflow-x:scroll!important}#mui-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999999;background-color:rgba(0,0,0,.2);overflow:auto}.mui-btn__ripple-container{position:absolute;top:0;left:0;display:block;height:100%;width:100%;overflow:hidden;z-index:0}.mui-ripple{position:absolute;top:0;left:0;border-radius:50%;opacity:0;pointer-events:none;transform:scale(.0001,.0001)}.mui-ripple.mui--is-animating{transform:none;transition:transform .3s cubic-bezier(0,0,.2,1),width .3s cubic-bezier(0,0,.2,1),height .3s cubic-bezier(0,0,.2,1),opacity .3s cubic-bezier(0,0,.2,1)}.mui-ripple.mui--is-visible{opacity:.3}.mui-btn .mui-ripple{background-color:#a6a6a6}.mui-btn--primary .mui-ripple{background-color:#FFF}.mui-btn--dark .mui-ripple{background-color:#FFF}.mui-btn--danger .mui-ripple{background-color:#FFF}.mui-btn--accent .mui-ripple{background-color:#FFF}.mui-btn--flat .mui-ripple{background-color:#a6a6a6}.mui--text-display4{font-weight:300;font-size:112px;line-height:112px}.mui--text-display3{font-weight:400;font-size:56px;line-height:56px}.mui--text-display2{font-weight:400;font-size:45px;line-height:48px}.mui--text-display1,h1{font-weight:400;font-size:34px;line-height:40px}.mui--text-headline,h2{font-weight:400;font-size:24px;line-height:32px}.mui--text-title,h3{font-weight:400;font-size:20px;line-height:28px}.mui--text-subhead,h4{font-weight:400;font-size:16px;line-height:24px}.mui--text-body2,h5{font-weight:500;font-size:14px;line-height:24px}.mui--text-body1{font-weight:400;font-size:14px;line-height:20px}.mui--text-caption{font-weight:400;font-size:12px;line-height:16px}.mui--text-menu{font-weight:500;font-size:13px;line-height:17px}.mui--text-button{font-weight:500;font-size:14px;line-height:18px;text-transform:uppercase} -------------------------------------------------------------------------------- /vendor/mui/mui.min.js: -------------------------------------------------------------------------------- 1 | !function t(e,i,n){function o(s,a){if(!i[s]){if(!e[s]){var l="function"==typeof require&&require;if(!a&&l)return l(s,!0);if(r)return r(s,!0);throw new Error("Cannot find module '"+s+"'")}var u=i[s]={exports:{}};e[s][0].call(u.exports,function(t){var i=e[s][1][t];return o(i?i:t)},u,u.exports,t,e,i,n)}return i[s].exports}for(var r="function"==typeof require&&require,s=0;s input","mui-textfield-inserted"],[".mui-textfield > textarea","mui-textfield-inserted"],[".mui-select > select","mui-select-inserted"],[".mui-select > select ~ .mui-event-trigger","mui-node-inserted"],[".mui-select > select:disabled ~ .mui-event-trigger","mui-node-disabled"]],i="",n=0,o=e.length;nd&&(p=a+(i+1)*s-(-1*n+o+r),h=e*s+2*a-f,v=Math.min(p,h)),{height:f+"px",top:n+"px",scrollTop:v}}var o=15,r=32,s=42,a=8;e.exports={getMenuPositionalCSS:n}},{}],5:[function(t,e,i){"use strict";function n(t,e){if(e&&t.setAttribute){for(var i,n=h(t),o=e.split(" "),r=0;r-1}function s(t){if(void 0===t)return"undefined";var e=Object.prototype.toString.call(t);if(0===e.indexOf("[object "))return e.slice(8,-1).toLowerCase();throw new Error("MUI: Could not understand type: "+e)}function a(t,e,i,n){n=void 0!==n&&n;var o=t._muiEventCache=t._muiEventCache||{};e.split(" ").map(function(e){t.addEventListener(e,i,n),o[e]=o[e]||[],o[e].push([i,n])})}function l(t,e,i,n){n=void 0!==n&&n;var o,r,s,a=t._muiEventCache=t._muiEventCache||{};e.split(" ").map(function(e){for(o=a[e]||[],s=o.length;s--;)r=o[s],(void 0===i||r[0]===i&&r[1]===n)&&(o.splice(s,1),t.removeEventListener(e,r[0],r[1]))})}function u(t,e,i,n){e.split(" ").map(function(e){a(t,e,function o(r){i&&i.apply(this,arguments),l(t,e,o,n)},n)})}function c(t,e){var i=window;if(void 0===e){if(t===i){var n=document.documentElement;return(i.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}return t.scrollLeft}t===i?i.scrollTo(e,d(i)):t.scrollLeft=e}function d(t,e){var i=window;if(void 0===e){if(t===i){var n=document.documentElement;return(i.pageYOffset||n.scrollTop)-(n.clientTop||0)}return t.scrollTop}t===i?i.scrollTo(c(i),e):t.scrollTop=e}function m(t){var e=window,i=t.getBoundingClientRect(),n=d(e),o=c(e);return{top:i.top+n,left:i.left+o,height:i.height,width:i.width}}function f(t){var e=!1,i=!0,n=document,o=n.defaultView,r=n.documentElement,s=n.addEventListener?"addEventListener":"attachEvent",a=n.addEventListener?"removeEventListener":"detachEvent",l=n.addEventListener?"":"on",u=function(i){"readystatechange"==i.type&&"complete"!=n.readyState||(("load"==i.type?o:n)[a](l+i.type,u,!1),!e&&(e=!0)&&t.call(o,i.type||i))},c=function(){try{r.doScroll("left")}catch(t){return void setTimeout(c,50)}u("poll")};if("complete"==n.readyState)t.call(o,"lazy");else{if(n.createEventObject&&r.doScroll){try{i=!o.frameElement}catch(t){}i&&c()}n[s](l+"DOMContentLoaded",u,!1),n[s](l+"readystatechange",u,!1),o[s](l+"load",u,!1)}}function p(t,e){if(e&&t.setAttribute){for(var i,n=h(t),o=e.split(" "),r=0;r=0;)n=n.replace(" "+i+" "," ");t.setAttribute("class",n.trim())}}function h(t){var e=(t.getAttribute("class")||"").replace(/[\n\t]/g,"");return" "+e+" "}function v(t){return t.replace(g,function(t,e,i,n){return n?i.toUpperCase():i}).replace(y,"Moz$1")}function b(t,e,i){var n;return n=i.getPropertyValue(e),""!==n||t.ownerDocument||(n=t.style[v(e)]),n}var g=/([\:\-\_]+(.))/g,y=/^moz([A-Z])/;e.exports={addClass:n,css:o,hasClass:r,off:l,offset:m,on:a,one:u,ready:f,removeClass:p,type:s,scrollLeft:c,scrollTop:d}},{}],6:[function(t,e,i){"use strict";function n(){var t=window;if(g.debug&&"undefined"!=typeof t.console)try{t.console.log.apply(t.console,arguments)}catch(i){var e=Array.prototype.slice.call(arguments);t.console.log(e.join("\n"))}}function o(t){var e,i=document;e=i.head||i.getElementsByTagName("head")[0]||i.documentElement;var n=i.createElement("style");return n.type="text/css",n.styleSheet?n.styleSheet.cssText=t:n.appendChild(i.createTextNode(t)),e.insertBefore(n,e.firstChild),n}function r(t,e){if(!e)throw new Error("MUI: "+t);"undefined"!=typeof console&&console.error("MUI Warning: "+t)}function s(t){var e="";for(var i in t)e+=t[i]?i+" ":"";return e.trim()}function a(){if(void 0!==b)return b;var t=document.createElement("x");return t.style.cssText="pointer-events:auto",b="auto"===t.style.pointerEvents}function l(t,e){return function(){t[e].apply(t,arguments)}}function u(t,e,i,n,o){var r,s=document.createEvent("HTMLEvents"),i=void 0===i||i,n=void 0===n||n;if(s.initEvent(e,i,n),o)for(r in o)s[r]=o[r];return t&&t.dispatchEvent(s),s}function c(){if(C+=1,1===C){var t,e,i,n=document,r=window,s=n.documentElement,a=n.body,l=x();t=["overflow:hidden"],l&&(s.scrollHeight>s.clientHeight&&(i=parseInt(y.css(a,"padding-right"))+l,t.push("padding-right:"+i+"px")),s.scrollWidth>s.clientWidth&&(i=parseInt(y.css(a,"padding-bottom"))+l,t.push("padding-bottom:"+i+"px"))),e="."+E+"{",e+=t.join(" !important;")+" !important;}",p=o(e),y.on(r,"scroll",h,!0),f={left:y.scrollLeft(r),top:y.scrollTop(r)},y.addClass(a,E)}}function d(t){0!==C&&(C-=1,0===C&&(y.removeClass(document.body,E),p.parentNode.removeChild(p),t&&window.scrollTo(f.left,f.top),y.off(window,"scroll",h,!0)))}function m(t){var e=window.requestAnimationFrame;e?e(t):setTimeout(t,0)}var f,p,h,v,b,g=t("../config"),y=t("./jqLite"),C=0,E="mui-scroll-lock";h=function(t){t.target.tagName||t.stopImmediatePropagation()};var x=function(){if(void 0!==v)return v;var t=document,e=t.body,i=t.createElement("div");return i.innerHTML='
',i=i.firstChild,e.appendChild(i),v=i.offsetWidth-i.clientWidth,e.removeChild(i),v};e.exports={callback:l,classNames:s,disableScrollLock:d,dispatchEvent:u,enableScrollLock:c,log:n,loadStyle:o,raiseError:r,requestAnimationFrame:m,supportsPointerEvents:a}},{"../config":2,"./jqLite":5}],7:[function(t,e,i){"use strict";function n(t){if(t._muiDropdown!==!0){t._muiDropdown=!0;var e=t.tagName;"INPUT"!==e&&"BUTTON"!==e||t.hasAttribute("type")||(t.type="button"),s.on(t,"click",o)}}function o(t){if(0===t.button){var e=this;null===e.getAttribute("disabled")&&r(e)}}function r(t){function e(){s.removeClass(o,c),s.off(r,"click",e)}function i(){var i=n.getBoundingClientRect(),a=t.getBoundingClientRect(),l=a.top-i.top+a.height;s.css(o,"top",l+"px"),s.addClass(o,c),setTimeout(function(){s.on(r,"click",e)},0)}var n=t.parentNode,o=t.nextElementSibling,r=n.ownerDocument;return o&&s.hasClass(o,d)?void(s.hasClass(o,c)?e():i()):a.raiseError("Dropdown menu element not found")}var s=t("./lib/jqLite"),a=t("./lib/util"),l=t("./lib/animationHelpers"),u='[data-mui-toggle="dropdown"]',c="mui--is-open",d="mui-dropdown__menu";e.exports={initListeners:function(){for(var t=document.querySelectorAll(u),e=t.length;e--;)n(t[e]);l.onAnimationStart("mui-dropdown-inserted",function(t){n(t.target)})}}},{"./lib/animationHelpers":3,"./lib/jqLite":5,"./lib/util":6}],8:[function(t,e,i){e.exports=t(5)},{}],9:[function(t,e,i){"use strict";function n(t){var e;if("on"===t){for(var i,n,s,a=arguments.length-1;a>0;a--)i=arguments[a],"object"===p.type(i)&&(n=i),i instanceof Element&&1===i.nodeType&&(s=i);n=n||{},void 0===n.keyboard&&(n.keyboard=!0),void 0===n.static&&(n.static=!1),e=o(n,s)}else"off"===t?e=r():f.raiseError("Expecting 'on' or 'off'");return e}function o(t,e){var i=document,n=i.body,o=i.getElementById(h);if(i.activeElement&&(m=i.activeElement),f.enableScrollLock(),o){for(;o.firstChild;)o.removeChild(o.firstChild);e&&o.appendChild(e)}else o=i.createElement("div"),o.setAttribute("id",h),o.setAttribute("tabindex","-1"),e&&o.appendChild(e),n.appendChild(o);return v.test(navigator.userAgent)&&p.css(o,"cursor","pointer"),t.keyboard?s():a(),t.static?c(o):u(o),o.muiOptions=t,o.focus(),o}function r(){var t,e=document.getElementById(h);if(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.parentNode.removeChild(e),t=e.muiOptions.onclose,c(e)}return f.disableScrollLock(),a(),m&&m.focus(),t&&t(),e}function s(){p.on(document,"keyup",l)}function a(){p.off(document,"keyup",l)}function l(t){27===t.keyCode&&r()}function u(t){p.on(t,"click",d)}function c(t){p.off(t,"click",d)}function d(t){t.target.id===h&&r()}var m,f=t("./lib/util"),p=t("./lib/jqLite"),h="mui-overlay",v=/(iPad|iPhone|iPod)/g;e.exports=n},{"./lib/jqLite":5,"./lib/util":6}],10:[function(t,e,i){"use strict";function n(t){if(t._muiRipple!==!0&&(t._muiRipple=!0,"INPUT"!==t.tagName)){var e=document.createElement("span");e.className="mui-btn__ripple-container",e.innerHTML='',t.appendChild(e),t._rippleEl=e.children[0],s.on(t,c,o)}}function o(t){if("mousedown"!==t.type||0===t.button){var e=this,i=e._rippleEl;if(!e.disabled){i._init||(s.on(e,d,r),i._init=!0);var n,o,l=s.offset(e),u="touchstart"===t.type?t.touches[0]:t;n=Math.sqrt(l.height*l.height+l.width*l.width),o=2*n+"px",s.css(i,{width:o,height:o,top:Math.round(u.pageY-l.top-n)+"px",left:Math.round(u.pageX-l.left-n)+"px"}),s.removeClass(i,"mui--is-animating"),s.addClass(i,"mui--is-visible"),a.requestAnimationFrame(function(){s.addClass(i,"mui--is-animating")})}}}function r(t){var e=this._rippleEl;a.requestAnimationFrame(function(){s.removeClass(e,"mui--is-visible")})}var s=t("./lib/jqLite"),a=t("./lib/util"),l=t("./lib/animationHelpers"),u="ontouchstart"in document.documentElement,c=u?"touchstart":"mousedown",d=u?"touchend":"mouseup mouseleave";e.exports={initListeners:function(){for(var t=document.getElementsByClassName("mui-btn"),e=t.length;e--;)n(t[e]);l.onAnimationStart("mui-btn-inserted",function(t){n(t.target)})}}},{"./lib/animationHelpers":3,"./lib/jqLite":5,"./lib/util":6}],11:[function(t,e,i){"use strict";function n(t){if(t._muiSelect!==!0&&(t._muiSelect=!0,!("ontouchstart"in g.documentElement))){var e=t.parentNode;e._selectEl=t,e._menu=null,t.disabled||(e.tabIndex=0),t.tabIndex=-1,c.on(t,"mousedown",o),c.on(e,"click",a),c.on(e,"blur focus",r),c.on(e,"keydown",s);var i=document.createElement("div");i.className="mui-event-trigger",e.appendChild(i),c.on(i,m.animationEvents,function(t){t.stopPropagation(),"mui-node-disabled"===t.animationName?t.target.parentNode.removeAttribute("tabIndex"):t.target.parentNode.tabIndex=0})}}function o(t){0===t.button&&t.preventDefault()}function r(t){d.dispatchEvent(this._selectEl,t.type,!1,!1)}function s(t){if(!t.defaultPrevented){var e=t.keyCode,i=this._menu;if(i){if(9===e)return i.destroy();27!==e&&40!==e&&38!==e&&13!==e||t.preventDefault(),27===e?i.destroy():40===e?i.increment():38===e?i.decrement():13===e&&(i.selectCurrent(),i.destroy())}else 32!==e&&38!==e&&40!==e||(t.preventDefault(),l(this))}}function a(t){0!==t.button||this._selectEl.disabled||(this.focus(),l(this))}function l(t){t._menu||(t._menu=new u(t,t._selectEl,function(){t._menu=null,t.focus()}))}function u(t,e,i){d.enableScrollLock(),this.itemArray=[],this.origPos=null,this.currentPos=null,this.selectEl=e,this.wrapperEl=t,this.menuEl=this._createMenuEl(t,e);var n=d.callback;this.onClickCB=n(this,"onClick"),this.destroyCB=n(this,"destroy"),this.wrapperCallbackFn=i,t.appendChild(this.menuEl),c.scrollTop(this.menuEl,this.menuEl._scrollTop);var o=this.destroyCB;c.on(this.menuEl,"click",this.onClickCB),c.on(y,"resize",o),setTimeout(function(){c.on(g,"click",o)},0)}var c=t("./lib/jqLite"),d=t("./lib/util"),m=t("./lib/animationHelpers"),f=t("./lib/forms"),p=".mui-select > select",h="mui-select__menu",v="mui--is-selected",b="mui--is-disabled",g=document,y=window;u.prototype._createMenuEl=function(t,e){var i,n,o,r,s,a,l,u,d=g.createElement("div"),m=e.children,p=this.itemArray,y=0,C=0,E=0,x=document.createDocumentFragment();for(d.className=h,s=0,a=m.length;s input, .mui-textfield > textarea",u="mui-textfield--float-label",c="mui--is-touched",d="mui--is-untouched",m="mui--is-pristine",f="mui--is-dirty",p="mui--is-empty",h="mui--is-not-empty";e.exports={initialize:n,initListeners:function(){for(var t=document,e=t.querySelectorAll(l),i=e.length;i--;)n(e[i]);a.onAnimationStart("mui-textfield-inserted",function(t){n(t.target)}),setTimeout(function(){var t=".mui-textfield.mui-textfield--float-label > label {"+["-webkit-transition","-moz-transition","-o-transition","transition",""].join(":all .15s ease-out;")+"}";s.loadStyle(t)},150),s.supportsPointerEvents()===!1&&r.on(t,"click",function(t){var e=t.target;if("LABEL"===e.tagName&&r.hasClass(e.parentNode,u)){var i=e.previousElementSibling;i&&i.focus()}})}}},{"./lib/animationHelpers":3,"./lib/jqLite":5,"./lib/util":6}]},{},[1]); -------------------------------------------------------------------------------- /vendor/prism/prism.css: -------------------------------------------------------------------------------- 1 | /* http://prismjs.com/download.html?themes=prism-twilight&languages=markup+css+clike+javascript */ 2 | /** 3 | * prism.js Twilight theme 4 | * Based (more or less) on the Twilight theme originally of Textmate fame. 5 | * @author Remy Bach 6 | */ 7 | code[class*="language-"], 8 | pre[class*="language-"] { 9 | color: white; 10 | background: none; 11 | font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; 12 | text-align: left; 13 | text-shadow: 0 -.1em .2em black; 14 | white-space: pre; 15 | word-spacing: normal; 16 | word-break: normal; 17 | word-wrap: normal; 18 | line-height: 1.5; 19 | 20 | -moz-tab-size: 4; 21 | -o-tab-size: 4; 22 | tab-size: 4; 23 | 24 | -webkit-hyphens: none; 25 | -moz-hyphens: none; 26 | -ms-hyphens: none; 27 | hyphens: none; 28 | } 29 | 30 | pre[class*="language-"], 31 | :not(pre) > code[class*="language-"] { 32 | background: hsl(0, 0%, 8%); /* #141414 */ 33 | } 34 | 35 | /* Code blocks */ 36 | pre[class*="language-"] { 37 | border-radius: .5em; 38 | border: .3em solid hsl(0, 0%, 33%); /* #282A2B */ 39 | box-shadow: 1px 1px .5em black inset; 40 | margin: .5em 0; 41 | overflow: auto; 42 | padding: 1em; 43 | } 44 | 45 | pre[class*="language-"]::-moz-selection { 46 | /* Firefox */ 47 | background: hsl(200, 4%, 16%); /* #282A2B */ 48 | } 49 | 50 | pre[class*="language-"]::selection { 51 | /* Safari */ 52 | background: hsl(200, 4%, 16%); /* #282A2B */ 53 | } 54 | 55 | /* Text Selection colour */ 56 | pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection, 57 | code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection { 58 | text-shadow: none; 59 | background: hsla(0, 0%, 93%, 0.15); /* #EDEDED */ 60 | } 61 | 62 | pre[class*="language-"]::selection, pre[class*="language-"] ::selection, 63 | code[class*="language-"]::selection, code[class*="language-"] ::selection { 64 | text-shadow: none; 65 | background: hsla(0, 0%, 93%, 0.15); /* #EDEDED */ 66 | } 67 | 68 | /* Inline code */ 69 | :not(pre) > code[class*="language-"] { 70 | border-radius: .3em; 71 | border: .13em solid hsl(0, 0%, 33%); /* #545454 */ 72 | box-shadow: 1px 1px .3em -.1em black inset; 73 | padding: .15em .2em .05em; 74 | white-space: normal; 75 | } 76 | 77 | .token.comment, 78 | .token.prolog, 79 | .token.doctype, 80 | .token.cdata { 81 | color: hsl(0, 0%, 47%); /* #777777 */ 82 | } 83 | 84 | .token.punctuation { 85 | opacity: .7; 86 | } 87 | 88 | .namespace { 89 | opacity: .7; 90 | } 91 | 92 | .token.tag, 93 | .token.boolean, 94 | .token.number, 95 | .token.deleted { 96 | color: hsl(14, 58%, 55%); /* #CF6A4C */ 97 | } 98 | 99 | .token.keyword, 100 | .token.property, 101 | .token.selector, 102 | .token.constant, 103 | .token.symbol, 104 | .token.builtin { 105 | color: hsl(53, 89%, 79%); /* #F9EE98 */ 106 | } 107 | 108 | .token.attr-name, 109 | .token.attr-value, 110 | .token.string, 111 | .token.char, 112 | .token.operator, 113 | .token.entity, 114 | .token.url, 115 | .language-css .token.string, 116 | .style .token.string, 117 | .token.variable, 118 | .token.inserted { 119 | color: hsl(76, 21%, 52%); /* #8F9D6A */ 120 | } 121 | 122 | .token.atrule { 123 | color: hsl(218, 22%, 55%); /* #7587A6 */ 124 | } 125 | 126 | .token.regex, 127 | .token.important { 128 | color: hsl(42, 75%, 65%); /* #E9C062 */ 129 | } 130 | 131 | .token.important, 132 | .token.bold { 133 | font-weight: bold; 134 | } 135 | .token.italic { 136 | font-style: italic; 137 | } 138 | 139 | .token.entity { 140 | cursor: help; 141 | } 142 | 143 | pre[data-line] { 144 | padding: 1em 0 1em 3em; 145 | position: relative; 146 | } 147 | 148 | /* Markup */ 149 | .language-markup .token.tag, 150 | .language-markup .token.attr-name, 151 | .language-markup .token.punctuation { 152 | color: hsl(33, 33%, 52%); /* #AC885B */ 153 | } 154 | 155 | /* Make the tokens sit above the line highlight so the colours don't look faded. */ 156 | .token { 157 | position: relative; 158 | z-index: 1; 159 | } 160 | 161 | .line-highlight { 162 | background: hsla(0, 0%, 33%, 0.25); /* #545454 */ 163 | background: linear-gradient(to right, hsla(0, 0%, 33%, .1) 70%, hsla(0, 0%, 33%, 0)); /* #545454 */ 164 | border-bottom: 1px dashed hsl(0, 0%, 33%); /* #545454 */ 165 | border-top: 1px dashed hsl(0, 0%, 33%); /* #545454 */ 166 | left: 0; 167 | line-height: inherit; 168 | margin-top: 0.75em; /* Same as .prism’s padding-top */ 169 | padding: inherit 0; 170 | pointer-events: none; 171 | position: absolute; 172 | right: 0; 173 | white-space: pre; 174 | z-index: 0; 175 | } 176 | 177 | .line-highlight:before, 178 | .line-highlight[data-end]:after { 179 | background-color: hsl(215, 15%, 59%); /* #8794A6 */ 180 | border-radius: 999px; 181 | box-shadow: 0 1px white; 182 | color: hsl(24, 20%, 95%); /* #F5F2F0 */ 183 | content: attr(data-start); 184 | font: bold 65%/1.5 sans-serif; 185 | left: .6em; 186 | min-width: 1em; 187 | padding: 0 .5em; 188 | position: absolute; 189 | text-align: center; 190 | text-shadow: none; 191 | top: .4em; 192 | vertical-align: .3em; 193 | } 194 | 195 | .line-highlight[data-end]:after { 196 | bottom: .4em; 197 | content: attr(data-end); 198 | top: auto; 199 | } 200 | -------------------------------------------------------------------------------- /vendor/prism/prism.js: -------------------------------------------------------------------------------- 1 | /* http://prismjs.com/download.html?themes=prism-twilight&languages=markup+css+clike+javascript */ 2 | var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var e=/\blang(?:uage)?-(\w+)\b/i,t=0,n=_self.Prism={manual:_self.Prism&&_self.Prism.manual,util:{encode:function(e){return e instanceof a?new a(e.type,n.util.encode(e.content),e.alias):"Array"===n.util.type(e)?e.map(n.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(w instanceof s)){h.lastIndex=0;var _=h.exec(w),P=1;if(!_&&m&&b!=t.length-1){if(h.lastIndex=k,_=h.exec(e),!_)break;for(var A=_.index+(d?_[1].length:0),j=_.index+_[0].length,x=b,O=k,S=t.length;S>x&&(j>O||!t[x].type&&!t[x-1].greedy);++x)O+=t[x].length,A>=O&&(++b,k=O);if(t[b]instanceof s||t[x-1].greedy)continue;P=x-b,w=e.slice(k,O),_.index-=k}if(_){d&&(p=_[1].length);var A=_.index+p,_=_[0].slice(p),j=A+_.length,N=w.slice(0,A),C=w.slice(j),E=[b,P];N&&(++b,k+=N.length,E.push(N));var L=new s(u,f?n.tokenize(_,f):_,y,_,m);if(E.push(L),C&&E.push(C),Array.prototype.splice.apply(t,E),1!=P&&n.matchGrammar(e,t,a,b,k,!0,u),l)break}else if(l)break}}}}},tokenize:function(e,t){var a=[e],r=t.rest;if(r){for(var i in r)t[i]=r[i];delete t.rest}return n.matchGrammar(e,a,t,0,0,!1),a},hooks:{all:{},add:function(e,t){var a=n.hooks.all;a[e]=a[e]||[],a[e].push(t)},run:function(e,t){var a=n.hooks.all[e];if(a&&a.length)for(var r,i=0;r=a[i++];)r(t)}}},a=n.Token=function(e,t,n,a,r){this.type=e,this.content=t,this.alias=n,this.length=0|(a||"").length,this.greedy=!!r};if(a.stringify=function(e,t,r){if("string"==typeof e)return e;if("Array"===n.util.type(e))return e.map(function(n){return a.stringify(n,t,e)}).join("");var i={type:e.type,content:a.stringify(e.content,t,r),tag:"span",classes:["token",e.type],attributes:{},language:t,parent:r};if("comment"==i.type&&(i.attributes.spellcheck="true"),e.alias){var l="Array"===n.util.type(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(i.classes,l)}n.hooks.run("wrap",i);var o=Object.keys(i.attributes).map(function(e){return e+'="'+(i.attributes[e]||"").replace(/"/g,""")+'"'}).join(" ");return"<"+i.tag+' class="'+i.classes.join(" ")+'"'+(o?" "+o:"")+">"+i.content+""},!_self.document)return _self.addEventListener?(_self.addEventListener("message",function(e){var t=JSON.parse(e.data),a=t.language,r=t.code,i=t.immediateClose;_self.postMessage(n.highlight(r,n.languages[a],a)),i&&_self.close()},!1),_self.Prism):_self.Prism;var r=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return r&&(n.filename=r.src,!document.addEventListener||n.manual||r.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(n.highlightAll):window.setTimeout(n.highlightAll,16):document.addEventListener("DOMContentLoaded",n.highlightAll))),_self.Prism}();"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); 3 | Prism.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\\1|\\?(?!\1)[\s\S])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:('|")[\s\S]*?(\1)|[^\s>]+)/i,inside:{punctuation:/[=>"']/}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup; 4 | Prism.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+?.*?(;|(?=\s*\{))/i,inside:{rule:/@[\w-]+/}},url:/url\((?:(["'])(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,selector:/[^\{\}\s][^\{\};]*?(?=\s*\{)/,string:{pattern:/("|')(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},property:/(\b|\B)[\w-]+(?=\s*:)/i,important:/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:]/},Prism.languages.css.atrule.inside.rest=Prism.util.clone(Prism.languages.css),Prism.languages.markup&&(Prism.languages.insertBefore("markup","tag",{style:{pattern:/()[\s\S]*?(?=<\/style>)/i,lookbehind:!0,inside:Prism.languages.css,alias:"language-css"}}),Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|').*?\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},Prism.languages.markup.tag)); 5 | Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:{pattern:/(["'])(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[a-z0-9_\.\\]+/i,lookbehind:!0,inside:{punctuation:/(\.|\\)/}},keyword:/\b(if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,"boolean":/\b(true|false)\b/,"function":/[a-z0-9_]+(?=\()/i,number:/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/}; 6 | Prism.languages.javascript=Prism.languages.extend("clike",{keyword:/\b(as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,number:/\b-?(0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|\d*\.?\d+([Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/i,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/(^|[^\/])\/(?!\/)(\[[^\]\r\n]+]|\\.|[^\/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}}),Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\\\|\\?[^\\])*?`/,greedy:!0,inside:{interpolation:{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore("markup","tag",{script:{pattern:/()[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:"language-javascript"}}),Prism.languages.js=Prism.languages.javascript; -------------------------------------------------------------------------------- /vendor/skygear/polyfill.min.js: -------------------------------------------------------------------------------- 1 | !function e(t,n,r){function s(i,u){if(!n[i]){if(!t[i]){var c="function"==typeof require&&require;if(!u&&c)return c(i,!0);if(o)return o(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var f=n[i]={exports:{}};t[i][0].call(f.exports,function(n){var e=t[i][1][n];return s(e?e:n)},f,f.exports,e,t,n,r)}return n[i].exports}for(var o="function"==typeof require&&require,i=0;i2?s[2]:void 0,l=Math.min((void 0===f?u:o(f,u))-a,u-c),h=1;for(c>a&&a+l>c&&(h=-1,a+=l-1,c+=l-1);l-->0;)a in e?e[c]=e[a]:delete e[c],c+=h,a+=h;return e}},{76:76,79:79,80:80}],6:[function(t,n,e){"use strict";var r=t(80),o=t(76),i=t(79);n.exports=[].fill||function fill(t){for(var n=r(this),e=i(n.length),u=arguments,c=u.length,a=o(c>1?u[1]:void 0,e),s=c>2?u[2]:void 0,f=void 0===s?e:o(s,e);f>a;)n[a++]=t;return n}},{76:76,79:79,80:80}],7:[function(t,n,e){var r=t(78),o=t(79),i=t(76);n.exports=function(t){return function(n,e,u){var c,a=r(n),s=o(a.length),f=i(u,s);if(t&&e!=e){for(;s>f;)if(c=a[f++],c!=c)return!0}else for(;s>f;f++)if((t||f in a)&&a[f]===e)return t||f;return!t&&-1}}},{76:76,78:78,79:79}],8:[function(t,n,e){var r=t(17),o=t(34),i=t(80),u=t(79),c=t(9);n.exports=function(t){var n=1==t,e=2==t,a=3==t,s=4==t,f=6==t,l=5==t||f;return function(h,p,v){for(var g,y,d=i(h),m=o(d),x=r(p,v,3),S=u(m.length),w=0,b=n?c(h,S):e?c(h,0):void 0;S>w;w++)if((l||w in m)&&(g=m[w],y=x(g,w,d),t))if(n)b[w]=y;else if(y)switch(t){case 3:return!0;case 5:return g;case 6:return w;case 2:b.push(g)}else if(s)return!1;return f?-1:a||s?s:b}}},{17:17,34:34,79:79,80:80,9:9}],9:[function(t,n,e){var r=t(38),o=t(36),i=t(83)("species");n.exports=function(t,n){var e;return o(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!o(e.prototype)||(e=void 0),r(e)&&(e=e[i],null===e&&(e=void 0))),new(void 0===e?Array:e)(n)}},{36:36,38:38,83:83}],10:[function(t,n,e){var r=t(11),o=t(83)("toStringTag"),i="Arguments"==r(function(){return arguments}());n.exports=function(t){var n,e,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(e=(n=Object(t))[o])?e:i?r(n):"Object"==(u=r(n))&&"function"==typeof n.callee?"Arguments":u}},{11:11,83:83}],11:[function(t,n,e){var r={}.toString;n.exports=function(t){return r.call(t).slice(8,-1)}},{}],12:[function(t,n,e){"use strict";var r=t(46),o=t(31),i=t(60),u=t(17),c=t(69),a=t(18),s=t(27),f=t(42),l=t(44),h=t(82)("id"),p=t(30),v=t(38),g=t(65),y=t(19),d=Object.isExtensible||v,m=y?"_s":"size",x=0,S=function(t,n){if(!v(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!p(t,h)){if(!d(t))return"F";if(!n)return"E";o(t,h,++x)}return"O"+t[h]},w=function(t,n){var e,r=S(n);if("F"!==r)return t._i[r];for(e=t._f;e;e=e.n)if(e.k==n)return e};n.exports={getConstructor:function(t,n,e,o){var f=t(function(t,i){c(t,f,n),t._i=r.create(null),t._f=void 0,t._l=void 0,t[m]=0,void 0!=i&&s(i,e,t[o],t)});return i(f.prototype,{clear:function clear(){for(var t=this,n=t._i,e=t._f;e;e=e.n)e.r=!0,e.p&&(e.p=e.p.n=void 0),delete n[e.i];t._f=t._l=void 0,t[m]=0},"delete":function(t){var n=this,e=w(n,t);if(e){var r=e.n,o=e.p;delete n._i[e.i],e.r=!0,o&&(o.n=r),r&&(r.p=o),n._f==e&&(n._f=r),n._l==e&&(n._l=o),n[m]--}return!!e},forEach:function forEach(t){for(var n,e=u(t,arguments.length>1?arguments[1]:void 0,3);n=n?n.n:this._f;)for(e(n.v,n.k,this);n&&n.r;)n=n.p},has:function has(t){return!!w(this,t)}}),y&&r.setDesc(f.prototype,"size",{get:function(){return a(this[m])}}),f},def:function(t,n,e){var r,o,i=w(t,n);return i?i.v=e:(t._l=i={i:o=S(n,!0),k:n,v:e,p:r=t._l,n:void 0,r:!1},t._f||(t._f=i),r&&(r.n=i),t[m]++,"F"!==o&&(t._i[o]=i)),t},getEntry:w,setStrong:function(t,n,e){f(t,n,function(t,n){this._t=t,this._k=n,this._l=void 0},function(){for(var t=this,n=t._k,e=t._l;e&&e.r;)e=e.p;return t._t&&(t._l=e=e?e.n:t._t._f)?"keys"==n?l(0,e.k):"values"==n?l(0,e.v):l(0,[e.k,e.v]):(t._t=void 0,l(1))},e?"entries":"values",!e,!0),g(n)}}},{17:17,18:18,19:19,27:27,30:30,31:31,38:38,42:42,44:44,46:46,60:60,65:65,69:69,82:82}],13:[function(t,n,e){var r=t(27),o=t(10);n.exports=function(t){return function toJSON(){if(o(this)!=t)throw TypeError(t+"#toJSON isn't generic");var n=[];return r(this,!1,n.push,n),n}}},{10:10,27:27}],14:[function(t,n,e){"use strict";var r=t(31),o=t(60),i=t(4),u=t(38),c=t(69),a=t(27),s=t(8),f=t(30),l=t(82)("weak"),h=Object.isExtensible||u,p=s(5),v=s(6),g=0,y=function(t){return t._l||(t._l=new d)},d=function(){this.a=[]},m=function(t,n){return p(t.a,function(t){return t[0]===n})};d.prototype={get:function(t){var n=m(this,t);return n?n[1]:void 0},has:function(t){return!!m(this,t)},set:function(t,n){var e=m(this,t);e?e[1]=n:this.a.push([t,n])},"delete":function(t){var n=v(this.a,function(n){return n[0]===t});return~n&&this.a.splice(n,1),!!~n}},n.exports={getConstructor:function(t,n,e,r){var i=t(function(t,o){c(t,i,n),t._i=g++,t._l=void 0,void 0!=o&&a(o,e,t[r],t)});return o(i.prototype,{"delete":function(t){return u(t)?h(t)?f(t,l)&&f(t[l],this._i)&&delete t[l][this._i]:y(this)["delete"](t):!1},has:function has(t){return u(t)?h(t)?f(t,l)&&f(t[l],this._i):y(this).has(t):!1}}),i},def:function(t,n,e){return h(i(n))?(f(n,l)||r(n,l,{}),n[l][t._i]=e):y(t).set(n,e),t},frozenStore:y,WEAK:l}},{27:27,30:30,31:31,38:38,4:4,60:60,69:69,8:8,82:82}],15:[function(t,n,e){"use strict";var r=t(29),o=t(22),i=t(61),u=t(60),c=t(27),a=t(69),s=t(38),f=t(24),l=t(43),h=t(66);n.exports=function(t,n,e,p,v,g){var y=r[t],d=y,m=v?"set":"add",x=d&&d.prototype,S={},w=function(t){var n=x[t];i(x,t,"delete"==t?function(t){return g&&!s(t)?!1:n.call(this,0===t?0:t)}:"has"==t?function has(t){return g&&!s(t)?!1:n.call(this,0===t?0:t)}:"get"==t?function get(t){return g&&!s(t)?void 0:n.call(this,0===t?0:t)}:"add"==t?function add(t){return n.call(this,0===t?0:t),this}:function set(t,e){return n.call(this,0===t?0:t,e),this})};if("function"==typeof d&&(g||x.forEach&&!f(function(){(new d).entries().next()}))){var b,E=new d,P=E[m](g?{}:-0,1)!=E,O=f(function(){E.has(1)}),_=l(function(t){new d(t)});_||(d=n(function(n,e){a(n,d,t);var r=new y;return void 0!=e&&c(e,v,r[m],r),r}),d.prototype=x,x.constructor=d),g||E.forEach(function(t,n){b=1/n===-(1/0)}),(O||b)&&(w("delete"),w("has"),v&&w("get")),(b||P)&&w(m),g&&x.clear&&delete x.clear}else d=p.getConstructor(n,t,v,m),u(d.prototype,e);return h(d,t),S[t]=d,o(o.G+o.W+o.F*(d!=y),S),g||p.setStrong(d,t,v),d}},{22:22,24:24,27:27,29:29,38:38,43:43,60:60,61:61,66:66,69:69}],16:[function(t,n,e){var r=n.exports={version:"1.2.6"};"number"==typeof __e&&(__e=r)},{}],17:[function(t,n,e){var r=t(2);n.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},{2:2}],18:[function(t,n,e){n.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},{}],19:[function(t,n,e){n.exports=!t(24)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{24:24}],20:[function(t,n,e){var r=t(38),o=t(29).document,i=r(o)&&r(o.createElement);n.exports=function(t){return i?o.createElement(t):{}}},{29:29,38:38}],21:[function(t,n,e){var r=t(46);n.exports=function(t){var n=r.getKeys(t),e=r.getSymbols;if(e)for(var o,i=e(t),u=r.isEnum,c=0;i.length>c;)u.call(t,o=i[c++])&&n.push(o);return n}},{46:46}],22:[function(t,n,e){var r=t(29),o=t(16),i=t(31),u=t(61),c=t(17),a="prototype",s=function(t,n,e){var f,l,h,p,v=t&s.F,g=t&s.G,y=t&s.S,d=t&s.P,m=t&s.B,x=g?r:y?r[n]||(r[n]={}):(r[n]||{})[a],S=g?o:o[n]||(o[n]={}),w=S[a]||(S[a]={});g&&(e=n);for(f in e)l=!v&&x&&f in x,h=(l?x:e)[f],p=m&&l?c(h,r):d&&"function"==typeof h?c(Function.call,h):h,x&&!l&&u(x,f,h),S[f]!=h&&i(S,f,p),d&&w[f]!=h&&(w[f]=h)};r.core=o,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,n.exports=s},{16:16,17:17,29:29,31:31,61:61}],23:[function(t,n,e){var r=t(83)("match");n.exports=function(t){var n=/./;try{"/./"[t](n)}catch(e){try{return n[r]=!1,!"/./"[t](n)}catch(o){}}return!0}},{83:83}],24:[function(t,n,e){n.exports=function(t){try{return!!t()}catch(n){return!0}}},{}],25:[function(t,n,e){"use strict";var r=t(31),o=t(61),i=t(24),u=t(18),c=t(83);n.exports=function(t,n,e){var a=c(t),s=""[t];i(function(){var n={};return n[a]=function(){return 7},7!=""[t](n)})&&(o(String.prototype,t,e(u,a,s)),r(RegExp.prototype,a,2==n?function(t,n){return s.call(t,this,n)}:function(t){return s.call(t,this)}))}},{18:18,24:24,31:31,61:61,83:83}],26:[function(t,n,e){"use strict";var r=t(4);n.exports=function(){var t=r(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},{4:4}],27:[function(t,n,e){var r=t(17),o=t(40),i=t(35),u=t(4),c=t(79),a=t(84);n.exports=function(t,n,e,s){var f,l,h,p=a(t),v=r(e,s,n?2:1),g=0;if("function"!=typeof p)throw TypeError(t+" is not iterable!");if(i(p))for(f=c(t.length);f>g;g++)n?v(u(l=t[g])[0],l[1]):v(t[g]);else for(h=p.call(t);!(l=h.next()).done;)o(h,v,l.value,n)}},{17:17,35:35,4:4,40:40,79:79,84:84}],28:[function(t,n,e){var r=t(78),o=t(46).getNames,i={}.toString,u="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return o(t)}catch(n){return u.slice()}};n.exports.get=function getOwnPropertyNames(t){return u&&"[object Window]"==i.call(t)?c(t):o(r(t))}},{46:46,78:78}],29:[function(t,n,e){var r=n.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},{}],30:[function(t,n,e){var r={}.hasOwnProperty;n.exports=function(t,n){return r.call(t,n)}},{}],31:[function(t,n,e){var r=t(46),o=t(59);n.exports=t(19)?function(t,n,e){return r.setDesc(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},{19:19,46:46,59:59}],32:[function(t,n,e){n.exports=t(29).document&&document.documentElement},{29:29}],33:[function(t,n,e){n.exports=function(t,n,e){var r=void 0===e;switch(n.length){case 0:return r?t():t.call(e);case 1:return r?t(n[0]):t.call(e,n[0]);case 2:return r?t(n[0],n[1]):t.call(e,n[0],n[1]);case 3:return r?t(n[0],n[1],n[2]):t.call(e,n[0],n[1],n[2]);case 4:return r?t(n[0],n[1],n[2],n[3]):t.call(e,n[0],n[1],n[2],n[3])}return t.apply(e,n)}},{}],34:[function(t,n,e){var r=t(11);n.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},{11:11}],35:[function(t,n,e){var r=t(45),o=t(83)("iterator"),i=Array.prototype;n.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},{45:45,83:83}],36:[function(t,n,e){var r=t(11);n.exports=Array.isArray||function(t){return"Array"==r(t)}},{11:11}],37:[function(t,n,e){var r=t(38),o=Math.floor;n.exports=function isInteger(t){return!r(t)&&isFinite(t)&&o(t)===t}},{38:38}],38:[function(t,n,e){n.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},{}],39:[function(t,n,e){var r=t(38),o=t(11),i=t(83)("match");n.exports=function(t){var n;return r(t)&&(void 0!==(n=t[i])?!!n:"RegExp"==o(t))}},{11:11,38:38,83:83}],40:[function(t,n,e){var r=t(4);n.exports=function(t,n,e,o){try{return o?n(r(e)[0],e[1]):n(e)}catch(i){var u=t["return"];throw void 0!==u&&r(u.call(t)),i}}},{4:4}],41:[function(t,n,e){"use strict";var r=t(46),o=t(59),i=t(66),u={};t(31)(u,t(83)("iterator"),function(){return this}),n.exports=function(t,n,e){t.prototype=r.create(u,{next:o(1,e)}),i(t,n+" Iterator")}},{31:31,46:46,59:59,66:66,83:83}],42:[function(t,n,e){"use strict";var r=t(48),o=t(22),i=t(61),u=t(31),c=t(30),a=t(45),s=t(41),f=t(66),l=t(46).getProto,h=t(83)("iterator"),p=!([].keys&&"next"in[].keys()),v="@@iterator",g="keys",y="values",d=function(){return this};n.exports=function(t,n,e,m,x,S,w){s(e,n,m);var b,E,P=function(t){if(!p&&t in F)return F[t];switch(t){case g:return function keys(){return new e(this,t)};case y:return function values(){return new e(this,t)}}return function entries(){return new e(this,t)}},O=n+" Iterator",_=x==y,M=!1,F=t.prototype,A=F[h]||F[v]||x&&F[x],j=A||P(x);if(A){var N=l(j.call(new t));f(N,O,!0),!r&&c(F,v)&&u(N,h,d),_&&A.name!==y&&(M=!0,j=function values(){return A.call(this)})}if(r&&!w||!p&&!M&&F[h]||u(F,h,j),a[n]=j,a[O]=d,x)if(b={values:_?j:P(y),keys:S?j:P(g),entries:_?P("entries"):j},w)for(E in b)E in F||i(F,E,b[E]);else o(o.P+o.F*(p||M),n,b);return b}},{22:22,30:30,31:31,41:41,45:45,46:46,48:48,61:61,66:66,83:83}],43:[function(t,n,e){var r=t(83)("iterator"),o=!1;try{var i=[7][r]();i["return"]=function(){o=!0},Array.from(i,function(){throw 2})}catch(u){}n.exports=function(t,n){if(!n&&!o)return!1;var e=!1;try{var i=[7],u=i[r]();u.next=function(){e=!0},i[r]=function(){return u},t(i)}catch(c){}return e}},{83:83}],44:[function(t,n,e){n.exports=function(t,n){return{value:n,done:!!t}}},{}],45:[function(t,n,e){n.exports={}},{}],46:[function(t,n,e){var r=Object;n.exports={create:r.create,getProto:r.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:r.getOwnPropertyDescriptor,setDesc:r.defineProperty,setDescs:r.defineProperties,getKeys:r.keys,getNames:r.getOwnPropertyNames,getSymbols:r.getOwnPropertySymbols,each:[].forEach}},{}],47:[function(t,n,e){var r=t(46),o=t(78);n.exports=function(t,n){for(var e,i=o(t),u=r.getKeys(i),c=u.length,a=0;c>a;)if(i[e=u[a++]]===n)return e}},{46:46,78:78}],48:[function(t,n,e){n.exports=!1},{}],49:[function(t,n,e){n.exports=Math.expm1||function expm1(t){return 0==(t=+t)?t:t>-1e-6&&1e-6>t?t+t*t/2:Math.exp(t)-1}},{}],50:[function(t,n,e){n.exports=Math.log1p||function log1p(t){return(t=+t)>-1e-8&&1e-8>t?t-t*t/2:Math.log(1+t)}},{}],51:[function(t,n,e){n.exports=Math.sign||function sign(t){return 0==(t=+t)||t!=t?t:0>t?-1:1}},{}],52:[function(t,n,e){var r,o,i,u=t(29),c=t(75).set,a=u.MutationObserver||u.WebKitMutationObserver,s=u.process,f=u.Promise,l="process"==t(11)(s),h=function(){var t,n,e;for(l&&(t=s.domain)&&(s.domain=null,t.exit());r;)n=r.domain,e=r.fn,n&&n.enter(),e(),n&&n.exit(),r=r.next;o=void 0,t&&t.enter()};if(l)i=function(){s.nextTick(h)};else if(a){var p=1,v=document.createTextNode("");new a(h).observe(v,{characterData:!0}),i=function(){v.data=p=-p}}else i=f&&f.resolve?function(){f.resolve().then(h)}:function(){c.call(u,h)};n.exports=function asap(t){var n={fn:t,next:void 0,domain:l&&s.domain};o&&(o.next=n),r||(r=n,i()),o=n}},{11:11,29:29,75:75}],53:[function(t,n,e){var r=t(46),o=t(80),i=t(34);n.exports=t(24)(function(){var t=Object.assign,n={},e={},r=Symbol(),o="abcdefghijklmnopqrst";return n[r]=7,o.split("").forEach(function(t){e[t]=t}),7!=t({},n)[r]||Object.keys(t({},e)).join("")!=o})?function assign(t,n){for(var e=o(t),u=arguments,c=u.length,a=1,s=r.getKeys,f=r.getSymbols,l=r.isEnum;c>a;)for(var h,p=i(u[a++]),v=f?s(p).concat(f(p)):s(p),g=v.length,y=0;g>y;)l.call(p,h=v[y++])&&(e[h]=p[h]);return e}:Object.assign},{24:24,34:34,46:46,80:80}],54:[function(t,n,e){var r=t(22),o=t(16),i=t(24);n.exports=function(t,n){var e=(o.Object||{})[t]||Object[t],u={};u[t]=n(e),r(r.S+r.F*i(function(){e(1)}),"Object",u)}},{16:16,22:22,24:24}],55:[function(t,n,e){var r=t(46),o=t(78),i=r.isEnum;n.exports=function(t){return function(n){for(var e,u=o(n),c=r.getKeys(u),a=c.length,s=0,f=[];a>s;)i.call(u,e=c[s++])&&f.push(t?[e,u[e]]:u[e]);return f}}},{46:46,78:78}],56:[function(t,n,e){var r=t(46),o=t(4),i=t(29).Reflect;n.exports=i&&i.ownKeys||function ownKeys(t){var n=r.getNames(o(t)),e=r.getSymbols;return e?n.concat(e(t)):n}},{29:29,4:4,46:46}],57:[function(t,n,e){"use strict";var r=t(58),o=t(33),i=t(2);n.exports=function(){for(var t=i(this),n=arguments.length,e=Array(n),u=0,c=r._,a=!1;n>u;)(e[u]=arguments[u++])===c&&(a=!0);return function(){var r,i=this,u=arguments,s=u.length,f=0,l=0;if(!a&&!s)return o(t,e,i);if(r=e.slice(),a)for(;n>f;f++)r[f]===c&&(r[f]=u[l++]);for(;s>l;)r.push(u[l++]);return o(t,r,i)}}},{2:2,33:33,58:58}],58:[function(t,n,e){n.exports=t(29)},{29:29}],59:[function(t,n,e){n.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},{}],60:[function(t,n,e){var r=t(61);n.exports=function(t,n){for(var e in n)r(t,e,n[e]);return t}},{61:61}],61:[function(t,n,e){var r=t(29),o=t(31),i=t(82)("src"),u="toString",c=Function[u],a=(""+c).split(u);t(16).inspectSource=function(t){return c.call(t)},(n.exports=function(t,n,e,u){"function"==typeof e&&(e.hasOwnProperty(i)||o(e,i,t[n]?""+t[n]:a.join(String(n))),e.hasOwnProperty("name")||o(e,"name",n)),t===r?t[n]=e:(u||delete t[n],o(t,n,e))})(Function.prototype,u,function toString(){return"function"==typeof this&&this[i]||c.call(this)})},{16:16,29:29,31:31,82:82}],62:[function(t,n,e){n.exports=function(t,n){var e=n===Object(n)?function(t){return n[t]}:n;return function(n){return String(n).replace(t,e)}}},{}],63:[function(t,n,e){n.exports=Object.is||function is(t,n){return t===n?0!==t||1/t===1/n:t!=t&&n!=n}},{}],64:[function(t,n,e){var r=t(46).getDesc,o=t(38),i=t(4),u=function(t,n){if(i(t),!o(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};n.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(n,e,o){try{o=t(17)(Function.call,r(Object.prototype,"__proto__").set,2),o(n,[]),e=!(n instanceof Array)}catch(i){e=!0}return function setPrototypeOf(t,n){return u(t,n),e?t.__proto__=n:o(t,n),t}}({},!1):void 0),check:u}},{17:17,38:38,4:4,46:46}],65:[function(t,n,e){"use strict";var r=t(29),o=t(46),i=t(19),u=t(83)("species");n.exports=function(t){var n=r[t];i&&n&&!n[u]&&o.setDesc(n,u,{configurable:!0,get:function(){return this}})}},{19:19,29:29,46:46,83:83}],66:[function(t,n,e){var r=t(46).setDesc,o=t(30),i=t(83)("toStringTag");n.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},{30:30,46:46,83:83}],67:[function(t,n,e){var r=t(29),o="__core-js_shared__",i=r[o]||(r[o]={});n.exports=function(t){return i[t]||(i[t]={})}},{29:29}],68:[function(t,n,e){var r=t(4),o=t(2),i=t(83)("species");n.exports=function(t,n){var e,u=r(t).constructor;return void 0===u||void 0==(e=r(u)[i])?n:o(e)}},{2:2,4:4,83:83}],69:[function(t,n,e){n.exports=function(t,n,e){if(!(t instanceof n))throw TypeError(e+": use the 'new' operator!");return t}},{}],70:[function(t,n,e){var r=t(77),o=t(18);n.exports=function(t){return function(n,e){var i,u,c=String(o(n)),a=r(e),s=c.length;return 0>a||a>=s?t?"":void 0:(i=c.charCodeAt(a),55296>i||i>56319||a+1===s||(u=c.charCodeAt(a+1))<56320||u>57343?t?c.charAt(a):i:t?c.slice(a,a+2):(i-55296<<10)+(u-56320)+65536)}}},{18:18,77:77}],71:[function(t,n,e){var r=t(39),o=t(18);n.exports=function(t,n,e){if(r(n))throw TypeError("String#"+e+" doesn't accept regex!");return String(o(t))}},{18:18,39:39}],72:[function(t,n,e){var r=t(79),o=t(73),i=t(18);n.exports=function(t,n,e,u){var c=String(i(t)),a=c.length,s=void 0===e?" ":String(e),f=r(n);if(a>=f)return c;""==s&&(s=" ");var l=f-a,h=o.call(s,Math.ceil(l/s.length));return h.length>l&&(h=h.slice(0,l)),u?h+c:c+h}},{18:18,73:73,79:79}],73:[function(t,n,e){"use strict";var r=t(77),o=t(18);n.exports=function repeat(t){var n=String(o(this)),e="",i=r(t);if(0>i||i==1/0)throw RangeError("Count can't be negative");for(;i>0;(i>>>=1)&&(n+=n))1&i&&(e+=n);return e}},{18:18,77:77}],74:[function(t,n,e){var r=t(22),o=t(18),i=t(24),u=" \n \f\r Â áš€á Žâ€€â€â€‚â€ƒâ€„â€…â€†â€‡â€ˆâ€‰â€Šâ€¯âŸã€€\u2028\u2029\ufeff",c="["+u+"]",a="​…",s=RegExp("^"+c+c+"*"),f=RegExp(c+c+"*$"),l=function(t,n){var e={};e[t]=n(h),r(r.P+r.F*i(function(){return!!u[t]()||a[t]()!=a}),"String",e)},h=l.trim=function(t,n){return t=String(o(t)),1&n&&(t=t.replace(s,"")),2&n&&(t=t.replace(f,"")),t};n.exports=l},{18:18,22:22,24:24}],75:[function(t,n,e){var r,o,i,u=t(17),c=t(33),a=t(32),s=t(20),f=t(29),l=f.process,h=f.setImmediate,p=f.clearImmediate,v=f.MessageChannel,g=0,y={},d="onreadystatechange",m=function(){var t=+this;if(y.hasOwnProperty(t)){var n=y[t];delete y[t],n()}},x=function(t){m.call(t.data)};h&&p||(h=function setImmediate(t){for(var n=[],e=1;arguments.length>e;)n.push(arguments[e++]);return y[++g]=function(){c("function"==typeof t?t:Function(t),n)},r(g),g},p=function clearImmediate(t){delete y[t]},"process"==t(11)(l)?r=function(t){l.nextTick(u(m,t,1))}:v?(o=new v,i=o.port2,o.port1.onmessage=x,r=u(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(r=function(t){f.postMessage(t+"","*")},f.addEventListener("message",x,!1)):r=d in s("script")?function(t){a.appendChild(s("script"))[d]=function(){a.removeChild(this),m.call(t)}}:function(t){setTimeout(u(m,t,1),0)}),n.exports={set:h,clear:p}},{11:11,17:17,20:20,29:29,32:32,33:33}],76:[function(t,n,e){var r=t(77),o=Math.max,i=Math.min;n.exports=function(t,n){return t=r(t),0>t?o(t+n,0):i(t,n)}},{77:77}],77:[function(t,n,e){var r=Math.ceil,o=Math.floor;n.exports=function(t){return isNaN(t=+t)?0:(t>0?o:r)(t)}},{}],78:[function(t,n,e){var r=t(34),o=t(18);n.exports=function(t){return r(o(t))}},{18:18,34:34}],79:[function(t,n,e){var r=t(77),o=Math.min;n.exports=function(t){return t>0?o(r(t),9007199254740991):0}},{77:77}],80:[function(t,n,e){var r=t(18);n.exports=function(t){return Object(r(t))}},{18:18}],81:[function(t,n,e){var r=t(38);n.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},{38:38}],82:[function(t,n,e){var r=0,o=Math.random();n.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+o).toString(36))}},{}],83:[function(t,n,e){var r=t(67)("wks"),o=t(82),i=t(29).Symbol;n.exports=function(t){return r[t]||(r[t]=i&&i[t]||(i||o)("Symbol."+t))}},{29:29,67:67,82:82}],84:[function(t,n,e){var r=t(10),o=t(83)("iterator"),i=t(45);n.exports=t(16).getIteratorMethod=function(t){return void 0!=t?t[o]||t["@@iterator"]||i[r(t)]:void 0}},{10:10,16:16,45:45,83:83}],85:[function(t,n,e){"use strict";var r,o=t(46),i=t(22),u=t(19),c=t(59),a=t(32),s=t(20),f=t(30),l=t(11),h=t(33),p=t(24),v=t(4),g=t(2),y=t(38),d=t(80),m=t(78),x=t(77),S=t(76),w=t(79),b=t(34),E=t(82)("__proto__"),P=t(8),O=t(7)(!1),_=Object.prototype,M=Array.prototype,F=M.slice,A=M.join,j=o.setDesc,N=o.getDesc,I=o.setDescs,k={};u||(r=!p(function(){return 7!=j(s("div"),"a",{get:function(){return 7}}).a}),o.setDesc=function(t,n,e){if(r)try{return j(t,n,e)}catch(o){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(v(t)[n]=e.value),t},o.getDesc=function(t,n){if(r)try{return N(t,n)}catch(e){}return f(t,n)?c(!_.propertyIsEnumerable.call(t,n),t[n]):void 0},o.setDescs=I=function(t,n){v(t);for(var e,r=o.getKeys(n),i=r.length,u=0;i>u;)o.setDesc(t,e=r[u++],n[e]);return t}),i(i.S+i.F*!u,"Object",{getOwnPropertyDescriptor:o.getDesc,defineProperty:o.setDesc,defineProperties:I});var D="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),T=D.concat("length","prototype"),L=D.length,R=function(){var t,n=s("iframe"),e=L,r=">";for(n.style.display="none",a.appendChild(n),n.src="javascript:",t=n.contentWindow.document,t.open(),t.write("