All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Guiding Principles
- Changelogs are for humans, not machines.
- There should be an entry for every single version.
- The same types of changes should be grouped.
- Versions and sections should be linkable.
- The latest version comes first.
- The release date of each versions is displayed.
- Mention whether you follow Semantic Versioning.
Types of changes
Changelog entries are classified using the following labels (from keep-a-changelog):
Added
for new features.Changed
for changes in existing functionality.Deprecated
for soon-to-be removed features.Removed
for now removed features.Fixed
for any bug fixes.Security
in case of vulnerabilities.
- Upgraded ansi-colors dependency to v4, thanks to @trySound, #297.
- PR #259 fixed typing numbers in the autocomplete prompt, which fixes #112, #199, and #237
- PR #266 add the
template
property to theSnippetPromptOptions
TypeScript interface
MultiSelectPrompt
new example forresult
option.
- Updated typings to use
EventEmitter
class fromevents
directly due to changes in@types/node
.
BooleanPrompt
new example forheader
option.
- using
await
inkeypress
and returning thenumber
result in thearray
type fixes an issue with tests failing only on Travis autocomplete
highlighting issue- Typos in some documentation and example comments.
- Syntax errors in example code on the README.md.
AuthPrompt
type for creating authentication based prompts.BasicAuth
prompt as an example of creating an authentication prompt using basic username/password authentication- Examples for different authentication prompts.
QuizPrompt
- More examples were updated to fix any known bugs.
- Couple of fixes to the editable and autocomplete prompts.
- Documentation updates to highlight options available to some prompts.
- Several examples were updated to align with latest code changes and to fix small bugs found in the implementation of the example.
- Some bugs found from updating examples were fixed.
- Updates to documentation to provide more information on how to use prompts and the options available.
- Several improvements were made for handling custom
format
,result
andinitial
functions defined on the options.
validate
function now properly acceptsfalse
as a return value, thanks to @g-plane.
- Adds support for ctrl+n to add choices
- Adds support for
options.required
on all prompts. Uses the built-invalidate()
function, allowing this functionality to be overridden or customized. - Adds support for
options.scroll
to disable scrolling in array prompts. - Adds support for
options.onRun
, which is called whenprompt.run()
is called, after the readline instance is created. - Adds support for
options.history
on theInput
andText
prompts. - Adds support for
options.term
to set the terminal, thanks to @tunnckoCore. At the moment this is only used in a couple of edge cases with theSurvey
andScale
prompts to check if the terminal is Hyper. options.skip
may now be a Boolean, thanks to @tunnckoCore
Enquire 2.0 is a bottom-up complete re-write:
- Several prompts that were previously published as individual packages will be included in Enquirer itself.
- Why? - As users, we didn't like having to add commonly-used prompts as plugins. Enquirer 2.0 will still support custom prompts as plugins, but many prompts will also be built-in.
- Enquirer will only have a single dependency, https://github.com/doowb/ansi-colors, which itself has no other dependencies). This will make Enquirer easier to maintain and faster for users.
- Methods for registering "questions" have been removed. While it was nice to be able to preregister questions that could be called upon later, this is something that is better left to implementors, as it's relatively trivial to do with custom code.
options.default
is nowoptions.initial
- Many prompts that were previously separate packages are now bundled into Enquirer itself.