CHANGELOG markdown template
29 March 2019
Markdown
Web
Development
1_CHANGELOG.md_Template
CHANGELOG
Version 0.5.9 - Beta
- Add: The new Russian Translation. Many Thanks to elPesecillo (#41)!
- Add: The new experimental
linguisticRulesoptions, which allows to regex letters, which are (used) similiar. Thanks to (#42). - Update: [ES6] Changed the last
varvariables intolet.
Version 0.5.8 - Beta
- Add: The new Russian Translation. Many Thanks to Roman Yepanchenko (#38)!
- Add: Allow callback functions as strings to allow a deeper translation.
- Add: The new internal method
_e, which handles the translations. - Bugfix: Invalid
bower.jsonfile.
Version 0.5.7 - Beta
- Info: It isn’t longer possible to get an option using the internal option number!
- Remove: The internal-Array storage has been completely removed.
- Bugfix: The
.remove()method on the options hasn’t worked on the internal-Array storage. - Bugfix: The ECMAScript 6 Version returns an Array, while the default version does not.
- Bugfix: TypeError: Cannot convert undefined or null to object. Thanks To: #32
- Bugfix: Remove default options sorting. Thanks To: #37
Version 0.5.6 - Beta
- Add: The new Brazilian Portuguese Translation. Many Thanks to Igor (#34)!
- Update: the
bower.jsonandpackage.jsonfiles - Update: Add 2019 to all Copyright notes.
Version 0.5.5 - Beta
- Add: The new
searchDisabledoption, which allows to exclude disabled options on the search. - Update: The
.finder()method depends now on the.find()method. - Bugfix: Wrong Version Number on the main object.
- Bugfix: Options floats over the dropdown field. #28
- Bugfix: Terrible performance of search when descriptions included Thanks to: #27
- Bugfix: Search functionality hangs exponentially when regular expression matches against larger source options. Thanks to: #24
- Merged: (#25)[https://github.com/pytesNET/tail.select/pull/25], thanks to AndrewDRX.
Version 0.5.4 - Beta
- Add: The new
modify()method on the string Storage to change the strings globally. Requested by: ashucg @ #20. - Update: The
.register()method checks now if locale is a string and object a object. - Update: The
.register()method returns nowtrueon success andfalseon failure! - Bugfix: ES6 The “Select All” Button doesn’t work on Search (All options gets selected).
- Bugfix: Z-Index CSS Styling bug (:hover). Thanks to: #19.
- Bugfix: Unnecessary Scrollbar (during a wrong calculation of the dropdown field). Thanks to: #19.
- Bugfix: “Select All” Button selects more items as shown on search results. Thanks to #21
- Bugfix: Search functionality breaks when source select’s options contain hyphenated attributes. Thanks to: #22.
- Merged: (#23)[https://github.com/pytesNET/tail.select/pull/23], thanks to AndrewDRX.
Version 0.5.3 - Beta
- Add: The new
.walk()method on the tailOptions class to “loop” multiple items. - Add: The new internal variable
_queryfor the current query. - Update: Changed the RegExp
\b, because it isn’t accurate enough. - Update: The complete
sourceBindlistener function has been renewed / fixed. - Update: The
.enable()and.disable()methods allows now a single parameter, which controls the new rendering if the respective DOM Elements. - Update: Support also [{ key: <>, […] }] array objects.
- Remove: Unused variable
_pos. - Bugfix: The “(Un)Select All” buttons were not limited to the current query!
- Bugfix: The
.en/disable()methods doesn’t sets the configuration correctly. - Bugfix: The
descriptionproperty on theitemsoption is required. Thanks to: #15 - Bugfix: Only the last item gets unchecked after pressing “Unselect All” on specific conditions. Thanks to: #16
- Bugfix: When the
sourceBindoption istrue, the dropdown becomes unusable! Thanks to: #17 - Bugfix: Throws
TypeErroron “(Un)Select All” buttons on Search Queries. Thanks to: #18 - Bugfix: Wrong
.en/disable()and.config(disabled, true|false)order. Thanks to: #12
Version 0.5.2 - Beta
- Hotfix: Trigger hasn’t triggered on each call!
Version 0.5.1 - Beta
- Hotfix: Wrong If-Condition for
sourceHide. - Hotfix: Wrong attribute assignment on the tail.select field for
sourceHide.
Version 0.5.0 - Beta
- Info: The ES6 Edition is just a “REALLY experimental” version!
- Info: The Priority has changed: Defined Settings > Element Attributes!
- Add: The new French Translation. Many Thanks to Anthony Rabine (#11)!
- Add: The origin select fields gets now also triggered on any
change/inputevent. Thanks to: #10. - Add: Three new designs “Bootstrap2”, “Bootstrap3” and “Bootstrap4” (+ Multiple Color Schemes).
- Add: A IE incompatible, highly modern ECMAScript 2015 (6) edition (as *-es6.js).
- Add: The new script version
tail.select-full(.min).js, which contains also all language strings. - Add: The new additional file
langs/tail.select-all(.min).jswhich contains all language strings. - Add: Key Listener: Use the Arrow Keys (Down, Up) to scroll through the opened dropdown list.
- Add: Key Listener: Use the Enter / Return Key to “click” on the focused option.
- Add: Key Listener: Use the Escape Key to close the dropdown list.
- Add: The new helper method
create(). - Add: The new option
locale, to change the shown language strings. - Add: The new option
disabled, which disables the complete tail.select instance. - Add: The new option
multiShowLimit, which shows the max. number of selectable options. - Add: The new option
sourceBindandsourceHidereplaces the deprecated methodsbindSourceSelectandhideSelectrespectively. - Add: The new callback option
cbComplete, which fires when the tail.select instance has been completely rendered. - Add: The new option
multiPinSelected, which “pins” selected options to the top of the dropdown list. - Add: The new public methods
enable()anddisable()to en/dis -able the complete field. Thanks to: #12. - Add: The new tailOptions methods
.select(),.unselect(),.enable()and.disable(). - Add: The new tailOptions methods
.toggle(),.invert()and.all(). - Add: The new tailOptions methods
.move()to change the optgroup of an option. - Update: The helper methods.
- Update: The
sourceBindevent listener has been optimized and renewed. - Update: The
tailOptionsclass is now an ArrayLike object. - Update: The settings are higher ranked then the select attributes.
- Update: Switched from SASS (SCSS) to LESS.
- Update: Language Files and Locale / Translation System.
- Update: The new language files are now compatible with AMD.
- Update: Many design changes on the default and modern theme.
- Update: Some Changes on the main RegExp on the search function. Thanks to: You’ve been Haacked
- Update: The tail.select container will be inserted AFTER the source select field.
- Update: Check the source select field stylings.
- Update: A new animation flow, using
setTimeout(). - Update: The
bind()method binds global events only and gets called by the constructor. - Update: The internal
_replaceTypomethod has been renamed into_r. - Update: The internal
build()method has been replaced by the API methodquery(). - Update: Remove the
nameattribute on the source select field when usingcsvOutput. - Update: The option
widthnow also supports other length units next to “px”. - Update: The option
multiContainerallows now also “true” as value, to move selected options to the label element of the respective tail.select instance. - Update: The main callback function
cbLoopItemcan now also returnnullto skip the item and false to “skip / escape” the complete render Loop. - Update: The public method
.config()allows now an object as first parameter to set multiple settings at once. - Update: The public method
.config()allows now a third parameter, which prevents the rebuilding of the selection field, if you change any option. - Update: The
update*()API methods replaces allset*()API methods. - Remove: The
tail.animate()helper function. - Remove: The
bindSourceSelectandhideSelectoptions has been replaced. - Remove: The
.walk()method has been removed (usewalker()instead). - Remove: The
.build()method has been removed (usequery()instead). - Remove: The
.choose()method has been removed (use the tail options API instead). - Bugfix: The
placeholderattribute is used with.getAttribute(), because its invalid HTML 5! - Bugfix: The custom group sorting hasn’t worked due to an faulty statement.
- Bugfix: The HTML option structure was invalid (
ul ul liinstead oful li ul li). - Bugfix: The hidden csvInput field functions didn’t work on specific cases.
- Bugfix: The
clonehelper function didn’t worked on the IE 9+ browsers. - Bugfix: Tags duplicated when preselected Thanks to: #14.
- Bugfix: Non-Source Options gets duplicated. Thanks to: #13.
- Bugfix: The hidden csvInput field is rendered, even if the option is disabled Thanks to: #12.
- Bugfix: The instance ignores the disabled attribute on the main source element. Thanks to: #12.
- Bugfix: Check the visibility of the source select field. Thanks to: #10.
Version 0.4.2 - Beta
- Bugfix: Search problem #8, Thanks to elPesecillo!
Version 0.4.1 - Beta
- Add: The new design
modern-whiteas additional stylesheettail.select-modern-white.css. - Add: The
.scsspreprocessor stylesheet(-ing) (I’m new at pre-processing, and I’m not sure if i’m using it right :/). - Update: Many design changed and optimizations.
- Bugfix: Ignoring
selectedattribute #6, Thanks to tomasKucera!
Version 0.4.0 - Beta
- Info: First Beta Version
- Add: A custom event listener which allows more details / arguments.
- Add: The new
on()method to use the new custom event listener. - Add: The new
config()method to get and set configurations after init. - Add: The new
setCSVInput()method to handle the CSV Input field. - Add: The new internal
trigger()method which handles the events. - Add: The new default
createGroup()andcreateItem()callback methods. - Add: The new
cbLoopItemandcbLoopGroupoptions, which allows to use a custom callback function for the creation of options and groups within the dropdown list. - Add: The new
multiSelectAllandmultiSelectGroupoptions, which allows to (un)select all options or all options within a group! - Add: The new
walker()function which replaceswalk(). - Add: The additional class name
in-searchon search-results. - Update: The jQuery and MooTools Bindings.
- Update: The
init()method ontailOptionsuses now alsoset(). - Update: The
reload()method uses the same instance instead of creating a new one. - Update: The
open(),close()andtoggle()method accepts now one parameter, which disables | the animation (if turned on). - Update: The Group will also be shown on search-results.
- Update: New strings including a new string-key structure (+ updated translations).
- Update: Assign HTML String method instead of Single Element Creation on
init(). - Update: The default option for
heighthas been changed to 350 (px) according to the newmaxHeightJS-based setup (replaces the CSS setup). - Update: The sort callback on the
walker()method is now called directly instead as callback within thesort()function! - Update: The CSS design has been modified and adapted to the new features.
- Codacy: Expected ‘!==’ and instead saw ‘!=’. (eqeqeq)
- Codacy: Avoid assignments in operands. (At least on if)
- Codacy: ‘tailOptions’ was used before it was defined. (no-use-before-define)
- Codacy: ‘i’ is already defined. (no-redeclare)
- Rename: The internval variable
tailSelect.instanceshas been renamed intotailSelect.inst. - Bugfix: Displaying of tail.select out of viewport #4, Thanks to tomasKucera!
- Bugfix: The
itemsoption object doesn’t added a option description. - Bugfix: Don’t close the dropdown list, when playing with the
multiContainerelement. - Bugfix: Already selected items can be selected again!
- Bugfix: Load Items into the
multiContainerandcsvInputfield on soft reloads. - Deprecated: The
walk()function has been marked as deprecated and gets removed in the future!
Version 0.3.6 - Alpha
- Hotfix: Mismatching / Faulty Search Regex on different HTML conditions.
Version 0.3.5 - Alpha
- Update: Change for loop expression.
- Codacy: ‘ev’ is already defined. (no-redeclare).
- Codacy: ‘ev’ used outside of binding context. (block-scoped-var).
- Bugfix: Constructor Instance check.
- Bugfix: Wrong Version Number.
- Hotfix: Searching when data-description containes > char #2, Thanks to tomasKucera!
Version 0.3.4 - Alpha
- Info: I don’t understand why some JS window/DOM-depended libraries exports their library to
nodeJS using
module.exports, so I’ll just offer AMD only for the moment! - Add: The options
csvOutputandcsvSeparatoras well as a hidden CSV input method. - Add: Support as Asynchronous Module Definition, tested with requireJS (I’m new with AMD).
- Update: The
animateoption is now set totrueper default! - Update: Correct use of the labels / placeholders.
- Update: The string-keys (+ the german translation).
- Bugfix: Escape RegExp Characters in Search string.
Version 0.3.3 - Alpha
- Hotfix: Nothing can be selected anymore when using the search function #1, Thanks to markteunen65!
Version 0.3.2 - Alpha
- Add: jQuery bindings, tested with jQuery v.1.12.4 only!
- Add: MooTools bindings, text with MooTools 1.5.2 only!
- Update: The helper method
animate()is now backward compatible with IE >= 9. - Update: Add
Object.assigncheck directly to theclone()method. - Codacy: Avoid assignments in operands.
- Codacy: Use ===/!== to compare with true/false or Numbers.
- Codacy: Always provide a base when using parseInt() functions.
- Codacy: Unsafe assignment to innerHTML.
- Codacy: Move the invocation into the parens that contain the function.
- Bugfix: Wrong key assignment on the helper method
clone(). - Bugfix: The
searchFocusoption doesn’t work on animated dropdown elements! - Bugfix: Wrong return variable on the mein IIFE function wrapper.
Version 0.3.1 - Alpha
- Info: Official support for IE >= 9 starts now :(
- Add: New
clone()helper function as Fallback for IE >= 9. - Add: New
.IEhelper variable for Fallback use for IE >= 9. - Bugfix: Almost complete IE >= 9 support, except the
animateoption.
Version 0.3.0 - Alpha
- Info: The complete script has been re-written from scratch and doesn’t depend on jQuery anymore!
- Info: The default design uses vectors from GitHubs Octicons.
- Info: The minified version is compressed with jsCompress.
- Add: A search function / field within the dropdown area, which is partly still in a test phase.
- Add: A complete new interface and a complete new design (including a new demonstration).
- Add: The tail helper methods:
hasClass(),addClass(),removeClass(),trigger()andanimate(). - Add: The
tailSelectprototype class handles all tail.select elements and the communication between the user and the elements as well as between thetailOptionsclass. - Add: The
tailOptionsprototyping class, which manages the original options and items. This new class is only responsible for the main item object collections as well as the original select field. The tail.select elements are handled by the maintailSelectclass only! - Add: A
search,searchFocusandsearchMarkedoption to configure the new search feature. - Add: The new
bindSourceSelectoption, which allows to still use the source select field. - Add: The new
hideSelectoption to hide the source select field. - Add: The new
stayOpenandstartOpenoption to manipulate the dropdown field. - Add: The new
itemsoption to add some additional options during the initialization, the new structure allows you to add and remove options also during the runtime. Use therefore the methods of thetailOptionsprototype class. - Add: The new
sortItemsandsortGroupsoptions, to sort the order of the options and the option groups in the dropdown field. - Add: The new
animateandopenAbovemethods to control the dropdown behavior. - Add: The new strings
searchField,searchEmpty, andselectLimithas been added. - Add: A german locale file.
- Update: The events has been changed into ‘tail.select::open’, ‘tail.select::close’, and ‘tail.select::{state}’
- Update: The complete HTML / ClassNames and CSS structure has been changed!
- Update: The
copy_classoption has been renamed intoclassNamesand allows now also a string as well as an array parameter. (You can still usetrueto copy the class names from the source select field.) - Update: The
single_deselectoption has been renamed intodeselect, the behavior is the same. - Update: The
multi_limitoption has been renamed intomultiLimitand requires now-1as parameter to enable the “unlimited” selection option (-1 is the default option!). - Update: The
multi_show_countoption has been renamed intomultiShowCount, the behavior is the same. - Update: The
multi_move_tooption has been renamed intomultiContainerand does now ONLY offer the possibility to “move” the selected options (in the form of handles) into the (with an plain selector linked) container. The possibility to “move” selected options to the top of the dropdown list has been removed! - Update: The
multi_hide_selectedoption has been renamed intohideSelectedand doesn’t require a multiple select field anymore, the rest of the behavior is the same! - Update: The
descriptionoption has been renamed intodescriptions, the behavior is the same. - Update: The
hide_disabledoption has been renamed intohideDisabled, the behavior is almost the same, except thathideDisabledandhideSelectedjust add a new CSS class name to the main tail.select element. - Update: The
widthoption keeps his name, but allows now ‘auto’ (to calculate the width from the source select element) andnull, to set no width at all (default). - Update: The
heightoption keeps his name, but allows now alsonullto set no maxHeight at all (which is also the default, it’s may better to handle this with pure CSS). - Update: The string options
text_empty,text_limitandtext_placeholderhas been moved to and own core object, which is accessible through thetail.select.stringsvariable. - Remove: The jQuery support has been completely removed.
- Remove: The jQuery
mousewheelplugin has been removed. - Remove: The option and functionality behind
hide_on_mobileandhide_on_supportedhas been completely removed. There will be probably no substitute for this! - Remove: The feather icons has been replaced with the GitHub Octicons.
Version 0.2.0 - Alpha
- Info: Tested with and Includes now jQuery 1.4.0, 1.6.0 and 1.11.2
- Add: (option) Specify a width
- Add: (option) Auto-Disable on Mobile browsers
- Add: (option) Auto-Disable on Unsupported browsers
- Add: (option) Take class names from select fields
- Add: 4 other functions: reload, open, close and remove
- Add: Extended Class Names for each tail.Select status
- Add: Prevent multi-selections on single select fields
- Add: Open the select field ONLY if the left mouse button is pressed.
- Update: The tail.Select design
- Update: The tail.Select configuration
- Update: The tail.Select HTML structure
- Update: Embeds now the complete Feather icon font
- Update: Feather icons are used now only via css (+ new icons are used)
- Update: A better and bigger demonstration (./demo/index.html)
- Update: Change placeholder attribute to data-placeholder
- Bugfix: Open above Bug
- Bugfix: Pull-Down / Pull-Up Switch-Icon Bug
- Bugfix: Faulty De-Selection on Single-Select fields with optgroup
- Remove: (function) “stringArray”
- Remove: (function) “getIcon” and “switchIcon”
- Remove: (function) Some other unused functions
- Remove: (option) “icons”
- Remove: (option) “multi_hide_selected”
Version 0.1.1 - Alpha
- Update: Some jQuery 1.4+ Compatibility fixes
- Update: New render function with Compatibility to jQuery 1.4+
- Bugfix: Optgroup-Sorting Bug
- Bugfix: Few small Bugs
Version 0.1.0 - Alpha
- First Alpha Version