pax_global_header00006660000000000000000000000064131577573650014535gustar00rootroot0000000000000052 comment=dcf31103e8e86efab7fa687b563be21f26807175 Inquirer.js-3.3.0/000077500000000000000000000000001315775736500137515ustar00rootroot00000000000000Inquirer.js-3.3.0/.codeclimate.yml000066400000000000000000000002611315775736500170220ustar00rootroot00000000000000engines: duplication: enabled: true config: languages: - javascript eslint: enabled: true channel: "eslint-2" ratings: paths: - "**.js" exclude_paths: Inquirer.js-3.3.0/.editorconfig000066400000000000000000000002531315775736500164260ustar00rootroot00000000000000root = true [*] indent_style = space indent_size = 2 charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true [*.md] trim_trailing_whitespace = false Inquirer.js-3.3.0/.eslintrc.js000066400000000000000000000005571315775736500162170ustar00rootroot00000000000000module.exports = { 'extends': 'xo-space', 'env': { 'mocha': true }, 'rules': { 'quotes': [ 'error', 'single' ], 'no-multi-assign': 'off', 'capitalized-comments': 'off', 'no-unused-expressions': 'off', 'handle-callback-err': 'off', 'no-eq-null': 'off', 'eqeqeq': [ 'error', 'allow-null' ] } }; Inquirer.js-3.3.0/.gitattributes000066400000000000000000000000141315775736500166370ustar00rootroot00000000000000* text=auto Inquirer.js-3.3.0/.gitignore000066400000000000000000000000341315775736500157360ustar00rootroot00000000000000node_modules coverage .idea Inquirer.js-3.3.0/.travis.yml000066400000000000000000000004221315775736500160600ustar00rootroot00000000000000sudo: false language: node_js node_js: - 4 - 6 - node cache: yarn: true env: global: secure: dHdnulkfL3Es9kaH0JVFwPk5VUeD7fdiMYdNaId09ZTa9mL9BvYcHmeVK5g1ZIm1F0+QmLeJwjO+4dq1yjRz6IFnpbgQSlhIbYjs+8zBc1v+HTZZfB/kFRIqHO0x4nJG8vKVa+Sg5tp0pI7hiCgevsrlvf4Pb6D0Cyx+faSGNrY= Inquirer.js-3.3.0/LICENSE-MIT000066400000000000000000000020411315775736500154020ustar00rootroot00000000000000Copyright (c) 2012 Simon Boudrias Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.Inquirer.js-3.3.0/README.md000066400000000000000000000340051315775736500152320ustar00rootroot00000000000000Inquirer.js =========== [![npm](https://badge.fury.io/js/inquirer.svg)](http://badge.fury.io/js/inquirer) [![tests](https://travis-ci.org/SBoudrias/Inquirer.js.svg?branch=master)](http://travis-ci.org/SBoudrias/Inquirer.js) [![Coverage Status](https://coveralls.io/repos/yeoman/generator/badge.svg)](https://coveralls.io/r/SBoudrias/Inquirer.js) [![dependencies](https://david-dm.org/SBoudrias/Inquirer.js.svg?theme=shields.io)](https://david-dm.org/SBoudrias/Inquirer.js) A collection of common interactive command line user interfaces. ## Table of Contents 1. [Documentation](#documentation) 1. [Installation](#installation) 2. [Examples](#examples) 3. [Methods](#methods) 4. [Objects](#objects) 1. [Questions](#questions) 2. [Answers](#answers) 3. [Separator](#separator) 4. [Prompt Types](#prompt) 2. [User Interfaces and Layouts](#layouts) 1. [Reactive Interface](#reactive) 3. [Support](#support) 4. [News](#news) 5. [Contributing](#contributing) 6. [License](#license) 7. [Plugins](#plugins) ## Goal and Philosophy Inquirer Logo **`Inquirer.js`** strives to be an easily embeddable and beautiful command line interface for [Node.js](https://nodejs.org/) (and perhaps the "CLI [Xanadu](https://en.wikipedia.org/wiki/Citizen_Kane)"). **`Inquirer.js`** should ease the process of - providing *error feedback* - *asking questions* - *parsing* input - *validating* answers - managing *hierarchical prompts* > **Note:** **`Inquirer.js`** provides the user interface and the inquiry session flow. If you're searching for a full blown command line program utility, then check out [commander](https://github.com/visionmedia/commander.js), [vorpal](https://github.com/dthree/vorpal) or [args](https://github.com/leo/args). ## [Documentation](#documentation) ### Installation ``` shell npm install inquirer ``` ```javascript var inquirer = require('inquirer'); inquirer.prompt([/* Pass your questions in here */]).then(function (answers) { // Use user feedback for... whatever!! }); ``` ### Examples (Run it and see it) Check out the `examples/` folder for code and interface examples. ``` shell node examples/pizza.js node examples/checkbox.js # etc... ``` ### Methods #### `inquirer.prompt(questions) -> promise` Launch the prompt interface (inquiry session) - **questions** (Array) containing [Question Object](#question) (using the [reactive interface](#reactive-interface), you can also pass a `Rx.Observable` instance) - returns a **Promise** #### `inquirer.registerPrompt(name, prompt)` Register prompt plugins under `name`. - **name** (string) name of the this new prompt. (used for question `type`) - **prompt** (object) the prompt object itself (the plugin) #### `inquirer.createPromptModule() -> prompt function` Create a self contained inquirer module. If you don't want to affect other libraries that also rely on inquirer when you overwrite or add new prompt types. ```js var prompt = inquirer.createPromptModule(); prompt(questions).then(/* ... */); ``` ### Objects #### Question A question object is a `hash` containing question related values: - **type**: (String) Type of the prompt. Defaults: `input` - Possible values: `input`, `confirm`, `list`, `rawlist`, `expand`, `checkbox`, `password`, `editor` - **name**: (String) The name to use when storing the answer in the answers hash. If the name contains periods, it will define a path in the answers hash. - **message**: (String|Function) The question to print. If defined as a function, the first parameter will be the current inquirer session answers. - **default**: (String|Number|Array|Function) Default value(s) to use if nothing is entered, or a function that returns the default value(s). If defined as a function, the first parameter will be the current inquirer session answers. - **choices**: (Array|Function) Choices array or a function returning a choices array. If defined as a function, the first parameter will be the current inquirer session answers. Array values can be simple `strings`, or `objects` containing a `name` (to display in list), a `value` (to save in the answers hash) and a `short` (to display after selection) properties. The choices array can also contain [a `Separator`](#separator). - **validate**: (Function) Receive the user input and answers hash. Should return `true` if the value is valid, and an error message (`String`) otherwise. If `false` is returned, a default error message is provided. - **filter**: (Function) Receive the user input and return the filtered value to be used inside the program. The value returned will be added to the _Answers_ hash. - **when**: (Function, Boolean) Receive the current user answers hash and should return `true` or `false` depending on whether or not this question should be asked. The value can also be a simple boolean. - **pageSize**: (Number) Change the number of lines that will be rendered when using `list`, `rawList`, `expand` or `checkbox`. - **prefix**: (String) Change the default _prefix_ message. - **suffix**: (String) Change the default _suffix_ message. `default`, `choices`(if defined as functions), `validate`, `filter` and `when` functions can be called asynchronous. Either return a promise or use `this.async()` to get a callback you'll call with the final value. ``` javascript { /* Preferred way: with promise */ filter: function () { return new Promise(/* etc... */); }, /* Legacy way: with this.async */ validate: function (input) { // Declare function as asynchronous, and save the done callback var done = this.async(); // Do async stuff setTimeout(function () { if (typeof input !== 'number') { // Pass the return value in the done callback done('You need to provide a number'); return; } // Pass the return value in the done callback done(null, true); }, 3000); } } ``` ### Answers A key/value hash containing the client answers in each prompt. - **Key** The `name` property of the _question_ object - **Value** (Depends on the prompt) - `confirm`: (Boolean) - `input` : User input (filtered if `filter` is defined) (String) - `rawlist`, `list` : Selected choice value (or name if no value specified) (String) ### Separator A separator can be added to any `choices` array: ``` // In the question object choices: [ "Choice A", new inquirer.Separator(), "choice B" ] // Which'll be displayed this way [?] What do you want to do? > Order a pizza Make a reservation -------- Ask opening hours Talk to the receptionist ``` The constructor takes a facultative `String` value that'll be use as the separator. If omitted, the separator will be `--------`. Separator instances have a property `type` equal to `separator`. This should allow tools façading Inquirer interface from detecting separator types in lists. ### Prompt types --------------------- > **Note:**: _allowed options written inside square brackets (`[]`) are optional. Others are required._ #### List - `{type: 'list'}` Take `type`, `name`, `message`, `choices`[, `default`, `filter`] properties. (Note that default must be the choice `index` in the array or a choice `value`) ![List prompt](assets/screenshots/list-prompt.png) --- #### Raw List - `{type: 'rawlist'}` Take `type`, `name`, `message`, `choices`[, `default`, `filter`] properties. (Note that default must the choice `index` in the array) ![Raw list prompt](assets/screenshots/rawlist-prompt.png) --- #### Expand - `{type: 'expand'}` Take `type`, `name`, `message`, `choices`[, `default`] properties. (Note that default must be the choice `index` in the array. If `default` key not provided, then `help` will be used as default choice) Note that the `choices` object will take an extra parameter called `key` for the `expand` prompt. This parameter must be a single (lowercased) character. The `h` option is added by the prompt and shouldn't be defined by the user. See `examples/expand.js` for a running example. ![Expand prompt closed](assets/screenshots/expand-prompt-1.png) ![Expand prompt expanded](assets/screenshots/expand-prompt-2.png) --- #### Checkbox - `{type: 'checkbox'}` Take `type`, `name`, `message`, `choices`[, `filter`, `validate`, `default`] properties. `default` is expected to be an Array of the checked choices value. Choices marked as `{checked: true}` will be checked by default. Choices whose property `disabled` is truthy will be unselectable. If `disabled` is a string, then the string will be outputted next to the disabled choice, otherwise it'll default to `"Disabled"`. The `disabled` property can also be a synchronous function receiving the current answers as argument and returning a boolean or a string. ![Checkbox prompt](assets/screenshots/checkbox-prompt.png) --- #### Confirm - `{type: 'confirm'}` Take `type`, `name`, `message`[, `default`] properties. `default` is expected to be a boolean if used. ![Confirm prompt](assets/screenshots/confirm-prompt.png) --- #### Input - `{type: 'input'}` Take `type`, `name`, `message`[, `default`, `filter`, `validate`] properties. ![Input prompt](assets/screenshots/input-prompt.png) --- #### Password - `{type: 'password'}` Take `type`, `name`, `message`[, `default`, `filter`, `validate`] properties. ![Password prompt](assets/screenshots/password-prompt.png) --- #### Editor - `{type: 'editor'}` Take `type`, `name`, `message`[, `default`, `filter`, `validate`] properties Launches an instance of the users preferred editor on a temporary file. Once the user exits their editor, the contents of the temporary file are read in as the result. The editor to use is determined by reading the $VISUAL or $EDITOR environment variables. If neither of those are present, notepad (on Windows) or vim (Linux or Mac) is used. ## User Interfaces and layouts Along with the prompts, Inquirer offers some basic text UI. #### Bottom Bar - `inquirer.ui.BottomBar` This UI present a fixed text at the bottom of a free text zone. This is useful to keep a message to the bottom of the screen while outputting command outputs on the higher section. ```javascript var ui = new inquirer.ui.BottomBar(); // pipe a Stream to the log zone outputStream.pipe(ui.log); // Or simply write output ui.log.write('something just happened.'); ui.log.write('Almost over, standby!'); // During processing, update the bottom bar content to display a loader // or output a progress bar, etc ui.updateBottomBar('new bottom bar content'); ``` ## Reactive interface Internally, Inquirer uses the [JS reactive extension](https://github.com/Reactive-Extensions/RxJS) to handle events and async flows. This mean you can take advantage of this feature to provide more advanced flows. For example, you can dynamically add questions to be asked: ```js var prompts = new Rx.Subject(); inquirer.prompt(prompts); // At some point in the future, push new questions prompts.onNext({ /* question... */ }); prompts.onNext({ /* question... */ }); // When you're done prompts.onCompleted(); ``` And using the return value `process` property, you can access more fine grained callbacks: ```js inquirer.prompt(prompts).ui.process.subscribe( onEachAnswer, onError, onComplete ); ``` ## Support (OS Terminals) You should expect mostly good support for the CLI below. This does not mean we won't look at issues found on other command line - feel free to report any! - **Mac OS**: - Terminal.app - iTerm - **Windows**: - [ConEmu](https://conemu.github.io/) - cmd.exe - Powershell - Cygwin - **Linux (Ubuntu, openSUSE, Arch Linux, etc)**: - gnome-terminal (Terminal GNOME) - konsole ## News on the march (Release notes) Please refer to the [Github releases section for the changelog](https://github.com/SBoudrias/Inquirer.js/releases) ## Contributing **Unit test** Unit test are written in [Mocha](https://mochajs.org/). Please add a unit test for every new feature or bug fix. `npm test` to run the test suite. **Documentation** Add documentation for every API change. Feel free to send typo fixes and better docs! We're looking to offer good support for multiple prompts and environments. If you want to help, we'd like to keep a list of testers for each terminal/OS so we can contact you and get feedback before release. Let us know if you want to be added to the list (just tweet to [@vaxilart](https://twitter.com/Vaxilart)) or just add your name to [the wiki](https://github.com/SBoudrias/Inquirer.js/wiki/Testers) ## License Copyright (c) 2016 Simon Boudrias (twitter: [@vaxilart](https://twitter.com/Vaxilart)) Licensed under the MIT license. ## Plugins ### Prompts ### [__autocomplete__](https://github.com/mokkabonna/inquirer-autocomplete-prompt)
Presents a list of options as the user types, compatible with other packages such as fuzzy (for search)

![autocomplete prompt](https://github.com/mokkabonna/inquirer-autocomplete-prompt/raw/master/inquirer.gif) [__datetime__](https://github.com/DerekTBrown/inquirer-datepicker-prompt)
Customizable date/time selector using both number pad and arrow keys

![Datetime Prompt](https://github.com/DerekTBrown/inquirer-datepicker-prompt/raw/master/example/datetime-prompt.png) [__inquirer-select-line__](https://github.com/adam-golab/inquirer-select-line)
Prompt for selecting index in array where add new element

![inquirer-select-line gif](https://media.giphy.com/media/xUA7b1MxpngddUvdHW/giphy.gif) [__command__](https://github.com/sullof/inquirer-command-prompt)

Simple prompt with command history and dynamic autocomplete [__inquirer-chalk-pipe__](https://github.com/LitoMore/inquirer-chalk-pipe)
Prompt for input chalk-pipe style strings

![inquirer-chalk-pipe](https://github.com/LitoMore/inquirer-chalk-pipe/raw/master/screenshot.gif) Inquirer.js-3.3.0/assets/000077500000000000000000000000001315775736500152535ustar00rootroot00000000000000Inquirer.js-3.3.0/assets/inquirer_large.png000066400000000000000000000147261315775736500210030ustar00rootroot00000000000000�PNG  IHDR����IDATx^��A �R��&*��9 a�v������0� `0� `�0� �0� `�0`�0� `0� `�0� �0� `� `�0� `0� `��0`�0� `0� `�0� `�0� `�0`�0� `0� `�0� �0� `� `�0� `0� `�0� �0� `� � `�0� `�0� `�0`�0� `0� `�0� �0� `�0`�0� `�0� `�0`�0� `�� `�0� `�0� `�0`�0� `0� `�0� `�0� `�0`�0� `0� `�0� �0� `� `�0� `0� `�0� �0� `� � `�0� `�0� `�0`�0� `0� `�0��0� `�� `�0� `�0� `�0`�0� `�� `�0� `�0� `�� `�0� `0� `�0��0� `�� `�0� `�0� `�0��0� `�� `�0� `�0� `��0� `�� `�0� `0� `�0��0� `�� `�0� `�0� `�0�m��Be;���w���g�s���J 9�E{EJC�i1��D(�zc� P�)PA�J�7z�E���5�b@H��11����������ٳ�zͩW����Y�=�ú]30����ͬ��R�(�J\d)�C�R�]��.PJ4M��PU).����E�)���������w ��0=���>��R��ƣ��O���|U�6���x�*q��F�[��|���p�����w���4�Y��?�}��/^=DX���7R�O��K�*E�q���ߺ�g~j:�7q�Lw���������A�\�c��[�El��Q:ܯ��r�.q��微�)�x���Tb2�s�"�(�� @ @�  �����N�x7G��m�i�+�~���r|Ҧ���_x��?���^]圢'������o����y���f�I��TU�ƩmSt������Z�P��ʧ�2��J%b:N)ņ����<8��j��NMSbm���o��\�Jt2����`5��ǃ���{C���X�x�닶�^�/�h�����t:��F�M��&�;��������w��tw���4��_��<_��,��Q��{������E�;��,���|�F�Rt�sz������'����Gw�����I6I���w�}h���g�/|��n�៯��o|�W�����uz���/���i�[��R~�o|綾� �m�dT��rպ �KU|����~P����A�aoW��q5۩J�m��'G��N����[@�-�h�꺤�\3��d�j�[m��/HM[꺬e��h�ƣ�stVJ��iK���!{Q�Ʃs� �)�5�AѶ%����9z@�@� @����.�ժ.m `�ϰDT9�w����\n��f�,?���bYb[�V�c�y�iJt2�����_;�Ms� ��޵�4%��U]b[�My�#���������_���l�+�@� @� @� �0�Rt6H9dž��t�D�nF�X�J�� F�����q��~�s�y�3���`��_==[��D��i4J����1��Kt�3���� @� @� 6�%�6�RJl��n���*���ضі�{@@�ƽW���3G ���lQ^��T9���s��3K���n �-�A����GU�j��]���R��DD��!<� @� @� 6�"�*��J)E�V�R���Ui�� �����:����R�ѣ�ĵu���Qs� �m� �R�:j>�/��rt2�o�UNѓ���_St�4q����i���������*:)m���*G_J)oyp2�� �V���KJq�r���|i'��Z.K�����ІO @� @� �Atжq�*)E7�e��`�*o}p��_�t|�F'uS��� Vu��{��r�`~��NJD�c3�H)r�}t� � �� @� @� @ @� � @�@� @���6n�jR�^�����c�����}��d��u]��hy\�.�ݝ�k�;��(�s,m��R�p�z��@�o�S�@ @�  b��9���[�ic}�r�(яT��m�)EN)��v�)6� �89m_��g�6�R��ۭb=hۘ�}MJ��p�v��]C��:Ζe�lR��Ԗ������z����u]�vB�؇���Ȑ�?��͝i�>���C?1y����Iw�i~���'�v2���J�Q>9mc������g����Ru]�����_̯Vч�����*���A�ĝ�p�����9?ܯb+��vsJ�a��n�i�����!�ػ�/���CU�N�(q�Qbn���<�|��^]�K�Qf���[��koU�7��2��og��|a6� W�� �q{�v)�'�������f6�b�.��������X7qSL����+_���W��.xf�|�ע���������~}����I��x^�BX��jY���t�V��d�͒U�e�Z����墔7�'<�;w]G)�e@@@@@@@�� p��cJ��NJ]��ɤ����>�>�CJ�W.v���Eu�RWJ�Xf�|��l�<�����Kf��̦�?��3�� �{e�e5�o/Y7���^��Rv}~�w<��s�}��l��4YbH)Gϸ5یav]���Uu����7ŒS�n�2!!!!!!!X�������A߶YJ\��.�YɌ�Y���-=\g�e쒌���lZ2Of�n���2���5�q%��c��ﺲkc �eUn�]������Z�Z7��o�m�y�ߥ����zn=� %t:��W��r��6?����S��n����ͳ�7�i9fJ)���zou�����jY~�]������1l������o�N�NM�4������,��!�m�c�|������]Ҷ�l2��|V���g?��ٳ����*e:���l�W=����ֻ�I�8S}�.|��Q��������^�24����=����<��~��g�;��;vI]�W/u_��a���� !ж��=�K2�-ȣ�d��Q�.�;�������/G�V��3c�~�����F�o9���3%���*���e��@y�!�`�e���2p�������L�dư������B0Љ��R�x� ����C�?�����,��i�d쒃u~�g�~`6��j�*�����dUB�}����U���^s�Ǡ�6�>wmH�����6����~N��d�%�B���6�n�4��m�m �p�w�e@@@@@@@�� @)QU%r`Y��'�P���fە ����eB��U��}���̲�a�>���.1&!@U������i��UÓ��i��A�:f�2E�,BBBBBBB�e�R����f����u�����q��bPYU�IɌ���:�M����-E���{���#{�e��4�C.�6wm;m������ꬖ� ��N'%�-3~����t}\M���3� ���@��u������g�q\%����p�.�u].^�>��/�m�j�^�YY-�[����|������aW��q��>�&C�G�m�vr׸��h�̪j�(��3v"�Mn����bY��������,� � /vΦe�(';J��ት���;s!�rQ��?\������UTU\9�>�������޲���<��.�&�B�x�������U�k����|�D]�/~�������fm�q]!��1���,�%n�u����,���������e�R��J *u)%NJ�G�e�����m7B���4}�0��뢜�H�ٽj�,������@zOB0��o����/�<� e��㿿�.U��a��c�=�ع+��=uoU]�}5���X7��g�٬���h]���������} jی!�p>/�i����m���aY�������,�d��Ӊ�m���� ����U���*"�j�M����f�1&!@��ٽ�7?~礎̡E����!Ȍ�6� a�ȌqB���2�7,����������������������������������$v@���a߶%�g���:�A�.n;S}��g&u��i�<�.%N �`��wO>��{#2��dd�Ff�!@f�]� �8�B@ o0�,��������e`6-�YɌ�QJl���1�r����lұ\'u]�rk��L�ϟ���oL�6cg4���#g~p����?��҅�/��\WqL]��������<����Kۿ��˓���(U4M�mV� !0��_}�J�g�KW�z��'ߵA�:^y��⟼z��϶ͷ�;��G�Uc����/�O~��b^b��R��Rn��y�(�K��Й1U�eu"!\.JĨ�e �ceY��������������������&1j�n�p�]�t��.K�q�3N��ڶ�n2Ƣ%3F)3�:2��}���;�ɤ��w����H��_-�{~lq��k�;�2� �e6+1JU�i��-,��H�,��ucTJi6�vYb ��yu/V�ϥ��b>�"rܟ܌?�`Y������������������������������l�g�oK IEND�B`�Inquirer.js-3.3.0/assets/inquirer_readme.png000066400000000000000000000076341315775736500211460ustar00rootroot00000000000000�PNG  IHDR�?1tRNSn��QIDATx^��1�0�����Z� $�HEf�����ʗ�>{�AU�q�[V��`0��`0 ��`0 ��`0 ��`0 ��`0`��`0 ��`0 ��`0 ��`0 ��`0 ��`0 �0 ��`0 ��`0 ��`0 ��`0 ��`0 ��`0 {�0ڷ��ʮ������>>��3�'��r!!��r-�� )BB_�T���*���۾+o T� �\ Mi)�(%� ����z�������������ج��,K�|�����mlNB:�H��`2��H�~�D)R ���`�d�9���AB� ��������L��1�"DVg� �QX%d� `�~�2D���� F`�v�U�RȈ��L�~�M�ig'�xb�� �aKcn��s���S���뵦C2� ^�`�I�����Ϗ?}��L0, ��4��1�$�$.#D�<�\}�ٱ��E�d>wW���|5h�D�iҫ�^6|�����J� �D�.t��S׫�b�Ͼ`��#QkLzu�J�I�䚗M��{M&�{a��"���5@#@q�9�%�N%+z�G߇����,��&�M� ;���,������ߛk*��$ f{��2|�۳3�4Q)|����]'��0�0��K_�|��:V�o��<��s���/�2 6 c�j�5�lJ��� ��3O�d�.I0����u,��+���_���W� �[y�=K����[o�����^���d>��F=}�N�!JAb�$l6������Y�e;����t����n� ��R�;�=��ːR���GW�0l�W��� �� ��Goo{�+���MgJn������A��Q���vf��ct�b���X�ui�`��\�����` G���V� ���z>���O�دİ���:�4��/֋����-7wN������듕��a�(�s����s��W��ܹ�Ɩ�N�}��%��������o��"����w�|j��6� f�� ��>��ߏϪ�=�_��{��ӓ'�L�8������\_���7�"������a�+�G3��f���S�ݏ����Ӭis �r ��6~��g����T�z�{q�j����?��S�"��s�t��ϝ~��?�O��%�4ѳ/����z�(羯�i��WN�;���`>�v">�����E��G?y����g5)�#@c2 iy����Q�9'�7IH���mole�,!����2��ce9νJx������}'��t��"��;NS�66r{'� Q���T��7����5����` ��2Y+iJ����D_�t�tH��x@�M�Z����8�V2I&�ص{� D��쮉/5�� &�Y��8�X����,� ��Tj�8i>w�0Z �V��:z6O��äS�E�����H���#����Y_��KP�q��n��������=��GO��i߫V$��[߸����������U��k핷�qL�\i�mЃh��8pϝ�?��u�e��4 b�>`����?xx�����_�u>��E!l�1-�� ���ku�m�$�6Gש aO�X�]B��h��q�0z���K��-'N� ��FBqxD �$d�im ��aD������?"X�9��?3t�����El,�a�L� ����}�R�+}���xY4AH*�$&��P��6�}���u2���(�]�@ Q ����H{>ϝY� ����|�A�������)�'KL&�ԫ��B"���Kh{dz�6WV �@�"���p�#@�I*`H��4@BpA2DA��-�+��H{����w����]����&+��9Y^��"� �ዏm}��9R �<5������rS���o��$��򹫠��"��i46c�m7u�>������q4Q:���c۟��zH!C���]`���d���V�o:�NR_���h"X�"�KY�UG����lll�̽�e!�#Ts�DiBt��e�X�a4���b��@c3T0{�žH���L�NiMzM�P��_�6�����/Zg"��i4�a$���W&�T$! {���HM���!�@�(i4iO{ ɗ�c���ku�|��Y��Ǭ��#����~^��}�Mݹ��Pm��@��5��k���ħ7�1K ��;�饉~����|��8sM"\B�r���h>z{���Rd(�����^�� ��n5����PW��C�H�I&Y�����m46����&��Lt��l�3��)lo�ꊆ�qԴ��SM?�_[���l{�婆�7���s'z�#���{2&�����Υq�nAM�4����g��3�u��HBB�B���¹��yd-����8�ZGPca0 ���W!!P�I&��h$JP����V5��1!�V�%��@ccc_�3 #,ı�h�b�·V�}�R�Z�ݯ���v �xk�XM�ᷯ>��ig��h@jk�A0̽�mۙH��Jh4�l0`~uM@ ��@Ӵ���4-��i4M �iZ��W��A� �A�H�&qL����;��v�1�؞e�j�p5��������`���NX�-��i̵`�Ƽ� �7�� �K`�Fz�]K~��h�꒨���wN�{��,% �R��K�'�F���$���X�ZGĂ�H&�8q�����++��� �_�&ÀmB��+���0�VEb��mľ$tE]��D���2}v;O��k��ٿuE lb>��S�%$�B�X�L�oTc�>���ks'�G9��FbiIϿP?������M�2� @�$��U����M7v��y���ͤ�8�����׷g�� � �%����^� ����s�#?{v����~" ����.E�Q��{�o旿��i�����;޼�o_�t�q(Q������>����}/���N"�p�����ic�P [����o��gc?���"�:E�)�Qg$"$��?iB�@��DQ��E�X`K.���>.S�� �&M)B�h![�&B]��W's�D� Ib����)e�]���l0f��}���B�(X,���n�\������������d��N�"e���[lk+���nc��$��)��$��HS:�rcg�w,�|t_���nS��K��<������z`*��,�1� `m5f��8 �桷��q�d�Vp�L�׾faס�s_�V������X'�e"�\{g��~��kk�����Y�@{���,� c ct�J%N���6��0f�lȀ�W� �� ߺ���]���f�ĕ��/��4 's-Ш � �Q; n�@Ӵ���4-��i4M �iZM�4M�4M�4M�4M�4M�4M�4M�4���n�AQۊIEND�B`�Inquirer.js-3.3.0/assets/inquirer_small.png000066400000000000000000000057361315775736500210220ustar00rootroot00000000000000�PNG  IHDR�?1 �IDATx^��A ������I�Oh=tt�� f@@@@@@@@@@@@@@@@�G!� � � � � � � � � � � �  � � � � � � � � � � � � ��-N{w#�u�q�y�s뻿�˱=(+(Q �"YE !`�D (1�@ �%�%�,��DJE$R؄E ����w��l �dL��{���nݺ�}��)��QMi����T���U�6�[:}�ҽ�Ϝ��J�Hp�F$�V`�� �am`h {#�p$:mv:����F���FZ-��P���9�׵�|߉~��A�w ���������A�ܗ��p�?���_z��p$�# ׏.��� ll������u��pA@2����a h�Ե67�޵�ַ,�d����� �/���S[)g,WJ�xɳ�ݿ��7t�7;\ ���o�~��I��[�wo�i��&ľd<�ah��u�ƺ�G.KR�Ó�ik#e�*�{&�h3lm���D�����`a�H� ϸI�i���#g䃟˦��9\�O{5�f� ����a��\�סԙ�o��BC(�R��4�n\)�B�1��_��~n��Ϗ����ߞ-ϽV ��l����K��g�g�/����y��=�p�3|����R���)qз�X��S&��wG_���0b4��?���_�M)�B��������R"�Q`,������$4�ډ @��ϛ���w�Xr�L��s���)�����@���y�#A.ހ�Rw�,p���D��:m�@�мZ&��0�(83!N�B�M3J��&��g�RMD���� 3�^�w���o�w��3, �}s��\�u���Փ���*�u8w�n�蚑ʸ�l���ݱ �.��3�~���xݴv�����C;GB���G?��7u�JQMt�������|��g/|��rЧ��@ �3N�Loyko��S�$�+I�FH�ݡ��Q�M�t�6�1��v��Gzr ��g^w`�k���=}����0r8������%z?�Hw��k����E0.�VQ��{�7������:��q}�v�4��p��tY���ݱw�pלt�זy� ɨY=� �h2�\�*�@����X��p�4�dd2�� ��͘�)�@I��tX�(���[�8�`�@b@��J�����Ýq%3L&��t!�����L���N��h���+�Sϔ��]�@�8��|�NV�9%Ȏ��o��_���"Q@�jo�/���W�=�v-gEw�@����K�ӛofX���$��Y'Ȫtw� �H ����0�2���p��q�Z"��w�����,9����@�m&���׾������ÈQ����?�H^��?��z}-� �S�g.�B( v�촘WI���Ĕ(�:)�f�E���Qg��Kf:\�dDJ4"���.n��jP�� \�ΣR$��ac-���BXQ�w��s9CAb4�,[ QM��}�|�tJ�f��r����[���8" E��K�S��$\h��+�v���-�N�H���FH Q�x�l��DF���iϜJ��-a�Ʋ�r���K �{��/n�,!��n� �����lFI � UM"�u���7 ��F,H0É�����p��ھ��(��gƸjT�t �G�U.� !g� ����v��,� +'EB*��n��1W�QOt�1ָra5E� ;{~i'��]�6���Ks��l�ٙ�);�Wz�l�`�������O���k'6S�(H��O����w����y}''#��"�UϪ*T� @s7�"4p_�%r���4� $� �ՠ+!��� I���F{�qZ H�Xa@�wiF9+ �h�U�� �L��'��` �����/�2鶙�~�úߣ�n��ۇ;�֟�K7c]�o31ʌ�� f���F���r0�.�[�v(a"g���Ɨ�ILj��"�z"� `з� ��]\�0Ǩ��弻7]`G".�VXp)gd�;fJ W�͘3:�����c��}�ua�x������X7R ��?]Ե��;��:kc���g:F��*��=@�ޮ��r�` �� 3&���g�%b�D!D!D!D!D!D!D!D!D!�R�x�I�p h0�_�@UiT���q `DY��[A���[;���5���@��P��qHLj��g$��RpL#�_�K8�"� @��U�@��w�X���>�`&5y��d��p@�@�i��j��E��$,]��df �¨�͈��-T�c"��w�z��ӣ����D$q$��ߵ����A�9�\�ֈ�����|e��P>뭏'��>~*��������O~�<��j��ǝ.] ��+������rE�����;8i� ay�����F�_?��(�z��Z��SK � {C�ǯ\&.XQ��VA�P�@�CGF���H�����i�����6�Oz���չ r�H� �۽5"��Ȏ�� 2Å������l��鱂��6? t�i�$�1�L�͒��]4@�057�5��>J3�+���_�����������^=_�����dK�Ĺ�uY�8;������7\i���+�@��"�4���[$�WM�r�%����� �ac����yWo�"� �K@@@@@@@@@��#P���VIEND�B`�Inquirer.js-3.3.0/assets/screenshots/000077500000000000000000000000001315775736500176135ustar00rootroot00000000000000Inquirer.js-3.3.0/assets/screenshots/checkbox-prompt.png000066400000000000000000000410771315775736500234370ustar00rootroot00000000000000�PNG  IHDRw�&y�� �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� "F��} IDATx���wx�י��9O�u!��BB4 ��b�n� .���z�y㴵�n�x��n~�$���I�v�Nٸ`\��`z�,�]B !�@�>�y���1B�#����s]⺐Μ�gf��>����䍗( ��BS�@�P(n<����� 2�␝�z!$gj��v��v=� ������@H����m{����� t���Il�ݠ%���m\�KcIr��8v� te_(�P�%c�O�����vJ't����_�_e�/�1�a� ��8���hP�ұ���cD��c�R�3[xꇿ�߼U'66�[�M`xN_p=�-!�Nc��݄{ �i����o²#��f�����qƽ6�8��WG�vW����f����]�+��շP������z8�ˉ���y�L��k���Z $L�is�X��9#���1n������i�i�y�J|��\�eάY���J�3>)��}q!�� �f�Z\��ҙ�Ջ kv�H�[Z�8|�˱��w�)&���F��z��%s��U�3���;�����G�Z6B�8��*�Z���OU������D�q�����_,"=���_! 2%�FH��%8z�(Gۿζ�4}V[=�u�m�\����m�q�N04p]��K��虇�� ϮX�c��{�#%�ھ��?��k~,���h:�V,��>�49�+��B�ww�.����yK��ȯ�����<2S�� ��۶C p^�(�����;�p����7u���sڒM)�D4BE�����H��m�Ԝ:Iu� ���ZyuE���������\��E�i{�I��#=��A�1�f���i7�h����k�A}��E��m��0t���Y��ޒН϶HJ�ER�NKK�sMa$������%�2$=�u65QVu��uӟK��\B�Oq�9�TBqc��e�� �h3%G"����E&'�[H���w�l�����/<��0d�d>�`"�@�i���aY�ў[�=�/��������x�7Jh������$�JfHzoD\<)�ǥ0jh.���ؚ�*��CQ-)1)�����3np*������c���� 4"��=������0�c��"<)4�)�ZE�0�o����p�6 ��U/�nMlj�u�z�Q�J���C<��|4�!�[�x����]�^�|~���M�is�iB`U�����= �ه�0"3GF� � O���Է��I�ɳoaѤ��>����7jV���O����w��}��p�<��7L֬�Ƅ�瑞;�|9�����6GD�)Y|��qH7��w7Se �<�1�n���wUY=�t���<���i��#�p�8��z&cz�$�hO�GJ���$��!ym����ky��CQ���9K�>Ĉ� g*��=豩,^0�i�-� ��;eu�$������8�Pk 2s�$�^��H~���(�.o�߂)2ӳ��Wvo0�Xa\��-���Y�e �2�W"�L���G��O�۟[�Gu�A���A���퓇a9n��s� I����8o��4��0$�P�ݚ�HIL�q=<�$1րfO)��)����_a4)x�?ŵ��ϝ:ď��|}�,��4>��Osp�^[���l��/Y0 ��Y����+o����;�2k�H�*wF����?���N�LG��ĉ� �, ���c�����9s|?��y w͌͟у؝B�t����<��=d�f�ȑ���� �X���k�PJ�������R��F��{�k��&l�9/��z:g�#B`��x��cfp��4�~��M���m�Aё p�;#����u��$���h;a���@E����OPRY�arǎ&���&�>l4I���?C��u� �X4gE�;���mwu�o��4ALz|��%9y0��7��A���MK����������+yne�t�IM��~�F�ٓ�1}hf�զP|-��,��b���?�a�Gm��u���ٵ�}'��k"6)����–:{�%�g���[��%��i�}�m�FE�MLB�G�ƫ��O�����-�K^�(�]tl�o�[����?�m�72��a�)�<��%�]t��1�_ف:�|qS���U� ��$ ��Ӄ��[��f0!M��e�z,�����A������½�ڶ-���yp5��k������̘X�`�� �������ZOk{Ԯݍf�|��&��6��q�p��s�|�E��̝�v�1n-� ��� ���}��� >�[FMS��1}�\4��k���r��[�5��/@���c�Y%�O����I-HѦ]Ե�3��?7���e>��v��Ҹk^jd����vR #�/_����bܴ�C�邳�߿�w�2�>�-[����a����H��n�_x�����jq)�=wR����x���fG\�� M'�3�7��y`U`cqy�G$!����.���Oo]x�g���o~�v2r��O'x��g������� 4��L�ɜ�!�Mר8��U�%m�3�i��h�� +߻��Dt��]2n� >5}8n~����t��u�9���gi|pDt�����B�m����Ȁ������]��>l�5��)h<+L��� �ݜ�Ipy��05Ac�9�����S:7ul:��E7H��?�&69���Ix�M��j��{BU�Cr�a ���jN[�ߐ�+��\�����Ģ���#,��U��G�\L�bO�QD���l]=�ft��Ѷk��\��y����P4���;|6$�� m��dDv&- g)�n$kh�x�t����o6폼'� � +3�Ęt��OPc����&��#|��=��*C����e�_9`X�N�ުyB�شi=%�^[��獫�x'LaD���k;$��5~����TT���n�/ 8X^����� 3��L�3M�͍�knl�;��}9Q�����`Dџn��TϾ��֗t?)5B�0!ˊܟ�}\�lw��\�,���~N� �G�iC���\Vl�ɞ�% 53�o��+ UV\e]*Μ������]V����ݓ�&蕖I��v�Ӥx�&h��=�10g0ò�^����SQ\E4�&��ߣh�]u$}�rY�x iljh�'tJ��g�z��Pn���n�;��׃b�}���iۭ�X!}����x�m�/�pU���6�K|����EnZ/��Fum-�GQ\ը�M*������ϋ���( E+����M�_�._ u  �B��B�P(��+>�X���XpU�r��F���{cG�"�u�B��h8{�=G*/s��t��a�Ja�ڕ���\��B����a�ԩ��=LӇ�u�����/SR@�G�Z6B��T_�P�@���-Ҷ��W�B������rˠ߀̞:�����Gx� *�9��g�u������. ��B�e����_�� 0 b2��i_�B����38�4StJ�ښ�uH���(�r�����Hܵ���0t�����I��]���� �ftn��""� � �� ?'�����\+W���\L �-�-P(n@��[F"4?����pA�w��ni�C����s2r2�_0�D �4�� ﰬ�hk�4~���Kw��� �-���\�и�����i���D���1��>{ G��c;��=yX�����|�O�"i����3np*�)%��ظz+����> �<�ģ�7����x���h�C�����/P�=j��'%ඊ���檗X��F} e�_����;�{� �9{:��/sK���V���I�t-uT[�i�d�[ǡ���YßW��)�1f֭L��-8��E8>��N� ����"Ž��5��g�l�̣����Xa� &q���4T卵�@HlǍ��C��'?���Ƶ<�����u�E� ����]��l�Fٽu<���>�����c�{#��^�f�{S��鋫~�PUv ih��u}�&e����V�`5�zc!v}5h08��+)ݹ�U�# Bu��ܙ$%����8Ѻ�14��^ZEsk�m�v�b����_��*��P(q�$B6�|���v�-�b��B&�����MPz`?-�Gy]���Ѿ��5N��sp �L�aW�Ȏ��'J� k򌋈�ݖ���))#|>�^��P��ͅ�i: Z�^��i�$�L���^�`5���|��g�4�/�x�m;�B���oE �y�����f־�����5��!!�tN���/���:t(�!:%��� �G��s��T=�/�#�����I@��7"�??t�$)�@�-����뉋�zѵS(74��@�#���5L��:��Z��঑i������M�\@��#�>͙��AQ�������]z?SRY�arǎ&���nR���$ �� U���P(>Ɩ;��t���"��W�䥷���KfqӢ��۲��������W�������b�ә1����i05W����5`j=��r4�<������c_��U���RX8o���v�s�hl���w�`��J�f ��R"��J� �����֛g�X.'��b��l���������Ճ��, �boɉn2TJ����7u���s��.5B�����T��'���&ʪN㙾+��B�P|��]�a�$�m[L��+x~J&2&'��7�tx �tH����Gx��O��%���{CFN�� &��$�&ؾ����o&�v���K���#ے;Ѓ<���S���u ��������kr�L���τ2����z���rѣ%&1=�y9h�,۸��i \�Y��#=�����9M���^Bo��H!v�8 @J�<�p2� ����l=p�Ar�?h( R�������is�:8�ƚ ���}v:ʱS5��mo n똣��B�P|�,wvy���x�zey�yw��3K�Oo��}BD�p ��� ��G�����=���H��ݥ�H�sڱY�`�����WYW�@���+wNe��U�B���bvk ��R�^�ڱ��O� ���(��\��i��0x��0R�����[�ͿƲϽ���4M���ѱ��E&�y<��*�����E H���Avo�m!�� �G����H �W|��������Ig��;QPͦ�x��0���Q��)uW(Cq��2��G#����y.�O*~�%l\�!�`5��6���l#�&�ϻs�t��k0e��k��z ���Cpx!���yh�t�S�7w6�-�ˮ�7�����X��O�P(>�n����9s���F��̘� �5^����w.�rL�4�?�2����7����eey�{��̤�#?"��f�����><ѳ� �� �� �`ݮ����31Bv{G8=<��Nr���13�idZ�D��$}b{�Nz�%G���������+yne�t�IM�x���O�P(���N} ����Sz:Ĝ�l�����L��l��F%{l-=z���G>�%��G��#9!���t�OCl�ǁC�9p�.����]�P|�2��N�39;.�lA�݃�w��x��-��܌l�?M��sj��� �F��J�ߏ�_py�V�̛�|鶉L�>��BD�7v� �O����q���IC3�3;�u�Mר8��U�%m�3�^W�P(zʵ�����[m�O��� ��߄��&/�kb�W0 �&5-�A�)H �u58Z�<��#�k���u�#�#M��KG���S4֞�����k;X�Q�s]�Y��$�ĠPU~�KvS�/��* ��M�[5,.^��.� �\��5yn�ɹ J� ���6k��CM3��A ��#��G�PӢ�]�P(n,qW( �w�B�P(qW( �w�B�P�~�bIr�c��c��;���n��.�ԘB������ycG�"�u�B��h8{�=G*������a�Ja�ڕ�����|#���O߄eG0�4y�Oϱ�*��P(q�pfN�J���4}!q]�����<�25��&���l�&hq���lii��R,ǦW����h����P|2�ve�����2q�D�b4^x�9Vn�ñ�ZRz�������؅���Ƒ���޳�]��<�c�ZAv*e��2���f&q�xUMJ��O"ׯ�]@���:�b_I ���`�d���Z�¶1=S��f��}�68n$ ��9Yd���邌���Ϙ�٤���mˢO|����-u<�� �y���sɠĖ�IDAT2r2�_0�D �4�� ﰬ�腒xңO�`�|�����J$@Cpf�6���ݠ��'��\��yl�T��"�ƽ5e��O�h&�(��h��< ���//�.��N���wΞο|��ܒ?�"�qω��$F���:�- ���o�����]R�eYt[�U@�����cK�"�F֮�LiM3���=�ۚ�d�[ǡ���YßW��)�1f֭L��K��?=x3�>���5ذ�DZi񼶅.�������x�:��XDؑ�p�����t���'�y( e�_�J����Υw�dú�X��3������bƔJ��^�ޓ =��-p5���;o��tvo.��E�l�`; 7>�9}/ٗn�p����ь���0�]:�丘�x:6KL�vuּ�*�ʛ���|�Ω�>��ʝ`{|z�|lv�{��N�.HJ��3j`���b��-��������`����Ɛ���v?�u�/�.ڒ|v��PƻB���R$����%�ٵ{'�Z��FiB�����m�n�<��<�����9�F�q-���70t�s�t��;6�|W%=ߐ��s/���UM�E ���`d��[�s[��3�y�k���F ������1 Q�m�dy�)�_ZtM��/�"d�ABU�)��!:�ͣmw��F7�Q(��_�D�&���B0�N����C,_QȤ�98=�� J���(�k�ءC�7�W$��9��Y��g�4�/�X��:��5�2u|��s=��Cܬ���T�1�]vGv�U�Rj�څ,�B ��m���< ���"���� �Eih�`�{k9��"���o s���q�E0��<����7�����<�<):�����b;^7��xݜA��x4�>�~�a���< ��͵;P����5G��I�׺8f7�L���;���oB,@��g�fG�=�>��s �܂���cќ 8�����e�y��P(�r��9c;]Sx^$~�#_\$��c$4�4ְq_Eϖ6�䥷���KfqӢ��۲��������W��������e��lD\�Xr3�B��@cC3�������̘X�`�� �������0���0]���Q$d��ج��!��E=u��P(q�$��F�v��^[��%Ցm�fX�h�u^0H�Nw��#�/�>�34���`x�H��Uy����@�����O�6�ljb�~<�������gތ�K�Md���L=�s��l8~�UU����|��9�� ��np��0���m��w�@|N���ε��;)ACR\��WVo��Bm;�0���Ld4�ӂm�E��E?�Bq]smj�z�ϛɜ�#�-?���#L�:���n���vb�=��>���et��@{����N��ሯ�gv�i���m���r�aj���s;]y������� �KәS� # � ��� ��o.&\����("�gp��G3:�Dۮ=�MǠ~�ͮ)�y( e�_ ���uﱾh���#��Iy�����Ԇ$�=|p���'[u��5[��n׽�,�l�z�Kǵ(.�8�u�xb��OJ�P(LȲ�0/�U��]�zf�l4�P(J�/�%�����˼��`t�k%����ѶS(��6�5� ��\���5�CK��#��8�|�E.�v �B�ao~-|� �B���v�� �B��]�P(J� �B����e��k) %�W�74�YF���)p]J�ef��1�O� NXO>�5~�Յ]��) �� ���2n�x�g�0�淛^ �`��I1�`%'��\� \@ɺB�P��Ga���?CF磵s��� ���EJ�T�� ��+��=p�H՞���/�����.S� �vd��.�-�;�ȥ����wl��38�������f[��?��dQ�շkX�ύ\Cz�A����Τw� ��C|b cg3:�?q����y.~��%#-������58��:^Q(>I\�[�uv�=�J�Ex ;�|/��&9l�bҬ]�� l�iC���r/� ��G�\H{���,%xl/���u`DT?9}(���[�ؾ����u1�ه�0"3GFV< � O�����.�&!�����ф�l9�ӿ}�:'�.1c(O}��nY�vҹ{�0\�E^�a�����H�-f��T\ RJt�q� V�?u�)�˵so����Y�f ��o��*���F�8���?~�fC�Q(��~1t�����6&�^�������K�&�&:����ϲy��!�*�� 6 �&l!�?*�!}XI�G0�PPɓ��a¶��})%-�0a�k3��N����xꪏ�|�[�y�;��PHYE5�N�@Z�T[:a7�v�fJk�q�dN�n��Xa� &q���4T卵�@Hl�u<�����gDv/�T���+y�������`P��Et�ǡ�I��c8VV�tZ��λ��(��',��� q(J�/CKM ��M����59�"V> ��/�'ă�md�7��$����o��O��R��e��l=�1C�������ޣ=O�"%�?�Ρ���(.�Ò2�����_X�թ�n�p���_?ϻ{��|���tA���4�i��:���~�����4�-X\�|�e�bx����^gϱJv���/_݈.m�̛��ݨ�� \��_��mB����_�`k� �)Ub�B���:��VRq��9�-%5��k&���w>m���ꞗD�����#z���ڏ�9L�ͨa}�Of_� �Kh���§K�μ�'��)� !VȈ��K���V�Ld���"$�N�2A<���5R��j`��B��s4��Ǖٹ���߶ T����ђ��g�Q���B���rc!� �Y_R�.��+J�{������[���0�kK��N� \.,�s���Hʋa��� H�.E�⋢����Xpx!�~c��CLr*���������u��j�7\�c��F������������^ϓ�$�ott�&I�BZ��"�v�h�&d��*�]�P�~%�{r&ӖN�u�*�����^�|�����(9t����R�tZT�O߻w$$�s�Y�=ӆ"e;���iɑ�~?�++xe�J�[Y�.]rRS��a��j C�;v47|~0�M�pp��P��Q�Sa� ��#WnfK?3�q)Ҳ�:6>�&���t�Օ��������6�_:��1�z-��947��ڍ�q���I ����e�45� �'��E�ع��d�j>y���'3:3�Ǿp/���C ��p�\Mc�-x�u;�B�����u��/���C�M��aѽ�77k���b�f ����c�4 ��Liu�������D��+6���g�W0�i4�,�7��|�n�ϿN�8QQɤ��̙��:P��kT�ê��E\"���mt�����x���b�~��r�>�-[����a����H��n�_x��>������0������|�[����x���+���S8�*��y�Ƀ���̟lc[�oB�f���5��(�a[ ��nL�U�%��cXV:-�g)=�)�m9��`� ��'��L%1&݀���X�� ���;\[F�P�40�6WO�k\b��K�MNJ,��q��1���y;�W^(�G �zd~��Y)7�B����"!.^��.� �\��5yn�ɹ Jp ���6 ��CM3+Z�P(W�kfa@M�v�B����]�P(J� �B��]�P(J� �B��B�P(���nĞ��ѣ�o7rױ9[UΡ�A�UмB�P\��:̜2������!����� n_����gF�P(��_�;��x�7�pB�3��n�D���d������;�P(>�\�>w�v���{���]ބ��H��M�PˢO|5g�.�c�x�{g-o�.����� ���ԭ��g����3��#I}r��o���>dge-�R�1sd-^���z,�}�A|����A6:�f蟞ɘޭy��KbDF��3�u���T/�´�c�_䝲:�b�q�^<�t.�nd�] (��^��31�?Q�<�Bq���琝3�n�K�XɆuo�r�f̝����Ō)�,[���'{Võ<��ط��m���_������O/�����u��|�i�IisF lg�{�<{6~jK���[����w��8L�����ˊųj���^o-V}��F�o�;�9���3+��IstӇ�Xŏ��f|$U����y$��Dv��W�P|�|�>���<��dUe{�ן?���eo����<���fOu��<�y�գ~��Q�c'��!b��/ގ����?}5�`%ˋN]ۈ� |��GP�U�P(���H!0/{nhW,v"����l��!����)h�yxRtp����v: �&����7���%O���q��IR���-��h�w���(�L�# ��m��70�ˊ�.�����H���'w\�h����b<q�/]��I�o�2�~�qh��uT-��f#�2�ƒ�9 0u��������4�m������d��W��v�At�ǐ~Yd�x��M4�<������c_��U���RX8o���v��υ���0����W��{�t�>|���iӸs�drғh:w��Z��V�� �W�c�9C�p_���m�����$<ۦ�t5g�n��!.�79)�h�����N����{��e�=�i`��� ō ��#6>�E nb�� ʋ?��m�6$U̷B�P\��~Ǧw\,g�a���B�P|\{u5LΆm%� �BqC��B�P(��+ �B��B�P(��+ ō����EUH��$IEND�B`�Inquirer.js-3.3.0/assets/screenshots/confirm-prompt.png000066400000000000000000000206271315775736500233040ustar00rootroot00000000000000�PNG  IHDRw�} �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� #1���-IDATx��{TUם�?�<�����(���>Q��6j�h�iӤMۙ��#�vf:���Y3ʹ+Y�Y����iW�i��h���e|?" ��o_�"�^���sΞ?.*(/���]��Zr��w~������� ��H�����7I�l\��*jq���w�={���e�v��>���Ѽ�E�{�;p����L�B ���QH��E�1������#���}rw����P���_��8p�����.���1,*�[KOBHj�^�Y�� & ی���=Ć����%��٫��>���!I�����P��6X� H�~���p�� t�g� �m&��u�y�I��Sd�H_�4h4���ۦ � ��,q���X��9���K&��4<��f%U���Qx���̘d�P��7��c�*�nӸ�� ���L�0w�ѥĥ��ҏK�[�Ķͤ���v&�P��<��K�wOc��K�#?5��M�X��l*�`����Gf�����pj:��ͪ?����{��q��i<]ƿ�e��[������G0�v(U�uV��u��X}��@�SgL�܇Ӹ|`7��/� M��6�g��О��}��� ��U��D���-ț���cہ j|��_�c�V�e��]�=s���c@F�ecZ���w��nU����?�B�55�`��I6y9&?�O��Ǝ][)����#X���3�ŤW��2�S0�x��@bM���k*�#;Z�.�#�� B���.?18�~f6U%�yu��~��c�f�h�h�@=�w��RHKL�)0���`ID�eKKǏ��0� 2��EUC,��D��||�����bS\���3��}���ix���%'�JHgA�T������5Z�5K呂���+�VR�Ż뷑��ʘ�D�Z�̤C�����ex�ܯOt��* �Nv�+��(�8�SxP�F ���f&$H�3$�K�+�h�wA�)�3o��c�.~���D� ���|{�L�.�o�R�4sWk=�ʻk�d�5 f���i�=.\�z�<�4��3K,�� Յ�i�RP�T��@���߬��&�gY�����L� .5���B�-i���B�J�h&�%3a�R�Q�F� ������!�kv�1>�y�#�m,�t�l��1LLK"+eavZ�¶��@�h�ƄQ#�LJ`��Ga�z�$�$VWѯ?��Dy"9(�G�B�lHO�Ĵ$�uA����"P� �;�5 �JKC�����{[�k�n>Z��DR����k3c�,���9��e#��b�|��L���1k�������M$C&�2�w�i:�.W�7V�(���G��AO�N���sx�� Ӓ%���.�� �=CFB4� y2 x�&��'������T~�/��c7"���]��×�},*2��C#"b����CcR�DHa���s���R����.!L��$cl*���P��<ͥ�V�:�_���8,�m��f��kYw���'r�^za>;7S�P��:˲��]}��q3�w{��&��'f��&�AM�.^�h#(ɠA |e� �C"B%8�Ge��Μ�W�Mn�AHEP�u=o��Y��� ���wH��X�߲�������s��ر���{�����Xϒg^ ?-���kXYZ�NW��sy� ��7�e��37�:k>���Bu)��W�ñ�^����ɣQ�|�Fpk�dY��,M���H$+���62 A�2,yx?��;��\�� ��$7�'g��ʺ==h��Ƚ�k���A�W_�p�?�e�7}��\�>êw?`����ݺ�S�i��^V���-;yo�.����0 ,ّ���g�lѣ<=; ӒD��� ���E����#{\�Y��B�[<�6�\�yn�c���gBJl�� >�tI���9ǟW�c��=Rc�cK��:�暑�#@Ԅ),�M��|k6���M�ǩlTl ���x�]�=Rƚ [ٺ�� �b�=��z���/?I�/��GY�a��:�r Y�$N�o?��"�ٲ~��m���f���09�����u>�QD�����i����y���A?��H�;�C��`�NL+@n�tŒ6����9c1�z��=����DFbZ6AS%2��q\z�X3��c8���h=��u��e�1X�L����e^��kR�;&���n�T(�ݵ�kĎG�m2P�/w�x#m~�����U7��o&%�; �ʱ��{�4�F�;���7[Tر��d�D��<��T�@i1����42�NfM�IBٵ����=W�Y�j%�<��g�4W�ꊝ��jh�K���Nvb8�q��n5������OMg���|��Z�����%���]���G�{^F2l�r.A�o~�U%�@D��~hT��f<�p>�49^��76]�����J(�̛N�Rٰ�-6�m�o��Ƣ񃙗�ȺS �#� V�`�� t� ��Qz�m����]o$�|כ���r�9x����X�����}|e^O�.�%`q�U��ޏ5������UII�F�F�>{;U�ԩ����R�RҘ��INF"�sg�����T>0��������G�q�C'*\C�fZ��=q���*��`�e[�2�NO!h��ࣼ�И�}��>)�m��f !@7/����ұ�'�����:t��c1��D\�'��{3�|w�����Lzz&y�i�5`��E:'�~��j�d��`H�`8��w�n4Qa�_�ݞدj�{8_�EܰD<�ⶇd,��>�"�7Xr�������46����xi�ڛ�vs��+�_���P�Er\�] ��my��p�l�Iٞ��1K)��F�)���X��бYD �_�y�� t����$A �IlJ�rS{�^���†��e -������� N�g�Z��0Ɍ�~��_��K������R!g�\��y���i��n�������\C����.����B���YS������nM-��N� ɤ����}��zU����C�nF�n�՛�p�;�Ox�H���p��`��ϑ{\�ſ�M��? �p��Q-&g��s�ꗖ-Q}��5-U\:[�� ��4y�g�l�dO�).74` �S3�P8][׷R�����k���̶C��9�kU�_Z6��8�7��Fn���on��Zpㅣ��JV����S����'�'��b) �6�ľ �칊S�Y��a��3�r��C^�H��q������3�;���Ij͹x���}qe�&3�G�7@DX�(QgŇ;��33yd�R"v��\]�0������ϕ�N��Ki1n�C��,T�l�u�`g���Tu��5�H(�����6�^�wG�\|�����FЂ��Jh�;I���#��3s|,��C�_��J�l|��1�+�;l��w����򅚨�l�� E�6Q��kG�q2?��Q�Q�dќi��Me�!�.m��{�C���m ��$"�HlY��`�4����� ��Y�XP������Eh*�U����Y�yz�<�-�Eb���2��]�{���x\��e�`�4>31�7�i��⭭��dO�������� ��^g"ݍǥu�h.�|�MJO]�;�� �dN:&�׮d�)��I�v��������܂�i�%�fj�(j+O��oVFBrb�Kw��f���j��%3#{,M�*y������Ro:�����{� t���l�\�9���Cg:F�����5�&Nf��i<>;��NYu˾���{�� s�U���I�������GJ�j�h.���#]:�F�D��H�@l�2Y���6Y��B���϶X0�Q�T�x��nӠ�@�ۍ�m#إ��;�{�hj�m�\f���%Z���}B��ob�d������ر�ŷ���Fȉ,\�ž���������7��H_3�����w��Po]�f�v�viY` � C����J.�o,�}z�(�k�OQF'G6��Wsɰz_�B�����2��LrL8��p��4�wpf��=�?�y���7r 59}-��2 5�zcc����@K�ʫ�����%��q)��A��ZN_�y���`���������n�q��� �zh������|�/��u�]�eS0e�8��)�����A>���L�:��y�Õ�B}�[��]�g��dM \1���(��2ɮtr����ܲ����`Q�@�y�r֟��S����c�c��{��={O���� \�ڄ*��9��۷P^ߍf�m39wq�m�&���qD��@� 4 ���w�_L���WGE�=<-hj,[��ܴxL�����ON>^X����]�l\������.�{�)[�h�`P|���1����ۡ;�.mF%�16�c�H�x�4����/�C45��Tl�P�ޚ{K��ɛkV�c�(fdg�1*��>hQy�G��|6$&%b�]���16�R? �ߠב��T���ru?�3�]t�{��;p0�` �.|��NK]{�J9r��%0�]t�� �OV>�h�Z�����(�8p�ྂm�+Eܟ��y�����!��#�����O��ќU���������w ��(D�DtR~�c^�2������&*� v��8p��AM�8p���C�8p��!w8p�I��<׭����IEND�B`�Inquirer.js-3.3.0/assets/screenshots/expand-prompt-1.png000066400000000000000000000261151315775736500232620ustar00rootroot00000000000000�PNG  IHDRw/j�� �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� #1����IDATx��w|Uו���{�zA!�� Ht$��`0�ƀK��Nƙdf2�L�=/o�����s^�7/y�8N2N�8���b��b��"0�@�v�)��qH�p%$l���|��H����Z����k�%�̑8p����O?��E���BXX�EGZ8pp��!w8� �u���� �F��BR^UM�l56��lU���Q�['&8���?B�V5�)�#H ���]U@�Cc���g�80�M}M U���l% ���~� Rb#�x���``KP��dҙ>��,{����a��?�ŠZД;#��yI�g�%}4��;�l� �ڽ��|~�ץuY��*kj�P{��O����ayn6���…���+�eO���P�Ա&��lBC@H8}Ne݇U� M�e�<�����X�қ��s��ҭ��\�£�g�h�&'����e:y����}�R�Ӧ�eѤa m�Ew�Ɵ���V"?x|.>��O�t�U��;1l���叓�́-kYu��;��;PH��S�|R:��g��_6c���c�3 9�ǦuOo}�w���.�����~��~t����]��|0q�D�Ep�F�ѽ�t�A� A�`��E9Q^ۦ�C2���…�\�l���������p�?|m'�"`b��g�&�����;� ^�|�o�^*� ٴs7 ��'I�ecZE��p����})���*H�4�`�x ��� B��d����c�{��;wo�\� �R�eY̜>�L��x�����{��3l�:� ����ąH���҇B� =���3��kٱ���Bzb"�^�f_5g���3 �$�?ZGQU贷�g"A�i�v�B����ͤ��^^�}����u�mYO�w.˦���Y����l{���>�����z볁Me㦷8�+���ޞϾ�_�{���� W/���l�������w�lB������k ��x�ll����Txŧ�)QU��c��Dƥ�� I���U�y��O�����.>;zZ�w��*�e��e���c��{�tL���{Ys� ZB;��̞3%mk��FŒ��-N_�H����8 BS�6d�&�Y>��+�^wk�D����JNVxo����R�q�ت޲NP���벼�� �EaW.S�`u�)�޲�ޖ_�,TgϞ����}PU�� ���T΁�횱ۂ���p�*%���d�^ji�i���Ҏ����i�D�'#.�2i���BI����Z�9$���+4xo+�6u� ����<�_���_��e�W7����L%g�L6�V�P& �_5kv���.TM���T�@�ׇaӾ?����("�T*��������9��&��_tc��=k:�����U|����;�!���3 v�dg��d����km4��%�[8�ml=c����0����%������G���N��<��d��bI�_6����'����5����Ch}>?x�4�>2E�H���j��T��6��i�R���l2|h���P(*�HY�x?��}�;x,�u�r���l=Q�aqOpO.���B�[/���G��EF\4"$[J�!ь��&���(-�������E��F�w��>�)����&#&�y�AHEؾ�������+��/���~�kl=^ކ�x�!��GbJ?�K��6���5�Sg�kE�g�� �.����7�n��lA��`�|����$��lye����ܱT'�`X {��FCkb�61�|���D��~�� (���O�?r������3 2�@ ��n��ə��΃30�f�� �b� ���y�Y��J��<��͝7�"M�2o��J���J����j����=�X:.�%3r���}�Gl��+� 7=�=�V�*�� ��˝ã�F�~��w��[�_��7�3����y���Q��Ix�ޫ��K��nM?�E��P[~�ww��g�ILY���U6]��>��3�Bul�u���c��g�g�4Y�`�n�0�\�x�קқ6��Ǯt�+Uظm�0��K`XJVg2S�y櫏�R$%gO��t��aP\c����a,����ô�H�����G�Sm�=��~�e��Ax, }tG�":1����FZMly'%>���b��{�P�����U_SM9�nߍ-m�00>�aɱX�l�O�2����T��a�I [!,<�qq4�:S�&:< Ӳ�M��` ��u� kx��*�(��]LDu7�l�ƨ/�#){2I� ���=z�7�������|,[Px�(�������)4�7��w�|,���S|t�5� '�^���a�HdfV<_{�~�㷯�NǼQ�x����[[A�A&�j�y8�&{�d����q��у�����Lb�f��GT*�Z� �v1q�<�M�������j�n�œ���f;����.��o4�H�K/����/C�h��@vᵇ$d������?�����(����0s��a��-���ª+�'/�E."J��χg�w�t�Uo�B�6�?�OS)/�܅ۭ�Ҳ�n��v�;@v���N_�{f��Ƥ������ c����]�h� j��a����=����芟�K������z{"�>�s��g/͛�a�l~�M��Pc���œ�>l��u��Fs ����wv�����vv���@��>�1?�x=��k��/�)�wlF���j���e�g���EL\ 6*G �n�֗�������t6l؎lE���<�d� G�����@D���9jp�����-F�go��-�AW@İhJV��MgӺ�H��i�<�t�I��䥿�K�h�%vf�.�s{6kɿ�DƀPR !M.�\���q�dHJB�y�޶���ߍM �,j "6!�l�#��J�I���'z�.�'�-��~ ��LhL���� m�_~;�z�WJJp��c�E Yʎ��������scC-kv�>��Y��&): ���Wpnt�8Bn�l��g�q��Ow\&I����7������+1vP0�W���O޲���-����2 q0BH�mZ˙Z_��9�_D��U�T֐�&("J+�aW.�۱���f���l8��fM2!'[U�v�X�����&h[0x�DoP�x��|��1�q�����"A��8�⥶�B ��j��XJA퍲 W����O�� �bR_�t�v�|7ɯW�_4�-�I�s�3a,s&�eʰ$l�i��p��^�k�V��L�"�3{� ~����ѩY`X��`�%���7�����<���X��J�Ep� vS� �G��ؒ��b�u��`ӡ��Tžӗ��w��՝�x۳���%�����lk�/:���^ ��Q�3nPv�Y��u�����U��:F�w`��U~� �J�ɘ�h�^��Pȶ��0�����t"�5�l��m�n� ?-P���"�CI�x��%�^E��0�e<��k� ��w�U�…s���INMgˆLr�fظ�,��㭣E��� .��0bP�������m��[��#�$;+���sD��_����d��h��Ĥ�g�����m�<��~��_����z�=[ 1aE�k�AX����{�l����!�����?��ƫ�;�� oo��rL�3�ոt�>�� �5 ��h믶lw:W\�� Rǎ�cy�7t4�Ī)�ļSW�N@c���`��7kZ���1�l�B����ʡ����>e���Б�|�T٘�@授�~�ɀ��8�Ì ����O�{����H�^c����K�zo�[�UZ���J��J�� �B26+�[��:���|`j2x �MbRsX<.�M7k�}(� (n.��"22�/��n����L��߽�N�6a(�<��腫Dh2��44�*G�|=����Q�T�X�̙<]V������Fo��D�� ~�� N��c)����҈��ٯ.f���4*�))L�����.��@�DFLJ��Wd���(�h����(lټ [W�g�-?H�̑�K�P1ض�(FGS;)IO�B �Ǭ�������Pؽs7sF��N������B�]d$$���__�q=X]\�W� K�fEn#�5>b�d\���w ��ȯұ�՛�f�ƭ|�9�}`9!�vs�� (8�����<~��p�+j,�Θ��a1(.MW�����ݦ��>Jxc��]���[�ȝ8 ����=�c�K� O��v�4Bf����C�='�K�/`(3!�����b���Ó��m����_ج-ȧҜC���_ẔR���xk�!$�F�� O=�!%7��|���7��{_��!<>��?�:!�ų'b�l��c�zH�.7>��7��bXp��a���Dz�� �؆��%!!w�� ~���(��'".��V<�7[�}S��iYQ�\���*�.\!,&���tv:&;֬� 5׽3�ˍG�ډ'��ƥ�������[zJ����5F���铸of!�h��ǥ1,s �O��1i����j�|�Ҫ�#b�o�4N��ЌD�=r�˯�܎�J���,_0�Y��k�歷�H~}@���VrPoU�N��� t&�Nc��9�7+��`����͂lBEbzE]�`�T�.�/��3��l�%�?s�H^|�]P5��05{(�eE<��"Â��g[̻�^���x�(����n�W����"{�"&$�{f�Ң��qL͌�%�yug�m�+:y�*ۅ����Gu���ud��,7��;?`�s� �GcFZ�| �Ί�C��m_ �����I k������m�M�����G#%�UWp�|)�uԲ �"�_��p��E��gz�-'���sr����͊�|��k;7�ؼ~z��|u����ã�mT��R��� U &d�$� ���R�|Vώ����z��r���$����tEPWU�Ų�]� �0&oe y�5]���b��%,Ϻw��Gn Ù$&�� Bՠ��� ���+7�Ӿ[�S�<�З��Z^Y�'���6zs�Z��0S�6"�T7�I�/���j/BH�ᯫ���ʈ�x�k�r���+�r��6Zn��n�%��N����@�ٲ��ܩ�X���5�]�T��p3��>�}�L^_�;3u�0��&�vw�ͶILN�W[α��| ����L��+�-�[2ћ��C>���`�l�*8pp��T��#�#�g�2F#-/�Ξa��#4�w�����叓�́-kYu���9��S��]8��=���<�ԣ���* �#b�7�~b.���� ,��P�]\�/����o�z� ]�垻��/=x?�ar��V^���C��We@T �ML��μ�����nͫ��桼��to��i�=.\�����s��������A�I ����7�l�������b3nl�����ױ�jY���Į�?�y� Ƥ'��.)��@�h����I�H�����ly��2����Z����k��ܪ�k0 t�BWj�"�֧z�>g���H���`o'?8� vw����%F`������Ѵ���TZs��Nb���}��.)�+��{�7�!� �����a���.o, 8K�����wm�q�?q(�e!�� �������*?�w_܀����%��|�7��6���=Cݑm�|sޭ���V�L���w�X����u+�z�m�ӈ�H2�!1�R��fԐT4���� kZ�`8p�9����hR-d�Ϟ&s�PD���)�EhhR(����2iՠ�և� a�!lܹoS#�Ǎi{s��b޸ L���[n����^�Ml۴�W�n���f��{�xc@R���1r ǥS[r��[��� ��!�#Pl��㨯o�9� �!� /�+���>h ��b���9W���k�\ kX+�ò��1-IDj_�o-����J�^6��:p���� ����Js�dF.�B��q�,ή�����<�@� �ix�Ĉ}�G��{�Qn��n�>B���G04d�� �;�,.>D�d��Ε����[�!t ܓ��( �Ԑ�I��#upRl/dd%SS����U�m�i}���}��Q��Сd�杠��6�/�O���>�ߒKXPZ���w��8���;�.��g���&if.#L꘼-���vw�-�$���p� K�Ә3q$������cA��{��/��A�z�x�߾��?�����>܋QS �F��+H+�ȸH��Ds�l>���06}g�6���z�Z���i}ݸ{�����E D�#�Mu�_iO�=�>O�~ nA��]n�N�#�>~0i�/$s��������A�^�[x ��鞶�6����(U� \��w�& !el6a[�6��PI���i��.K}k2�,K}�� x�%e^��?���WU#��2�(M���ݸ�0(%���R���s� ���6��ӵ��ׁ�Gr7 � f��Y$d�"����!�����z�yZ�KnW��+G!� q�;r�w��g`�@�MT7�����ǯ2qH3G%�6Chl�w��gړ,�]*�R�P`�ȡX�T\�`�ɋĎM$wl"��웿'���8���i��ʰE�HH���kd]k�\Iٍr����IDN��}T�ňq��4�)8M��&+:ȴ���L���A�\dA3�Z�%K��0����R_�|  ��9�E`���t]GV���Ө�P����t�T�/�ӛ���oi q��5�rj���v/�ׁw�K���2fn:RQړ�5o:�r݁y�]�/1%c Oq ݰWt _��������ċ�Oq�|&�QA��Ώ� v�~��[���:�X����E�T�Ν�^��-, ���ޙ_)IO�B �Ǭ������W]\�W� K�fEn#�5>b�d\���w�A8ppWyP������]�u�����n���<��aqq<�� ��P�࣍�W�mKL�����3j�t0��z��]f'���Z0�I�Ә,Z.�7��*K�D�v����BAE#�������q�|53�b��j g@��V���qi ���L���Ï i�a�˯��η�N'{�T�(���=���nt���0@�nMԁ��. II���lN�9G�Ov�q^�=Rt��/�,�ײ��*h]ĥM��]7��k�k�z0����|��[[�β�cBFJ���()��g���~��:p��sH�8p��3 ��X8p�݁8����rw����;p�����8p����|p��#��IEND�B`�Inquirer.js-3.3.0/assets/screenshots/expand-prompt-2.png000066400000000000000000000616001315775736500232610ustar00rootroot00000000000000�PNG  IHDRw�ln� �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� "F��} IDATx��yt��y����23������ 0� 6c��%vgk�o���ӦI�6I�u�MO���8��4q�8���^0f1�*�EHBIhC�4�y���cHB�!a���9:f޹�Ͻ���}���O�88888|�P88888�������Q�Z�ƈ�do����f��ǘ`�Gj��W�n��n�:��4�h���점6�v�ߪ�M�� �'�����L� ��Ct׵��d&GP~�=P0 �%�Zp2�>� �,QoÅa3:)���VД�#���$�7�����~:��M7B] ��~��ui�L?)"�Ɩ,�����W����� �D�.T�7_�9���DEJ�N3��mB����i4u�4 y��G�{�.%.����%����kTt2K�ĸ�Tۢ����'O���vx;�i0o��,��B"Ew�Ư���V:����������:��� �аm���>Eav<�7���C7ئ%�&(��;PH��s����Z���o�݈��U{j̠���Z� [�-��A�L��]�%���P�7�a��Y,�1��0��#{��{�0a" �+�9Q�ګ�cs�I�qs��i�7v����$~��G�(?�?�a;�A ѯ�O�}���J��_x`�i|�_�c�i��`��]8��{>N�ݲlLˢ������/�/EU)k��� �f�ڂ�zAd�M�4�;����<4H����R�Bv�`Y ��'�:��I��3_�2)MR�/�P$(+/��ה����/�1£���=S0l���f��*P�'���� �F3M�O���^���o 4�w���yq�F�6� `y|Ե�ST֯}��[\Է�7<(i������s[��l��]��yd� ����_m;su��n}'g[��6l���ְG8;}��}+�!��5��+� �.�/���H���+�vm���Ļy�0�?��ϊ�wa6�n��'n}�D��E�ٽo?��������̛�ӭM�����ɿv�p@�����ps�����2x,�{����[\8�����۵cX]�.��-X�$2.���(�mq�l9]�O� ���T� yY�h���%��Ӿ"��(������\/E���(�:5l�j�/�������~RSF��a4�\�����RCպ�Z~!�L�ݻ7���@UA��" �>��s��v��ۂ�1�p�*��*����uj�$z�|�y��ϧi�Dnj,�e������:l�58�:��f᭫�\���is/ � ]����> �O�x�����W�f����_�K��q� �f��8 ��*xb|�E�H�ɮf��w4��6�s��%�i`u���F�U ����u���ç��<���_�,�Y�*�O4���'<�gV�Ϙ�H�n� E������Nb�b�MM@D$bK�;"��c��D��j��h�(�!�� �hp��U�A�G�rN��N�������KE��^�S��+z�X���{�v���;������{i��?��i��2��%�Q;���-�)����C!�Zp�1ե�������-�h���E����?����q�n:y .+�F����ž���S�K�Ĵ��r!1z@�P���?8ԭ�$qqi|��%�Ć!$~�yY9e�/����4���~My� ���KWp_A�%���5ۯE�D�ߧ=7��K��l^].o[kv��٬Z0���;��aW�=HH���� �%x�����ktZi��"��j����� �#<�֟�O���'�����Y�~���p�t�}Xv�=~�hcӎ"FO�Ƙ�h��ǯ���d���$� ��r%�ԃ�.O�7lXÇGkB����[v� ��� &d�` $35���$.ER}�[O�C�=�JMcj� H�&L�9yH)1L���\>�;��(|j�&~��t�!��0�ǂ��P�$����H�˦�S�<��.�ο��տd_�?���-��i�.li��i�L�HƲe/��9s�M������;�a+DE�0#7��"�6��ј��m�D�k0H�3/�i�Tz���kLDu�?���ɟ[��;m��^��#5�b��$f�'�`ق��G8X�D\�H�M̤˾�ǰ�d���*�ljKO��l=jD��w���;�����X���W�Xɿ����3g�tr:��:~��fP�(�.5��ݧ=Dzjf>���t���]y��q$�O��vҨ跿r�����W}(R��kN����� �kX�#�(H��7�_����*�j��7�a�9|��Z$�4T݅�VͿ��M:pS��_DlDX�<�u^�u4)x���xky����* ��� �g�}�~@R0=��̔;ߒ pc�Tr��}ea����є��9����3��>w�L�Μ���Rt%иk�B�T�\~Cm�[��9X �ǖ���T6�������n�bŝ̟0�}UC*������/[�����H��$�; ���S�8p���a�>k��x���mѼ�X��`n[��HLM�F�ȹ��Z��u%�<=��Y�M���"{(v�6O�Z�a¡�kx��TAL������p��Y���iR\���l: �"��s�z�7� ��ed�gɎ�癇�;:[���w�C��j�1.}��l6Pz��ܔH�Fzh��ns�n����������;�u!A�\ ,eIΈDLKRz�h�b�Vr%'i����Hͦ�{ㄦ�����ttOL�B �p�*���Z�X�49[]3�+����4�����=��'.9j;�����$&9!���QZU3H�: �C�.��T�2Tl����l�*��c�����_~#��Z�5�ո��2m�r�'ղ��qv+�S��2wv��v��@ v��m3:>����0nt��?Da�"|��l+o�������h���7����{�+G1mT8���k��5�e7���|�Ϟ$%} BH�nXGq��3���sTB������4����&,&jos���d��U�/��̶{����I�M ��QQ\���\��굈v�xt �v�u�r�ռ�:.�a+���jBŤ����~����n�Z?A�R"�ƶ�1�����m� ��j����;���B"c�Xt��-������ݖc76����+�- HU�ݶ��3����S"�lIMi9���˔�]F��Q(�����.]�5��k+y��{���%#���x��g����$�X��`[�ǯ�UI�~ ���9�X��4�b�X���gOy��D��E������!��.C�������ؖBLJ4Twݔw~��7�x-�ݬ�����EC� ��A�8{����a2�r�c�D��3a�|jk��#�c#��oa�R��|� �?ز��iR����c�9&�x�Ws�ɛ��u��M̚���L[�6M�yj?xᷴ����j{�,F&F!������7�k)x�#�MG՛sK�K���a��k���m�vow*��E�YӦ�|��O7�ab��Smެ� nd���w��G 'pd�����䪆vŢ���,\~��g��C���;�a����0:����_Z\7�7 ����N�GJhkn�dY-���2��I 3>EU(.+�'�����>�������@Y�Vt������sC���M��=���ݲ ��gLR �a�PWK}g��$���9]�4T�R�w�}8�7�[��9�z�` �g�DWmM��׵�p� �;����X�᪖kw|i1g�,�<���-;�;z��lAzZ�aa�TWT���7v`&��]ןb��cO3id�Zy��w9Q�h�}�����l#Mu3~t ��5�7��@��@Z=�[�L�H���"%�m] \��7�R2�5�li�)���4�z��Pt�c�A0�]ڌ��a\z?�Lb�?qp�m����G� -���3�]*�T8��F*pݞe�L^{� ���܂|�Ǥ121�Uo6�g��om���l�����nM��Ҕ��o���\ ��kq�v�O;�EA�L�������ho�d�����rw��|v`��~�����[_�[6��+w���%��pf�C4�rD���1�8���Y9"ppppp��������܃E��j7|t�*�������Q�$36,�i��bn ���D��F'������8���ԙb��~�� ݩc��|�) ��ٿi��@420�)��] �$�}�cυ�x�>T�fT��O�̘�����|�cG�w_z���h�v<� ����p| ;����>�J���̔(ʊ�S\��� ���b��g���#�r������#�+��`|6�)#�6q�|s���o���>I� �7���7��� �'��@�u��5-��� gN���"�η x,=<*�� r�h����u�rwp�2�������L����o�G4qE�h②g�3j,������l<�}7���yw.�fƴ<0��A���K���2=cSs2H��տ�m����KM՘4f43�HЕ�"�������{����/]Vu��.��@�-tZ:��������(����-����m��V�œxvox��W�R3 �伉�ܴ�7�����&.��>Ӕ�;^ �+E�(/�Ѻ���ьQ;���� 3V��߾��*o�$l�w��g��?�恊���_�f_�c3�Ie�qX����b��ˏ��??���$�x�=������Waԗ�?[����m��𣍇���˛����w��cu+uE�����D�ة1�1�& "�����Yh"��j��h�^��`�����i��������|̘7�0��] ����4��v��_�]���&n���E�DF�!�‰�>�S���~�T��������y;�g���7.����4Z���V�KQ��eˆ���n�^����ef����BJ��>b&��}3rh�.��ME $�i�⥪��b��A{��(r=D�&|�n�"���Y��e�l�š�j�~�U� @�7a �W,ᑅS0-ILV.��)���-�}��`�����i�܁��3�(dJZ,�d���j2&N$N��>z�Z��h���#v߯hk�!�ܸ��):D����Ld\�Nw���6�,ʋ҆kQ���Ss����� "G�����DQ8[���X2T?Yc��B`� 7/���(�\lj���Pa����k� ?3�_�9����3��>w�L�Μ������Ăڦ��.�������R�h.�ݶ��O.�΅w���W��$wL����l9pt`1�h����7,�_(��y�@ � ưx�$No9�Ţ;��.ظ�h�r�AD���5�|��@Dv+�~���4�Ƌ�V"����g�s�L)��e2-ggΘ ,.^h�g@�� �.�No''+;�IG0�m�V�\]�(���çI��'(�PH~rK �YwVaƨp��3�3@WT҃�&.0|]�$J���ʶIJ�@Q,��A�ط��g�9���ME�gO"#ZK�Q�!@ePQ��K���A�غ�P���P�T� ���ӈ�$�څ{T&�2�Ȩ�E��)iW�Dz7�_\Dy>e���;�w3���9o&Q혦`��#�P� >��PhmkBa4G�����+֭�ĈH�*�4wu+n_-��_d��8NN�5a&��x�+��`��_c���V�3&��¤�l{OV������>ڇ�W˩Ex�k\�#�x�`�����8^�ii<��U�K�gR�L�Z���5��8��_�Yu�S�Zx �w���h��޻T��>�3�(�C�i<��_��yB���LC� *ϔ��RWRB��@(T\l����>���i��K��rsU%>E'*��Յ�L�ò����� �~�������T�@��"�l�%ض����⡈&�h�_�� ^��#ë́��q��Π���gST<.� �'r����;5�w�r��O�lEE�`�\]���f�����\^�[���)vT�z����Gy~��wy G4q����cH��lN�����n�� D��KQ�U�k��M��Jv]b/}�3�a��]����f�kD�DŽ�̑�¦���:�uut������S��}��摉#y��������_R��畷I4q�ۅ��-�S��w��ى�R����w޾Z��mM�������M����"ޣ����ޣ�9Y�9�¾ ��;8888�����k&;Q�>������(wG��$)"�4z�� .�_7?%�]�%���}"H�N����Z�{["�dXÔ|w�4���7@��`���rklM�i|�_�c�i��`��]8�t�W�Jb��YRX@nj��q�L1�m?�W�?��i��|�) ��ٿi��@420�)�ͽ��z��+��s_#���o���9Y��u��� IDATZ�$~��G�(?�?�a��_����?>}7~#0`+���/���֠��}�̡헷��Y������KK��G��K� n�2���7��S�f�J��D�ϸ����r\�O�/��Bt]�䈄L���/��7����W`���a����غ< tu�S|����b�[��mPTu���. u��5,wvf���Ħf�W��#3o&O�6���Џ��M>�� ,â��f~�� pG�W_x���LŚO�����_�{���o7��4M��q� ��3�!o��u������ڍ m >����z�q� q��y���Obd$�q�$�*�m���F�t����߼��� �fld�Y���h���7O�[��ϻ�p)63������ ৳��w�|�l���Ԝ �uq�om;p��i���T�IcF31#�] T>_`�R�>����%�\/�K�m�+����⺣f���"H%lC^f:��S���2���ADd,Ss2�4f�I�(���L"�㙚����QxD?3A�� ��Z�.9_����?���`t\4��Ư�^��r��1�>,CYo�tH��^�|��%1D7 ��.m�r��ʅ�D"+!@APx?���U�����5�O�ЌlV-���� !��dB�LSr�x)x�����F�nb�G3F����~��X�W�{����|Ǽ{x�p<�7��7T�m�;q_X:�D Q���xmO�e�1z�X���{(۱����r�8,�Bvm1���G�����U�o��J�h~���0�K�۟�[��o}��C[�����O���`i|�;����-�wֿ�� �$Cnj""[J��L��&M������n9Y�`齀�&�#���'� <����/�J���O ���C=��1��b1e����G����W��z���y���(�I’ �D6���u'j�ԧ����h��G�� ����o��$..�/<����0$���7o�>�i q�e�/����4���~My� ���KWp_A�%���5ۉ�� ��2�{Lb�xr ��.*N��[�z��4��� �:��5Ǎ'�6Cj<��qH�p��չ��Ac�)�b#x�>|�N�1�J� ���٘F �/ >}_��Ezٲa#���D��f��{���$]~1���9�V����"ô@�RUߎ �A�m�nj��݋?v� "R>N7\ ���'���-;xg�.�T���{�R'͛0��+����)��$&+��ܿ��V�獾�t�� f� �]j�=~�hc���6t`鱬���m�Sހ�u眹�&E�\{�7ֿ�+k7�v�Ξ����g�y����g��Z�߿���7��/5�,{���q�L/��>Z�~��3�A�!�����ןYE|T���x{�G�i� �A���nC\o�N�g��2�>��+��}$dNc��t|mu���͠r��5,w��ӫc�ph��(�U��g��1��H �^�"7%���k��k�4���}U嵵��qn��n��s�t�s&2.b��D@M�J�Ei���cK�`X*�Z�����-���Xq'�'Ld_���@�tj��7wA�\R�n) gkZ�K��'kLRl��e������M��2>`z�k���$�#��L�W.G痢� "*���3��3'x���;ڡ������4��^�>�~�1Xwa�U�o�z�\��������fwP��Dw��P9}���C���c�r����y��c����/���r�T������p�>xa-��刍 ��J9��߮�?����� M��-�f��@hL���9y7W��%���7Ug��w��Y�c�y�eĎ��&��ݟ�.����-��ݩٌ�V�ګxc_ �C�L�JMc 9�n�bb��1hKQs��Y��"��y�@ � ưx�$No9�Ţ;��.ظ�h`G�6����"21�E�J�U����"����в����� �������Z�T/^DZ�Ħƒ���3���ɴ�Q�9c���x�p]?=%x ������Nb��Lo�U5W+�A�wH�{����/^]OGw�M�B �J� ����j\SS�6o9��j�v�8��ө���B�3"Ӓ�<ڭػ;_�I��y��$3R��4�]��w`���9��v��yF1mT8���k����K�̅͡�77���|�Ϟ$%} BH�nXGq����P��)�X����\W*ҔvP�I�>9+�mn��H�t�U��I (�ESC;�����2������IdDBk�1�;��hG�HlKc���{ ݶl�W���K��sww�c�C�����6vq���S�p��dTfU�_3%� ��H���kv�(�rk��\�yٲ�؆�Ԑ�� �O���|fi!��I,�k˖�E��m�n˱��wEQAg_���k�����k�����9�r��]'��Q(����������}rc��&2��fz��{���%#��7�?n�n�;ٖ=KoR���q�������(�"�u�ПZۚP�đ��?t��u�%1"R�J/�]݊�Wˮ��56����qM��!4��{����t��o>�pkW��*%q Et�����I�0i8��ޓ$OI�t|���}3 ��C���S�� �j�={����0Y9�1q"��ә0c>���f?!�՞A��=�R�,��p !�t"�r ��C�o��_L�;��轎�7-oPgPnH�T��P֛$1k&��S0m�4y�U�����j�V�a��*lDVF`;�m��5�3��;:�� �44�"G*C۶v�x)R׈�O���M�b�)`������Ҹ��|x�.��^̔DK9��u��^�\������Ɂ0s����D���?�b>��#��)�k��-Cݭ�t�~Xo�"�e+"�ue!Y�+v���{�i���r�vs��<����_�ۇ*-2��C0�%U�h� k�<��r�M7�ab��Sm�PoC,��o����GQa��p�~���9|v����1���f� ��\�q<��l,!�ŋ?�D�C���G�����1�������D����%�{=ܙ?�����axw�[o>�/?� !%6��̫P��[|�ϟ" �������WV4֯��/��T�yb5O.��*{����}}*��潇� s������z��c���~:� �����?�6��]�a8��n��Z�T�5t���@�\~��5ƅ[8�J��b��ǥ1a�D�?�{�fF�^y�隭��̙ˣ�s׬|������)q��J��x��ƥ�v���h�5˫(T��"2!�� ��Ȋ���o�ɑԖe�������^����G���{xh�ttL��}�϶�\�!�s��-��y$/��.�Q#2�[0�κJ���{�F��[C�4MãkL�:�������Ӊ0��d�}�zV��՛�Y��>���,?��������W������1�R� m�i8#1uKLS݌�B{} ��>�&�>#��r�}�X��¹��7 l~�6T�݀_����cH��lN�����n�왧�j�����ښ)�k s�BO����}��2P�B &�f�D6 յ���>�� �;��p���|�e�:��i|e�^y- lAzZ�aa�TWT���!�4��Έ�2��QT��r|�O� �C)� �[(�*3��j�HImBW�)� �d����* �>p��s�c(��0�f4��~u�Ԫ��i����[F��F��?����4]�|��-�/ntn�wppp��|�AcCzF:����8����i3G�;888 �[�r��%^b0�<�[�r��������aHp�rwppppp������çI�K��]�D"%�1�s"������y� =�o��3�,}�׫<��Ĉ�{�L��&6)�ؤ�T�x������YP�SY�ç�9�{?�L����5t�O�2N����� ���|\�q�_ZHjnXfg�K9�����]*��Ƿq�����}���ni��O�>a�L�ʟ1&/��|��]e�a��^����� \%t7�~�CΝ7B����Q�X��d�ne���X�#�Ɠ��ɔ/�Q>b��vZ��G���O`� ����V���Qde'R�殀rGb�n��W~�`uE`�5��ً�_0����M{���3�w��x����Q���B��}�o�IXz6���S�2��"�6��~�2�{�l�A�����î��}�$.k$�O�^zE��o���u�[��/2 r�O�V���%j��������^�w��988�z�ঽ���I\R,�p�~���t�*���W� u� �c�E�&fD4Bשظ�܁�Qa�.\�N�@$�ԱcH�N��~��3 ��I���ad^&zߨ�����}��]���)\O~��j[�����vZ�Nx� �l��B�g�> ;��>���$<1��Ϭ$*!��J����i�Tsx�1��Ǥ�s��!^w�(�6v����=Լ�!� |����1���/�C�v>�{��Ͽ�����tQ���H��6 maS��k�_��?�6ꅣ��o!��x��O`������²�|��]����!(� �ץq�}�􃐠���K�9X�G��$�C�]�k0b�8]E�*M�%���?�����U�zt*���$Ҳh=q���kP���pפ�$T���ɋ'1y"�r��p�U�9�n ������Y��xy=u���Z톚�⯎+��7s �qLZP������/�ˆQatՔs���(�)Lyx>cV?���%��T�|����8�m1b�(|�����$�[ԋQ���������4�S�6�b��M�ش��nzX���=B����خ$f|���2?��� �9�O�r7}L|r�0�����x4�@����dʵk��p�K��(DŽSq>�������K7 ?�%v���U�����[�e������<�~� >�"��ǒ�.#�; �k�dFeE ����W0����f?w}a!9+��T�+\<�L��8�5 �Ƃ"��I�r�6F� �^~�m� HF͍$ulZ��\z�ר�`�_>��q�/lB�B[��Оspp�e^�{�ҳ"QeEk���EUh�o�F�� ��B�������"�$q�4����] �j��go���فe��렓c��I��mJ�w�t] �-h;v��"�S��H:k됖FXz"�� 4? :��� ,.�Ί�7G~��D�TYMCY-����*j˪�-;Og��s�N��I���WQ�����`��K��}�4��́�ϱ5���� ��"=�̼N����hj�23�׶"ES�P4@����v�>�:,.t�B{C BJ�'�A������ac���5Qߢ��9888�}ؔ{�)�FO�H�s2�7�e� ����v��T�5װ���PU��=Cp]'ڹ�-@� �zoR�\x"5�> 4V� ���ؘt����� ˊdL�̋ �B�ݐ��>\t��P���>����K��L�*��U6wt ��QGu�o/�B\����e��Bf)��� (� �Ι�f�%�)3&���CE��b ��rAc ]: �Ϡ���鬨 )\֍������Ͱ.�v���\������TWdN�hj����h��`�Ϧy�!,O���4���9�w����6\� �?�K�T,����W�|�|�2�Y��g9�a"<��+ �A�["]*��h�D� ������v�$>� MX4�6�4�Z~�&i�$��L��:J�� >^����c�_E�d�O�UÝ�C֜�������o��_�gi1����)�J����a��IR�Δ'`�_~��O,#,�MC�vo�r��v����[P��ܨ��)z��>]�;u4S�x�)+�DŠ�_S|�)��XӎAU��@�]~�O5����z�~�姪�G'uJ�- ��q�ܯ`����n�߳d�?���p�qs�� �cGa65P_�.���I�KWX���{�&��iHJ~�"�J[�N���� �G$"�]]4�*��k��b������D;�?���DBr$� ���`��o�Q�]�+C�a�e��l��wy�c�^OP�y�R�Q�z��`�spp�*��a���#$e�#���IN��Nmpn�wppp�� Z6��fb6�q��1����P�����p[[��!��_�ڟ����'�rp���pppp"LJ�������������iV�pT�Ӿ����|t$�[�[cAէ�o~�駱�� �wq�\Shї�˜ ���v�*�}�I����_����}u���/��E)jHw�8888���f�~�G�.�'.-��}�/-+�Z2qB>K���}K����:X������ �|�k_�� '8��>��]��E�y��_���$3o&O�˾1�gL��-%��0!?�֚6in� W�s�����vR�>?� �}��w�k:� U��o�BQ��w36���An�!H�i٣���k�K�ycҙ4*��Y�e�Ԝ �d��#��VҶ����HM՘4f43�H��/�pNm988 ��8��g�/����4���~My� ���KWp_A�%���5ۯ����VǚݧyhF6�L�����ZɄ�c���8UN��,b�ǒ �q��e_����i<��N�m!��� g����i�V��y���(�I’ �D6���u'j.�/z�X���{(۱����r�8,�Bvm1�~y31��& "�����Yh"��j��h�:�����ִ�ϝ����ex}�'Vi�HȜ��������ћ��W�B����H]#q�x��AD�Lƍ���o���ư�76��a 6�����m惏��3%Z�hVϟp �~t5�q�֟��o��� {�K�9�bi���BJ��>b&��}3rh�.��ME $�i���M���Kxd�LK���g�_�c+��F;-����ֵ�Qu6���i�%;&�gZF��\la�������f���M�$k����We4S3c�e'ζ#��1�1�3����z�_� ��u�����?��ݜj��s���N1*���pl���[�\n���6?��.��/�E��eG���Ԝ)�'o��<�����"8rx?-�gQ)|ԝ9��E��6�ڦ�e:88ܺ�;nx��7񣐒>���ݰ�����VTj[��",&f.�,ܶI�b:57GN��� ����}|��b��߯ǫ�AB����t�R��HĴ$g�V��J��$͖���H���|�Y������V��h�E����d��.�!��6J�j8UYé� 4uN�tpp�ŕ;`z��{�B�nU,NT4cz��: ����m1>k,�T8^�Hfr�f�>CI`Jf�u��4�z�Bl�K#EQAg�`�G��B ��{����,�K@�������B�7^:� n/�L��J̚���L[�6M�yj?xᷴ���h���ypUי��{�ӾK�@Hh�$B��1^ pc;[O:�TW�ڮN:N�{:�*g��餺+��d�Ne&w qLlc�b�1��AH���Ђ���w�3<���=!@��UQ*==���w���|���9LN�Fh��ni�榀�YR����8��� 3�8�x��ъaŲ3�R�v�|� 4 ו�$�j����1�����^K u��$�Bq?G�ވx�۸GH~���)k��Ңx�/��yt�Nf��n�r�� � �Y�kfs[��ö�w�������]�̼�a[�T�l\Q�������8�Є� 2��&���OZg�&�", �IDATV�8�4ڡ�2�E"#�[4�T�!(�q��j|�6 ���7��Ѩ��/�����8��,��U#��bݪEئK}�I,obJ��Ӳ�\��e�=U;H���\�OD�d 5>�� �c&R2����K�04�7��NY WΗs��Bf�F��ןd���ha lXU��i��u�������z��Atv!OwS�a��<��ɋ[���� ���o��f�d%F�]s�׏��������a�^ W�e��aE:�C�"Jr��^~�Aih��l��9YDFT����0)=ۆOә3#4A��GD\ �[Q��V."���L�q~��{p��#�˖-[(�n!:i2��>ʦU�0�ٿ�uޫ��� \�̾|���mۇ�KJ���ì\���ӥ,S�P���̞e�+Aׇ���[��xr�8���KX�����*;k;C��ir�kl���@ D���[�k$�D� ���lM���{�&26���4������r����=�h^� 9�1�KKcMG�� �8v�AG����k�NKE 1<�����;��ԉ� �B1 �Ǒ�.���a^nᳲ v)��֔cW(�{:r�@*Eh`�W �⾈��^� �B1F�ćB�P(�P( �� �Bq�:w��F I���c[`��OK��k����_�}�F>S��{�Ym����6��t���r{��?x�Y����������_���}�0ۤ������K�~�^�Ű� �����pa,/�������UAWw�I���_Y�i�f���/9�<>΀ Y>�f��/S�����o������l%�6h�;��U������ƺ�*r=��P�v�|���f�S�xr���ㅣ>@+:.�'�.d�CY�7d�[�����8?�ȧ������>}��^\4�g�tb�� �Bh�^��ώ�L���g��_Ϻ#�q������ƶ�*r��x�c�|t�q3���� c�|�r�����˧��6R��g� ���ͼ�}H���gmB��Z��*��a��-|��Ks�}��麎/̋7�W�����Ƹ�*r;\���FAڄ��e�X�A{K?��h� �x5ӣ2 [��d��b�����&Є��u,�W0sZSn�1�A�X��`h�q�&G)��Qq��Π`�����,�q�:�$)*���� �����`� �MTLs�ә�9�0a���P���M� \� ��f�2D;P<@���61�s��F.�bo/��k��#E��ȶ�*�T�ņ���ћ�>\n>����/�kk惐$�&8�o'[U����Os��(�r���7.F�Rh<�R�O^�A�0�^o�=���������w�ƞ�k�l �_~���8l�$�����k:�:�1��LLDD&�J�/2���g����[���� q�uIJ�濮_Ald�4ͥ�ѻ��� X��6n�0;G���py����Yv!`�A�A�� �߂������Q]�|kŰq��K/�'���(`���I��g�"�Nv8�Ԃ�L��c��<����k8I��?a��$��%�OҦ��)�:铒�F ~'vDD��V�7+D:=�~�M��GV2g�cT7��Í�D(���?*��7D�����P9K�`�O�e�������t�w��6�ә�1��F��%��%%�$G��t����r5�cb)�I������Y�ٴd&RJ,�!63�/���O�����U�$blR&���#8����q>i�D|�d��g����"��3�|��Ia\n��O�K�D$�i�"�<� ��[vV�i���/�~ V>��Ǎ��gV�1|~�L��3Aځ�v�Ë���?���\�Kl��xf�^chٺ!��B��^r&D�99�����Fr����!�ײ�F[O�Y��x���6���Q�p}|k�b����p�'!;coD����˯�H�᣼����K��͆�e��5t�;>�� )�I^Ƅ��Q��CE� �������a�_��G�?����yt>ϔ�c�}�� �.����q�ʆ��l�t�6��Al�Ɋ�����9y&�i��%^��}���i�4���KX�j ��b;���� �-h���p\�E��A�ف�v�����vpo_ �A �N� �f�V�C�p����ᱱ��z�u��-�`�]�&�g�XW+��HO��:�D%e�jb ����㣮/ߍ&��'��A�� ����(�w/ 4.46�3��KגW����'���i������ͩ�nbS"�N*.�ze⛘�� �����/�o<9I��$lGR��g}��� �=E�����&�.�A����/���ˈH_`{��(`�Nw�.��3���N\M��h�fr��(�}���WT8g��3���H���Y�xސA�:.H{T��R_�%�W�_�i��*Vp���˼—��̪��y|�J�}����{�Qۭ�L���J.Tրw���/�h�t)O�s��!�kf�����ځ�S�Y7�ް�>aFg�ɹ�aN<��q������+���nH��`���K��>R�Q�І�7#+l����7��a�E����r~��R�3�Y��ϼ�4f-cSg'�?^?�t]�\9x��)���5�\v] H�}��t�c�#d���߃��)�B�w�c����1*��D�j�x�m�ve���%ۘ������L���1�yٸ���'�G�xb���#KY;'}l�^��0P�d������8�P��o��/�<�G:d$' �������^���I��ϫ|Rfz`K�k��9�uEY7o���z�mhB��sg���/8q�lb����L���lc����7�v�x#�Pq,֭Z�m�ԗ�ĺ]ۭ ���9� O/c���D8H�e���h���[Wʏw���!��!���k� .�Q���pz�����p ����# T �}>���R� ~�����|/e����;s�G*L� 3tfϙ�l��usx�1�9 -2��+KϤ��8q���:(>D ���+�&�����nٹ#��y�����gV.� �x�Dm�sj�u ,��ʊ�XJ4�F]y);���5�X?۶��lZF� hAk�G!�K7?}}/�yj�9L��՝�_w�������ǁ3XBmo�߻�r�lٲ>���3&�y��t�`�g�y��c�Z8h;A7�`� v\�j�����e���@n�k u�~+�w�ZV�q���ni س�Uv֎��I7��Ԇ��뻯#����14A�6j.v�3<2�-�n2�뻖H⟿� �I^��ab�:��ؚ~��h�ˣ��fyA6{�����oM�7�o�����+�W���LLx8k�i1�u�"�����¥�����3���$��G�� t5_��ݏ���B{��^P+K���D2"�<��j�@Fc���f��|��ː�@��e|�k�)��ճ᫛ד���@�6�m��5��{* ��׿�}�Cym� ��3�u�Z�R���O�i�#�^����keg��� A����8��wx���u�j�zq:��ot�Qu�cr���j�H������`�Gp�����ɮ�>��[��`�w�~ V�`���@�r�q!-= �r ��U��H)��v��;�$�3V,�o?�-&�ۼ�u �~U;� T;P(�ɴL��f���{8�'���������A����ϚEk���:��B���v��u���D\,R��T(} H��{�w_~-~*�����+���w�+��/|��O��]� mr��5�AHMٷ�-����[��4�~�Q���Y�p�� ��4��=����p��l\0 �W�?���T\�F����T���&ą#$�i+�U(w1rwlfL��:GO��r#�1=y�;}��;Wc���-Wp�@5���yH5��;����;پ��uM�j�Z7 �]ȈX4�%o�$��z0㦐�@�…���V��V�7+D�=�ݹ�W��MW�˜e�1?m �R�k��-X�E�\n�����T�JK���l�Ų=�D�~ �J���j ��4U��]��eh�+�����d�b�Nʪ�'���`��M���O�8�1���J�/t0uf���i�H!p��33���h��^j���5K����ƞ�.:\�Z��e��9��� �np��1~���5����< J�ٷzOΕ6���A�<꘬_�(Ҷ9}l/��](� �X�d��^�Bq��{zn&>צ��i�u�+*�\��ļ�?�T�tL��km��H'���q�e$Pw��)32��=�3gl���AO%=у����Ū�Z_������6Eɲ��{ۇf�y���?���4���+�پ������(HaS�;%a���ݲ�= ��;w�!7s:��8y����x�����DfgDp����cT���R3�R��%^��W~ߔ �dd��Є�s�K�x���Y�xސU�� G浛�V��/��g��O�SK#��#b��\IWc��O�t]e� ��.:wS�07�͒�Ք, ��,\GP��ő�S����Tc?w�2B���8شT���ZR�N�xn��F\�=B�a_�{/�|��!���f��w�Ć�(�+���e�ܙ!�V(ʹ� �Y�k]��QZӟ�0bR���\2�`� n^Z�jN�%sBU�-�������Iu�xl^_5�z��� �@�7Ri�tVW�NA� .U5J���9w�aJ�$V称�ܠ�~�Ʉ��z��j�G��pv��7��rMG��� �'N�k���N\|�*�R�e ��p��e��,,W�iY9GO����,+�5��D��Z��f����i�tI ԟ���ųg��� ��־B���k������z�f"��Ext4��ƭ+��;��^lA:�^�(�f%�y��i��|�� /����~�(�w�r�5ٔ�����pe� ��ܾ�mS2'��H��SUC��5)=ۆOә3#{��q�j��a�أSY�| �n O=����(��> Tc��޹�n���)m�8g���v"��9i��^�;�/�|����<���|n�B"]N�(V-��|������6B4Mb�G�{����[�щ��AI� �/���o�&.:|@/ �B1��[��4B�U��j5z]Gx4�XWc�z}�;0�]����K����14A�6j.vd+L;P0X©ڂsr�5R��qk�ք���Tz/�r��ahȫz��A�W �̀�he� ��8w����S9w�Bq�2 �B�P�]�P(ʹ+�"�П �B�������E�NG��*e( ����]BlL�B�P(�P(ʹ+ �B9w�B�P(�P( �� �B���B�P(�P(�{��/_VN@�2�IEND�B`�Inquirer.js-3.3.0/assets/screenshots/input-prompt.png000066400000000000000000000431441315775736500230050ustar00rootroot00000000000000�PNG  IHDRwH ��2 �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� "F��} IDATx���ytTו��9w�*I�MH!!� ����`l�c�� ��/���IV'�;���u�;�_g9/�N�;v���<ۘ��� ��@ ���{���q HBUB�Xߵ�`U�:����g�}��[0e�$�(��"�O��DEQD�{QDEQ�EQDŇ�Z_�Ffb�*���������`�G����X���X'W;��4�j����#��0��ጰ {p4��(�e�a^�h�i���$y����m�Em�("R���s�©XD �΋���=u�ݒE3 �O�pǁ�p�L���>�F����2���ޭK�C���Ϟ�ɩ��Ʀd��b\F;ێ��#�e3�z.��t(.��.����#U~��7qw���߼ �:<�&%(*�טX��w=��q M�/>�{�;�RE����Ŕ� ɘ�����Ace9�����7 �����/H��� �_�Y�ia�&5g8t��K�+�JEs$ܰ8Ȫ�&�%hh�S,JfZ̟e��/]\�;wo�,ށ �`�&˖,!3�76-/��h��C�7>�[��%v ��̭K�rj{G�Z1!�>A\J.�|�2jK����S���^�����{��e� 7L���Q4~�r�Hч��0��^�Y&Π�Ifz&�� �� ��sIr)}鶠 g,3�sH� t$h2e|9q��P��� ]���]�]��{������� �m�&��0�4H3��q�����*�HL��G���i�)�gLA.z9�#hvͣ�I�ɚ��@T�~|-�A �^sb� 7�J�!8pt, ���i��+>���D�Hi�����'���6�c�8��m˜)|��(�B��x�gi1�.�������,#1N� � h8��{�0���L�HAĥbI�3.���Є=����x{ϳ�F�N{�g���/}�^ ��0���J��v��}O���������d���� Gjz1f��<�x�m���σԹ��;)�OÔ��*,�����'.� EM�W?���ʣ|��w JR�$~���P}`'�x�0HȜ�#_ZEŮw9@k�M�4M$`՟�Ow�~P�U�ѷp������[ ���ϴXa��̓,��.��v���2֮,�ol|���0:Náxy�Oҡ�`L�6����B"�(����7Y�����,-�-]�sǣ:���q�c ����ԉ��b�����;�ϮЧ�����؇[�Ή??��C�z����;���� �>{���fc�s��s۝�����k��5~��A�W>O���XR��P�E���?Pk��Ӹ�7?��z�W�8�M�Y6?fy�y���k�Qm�q���EJ��7n "<�{-#q�U(������Ʀ�1*��U(�`rZ"�; A'�=�2>5���[����ݝ�_��ԓX;�����<���͸cT�<�Ʒ���p��gY��`j1�V���ˊ1LIb�D>w�J�]m��(�������Ml�y��Ѷ��`�ܴԟ��W^�Mo�i�^�U��,����[wa�~f/^@L����SX1k2��Ǝ�g�p�=�(�EkC5yi3��G@j,��NVNz=����4{-�RJ|~?~�{ ���X4���Χ����[JAH����M�/��c��o �>� ��a����Z1��sUH��M�oc�+@U��tS� @rv��3%(���7���[h�Z�X��d;��`�0L����;D[I�9�y+�S%a�,n���HO��� Nm�‰׷R{�����R4�yT���K��s`x�|�:�c�4W5c�2&�!��k_"sB ����� ���Cj�_�y��v�~?^3�_� Z9��.׷c9����8�I?��{��~ݏ"O>��X�Ƚ���IFF��E���dN�#it2i�q�m��G���;0�����/ҁ��z??��F�m&-��vA��ϗ^U��`���]��#�ԜEď��Us�t�K˱������Ze��W�O����*�O��ʮ��]�͈�{:�r�j!�YI�*�a�:r�Mc�fRw���Iܘ �d�b���^��p5Զ��] Xv��z|��6N�t.�-�w�;�;n. �}��[R\L| ����:�o����?�N���n�9����&#��`�{W. h���� �[�n˛���V�g��i�=ԽP)�v���-��h��c�a������'��%)�y��u.��Ǒ���w�*֠�����En2&e]cfke��[Y�_�A�$'��g���<>i �36/�k�G��p��J<-�e�k�s���!5�8�X-�l��3����?7�b�cm�m4"�h����� ����`���4�t�(�3a,B ����@M�bB������O�)���+t��M����D�$Ό �KPP;ky~���:�����@mcB��m���"�j.r���F.��uu8T��ŷ���͍E����x�v�ڎ�8T��e�q��`�;�KU�z�(I~f*�)9{�hH�������*Jb:c4kH����� �S�@+�m�˛G�)� ���9A��7��l޾� mUl-���i�䤨Ň;u7ΝɍsgR����G��Xӝ�l���8���xs��~�0���K�R�:}&7}﫸��#b��q����R셰�eG[�Vڮ��q�� I�{1�.9h;v��"�3HԻ�U�b�=�?��A�p͑��e�(>!�]���w��Q6�'�m���� !���G��N*ꚰ�xR�5ښ�z+��zηvu4�a)5���ƴ$�+�ѭT ymw��,8sb/��q^�ALR7._�O���<����+�ל�􂟠��ʒl��\f��źt�×��̈́ :W�)~Z�&R��3���k(;��ʽ�g��üw���.� �7��22�i���:_׸_(��3�S�X�� �g�b�LV̝ɂ��L �1�K�X���2o��g0,�Jf�m ���߮G�q�\��O�sWEjI�b�6 ����Q��:Ltg^�_���{ ��HEA�����G�-�JJh� �U|�t�*.i��=�Z:��Q R�����*�.�kNF˲#�{�/-���<��5����Ν�ǎ�����iӘU����K����߯��=�ɫ;�0��%�_<���v C�s����#�eI@���Iy�lS'1VCH/���^��잼Ҥh�8���Yƽ�p�M!{4ݏB���q��=������}� �UQ�\佧_g�WV�8q,{z-`���P�R�i���{�8p�5�^����Q�D�] ^ڮ�������ۂh��G�*.��*�¥��ȼJ!E���c��Y�y�X={B����6.�a�����[��"/=Ɏu:9_[͆�6����Q�InZ�,"O�1�4���Ѭ�?]���腮I]V[�� �f�2�]�\��b���i��P��aXwJ�Vh�dq��Iȏ�6�*:�� QD�i�5�[Kh�`Tz��{ �α�; �.-���39���(��/�Dq�bWy�G�Atv�;T,���ՍQ�EQ�}��i�gԃ���IП�#�!��s�r�]:��V�=��K��[�QDU�Q|�aY�«�h rQ�����A$%~$‚�CԮ�$AQ�ݨb�"���x�ug��GWD�EQD����ߨr�"�(����5�etU#31�O�7!$ �-xe�X�� v>�.�:]��:�\Ҡ��� � �5�Ê�5���%4��bף�����\�@������(�4���W%;�q�2�pS�3II�GS$�j�xw�!�ZBY4���I̜�͘�dtU����l�9^�}�cbHh�^�, Ӥ�� ��7t�(PU*��۠7,�j��j �����g<�K������(�w C-��ɲ%KH� ⤶������r����gs�¹�Į�/!��u�\Nm��HU+&0ܥ\�Rr��{�Q[���w�x�*\�o���"$��6��Q Ĉ���c��XH�'�;k��%���W���@�U��5�㦭���05Ӆ*�\nl���B���6m2���T��7�W�XNV�����/��CJf6���<��ޏ�r�2�<k�s�����?���Y�=DŽݚ_��{)ʒ�J�,TTV�+;F0�܅K�ڈ�ڰhn�C�n�4*Ӓ(q)d�&��x�g;G�[�4�.���v ��F1�j��Ѻ*�vQD1�}�U|v�,�"�3Pt����P~���:Ǒ��v�,S��}�cjv�,-��% �Y�|m�2�t�0 ��#��������ČD\*��8㒙>)/��Up���*����76�t�<��]|���R���!��V.����x���Yw�� ����F6��Ř� W���i��e�<R��;�$? S�g �����&6��:@J�W?���ʣ|��w���&eL�_� �v�����I<�UT�z�d�f�dL�DV�~��������������Q~�_���;�#,)�|�_>� m=����0���<�o�n/���O_�^ ���ϴXZ�xO�6����B"�(����7Y��"2�u���Ï7����X;���W�X��Sh��������8 ����_�$S�Y��f�^V�aJ�&��Vr�j�oE��~޷���ob�����������榥�<Ͽ�:�lz�M��r��o$1����[wa�~f/^@L���V̚�a����0�w�: sF��P�_^�̆7�� n���F�^O�����^�BJ����oY=���X4���Χ����[JAH����M����xh�<,o omߏߐh�Ʊnɴ^�� �^���5����}NAW���E��ϔ�H/[�|�g6o��k1c�g����@ ��0�am�*�V̠�\��q���� PU��/����$��y��k�s��F$�"9!ô* �C�5-�yqrC�o>w�����~����s�̹ܻ|>���� K0��<��f:�O��j$p'X���~)x�q'ǚG�=�(H22��,�Ξ&sRI��Ik�o; =�4U݁�V�ϟ|�$����}7��sZ|a� �~��/�� 1=����f��G�9��̓��p�� 6������7_�G�*�>_=����*�O��ʮ��]�͈�?:�r�j!�YI�*�a�:r�Mc�fRw���Iܘ �d�b���^ ɮ��-���Z����㛐�ȷq��s�l)���ܙ�qsɐ��9b]���œ/�՝�j ��5 �8%������`��S�����j�w�����/���Uv����V�g��i�=�yҠ�FОP5�UG��S�y�G_� ��׍4�s��dd�҄���!�aʁ��m��h�B̎&\0"W�C�_�ϯ#7�E{�I��ֱ���b���e:�T�@0�e��qI���)R�Ax�>?H���\lِ���Nr&�EHAsc�$d1A��^@*��@S,~��+t�rTA) >%,�3c���Z��q�C�No''k:IL�E0�m��^z��P�XW�cF3�JaQ=;gϱ3t*C8x���c/s��������g�i�����T������g�b���CGC�.�8����\Lbb:c4��!�$;/�����V^۾���~H����y�� u�."5�.sؓ�k�� ���ۋ�s�[u-�����N��yРc�IDAT��B�q� ��Qn��ah��F"Z����{�i�!mUl-�P�&"�!��tv��i�{�M�J�,�{��d�i�:���߆�����<�?��(�J��Y�|7�x��96n��(wƧ�ޮ�F������؊��|4\줢���)���KZ�B���:�9�jtY��mX�@ ���G�1-����^E� i v�w�gN��?|n�B�Iiܸ|)��\N��y뱈�����^XHaz +K��|Na��X��g9|)�@QT@���`N���5Ip�t9`��q�Z� e��_�� �l��_g�)�ٯtG� ���N �߰� ^�=��e3ݭ"-�L����E�eZ ����`�>?4�NE��\(�P����H>�+�F�շ���1�4�?�l��W�w�zz�yjr��<>���*�d�T6���(wURz@#ؠ�����L���&��C��3��� K ��zk�A��[��oI�뀲� ���A�8w��;�!]��_"��(B�hZ }��B��Q���L.^��I�t^:��ߎ� W*�46�� �����p@ ^ڮ����d�Q|x:lk�����\�܊� �:"�2]Q��y9v�e��7�ճ'�k0 a����9�rf!��5���7���$;v���|m5^���7�G�&�i�C�x*�q���t�f�� 貅mG/t��j��4A��b\��K�3&�( LOu����SR��6� %���L��Ҝ�\Xܱl6�������ao�/p����3�iZ�]������#du�?��W�\,�[��IY�|��o�z� ,��W�t�;ŀe�p}��9�l�2����aZx;|�̫�b��e���o� ��y 'F�Z�"hj�2:�Ņ�&P��.TU���Qs��*Kq���7S�u1�pm�8ccp��^_Km ~E'>��u ;)�HO�dv��g�w��x �5w=@Bg ����r{;�p�p^!& �M�C��;��}?�X{AN*ūwo�:.����yg���W����Q\ɬ�q6�����]X� �VZ�����[o��$3�(��6/�sąSM�`ќ"�+�FW�_w�7N\�B�t�Mo��#�g�����]�Mw�Cܮ�T����g��b��#����ß3�~ :�#E�4�i�*�LMEq��6�?5E�[L-(&#ACJ�� �)�9w� Ul�~tb�iܴr��>�K� �k�ӞS������vv�>��� 4���/(bռ)E�������â�c�$�!0UI\0��]������$.�5�nL5���� �l��Z�]'���g��tb]�� ;yl�V��ni��j4U��?��Ϳ�૸s����- ��_����ܹ���(A����{"��������X�4ӦCJU���^�[6�X5'Ki^��$����'��P]\w�~�z�}5s&��[�"������^�s{��q�N�i�b�� �� ���m'��/���c{*�8�8�q˪�%�f�"�ɱc�lxmW�/4l��Ko�����x��X��-s�a�b�P��`'��_��� ��0��i1�+^���;E�|X���דҹmYZ��~�9z#���@��H �e�2�U<���^�[��6������r8qX��iS�4�1a�)0|��ٳg3{��"�e!�m���fN�~<�ܯ] {�"�^8��w�ó��(�n f�8 �Ί��){�������=�⯣@����z�L�;�MW�{�+� �r~�m����LS�L7����T���@����yG L��.,.��s)`F�k4M��Yi$�ĠjPWU�值� �Ic ��� i3��΅b�5�v�9��hp�����TT�nh��z��p����o_�T-6l�7p[�FG�����_B�N� r��{\�o\�r����T*x�~�����~'m�� ��H� ������bDADr:?��=�V��k��o��u�����F*�d߱�]���:ƹ?E�ϝ������ �T�4����,F���[�9vp��I"-���39�*��(�V�*���;��Nt��%�������a�\E���(��L�e`��[�G�+��$�?wGC�!����$�t|���;z���:?�����E��`�]b���Du|9| �2�V�Q|�гjL�HvQ�Z[��gc&AB�G����>IP�%q�����Y�I�Н�!��(���"�("��>��=�ܣ�"�(>����i�1�`�/0Y���b��/ �M��] k��춃#X%6��ң� �<�-��e1�x:��[]���������]1� �x� 7�E�u6<�{6DK%G���/�(�G4��G˟e��ϳpB2�lf���:R�����MG�Q~��ΈS��~��7qw���߼<�dg�j�8�G�eުc��gG�?�(�n,�?�t���;B�Jt ����O>�e���k���rF�Q�Ǒ����*樍�_ĥ����.��t/��> 9 �˟� ��gDpu�SZ}�Eft�\�q�b!�Q�G.ZƒUWx�w��*�1f�8�ΟKVR�X���y��~��m� ��έ��QA �5 �ˁ#6z� "�7R�ST^ٴ�}[4�9 /�O��b��z����1(���h 8^V��ih1Y�e�����u�1� �J} @��M��Ru�J%��0�Ĺ����K���LHKB ����|���A0L��� 7����v��[\��V�[����0��?�_�4�����o�� �[&���0�N$��7*�K�f*�~�4H��)�|m��`�b�����Cq�X\�����o�GX�J�����[Z��W�k�8�X&��f&ؗ0M����$���u�����#�������-���"�� (@�=7,�`�B�I�X'DT�5�*��"5+���YFb�n�0 Gv�oo�-\|���R���!�� �R;��>��J�p�N:�*���[���y���|��(�B�Zx�w���HLHdbF ".KJ�q�L��*J/�\_G��U�K?�ˏ���7��-r�4�������c��Uܷp ;���V _�~����[��@���+�����ΧQ����73:)�@ �S���KG�A~�����L�P���9~��+��ȫ#�A˜)W�K�>�,-FH����w�II~��CUa���Ml>qѾ8�� ���_5�_��>:+������1)c?��g�>��_�y��7����nֿZ�ڕŘB㍍/P��F�i8/��I:� � i�LZ{�q���� ���N)��3 ���T����������&��B} ��+ܪ퉩y|���q�:�:y��ooc��2 #�ϲ�L�� 11�MK�y��u���&����\u=�V\��+|?kݷlc˻;)�܁�'p��@R0��u�o��e��$1o"��m%����V������އ���t�7v����d����U�VΞ���V(��� ����u�����:���q��O_^Kr| �����v���ʐ\8�?�ߝ�Ck�ay[xk�~��D5�uK���}jZ?���9���j���YGa�(Z���K����>Rc�-w�r¨�o�G��Z�ߏ?�[����~�!��A[�ʪ3��3K��RJ�"r��Zv�3��7L$$ǣX���Z|=�!�����)�ٯt�����G? /j�����j����k���q��aʟ{���律��d��d;u>N@p��z�{���4��mV[&c�G�Ӓ ܑ�!�kj���s ���}.L(�`�;[�0�� �R�"̪�%�J}R�:�,)��*�ݽ��8w��"~�}�V���̛4�eӳqL�CPh���`��4"��s��v�}�ޡ+3 �����*�\�,0,Z/5��>aʋeI@��z�7L��X !�����\\K��{~�� ٭�I��q�> E�^���C�G�@J=۝�ϝ��E3�-=�ݵ��zg�=Zơ��[�sCy1a���V�0��_���y9v�e��7�ճ'�nVZ�'�׵�N��V����~�~Ti���l��pW����BءXqq��F)��V���C���H�t�9t� �nXAq� �d�y���{!����"�����4IJ��7N�6�e���;���@c��S�<e��h� of1.��Ep��b���i��P>ty� χa �))v��e��U�� &]g�A��C���P���iB���0meۥp�}n�!�ɔ���瘨ٺ�}�j�U۫+�T�"�2��{o���b~�8�Z;p���r�K�k�z����=���v,�`�BL*�Z��l��Ň�^�h������痰na'��i��N��l����z?��G��v֞�T�R�F� ;�+�r��(}�� h��m��~�h=_N�����;_\��z�E%�{�!.f��&d�hNH� f�+�;�'.C1�Nq��<���y�w����(�d��8SQ���.,]��0��p���V�@82x���(��/ʥ�͋���q����W�';쭭���T��>�����Q�p��3�P 8�N��(�%4�ª�.;yl�V��ni��j4U��?��Ϳ�૸s����BMu-s'e�li�� )QT��SGxeoYW�L����Ext������l�b�N,�������/l�;w.�d�"J(���Ğ��%���^���G�[w�ɻ�3}�6���5�+� ������O��И:eS�@��$ۏU�+�K�g^��_�,�,��y��n/?��/ �`W�Kf��EH �c�J���.��|$�9X�~=ܾ�9��pϭc��B���M/��9Oׅ�p�oX�G��:ܴ�Z��)E%E���9�{�I��k��dW�4b:W�21��w���\`�b�_OJ�ei���i�_��2m?�`�:��"rA�n�[d�J��$�-RN�z��:�2n4� �l�#4��m��(�K���FBL �uU5\�~���7B)�=���I��*�=���j&�A���0����@��0h ��;����a�aɟ�룧߾?^�i9Y�Z)�oC��o�|�֬N��߾�qݸ��Fc�C���h$�b�%�����*����u���o�G��J4���� |�F���О�{��Wt���fg�v�=������@��7�P�aE��E�' !��:�O���e�)E4�kQ|�f���FD�|~���E�46mٍ�vih!�Q|26pQ�LQD�'p�(��"��r�"�(��"�ܣ�"�(��*�(��"�(��=�(��"�����aԒ^�]IEND�B`�Inquirer.js-3.3.0/assets/screenshots/list-prompt.png000066400000000000000000000373511315775736500226240ustar00rootroot00000000000000�PNG  IHDRw���J �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� "F��} IDATx���w|Uי����圣^P�Bt�fcLs��qK&��L>of�Nޙ$ν�$3�d�\'3��$77͹I�I�`;vl\�6`z3�t�I ��svY�G�!�[����8��u�>{o=k�g��7]#��#ŐC �܅B|X�{�6-rS���6Ji��н�н>Q�� ���Gi����>۾�"�h��>g+�)�J���V0�z��!�2�6�/M·�]3u��7_����i��������57Ns�<�'1��#�&/��h��:|�G�����Z�;��w��BЎ}o=ͬS�����I,�V��t�MGj�q�RO�`oU���ߐ�^�W�����\ �� ������Ƥ�s�J��S5��,3��}����Ƿ��L%mr>�Ph�{���yTWe�����n�&� �0�&�[�y����^�8̧l�Ϝ�.������-oQ�@w}��y,�?� \����s��9d���z�( ��}� �q�M�G���l� ^��ުf<|W�0�����jvo�'[_�;���:xe(:]g�_Y>x�%�?9bH����L [�U �u' �>f�u��~RX��;���)��Y�[Qy���޿�D�a����ç�����8��>�i)x��HF��ё����X{��;`�E0 o��g�0y��l_��Օ���Z�;����;�h�ugs��ї|�:쭡�kheLV�)&����� /?���84�Hc�_��0ˋ���JE"d��gt�������eP��G��uHHͤ8'�siom�x�Y|;ЫBt�M hj�z�0�p��5�e�K#i���G�MjOVq6���Nĉ���FJ�ɅNk���\Ӳ(�JB�G���S[WU>`�`�����z}����v�0�������ix��>:� �e��x��z>q�b9�Ǹ��t�=�ɶ�DŏKp�Bþ�5W<�av�F�����C�R\hj�A()�Q�)(���'3#�N�inh��q�vI>��=�C�h���x�ɧit��?���"�p�R��S`��߻�セ����s��2�&���䱅X*z ���R��1�/�s��Rqu4dk d����4,�|�_"�E�[��4k���M��[���]��2xg�*��^�UѹO��cKg��(4�����jVl����MZZ�ݻ���h��D"n��l��>ʊ2�t�ً�|ֿ�+��4H_���r߃�c^Q:[W��3{���ˌy���Mټ�%�}�dl�Y�Ƿ���>���Z�N,�9c��Go��΍|��=�W~a��~�K$�V�g����y�g��ѷw>b>o1���k�ͷr� �1O���i�ԍ�^�ex��������C4^��Qʠ���&>~9i�(������λ�(�9�++�if���#QN k6�f�i�NKe�� �j�R2 ��'�����Cﰫ������4��N�4��p��R��8�GJa1�*�]�޼�_n=2�$蜹7R��Hc�I^�q�7HJNaFq����X�n�r�����l������ںMX��?�PB*7M��IcG{����������^k^�HmDq�[�:�6������A����,���r�|�*��x=f�0�U��%��� �!��O�↽��ܷt6so��H���>����k�61k�Rf�4��;~KG��%�i�hz ��†����b+��t�Ä�O�Z���A7|:#a�^�Dž=k����g�T�dEX0yt�_�;{w�T} ���go���cyaw�}���� �;��������Dw��M;���=&lܾДMO`BA���gj6l��+��� �W��x�wU�m����ҹ8���?�ڪ��q����s�?~";jv��B�"ܽ�V��rt�:�Zs$Z��`�������R��i�;�x�p TS����˂�sy�'/�c���^��U󘒗ʭe�xa-�&N$��ݷ�:$a���� \���r�_jB\��sc<�n��v>zW�omx�c^�v�v����w>�p�⥧B�}��>��؎a��1#PZ�p��3�#�J�c�mn>�6T�������/�F�+���$ K_���d���gw���������C���dţ�-TԜ���28S[K`j�nZƄIulx�[��ݸ�n�ax��O���� ~��Vv�j+�Q�L|��Č1,�1�Z{��@RZ"�:��Lh�Fģ"��x� ���6E����b׾��U)��ѻ���,�[>���ݭ�n���O.d΂9���i:-� ӧ��&���j0�^�?��\� �h��X�G���t>�]�mͼ�n3(%�]�{�Fg��j��\A���p��f��=��s����|������$ _�Z[Cg�����a���y_#Ls�Gr�&d�耸�Vd��yL��Ҳ|V7�1"��{�:`��˽L׿�3}��/ E/���G��-��q��(��$��ؽ�©7�����@�g�F���&��F�0|�8�����\�~��.bߏ���u����B�:�M������eTa7L��� ���1��ZZ��;�lOz���̂T �����?�f��7tx(�{��=�}��5�J%%1=�����i��x}�3h��V�Cދ�l�o�t��ܝ�䕍[����̹i&mI���b�w��t��^�L��Ǥ�8�5�+\1�����|���k�ӊ��[��g�?3��4�E[)�uuh����fLC�28��:��nW�-� �dN��cl�+�@CBB��'�Z�G�f�F�����9�3����+w`j����A�x��x#˦�B��^AC����|��y$"�9���ڹ,����MvR���FSk�P�� �F@{���{=�U���aY��iSy������)�(���Zw�PS�~�^���,�3[7�־Ӄ/�����ÆE�Q�.��&q�ܱh}'N��|ĸ]l�#��7�1ol^4�#������O����q��zwŅ��sB�����\��D��q�*��7�r�ۇ�p�#Ĝ #iin#G(d�i�5�T6l���xp^;M�2s����Ί ��]����$���l�w�s���*��Y�08q�y�V���)�Jj�m9�����Pf��;��th�?�m n����E�\����6O�������{ a�N5;�%%1o��S{��ջcnA7������D�ė?s'��\n,+&�� q�۵�>�Γ�����㟿������|� <�`���& ������q<8�k7�=�r#�4�*��g�ͦ�HgΤ�Z:��c�1���v������c�ͷ2|F D���ͮ����'h|W������c� jډ �8���5b����q6� m�I�P Hȶ.��q� �+��v~��:,�"���YGs������y���+ȏ��;��soabR6�F�}�̚@��u�ߣ�T ���Xp�\>q�R��f��������/�� �P�b����16�M��"7,�M( kD>�KK?����%�?������6���O^� �f���x��E�5� >N���i~��W��H�-�Ʋ��V��S����s��+V�`��s$e �e�r���ظlx��<~���������� ;���b-7���K X�&�1{R!-�O��ʷH�4��������i�X�G/m��R �иaɽT���ДM��O��;������(L���l?�.�.���Ԓ��_��_12��~�W4�"Q�:єH�щ��|7�~xGs�}�h$��2���Mk�N4�Q�B��h�40�hB� �c+�s�u��x��H���W��e��iAmU5�"z�=� ������w�L���D��W8�P�4\��٦�w���oe2qT���)�kA�F���/�sIHFAz<�ip��aumkRG���O����}<�r�e�ݕ��Xf���:��SQ� &W?B5��o0�#��b=�↩�_�eoM��8_��`�{ٍ|b�8ϝ�tC;��x�lذ��6�>3g�fBfO�s\F��#9p �]�p$f �K�����O� *�$g,�K���.��H��#-�Wж����%�k��E��_���T���,�c�M���/��۱&�2��� ؅�r˽+e�y5�!����u.�~�t��\S���BzȦ������r�l��+&DL�]����� C�!`�!J�4Ӆx�?9B!�]!���#/�n!>B�^�݃97L��^�O�q�4;O��>��<�?��j?���� /���~}�&w,��k�#��9�;;��]��s��G��&F!��: ���~�e(rF��Ȣ�Ȣ_B18C������l{'��3@fz��_|ُ��v�s|����˄���`*�`rQ�������|>�F����\�әZ4�)�#)W�"!��ܯY,�ԯ~�[�����x���K��)�U/<ǔ[n';�"`t�������d����x|������o�y���Li�G��L<]<�T>�_}��� D��*����5{���7bP<�\��ᥔ��c�M|�ϳ�D ���ϭ�� �EIwJ!���!�[&+�o���TK�ʛ0���6~���鰂�����et�[�)����4�v�#��2����������pK� !$���Z��ҭT�vv���.��s[u �^�CE'$��F7 P�G�=@5�4wxhe�e6!��+z�P�*�Ja���Ի<�T�&�*��O�� `��4IA��y6)�JG�t䁪B�{_�ׯ{�&9���!���u[��wJ%�� f�b�c�a0 �k�,E�)��p�>�L!E�xM�Ժ2J14 ���c&L��7�����]32����f1}d��!�����/��%/���X꽏D�HO'�6�hm�)������*�L�e(���]Nמ�ӯq"�$��g���΅�0.::'M�*�W��A�6�=Y�و�BHp��&�OF^_�{) 6�@���~����P��;��~�V*7�e'9�=���Ѐ_w����Z���襥��ؽK�N�C�3{d�������Y)}�≳xl�LP��0;�Z͊m�=3W !���K�(䫟\��+��î��2�s��:��ָҚ�H��I7pG0@sm%���=���^wk;.1��<�<����l>^��0�;f�q{�Nϟ�_�V��:X��Fj#�{������q��쨍�%���~u��O/_��ž�����`*R�",�-t��A�r5 !$�_-ߏ>��u���RVZ��^&������~f��O�Rpz��tx(�{��=��;t�YCU1D �����-��?]��/���Q���|�����9c W��TSk�P�� �F@{����z`�4'<\;��� `����N���I!-�w��*��c�݋[+�����l<^ϩ��8�ͨ�\���%��1g�HZ���� �ъ ��w�� .��HTI|�3w����Ʋb:��Q =�6O�������{ a�N5;�%%1o��S{��ջ偪BZ�fOLB���#_ZB���ϸq%gv�7����3�,�̂bfMͅ� ����K�#� ?�6�Q���w��!��~�*�I��XVB��j����7��to�pj??ye'(���n��;q��Y�'�8yZ�&!Đ1���\�\�ܲz��5�d��lZ��p�1��:�R]���]L�g��w ��,� ���l>Oy] �c'�Ww���ۛ�񆃽Z�\Ÿ��؆���'�6E˔V�B�25�-�除��"�?~��[�|{0�o3����I���,*�ͻ�{�d����%��ő�S��� W�����JBHpZ4��ehܮ���L*�oeͱ&�d�{!ć��J�||�Ĵl��S��F�2�kh����׶Ƞ$!�����ri�?B|�IZ�7C�/B��H8�C �܅B| ʹ����yԕ��q�9p �0LX�r�ܯ"`��t9�y�y��m�?Q������xq�R��M;����i"�v�ڏ��Z��#\��CaH�e��#���_ �Xp���.�E�׊H��b�����yK������5(��Q�BZ� V��܊q������%:e��V8��~�ò�BA����& B ���b�p��+]sp�I�MF�Uol�����E�����/C��0 Y��������G������M�!g�h /L�`��H�PZ:q����u�R���� �T� 9E#ўC���#�Օ+���~u�إ�{HK�v��5�@����0h��Nb(D�r��7!��9[������D%g�5X��M�(e�ZSE������#����vqI���@�hݶ�7��a�e?�{��Gx��,��;P�h`zGo�����.�&>#�ُ�MҰ���ꅝ�;K� B#'�������W�RÙt�D|�Ekе�x�?_�� �r���IF�?^M n;�2����e�3�����6T�0i>�J��i��,���m��^�s͈��|>9�y�����͈��ȝ\B�qĵ����YB9cY�7wcZ�{ަ|�Z#���Y}���j�3(\</b2fN)�i�ث�)Y�%%�@+���7�9,�ڧ��&���sd�;�״�U���t��`���U`%e0���5������\{��qyx�P�� s�Bq�i��s�l{�n�} �1yV�쪻��i?u�5���K0Rs���/rv�v�>�&�� (j�o���ATj7�?��{ط��Mִԟ�J�����2�r����of� 7���舃 7����@ x ��b��~�6�TT�~��@�0&ܳO���:�g�}lj��Mp�,�-m�܅���9B���o�p�(���4����\h��`�h� �XI�X�;���]F�n����q3o���[�ᶶD�nc��Va,K�3jF1�Ǐ���;)��Е&��A��/5b`�1/.��������Q8w"����/��uq�A� ;.�e����X�B��!��Wb ����x��舐V<��� ���� �+i�p/ӏ[� �cGb*�֪Ӵv���<�V��<§k�p> ���K0��S.����o�k���7뢲�;����M0�.�r}"Ntap� A:�r��Z��B��XZF!�w!�܅BHpB!�]!$� !������!g�yj"����^��������x��ϸ�RƏN����^]�fxA1ӊF�u4���]�7��{�?���8��W�38�w���Oqߢ9���r�L�\B���1���(�<��yq� �yr����xx�"�mX�^Cuc�5���/��qP��ӕ���ߛƻ��O�R�5���]�/(&;�� ��\�0y��l_��ս�%��6�r�n0���]�j��%%8�`b- >���ԢQd���+x8RB �LK&1d]�Q���{�4�E.W�@8N�9Ե}��\�G�q�����eBnrtJb�`rQ�!y�-���ܻ�'8.s�K�Y���'�@��Y� ߥx�,[:�F�1 �ηV�b[e�V�&--���]Bvj�B��E��;��!/�݂��Y{�\ߝ3���o?L��}|����������S;7���os���Y>#����|�-w��G)FL.%v�)G������'E��?���� Cw�n��v�Z;|�ο���=S�%f�G���G]�a^xc=/n9��;�by�Z��W6naOy-�Ho�;_�v�>wZk:�a�]�޹�KK�ɭ��r�x��d�w��PU�DX'2!_�aB|�������f3��c)+�6�ؾʞx�8<�t.�g���ϱ�@����U�1<���'Fo�w/���ٵ�{v-[�9�ƭ����u��a����ݶ�C��x/2�ʴW��GO��C٠LV���+�Q ��|��c��1��9ȼ1��Q8���l�3�8С�ֽǹ�f�{�$f�aa���J����9�����GEY����9���2Y�~>�Z�XW�DY�u!��0�T�?�s�<�L��� �Q=$�h|�b���}R$�烎�ӓӓ0|Mkm �v��鿷�\����[����+N]y1!��(wT ��cvQ ����@%��z���v��'��~_A`��$�}���X�)�V:��Ԙ�O������G��O�+��t�]���}΄ �=�شk �G��o�fN���w�4'<\;��� `����N�>�lj�`����h���">�p��L��D����ÆE�=�.��&q�ܱh-�Y !��~E u5���hʥ�׶yz�&���|�� ��p��!.)�y�����˿��M�� .��HTI|�3w����Ʋb�M��w�µ�hL)VR+n�9�8��f�� ���f�d�3gRm-BA����r�iۄvO��P\̩��I\0����S���+;A�̞wޱ����"=�������i~��W��H�-�Ʋ��V��S���G��4n&����q�c�ln�:�k�,P����,�q�ʘ=����'yr�[�ćvUB�e�Q�t�g(E\0�B&&B\_Cg�l'Zu�W��\p}��^-y �b\�plC��p�g���߻��L&�ʣ��<�u-(�@�0 �������o���%�9t6����L �i�e�뀧!��J8 �}���u!I� !>�]!�{F&:B �B!$� !���.�B��B �B��1$G������JE����X���S�;piy�n'��/���ǧp���/��'������\������h$g��[�^LĉV&�m��o~����Um'���IL����|9��"m4vz�f�0/?���x�����V�� �:�e�$3��0M����B�{o��� o�u\����S����c��l��ϮFZ���Ko�������']�vB1 ���O^f�e�s�N�� ��\c�$b�A��#7+� ��ѕ�<��E���J����%�a�ؾ����(`( u�z�� !��ܻ(��N2�A.����m�`�IĴ�-��g��DV�R��S�Ū�c�-���`0:���I�e����+� w/ %�(0P�����^�#D��r��Ռ���N��_�����h���uii5�u�TN�B��,��.�C�j��D&�G�H�(䫟\Bb|��C�x፷xkO9����˴�B �� g���g7� 39�G�4��mɆӷ�oZ����VѡlP&�^|���(Z+��|z�"v��?Z��-�bӾ㘲�B���H�ԟ<�7������IPT2���珐l�=�Y&+�o�`t� �Rź���<��9c�l`����3`J@BHp� #�P�k1�~��ǸI�I�a�n�;8���u;!��xw����I�7i2�Ph_cX&G�n�oW��e����� w�e �� Q������u|��d�mZ\8u�����7>ObA>x�����[�Eȶ�2u&S���Ύ �i��c�N!>��:��;�Nnf:�?���$g�\̫�x���� �i�e���B ��"�Xf�q#�i�?É�0�R�M�� ���ٽ�%���BHpB�^�<�BHpB!�]!�w!�܅BHpB �MAj��3Mr6���И~��(�<��yq� �yr��9_"��E�۰�������7^�A�Nב3)�C.��5��O)�X�?ݵ��b���@����0y��l_��Օ�8�b(���`6e���Y�1����}�8�i�Mm�������=���8��ܙ�Եy= |�>��L�e(���]Nמ��+��$�eQ����=�?A���JBHp�l��q�[\�Κ}��=i7x�&���y���+/?�ڃ���P|�.���ى�]�e�W����nS��;��~�V*7�e'9�=���Ѐ_w������t���{(O��S���%V<�3��BHp�᷷��'3br)�U�I+�D�����NBBR�{�Z� [���b|Av� {3�y��$`hj��#'1�#r�:�g�_�5��0)�n��`���J^?p�{M�q�h�ߍ��ßbBn���S��a/f|&�-�����#�=��7�%���ޟ�gs%�)Ng��D���C�pl_%�fO� ذq�N@S6=� ٗ� �Yr��qi(�����; ���C�����]U͙ؖc����@b.�.)Cu����R��i�;�x�p TS����˂�sy�'/����*��!��ݰC�s� ��2�p �K�q��@�U�;\��y(���-��re\��6�n?�O�� A "ͼ�~���r3p=ͱ]��{�B�+?D�gb�d1ܒ��B ���Ǵț2�$��� W�V�B.�M����/?N��*�[;����iP`&�h����`���lB�L�/���~�������оƴ���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME�9�4dBIDATx��\y|Uյ^k�s�=w 7$�\��TD Z;�(ZѶVm���{N�֩O�km�֡�>Q�U[�2��!�@ ��d��{�����&$!�M�`��l�!wݻ�:�Z��k�= ���������a+��� gBZ���Ci�"� %������]�!�^�����)���z=�Z�4D������� D��C%�6M~L��t��b{fC��7NJ�9��ފ� F7Q��ѣ��["�l�J�V85�=�2�C�䜹g�ƚ(T�W�ͭ��Ә�bf�HJ"�>W�d3w�e.���#R��Ć�����\}@��ᦤ��~!��7����eQ"�P�a�UC�쫯?sH�o�[PNG1y/��8)��o�:R����k;�[o AZ��o���[�ԊPZ qjJ{0�!pDZ��ÕEU��g����fħӚ9Ju�4��9�������hy��ž��I1.k��-��~/Ɵ~���}UMcG2����o�$��d Q f<���>���"��7&4)�� U��2��"�%p�K N0�5MO�}e�P(`r.e��yw��T����Ī�;���ϥ��[�� ��e���7>�4�=G��Y��_�:�Ш��G���2Q��'��:�ĸ��v��qiՆBZ�U��������Um�r�����IT��::v�[!���M�N�es� �������4�e�~�c�q�?z��"Cڧ�����=�Aw�2�$�R)�p� A�n��f.���m�QS)F6}Y !@�c�����\k_]���(�7�j�q�AppCW�ޠ���VfFDDd��c;Wt=��$�"T� ��z^]�%�8���%%8�����yC^/��^�n�+���qku�]�#�p�"�+@lA���>ko�.�LP�G���H�ސ��+�m� ��2��\iy��&2%����WU�i[��P�pƣ!���s�:�26���<����� ���e�<�͎�����XC関Z�tjJOJ.�(�c(f��R���ג$Q��#=R#=��=Ac�͏-d�B)l"P#-��8�y4�p ��>�&% ��m5��?��.w�4][���mBdZ�gn���ܵ/9w_1Ӵ, ���~i%�����n�mc�V����{�Ej��7N?㆙�����ō� ęSf]�3"&��t_|���@���j~�8��?�/uؓ?��@�GW�#�qju�z'��.��#QŎ��� ,��c�Y,��������هx�Hv^�pÿ{����������=W �&���y?6�NI��ƅ� 2FP���#+�$Hyޅ����t˥8�%��]����{����~��$�%�O����,�q�>�~���Ɩ���,r;�ti��HJ�5�����˞~մ����/��\ѻ��I�����p��,G�]��K?�q91�SOz�fL]�����7Z��+��K�z�B��X3���3f����_K®�� �I���q�;[fO<�;g�@�LA�Y��8�Ģ�O��q/H5�[fG-��|��Fuˆ�oϿ1��O�^ �%��#����xo�4*������M<����p�걗M���sW� ^�a�F��p��/��9��sG$�\Q�%ϓ6x؀�kn��;K��kT��Q3fڲ՘J��H�qj��Qx���P̴M���� %�Tt$�յ�k(\�4�"kS��N�dWD5�J7����c5�P � �rŔڥ[9IO��=3�Z�QYU'�5%F8��I�]0*%f;Żw6 5#=M�)D$�J��C��A�0Hw�����O2����^0���#�gN�۱ua���l��8��Am �T�Ӽ��5q��q�=�}""cqM W ��põE[>}-��"��������!�xԌ���?�DO�}�]2�bD ��j�Wր�Dl�?�h�³ϗR0)m�=s� 'I�t_���j�UgO�,۲�BaD� �K�$i�󯺰. �>x{G�PP�}���3�&l(l^�"�O�b�?{f�?u��.��|����O�9c�>����!�2u�(ڱ���2;;�e��C�Vy��7�u�5�GϹ8g��v�c� 8��]6O8����V3�n�'ύ��ɧ<������]6uL۩v�d7�`JXa�s�<_���ʞ�3���K�w�_`4X��/~��B��7y���ΨmzQ�H\���W��3���_��\ �u��H�wE�:>r�h]2��Ւ�ީ^[�Z"�;E��+��uk'͛��o:�ޭPb���~�pR�{�lz��y����P��-�\���:�zҮ���2�]�(�\��Y�z�b�+f����H��(�V�K�/{��O�4-�1�8�����e5վ��N�,�`�6h�["�~Y�uBg��xP'd�嵺�� � k$hM��'���M �(fEb�imݡ�����GN���ik�������>����a�2Mîٱ�\ Ipq�[ط&���B��O��8v�PI���yꉏ0��D@m�I���ݒD���^2�����U(~�Pa���Iبxegz��������Hbm�_����H�K��\����>�86�K�����J�KQ��J�-?���:u��]� j��yN�V�WD4_�8�.������J���+zw�HJ�wg�}��aHNM������W ���R��+g���!CY�)_�.*�|�l��x�Ş~�d��h|n-�A�����JP� �T�d�pۢ[Z��iS�$I�m���$h��{�գ;�Y��E�9���3�{�ء^2��fT��^����Xy�@�RWQ/�)~� :д]�t�Z!���4Ŵ��vV��N�NH��?�%)K�|Y͚�y�8txӴkwm�}^yTQY��������RNw���ū/���QJ�R��p)�!ꀬt���_� Z�9vx�� ��%�l��� ��NqF��(�]�E5?{r ��"��X�KI���7&u'��"g �͘���)��7�Pu�fq�5� ��W�����^͹��̘Z�Z��� [ ���)�[�,��p٪q�Sº��c� ���;����b8������!��Ă��>d�´��x��Mo��i���#Z��,[��]�fϘu�!�C n��w^�x��:�n*�ʫ �"/<�tSb��tuaٌ}f���6r�ݲB8eH&>�qjJ{l%;����w� j��$Ms;֥p��hd�m VE��ł�� �R���:�+�tD�����?��уN�a sƪ!m�gۘ�D���FS���������Qi�C��_����A@&#ʏ��8t�L�U������m�.0]8a$�q��0/�zF$[��O� �O8��t�7^:�m�x��ˆ���.~���7��e�;|��'��H]��èbR�$�]��F/�]ȅ��)-MOd�F� �� I�W�n��9�A�[d>y�է{����kZ ���w\Z�qi}' ���yD=l��S��Ls��u9zn�9$���b�67�x���|V#8����{N�1�k��P�[�%�����_H)����3�r��a` h��^\g�kr����F���#�A8���E�i� �D=T�j����� ��o��cu���눘���Hv˓�iACl���M� {c��ݎ�,�_��U�1�ҡI���_�q�s�y���;n�i�٣Y�GȨx�0`�����P��U{v��S���<�XYy-��Vy鄑�N�����?~b�Oq�a/��Č�!�#tW��І�)?7Mꥰǝ5}|��J���o��Y'@H!�ֻݑ�BR��&!�~��nr�~۝w ��Am�R2�|͊ �~��������BQ������fv#W��^�7�]7gF�t���<�R�{��O�5o�ę��pST�r�ȁ��"g�6�:"���oF�R����s/�uD��Պ��ჵ�ge�Ϲ����(�w��=��F6cǏȍ]r�K/!�ڳ��U���N���B&������8>��ۧ��W'��(Z���� ���^1 $��7�����njfX��4m䄩�L>�u@@��<���TU&�����!3�|Q\�)��]ci����ɄVd���Ix����|�l���9NrF�JjjRI��=��Y��~�`��i��9jGo�Ϛc�e�&�[z����5Aa��"����;��?�Čo��B��I^�M����p�$!#�vIEm|�����1��&�2�04s��S�i�(ܳ���.�4u�ʔ�A�f���J���_]]�rOfj�2"��q���<}Ǖ�8�����Oi�� �)��' �����o�[ �ҼzβF�?2ZQ�ֆ��B����Mj��VR :�[�GU%Ks�[����^ն�O|T(�E�7�ԛN�:��Ñ���ΐ���n�����,�`��dM-9th�� y˖~�ƍ�Ƭ �k�w-�rO� S�t��C]�C��󳆦����_��$J�u�@�@���$�V[]u�|�>}�ڪ S ue�.pvŰ��H������̌�^��j����qh����ڞ/��e:d���y��)BcPV���� �V%3D��4_�X�[nI��?�-���n�i�\[I[�����I�����ֶY�t���(�L��1�^VN¨�������?_��{ڝ�@�$�j��㌣���8��{��J�-�^ *�`E��]��������n-i�y����c ��e�������::2D��J�|Z[0>DI�" Ui��.��'���?��B�8;.0Δ#6:���I@�}mӘ��� �!H��Mɹ��&n&������XE">�֚��G��6���֑�7? �m�BR�7''���wtX�Ei�a�)����*���]q�fm��AC� �v}��<�Gc��ꐫ��l=��V��o�w�3���冃�eL *A�xk�.T<��� ��/Xg�T���5�����)AwS�5n���5�j�6jz��3�cb)q��mo�l� 9/�Kx����X�ύ>���*qFF��s�5N�KF����O�} ��- D�/_]P<=kxV�/xT^�3���������kR!譀��.gLм�ܾ:K]��G�x"���^P���t���8r�Sǚ�� �M�8V��ט�N����DF ����;��ZE%���Aп�q��!%���xT��Pz��O��`:�� N�L�@Sm)MWW�}5 �����ސ�Z�!)���s�:Ў����E����+IEND�B`�Inquirer.js-3.3.0/assets/screenshots/raw-list.png000066400000000000000000000351601315775736500220700ustar00rootroot00000000000000�PNG  IHDR��|��E pHYs%%IR$�:"IDATx���}\���O-����*�B ��.�*X *��I(?ȬP�Һ�zM���n�x�kY�US3���2�>��� � ("�*� + l��3��<(�����W���B!��2i���"�Ѵ0��*�����F ��bտ���zU�%y�����1q��jZZ��)��w�Ɠtb���׆�7ix8ƴ�~ڦݧ)i��a�=�؟��Z���}��5�JzaK��v���fuu��y�e�ʮޤtҌ�G h��wr�e&B�^���?��mm*צ?PD��0�){��j_EEQ�-/���NBn�k���i�a�������`��wa��]�M&;�~���րICɖ����qj��M������e�i�q4V˜ qcE\��/�rc��^�<��Ic����Ms�J~l�?v� L^��V@U�+K;a���M�s��C{d����rmT`���򌫷a��`���-Nd�iaig��k�fo�:\:v�e� z+h08R*��vF��j�X7��;������S_��"��ȳn��Ss_q_��P70�r9�n��[�S���5#�"}�/��>:y��u�����N����������Mg�mʬ�cZ �93VD{�@��ݎ���迾4N*���5���+�+mG*0g�E��dV���vG1� ��o�Z��r��r�,61߰cey��-P���ꄖj��4j؀��m�d���gӐ\���s���H��J��a��T*J]W/��0������k�Vz�@j�\_[, �d*hn�٨߲�g�WKCm��� ���h���3c�%CD"`'����V�1H��N�*�N_�t�W�z�pP�����̝KC�V��px[�3O;�Qжc7�cМ�yA��:x|>SFn�fݏWؒ �� �v�+� ���m��0?�1 ��GC}��+sH�"*��a�����R���-���D�� x�)ШU� -�s���֖U�]�ls^�Sɠ9��-�+m �F~v��n��J��z��J `n�{��@����������_*�g���<�5���]�Mpcr���ѱ�l�l��:�:j�W ��.��i��A�� �bƏqdV^�Ӫ��t�!�vo� �Hwue��&��d����٦\)��5~ӟ�~��� �|�离&���2�7��0!�:���F=Yt�d��z��G��l|�WVu��;N�fǡ���e��^���8�Y6Q��nz�/d�m���q;I�KO.��L��P�rWΉ-1���L��uڱ7��Osx-T6j�ǡ�S��'j�����堲�3�vK�NS�����T��.ڴH��<���YU�,����y������~n���l؍�?��2DD�3�B��Cy˟�:����q�?�.���+�y �~��-I��|͋�=�@k�7����Eq�JYU���4���|Hyl�'ǶB<:|jh�H1����,�0r��s�m�K����o+������2��h����ڔ7�#�f�=�:������~vPf���'��A?/����ZFÎ��d�,"J��c"�w�j&�3��w�w8=-:5�u�uDH3]�D�����b���TrO�D�?1�q�C�i��]����[�Fk�V�� �vp/x��z�}<ϯ�� �w���� f��69��l��:\��c<�V�W���?o�1���p�o�!u�G�2�;E�S����n�al�QŁUqFҥ���0�H]t)�=Ǟ��5s���]�d{�II]��m�u�q�L����5,rꠁFxĥ��̯?$fF�)�A�dz=~�2O��o`.H��h]�ۑ�7�M���Ҭf���k���}��.�x�Sok�IC�� �n2�*{���ƿ,�{�i������q�1V���F�����N[��sQ�aS��[��%P���ޱ��FmO���g�ģ�3+Rd����:䚺��MM]���8i��m����w�]����|ELV?}�p�����u]}���|�}����>^i BX]�:�j��`�Q�s#����Uc;�- ��-�x�Н��u�� >�ѳB�ض�in� <������Sf}�2��;�V%��بY�Y�3���/p����$�ą�����[g�����C��-�}k��/4\���v9!E﷘˗�I|��/�����co�s��ƾ��N�J�����”���A�|<|����ܾғ�+ �\���f�� ��/� �� _�2��u?^w�|�h{*��m��y.�Z�Ÿv�,ӿ}ڊ=m�ͧ6�C;����P��MVws� �p =����Yӽ�=�h���CGR��s]�^G�6�Q��;8�q�|�A�� 0A}����m��j��;�7hܐ�P(L��W���\�, ���,0�Q�S��tReia����Ps������j���6�]�������)P�FfRZAǎݐĜ4n��W���}�t��x��.@��2:�ic+��@���LQ_��3/-=���}�\j����R�+�J�S���4n|G��,̹�Zu�LV�i��)�ɹ�ˮ#�a�сV&&�2��7��DX���킕�S�ҠS�&�CY�u,�:Hj�~I��/�F�u���RB�1Nm�@�#9���-~����� ���e;O5� ��5 !��>�IJB!�o� �B�( �B�( !��>��B!��� �B�( �B�(c��f��W_���Jq��ܫG_/��.p���buY���[�)�B� F�/z^�œP���Ǚ��c�� ��Y�����q�3A�Eg��%K��-F�mJ�5�)nШUUwJne���Y��i�t�}���Mӧ�DŽ9�K,��K!��z8=?祗}���X4���8����.,��_�����)�F��jamccɅ��X끎N#|G��4����z��kP�%��)8�v�=�a� �����b�p\����oU���p��դ����T��?%�g�dzv�K��vn�\�;a�)������{�� O�[�?�L� ܟ�K�1��T�W�ZYhʲ~9���ʶ�B:C�â��5`��}[��I#7��b�8C__����Le��B]x����ڿ�ޛ5�iG��|�.�h��� ۯ'Pv%�ҙz�u��)������睸RѶ�d� 7������Dtt7LC����iE짒-lR� ����C%W�/ */��x����m� ��_�]�p�)`����Ǐ^����/�������`�a A��a�/�~j� ��QW���Ӿ4� C�nj����s�7]�]��3��]yf��s_�+�@K��/�2q��#W��p�F���{�����?�r�4 ����27���m !�t���x����ٗ�ݥ�ޣ�ZɤIG/vf)�S����?�x�y/6�i��O�� ���_�|�n�n�[��,+;��Q��h�pf��8��Yo|?)C;����5}��pm8����Q����e�@G�y�Ԗ@e[B!��Wvt��K����C;sŖ΃0C�r3����u��N�o��Ȯ�e�� �8=̙nh`��-G/�Fu���J),}f�1g��^���4շ.�=��o�S~�~���h���ݽ}����;w��Th�=�J!�t��wԲkn��\x�����s����|��R[�t�"�D'�O3S������i@b��+�o��q!��k����埾��h-0t�ʗ����G�srl9A�����������*~�nǯ̠e���£�J!�3��n��������668xS�BgױϿ��F�e����Ӕ`�c͌����FP���0��bOa����m׎/����w�����h�8�)6н�py>�\�ږ�;��PV%���zgIP[�,:����|;��H��#;�fk��J�رf�>aa&<�5AC=߆}��Z���wRv��B�EE��.C-������J��p_�?fʭ�K��_����ʪ�B:[o J�(����zeI�/����ο��� ��>z�{֡��������g���r�s�c��L��3A�ʻy���x�BH��A��D���Q.;�s� �woe�ޕ7yw�h�몫�-�;ᠪZ��5�*������^͎���7?�k�����f�TS��ǔ��ό��2�D!����[��~��:������m}zQqi�`�%����-4w�3xITߺ���?ՙ;7e�����O#<��0LzO[�E\"eMB!]��V �w}� _�����z lAu[��~���mA��d�����FA 3ܽx��ؕ�oȼ~��u�Q�$����"h`{��4�� y�al�>��̂.ܱ���L��a/�8ֲ�tg��}�������9LKB%g�� xL�=�I�(o��;[�]�#R�� ��Yz�u��O�8KSh���#S`n)�0�� �1ŝ��Y-W�2�Em���*�t7 .\�7��x�g)>z�����0d���g��p���ѴF��-�a�� � �Ə���3X����-�������?��,�F��[7��jX���OϖK��[}������)LM��'�]4�OB�uz(p7v���e�'�ɽS%�Z E�^��b����:���u�����b�V�/���9��J�Kz��>�sGOt�?��֑�u(df������4���� �������?�4�]� Bi�z�@�~�,u�-�b�4�2�֑�\o���{���-�ވ��y���&��o�~:�����%�O�z{mV�.��8u�z���"�?Twe�7��B�꛽��VQ�%��OH<��dW-�}w��g�W��E�W�����=�x��LQ__��U�!�������j �en��oU\�[��*�V��ٸyj��e?���)P_����QD9�BH�1�&��6.�1^��ֺV���vs@Y�u��7iM�ݢ��6}询�FE� B!=�؃��y3�����N>��� :u�BH�}I�������Z�ߦeT����ޗ!��=�~Ϻ{⇤zq�[�/�*zC�6�$�BЫ*9K�jT(����Bѡ���R]!��?!��ޤ�~;�B!EA!��GQ@!��QB!}�BHEA!��GQ@!��Q=�O_,;��ZZ���U�]��+Ov�4?�� U�o�e�9��9���Bi�� ���_�4��Ɏ�џ�Qɏm�����͞'��sy�� �D��!����iRi��m4'�UoN�F�� ��΅쪤 B!�ϫ���)����4���.X��y�ePV��_l��`�����g��o|�k}Bv�7n7�ٖ/��3Y�9B�������f��:~��FU���ˉ#�����j-o���OW4���~���u���~J8y�� ��G�W������������$s�˔?!������\'O_9t�D��qKB��Ͼ�`s�񑫷,�0/�w���XU'��܏���d����A!�O��ZkH�vK�������c�}��b�mg����;e5qv�P���)sB�s3��F��d�U��V�ǧ�ؔ�{i�L�}h���j/ \��- ����*�^:�kp����$�:�/���4Tdƭ�S D/����p�e����o�Z��r��r�,61�2!��bD�8NY%��ϴ:_���9̍��L�����%���84��+v���%CD"�H�.�k2���c�H$r�pw��)�D.��}&����/a"<;ɫq[����F!ĸM�3s�k^̠�®G?��p�^��q�IKg����x�����u �� M�씆�Z�9��Kg�1�� �\w����[Sv#�bL�#p �ji���]���c旝�ck��Mvt�V�+�`�Mʶ��:���oG�,X0��(�� ��!�#�&nXɼ��"su ��+�*b����6�_�2�uE��ϒ;������ �d����mY�=��J�B���� �*pæY"h��V��$�m��(T�����g�@���u�;�B��������"6�0�gA�B���� `d��o���)K[�i^��̓����͘ö T���I^'�Qsf�f�U�Bz�l"(\�i��y�� �,1da/ǎ��+o1 ;d-�����fS�����P�#�b+�����YG��-r����|e����E��4����̪��Q@�B��� �-2̛�@q`U����G0o�ʹ��/ �G g>!��g$>��a �j �� �m+�7�Dl�GE��� B!Ƥg�� X��S���G���7N���Z����(���,�<|�Ѻ��#�o�������F���KC1����@!�������~�O0t��U�L�ICف5�[)!��Kf��ҙ�v���V��[E�͓�}RI���Td3���>�#���Q���R=`����> �R>ޝ B!Ę�T�@퍔'�Z���i�Ͳ���'/��vɧ���֔�i�-��N��GIl@06j�n|y��{��%s�u�� u���ͭ+��!�b\z�u@}��q��jZ�@����M�v�3��Q������~�A�ܤo���L��:����iT���WF�H�!�bl��xH{ɮ�#.��g_�� OD/��]�L�q��(��SZ|��(w>�N�|Mb��#�[���ɨ9!��e\�n �Q*� ����Wd~�}����V꠩�SP��B!��؃qĢ�Q��c�e'֮�EwYB!����$�T����B���ӔF����!������}���қ9��{��=�)B!�D/�h����PSSRe��B���W �-�%�t�'�қ."[��Y?S�zEavRZ���9N��ꈆ��7����\~W���KG?=x�%PW}�G�����m:�����<��v"o��� �l�4���������C�q���J�����I����Əq��_( �����;'�fO8���?~s�nLYQN~q�J��)p��%�:aB?��Q��O�$�3x}�j�����!��ޠ�JT�(κt�Rfn^ɽ����M ��%d����cUPy~ϊ�{~p�[3B}�����ے���;��b�f����?:S����{Ԙ���"N��ġLE!�w�Y[��iy�į�ϲu�'olIk����[y ��l�η�j�փ~>���N�f�g�����������'P箌�ͣ�E!���X����'/2E�\{GזJ���Y�����rF;�m51��P����f% ��%@B!}�Q}E0p� ���]��<�+6%�^��.�cF�t���x�6�'�?ن%��[5s����-�W)n�ݿmGrA[6�p�h�~ 0ǝm�>��v#(2:c���9̍��L�vli�'f@q�T�c�������A҇�`Pȼ�>_�إ�?��/�D.."���"��%�� �h#��7t��g�B�=Y �4��V4��\<�EL!4�>z�;����_��b��9g�f]=�y����ǽ������P��ʌ�3Y���)����0��⭭=���\�>D�g�(L�r�vN��կ�jyV�V~c݅�V'�B�b= �+�6��k]B�㖔��S�x���M�3��@��F�x��9����nn]���9 1aOؒ �]\�5�Iq�9��}�i� m�������BM�0�ſ~�x�>">�͸%!�H�^�N��z ���z�u@M��J��4��Ɔ-ΰ~̢YEl�@��{��*�����j�$o@��{]㾃ׯ�b�"���_�Q�p �� ��"���>�q�l`�H����FB�m�L�H;I��LB!]�'K�-Hd�����M��f� p���}��GU��Q�^Ƕ�� ��`?v�“�M�ʏ\��2��p_�kTz��xç��&��?�%d7^��Þ⚿i�ϔ����ڞ-���@!�t5#i O=�'����U�����S6�<�e��`ۮmY����xn�a�e�:��-[o��H�lbEEKj�P"b��=���fo���k��<ã<) B�)����5; �w��nn����ñ�ɾY����c�#�s�g��յm~A��]�8h����O �>櫕 e T��*ʙ�B��Q���F��?��^K�vo#3["����/��2[I�u�k^|���!ZkHд�`e���s���;����yg��FAD���Jow>���%���W"B!=ƸJ ]a��f ��tW�\�6t����O��AӢ�-"�.�G5��8څ(+��7��<�����`[8p�c6��k��P�0���)�B�A=X [,�����֨+��zCAqD ��^y�T��[Ϗ?�džn�s�Z��_�Z̼8�����ȭ���F!���V`���X����'ݲ<\75�P�R�EA�f[u ��g B!��ql���+>[�N���O�� J+��5���^�� O}�'���{��_>�� ��OH+n��R� �ވ���uwR��X; {�շǼ��N�V#��q���i�����*/(��X����L)�:��?��EÃ�Mͽ?��䥜0�v��`!�+�w췛�����O[.��w�O���V�>*`�+�ߙ?�g�m���R�$���z�N�� ��7D�2������[^Uቸ�-;y�\mi���������k���7�88�A���Z�`�e�B�6�;�y�p�����\�ދ��[�2닕�͓�\;�w�rkm�A±o�=�Z�#@�_xn_����G� ��[���%!����3�������>�TY'���lWk���Kg��-s����>���5{r�T���>�C�5��I[W��ٍY.;�hN\�J��y��TnY�*g#��̍`_=d���{r����^Uv�ׄ#2ʘ�B��i�l�a��ў.��V�&&hxp;�ʩC�KZ]��py�� �u��e�:eG��� ��7AC��{�ׯ�NNo��}�� ��T`Y��aYigl��58�k`?S��+���KKϫ���B!��� �B�( �B���o"(����_�ͽ�+�W�9!�B�Eϗ>'��V�;���!��Mz<!�j��>���B!ݣ���I� �˨�tJ!�����A��у���G0�B!�[�l���>�|�1�1S�I�亿�f.fu��ջ��1��F��r�����;���[�[��F �8�1��Jq+'y�ƃ��h�L��I����[O�����O��I���Xf �o~��\ٿn�y%�qPdtx�X(`֪Q+�O}�~wJ�-[��X�eM��u;�+�����8��Ͼ�Ш�w�Xv�Tog�\=7D�T� >�Q~$�ҍz4���MY�;�ARW��8���7��E(P����i�ݽ\�0荿Y���d�V ��;���l��� l%�<턃�� ]E"`2��+�hO�������% �>HԊ�p>@ؒ �� �V������6x�{t#톸����tL�̱�:��߾鞍 /af� }�"\e �# !�t��|09����+r��=[Č乎�m+'�,�E�ʃ����/x��b�_���v�k�值�a^κ�<��F"?��wTe���ES%���_�]��$ >�͸%!�H�^�N��ž T�g�.ۜ������U'�F ]��E�v)��#!����s%n�l}u��4����߸�Pd��c"���gz �@�$�6�Z��*v�fQ3����۩Q��������] q೶��b�Rwl�gv�N�R�����6����1�e�l�����7���n���1 �� !�t�+ �����7.3�N_* I���q8�����u[�u�L ��J#�q�[�#r�p���dz� %w��A�#�y���:���������Ko���b\�""M�����:k{�ԁk�kvl�⭋v}x㪬��VS[���m^y��Iʅ�BzDO��Ù'hM���Qy�.�O���J��_W>����y%*��p�io�[���5�K���%�!���Jy������5�KRo�^������K/�}��`!`�4�����r�t/�y��Q�m<��c��5�3uߧ��(�B1:=8��ر]���_q655CM�;�@�N�/Ӵ�\MC� w�'W�I�<������޿�|������G´�+�u_���P���c�L����m��]s��7�קhwI�TԵ�XT�5 ��=��E!���L !�{�Fz7�A(�q����[yl�'ǶB<:|jh�H�- p�>�?���A���%���m���O!�虊���\3�`h�[�6�w���� f��69���s.����*m?ŀF�� �jA�'���P(j�����S^!��'�#A��A��/|�����,�y����H��* �77�I�Teo� Y����㗗���S uin*�tj��z�%���t(�Y�/��(�y3?װ)~�HqМϷo۽{��K"�A!�t�x��h��jbi��gs�=}m8���۾Z��٠`���)�WSSSe�9�e55vC��FMf+��U�g�QZ ��q��W���ӗ�_�dj%L;B���)g\�;������B!���+\�h�R^�IEND�B`�Inquirer.js-3.3.0/assets/screenshots/rawlist-prompt.png000066400000000000000000000356021315775736500233330ustar00rootroot00000000000000�PNG  IHDRwsc&B\ �iCCPICC ProfileHǭ�wXS���$�P�zGz�ދ�t��@B !DĆ.*�TD������@V�E��" ʺX���&���}����7�7s�̙3gΝ;�h,�0U C�#��f��'0I���K;[� ���� ����ߊ"��� ����fg@>���r H����Jxdet�n ��r���F�M���  �%J�:��\v �C�@�p��S!��y,������8�/vR��f҄M+e�G�"-2��la:k>���t��Z�R��"C����f�EBV���� ���xG�ɛ�9AQ�A��F�q�8-� ��/i�!}'TU�4= �d}v�O¨M�!�;�����A���eF���s#����<������`���A.f��k�>����ɼ��s£��j�O[ �4Y�1Ɵ����J���E���r���i$���F}��x��q��0]���X,J$���Ar2W=f+�|CFc�U�"�I@���;�2�\[6�鰊���=�g�N��-B�ބ�ϸ�|����G�|�������;��V� w�kh��j��8�bL�=�}.��u\o.�P�Ø����<�ZӰ����2>����~D_b џh��Ďb���X+֌5&vk�ڰ��a�XTD�����@,}�W��cR�)�DH��`b�����YÚ-�¾��5�G�F����`�a�q�,p;q/�~{(��q�Xk���̕�% <�����ˑlt�L�|?����%ל$`[�3m��m������2�g*¸�]�u�b(L�.c�p����ezo�o�ʓl�(wT�K y����ɡ���6��O��A��`�.d@�����l`;�����h��,���p <�]����=F��P:��h#�b�8!��D �H"��1R�,CJ�R�ى� �"'��H+҉�C��~� ��P ��j���� �BC�(t6��f���rt Z�V��z�,z��v�/�! `r��,0'� ��dL�-Š�2�;�5��x���O8��L�~�@<g�Y�"|5^������� �Ŀ� ���D�#���e�=�� ��%�'� ����xb*qq5q+��x��I�!�H$5�ɍFb�rHE�-��Ӥ�^�G9m��L�L��~�S2�e�� �*�ȺȆ�rd�ˮ��-�${M�Wv��H6"���ȩ��r�!��C�[999]9g�r|�%r�r��.�u�}�(QL)>�Y1e e/� ��-�J5�zR�9�5��9�c�G�fI �qh�i��z�u�+yYyy/�9���e�G��(�**�(�)T*�P��0�HW�V S�P\��_�U�O��d���QZ��K�R���}�l�2�n�z�2Q�H9H9U�D��r�򠊒��J�J�J��I�.�0d1�kG��'iN�ĝ�jҡI�'}P����U-V�S���Y��槖��^�A�:�n�>C}��6� ���'�NfO.�|d�} T�T#Bc��.�6�!M-�M���s�Z -O�T��Z��������|�ڧ�_0U�^�tf9���0l0�3R5 2�7�5zhL5�0�2�6�iB4q2I3�j�a��ڛ�L+M���ff|��f��sgs�y�� ���E�E�E�%�2Բв����) S�O�4囕�U��n��J��օ�M�olLm�6�67m�����mm_ۙ�q���ݵ��O�_a�b����A�pȡ�Q�1ѱ�񎓲S��j���go����Ο\\r\����j��ߵo��T���S{�t�Xn;ݺܙ��;ܻ�����g��_�7��ط�O�/گ�ﱿ����`�}���3�������w�4��A5A���� �χPB"C*B�����B���ӂ�m��p��t��0�!�Q�QxV�o3�3�gT�xaQq)�97r��(卑Q�����-1�1�bjb>��Ɩ�v�M�[w5^=�ߘ@J�Iؓ04�o榙���gͺ=�hv���9�s�眜+?�5�h"!16q�V��5��T�4��aof��xr6r��n�R��d������ )�<^o��ï�N Lݞ�!-,mo�Hzlz]�LFb� �� Mp>S+3/�Sh&,ve�dm����d#ٳ�s��%�Ml,�Iܝ�[��q^̼�y�y������W�����|{AK�N�҂�^ w.B%-jY��x���%K�-%/M[�{�Uai�e�˚�k._��秀�j�hE��;+\Wl_���l_e�j˪oŜ�+%V%e%_V�W_�����G�$�i_�v�:�:����=��+U,�/��0mC�F����6���ZfW�}3y�xsWyhy��-�|��Uܪ����ҨZU�a+g��m��m��^������;v�WV��"����lw��K�8�R�G}Oɞ�{{��E�;_�XS�_c��Z�V\�`ց���Y�YǨ+9 ���5���GB��u:z���������H����^CWc|c��-M�M���mo�Ns�I��kO�O-?5r:���ᙁ�)g{Z�<8w�����/�\�|���K^�N_v�����z�ӕ��W���ێ�n���v���k��;�;�:�v���q�� �oݼzk����ѷ�ޙu��.�n߽�{����~��!�a�#�Ge�5W���_u]]'�}�۞D>y���y�4����Ϩ�ʞk?���k����x1�E�K��ၢ?��ze��؟�� � ���y����۽��޵ �=~��~�C�G���>9}��9����y_H_ʿ�|m����H�Ȉ�%bI��hr2o�¼%�: �Fs#iAF�9)����IZ�� @�B�e��)�)��Gy��v����d[�Q[�>�������W����֑��0���p&k4'�"���I��}��s��u`c_�bKGD������� pHYs%%IR$�tIME� "F��} IDATx���w|�י��=wy�G]�! 5$T����m0�q\�'Nyߝ�L���Lޙ�ffv2�M6��&�ē2�Wܒ`\�M1݈"zQETPo�s�������OH� 5����o��d˳k����Y�C��7x��i�Ÿ���8.��PWy�}5̓��:�m�0w�Ŋ��+hn�Ǻ�Lw�7��;?��" ���By�9p�q�u�b��� ���Ź`e��{-��`�`�N䋫�`J?�?t�������� �ń����1�t���=,6����[�߿��w�_�$g�BV����w�u�:�)����o�w�X|��O�K��s���bI��� ���/����$�S3Y� �#;z�X��^�N�Bh�~�R �I����q��]�*.�/k4^�P���A�f�|M�ܳ/r�3(N����v��Fũ��^EY�Y04p�>����ʞL���󁓠�i�gMg���|��Cs� ��G^+.[j?���yǁ ��� �$���%��B^Z �S�H0ȏj��be�8;�� &ƒa�s��?�] � ��t1t�����%kj�����Q��c�^��Z����Ɖ� ����PEFY�- �u05�� \a�c�M���,�܌4�¼7�����􈲙=�bn�D؂�C׮%>sj?eM3ȋ�����O���h�~w3=�g�=�|��5�L�Ǒ�X�.\>xko=`���?>Bo�!������wtb��KwR[������K\����V��̠�h��v򃱞_|�a ���e�%��O�����o����1�(&LH���`bt�`hM�@�1�볛��k�]8�����QK4MP�ekwW�.���";1�+%ްn��0������}c���hg�%wJ���~���Y��B�������D&���/��r�&JId���8���Ɠ|��hv ^{�Ǎ�^a����f �NV~�J������ |N`�1zs��l:�2���C�e���(�s�������_��/8ѣ��>��8���c!�ӿ��~-g͛&zg3�<���%���}�7��gbx��(H���\˟����Ƴf�\�ߵ���6T��+����[ΈJ!��������_?z�+8}� ��ۘ?�E����|.��/$;>�����s �Ո��bfv}罤�>� O�|�>p\+����=,���L%0�#�I-�w� �>6�������;n�x�T5��= ~��f~RJ,�!*3�Dzs������v׉O�ζ�ʻV�൰,�����5p{:6������������������PɻGZ���b,{�}�]c:n|a&��<����[8��~�3~ �w6o�6ɉi�OđWP�F[�P?F�~ϋ{Ld$����&����7���G�|�?�Ѥ�O{9�v�o����'f2+3a�����w��6)���P�@�����{�@�]���|n]:�w�^��\�`���ݎeÁM���������[2�~>)1�! tN?����0�o�〩��y�Qv˝�W�@�6'�o��O����c���]쇗��rt�{�U6��������8��=��8XVJG�)D�D�\1��SG��� ��\Ac[˧kg���W^Ɛ�'�__#O���W�_S�E�i��=�����“�����p�(�=�����K�x�!�#}t��w��O �}X HJf�Q�>����({����;�2ز�=����VJ���q��B�-x�?H������� ��&[J� {)��l���x�dJR�#��wh�E�H�1ڝEDE%0�p��ʷ�M�br���]�+{��$�`��lC��D�/ZIAQ#[�a���j�8�w���KazJ("���w���2�Fi�:��Ox\K��+ DLW���˱�^�B�.*�ώ{����Yp��:!m��6��lw{��o���&��[���h v���e��sh&��ȣ���N���p��-�c�D����2�8����w�=��ۼ������]��0�u�)� �)H�/�~�"�kZ��� \0`����s����LyٙZ�;��R��pWr���K�]���$S�-bQN�MU���p�7�����1��;��q����SH��l<�_GK����� s�4|���'N�F��q:�i�5���]Axllp�k�\Ľ�s�r��~^X�2��o�k�9�U3�>�[���%3!:8��륦����z�_��]:��ǀ�󎒎��&IL�c@:DGO� K G��P��`�I,+L�9�A21"�'8�/,������t��Vv�$�]�h���.�Z\����^Z�kjS�>�(�ҕ#�q]�����.���W�~���|,�]‚���n�=>���B���p�:Y��s�8�5s����|���<��ᾥ3q4���m�5ut��O"O��K�ü�tz�����c����Җ ’�����>� &��ك74���9 ��r�n!"�A�b�΃X����%���U��ݍ+<,�S��Fuk'�1<�(鬩�վ�p���*5�,,ɦ��6t�i��;������� ۾��N����2 ���n�?����u�5��)%<����� �I�L���ڭ��-��Ο����7���H�f����m�Lh���]LJ1钖W�SI�y���q�H۪�� dz��|��ꔬ<��n�>8R ��˟���B���^��1t�˖�`q~��G߹����M⹇�I\[`���u�����x=xM�b/��v�ZʪZ���ă+W�f� Ll��{���:��yϬۆ���-*anQ&]gj��[� ����p��O^ތaħg3�0�ֺ ~��� !9=5����[5 |����Yܽx.��:���S�4���z�c��u�|>�j9ݽ�Ԅp+�~w�؞w��$�|�-� "��YX2�ަ:~�~����d���0O�Y �d�E�������͝Jv|��=ŏ*�Ï�t|���B�^<�;���z�)?x�m�������~���6��M����/�.F��.)����-����y�����`䎐�E��Ƈ���̈́�#�����˿drD�����Ṃ@�t�� M�2��&,*���P4]�de5~a^T# ����D�;�Q�� :�s�:cm�%��%w�D���R��G鷂/>�m1��)`��j�� 59�ȐtN���/L��Ҷ.ä -���s�7v��S�_�^@����b��a�[��9 St��R��|Vq �!;}�piih�)��#�9F;��?���ϗ�Q����e,���_�K��c���' c�1�+�����_� ��a��D���5��>�?���@Oo �w4�cL����s�6PV�q�m}r���,�s rio9Ù�^��]6]c��͔w�b��u�5s.�CqCDzI��%�s�]q͈���_ݞɺ�(;Y�Sy�UD�zy�Oϲ��KJ� +U�%�]1���+m M0!!� �W���ޭ0q�.�S��z�.���"���".5���d�&�W�T���S��^�M���5B(���> �T�R�1$���ˌ _A�Yq�q�'Ld��T2&�54�ڨ8u�� ]�cR|JJ�e���XM�*?��یK��A���i�2)7�2���]a~Q(n��L�P(J� �B��}HIxT8��y)� �_v�9� �B1N>��{�$�Y�K�=�a �&����0��5�{3�'[�?��uH�;kh� ]��R�B<ׇ�����?d��Q���ٿ�R�F�Bq������N`�7$j��1hߵ���0q7m���.Iy�$d�3��_&e��|~Lj-]G�퐵�V�}���Mi�H4J�l����sL����[���P(�.:q��p��=��{���;���8��G�n�6z�am��� �}����ϒzKa�҈6Zh�l�<�!m�|B�t�����{{i�o!tb"ް0&gER���8�^mq�h>����RW���ߏB����v1w�aBv&�u���/����m# ��3������ q�*����X�}���s��q��t-�� BG������әT�E�����.�g]��j$�f���K$T�x�b�T8���t�c��X讃� ����*�(,cx�����t .ɣ\�hu4P��0�M�h�|�v��Y�Ӈ�ih�� Po�&~�"�<�ApS��^�g�o<���̚_| ��]l����_\�p]�и��)6����8�a�7�"i�\7���Db�������3�����6�&�L�>�kN�kR�Q�P��; u�س���ww!=&a�*�N<ڛ��Gڈ�V����͚��碹}����ϿE�ˤ��crVȠgo��#����E��6N�� �r��2�~wI�ӗ.�˖��A_}%^�#����#ol�\e���6����ѷ7S���?2��B�P\מ��`5�R�G���2B9]k��4N_l���\�]���Կ=�~,���۰�����S�:�w},|t Y%Ŝ��5���!؍U����L��,y�V�s�Oe`��:Me��--L�V���>o@��$ea8�9ɪ*�ψ������'�0�'@��3ø~���{4S�u\��Ӹ�=l? ��&��H�oB9)���|q#���Z�M?�������HS�� 4�jj1�%����f��|�~jJ��uU� �w�DHV ���N!4A�2ۥ���se�hk���n�+��I��F�ʑ��a��U'��ӆ,6fځTдw [�]���R<�ɹg��M��wٻn���v* �M#�K��H�4��%��F����M3>0�k�&Э������3� cq���� ���L��[�I��C���=���1yf �g���h9�::(�U�J�B��D�.�����&hV ��*(4q����u��88���J�g�#%��|a�^nY5W����\��I1��>�UUx�%v<�M��$ŏ<�B�Pܐ���8c&��&�u�?mɤ[0��¢bC)��� � �]��wi�u�w�{x<�_�>w��w��'�l�L{{32���3��l|y�`�M�D��&9w�G���9��}M����(��W�u����twv��t.�M�nJ�K|~zt:NG��jA�B�����!e�|R2F��K_�4!1z�}s�Hq�a� �,�N{��b�{�HtӇ���nIo�~��Ƽ��|Y0�.z)?U?"/�c)Z� )%8�g7־�N��W�frQ SV&0�C��lG6�(Y���>��i%$N�� V��: ŕG@�i&�@�2�����7 ��� s�2 D��W��xE�����C !�Q5؂��ih�������`xF�D����ؕx�w���Lzϵ�h���c��1!}"ްP4:*j�铗^�e�`[-��CS& ����B�%���G��JEHMڜx�9��������`4���]|�RjX=}X~?�y.��.��y����( � %� ����t��&��;��-{跴�'4���h���+���#A���zh�_"f�%sQ!nG#�eu*�P(��+ ���A�� �B��]�P(J� �Bq���e?�{�ć����j}�B�P\ ��T�o(� r�OM"6:C�4�7���}�����շ����Z� �v���m�ٗ\����/=N�G�Ye�S(71�n��c�ģ_!?ɇ.-Zε�&]LS��/�����ΜFaf9iq�R���.~��t�Y�����_g���^�t]����~͞��z� �By�co64*N���*��ς��#x����O�`V�d*�W�����kO)щ�|���Iϛ��m�ag�����6m�g�l�쀟w� ʰhi�ͣ޾B��i�v1wMg�޽�յ��x5N�n@� �&�-������i���� ��iO��ã'�}���I$J��޿�*<� 80ҽ�}p� ��L�� �2R)J� �]�P(�Ct����y����ښ�����}�F��!��M��$w�2"u�����h\�E$����B+?{aC0흞����5�������M�����z��P�gAK����2�RL�����8'�‚BM�co�qBeXR(���"����c` 8Q���헙#4��܇4 ����Wv]��_<�!l���:���p�+����[��{R����̟*����g�7����k����%Ƅ�<���_�B�w���?Dz����c<��᏾��Bř~lN�$�4(��w�^�C���h����xB}��;�?��68���o�� ;w��m{ ��3!��G�<�I�t���/mB~ܞ�����t���%)9s��5����V\Ѧd�f����gxABC�Y��]q�H�P(nn�Ak�~�v�� ��0k� {�Sm/_Z5W���OG$��ȯ]&�HO]m�a�"��Ci�B��l��d�E,�I��\ſ��w�Y��IqM���׵��O'��C�)�����B�̥CQ�d,�b��HS�g%����� ���A�P|V�=���������G^~R���k`X�8X���D��� �]�5�~J�����c�Mlr���A^�ކ7�u&6{�jZ�B��F��ԡ^�tl�-_�:�W -u<���%�Z�Z:;�RWvk<9E]���(���2��N:��I�ɕs��b�W�NOW��i���D�*ip���������0��P(>+�.����qy����_����|�!6c& s�N/l+a���a��!��L���Y�����"r�J�Fי*�}�1�� �鸠���bX}�B� ����y���`��)��k�����ST4-�V��F:� �jQ ���sl8�5�k[V0���~�,��{���H�9*��A6�::�8���5�k���?�!�cp��[3�h�B�� z�^��c�\͔�d]ڼ��u6Tw]و���u��:L�TLJ���tq������u5������}Kf��7>��-#)N�F�杭Fl5|�&�� %S�qd09�.\>xko={���s��C��х��~�;N����.��S�g��$�&(ݲ���+վ� ��&w�an�\Ңu�c��L�����ޠ׸̥��ޝ���T�����j�ߨ+29�t���n ��hx��(H���\˟����Ƴf�\�ߵ���6T�_R��v'+gd������[KSg0�HLj_�������m4��qŋ浪�7�i��P(n��@�"kj�ŅLI��m;�.L� �G�*�*��c�p2'��tI۶�@ok �#���Iy���b���7�SV]Ͼ�����K�[��GX���ϲ�+��$a����N�����c9:o��*���Щr~��4�bq~� �(���s�M�{�7 %�'��iӸ�Y�]z��%ިh�L��s���) ^B����uԗ4M!�0<��R�ɔ�8lGR��~�������hw��$ån����a�m�I�����ϼLK�0�7�H��q�~��X��^Hx,���ͫЌB����=��� �e�t�k<�b%���qr�e�N��& plkL��� ���x���߸t�D�t@��`U�����1��_�uI�8ۅ��rZ:`���H\�`�#��qAڪ�)��H�G*'u�Ρ��G �:��"����3�+8�մ�5��h�sc�]}�lN�+I����;&Q�B��o ݣ0<�{�yV�~�I�%|yE/��px(�G��`�M|��/��� mdc�P(�Tm����8�k��������􃸴���42c ���8�l��Z��mF�5�l��7b�����9���'N�F��q:�i���GJ�@?����kd޲���e���L� 5m��IJ��C$#BUiS(��n��������kS�G7�1c.���E3/��6-�K���Xܳb�Q!Ԕ��úsc[�$ U�L�Y�7$������vA~A!��Ieۑ:��&&���܂�t�Y�L��ɻ� u���ߤ�+H��s�N�����T��d��v�d?9��� �7���S��ǭEid����MfF�_��[�]vT�d ��F���X��̙3�9KC�u��.^{� �w^"�.b3f�07���¶2��WjX������}+�LJ������fg��a�ڵp�*fM�ă+S��E�fӺ?�~U�`����|^4\@��v��1��}p>K�{�Ʈ߱������<�f(_�ks,b��މ�˖�3��)�O�k��Ʌ��4"�| 4�{�9p�|L>wp ,dբ"@����p�� ���d��c���[8Vوwl¢bI� E�5NVV㿰A�-p\�x�*�/>��)��$�.y��s�U�6�P(�]Xf �}jZ*��=�{�etٚv�B���=w&��) �⊹>�c�G ��W�� �T(�V�#�Ȇ�Ȏe �B���&r�G�T( %� �B�P�P(7!��(�'4������n��P9L ���wIa~��硛P}�5x�� ��r��2�Eqn6��X�F~A���B�P����M"{�78g[:LϚ|q�=�� n��B^z*E��[_�� ��xJ:E)d�G�Yö����{ ��~'����Y�B^Z �S�H0����\\'�=�b�E�)LK&ּ� -�܌4��TE�P|:\㰌$?7,��ǫI-�$:+�X��s�3W�u��߾Axw�y�����h�E�����_>O�{�6}|��)H�Ɩ��I>������C����|O�1���o�M�̏��>�� ��/փ+����k�l�G��.��S�g��$�&(ݲ���+�DE&���/��r�&JId���8���Ɠ|���G�.s�������_��/8ѣƭ ���;6Ss�q���#[hhw��P���#�?�Ý�������͡�l-�˪�fd���%� 6�ѝP�dN�����^j�k���f_�L�r� ��c@��k���4Md{���J���פ��4 g�isH�HbYa�� K�01"��~���]7|,,��n?����jE�B��I�]��dda��G��������s��BB�'Q�q��(�i۬~�Q"{���P-�ݸ�Â98hT�v�G�i�rI� �NU���T^N�X�W8�>7��Z3y����ËYv���m�Im�EHD n��[[�7�{�S�l� �ǡy|����Ω��P(nq�mg'�U���'@Yy+���SΟ�� ��?�7��o\�-�͜�� ��Z�n�ދ��A��E��.����@Y}�ؽ��.d� D�T��P�T�P\G�?J� ���( �w�B�P(qW�)G�T( %�7>"* �����R�P(J�o�]BTd�B�P(qW( �w�B�P�P( %� �B������_�T �IEND�B`�Inquirer.js-3.3.0/examples/000077500000000000000000000000001315775736500155675ustar00rootroot00000000000000Inquirer.js-3.3.0/examples/bottom-bar.js000066400000000000000000000010571315775736500201760ustar00rootroot00000000000000var BottomBar = require('../lib/ui/bottom-bar'); var cmdify = require('cmdify'); var loader = [ '/ Installing', '| Installing', '\\ Installing', '- Installing' ]; var i = 4; var ui = new BottomBar({bottomBar: loader[i % 4]}); setInterval(function () { ui.updateBottomBar(loader[i++ % 4]); }, 300); var spawn = require('child_process').spawn; var cmd = spawn(cmdify('npm'), ['-g', 'install', 'inquirer'], {stdio: 'pipe'}); cmd.stdout.pipe(ui.log); cmd.on('close', function () { ui.updateBottomBar('Installation done!\n'); process.exit(); }); Inquirer.js-3.3.0/examples/checkbox.js000066400000000000000000000022571315775736500177210ustar00rootroot00000000000000/** * Checkbox list examples */ 'use strict'; var inquirer = require('..'); inquirer.prompt([ { type: 'checkbox', message: 'Select toppings', name: 'toppings', choices: [ new inquirer.Separator(' = The Meats = '), { name: 'Pepperoni' }, { name: 'Ham' }, { name: 'Ground Meat' }, { name: 'Bacon' }, new inquirer.Separator(' = The Cheeses = '), { name: 'Mozzarella', checked: true }, { name: 'Cheddar' }, { name: 'Parmesan' }, new inquirer.Separator(' = The usual ='), { name: 'Mushroom' }, { name: 'Tomato' }, new inquirer.Separator(' = The extras = '), { name: 'Pineapple' }, { name: 'Olives', disabled: 'out of stock' }, { name: 'Extra cheese' } ], validate: function (answer) { if (answer.length < 1) { return 'You must choose at least one topping.'; } return true; } } ]).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/editor.js000066400000000000000000000007241315775736500174160ustar00rootroot00000000000000/** * Editor prompt example */ 'use strict'; var inquirer = require('..'); var questions = [ { type: 'editor', name: 'bio', message: 'Please write a short bio of at least 3 lines.', validate: function (text) { if (text.split('\n').length < 3) { return 'Must be at least 3 lines.'; } return true; } } ]; inquirer.prompt(questions).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/expand.js000066400000000000000000000012651315775736500174100ustar00rootroot00000000000000/** * Expand list examples */ 'use strict'; var inquirer = require('..'); inquirer.prompt([ { type: 'expand', message: 'Conflict on `file.js`: ', name: 'overwrite', choices: [ { key: 'y', name: 'Overwrite', value: 'overwrite' }, { key: 'a', name: 'Overwrite this one and all next', value: 'overwrite_all' }, { key: 'd', name: 'Show diff', value: 'diff' }, new inquirer.Separator(), { key: 'x', name: 'Abort', value: 'abort' } ] } ]).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/hierarchical.js000066400000000000000000000044071315775736500205500ustar00rootroot00000000000000/** * Heirarchical conversation example */ 'use strict'; var inquirer = require('..'); var directionsPrompt = { type: 'list', name: 'direction', message: 'Which direction would you like to go?', choices: ['Forward', 'Right', 'Left', 'Back'] }; function main() { console.log('You find youself in a small room, there is a door in front of you.'); exitHouse(); } function exitHouse() { inquirer.prompt(directionsPrompt).then(function (answers) { if (answers.direction === 'Forward') { console.log('You find yourself in a forest'); console.log('There is a wolf in front of you; a friendly looking dwarf to the right and an impasse to the left.'); encounter1(); } else { console.log('You cannot go that way. Try again'); exitHouse(); } }); } function encounter1() { inquirer.prompt(directionsPrompt).then(function (answers) { var direction = answers.direction; if (direction === 'Forward') { console.log('You attempt to fight the wolf'); console.log('Theres a stick and some stones lying around you could use as a weapon'); encounter2b(); } else if (direction === 'Right') { console.log('You befriend the dwarf'); console.log('He helps you kill the wolf. You can now move forward'); encounter2a(); } else { console.log('You cannot go that way'); encounter1(); } }); } function encounter2a() { inquirer.prompt(directionsPrompt).then(function (answers) { var direction = answers.direction; if (direction === 'Forward') { var output = 'You find a painted wooden sign that says:'; output += ' \n'; output += ' ____ _____ ____ _____ \n'; output += '(_ _)( _ )( _ \\( _ ) \n'; output += ' )( )(_)( )(_) ))(_)( \n'; output += ' (__) (_____)(____/(_____) \n'; console.log(output); } else { console.log('You cannot go that way'); encounter2a(); } }); } function encounter2b() { inquirer.prompt({ type: 'list', name: 'weapon', message: 'Pick one', choices: [ 'Use the stick', 'Grab a large rock', 'Try and make a run for it', 'Attack the wolf unarmed' ] }).then(function () { console.log('The wolf mauls you. You die. The end.'); }); } main(); Inquirer.js-3.3.0/examples/input.js000066400000000000000000000014431315775736500172660ustar00rootroot00000000000000/** * Input prompt example */ 'use strict'; var inquirer = require('..'); var questions = [ { type: 'input', name: 'first_name', message: 'What\'s your first name' }, { type: 'input', name: 'last_name', message: 'What\'s your last name', default: function () { return 'Doe'; } }, { type: 'input', name: 'phone', message: 'What\'s your phone number', validate: function (value) { var pass = value.match(/^([01]{1})?[-.\s]?\(?(\d{3})\)?[-.\s]?(\d{3})[-.\s]?(\d{4})\s?((?:#|ext\.?\s?|x\.?\s?){1}(?:\d+)?)?$/i); if (pass) { return true; } return 'Please enter a valid phone number'; } } ]; inquirer.prompt(questions).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/list.js000066400000000000000000000013601315775736500171000ustar00rootroot00000000000000/** * List prompt example */ 'use strict'; var inquirer = require('..'); inquirer.prompt([ { type: 'list', name: 'theme', message: 'What do you want to do?', choices: [ 'Order a pizza', 'Make a reservation', new inquirer.Separator(), 'Ask for opening hours', { name: 'Contact support', disabled: 'Unavailable at this time' }, 'Talk to the receptionist' ] }, { type: 'list', name: 'size', message: 'What size do you need?', choices: ['Jumbo', 'Large', 'Standard', 'Medium', 'Small', 'Micro'], filter: function (val) { return val.toLowerCase(); } } ]).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/long-list.js000066400000000000000000000022171315775736500200370ustar00rootroot00000000000000/** * Paginated list */ 'use strict'; var inquirer = require('..'); var choices = Array.apply(0, new Array(26)).map(function (x, y) { return String.fromCharCode(y + 65); }); choices.push('Multiline option \n super cool feature'); choices.push({ name: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium.', value: 'foo', short: 'The long option' }); inquirer.prompt([ { type: 'list', name: 'letter', message: 'What\'s your favorite letter?', paginated: true, choices: choices }, { type: 'checkbox', name: 'name', message: 'Select the letter contained in your name:', paginated: true, choices: choices } ]).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/nested-call.js000066400000000000000000000006511315775736500203220ustar00rootroot00000000000000/** * Nested Inquirer call */ 'use strict'; var inquirer = require('..'); inquirer.prompt({ type: 'list', name: 'chocolate', message: 'What\'s your favorite chocolate?', choices: ['Mars', 'Oh Henry', 'Hershey'] }).then(function () { inquirer.prompt({ type: 'list', name: 'beverage', message: 'And your favorite beverage?', choices: ['Pepsi', 'Coke', '7up', 'Mountain Dew', 'Red Bull'] }); }); Inquirer.js-3.3.0/examples/password.js000066400000000000000000000011521315775736500177660ustar00rootroot00000000000000/** * Password prompt example */ 'use strict'; const inquirer = require('..'); const requireLetterAndNumber = value => { if (/\w/.test(value) && /\d/.test(value)) { return true; } return 'Password need to have at least a letter and a number'; }; inquirer.prompt([ { type: 'password', message: 'Enter a password', name: 'password1', validate: requireLetterAndNumber }, { type: 'password', message: 'Enter a masked password', name: 'password2', mask: '*', validate: requireLetterAndNumber } ]).then(answers => console.log(JSON.stringify(answers, null, ' '))); Inquirer.js-3.3.0/examples/pizza.js000066400000000000000000000041611315775736500172640ustar00rootroot00000000000000/** * Pizza delivery prompt example * run example by writing `node pizza.js` in your console */ 'use strict'; var inquirer = require('..'); console.log('Hi, welcome to Node Pizza'); var questions = [ { type: 'confirm', name: 'toBeDelivered', message: 'Is this for delivery?', default: false }, { type: 'input', name: 'phone', message: 'What\'s your phone number?', validate: function (value) { var pass = value.match(/^([01]{1})?[-.\s]?\(?(\d{3})\)?[-.\s]?(\d{3})[-.\s]?(\d{4})\s?((?:#|ext\.?\s?|x\.?\s?){1}(?:\d+)?)?$/i); if (pass) { return true; } return 'Please enter a valid phone number'; } }, { type: 'list', name: 'size', message: 'What size do you need?', choices: ['Large', 'Medium', 'Small'], filter: function (val) { return val.toLowerCase(); } }, { type: 'input', name: 'quantity', message: 'How many do you need?', validate: function (value) { var valid = !isNaN(parseFloat(value)); return valid || 'Please enter a number'; }, filter: Number }, { type: 'expand', name: 'toppings', message: 'What about the toppings?', choices: [ { key: 'p', name: 'Pepperoni and cheese', value: 'PepperoniCheese' }, { key: 'a', name: 'All dressed', value: 'alldressed' }, { key: 'w', name: 'Hawaiian', value: 'hawaiian' } ] }, { type: 'rawlist', name: 'beverage', message: 'You also get a free 2L beverage', choices: ['Pepsi', '7up', 'Coke'] }, { type: 'input', name: 'comments', message: 'Any comments on your purchase experience?', default: 'Nope, all good!' }, { type: 'list', name: 'prize', message: 'For leaving a comment, you get a freebie', choices: ['cake', 'fries'], when: function (answers) { return answers.comments !== 'Nope, all good!'; } } ]; inquirer.prompt(questions).then(function (answers) { console.log('\nOrder receipt:'); console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/rawlist.js000066400000000000000000000012261315775736500176130ustar00rootroot00000000000000/** * Raw List prompt example */ 'use strict'; var inquirer = require('..'); inquirer.prompt([ { type: 'rawlist', name: 'theme', message: 'What do you want to do?', choices: [ 'Order a pizza', 'Make a reservation', new inquirer.Separator(), 'Ask opening hours', 'Talk to the receptionist' ] }, { type: 'rawlist', name: 'size', message: 'What size do you need', choices: ['Jumbo', 'Large', 'Standard', 'Medium', 'Small', 'Micro'], filter: function (val) { return val.toLowerCase(); } } ]).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/recursive.js000066400000000000000000000012201315775736500201270ustar00rootroot00000000000000/** * Recursive prompt example * Allows user to choose when to exit prompt */ 'use strict'; var inquirer = require('..'); var output = []; var questions = [ { type: 'input', name: 'tvShow', message: 'What\'s your favorite TV show?' }, { type: 'confirm', name: 'askAgain', message: 'Want to enter another TV show favorite (just hit enter for YES)?', default: true } ]; function ask() { inquirer.prompt(questions).then(function (answers) { output.push(answers.tvShow); if (answers.askAgain) { ask(); } else { console.log('Your favorite TV Shows:', output.join(', ')); } }); } ask(); Inquirer.js-3.3.0/examples/rx-observable-array.js000066400000000000000000000017021315775736500220140ustar00rootroot00000000000000var inquirer = require('..'); var Rx = require('rx-lite-aggregates'); var questions = [ { type: 'input', name: 'first_name', message: 'What\'s your first name' }, { type: 'input', name: 'last_name', message: 'What\'s your last name', default: function () { return 'Doe'; } }, { type: 'input', name: 'phone', message: 'What\'s your phone number', validate: function (value) { var pass = value.match(/^([01]{1})?[-.\s]?\(?(\d{3})\)?[-.\s]?(\d{3})[-.\s]?(\d{4})\s?((?:#|ext\.?\s?|x\.?\s?){1}(?:\d+)?)?$/i); if (pass) { return true; } return 'Please enter a valid phone number'; } } ]; var observable = Rx.Observable.fromArray(questions); inquirer.prompt(observable).ui.process.subscribe( function (ans) { console.log('Answer is: ', ans); }, function (err) { console.log('Error: ', err); }, function () { console.log('Completed'); } ); Inquirer.js-3.3.0/examples/rx-observable-create.js000066400000000000000000000015711315775736500221450ustar00rootroot00000000000000var inquirer = require('..'); var Rx = require('rx-lite-aggregates'); var observe = Rx.Observable.create(function (obs) { obs.onNext({ type: 'input', name: 'first_name', message: 'What\'s your first name' }); obs.onNext({ type: 'input', name: 'last_name', message: 'What\'s your last name', default: function () { return 'Doe'; } }); obs.onNext({ type: 'input', name: 'phone', message: 'What\'s your phone number', validate: function (value) { var pass = value.match(/^([01]{1})?[-.\s]?\(?(\d{3})\)?[-.\s]?(\d{3})[-.\s]?(\d{4})\s?((?:#|ext\.?\s?|x\.?\s?){1}(?:\d+)?)?$/i); if (pass) { return true; } return 'Please enter a valid phone number'; } }); obs.onCompleted(); }); inquirer.prompt(observe).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/examples/spawn.js000066400000000000000000000001641315775736500172560ustar00rootroot00000000000000var spawn = require('child_process').spawn; spawn('node', ['input.js'], { cwd: __dirname, stdio: 'inherit' }); Inquirer.js-3.3.0/examples/when.js000066400000000000000000000015411315775736500170670ustar00rootroot00000000000000/** * When example */ 'use strict'; var inquirer = require('..'); var questions = [ { type: 'confirm', name: 'bacon', message: 'Do you like bacon?' }, { type: 'input', name: 'favorite', message: 'Bacon lover, what is your favorite type of bacon?', when: function (answers) { return answers.bacon; } }, { type: 'confirm', name: 'pizza', message: 'Ok... Do you like pizza?', when: function (answers) { return !likesFood('bacon')(answers); } }, { type: 'input', name: 'favorite', message: 'Whew! What is your favorite type of pizza?', when: likesFood('pizza') } ]; function likesFood(aFood) { return function (answers) { return answers[aFood]; }; } inquirer.prompt(questions).then(function (answers) { console.log(JSON.stringify(answers, null, ' ')); }); Inquirer.js-3.3.0/gulpfile.js000066400000000000000000000030141315775736500161140ustar00rootroot00000000000000'use strict'; var path = require('path'); var gulp = require('gulp'); var eslint = require('gulp-eslint'); var excludeGitignore = require('gulp-exclude-gitignore'); var mocha = require('gulp-mocha'); var istanbul = require('gulp-istanbul'); var nsp = require('gulp-nsp'); var plumber = require('gulp-plumber'); var coveralls = require('gulp-coveralls'); var codacy = require('gulp-codacy'); gulp.task('static', function () { return gulp.src('**/*.js') .pipe(excludeGitignore()) .pipe(eslint()) .pipe(eslint.format()) .pipe(eslint.failAfterError()); }); gulp.task('nsp', function (cb) { nsp({package: path.resolve('package.json')}, cb); }); gulp.task('pre-test', function () { return gulp.src('lib/**/*.js') .pipe(excludeGitignore()) .pipe(istanbul({ includeUntested: true })) .pipe(istanbul.hookRequire()); }); gulp.task('test', ['pre-test'], function (cb) { var mochaErr; gulp.src('test/**/*.js') .pipe(plumber()) .pipe(mocha({reporter: 'spec'})) .on('error', function (err) { mochaErr = err; }) .pipe(istanbul.writeReports()) .on('end', function () { cb(mochaErr); }); }); gulp.task('watch', function () { gulp.watch(['lib/**/*.js', 'test/**'], ['test']); }); gulp.task('coveralls', ['test'], function () { if (!process.env.CI) { return; } return gulp.src(path.join(__dirname, 'coverage/lcov.info')) .pipe(coveralls()) .pipe(codacy()); }); gulp.task('prepublish', ['nsp']); gulp.task('default', ['static', 'test', 'coveralls']); Inquirer.js-3.3.0/lib/000077500000000000000000000000001315775736500145175ustar00rootroot00000000000000Inquirer.js-3.3.0/lib/inquirer.js000066400000000000000000000043361315775736500167210ustar00rootroot00000000000000/** * Inquirer.js * A collection of common interactive command line user interfaces. */ var inquirer = module.exports; /** * Client interfaces */ inquirer.prompts = {}; inquirer.Separator = require('./objects/separator'); inquirer.ui = { BottomBar: require('./ui/bottom-bar'), Prompt: require('./ui/prompt') }; /** * Create a new self-contained prompt module. */ inquirer.createPromptModule = function (opt) { var promptModule = function (questions) { var ui = new inquirer.ui.Prompt(promptModule.prompts, opt); var promise = ui.run(questions); // Monkey patch the UI on the promise object so // that it remains publicly accessible. promise.ui = ui; return promise; }; promptModule.prompts = {}; /** * Register a prompt type * @param {String} name Prompt type name * @param {Function} prompt Prompt constructor * @return {inquirer} */ promptModule.registerPrompt = function (name, prompt) { promptModule.prompts[name] = prompt; return this; }; /** * Register the defaults provider prompts */ promptModule.restoreDefaultPrompts = function () { this.registerPrompt('list', require('./prompts/list')); this.registerPrompt('input', require('./prompts/input')); this.registerPrompt('confirm', require('./prompts/confirm')); this.registerPrompt('rawlist', require('./prompts/rawlist')); this.registerPrompt('expand', require('./prompts/expand')); this.registerPrompt('checkbox', require('./prompts/checkbox')); this.registerPrompt('password', require('./prompts/password')); this.registerPrompt('editor', require('./prompts/editor')); }; promptModule.restoreDefaultPrompts(); return promptModule; }; /** * Public CLI helper interface * @param {Array|Object|rx.Observable} questions - Questions settings array * @param {Function} cb - Callback being passed the user answers * @return {inquirer.ui.Prompt} */ inquirer.prompt = inquirer.createPromptModule(); // Expose helper functions on the top level for easiest usage by common users inquirer.registerPrompt = function (name, prompt) { inquirer.prompt.registerPrompt(name, prompt); }; inquirer.restoreDefaultPrompts = function () { inquirer.prompt.restoreDefaultPrompts(); }; Inquirer.js-3.3.0/lib/objects/000077500000000000000000000000001315775736500161505ustar00rootroot00000000000000Inquirer.js-3.3.0/lib/objects/choice.js000066400000000000000000000015471315775736500177470ustar00rootroot00000000000000'use strict'; var _ = require('lodash'); /** * Choice object * Normalize input as choice object * @constructor * @param {String|Object} val Choice value. If an object is passed, it should contains * at least one of `value` or `name` property */ var Choice = module.exports = function (val, answers) { // Don't process Choice and Separator object if (val instanceof Choice || val.type === 'separator') { return val; } if (_.isString(val)) { this.name = val; this.value = val; this.short = val; } else { _.extend(this, val, { name: val.name || val.value, value: 'value' in val ? val.value : val.name, short: val.short || val.name || val.value }); } if (_.isFunction(val.disabled)) { this.disabled = val.disabled(answers); } else { this.disabled = val.disabled; } }; Inquirer.js-3.3.0/lib/objects/choices.js000066400000000000000000000056241315775736500201320ustar00rootroot00000000000000'use strict'; var assert = require('assert'); var _ = require('lodash'); var Separator = require('./separator'); var Choice = require('./choice'); /** * Choices collection * Collection of multiple `choice` object * @constructor * @param {Array} choices All `choice` to keep in the collection */ var Choices = module.exports = function (choices, answers) { this.choices = choices.map(function (val) { if (val.type === 'separator') { if (!(val instanceof Separator)) { val = new Separator(val.line); } return val; } return new Choice(val, answers); }); this.realChoices = this.choices .filter(Separator.exclude) .filter(function (item) { return !item.disabled; }); Object.defineProperty(this, 'length', { get: function () { return this.choices.length; }, set: function (val) { this.choices.length = val; } }); Object.defineProperty(this, 'realLength', { get: function () { return this.realChoices.length; }, set: function () { throw new Error('Cannot set `realLength` of a Choices collection'); } }); }; /** * Get a valid choice from the collection * @param {Number} selector The selected choice index * @return {Choice|Undefined} Return the matched choice or undefined */ Choices.prototype.getChoice = function (selector) { assert(_.isNumber(selector)); return this.realChoices[selector]; }; /** * Get a raw element from the collection * @param {Number} selector The selected index value * @return {Choice|Undefined} Return the matched choice or undefined */ Choices.prototype.get = function (selector) { assert(_.isNumber(selector)); return this.choices[selector]; }; /** * Match the valid choices against a where clause * @param {Object} whereClause Lodash `where` clause * @return {Array} Matching choices or empty array */ Choices.prototype.where = function (whereClause) { return _.filter(this.realChoices, whereClause); }; /** * Pluck a particular key from the choices * @param {String} propertyName Property name to select * @return {Array} Selected properties */ Choices.prototype.pluck = function (propertyName) { return _.map(this.realChoices, propertyName); }; // Expose usual Array methods Choices.prototype.indexOf = function () { return this.choices.indexOf.apply(this.choices, arguments); }; Choices.prototype.forEach = function () { return this.choices.forEach.apply(this.choices, arguments); }; Choices.prototype.filter = function () { return this.choices.filter.apply(this.choices, arguments); }; Choices.prototype.find = function (func) { return _.find(this.choices, func); }; Choices.prototype.push = function () { var objs = _.map(arguments, function (val) { return new Choice(val); }); this.choices.push.apply(this.choices, objs); this.realChoices = this.choices.filter(Separator.exclude); return this.choices; }; Inquirer.js-3.3.0/lib/objects/separator.js000066400000000000000000000014071315775736500205100ustar00rootroot00000000000000'use strict'; var chalk = require('chalk'); var figures = require('figures'); /** * Separator object * Used to space/separate choices group * @constructor * @param {String} line Separation line content (facultative) */ var Separator = module.exports = function (line) { this.type = 'separator'; this.line = chalk.dim(line || new Array(15).join(figures.line)); }; /** * Helper function returning false if object is a separator * @param {Object} obj object to test against * @return {Boolean} `false` if object is a separator */ Separator.exclude = function (obj) { return obj.type !== 'separator'; }; /** * Stringify separator * @return {String} the separator display string */ Separator.prototype.toString = function () { return this.line; }; Inquirer.js-3.3.0/lib/prompts/000077500000000000000000000000001315775736500162235ustar00rootroot00000000000000Inquirer.js-3.3.0/lib/prompts/base.js000066400000000000000000000065741315775736500175070ustar00rootroot00000000000000/** * Base prompt implementation * Should be extended by prompt types. */ var _ = require('lodash'); var chalk = require('chalk'); var runAsync = require('run-async'); var Choices = require('../objects/choices'); var ScreenManager = require('../utils/screen-manager'); var Prompt = module.exports = function (question, rl, answers) { // Setup instance defaults property _.assign(this, { answers: answers, status: 'pending' }); // Set defaults prompt options this.opt = _.defaults(_.clone(question), { validate: function () { return true; }, filter: function (val) { return val; }, when: function () { return true; }, suffix: '', prefix: chalk.green('?') }); // Check to make sure prompt requirements are there if (!this.opt.message) { this.throwParamError('message'); } if (!this.opt.name) { this.throwParamError('name'); } // Normalize choices if (Array.isArray(this.opt.choices)) { this.opt.choices = new Choices(this.opt.choices, answers); } this.rl = rl; this.screen = new ScreenManager(this.rl); }; /** * Start the Inquiry session and manage output value filtering * @return {Promise} */ Prompt.prototype.run = function () { return new Promise(function (resolve) { this._run(function (value) { resolve(value); }); }.bind(this)); }; // default noop (this one should be overwritten in prompts) Prompt.prototype._run = function (cb) { cb(); }; /** * Throw an error telling a required parameter is missing * @param {String} name Name of the missing param * @return {Throw Error} */ Prompt.prototype.throwParamError = function (name) { throw new Error('You must provide a `' + name + '` parameter'); }; /** * Called when the UI closes. Override to do any specific cleanup necessary */ Prompt.prototype.close = function () { this.screen.releaseCursor(); }; /** * Run the provided validation method each time a submit event occur. * @param {Rx.Observable} submit - submit event flow * @return {Object} Object containing two observables: `success` and `error` */ Prompt.prototype.handleSubmitEvents = function (submit) { var self = this; var validate = runAsync(this.opt.validate); var filter = runAsync(this.opt.filter); var validation = submit.flatMap(function (value) { return filter(value, self.answers).then(function (filteredValue) { return validate(filteredValue, self.answers).then(function (isValid) { return {isValid: isValid, value: filteredValue}; }, function (err) { return {isValid: err}; }); }, function (err) { return {isValid: err}; }); }).share(); var success = validation .filter(function (state) { return state.isValid === true; }) .take(1); var error = validation .filter(function (state) { return state.isValid !== true; }) .takeUntil(success); return { success: success, error: error }; }; /** * Generate the prompt question string * @return {String} prompt question string */ Prompt.prototype.getQuestion = function () { var message = this.opt.prefix + ' ' + chalk.bold(this.opt.message) + this.opt.suffix + chalk.reset(' '); // Append the default if available, and if question isn't answered if (this.opt.default != null && this.status !== 'answered') { message += chalk.dim('(' + this.opt.default + ') '); } return message; }; Inquirer.js-3.3.0/lib/prompts/checkbox.js000066400000000000000000000134471315775736500203600ustar00rootroot00000000000000/** * `list` type prompt */ var _ = require('lodash'); var util = require('util'); var chalk = require('chalk'); var cliCursor = require('cli-cursor'); var figures = require('figures'); var Base = require('./base'); var observe = require('../utils/events'); var Paginator = require('../utils/paginator'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { Base.apply(this, arguments); if (!this.opt.choices) { this.throwParamError('choices'); } if (_.isArray(this.opt.default)) { this.opt.choices.forEach(function (choice) { if (this.opt.default.indexOf(choice.value) >= 0) { choice.checked = true; } }, this); } this.pointer = 0; this.firstRender = true; // Make sure no default is set (so it won't be printed) this.opt.default = null; this.paginator = new Paginator(); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; var events = observe(this.rl); var validation = this.handleSubmitEvents( events.line.map(this.getCurrentValue.bind(this)) ); validation.success.forEach(this.onEnd.bind(this)); validation.error.forEach(this.onError.bind(this)); events.normalizedUpKey.takeUntil(validation.success).forEach(this.onUpKey.bind(this)); events.normalizedDownKey.takeUntil(validation.success).forEach(this.onDownKey.bind(this)); events.numberKey.takeUntil(validation.success).forEach(this.onNumberKey.bind(this)); events.spaceKey.takeUntil(validation.success).forEach(this.onSpaceKey.bind(this)); events.aKey.takeUntil(validation.success).forEach(this.onAllKey.bind(this)); events.iKey.takeUntil(validation.success).forEach(this.onInverseKey.bind(this)); // Init the prompt cliCursor.hide(); this.render(); this.firstRender = false; return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (error) { // Render question var message = this.getQuestion(); var bottomContent = ''; if (this.firstRender) { message += '(Press ' + chalk.cyan.bold('') + ' to select, ' + chalk.cyan.bold('') + ' to toggle all, ' + chalk.cyan.bold('') + ' to inverse selection)'; } // Render choices or answer depending on the state if (this.status === 'answered') { message += chalk.cyan(this.selection.join(', ')); } else { var choicesStr = renderChoices(this.opt.choices, this.pointer); var indexPosition = this.opt.choices.indexOf(this.opt.choices.getChoice(this.pointer)); message += '\n' + this.paginator.paginate(choicesStr, indexPosition, this.opt.pageSize); } if (error) { bottomContent = chalk.red('>> ') + error; } this.screen.render(message, bottomContent); }; /** * When user press `enter` key */ Prompt.prototype.onEnd = function (state) { this.status = 'answered'; // Rerender prompt (and clean subline error) this.render(); this.screen.done(); cliCursor.show(); this.done(state.value); }; Prompt.prototype.onError = function (state) { this.render(state.isValid); }; Prompt.prototype.getCurrentValue = function () { var choices = this.opt.choices.filter(function (choice) { return Boolean(choice.checked) && !choice.disabled; }); this.selection = _.map(choices, 'short'); return _.map(choices, 'value'); }; Prompt.prototype.onUpKey = function () { var len = this.opt.choices.realLength; this.pointer = (this.pointer > 0) ? this.pointer - 1 : len - 1; this.render(); }; Prompt.prototype.onDownKey = function () { var len = this.opt.choices.realLength; this.pointer = (this.pointer < len - 1) ? this.pointer + 1 : 0; this.render(); }; Prompt.prototype.onNumberKey = function (input) { if (input <= this.opt.choices.realLength) { this.pointer = input - 1; this.toggleChoice(this.pointer); } this.render(); }; Prompt.prototype.onSpaceKey = function () { this.toggleChoice(this.pointer); this.render(); }; Prompt.prototype.onAllKey = function () { var shouldBeChecked = Boolean(this.opt.choices.find(function (choice) { return choice.type !== 'separator' && !choice.checked; })); this.opt.choices.forEach(function (choice) { if (choice.type !== 'separator') { choice.checked = shouldBeChecked; } }); this.render(); }; Prompt.prototype.onInverseKey = function () { this.opt.choices.forEach(function (choice) { if (choice.type !== 'separator') { choice.checked = !choice.checked; } }); this.render(); }; Prompt.prototype.toggleChoice = function (index) { var item = this.opt.choices.getChoice(index); if (item !== undefined) { this.opt.choices.getChoice(index).checked = !item.checked; } }; /** * Function for rendering checkbox choices * @param {Number} pointer Position of the pointer * @return {String} Rendered content */ function renderChoices(choices, pointer) { var output = ''; var separatorOffset = 0; choices.forEach(function (choice, i) { if (choice.type === 'separator') { separatorOffset++; output += ' ' + choice + '\n'; return; } if (choice.disabled) { separatorOffset++; output += ' - ' + choice.name; output += ' (' + (_.isString(choice.disabled) ? choice.disabled : 'Disabled') + ')'; } else { var isSelected = (i - separatorOffset === pointer); output += isSelected ? chalk.cyan(figures.pointer) : ' '; output += getCheckbox(choice.checked) + ' ' + choice.name; } output += '\n'; }); return output.replace(/\n$/, ''); } /** * Get the checkbox * @param {Boolean} checked - add a X or not to the checkbox * @return {String} Composited checkbox string */ function getCheckbox(checked) { return checked ? chalk.green(figures.radioOn) : figures.radioOff; } Inquirer.js-3.3.0/lib/prompts/confirm.js000066400000000000000000000034131315775736500202170ustar00rootroot00000000000000/** * `confirm` type prompt */ var _ = require('lodash'); var util = require('util'); var chalk = require('chalk'); var Base = require('./base'); var observe = require('../utils/events'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { Base.apply(this, arguments); var rawDefault = true; _.extend(this.opt, { filter: function (input) { var value = rawDefault; if (input != null && input !== '') { value = /^y(es)?/i.test(input); } return value; } }); if (_.isBoolean(this.opt.default)) { rawDefault = this.opt.default; } this.opt.default = rawDefault ? 'Y/n' : 'y/N'; return this; } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; // Once user confirm (enter key) var events = observe(this.rl); events.keypress.takeUntil(events.line).forEach(this.onKeypress.bind(this)); events.line.take(1).forEach(this.onEnd.bind(this)); // Init this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (answer) { var message = this.getQuestion(); if (typeof answer === 'boolean') { message += chalk.cyan(answer ? 'Yes' : 'No'); } else { message += this.rl.line; } this.screen.render(message); return this; }; /** * When user press `enter` key */ Prompt.prototype.onEnd = function (input) { this.status = 'answered'; var output = this.opt.filter(input); this.render(output); this.screen.done(); this.done(output); }; /** * When user press a key */ Prompt.prototype.onKeypress = function () { this.render(); }; Inquirer.js-3.3.0/lib/prompts/editor.js000066400000000000000000000046751315775736500200630ustar00rootroot00000000000000/** * `editor` type prompt */ var util = require('util'); var chalk = require('chalk'); var ExternalEditor = require('external-editor'); var Base = require('./base'); var observe = require('../utils/events'); var rx = require('rx-lite-aggregates'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { return Base.apply(this, arguments); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; this.editorResult = new rx.Subject(); // Open Editor on "line" (Enter Key) var events = observe(this.rl); this.lineSubscription = events.line.forEach(this.startExternalEditor.bind(this)); // Trigger Validation when editor closes var validation = this.handleSubmitEvents(this.editorResult); validation.success.forEach(this.onEnd.bind(this)); validation.error.forEach(this.onError.bind(this)); // Prevents default from being printed on screen (can look weird with multiple lines) this.currentText = this.opt.default; this.opt.default = null; // Init this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (error) { var bottomContent = ''; var message = this.getQuestion(); if (this.status === 'answered') { message += chalk.dim('Received'); } else { message += chalk.dim('Press to launch your preferred editor.'); } if (error) { bottomContent = chalk.red('>> ') + error; } this.screen.render(message, bottomContent); }; /** * Launch $EDITOR on user press enter */ Prompt.prototype.startExternalEditor = function () { // Pause Readline to prevent stdin and stdout from being modified while the editor is showing this.rl.pause(); ExternalEditor.editAsync(this.currentText, this.endExternalEditor.bind(this)); }; Prompt.prototype.endExternalEditor = function (error, result) { this.rl.resume(); if (error) { this.editorResult.onError(error); } else { this.editorResult.onNext(result); } }; Prompt.prototype.onEnd = function (state) { this.editorResult.dispose(); this.lineSubscription.dispose(); this.answer = state.value; this.status = 'answered'; // Re-render prompt this.render(); this.screen.done(); this.done(this.answer); }; Prompt.prototype.onError = function (state) { this.render(state.isValid); }; Inquirer.js-3.3.0/lib/prompts/expand.js000066400000000000000000000135731315775736500200510ustar00rootroot00000000000000/** * `rawlist` type prompt */ var _ = require('lodash'); var util = require('util'); var chalk = require('chalk'); var Base = require('./base'); var Separator = require('../objects/separator'); var observe = require('../utils/events'); var Paginator = require('../utils/paginator'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { Base.apply(this, arguments); if (!this.opt.choices) { this.throwParamError('choices'); } this.validateChoices(this.opt.choices); // Add the default `help` (/expand) option this.opt.choices.push({ key: 'h', name: 'Help, list all options', value: 'help' }); this.opt.validate = function (choice) { if (choice == null) { return 'Please enter a valid command'; } return choice !== 'help'; }; // Setup the default string (capitalize the default key) this.opt.default = this.generateChoicesString(this.opt.choices, this.opt.default); this.paginator = new Paginator(); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; // Save user answer and update prompt to show selected option. var events = observe(this.rl); var validation = this.handleSubmitEvents( events.line.map(this.getCurrentValue.bind(this)) ); validation.success.forEach(this.onSubmit.bind(this)); validation.error.forEach(this.onError.bind(this)); this.keypressObs = events.keypress.takeUntil(validation.success) .forEach(this.onKeypress.bind(this)); // Init the prompt this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (error, hint) { var message = this.getQuestion(); var bottomContent = ''; if (this.status === 'answered') { message += chalk.cyan(this.answer); } else if (this.status === 'expanded') { var choicesStr = renderChoices(this.opt.choices, this.selectedKey); message += this.paginator.paginate(choicesStr, this.selectedKey, this.opt.pageSize); message += '\n Answer: '; } message += this.rl.line; if (error) { bottomContent = chalk.red('>> ') + error; } if (hint) { bottomContent = chalk.cyan('>> ') + hint; } this.screen.render(message, bottomContent); }; Prompt.prototype.getCurrentValue = function (input) { if (!input) { input = this.rawDefault; } var selected = this.opt.choices.where({key: input.toLowerCase().trim()})[0]; if (!selected) { return null; } return selected.value; }; /** * Generate the prompt choices string * @return {String} Choices string */ Prompt.prototype.getChoices = function () { var output = ''; this.opt.choices.forEach(function (choice) { output += '\n '; if (choice.type === 'separator') { output += ' ' + choice; return; } var choiceStr = choice.key + ') ' + choice.name; if (this.selectedKey === choice.key) { choiceStr = chalk.cyan(choiceStr); } output += choiceStr; }.bind(this)); return output; }; Prompt.prototype.onError = function (state) { if (state.value === 'help') { this.selectedKey = ''; this.status = 'expanded'; this.render(); return; } this.render(state.isValid); }; /** * When user press `enter` key */ Prompt.prototype.onSubmit = function (state) { this.status = 'answered'; var choice = this.opt.choices.where({value: state.value})[0]; this.answer = choice.short || choice.name; // Re-render prompt this.render(); this.screen.done(); this.done(state.value); }; /** * When user press a key */ Prompt.prototype.onKeypress = function () { this.selectedKey = this.rl.line.toLowerCase(); var selected = this.opt.choices.where({key: this.selectedKey})[0]; if (this.status === 'expanded') { this.render(); } else { this.render(null, selected ? selected.name : null); } }; /** * Validate the choices * @param {Array} choices */ Prompt.prototype.validateChoices = function (choices) { var formatError; var errors = []; var keymap = {}; choices.filter(Separator.exclude).forEach(function (choice) { if (!choice.key || choice.key.length !== 1) { formatError = true; } if (keymap[choice.key]) { errors.push(choice.key); } keymap[choice.key] = true; choice.key = String(choice.key).toLowerCase(); }); if (formatError) { throw new Error('Format error: `key` param must be a single letter and is required.'); } if (keymap.h) { throw new Error('Reserved key error: `key` param cannot be `h` - this value is reserved.'); } if (errors.length) { throw new Error('Duplicate key error: `key` param must be unique. Duplicates: ' + _.uniq(errors).join(', ')); } }; /** * Generate a string out of the choices keys * @param {Array} choices * @param {Number} defaultIndex - the choice index to capitalize * @return {String} The rendered choices key string */ Prompt.prototype.generateChoicesString = function (choices, defaultIndex) { var defIndex = choices.realLength - 1; if (_.isNumber(defaultIndex) && this.opt.choices.getChoice(defaultIndex)) { defIndex = defaultIndex; } var defStr = this.opt.choices.pluck('key'); this.rawDefault = defStr[defIndex]; defStr[defIndex] = String(defStr[defIndex]).toUpperCase(); return defStr.join(''); }; /** * Function for rendering checkbox choices * @param {String} pointer Selected key * @return {String} Rendered content */ function renderChoices(choices, pointer) { var output = ''; choices.forEach(function (choice) { output += '\n '; if (choice.type === 'separator') { output += ' ' + choice; return; } var choiceStr = choice.key + ') ' + choice.name; if (pointer === choice.key) { choiceStr = chalk.cyan(choiceStr); } output += choiceStr; }); return output; } Inquirer.js-3.3.0/lib/prompts/input.js000066400000000000000000000035531315775736500177260ustar00rootroot00000000000000/** * `input` type prompt */ var util = require('util'); var chalk = require('chalk'); var Base = require('./base'); var observe = require('../utils/events'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { return Base.apply(this, arguments); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; // Once user confirm (enter key) var events = observe(this.rl); var submit = events.line.map(this.filterInput.bind(this)); var validation = this.handleSubmitEvents(submit); validation.success.forEach(this.onEnd.bind(this)); validation.error.forEach(this.onError.bind(this)); events.keypress.takeUntil(validation.success).forEach(this.onKeypress.bind(this)); // Init this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (error) { var bottomContent = ''; var message = this.getQuestion(); if (this.status === 'answered') { message += chalk.cyan(this.answer); } else { message += this.rl.line; } if (error) { bottomContent = chalk.red('>> ') + error; } this.screen.render(message, bottomContent); }; /** * When user press `enter` key */ Prompt.prototype.filterInput = function (input) { if (!input) { return this.opt.default == null ? '' : this.opt.default; } return input; }; Prompt.prototype.onEnd = function (state) { this.answer = state.value; this.status = 'answered'; // Re-render prompt this.render(); this.screen.done(); this.done(state.value); }; Prompt.prototype.onError = function (state) { this.render(state.isValid); }; /** * When user press a key */ Prompt.prototype.onKeypress = function () { this.render(); }; Inquirer.js-3.3.0/lib/prompts/list.js000066400000000000000000000103761315775736500175430ustar00rootroot00000000000000/** * `list` type prompt */ var _ = require('lodash'); var util = require('util'); var chalk = require('chalk'); var figures = require('figures'); var cliCursor = require('cli-cursor'); var runAsync = require('run-async'); var Base = require('./base'); var observe = require('../utils/events'); var Paginator = require('../utils/paginator'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { Base.apply(this, arguments); if (!this.opt.choices) { this.throwParamError('choices'); } this.firstRender = true; this.selected = 0; var def = this.opt.default; // If def is a Number, then use as index. Otherwise, check for value. if (_.isNumber(def) && def >= 0 && def < this.opt.choices.realLength) { this.selected = def; } else if (!_.isNumber(def) && def != null) { this.selected = this.opt.choices.pluck('value').indexOf(def); } // Make sure no default is set (so it won't be printed) this.opt.default = null; this.paginator = new Paginator(); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; var self = this; var events = observe(this.rl); events.normalizedUpKey.takeUntil(events.line).forEach(this.onUpKey.bind(this)); events.normalizedDownKey.takeUntil(events.line).forEach(this.onDownKey.bind(this)); events.numberKey.takeUntil(events.line).forEach(this.onNumberKey.bind(this)); events.line .take(1) .map(this.getCurrentValue.bind(this)) .flatMap(function (value) { return runAsync(self.opt.filter)(value).catch(function (err) { return err; }); }) .forEach(this.onSubmit.bind(this)); // Init the prompt cliCursor.hide(); this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function () { // Render question var message = this.getQuestion(); if (this.firstRender) { message += chalk.dim('(Use arrow keys)'); } // Render choices or answer depending on the state if (this.status === 'answered') { message += chalk.cyan(this.opt.choices.getChoice(this.selected).short); } else { var choicesStr = listRender(this.opt.choices, this.selected); var indexPosition = this.opt.choices.indexOf(this.opt.choices.getChoice(this.selected)); message += '\n' + this.paginator.paginate(choicesStr, indexPosition, this.opt.pageSize); } this.firstRender = false; this.screen.render(message); }; /** * When user press `enter` key */ Prompt.prototype.onSubmit = function (value) { this.status = 'answered'; // Rerender prompt this.render(); this.screen.done(); cliCursor.show(); this.done(value); }; Prompt.prototype.getCurrentValue = function () { return this.opt.choices.getChoice(this.selected).value; }; /** * When user press a key */ Prompt.prototype.onUpKey = function () { var len = this.opt.choices.realLength; this.selected = (this.selected > 0) ? this.selected - 1 : len - 1; this.render(); }; Prompt.prototype.onDownKey = function () { var len = this.opt.choices.realLength; this.selected = (this.selected < len - 1) ? this.selected + 1 : 0; this.render(); }; Prompt.prototype.onNumberKey = function (input) { if (input <= this.opt.choices.realLength) { this.selected = input - 1; } this.render(); }; /** * Function for rendering list choices * @param {Number} pointer Position of the pointer * @return {String} Rendered content */ function listRender(choices, pointer) { var output = ''; var separatorOffset = 0; choices.forEach(function (choice, i) { if (choice.type === 'separator') { separatorOffset++; output += ' ' + choice + '\n'; return; } if (choice.disabled) { separatorOffset++; output += ' - ' + choice.name; output += ' (' + (_.isString(choice.disabled) ? choice.disabled : 'Disabled') + ')'; output += '\n'; return; } var isSelected = (i - separatorOffset === pointer); var line = (isSelected ? figures.pointer + ' ' : ' ') + choice.name; if (isSelected) { line = chalk.cyan(line); } output += line + ' \n'; }); return output.replace(/\n$/, ''); } Inquirer.js-3.3.0/lib/prompts/password.js000066400000000000000000000044031315775736500204240ustar00rootroot00000000000000/** * `password` type prompt */ var util = require('util'); var chalk = require('chalk'); var Base = require('./base'); var observe = require('../utils/events'); function mask(input, maskChar) { input = String(input); maskChar = typeof maskChar === 'string' ? maskChar : '*'; if (input.length === 0) { return ''; } return new Array(input.length + 1).join(maskChar); } /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { return Base.apply(this, arguments); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; var events = observe(this.rl); // Once user confirm (enter key) var submit = events.line.map(this.filterInput.bind(this)); var validation = this.handleSubmitEvents(submit); validation.success.forEach(this.onEnd.bind(this)); validation.error.forEach(this.onError.bind(this)); if (this.opt.mask) { events.keypress.takeUntil(validation.success).forEach(this.onKeypress.bind(this)); } // Init this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (error) { var message = this.getQuestion(); var bottomContent = ''; if (this.status === 'answered') { message += this.opt.mask ? chalk.cyan(mask(this.answer, this.opt.mask)) : chalk.italic.dim('[hidden]'); } else if (this.opt.mask) { message += mask(this.rl.line || '', this.opt.mask); } else { message += chalk.italic.dim('[input is hidden] '); } if (error) { bottomContent = '\n' + chalk.red('>> ') + error; } this.screen.render(message, bottomContent); }; /** * When user press `enter` key */ Prompt.prototype.filterInput = function (input) { if (!input) { return this.opt.default == null ? '' : this.opt.default; } return input; }; Prompt.prototype.onEnd = function (state) { this.status = 'answered'; this.answer = state.value; // Re-render prompt this.render(); this.screen.done(); this.done(state.value); }; Prompt.prototype.onError = function (state) { this.render(state.isValid); }; Prompt.prototype.onKeypress = function () { this.render(); }; Inquirer.js-3.3.0/lib/prompts/rawlist.js000066400000000000000000000072011315775736500202460ustar00rootroot00000000000000/** * `rawlist` type prompt */ var _ = require('lodash'); var util = require('util'); var chalk = require('chalk'); var Base = require('./base'); var Separator = require('../objects/separator'); var observe = require('../utils/events'); var Paginator = require('../utils/paginator'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt() { Base.apply(this, arguments); if (!this.opt.choices) { this.throwParamError('choices'); } this.opt.validChoices = this.opt.choices.filter(Separator.exclude); this.selected = 0; this.rawDefault = 0; _.extend(this.opt, { validate: function (val) { return val != null; } }); var def = this.opt.default; if (_.isNumber(def) && def >= 0 && def < this.opt.choices.realLength) { this.selected = this.rawDefault = def; } // Make sure no default is set (so it won't be printed) this.opt.default = null; this.paginator = new Paginator(); } util.inherits(Prompt, Base); /** * Start the Inquiry session * @param {Function} cb Callback when prompt is done * @return {this} */ Prompt.prototype._run = function (cb) { this.done = cb; // Once user confirm (enter key) var events = observe(this.rl); var submit = events.line.map(this.getCurrentValue.bind(this)); var validation = this.handleSubmitEvents(submit); validation.success.forEach(this.onEnd.bind(this)); validation.error.forEach(this.onError.bind(this)); events.keypress.takeUntil(validation.success).forEach(this.onKeypress.bind(this)); // Init the prompt this.render(); return this; }; /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function (error) { // Render question var message = this.getQuestion(); var bottomContent = ''; if (this.status === 'answered') { message += chalk.cyan(this.answer); } else { var choicesStr = renderChoices(this.opt.choices, this.selected); message += this.paginator.paginate(choicesStr, this.selected, this.opt.pageSize); message += '\n Answer: '; } message += this.rl.line; if (error) { bottomContent = '\n' + chalk.red('>> ') + error; } this.screen.render(message, bottomContent); }; /** * When user press `enter` key */ Prompt.prototype.getCurrentValue = function (index) { if (index == null || index === '') { index = this.rawDefault; } else { index -= 1; } var choice = this.opt.choices.getChoice(index); return choice ? choice.value : null; }; Prompt.prototype.onEnd = function (state) { this.status = 'answered'; this.answer = state.value; // Re-render prompt this.render(); this.screen.done(); this.done(state.value); }; Prompt.prototype.onError = function () { this.render('Please enter a valid index'); }; /** * When user press a key */ Prompt.prototype.onKeypress = function () { var index = this.rl.line.length ? Number(this.rl.line) - 1 : 0; if (this.opt.choices.getChoice(index)) { this.selected = index; } else { this.selected = undefined; } this.render(); }; /** * Function for rendering list choices * @param {Number} pointer Position of the pointer * @return {String} Rendered content */ function renderChoices(choices, pointer) { var output = ''; var separatorOffset = 0; choices.forEach(function (choice, i) { output += '\n '; if (choice.type === 'separator') { separatorOffset++; output += ' ' + choice; return; } var index = i - separatorOffset; var display = (index + 1) + ') ' + choice.name; if (index === pointer) { display = chalk.cyan(display); } output += display; }); return output; } Inquirer.js-3.3.0/lib/ui/000077500000000000000000000000001315775736500151345ustar00rootroot00000000000000Inquirer.js-3.3.0/lib/ui/baseUI.js000066400000000000000000000033111315775736500166400ustar00rootroot00000000000000'use strict'; var _ = require('lodash'); var MuteStream = require('mute-stream'); var readline = require('readline'); /** * Base interface class other can inherits from */ var UI = module.exports = function (opt) { // Instantiate the Readline interface // @Note: Don't reassign if already present (allow test to override the Stream) if (!this.rl) { this.rl = readline.createInterface(setupReadlineOptions(opt)); } this.rl.resume(); this.onForceClose = this.onForceClose.bind(this); // Make sure new prompt start on a newline when closing process.on('exit', this.onForceClose); // Terminate process on SIGINT (which will call process.on('exit') in return) this.rl.on('SIGINT', this.onForceClose); }; /** * Handle the ^C exit * @return {null} */ UI.prototype.onForceClose = function () { this.close(); process.kill(process.pid, 'SIGINT'); console.log(''); }; /** * Close the interface and cleanup listeners */ UI.prototype.close = function () { // Remove events listeners this.rl.removeListener('SIGINT', this.onForceClose); process.removeListener('exit', this.onForceClose); this.rl.output.unmute(); if (this.activePrompt && typeof this.activePrompt.close === 'function') { this.activePrompt.close(); } // Close the readline this.rl.output.end(); this.rl.pause(); this.rl.close(); }; function setupReadlineOptions(opt) { opt = opt || {}; // Default `input` to stdin var input = opt.input || process.stdin; // Add mute capabilities to the output var ms = new MuteStream(); ms.pipe(opt.output || process.stdout); var output = ms; return _.extend({ terminal: true, input: input, output: output }, _.omit(opt, ['input', 'output'])); } Inquirer.js-3.3.0/lib/ui/bottom-bar.js000066400000000000000000000046301315775736500175430ustar00rootroot00000000000000/** * Sticky bottom bar user interface */ var util = require('util'); var through = require('through'); var Base = require('./baseUI'); var rlUtils = require('../utils/readline'); var _ = require('lodash'); /** * Module exports */ module.exports = Prompt; /** * Constructor */ function Prompt(opt) { opt || (opt = {}); Base.apply(this, arguments); this.log = through(this.writeLog.bind(this)); this.bottomBar = opt.bottomBar || ''; this.render(); } util.inherits(Prompt, Base); /** * Render the prompt to screen * @return {Prompt} self */ Prompt.prototype.render = function () { this.write(this.bottomBar); return this; }; Prompt.prototype.clean = function () { rlUtils.clearLine(this.rl, this.bottomBar.split('\n').length); return this; }; /** * Update the bottom bar content and rerender * @param {String} bottomBar Bottom bar content * @return {Prompt} self */ Prompt.prototype.updateBottomBar = function (bottomBar) { rlUtils.clearLine(this.rl, 1); this.rl.output.unmute(); this.clean(); this.bottomBar = bottomBar; this.render(); this.rl.output.mute(); return this; }; /** * Write out log data * @param {String} data - The log data to be output * @return {Prompt} self */ Prompt.prototype.writeLog = function (data) { this.rl.output.unmute(); this.clean(); this.rl.output.write(this.enforceLF(data.toString())); this.render(); this.rl.output.mute(); return this; }; /** * Make sure line end on a line feed * @param {String} str Input string * @return {String} The input string with a final line feed */ Prompt.prototype.enforceLF = function (str) { return str.match(/[\r\n]$/) ? str : str + '\n'; }; /** * Helper for writing message in Prompt * @param {Prompt} prompt - The Prompt object that extends tty * @param {String} message - The message to be output */ Prompt.prototype.write = function (message) { var msgLines = message.split(/\n/); this.height = msgLines.length; // Write message to screen and setPrompt to control backspace this.rl.setPrompt(_.last(msgLines)); if (this.rl.output.rows === 0 && this.rl.output.columns === 0) { /* When it's a tty through serial port there's no terminal info and the render will malfunction, so we need enforce the cursor to locate to the leftmost position for rendering. */ rlUtils.left(this.rl, message.length + this.rl.line.length); } this.rl.output.write(message); }; Inquirer.js-3.3.0/lib/ui/prompt.js000066400000000000000000000063331315775736500170200ustar00rootroot00000000000000'use strict'; var _ = require('lodash'); var rx = require('rx-lite-aggregates'); var util = require('util'); var runAsync = require('run-async'); var utils = require('../utils/utils'); var Base = require('./baseUI'); /** * Base interface class other can inherits from */ var PromptUI = module.exports = function (prompts, opt) { Base.call(this, opt); this.prompts = prompts; }; util.inherits(PromptUI, Base); PromptUI.prototype.run = function (questions) { // Keep global reference to the answers this.answers = {}; // Make sure questions is an array. if (_.isPlainObject(questions)) { questions = [questions]; } // Create an observable, unless we received one as parameter. // Note: As this is a public interface, we cannot do an instanceof check as we won't // be using the exact same object in memory. var obs = _.isArray(questions) ? rx.Observable.from(questions) : questions; this.process = obs .concatMap(this.processQuestion.bind(this)) // `publish` creates a hot Observable. It prevents duplicating prompts. .publish(); this.process.connect(); return this.process .reduce(function (answers, answer) { _.set(this.answers, answer.name, answer.answer); return this.answers; }.bind(this), {}) .toPromise(Promise) .then(this.onCompletion.bind(this)); }; /** * Once all prompt are over */ PromptUI.prototype.onCompletion = function (answers) { this.close(); return answers; }; PromptUI.prototype.processQuestion = function (question) { question = _.clone(question); return rx.Observable.defer(function () { var obs = rx.Observable.of(question); return obs .concatMap(this.setDefaultType.bind(this)) .concatMap(this.filterIfRunnable.bind(this)) .concatMap(utils.fetchAsyncQuestionProperty.bind(null, question, 'message', this.answers)) .concatMap(utils.fetchAsyncQuestionProperty.bind(null, question, 'default', this.answers)) .concatMap(utils.fetchAsyncQuestionProperty.bind(null, question, 'choices', this.answers)) .concatMap(this.fetchAnswer.bind(this)); }.bind(this)); }; PromptUI.prototype.fetchAnswer = function (question) { var Prompt = this.prompts[question.type]; this.activePrompt = new Prompt(question, this.rl, this.answers); return rx.Observable.defer(function () { return rx.Observable.fromPromise(this.activePrompt.run().then(function (answer) { return {name: question.name, answer: answer}; })); }.bind(this)); }; PromptUI.prototype.setDefaultType = function (question) { // Default type to input if (!this.prompts[question.type]) { question.type = 'input'; } return rx.Observable.defer(function () { return rx.Observable.return(question); }); }; PromptUI.prototype.filterIfRunnable = function (question) { if (question.when === false) { return rx.Observable.empty(); } if (!_.isFunction(question.when)) { return rx.Observable.return(question); } var answers = this.answers; return rx.Observable.defer(function () { return rx.Observable.fromPromise( runAsync(question.when)(answers).then(function (shouldRun) { if (shouldRun) { return question; } }) ).filter(function (val) { return val != null; }); }); }; Inquirer.js-3.3.0/lib/utils/000077500000000000000000000000001315775736500156575ustar00rootroot00000000000000Inquirer.js-3.3.0/lib/utils/events.js000066400000000000000000000025131315775736500175220ustar00rootroot00000000000000'use strict'; var rx = require('rx-lite-aggregates'); function normalizeKeypressEvents(value, key) { return {value: value, key: key || {}}; } module.exports = function (rl) { var keypress = rx.Observable.fromEvent(rl.input, 'keypress', normalizeKeypressEvents) .filter(function (e) { // Ignore `enter` key. On the readline, we only care about the `line` event. return e.key.name !== 'enter' && e.key.name !== 'return'; }); return { line: rx.Observable.fromEvent(rl, 'line'), keypress: keypress, normalizedUpKey: keypress.filter(function (e) { return e.key.name === 'up' || e.key.name === 'k' || (e.key.name === 'p' && e.key.ctrl); }).share(), normalizedDownKey: keypress.filter(function (e) { return e.key.name === 'down' || e.key.name === 'j' || (e.key.name === 'n' && e.key.ctrl); }).share(), numberKey: keypress.filter(function (e) { return e.value && '123456789'.indexOf(e.value) >= 0; }).map(function (e) { return Number(e.value); }).share(), spaceKey: keypress.filter(function (e) { return e.key && e.key.name === 'space'; }).share(), aKey: keypress.filter(function (e) { return e.key && e.key.name === 'a'; }).share(), iKey: keypress.filter(function (e) { return e.key && e.key.name === 'i'; }).share() }; }; Inquirer.js-3.3.0/lib/utils/paginator.js000066400000000000000000000022761315775736500202100ustar00rootroot00000000000000'use strict'; var _ = require('lodash'); var chalk = require('chalk'); /** * The paginator keeps track of a pointer index in a list and returns * a subset of the choices if the list is too long. */ var Paginator = module.exports = function () { this.pointer = 0; this.lastIndex = 0; }; Paginator.prototype.paginate = function (output, active, pageSize) { pageSize = pageSize || 7; var middleOfList = Math.floor(pageSize / 2); var lines = output.split('\n'); // Make sure there's enough lines to paginate if (lines.length <= pageSize) { return output; } // Move the pointer only when the user go down and limit it to the middle of the list if (this.pointer < middleOfList && this.lastIndex < active && active - this.lastIndex < pageSize) { this.pointer = Math.min(middleOfList, this.pointer + active - this.lastIndex); } this.lastIndex = active; // Duplicate the lines so it give an infinite list look var infinite = _.flatten([lines, lines, lines]); var topIndex = Math.max(0, active + lines.length - this.pointer); var section = infinite.splice(topIndex, pageSize).join('\n'); return section + '\n' + chalk.dim('(Move up and down to reveal more choices)'); }; Inquirer.js-3.3.0/lib/utils/readline.js000066400000000000000000000022401315775736500177760ustar00rootroot00000000000000'use strict'; var ansiEscapes = require('ansi-escapes'); /** * Move cursor left by `x` * @param {Readline} rl - Readline instance * @param {Number} x - How far to go left (default to 1) */ exports.left = function (rl, x) { rl.output.write(ansiEscapes.cursorBackward(x)); }; /** * Move cursor right by `x` * @param {Readline} rl - Readline instance * @param {Number} x - How far to go left (default to 1) */ exports.right = function (rl, x) { rl.output.write(ansiEscapes.cursorForward(x)); }; /** * Move cursor up by `x` * @param {Readline} rl - Readline instance * @param {Number} x - How far to go up (default to 1) */ exports.up = function (rl, x) { rl.output.write(ansiEscapes.cursorUp(x)); }; /** * Move cursor down by `x` * @param {Readline} rl - Readline instance * @param {Number} x - How far to go down (default to 1) */ exports.down = function (rl, x) { rl.output.write(ansiEscapes.cursorDown(x)); }; /** * Clear current line * @param {Readline} rl - Readline instance * @param {Number} len - number of line to delete */ exports.clearLine = function (rl, len) { rl.output.write(ansiEscapes.eraseLines(len)); }; Inquirer.js-3.3.0/lib/utils/screen-manager.js000066400000000000000000000073071315775736500211130ustar00rootroot00000000000000'use strict'; var _ = require('lodash'); var util = require('./readline'); var cliWidth = require('cli-width'); var stripAnsi = require('strip-ansi'); var stringWidth = require('string-width'); function height(content) { return content.split('\n').length; } function lastLine(content) { return _.last(content.split('\n')); } var ScreenManager = module.exports = function (rl) { // These variables are keeping information to allow correct prompt re-rendering this.height = 0; this.extraLinesUnderPrompt = 0; this.rl = rl; }; ScreenManager.prototype.render = function (content, bottomContent) { this.rl.output.unmute(); this.clean(this.extraLinesUnderPrompt); /** * Write message to screen and setPrompt to control backspace */ var promptLine = lastLine(content); var rawPromptLine = stripAnsi(promptLine); // Remove the rl.line from our prompt. We can't rely on the content of // rl.line (mainly because of the password prompt), so just rely on it's // length. var prompt = rawPromptLine; if (this.rl.line.length) { prompt = prompt.slice(0, -this.rl.line.length); } this.rl.setPrompt(prompt); // setPrompt will change cursor position, now we can get correct value var cursorPos = this.rl._getCursorPos(); var width = this.normalizedCliWidth(); content = forceLineReturn(content, width); if (bottomContent) { bottomContent = forceLineReturn(bottomContent, width); } // Manually insert an extra line if we're at the end of the line. // This prevent the cursor from appearing at the beginning of the // current line. if (rawPromptLine.length % width === 0) { content += '\n'; } var fullContent = content + (bottomContent ? '\n' + bottomContent : ''); this.rl.output.write(fullContent); /** * Re-adjust the cursor at the correct position. */ // We need to consider parts of the prompt under the cursor as part of the bottom // content in order to correctly cleanup and re-render. var promptLineUpDiff = Math.floor(rawPromptLine.length / width) - cursorPos.rows; var bottomContentHeight = promptLineUpDiff + (bottomContent ? height(bottomContent) : 0); if (bottomContentHeight > 0) { util.up(this.rl, bottomContentHeight); } // Reset cursor at the beginning of the line util.left(this.rl, stringWidth(lastLine(fullContent))); // Adjust cursor on the right util.right(this.rl, cursorPos.cols); /** * Set up state for next re-rendering */ this.extraLinesUnderPrompt = bottomContentHeight; this.height = height(fullContent); this.rl.output.mute(); }; ScreenManager.prototype.clean = function (extraLines) { if (extraLines > 0) { util.down(this.rl, extraLines); } util.clearLine(this.rl, this.height); }; ScreenManager.prototype.done = function () { this.rl.setPrompt(''); this.rl.output.unmute(); this.rl.output.write('\n'); }; ScreenManager.prototype.releaseCursor = function () { if (this.extraLinesUnderPrompt > 0) { util.down(this.rl, this.extraLinesUnderPrompt); } }; ScreenManager.prototype.normalizedCliWidth = function () { var width = cliWidth({ defaultWidth: 80, output: this.rl.output }); if (process.platform === 'win32') { return width - 1; } return width; }; function breakLines(lines, width) { // Break lines who're longuer than the cli width so we can normalize the natural line // returns behavior accross terminals. var regex = new RegExp( '(?:(?:\\033[[0-9;]*m)*.?){1,' + width + '}', 'g' ); return lines.map(function (line) { var chunk = line.match(regex); // last match is always empty chunk.pop(); return chunk || ''; }); } function forceLineReturn(content, width) { return _.flatten(breakLines(content.split('\n'), width)).join('\n'); } Inquirer.js-3.3.0/lib/utils/utils.js000066400000000000000000000015001315775736500173510ustar00rootroot00000000000000'use strict'; var _ = require('lodash'); var rx = require('rx-lite-aggregates'); var runAsync = require('run-async'); /** * Resolve a question property value if it is passed as a function. * This method will overwrite the property on the question object with the received value. * @param {Object} question - Question object * @param {String} prop - Property to fetch name * @param {Object} answers - Answers object * @return {rx.Obsersable} - Observable emitting once value is known */ exports.fetchAsyncQuestionProperty = function (question, prop, answers) { if (!_.isFunction(question[prop])) { return rx.Observable.return(question); } return rx.Observable.fromPromise(runAsync(question[prop])(answers) .then(function (value) { question[prop] = value; return question; }) ); }; Inquirer.js-3.3.0/package.json000066400000000000000000000026031315775736500162400ustar00rootroot00000000000000{ "name": "inquirer", "version": "3.3.0", "description": "A collection of common interactive command line user interfaces.", "author": "Simon Boudrias ", "files": [ "lib" ], "main": "lib/inquirer.js", "keywords": [ "command", "prompt", "stdin", "cli", "tty", "menu" ], "scripts": { "test": "gulp", "prepublish": "gulp prepublish" }, "repository": "SBoudrias/Inquirer.js", "license": "MIT", "dependencies": { "ansi-escapes": "^3.0.0", "chalk": "^2.0.0", "cli-cursor": "^2.1.0", "cli-width": "^2.0.0", "external-editor": "^2.0.4", "figures": "^2.0.0", "lodash": "^4.3.0", "mute-stream": "0.0.7", "run-async": "^2.2.0", "rx-lite": "^4.0.8", "rx-lite-aggregates": "^4.0.8", "string-width": "^2.1.0", "strip-ansi": "^4.0.0", "through": "^2.3.6" }, "devDependencies": { "chai": "^4.0.1", "cmdify": "^0.0.4", "eslint": "^4.2.0", "eslint-config-xo-space": "^0.16.0", "gulp": "^3.9.0", "gulp-codacy": "^1.0.0", "gulp-coveralls": "^0.1.0", "gulp-eslint": "^4.0.0", "gulp-exclude-gitignore": "^1.0.0", "gulp-istanbul": "^1.1.2", "gulp-line-ending-corrector": "^1.0.1", "gulp-mocha": "^3.0.0", "gulp-nsp": "^2.1.0", "gulp-plumber": "^1.0.0", "mocha": "^3.4.2", "mockery": "^2.1.0", "sinon": "^3.0.0" } } Inquirer.js-3.3.0/test/000077500000000000000000000000001315775736500147305ustar00rootroot00000000000000Inquirer.js-3.3.0/test/before.js000066400000000000000000000003651315775736500165340ustar00rootroot00000000000000var mockery = require('mockery'); var ReadlineStub = require('./helpers/readline'); mockery.enable(); mockery.warnOnUnregistered(false); mockery.registerMock('readline', { createInterface: function () { return new ReadlineStub(); } }); Inquirer.js-3.3.0/test/bin/000077500000000000000000000000001315775736500155005ustar00rootroot00000000000000Inquirer.js-3.3.0/test/bin/write.js000066400000000000000000000002531315775736500171700ustar00rootroot00000000000000/** * Simple script to write an argument to a file */ var fs = require('fs'); if (process.argv.length === 4) { fs.writeFileSync(process.argv[3], process.argv[2]); } Inquirer.js-3.3.0/test/helpers/000077500000000000000000000000001315775736500163725ustar00rootroot00000000000000Inquirer.js-3.3.0/test/helpers/events.js000066400000000000000000000006141315775736500202350ustar00rootroot00000000000000/** * Automatically trigger a line event on the readline on each prompt */ exports.autosubmit = function (ui) { ui.process.subscribe(function () { // Use setTimeout because async properties on the following question object will still // be processed when we receive the subscribe event. setTimeout(function () { ui.rl.emit('line'); }, 5); }); ui.rl.emit('line'); }; Inquirer.js-3.3.0/test/helpers/fixtures.js000066400000000000000000000017361315775736500206100ustar00rootroot00000000000000var inquirer = require('../../lib/inquirer'); module.exports = { input: { message: 'message', name: 'name' }, confirm: { message: 'message', name: 'name' }, password: { message: 'message', name: 'name' }, list: { message: 'message', name: 'name', choices: ['foo', new inquirer.Separator(), 'bar', 'bum'] }, rawlist: { message: 'message', name: 'name', choices: ['foo', 'bar', new inquirer.Separator(), 'bum'] }, expand: { message: 'message', name: 'name', choices: [ {key: 'a', name: 'acab'}, new inquirer.Separator(), {key: 'b', name: 'bar'}, {key: 'c', name: 'chile'}, {key: 'd', name: 'd', value: false} ] }, checkbox: { message: 'message', name: 'name', choices: [ 'choice 1', new inquirer.Separator(), 'choice 2', 'choice 3' ] }, editor: { message: 'message', name: 'name', default: 'Inquirer' } }; Inquirer.js-3.3.0/test/helpers/readline.js000066400000000000000000000015551315775736500205210ustar00rootroot00000000000000var EventEmitter = require('events').EventEmitter; var sinon = require('sinon'); var util = require('util'); var _ = require('lodash'); var stub = {}; _.extend(stub, { write: sinon.stub().returns(stub), moveCursor: sinon.stub().returns(stub), setPrompt: sinon.stub().returns(stub), close: sinon.stub().returns(stub), pause: sinon.stub().returns(stub), resume: sinon.stub().returns(stub), _getCursorPos: sinon.stub().returns({cols: 0, rows: 0}), output: { end: sinon.stub(), mute: sinon.stub(), unmute: sinon.stub(), __raw__: '', write: function (str) { this.__raw__ += str; } } }); var ReadlineStub = function () { this.line = ''; this.input = new EventEmitter(); EventEmitter.apply(this, arguments); }; util.inherits(ReadlineStub, EventEmitter); _.assign(ReadlineStub.prototype, stub); module.exports = ReadlineStub; Inquirer.js-3.3.0/test/specs/000077500000000000000000000000001315775736500160455ustar00rootroot00000000000000Inquirer.js-3.3.0/test/specs/api.js000066400000000000000000000236071315775736500171640ustar00rootroot00000000000000/** * Test Prompt public APIs */ var expect = require('chai').expect; var _ = require('lodash'); var fixtures = require('../helpers/fixtures'); var ReadlineStub = require('../helpers/readline'); var inquirer = require('../../lib/inquirer'); var autosubmit = require('../helpers/events').autosubmit; // Define prompts and their public API var prompts = [ { name: 'input', apis: [ 'filter', 'validate', 'default', 'message', 'requiredValues' ] }, { name: 'confirm', apis: [ 'message', 'requiredValues' ] }, { name: 'rawlist', apis: [ 'filter', 'message', 'choices', 'requiredValues' ] }, { name: 'list', apis: [ 'filter', 'message', 'choices', 'requiredValues' ] }, { name: 'expand', apis: [ 'requiredValues', 'message' ] }, { name: 'checkbox', apis: [ 'requiredValues', 'message', 'choices', 'filter', 'validate' ] }, { name: 'password', apis: [ 'requiredValues', 'message', 'filter', 'validate', 'default' ] } ]; // Define tests var tests = { filter: function () { describe('filter API', function () { it('should filter the user input', function (done) { this.fixture.filter = function () { return 'pass'; }; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run().then(function (answer) { expect(answer).to.equal('pass'); done(); }); this.rl.emit('line', ''); }); it('should allow filter function to be asynchronous', function (done) { this.fixture.filter = function () { var done = this.async(); setTimeout(function () { done(null, 'pass'); }, 0); }; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run().then(function (answer) { expect(answer).to.equal('pass'); done(); }); this.rl.emit('line', ''); }); it('should handle errors produced in async filters', function () { var called = 0; var rl = this.rl; this.fixture.filter = function () { called++; var cb = this.async(); if (called === 2) { return cb(null, 'pass'); } rl.emit('line'); return cb(new Error('fail')); }; var prompt = new this.Prompt(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line'); return promise; }); it('should pass previous answers to the prompt filter function', function () { var prompt = inquirer.createPromptModule(); var questions = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'confirm', name: 'q2', message: 'message', filter: function (input, answers) { expect(answers.q1).to.be.true; return input; }, default: false }]; var promise = prompt(questions); autosubmit(promise.ui); return promise.then(function (answers) { expect(answers.q1).to.be.true; expect(answers.q2).to.be.false; }); }); }); }, validate: function () { describe('validate API', function () { it('should reject input if boolean false is returned', function () { var called = 0; this.fixture.validate = function () { called++; // Make sure returning false won't continue if (called === 2) { return true; } this.rl.emit('line'); return false; }.bind(this); var prompt = new this.Prompt(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line'); return promise; }); it('should reject input if a string is returned', function (done) { var self = this; var called = 0; var errorMessage = 'uh oh, error!'; this.fixture.validate = function () { called++; // Make sure returning false won't continue if (called === 2) { done(); return; } self.rl.emit('line'); return errorMessage; }; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run(); this.rl.emit('line'); }); it('should reject input if a Promise is returned which rejects', function (done) { var self = this; var called = 0; var errorMessage = 'uh oh, error!'; this.fixture.validate = function () { called++; // Make sure returning false won't continue if (called === 2) { done(); return; } self.rl.emit('line'); return Promise.reject(errorMessage); }; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run(); this.rl.emit('line'); }); it('should accept input if boolean true is returned', function () { var called = 0; this.fixture.validate = function () { called++; return true; }; var prompt = new this.Prompt(this.fixture, this.rl); var promise = prompt.run().then(function () { expect(called).to.equal(1); }); this.rl.emit('line'); return promise; }); it('should allow validate function to be asynchronous', function () { var self = this; var called = 0; this.fixture.validate = function () { var done = this.async(); setTimeout(function () { called++; // Make sure returning false won't continue if (called === 2) { done(null, true); } else { self.rl.emit('line'); } done(false); }, 0); }; var prompt = new this.Prompt(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line'); return promise; }); it('should allow validate function to return a Promise', function () { this.fixture.validate = function () { return Promise.resolve(true); }; var prompt = new this.Prompt(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line'); return promise; }); it('should pass previous answers to the prompt validation function', function () { var prompt = inquirer.createPromptModule(); var questions = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'confirm', name: 'q2', message: 'message', validate: function (input, answers) { expect(answers.q1).to.be.true; return true; }, default: false }]; var promise = prompt(questions); autosubmit(promise.ui); return promise.then(function (answers) { expect(answers.q1).to.be.true; expect(answers.q2).to.be.false; }); }); }); }, default: function () { describe('default API', function () { it('should allow a default value', function (done) { this.fixture.default = 'pass'; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run().then(function (answer) { expect(this.rl.output.__raw__).to.contain('(pass)'); expect(answer).to.equal('pass'); done(); }.bind(this)); this.rl.emit('line', ''); }); it('should allow a falsy default value', function (done) { this.fixture.default = 0; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run().then(function (answer) { expect(this.rl.output.__raw__).to.contain('(0)'); expect(answer).to.equal(0); done(); }.bind(this)); this.rl.emit('line', ''); }); }); }, message: function () { describe('message API', function () { it('should print message on screen', function () { this.fixture.message = 'Foo bar bar foo bar'; var prompt = new this.Prompt(this.fixture, this.rl); prompt.run(); expect(this.rl.output.__raw__).to.contain(this.fixture.message); }); }); }, choices: function () { describe('choices API', function () { it('should print choices to screen', function () { var prompt = new this.Prompt(this.fixture, this.rl); var choices = prompt.opt.choices; prompt.run(); _.each(choices.filter(inquirer.Separator.exclude), function (choice) { expect(this.rl.output.__raw__).to.contain(choice.name); }.bind(this)); }); }); }, requiredValues: function () { describe('Missing value', function () { it('`message` should throw', function () { var mkPrompt = function () { delete this.fixture.message; return new this.Prompt(this.fixture, this.rl); }.bind(this); expect(mkPrompt).to.throw(/message/); }); it('`name` should throw', function () { var mkPrompt = function () { delete this.fixture.name; return new this.Prompt(this.fixture, this.rl); }.bind(this); expect(mkPrompt).to.throw(/name/); }); }); } }; // Run tests describe('Prompt public APIs', function () { _.each(prompts, function (detail) { describe('on ' + detail.name + ' prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures[detail.name]); this.Prompt = inquirer.prompt.prompts[detail.name]; this.rl = new ReadlineStub(); }); _.each(detail.apis, function (apiName) { tests[apiName](detail.name); }); }); }); }); Inquirer.js-3.3.0/test/specs/inquirer.js000066400000000000000000000347641315775736500202570ustar00rootroot00000000000000/** * Inquirer public API test */ var expect = require('chai').expect; var sinon = require('sinon'); var _ = require('lodash'); var rx = require('rx-lite-aggregates'); var inquirer = require('../../lib/inquirer'); var autosubmit = require('../helpers/events').autosubmit; describe('inquirer.prompt', function () { beforeEach(function () { this.prompt = inquirer.createPromptModule(); }); it('should close and create a new readline instances each time it\'s called', function () { var ctx = this; var rl1; var promise = this.prompt({ type: 'confirm', name: 'q1', message: 'message' }); rl1 = promise.ui.rl; rl1.emit('line'); return promise.then(function () { expect(rl1.close.called).to.be.true; expect(rl1.output.end.called).to.be.true; var rl2; var promise2 = ctx.prompt({ type: 'confirm', name: 'q1', message: 'message' }); rl2 = promise2.ui.rl; rl2.emit('line'); return promise2.then(function () { expect(rl2.close.called).to.be.true; expect(rl2.output.end.called).to.be.true; expect(rl1).to.not.equal(rl2); }); }); }); it('should take a prompts array and return answers', function () { var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'confirm', name: 'q2', message: 'message', default: false }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(answers.q1).to.be.true; expect(answers.q2).to.be.false; }); }); it('should take a prompts array with nested names', function () { var prompts = [{ type: 'confirm', name: 'foo.bar.q1', message: 'message' }, { type: 'confirm', name: 'foo.q2', message: 'message', default: false }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(answers).to.deep.equal({ foo: { bar: { q1: true }, q2: false } }); }); }); it('should take a single prompt and return answer', function () { var prompt = { type: 'input', name: 'q1', message: 'message', default: 'bar' }; var promise = this.prompt(prompt); promise.ui.rl.emit('line'); return promise.then(function (answers) { expect(answers.q1).to.equal('bar'); }); }); it('should parse `message` if passed as a function', function () { var stubMessage = 'foo'; this.prompt.registerPrompt('stub', function (params) { this.opt = { when: function () { return true; } }; this.run = sinon.stub().returns(Promise.resolve()); expect(params.message).to.equal(stubMessage); }); var msgFunc = function (answers) { expect(answers.name1).to.equal('bar'); return stubMessage; }; var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'stub', name: 'name', message: msgFunc }]; var promise = this.prompt(prompts); promise.ui.rl.emit('line'); promise.ui.rl.emit('line'); return promise.then(function () { // Ensure we're not overwriting original prompt values. expect(prompts[1].message).to.equal(msgFunc); }); }); it('should run asynchronous `message`', function (done) { var stubMessage = 'foo'; this.prompt.registerPrompt('stub', function (params) { this.opt = { when: function () { return true; } }; this.run = sinon.stub().returns(Promise.resolve()); expect(params.message).to.equal(stubMessage); done(); }); var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'stub', name: 'name', message: function (answers) { expect(answers.name1).to.equal('bar'); var goOn = this.async(); setTimeout(function () { goOn(null, stubMessage); }, 0); } }]; var promise = this.prompt(prompts, function () {}); promise.ui.rl.emit('line'); }); it('should parse `default` if passed as a function', function (done) { var stubDefault = 'foo'; this.prompt.registerPrompt('stub', function (params) { this.opt = { when: function () { return true; } }; this.run = sinon.stub().returns(Promise.resolve()); expect(params.default).to.equal(stubDefault); done(); }); var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'stub', name: 'name', message: 'message', default: function (answers) { expect(answers.name1).to.equal('bar'); return stubDefault; } }]; var promise = this.prompt(prompts, function () {}); promise.ui.rl.emit('line'); }); it('should run asynchronous `default`', function () { var goesInDefault = false; var input2Default = 'foo'; var promise; var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'input2', name: 'q2', message: 'message', default: function (answers) { goesInDefault = true; expect(answers.name1).to.equal('bar'); var goOn = this.async(); setTimeout(function () { goOn(null, input2Default); }, 0); setTimeout(function () { promise.ui.rl.emit('line'); }, 10); } }]; promise = this.prompt(prompts); promise.ui.rl.emit('line'); return promise.then(function (answers) { expect(goesInDefault).to.be.true; expect(answers.q2).to.equal(input2Default); }); }); it('should pass previous answers to the prompt constructor', function (done) { this.prompt.registerPrompt('stub', function (params, rl, answers) { this.run = sinon.stub().returns(Promise.resolve()); expect(answers.name1).to.equal('bar'); done(); }); var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'stub', name: 'name', message: 'message' }]; var promise = this.prompt(prompts); promise.ui.rl.emit('line'); }); it('should parse `choices` if passed as a function', function (done) { var stubChoices = ['foo', 'bar']; this.prompt.registerPrompt('stub', function (params) { this.run = sinon.stub().returns(Promise.resolve()); this.opt = { when: function () { return true; } }; expect(params.choices).to.equal(stubChoices); done(); }); var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'stub', name: 'name', message: 'message', choices: function (answers) { expect(answers.name1).to.equal('bar'); return stubChoices; } }]; var promise = this.prompt(prompts, function () {}); promise.ui.rl.emit('line'); }); it('should returns a promise', function (done) { var prompt = { type: 'input', name: 'q1', message: 'message', default: 'bar' }; var promise = this.prompt(prompt); promise.then(function (answers) { expect(answers.q1).to.equal('bar'); done(); }); promise.ui.rl.emit('line'); }); it('should expose the Reactive interface', function (done) { var prompts = [{ type: 'input', name: 'name1', message: 'message', default: 'bar' }, { type: 'input', name: 'name', message: 'message', default: 'doe' }]; var promise = this.prompt(prompts); var spy = sinon.spy(); promise.ui.process.subscribe(spy, function () {}, function () { sinon.assert.calledWith(spy, {name: 'name1', answer: 'bar'}); sinon.assert.calledWith(spy, {name: 'name', answer: 'doe'}); done(); }); autosubmit(promise.ui); }); it('should expose the UI', function (done) { var promise = this.prompt([], function () {}); expect(promise.ui.answers).to.be.an('object'); done(); }); it('takes an Observable as question', function () { var promise; var prompts = rx.Observable.create(function (obs) { obs.onNext({ type: 'confirm', name: 'q1', message: 'message' }); setTimeout(function () { obs.onNext({ type: 'confirm', name: 'q2', message: 'message', default: false }); obs.onCompleted(); promise.ui.rl.emit('line'); }, 30); }); promise = this.prompt(prompts); promise.ui.rl.emit('line'); return promise.then(function (answers) { expect(answers.q1).to.be.true; expect(answers.q2).to.be.false; }); }); describe('hierarchical mode (`when`)', function () { it('should pass current answers to `when`', function () { var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { name: 'q2', message: 'message', when: function (answers) { expect(answers).to.be.an('object'); expect(answers.q1).to.be.true; } }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise; }); it('should run prompt if `when` returns true', function () { var goesInWhen = false; var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'input', name: 'q2', message: 'message', default: 'bar-var', when: function () { goesInWhen = true; return true; } }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(goesInWhen).to.be.true; expect(answers.q2).to.equal('bar-var'); }); }); it('should run prompt if `when` is true', function () { var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'input', name: 'q2', message: 'message', default: 'bar-var', when: true }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(answers.q2).to.equal('bar-var'); }); }); it('should not run prompt if `when` returns false', function () { var goesInWhen = false; var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'confirm', name: 'q2', message: 'message', when: function () { goesInWhen = true; return false; } }, { type: 'input', name: 'q3', message: 'message', default: 'foo' }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(goesInWhen).to.be.true; expect(answers.q2).to.not.exist; expect(answers.q3).to.equal('foo'); expect(answers.q1).to.be.true; }); }); it('should not run prompt if `when` is false', function () { var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'confirm', name: 'q2', message: 'message', when: false }, { type: 'input', name: 'q3', message: 'message', default: 'foo' }]; var promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(answers.q2).to.not.exist; expect(answers.q3).to.equal('foo'); expect(answers.q1).to.be.true; }); }); it('should run asynchronous `when`', function () { var promise; var goesInWhen = false; var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }, { type: 'input', name: 'q2', message: 'message', default: 'foo-bar', when: function () { goesInWhen = true; var goOn = this.async(); setTimeout(function () { goOn(null, true); }, 0); setTimeout(function () { promise.ui.rl.emit('line'); }, 10); } }]; promise = this.prompt(prompts); autosubmit(promise.ui); return promise.then(function (answers) { expect(goesInWhen).to.be.true; expect(answers.q2).to.equal('foo-bar'); }); }); }); describe('#registerPrompt()', function () { it('register new prompt types', function (done) { var questions = [{type: 'foo', message: 'something'}]; inquirer.registerPrompt('foo', function (question, rl, answers) { expect(question).to.eql(questions[0]); expect(answers).to.eql({}); this.run = sinon.stub().returns(Promise.resolve()); done(); }); inquirer.prompt(questions, _.noop); }); it('overwrite default prompt types', function (done) { var questions = [{type: 'confirm', message: 'something'}]; inquirer.registerPrompt('confirm', function () { this.run = sinon.stub().returns(Promise.resolve()); done(); }); inquirer.prompt(questions, _.noop); inquirer.restoreDefaultPrompts(); }); }); describe('#restoreDefaultPrompts()', function () { it('restore default prompts', function () { var ConfirmPrompt = inquirer.prompt.prompts.confirm; inquirer.registerPrompt('confirm', _.noop); inquirer.restoreDefaultPrompts(); expect(ConfirmPrompt).to.equal(inquirer.prompt.prompts.confirm); }); }); // see: https://github.com/SBoudrias/Inquirer.js/pull/326 it('does not throw exception if cli-width reports width of 0', function () { var original = process.stdout.getWindowSize; process.stdout.getWindowSize = function () { return [0]; }; var prompt = inquirer.createPromptModule(); var prompts = [{ type: 'confirm', name: 'q1', message: 'message' }]; var promise = prompt(prompts); promise.ui.rl.emit('line'); return promise.then(function (answers) { process.stdout.getWindowSize = original; expect(answers.q1).to.equal(true); }); }); }); Inquirer.js-3.3.0/test/specs/objects/000077500000000000000000000000001315775736500174765ustar00rootroot00000000000000Inquirer.js-3.3.0/test/specs/objects/choice.js000066400000000000000000000025611315775736500212720ustar00rootroot00000000000000var expect = require('chai').expect; var Choice = require('../../../lib/objects/choice'); var Separator = require('../../../lib/objects/separator'); describe('Choice object', function () { it('should normalize accept String as value', function () { var choice = new Choice('foo'); expect(choice.name).to.equal('foo'); expect(choice.value).to.equal('foo'); }); it('should use value|name as default if default property is missing', function () { var onlyName = new Choice({name: 'foo'}); var onlyVal = new Choice({value: 'bar'}); expect(onlyName.name).to.equal('foo'); expect(onlyName.value).to.equal('foo'); expect(onlyName.short).to.equal('foo'); expect(onlyVal.name).to.equal('bar'); expect(onlyVal.value).to.equal('bar'); expect(onlyVal.short).to.equal('bar'); }); it('should keep extra keys', function () { var choice = new Choice({name: 'foo', extra: '1'}); expect(choice.extra).to.equal('1'); expect(choice.name).to.equal('foo'); expect(choice.value).to.equal('foo'); }); it('shouldn\'t process Separator object', function () { var sep = new Choice(new Separator()); expect(sep).to.be.instanceOf(Separator); }); it('shouldn\'t process object with property type=separator', function () { var obj = {type: 'separator'}; var sep = new Choice(obj); expect(sep).to.equal(obj); }); }); Inquirer.js-3.3.0/test/specs/objects/choices.js000066400000000000000000000047271315775736500214630ustar00rootroot00000000000000var expect = require('chai').expect; var inquirer = require('../../../lib/inquirer'); var Choices = require('../../../lib/objects/choices'); var Choice = require('../../../lib/objects/choice'); describe('Choices collection', function () { it('should create Choice object from array member', function () { var choices = new Choices(['bar', {name: 'foo'}]); expect(choices.getChoice(0)).to.be.instanceOf(Choice); expect(choices.getChoice(1)).to.be.instanceOf(Choice); }); it('should not process Separator object', function () { var sep = new inquirer.Separator(); var choices = new Choices(['Bar', sep]); expect(choices.get(0).name).to.equal('Bar'); expect(choices.get(1)).to.equal(sep); }); it('should provide access to length information', function () { var choices = new Choices(['Bar', new inquirer.Separator(), 'foo']); expect(choices.length).to.equal(3); expect(choices.realLength).to.equal(2); choices.length = 1; expect(choices.length).to.equal(1); expect(choices.get(1)).to.not.exist; expect(function () { choices.realLength = 0; }).to.throw; }); it('should allow plucking choice content', function () { var choices = new Choices([{name: 'n', key: 'foo'}, {name: 'a', key: 'lab'}]); expect(choices.pluck('key')).to.eql(['foo', 'lab']); }); it('should allow filtering value with where', function () { var choices = new Choices([{name: 'n', key: 'foo'}, {name: 'a', key: 'lab'}]); expect(choices.where({key: 'lab'})).to.eql([{ name: 'a', value: 'a', short: 'a', key: 'lab', disabled: undefined }]); }); it('should façade forEach', function () { var raw = ['a', 'b', 'c']; var choices = new Choices(raw); choices.forEach(function (val, i) { expect(val.name).to.equal(raw[i]); }); }); it('should façade filter', function () { var choices = new Choices(['a', 'b', 'c']); var filtered = choices.filter(function (val) { return val.name === 'a'; }); expect(filtered.length).to.equal(1); expect(filtered[0].name).to.equal('a'); }); it('should façade push and update the realChoices internally', function () { var choices = new Choices(['a']); choices.push('b', new inquirer.Separator()); expect(choices.length).to.equal(3); expect(choices.realLength).to.equal(2); expect(choices.getChoice(1)).to.be.instanceOf(Choice); expect(choices.get(2)).to.be.instanceOf(inquirer.Separator); }); }); Inquirer.js-3.3.0/test/specs/objects/separator.js000066400000000000000000000022741315775736500220410ustar00rootroot00000000000000var expect = require('chai').expect; var stripAnsi = require('strip-ansi'); var Separator = require('../../../lib/objects/separator'); var Inquirer = require('../../../lib/inquirer'); describe('Separator constructor', function () { it('should set a default', function () { var sep = new Separator(); expect(stripAnsi(sep.toString())).to.equal('──────────────'); }); it('should set user input as separator', function () { var sep = new Separator('foo bar'); expect(stripAnsi(sep.toString())).to.equal('foo bar'); }); it('instances should be stringified when appended to a string', function () { var sep = new Separator('foo bar'); expect(stripAnsi(String(sep))).to.equal('foo bar'); }); it('should be exposed on Inquirer object', function () { expect(Inquirer.Separator).to.equal(Separator); }); it('should expose a helper function to check for separator', function () { expect(Separator.exclude({})).to.be.true; expect(Separator.exclude(new Separator())).to.be.false; }); it('give the type \'separator\' to its object', function () { var sep = new Separator(); expect(sep.type).to.equal('separator'); }); }); Inquirer.js-3.3.0/test/specs/prompts/000077500000000000000000000000001315775736500175515ustar00rootroot00000000000000Inquirer.js-3.3.0/test/specs/prompts/base.js000066400000000000000000000013241315775736500210210ustar00rootroot00000000000000var expect = require('chai').expect; var ReadlineStub = require('../../helpers/readline'); var Base = require('../../../lib/prompts/base'); describe('`base` prompt (e.g. prompt helpers)', function () { beforeEach(function () { this.rl = new ReadlineStub(); this.base = new Base({ message: 'foo bar', name: 'name' }, this.rl); }); it('should not point by reference to the entry `question` object', function () { var question = { message: 'foo bar', name: 'name' }; var base = new Base(question, this.rl); expect(question).to.not.equal(base.opt); expect(question.name).to.equal(base.opt.name); expect(question.message).to.equal(base.opt.message); }); }); Inquirer.js-3.3.0/test/specs/prompts/checkbox.js000066400000000000000000000175251315775736500217070ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Checkbox = require('../../../lib/prompts/checkbox'); describe('`checkbox` prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures.checkbox); this.rl = new ReadlineStub(); this.checkbox = new Checkbox(this.fixture, this.rl); }); it('should return a single selected choice in an array', function (done) { this.checkbox.run().then(function (answer) { expect(answer).to.be.an('array'); expect(answer.length).to.equal(1); expect(answer[0]).to.equal('choice 1'); done(); }); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('should return multiples selected choices in an array', function (done) { this.checkbox.run().then(function (answer) { expect(answer).to.be.an('array'); expect(answer.length).to.equal(2); expect(answer[0]).to.equal('choice 1'); expect(answer[1]).to.equal('choice 2'); done(); }); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('should check defaults choices', function (done) { this.fixture.choices = [ {name: '1', checked: true}, {name: '2', checked: false}, {name: '3', checked: false} ]; this.checkbox = new Checkbox(this.fixture, this.rl); this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(1); expect(answer[0]).to.equal('1'); done(); }); this.rl.emit('line'); }); it('provide an array of checked choice to validate', function () { this.fixture.choices = [ {name: '1', checked: true}, {name: '2', checked: 1}, {name: '3', checked: false} ]; this.fixture.validate = function (answer) { expect(answer).to.eql(['1', '2']); return true; }; this.checkbox = new Checkbox(this.fixture, this.rl); var promise = this.checkbox.run(); this.rl.emit('line'); return promise; }); it('should check defaults choices if given as array of values', function (done) { this.fixture.choices = [ {name: '1'}, {name: '2'}, {name: '3'} ]; this.fixture.default = ['1', '3']; this.checkbox = new Checkbox(this.fixture, this.rl); this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(2); expect(answer[0]).to.equal('1'); expect(answer[1]).to.equal('3'); done(); }); this.rl.emit('line'); }); it('should toggle choice when hitting space', function (done) { this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(1); expect(answer[0]).to.equal('choice 1'); done(); }); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('should allow for arrow navigation', function (done) { this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(1); expect(answer[0]).to.equal('choice 2'); done(); }); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', null, {name: 'up'}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('should allow for vi-style navigation', function (done) { this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(1); expect(answer[0]).to.equal('choice 2'); done(); }); this.rl.input.emit('keypress', 'j', {name: 'j'}); this.rl.input.emit('keypress', 'j', {name: 'j'}); this.rl.input.emit('keypress', 'k', {name: 'k'}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('should allow for emacs-style navigation', function (done) { this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(1); expect(answer[0]).to.equal('choice 2'); done(); }); this.rl.input.emit('keypress', 'n', {name: 'n', ctrl: true}); this.rl.input.emit('keypress', 'n', {name: 'n', ctrl: true}); this.rl.input.emit('keypress', 'p', {name: 'p', ctrl: true}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('should allow 1-9 shortcut key', function (done) { this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(1); expect(answer[0]).to.equal('choice 2'); done(); }); this.rl.input.emit('keypress', '2'); this.rl.emit('line'); }); it('should select all answers if is pressed', function () { var promise = this.checkbox.run(); this.rl.input.emit('keypress', 'a', {name: 'a'}); this.rl.emit('line'); return promise.then(function (answer) { expect(answer.length).to.equal(3); }); }); it('should select no answers if is pressed a second time', function () { var promise = this.checkbox.run(); this.rl.input.emit('keypress', 'a', {name: 'a'}); this.rl.input.emit('keypress', 'a', {name: 'a'}); this.rl.emit('line'); return promise.then(function (answer) { expect(answer.length).to.equal(0); }); }); it('should select the inverse of the current selection when is pressed', function () { var promise = this.checkbox.run(); this.rl.input.emit('keypress', 'i', {name: 'i'}); this.rl.emit('line'); return promise.then(function (answer) { expect(answer.length).to.equal(3); }); }); describe('with disabled choices', function () { beforeEach(function () { this.fixture.choices.push({ name: 'dis1', disabled: true }); this.fixture.choices.push({ name: 'dis2', disabled: 'uh oh' }); this.checkbox = new Checkbox(this.fixture, this.rl); }); it('output disabled choices and custom messages', function () { var promise = this.checkbox.run(); this.rl.emit('line'); return promise.then(function () { expect(this.rl.output.__raw__).to.contain('- dis1 (Disabled)'); expect(this.rl.output.__raw__).to.contain('- dis2 (uh oh)'); }.bind(this)); }); it('skip disabled choices', function (done) { this.checkbox.run().then(function (answer) { expect(answer[0]).to.equal('choice 1'); done(); }); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', null, {name: 'down'}); this.rl.input.emit('keypress', ' ', {name: 'space'}); this.rl.emit('line'); }); it('uncheck defaults choices who\'re disabled', function (done) { this.fixture.choices = [ {name: '1', checked: true, disabled: true}, {name: '2'} ]; this.checkbox = new Checkbox(this.fixture, this.rl); this.checkbox.run().then(function (answer) { expect(answer.length).to.equal(0); done(); }); this.rl.emit('line'); }); it('disabled can be a function', function () { this.fixture.choices = [ { name: 'dis1', disabled: function (answers) { expect(answers.foo).to.equal('foo'); return true; } } ]; this.checkbox = new Checkbox(this.fixture, this.rl, {foo: 'foo'}); var promise = this.checkbox.run(); this.rl.emit('line'); promise.then(function () { expect(this.rl.output.__raw__).to.contain('- dis1 (Disabled)'); }.bind(this)); }); }); }); Inquirer.js-3.3.0/test/specs/prompts/confirm.js000066400000000000000000000045031315775736500215460ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Confirm = require('../../../lib/prompts/confirm'); describe('`confirm` prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures.confirm); this.rl = new ReadlineStub(); this.confirm = new Confirm(this.fixture, this.rl); }); afterEach(function () { Confirm.prototype.write = this._write; }); it('should default to true', function (done) { this.confirm.run().then(function (answer) { expect(this.rl.output.__raw__).to.contain('Y/n'); expect(answer).to.be.true; done(); }.bind(this)); this.rl.emit('line', ''); }); it('should allow a default `false` value', function (done) { this.fixture.default = false; var falseConfirm = new Confirm(this.fixture, this.rl); falseConfirm.run().then(function (answer) { expect(this.rl.output.__raw__).to.contain('y/N'); expect(answer).to.be.false; done(); }.bind(this)); this.rl.emit('line', ''); }); it('should allow a default `true` value', function (done) { this.fixture.default = true; var falseConfirm = new Confirm(this.fixture, this.rl); falseConfirm.run().then(function (answer) { expect(this.rl.output.__raw__).to.contain('Y/n'); expect(answer).to.be.true; done(); }.bind(this)); this.rl.emit('line', ''); }); it('should parse \'Y\' value to boolean true', function (done) { this.confirm.run().then(function (answer) { expect(answer).to.be.true; done(); }); this.rl.emit('line', 'Y'); }); it('should parse \'Yes\' value to boolean true', function (done) { this.confirm.run().then(function (answer) { expect(answer).to.be.true; done(); }); this.rl.emit('line', 'Yes'); }); it('should parse \'No\' value to boolean false', function (done) { this.confirm.run().then(function (answer) { expect(answer).to.be.false; done(); }); this.rl.emit('line', 'No'); }); it('should parse every other string value to boolean false', function (done) { this.confirm.run().then(function (answer) { expect(answer).to.be.false; done(); }); this.rl.emit('line', 'bla bla foo'); }); }); Inquirer.js-3.3.0/test/specs/prompts/editor.js000066400000000000000000000016031315775736500213750ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Editor = require('../../../lib/prompts/editor'); describe('`editor` prompt', function () { beforeEach(function () { this.previousVisual = process.env.VISUAL; // Writes the word "testing" to the file process.env.VISUAL = 'node ./test/bin/write.js testing'; this.fixture = _.clone(fixtures.editor); this.rl = new ReadlineStub(); }); afterEach(function () { process.env.VISUAL = this.previousVisual; }); it('should retrieve temporary files contents', function () { var prompt = new Editor(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line', ''); return promise.then(function (answer) { return expect(answer).to.equal('testing'); }); }); }); Inquirer.js-3.3.0/test/specs/prompts/expand.js000066400000000000000000000101421315775736500213640ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Expand = require('../../../lib/prompts/expand'); describe('`expand` prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures.expand); this.rl = new ReadlineStub(); this.expand = new Expand(this.fixture, this.rl); }); it('should throw if `key` is missing', function () { var mkPrompt = function () { this.fixture.choices = ['a', 'a']; return new Expand(this.fixture, this.rl); }.bind(this); expect(mkPrompt).to.throw(/Format error/); }); it('should throw if `key` is duplicate', function () { var mkPrompt = function () { this.fixture.choices = [ {key: 'a', name: 'foo'}, {key: 'a', name: 'foo'} ]; return new Expand(this.fixture, this.rl); }.bind(this); expect(mkPrompt).to.throw(/Duplicate key error/); }); it('should throw if `key` is `h`', function () { var mkPrompt = function () { this.fixture.choices = [ {key: 'h', name: 'foo'} ]; return new Expand(this.fixture, this.rl); }.bind(this); expect(mkPrompt).to.throw(/Reserved key error/); }); it('should allow false as a value', function () { var promise = this.expand.run(); this.rl.emit('line', 'd'); return promise.then(function (answer) { expect(answer).to.equal(false); }); }); it('pass the value as answer, and display short on the prompt', function () { this.fixture.choices = [ {key: 'a', name: 'A Name', value: 'a value', short: 'ShortA'}, {key: 'b', name: 'B Name', value: 'b value', short: 'ShortB'} ]; var prompt = new Expand(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line', 'b'); return promise.then(function (answer) { expect(answer).to.equal('b value'); expect(this.rl.output.__raw__).to.match(/ShortB/); }.bind(this)); }); it('should use the `default` argument value', function (done) { this.fixture.default = 1; this.expand = new Expand(this.fixture, this.rl); this.expand.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line'); }); it('should return the user input', function (done) { this.expand.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line', 'b'); }); it('should strip the user input', function (done) { this.expand.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line', ' b '); }); it('should have help option', function (done) { this.expand.run().then(function (answer) { expect(this.rl.output.__raw__).to.match(/a\) acab/); expect(this.rl.output.__raw__).to.match(/b\) bar/); expect(answer).to.equal('chile'); done(); }.bind(this)); this.rl.emit('line', 'h'); this.rl.emit('line', 'c'); }); it('should not allow invalid command', function () { var self = this; var promise = this.expand.run(); this.rl.emit('line', 'blah'); setTimeout(function () { self.rl.emit('line', 'a'); }, 10); return promise; }); it('should display and capitalize the default choice `key`', function () { this.fixture.default = 1; this.expand = new Expand(this.fixture, this.rl); this.expand.run(); expect(this.rl.output.__raw__).to.contain('(aBcdh)'); }); it('should display and capitalize the default choice H (Help) `key` if none provided', function () { delete this.fixture.default; this.expand = new Expand(this.fixture, this.rl); this.expand.run(); expect(this.rl.output.__raw__).to.contain('(abcdH)'); }); it('should \'autocomplete\' the user input', function (done) { this.expand = new Expand(this.fixture, this.rl); this.expand.run(); this.rl.line = 'a'; this.rl.emit('keypress'); setTimeout(function () { expect(this.rl.output.__raw__).to.contain('acab'); done(); }.bind(this), 10); }); }); Inquirer.js-3.3.0/test/specs/prompts/input.js000066400000000000000000000017441315775736500212540ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Input = require('../../../lib/prompts/input'); describe('`input` prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures.input); this.rl = new ReadlineStub(); }); it('should use raw value from the user', function (done) { var input = new Input(this.fixture, this.rl); input.run().then(function (answer) { expect(answer).to.equal('Inquirer'); done(); }); this.rl.emit('line', 'Inquirer'); }); it('should output filtered value', function () { this.fixture.filter = function () { return 'pass'; }; var prompt = new Input(this.fixture, this.rl); var promise = prompt.run(); this.rl.emit('line', ''); return promise.then(function () { expect(this.rl.output.__raw__).to.contain('pass'); }.bind(this)); }); }); Inquirer.js-3.3.0/test/specs/prompts/list.js000066400000000000000000000112171315775736500210640ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var List = require('../../../lib/prompts/list'); describe('`list` prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures.list); this.rl = new ReadlineStub(); this.list = new List(this.fixture, this.rl); }); it('should default to first choice', function (done) { this.list.run().then(function (answer) { expect(answer).to.equal('foo'); done(); }); this.rl.emit('line'); }); it('should move selected cursor on keypress', function (done) { this.list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.emit('line'); }); it('should allow for arrow navigation', function (done) { this.list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.input.emit('keypress', '', {name: 'up'}); this.rl.emit('line'); }); it('should allow for vi-style navigation', function (done) { this.list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.input.emit('keypress', 'j', {name: 'j'}); this.rl.input.emit('keypress', 'j', {name: 'j'}); this.rl.input.emit('keypress', 'k', {name: 'k'}); this.rl.emit('line'); }); it('should allow for emacs-style navigation', function (done) { this.list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.input.emit('keypress', 'n', {name: 'n', ctrl: true}); this.rl.input.emit('keypress', 'n', {name: 'n', ctrl: true}); this.rl.input.emit('keypress', 'p', {name: 'p', ctrl: true}); this.rl.emit('line'); }); it('should loop the choices when going out of boundaries', function () { var promise1 = this.list.run().then(function (answer) { expect(answer).to.equal('bar'); }); this.rl.input.emit('keypress', '', {name: 'up'}); this.rl.input.emit('keypress', '', {name: 'up'}); this.rl.emit('line'); return promise1 .then(function () { this.list.selected = 0; // reset var promise2 = this.list.run().then(function (answer) { expect(answer).to.equal('foo'); }); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.emit('line'); return promise2; }.bind(this)); }); it('should require a choices array', function () { var mkPrompt = function () { return new List({name: 'foo', message: 'bar'}); }; expect(mkPrompt).to.throw(/choices/); }); it('should allow a numeric default', function (done) { this.fixture.default = 1; var list = new List(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line'); }); it('should work from a numeric default being the index', function (done) { this.fixture.default = 1; var list = new List(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('bum'); done(); }); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.emit('line'); }); it('should allow a string default being the value', function (done) { this.fixture.default = 'bar'; var list = new List(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line'); }); it('should work from a string default', function (done) { this.fixture.default = 'bar'; var list = new List(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('bum'); done(); }); this.rl.input.emit('keypress', '', {name: 'down'}); this.rl.emit('line'); }); it('shouldn\'t allow an invalid index as default', function (done) { this.fixture.default = 4; var list = new List(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('foo'); done(); }); this.rl.emit('line'); }); it('should allow 1-9 shortcut key', function (done) { this.list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.input.emit('keypress', '2'); this.rl.emit('line'); }); }); Inquirer.js-3.3.0/test/specs/prompts/password.js000066400000000000000000000031351315775736500217530ustar00rootroot00000000000000var stripAnsi = require('strip-ansi'); var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Password = require('../../../lib/prompts/password'); function testMasking(rl, mask) { return function (answer) { expect(answer).to.equal('Inquirer'); var expectOutput = expect(stripAnsi(rl.output.__raw__)); if (mask) { expectOutput.to.contain(mask); } else { expectOutput.to.not.contain('********'); } }; } describe('`password` prompt', function () { beforeEach(function () { this.fixture = _.clone(fixtures.password); this.rl = new ReadlineStub(); }); it('should use raw value from the user without masking', function () { var password = new Password(this.fixture, this.rl); var promise = password.run().then(testMasking(this.rl, false)); this.rl.emit('line', 'Inquirer'); return promise; }); it('should mask the input with "*" if the `mask` option was provided by the user was `true`', function () { this.fixture.mask = true; var password = new Password(this.fixture, this.rl); var promise = password.run().then(testMasking(this.rl, '********')); this.rl.emit('line', 'Inquirer'); return promise; }); it('should mask the input if a `mask` string was provided by the user', function () { this.fixture.mask = '#'; var password = new Password(this.fixture, this.rl); var promise = password.run().then(testMasking(this.rl, '########')); this.rl.emit('line', 'Inquirer'); return promise; }); }); Inquirer.js-3.3.0/test/specs/prompts/rawlist.js000066400000000000000000000034641315775736500216030ustar00rootroot00000000000000var expect = require('chai').expect; var _ = require('lodash'); var ReadlineStub = require('../../helpers/readline'); var fixtures = require('../../helpers/fixtures'); var Rawlist = require('../../../lib/prompts/rawlist'); describe('`rawlist` prompt', function () { beforeEach(function () { this.rl = new ReadlineStub(); this.fixture = _.clone(fixtures.rawlist); this.rawlist = new Rawlist(this.fixture, this.rl); }); it('should default to first choice', function (done) { this.rawlist.run().then(function (answer) { expect(answer).to.equal('foo'); done(); }); this.rl.emit('line'); }); it('should select given index', function (done) { this.rawlist.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line', '2'); }); it('should not allow invalid index', function () { var self = this; var promise = this.rawlist.run(); this.rl.emit('line', 'blah'); setTimeout(function () { self.rl.emit('line', '1'); }, 10); return promise; }); it('should require a choices array', function () { var mkPrompt = function () { return new Rawlist({name: 'foo', message: 'bar'}); }; expect(mkPrompt).to.throw(/choices/); }); it('should allow a default index', function (done) { this.fixture.default = 1; var list = new Rawlist(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('bar'); done(); }); this.rl.emit('line'); }); it('shouldn\'t allow an invalid index as default', function (done) { this.fixture.default = 4; var list = new Rawlist(this.fixture, this.rl); list.run().then(function (answer) { expect(answer).to.equal('foo'); done(); }); this.rl.emit('line'); }); }); Inquirer.js-3.3.0/yarn.lock000066400000000000000000002654011315775736500156040ustar00rootroot00000000000000# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. # yarn lockfile v1 abbrev@1, abbrev@1.0.x: version "1.0.9" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" acorn-jsx@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" dependencies: acorn "^3.0.4" acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" acorn@^5.0.1: version "5.0.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.0.3.tgz#c460df08491463f028ccb82eab3730bf01087b3d" agent-base@2: version "2.0.1" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-2.0.1.tgz#bd8f9e86a8eb221fffa07bd14befd55df142815e" dependencies: extend "~3.0.0" semver "~5.0.1" ajv-keywords@^1.0.0: version "1.5.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" ajv@^4.7.0: version "4.11.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.2.tgz#f166c3c11cbc6cb9dcc102a5bcfe5b72c95287e6" dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" ajv@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.1.tgz#dcd03045175883ba1b636e5ae9ec3df9ab85323a" dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" json-schema-traverse "^0.3.0" json-stable-stringify "^1.0.1" align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" dependencies: kind-of "^3.0.2" longest "^1.0.1" repeat-string "^1.5.2" amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" ansi-escapes@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b" ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" ansi-styles@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.1.0.tgz#09c202d5c917ec23188caa5c9cb9179cd9547750" dependencies: color-convert "^1.0.0" any-promise@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" archy@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" dependencies: sprintf-js "~1.0.2" arr-diff@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" dependencies: arr-flatten "^1.0.1" arr-flatten@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b" array-differ@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" dependencies: array-uniq "^1.0.1" array-uniq@^1.0.1, array-uniq@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" asn1@~0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" assertion-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" async@1.x, async@^1.4.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" async@~0.2.6: version "0.2.10" resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" aws-sign2@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" aws4@^1.2.1: version "1.5.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755" babel-code-frame@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" dependencies: chalk "^1.1.0" esutils "^2.0.2" js-tokens "^3.0.0" balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" bcrypt-pbkdf@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4" dependencies: tweetnacl "^0.14.3" beeper@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" bl@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" dependencies: readable-stream "~2.0.5" bluebird@^2.3, bluebird@^2.9.x: version "2.11.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1" bluebird@^3.0.5: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" dependencies: hoek "2.x.x" brace-expansion@^1.0.0, brace-expansion@^1.1.7: version "1.1.8" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" dependencies: balanced-match "^1.0.0" concat-map "0.0.1" braces@^1.8.2: version "1.8.5" resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" dependencies: expand-range "^1.8.1" preserve "^0.2.0" repeat-element "^1.1.2" browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" buffer-shims@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" dependencies: callsites "^0.2.0" callsites@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" camelcase@^1.0.2: version "1.2.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" center-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" dependencies: align-text "^0.1.3" lazy-cache "^1.0.3" chai@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/chai/-/chai-4.0.2.tgz#2f7327c4de6f385dd7787999e2ab02697a32b83b" dependencies: assertion-error "^1.0.1" check-error "^1.0.1" deep-eql "^2.0.1" get-func-name "^2.0.0" pathval "^1.0.0" type-detect "^4.0.0" chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" has-ansi "^2.0.0" strip-ansi "^3.0.0" supports-color "^2.0.0" chalk@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.0.1.tgz#dbec49436d2ae15f536114e76d14656cdbc0f44d" dependencies: ansi-styles "^3.1.0" escape-string-regexp "^1.0.5" supports-color "^4.0.0" check-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" circular-json@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d" cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" dependencies: restore-cursor "^2.0.0" cli-table@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23" dependencies: colors "1.0.3" cli-width@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" cliclopts@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/cliclopts/-/cliclopts-1.1.1.tgz#69431c7cb5af723774b0d3911b4c37512431910f" cliui@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" dependencies: center-align "^0.1.1" right-align "^0.1.1" wordwrap "0.0.2" clone-stats@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" clone@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" clone@^1.0.0, clone@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" cmdify@^0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/cmdify/-/cmdify-0.0.4.tgz#268d2a60afe026a8c33d3fbbacf0f7038c6113d2" co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" codacy-coverage@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/codacy-coverage/-/codacy-coverage-1.1.3.tgz#42cc65f7d8acf6c3f743283dda9164bd6bb2fd45" dependencies: bluebird "^2.9.x" commander "^2.x" joi "^6.4.x" lcov-parse "0.x" log-driver "^1.x" request-promise "^0.x" coffee-script@^1.10.0: version "1.12.2" resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.12.2.tgz#0d4cbdee183f650da95419570c4929d08ef91376" color-convert@^1.0.0: version "1.9.0" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" dependencies: color-name "^1.1.1" color-name@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.2.tgz#5c8ab72b64bd2215d617ae9559ebb148475cf98d" colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" dependencies: delayed-stream "~1.0.0" commander@2.9.0, commander@^2.9.0, commander@^2.x: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" dependencies: graceful-readlink ">= 1.0.0" concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" concat-stream@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: inherits "^2.0.3" readable-stream "^2.2.2" typedarray "^0.0.6" core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" coveralls@^2.11.2: version "2.11.15" resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-2.11.15.tgz#37d3474369d66c14f33fa73a9d25cee6e099fca0" dependencies: js-yaml "3.6.1" lcov-parse "0.0.10" log-driver "1.2.5" minimist "1.2.0" request "2.75.0" cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" dependencies: boom "2.x.x" dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" dependencies: assert-plus "^1.0.0" dateformat@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" debug@2, debug@^2.1.3, debug@^2.6.8: version "2.6.8" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: ms "2.0.0" debug@2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b" dependencies: ms "0.7.2" decamelize@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" deep-eql@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-2.0.2.tgz#b1bac06e56f0a76777686d50c9feb75c2ed7679a" dependencies: type-detect "^3.0.0" deep-extend@~0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253" deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" defaults@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" dependencies: clone "^1.0.2" del@^2.0.2: version "2.2.2" resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" dependencies: globby "^5.0.0" is-path-cwd "^1.0.0" is-path-in-cwd "^1.0.0" object-assign "^4.0.1" pify "^2.0.0" pinkie-promise "^2.0.0" rimraf "^2.2.8" delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" deprecated@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19" detect-file@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63" dependencies: fs-exists-sync "^0.1.0" diff@3.2.0, diff@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" doctrine@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63" dependencies: esutils "^2.0.2" isarray "^1.0.0" duplexer2@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" dependencies: readable-stream "~1.1.9" ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" dependencies: jsbn "~0.1.0" end-of-stream@~0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf" dependencies: once "~1.3.0" escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" escodegen@1.8.x: version "1.8.1" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" dependencies: esprima "^2.7.1" estraverse "^1.9.1" esutils "^2.0.2" optionator "^0.8.1" optionalDependencies: source-map "~0.2.0" eslint-config-xo-space@^0.16.0: version "0.16.0" resolved "https://registry.yarnpkg.com/eslint-config-xo-space/-/eslint-config-xo-space-0.16.0.tgz#5241a8adfaafec53a6f2236da5f9d6a41c5ff84d" dependencies: eslint-config-xo "^0.18.0" eslint-config-xo@^0.18.0: version "0.18.2" resolved "https://registry.yarnpkg.com/eslint-config-xo/-/eslint-config-xo-0.18.2.tgz#0a157120875619929e735ffd6b185c41e8a187af" eslint-scope@^3.7.1: version "3.7.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" eslint@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.0.0.tgz#7277c01437fdf41dccd168d5aa0e49b75ca1f260" dependencies: babel-code-frame "^6.22.0" chalk "^1.1.3" concat-stream "^1.6.0" debug "^2.6.8" doctrine "^2.0.0" eslint-scope "^3.7.1" espree "^3.4.3" esquery "^1.0.0" estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" glob "^7.1.2" globals "^9.17.0" ignore "^3.3.3" imurmurhash "^0.1.4" inquirer "^3.0.6" is-my-json-valid "^2.16.0" is-resolvable "^1.0.0" js-yaml "^3.8.4" json-stable-stringify "^1.0.1" levn "^0.3.0" lodash "^4.17.4" mkdirp "^0.5.1" natural-compare "^1.4.0" optionator "^0.8.2" path-is-inside "^1.0.2" pluralize "^4.0.0" progress "^2.0.0" require-uncached "^1.0.3" strip-json-comments "~2.0.1" table "^4.0.1" text-table "~0.2.0" eslint@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.2.0.tgz#a2b3184111b198e02e9c7f3cca625a5e01c56b3d" dependencies: ajv "^5.2.0" babel-code-frame "^6.22.0" chalk "^1.1.3" concat-stream "^1.6.0" debug "^2.6.8" doctrine "^2.0.0" eslint-scope "^3.7.1" espree "^3.4.3" esquery "^1.0.0" estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" glob "^7.1.2" globals "^9.17.0" ignore "^3.3.3" imurmurhash "^0.1.4" inquirer "^3.0.6" is-resolvable "^1.0.0" js-yaml "^3.8.4" json-stable-stringify "^1.0.1" levn "^0.3.0" lodash "^4.17.4" minimatch "^3.0.2" mkdirp "^0.5.1" natural-compare "^1.4.0" optionator "^0.8.2" path-is-inside "^1.0.2" pluralize "^4.0.0" progress "^2.0.0" require-uncached "^1.0.3" strip-json-comments "~2.0.1" table "^4.0.1" text-table "~0.2.0" espree@^3.4.3: version "3.4.3" resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.3.tgz#2910b5ccd49ce893c2ffffaab4fd8b3a31b82374" dependencies: acorn "^5.0.1" acorn-jsx "^3.0.0" esprima@2.7.x, esprima@^2.6.0, esprima@^2.7.1: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" esprima@^3.1.1: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" esquery@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" dependencies: estraverse "^4.0.0" esrecurse@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220" dependencies: estraverse "~4.1.0" object-assign "^4.0.1" estraverse@^1.9.1: version "1.9.3" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" estraverse@^4.0.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" estraverse@~4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2" esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" dependencies: is-posix-bracket "^0.1.0" expand-range@^1.8.1: version "1.8.2" resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" dependencies: fill-range "^2.1.0" expand-tilde@^1.2.1, expand-tilde@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449" dependencies: os-homedir "^1.0.1" extend@3, extend@^3.0.0, extend@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" external-editor@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.4.tgz#1ed9199da9cbfe2ef2f7a31b2fde8b0d12368972" dependencies: iconv-lite "^0.4.17" jschardet "^1.4.2" tmp "^0.0.31" extglob@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" dependencies: is-extglob "^1.0.0" extsprintf@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" fancy-log@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" dependencies: chalk "^1.1.1" time-stamp "^1.0.0" fast-deep-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" dependencies: flat-cache "^1.2.1" object-assign "^4.0.1" filename-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775" fill-range@^2.1.0: version "2.2.3" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" dependencies: is-number "^2.1.0" isobject "^2.0.0" randomatic "^1.1.3" repeat-element "^1.1.2" repeat-string "^1.5.2" find-index@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" findup-sync@^0.4.2: version "0.4.3" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12" dependencies: detect-file "^0.1.0" is-glob "^2.0.1" micromatch "^2.3.7" resolve-dir "^0.1.0" fined@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/fined/-/fined-1.0.2.tgz#5b28424b760d7598960b7ef8480dff8ad3660e97" dependencies: expand-tilde "^1.2.1" lodash.assignwith "^4.0.7" lodash.isempty "^4.2.1" lodash.isplainobject "^4.0.4" lodash.isstring "^4.0.1" lodash.pick "^4.2.1" parse-filepath "^1.0.1" first-chunk-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" flagged-respawn@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-0.3.2.tgz#ff191eddcd7088a675b2610fffc976be9b8074b5" flat-cache@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" dependencies: circular-json "^0.3.1" del "^2.0.2" graceful-fs "^4.1.2" write "^0.2.1" for-in@^0.1.5: version "0.1.6" resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.6.tgz#c9f96e89bfad18a545af5ec3ed352a1d9e5b4dc8" for-own@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.4.tgz#0149b41a39088c7515f51ebe1c1386d45f935072" dependencies: for-in "^0.1.5" forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" form-data@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.0.0.tgz#6f0aebadcc5da16c13e1ecc11137d85f9b883b25" dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" mime-types "^2.1.11" formatio@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/formatio/-/formatio-1.2.0.tgz#f3b2167d9068c4698a8d51f4f760a39a54d818eb" dependencies: samsam "1.x" fs-exists-sync@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" gaze@^0.5.1: version "0.5.2" resolved "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f" dependencies: globule "~0.1.0" generate-function@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" generate-object-property@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" dependencies: is-property "^1.0.0" get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" getpass@^0.1.1: version "0.1.6" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6" dependencies: assert-plus "^1.0.0" glob-base@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" dependencies: glob-parent "^2.0.0" is-glob "^2.0.0" glob-parent@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" dependencies: is-glob "^2.0.0" glob-stream@^3.1.5: version "3.1.18" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b" dependencies: glob "^4.3.1" glob2base "^0.0.12" minimatch "^2.0.1" ordered-read-streams "^0.1.0" through2 "^0.6.1" unique-stream "^1.0.0" glob-watcher@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b" dependencies: gaze "^0.5.1" glob2base@^0.0.12: version "0.0.12" resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" dependencies: find-index "^0.1.1" glob@7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" minimatch "^3.0.2" once "^1.3.0" path-is-absolute "^1.0.0" glob@^4.3.1: version "4.5.3" resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f" dependencies: inflight "^1.0.4" inherits "2" minimatch "^2.0.1" once "^1.3.0" glob@^5.0.15: version "5.0.15" resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" dependencies: inflight "^1.0.4" inherits "2" minimatch "2 || 3" once "^1.3.0" path-is-absolute "^1.0.0" glob@^7.0.3, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" minimatch "^3.0.4" once "^1.3.0" path-is-absolute "^1.0.0" glob@~3.1.21: version "3.1.21" resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd" dependencies: graceful-fs "~1.2.0" inherits "1" minimatch "~0.2.11" global-modules@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d" dependencies: global-prefix "^0.1.4" is-windows "^0.2.0" global-prefix@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f" dependencies: homedir-polyfill "^1.0.0" ini "^1.3.4" is-windows "^0.2.0" which "^1.2.12" globals@^9.17.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" globby@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" dependencies: array-union "^1.0.1" arrify "^1.0.0" glob "^7.0.3" object-assign "^4.0.1" pify "^2.0.0" pinkie-promise "^2.0.0" globule@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5" dependencies: glob "~3.1.21" lodash "~1.0.1" minimatch "~0.2.11" glogg@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" dependencies: sparkles "^1.0.0" graceful-fs@^3.0.0: version "3.0.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818" dependencies: natives "^1.1.0" graceful-fs@^4.1.2: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" graceful-fs@~1.2.0: version "1.2.3" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364" "graceful-readlink@>= 1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" growl@1.9.2: version "1.9.2" resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" gulp-codacy@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/gulp-codacy/-/gulp-codacy-1.0.0.tgz#e482765f2a6628396ae6c7bd3afe2da03d99502d" dependencies: bluebird "^3.0.5" codacy-coverage "^1.1.3" gulp-util "^3.0.7" lodash.defaults "^3.1.2" lodash.merge "^3.3.2" mz "^2.1.0" through2 "^2.0.0" gulp-coveralls@^0.1.0: version "0.1.4" resolved "https://registry.yarnpkg.com/gulp-coveralls/-/gulp-coveralls-0.1.4.tgz#2f620ac8df62d0b86b4bbde64da367cc41a190c9" dependencies: coveralls "^2.11.2" gulp-util "^3.0.4" through2 "^1.1.1" gulp-eslint@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/gulp-eslint/-/gulp-eslint-4.0.0.tgz#16d9ea4d696e7b7a9d65eeb1aa5bc4ba0a22c7f7" dependencies: eslint "^4.0.0" gulp-util "^3.0.8" gulp-exclude-gitignore@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/gulp-exclude-gitignore/-/gulp-exclude-gitignore-1.1.1.tgz#a9a4ff45e259cddb9e87213323848e9b98baadea" dependencies: gulp-ignore "^2.0.2" gulp-ignore@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/gulp-ignore/-/gulp-ignore-2.0.2.tgz#5c2ea2a0a4402e0ab4a2bcd12efd9295344d78f2" dependencies: gulp-match "^1.0.3" through2 "^2.0.1" gulp-istanbul@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/gulp-istanbul/-/gulp-istanbul-1.1.2.tgz#af65fa28bfdb3576daab95dcfaa732a6a27c5a07" dependencies: gulp-util "^3.0.1" istanbul "^0.4.0" istanbul-threshold-checker "^0.2.1" lodash "^4.0.0" through2 "^2.0.0" vinyl-sourcemaps-apply "^0.2.1" gulp-line-ending-corrector@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gulp-line-ending-corrector/-/gulp-line-ending-corrector-1.0.1.tgz#b9be88c24a00337c4983ff99a4f6c31af1d5654a" dependencies: coffee-script "^1.10.0" gulp-util "^3.0.6" line-ending-corrector "^1.0.0" through2 "^2.0.0" gulp-match@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/gulp-match/-/gulp-match-1.0.3.tgz#91c7c0d7f29becd6606d57d80a7f8776a87aba8e" dependencies: minimatch "^3.0.3" gulp-mocha@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/gulp-mocha/-/gulp-mocha-3.0.1.tgz#ab0ca2c39403718174dddad750e63a61be17e041" dependencies: gulp-util "^3.0.0" mocha "^3.0.0" plur "^2.1.0" req-cwd "^1.0.1" temp "^0.8.3" through "^2.3.4" gulp-nsp@^2.1.0: version "2.4.2" resolved "https://registry.yarnpkg.com/gulp-nsp/-/gulp-nsp-2.4.2.tgz#9ea6c091b8fadf2792aa4b0bd3af01cdde150ef2" dependencies: gulp-util "^3.0.6" nsp "^2.0.0" gulp-plumber@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/gulp-plumber/-/gulp-plumber-1.1.0.tgz#f12176c2d0422f60306c242fff6a01a394faba09" dependencies: gulp-util "^3" through2 "^2" gulp-util@^3, gulp-util@^3.0.0, gulp-util@^3.0.1, gulp-util@^3.0.4, gulp-util@^3.0.6, gulp-util@^3.0.7, gulp-util@^3.0.8: version "3.0.8" resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" dependencies: array-differ "^1.0.0" array-uniq "^1.0.2" beeper "^1.0.0" chalk "^1.0.0" dateformat "^2.0.0" fancy-log "^1.1.0" gulplog "^1.0.0" has-gulplog "^0.1.0" lodash._reescape "^3.0.0" lodash._reevaluate "^3.0.0" lodash._reinterpolate "^3.0.0" lodash.template "^3.0.0" minimist "^1.1.0" multipipe "^0.1.2" object-assign "^3.0.0" replace-ext "0.0.1" through2 "^2.0.0" vinyl "^0.5.0" gulp@^3.9.0: version "3.9.1" resolved "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4" dependencies: archy "^1.0.0" chalk "^1.0.0" deprecated "^0.0.1" gulp-util "^3.0.0" interpret "^1.0.0" liftoff "^2.1.0" minimist "^1.1.0" orchestrator "^0.3.0" pretty-hrtime "^1.0.0" semver "^4.1.0" tildify "^1.0.0" v8flags "^2.0.2" vinyl-fs "^0.3.0" gulplog@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" dependencies: glogg "^1.0.0" handlebars@^4.0.1: version "4.0.6" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.6.tgz#2ce4484850537f9c97a8026d5399b935c4ed4ed7" dependencies: async "^1.4.0" optimist "^0.6.1" source-map "^0.4.4" optionalDependencies: uglify-js "^2.6" har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" dependencies: chalk "^1.1.1" commander "^2.9.0" is-my-json-valid "^2.12.4" pinkie-promise "^2.0.0" has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" dependencies: ansi-regex "^2.0.0" has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" has-gulplog@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" dependencies: sparkles "^1.0.0" hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" dependencies: boom "2.x.x" cryptiles "2.x.x" hoek "2.x.x" sntp "1.x.x" hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" homedir-polyfill@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" dependencies: parse-passwd "^1.0.0" http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" dependencies: assert-plus "^0.2.0" jsprim "^1.2.2" sshpk "^1.7.0" https-proxy-agent@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz#35f7da6c48ce4ddbfa264891ac593ee5ff8671e6" dependencies: agent-base "2" debug "2" extend "3" iconv-lite@^0.4.17: version "0.4.17" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.17.tgz#4fdaa3b38acbc2c031b045d0edcdfe1ecab18c8d" ignore@^3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" dependencies: once "^1.3.0" wrappy "1" inherits@1: version "1.0.2" resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b" inherits@2, inherits@^2.0.3, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" ini@^1.3.4, ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" inquirer@^3.0.6: version "3.1.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.1.0.tgz#e05400d48b94937c2d3caa7038663ba9189aab01" dependencies: ansi-escapes "^2.0.0" chalk "^1.0.0" cli-cursor "^2.1.0" cli-width "^2.0.0" external-editor "^2.0.4" figures "^2.0.0" lodash "^4.3.0" mute-stream "0.0.7" run-async "^2.2.0" rx-lite "^4.0.8" rx-lite-aggregates "^4.0.8" string-width "^2.0.0" strip-ansi "^3.0.0" through "^2.3.6" interpret@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.1.tgz#d579fb7f693b858004947af39fa0db49f795602c" irregular-plurals@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-1.2.0.tgz#38f299834ba8c00c30be9c554e137269752ff3ac" is-absolute@^0.2.3: version "0.2.6" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.2.6.tgz#20de69f3db942ef2d87b9c2da36f172235b1b5eb" dependencies: is-relative "^0.2.1" is-windows "^0.2.0" is-buffer@^1.0.2: version "1.1.4" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b" is-dotfile@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d" is-equal-shallow@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" dependencies: is-primitive "^2.0.0" is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" dependencies: is-extglob "^1.0.0" is-my-json-valid@^2.12.4, is-my-json-valid@^2.16.0: version "2.16.0" resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693" dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" jsonpointer "^4.0.0" xtend "^4.0.0" is-number@^2.0.2, is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" dependencies: kind-of "^3.0.2" is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" is-path-in-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" dependencies: is-path-inside "^1.0.0" is-path-inside@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" dependencies: path-is-inside "^1.0.1" is-posix-bracket@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" is-relative@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.2.1.tgz#d27f4c7d516d175fb610db84bbeef23c3bc97aa5" dependencies: is-unc-path "^0.1.1" is-resolvable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" dependencies: tryit "^1.0.1" is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" is-unc-path@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.2.tgz#6ab053a72573c10250ff416a3814c35178af39b9" dependencies: unc-path-regex "^0.1.0" is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" is-windows@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" isemail@1.x.x: version "1.2.0" resolved "https://registry.yarnpkg.com/isemail/-/isemail-1.2.0.tgz#be03df8cc3e29de4d2c5df6501263f1fa4595e9a" isexe@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0" isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" dependencies: isarray "1.0.0" isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" istanbul-threshold-checker@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/istanbul-threshold-checker/-/istanbul-threshold-checker-0.2.1.tgz#c5dc94e8f2cc5cd3ffd335452f84b553c4248331" dependencies: istanbul "~0.4.5" lodash "~4.17.2" istanbul@^0.4.0, istanbul@~0.4.5: version "0.4.5" resolved "https://registry.yarnpkg.com/istanbul/-/istanbul-0.4.5.tgz#65c7d73d4c4da84d4f3ac310b918fb0b8033733b" dependencies: abbrev "1.0.x" async "1.x" escodegen "1.8.x" esprima "2.7.x" glob "^5.0.15" handlebars "^4.0.1" js-yaml "3.x" mkdirp "0.5.x" nopt "3.x" once "1.x" resolve "1.1.x" supports-color "^3.1.0" which "^1.1.1" wordwrap "^1.0.0" jodid25519@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967" dependencies: jsbn "~0.1.0" joi@^6.4.x, joi@^6.9.1: version "6.10.1" resolved "https://registry.yarnpkg.com/joi/-/joi-6.10.1.tgz#4d50c318079122000fe5f16af1ff8e1917b77e06" dependencies: hoek "2.x.x" isemail "1.x.x" moment "2.x.x" topo "1.x.x" js-tokens@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.0.tgz#a2f2a969caae142fb3cd56228358c89366957bd1" js-yaml@3.6.1: version "3.6.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.6.1.tgz#6e5fe67d8b205ce4d22fad05b7781e8dadcc4b30" dependencies: argparse "^1.0.7" esprima "^2.6.0" js-yaml@3.x, js-yaml@^3.8.4: version "3.8.4" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.4.tgz#520b4564f86573ba96662af85a8cafa7b4b5a6f6" dependencies: argparse "^1.0.7" esprima "^3.1.1" jsbn@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd" jschardet@^1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.4.2.tgz#2aa107f142af4121d145659d44f50830961e699a" json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" json-stable-stringify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" dependencies: jsonify "~0.0.0" json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" json3@3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" jsonpointer@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" jsprim@^1.2.2: version "1.3.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252" dependencies: extsprintf "1.0.2" json-schema "0.2.3" verror "1.3.6" kind-of@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47" dependencies: is-buffer "^1.0.2" lazy-cache@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" lcov-parse@0.0.10, lcov-parse@0.x: version "0.0.10" resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-0.0.10.tgz#1b0b8ff9ac9c7889250582b70b71315d9da6d9a3" levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" liftoff@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.3.0.tgz#a98f2ff67183d8ba7cfaca10548bd7ff0550b385" dependencies: extend "^3.0.0" findup-sync "^0.4.2" fined "^1.0.1" flagged-respawn "^0.3.2" lodash.isplainobject "^4.0.4" lodash.isstring "^4.0.1" lodash.mapvalues "^4.4.0" rechoir "^0.6.2" resolve "^1.1.7" line-ending-corrector@^1.0.0: version "1.0.0" resolved "http://registry.npmjs.org/line-ending-corrector/-/line-ending-corrector-1.0.0.tgz#b13cdef8ad36aeec02a1f677621c41bd0253bd9b" dependencies: coffee-script "^1.10.0" lodash._arraycopy@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz#76e7b7c1f1fb92547374878a562ed06a3e50f6e1" lodash._arrayeach@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz#bab156b2a90d3f1bbd5c653403349e5e5933ef9e" lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" dependencies: lodash._basecopy "^3.0.0" lodash.keys "^3.0.0" lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" lodash._basecreate@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" lodash._basefor@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2" lodash._basetostring@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" lodash._basevalues@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" lodash._bindcallback@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" lodash._createassigner@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" dependencies: lodash._bindcallback "^3.0.0" lodash._isiterateecall "^3.0.0" lodash.restparam "^3.0.0" lodash._getnative@^3.0.0: version "3.9.1" resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" lodash._isiterateecall@^3.0.0: version "3.0.9" resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" lodash._reescape@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" lodash._reevaluate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" lodash._reinterpolate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" lodash._root@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" lodash.assign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa" dependencies: lodash._baseassign "^3.0.0" lodash._createassigner "^3.0.0" lodash.keys "^3.0.0" lodash.assignwith@^4.0.7: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz#127a97f02adc41751a954d24b0de17e100e038eb" lodash.create@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" dependencies: lodash._baseassign "^3.0.0" lodash._basecreate "^3.0.0" lodash._isiterateecall "^3.0.0" lodash.defaults@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c" dependencies: lodash.assign "^3.0.0" lodash.restparam "^3.0.0" lodash.escape@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" dependencies: lodash._root "^3.0.0" lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" lodash.isarray@^3.0.0: version "3.0.4" resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" lodash.isempty@^4.2.1: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.isempty/-/lodash.isempty-4.4.0.tgz#6f86cbedd8be4ec987be9aaf33c9684db1b31e7e" lodash.isplainobject@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-3.2.0.tgz#9a8238ae16b200432960cd7346512d0123fbf4c5" dependencies: lodash._basefor "^3.0.0" lodash.isarguments "^3.0.0" lodash.keysin "^3.0.0" lodash.isplainobject@^4.0.4: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" lodash.isstring@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" lodash.istypedarray@^3.0.0: version "3.0.6" resolved "https://registry.yarnpkg.com/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz#c9a477498607501d8e8494d283b87c39281cef62" lodash.keys@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" dependencies: lodash._getnative "^3.0.0" lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" lodash.keysin@^3.0.0: version "3.0.8" resolved "https://registry.yarnpkg.com/lodash.keysin/-/lodash.keysin-3.0.8.tgz#22c4493ebbedb1427962a54b445b2c8a767fb47f" dependencies: lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" lodash.mapvalues@^4.4.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz#1bafa5005de9dd6f4f26668c30ca37230cc9689c" lodash.merge@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-3.3.2.tgz#0d90d93ed637b1878437bb3e21601260d7afe994" dependencies: lodash._arraycopy "^3.0.0" lodash._arrayeach "^3.0.0" lodash._createassigner "^3.0.0" lodash._getnative "^3.0.0" lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" lodash.isplainobject "^3.0.0" lodash.istypedarray "^3.0.0" lodash.keys "^3.0.0" lodash.keysin "^3.0.0" lodash.toplainobject "^3.0.0" lodash.pick@^4.2.1: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" lodash.restparam@^3.0.0: version "3.6.1" resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" lodash.template@^3.0.0: version "3.6.2" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" dependencies: lodash._basecopy "^3.0.0" lodash._basetostring "^3.0.0" lodash._basevalues "^3.0.0" lodash._isiterateecall "^3.0.0" lodash._reinterpolate "^3.0.0" lodash.escape "^3.0.0" lodash.keys "^3.0.0" lodash.restparam "^3.0.0" lodash.templatesettings "^3.0.0" lodash.templatesettings@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" dependencies: lodash._reinterpolate "^3.0.0" lodash.escape "^3.0.0" lodash.toplainobject@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash.toplainobject/-/lodash.toplainobject-3.0.0.tgz#28790ad942d293d78aa663a07ecf7f52ca04198d" dependencies: lodash._basecopy "^3.0.0" lodash.keysin "^3.0.0" lodash@^3.10.0: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" lodash@^4.0.0, lodash@^4.17.4, lodash@^4.3.0, lodash@~4.17.2: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" lodash@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551" log-driver@1.2.5, log-driver@^1.x: version "1.2.5" resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.5.tgz#7ae4ec257302fd790d557cb10c97100d857b0056" lolex@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/lolex/-/lolex-1.6.0.tgz#3a9a0283452a47d7439e72731b9e07d7386e49f6" longest@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" lru-cache@2: version "2.7.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" map-cache@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" micromatch@^2.3.7: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: arr-diff "^2.0.0" array-unique "^0.2.1" braces "^1.8.2" expand-brackets "^0.1.4" extglob "^0.3.1" filename-regex "^2.0.0" is-extglob "^1.0.0" is-glob "^2.0.1" kind-of "^3.0.2" normalize-path "^2.0.1" object.omit "^2.0.0" parse-glob "^3.0.4" regex-cache "^0.4.2" mime-db@~1.26.0: version "1.26.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff" mime-types@^2.1.11, mime-types@~2.1.7: version "2.1.14" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee" dependencies: mime-db "~1.26.0" mimic-fn@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" "minimatch@2 || 3", minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: brace-expansion "^1.1.7" minimatch@^2.0.1: version "2.0.10" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7" dependencies: brace-expansion "^1.0.0" minimatch@~0.2.11: version "0.2.14" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a" dependencies: lru-cache "2" sigmund "~1.0.0" minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" minimist@1.2.0, minimist@^1.1.0, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" mocha@^3.0.0, mocha@^3.4.2: version "3.4.2" resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.4.2.tgz#d0ef4d332126dbf18d0d640c9b382dd48be97594" dependencies: browser-stdout "1.3.0" commander "2.9.0" debug "2.6.0" diff "3.2.0" escape-string-regexp "1.0.5" glob "7.1.1" growl "1.9.2" json3 "3.3.2" lodash.create "3.1.1" mkdirp "0.5.1" supports-color "3.1.2" mockery@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mockery/-/mockery-2.1.0.tgz#5b0aef1ff564f0f8139445e165536c7909713470" moment@2.x.x: version "2.17.1" resolved "https://registry.yarnpkg.com/moment/-/moment-2.17.1.tgz#fed9506063f36b10f066c8b59a144d7faebe1d82" ms@0.7.2: version "0.7.2" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" multipipe@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" dependencies: duplexer2 "0.0.2" mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" mz@^2.1.0: version "2.6.0" resolved "https://registry.yarnpkg.com/mz/-/mz-2.6.0.tgz#c8b8521d958df0a4f2768025db69c719ee4ef1ce" dependencies: any-promise "^1.0.0" object-assign "^4.0.1" thenify-all "^1.0.0" native-promise-only@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/native-promise-only/-/native-promise-only-0.8.1.tgz#20a318c30cb45f71fe7adfbf7b21c99c1472ef11" natives@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.0.tgz#e9ff841418a6b2ec7a495e939984f78f163e6e31" natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" node-uuid@~1.4.7: version "1.4.7" resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.7.tgz#6da5a17668c4b3dd59623bda11cf7fa4c1f60a6f" nodesecurity-npm-utils@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/nodesecurity-npm-utils/-/nodesecurity-npm-utils-5.0.0.tgz#05aa30de30ca8c845c4048e94fd78e5e08b55ed9" nopt@3.x: version "3.0.6" resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" dependencies: abbrev "1" normalize-path@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a" nsp@^2.0.0: version "2.6.2" resolved "https://registry.yarnpkg.com/nsp/-/nsp-2.6.2.tgz#93dfb4c5b2885cc354d8ca18b73f09e52b9c8b16" dependencies: chalk "^1.1.1" cli-table "^0.3.1" https-proxy-agent "^1.0.0" joi "^6.9.1" nodesecurity-npm-utils "^5.0.0" path-is-absolute "^1.0.0" rc "^1.1.2" semver "^5.0.3" subcommand "^2.0.3" wreck "^6.3.0" oauth-sign@~0.8.1: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" object-assign@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" object-assign@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" object.omit@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" dependencies: for-own "^0.1.4" is-extendable "^0.1.1" once@1.x, once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: wrappy "1" once@~1.3.0: version "1.3.3" resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" dependencies: wrappy "1" onetime@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.0.tgz#52aa8110e52fc5126ffc667bd8ec21c2ed209ce6" dependencies: mimic-fn "^1.0.0" optimist@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: minimist "~0.0.1" wordwrap "~0.0.2" optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" dependencies: deep-is "~0.1.3" fast-levenshtein "~2.0.4" levn "~0.3.0" prelude-ls "~1.1.2" type-check "~0.3.2" wordwrap "~1.0.0" orchestrator@^0.3.0: version "0.3.8" resolved "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.8.tgz#14e7e9e2764f7315fbac184e506c7aa6df94ad7e" dependencies: end-of-stream "~0.1.5" sequencify "~0.0.7" stream-consume "~0.1.0" ordered-read-streams@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126" os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" os-tmpdir@^1.0.0, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" parse-filepath@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.1.tgz#159d6155d43904d16c10ef698911da1e91969b73" dependencies: is-absolute "^0.2.3" map-cache "^0.2.0" path-root "^0.1.1" parse-glob@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" dependencies: glob-base "^0.3.0" is-dotfile "^1.0.0" is-extglob "^1.0.0" is-glob "^2.0.0" parse-passwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" path-root-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" path-root@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" dependencies: path-root-regex "^0.1.0" path-to-regexp@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" dependencies: isarray "0.0.1" pathval@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" plur@^2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/plur/-/plur-2.1.2.tgz#7482452c1a0f508e3e344eaec312c91c29dc655a" dependencies: irregular-plurals "^1.0.0" pluralize@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-4.0.0.tgz#59b708c1c0190a2f692f1c7618c446b052fd1762" prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" pretty-hrtime@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" progress@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" qs@~6.2.0: version "6.2.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.1.tgz#ce03c5ff0935bc1d9d69a9f14cbd18e568d67625" randomatic@^1.1.3: version "1.1.6" resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb" dependencies: is-number "^2.0.2" kind-of "^3.0.2" rc@^1.1.2: version "1.1.6" resolved "https://registry.yarnpkg.com/rc/-/rc-1.1.6.tgz#43651b76b6ae53b5c802f1151fa3fc3b059969c9" dependencies: deep-extend "~0.4.0" ini "~1.3.0" minimist "^1.2.0" strip-json-comments "~1.0.4" "readable-stream@>=1.0.33-1 <1.1.0-0": version "1.0.34" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" "readable-stream@>=1.1.13-1 <1.2.0-0", readable-stream@~1.1.9: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" readable-stream@^2.1.5, readable-stream@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e" dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" inherits "~2.0.1" isarray "~1.0.0" process-nextick-args "~1.0.6" string_decoder "~0.10.x" util-deprecate "~1.0.1" readable-stream@~2.0.5: version "2.0.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "~1.0.0" process-nextick-args "~1.0.6" string_decoder "~0.10.x" util-deprecate "~1.0.1" rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" dependencies: resolve "^1.1.6" regex-cache@^0.4.2: version "0.4.3" resolved "http://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" dependencies: is-equal-shallow "^0.1.3" is-primitive "^2.0.0" repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" repeat-string@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" replace-ext@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" req-cwd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/req-cwd/-/req-cwd-1.0.1.tgz#0d73aeae9266e697a78f7976019677e76acf0fff" dependencies: req-from "^1.0.1" req-from@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/req-from/-/req-from-1.0.1.tgz#bf81da5147947d32d13b947dc12a58ad4587350e" dependencies: resolve-from "^2.0.0" request-promise@^0.x: version "0.4.3" resolved "https://registry.yarnpkg.com/request-promise/-/request-promise-0.4.3.tgz#3c8ddc82f06f8908d720aede1d6794258e22121c" dependencies: bluebird "^2.3" chalk "^1.1.0" lodash "^3.10.0" request "^2.34" request@2.75.0, request@^2.34: version "2.75.0" resolved "https://registry.yarnpkg.com/request/-/request-2.75.0.tgz#d2b8268a286da13eaa5d01adf5d18cc90f657d93" dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" bl "~1.1.2" caseless "~0.11.0" combined-stream "~1.0.5" extend "~3.0.0" forever-agent "~0.6.1" form-data "~2.0.0" har-validator "~2.0.6" hawk "~3.1.3" http-signature "~1.1.0" is-typedarray "~1.0.0" isstream "~0.1.2" json-stringify-safe "~5.0.1" mime-types "~2.1.7" node-uuid "~1.4.7" oauth-sign "~0.8.1" qs "~6.2.0" stringstream "~0.0.4" tough-cookie "~2.3.0" tunnel-agent "~0.4.1" require-uncached@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" dependencies: caller-path "^0.1.0" resolve-from "^1.0.0" resolve-dir@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e" dependencies: expand-tilde "^1.2.2" global-modules "^0.2.3" resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" resolve-from@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" resolve@1.1.x: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" resolve@^1.1.6, resolve@^1.1.7: version "1.2.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.2.0.tgz#9589c3f2f6149d1417a40becc1663db6ec6bc26c" restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" dependencies: onetime "^2.0.0" signal-exit "^3.0.2" right-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" dependencies: align-text "^0.1.1" rimraf@^2.2.8, rimraf@~2.2.6: version "2.2.8" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" dependencies: is-promise "^2.1.0" rx-lite-aggregates@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" dependencies: rx-lite "*" rx-lite@*, rx-lite@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" samsam@1.x, samsam@^1.1.3: version "1.2.1" resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.2.1.tgz#edd39093a3184370cb859243b2bdf255e7d8ea67" semver@^4.1.0: version "4.3.6" resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" semver@^5.0.3: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" semver@~5.0.1: version "5.0.3" resolved "https://registry.yarnpkg.com/semver/-/semver-5.0.3.tgz#77466de589cd5d3c95f138aa78bc569a3cb5d27a" sequencify@~0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c" sigmund@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" sinon@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/sinon/-/sinon-2.3.6.tgz#95378e7e0f976a9712e9b4591ff5b39e73dc3dde" dependencies: diff "^3.1.0" formatio "1.2.0" lolex "^1.6.0" native-promise-only "^0.8.1" path-to-regexp "^1.7.0" samsam "^1.1.3" text-encoding "0.6.4" type-detect "^4.0.0" slice-ansi@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" dependencies: hoek "2.x.x" source-map@^0.4.4: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: amdefine ">=0.0.4" source-map@^0.5.1, source-map@~0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" source-map@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" dependencies: amdefine ">=0.0.4" sparkles@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: version "1.10.2" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.2.tgz#d5a804ce22695515638e798dbe23273de070a5fa" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" dashdash "^1.12.0" getpass "^0.1.1" optionalDependencies: bcrypt-pbkdf "^1.0.0" ecc-jsbn "~0.1.1" jodid25519 "^1.0.0" jsbn "~0.1.0" tweetnacl "~0.14.0" stream-consume@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f" string-width@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.0.0.tgz#635c5436cc72a6e0c387ceca278d4e2eec52687e" dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^3.0.0" string-width@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.0.tgz#030664561fc146c9423ec7d978fe2457437fe6d0" dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" stringstream@~0.0.4: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" dependencies: ansi-regex "^2.0.0" strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" dependencies: ansi-regex "^3.0.0" strip-bom@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794" dependencies: first-chunk-stream "^1.0.0" is-utf8 "^0.2.0" strip-json-comments@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" subcommand@^2.0.3: version "2.1.0" resolved "https://registry.yarnpkg.com/subcommand/-/subcommand-2.1.0.tgz#5e4ceca5a3779e3365b1511e05f866877302f760" dependencies: cliclopts "^1.1.0" debug "^2.1.3" minimist "^1.2.0" xtend "^4.0.0" supports-color@3.1.2, supports-color@^3.1.0: version "3.1.2" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" dependencies: has-flag "^1.0.0" supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" supports-color@^4.0.0: version "4.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.0.tgz#ad986dc7eb2315d009b4d77c8169c2231a684037" dependencies: has-flag "^2.0.0" table@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/table/-/table-4.0.1.tgz#a8116c133fac2c61f4a420ab6cdf5c4d61f0e435" dependencies: ajv "^4.7.0" ajv-keywords "^1.0.0" chalk "^1.1.1" lodash "^4.0.0" slice-ansi "0.0.4" string-width "^2.0.0" temp@^0.8.3: version "0.8.3" resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" dependencies: os-tmpdir "^1.0.0" rimraf "~2.2.6" text-encoding@0.6.4: version "0.6.4" resolved "https://registry.yarnpkg.com/text-encoding/-/text-encoding-0.6.4.tgz#e399a982257a276dae428bb92845cb71bdc26d19" text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" thenify-all@^1.0.0: version "1.6.0" resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" dependencies: thenify ">= 3.1.0 < 4" "thenify@>= 3.1.0 < 4": version "3.3.0" resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.0.tgz#e69e38a1babe969b0108207978b9f62b88604839" dependencies: any-promise "^1.0.0" through2@^0.6.1: version "0.6.5" resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" dependencies: readable-stream ">=1.0.33-1 <1.1.0-0" xtend ">=4.0.0 <4.1.0-0" through2@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/through2/-/through2-1.1.1.tgz#0847cbc4449f3405574dbdccd9bb841b83ac3545" dependencies: readable-stream ">=1.1.13-1 <1.2.0-0" xtend ">=4.0.0 <4.1.0-0" through2@^2, through2@^2.0.0, through2@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" dependencies: readable-stream "^2.1.5" xtend "~4.0.1" through@^2.3.4, through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" tildify@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a" dependencies: os-homedir "^1.0.0" time-stamp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" tmp@^0.0.31: version "0.0.31" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" dependencies: os-tmpdir "~1.0.1" topo@1.x.x: version "1.1.0" resolved "https://registry.yarnpkg.com/topo/-/topo-1.1.0.tgz#e9d751615d1bb87dc865db182fa1ca0a5ef536d5" dependencies: hoek "2.x.x" tough-cookie@~2.3.0: version "2.3.2" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" dependencies: punycode "^1.4.1" tryit@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" tunnel-agent@~0.4.1: version "0.4.3" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" dependencies: prelude-ls "~1.1.2" type-detect@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-3.0.0.tgz#46d0cc8553abb7b13a352b0d6dea2fd58f2d9b55" type-detect@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.3.tgz#0e3f2670b44099b0b46c284d136a7ef49c74c2ea" typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" uglify-js@^2.6: version "2.7.5" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.5.tgz#4612c0c7baaee2ba7c487de4904ae122079f2ca8" dependencies: async "~0.2.6" source-map "~0.5.1" uglify-to-browserify "~1.0.0" yargs "~3.10.0" uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" unc-path-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" unique-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b" user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" v8flags@^2.0.2: version "2.0.11" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881" dependencies: user-home "^1.1.1" verror@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" dependencies: extsprintf "1.0.2" vinyl-fs@^0.3.0: version "0.3.14" resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6" dependencies: defaults "^1.0.0" glob-stream "^3.1.5" glob-watcher "^0.0.6" graceful-fs "^3.0.0" mkdirp "^0.5.0" strip-bom "^1.0.0" through2 "^0.6.1" vinyl "^0.4.0" vinyl-sourcemaps-apply@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz#ab6549d61d172c2b1b87be5c508d239c8ef87705" dependencies: source-map "^0.5.1" vinyl@^0.4.0: version "0.4.6" resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" dependencies: clone "^0.2.0" clone-stats "^0.0.1" vinyl@^0.5.0: version "0.5.3" resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" dependencies: clone "^1.0.0" clone-stats "^0.0.1" replace-ext "0.0.1" which@^1.1.1, which@^1.2.12: version "1.2.12" resolved "https://registry.yarnpkg.com/which/-/which-1.2.12.tgz#de67b5e450269f194909ef23ece4ebe416fa1192" dependencies: isexe "^1.1.1" window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" wordwrap@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" wordwrap@^1.0.0, wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" wreck@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/wreck/-/wreck-6.3.0.tgz#a1369769f07bbb62d6a378336a7871fc773c740b" dependencies: boom "2.x.x" hoek "2.x.x" write@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" dependencies: mkdirp "^0.5.1" "xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" yargs@~3.10.0: version "3.10.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" dependencies: camelcase "^1.0.2" cliui "^2.1.0" decamelize "^1.0.0" window-size "0.1.0"