1
0
Fork 0
mirror of synced 2025-04-04 21:53:32 +03:00

Compare commits

...

2567 commits

Author SHA1 Message Date
Kevin Brown
d2f3937764
Merge pull request #5700 from select2/kevin-brown-patch-1
Connected GitHub to Open Collective for funding
2019-11-11 16:22:35 -05:00
Kevin Brown
49f8076291
Connected GitHub to Open Collective for funding 2019-11-11 16:21:09 -05:00
Kevin Brown
b73238fbe7
Merge pull request #5697 from select2/release/4.0.12
[Release] 4.0.12
2019-11-05 20:31:45 -05:00
Kevin Brown
1f97288d96 Updated changelog for 4.0.12 2019-11-05 20:28:33 -05:00
Kevin Brown
752eabba47 Recompiled dist for 4.0.12 2019-11-05 20:25:42 -05:00
Kevin Brown
c94dfadc7f Bump versions for 4.0.12 release 2019-11-05 20:23:54 -05:00
Kevin Brown
1da125f11e
Merge pull request #5691 from paxnovem/GH-5682
Fix support for the Shadow DOM when calculating offsets
2019-11-05 20:12:15 -05:00
Brian Grohe
69bcf1a034 Fix line length issue 2019-10-31 21:11:33 -04:00
Brian Grohe
69aab8d2d3 Added support for the shadowdom 2019-10-31 20:49:44 -04:00
Kevin Brown
e809aa0fee
Merge pull request #5687 from select2/swap-cdnjs
Replace cdnjs with jsDelivr in the docs
2019-10-30 23:47:39 -04:00
Kevin Brown
0d37eed52b
Merge pull request #5686 from select2/npm-deployment
Fix NPM deployment
2019-10-30 23:38:35 -04:00
Kevin Brown
884a1a6930 Replace cdnjs with jsDelivr in the docs
This is needed until cdnjs figures out their future in
cdnjs/cdnjs#13524. Until then, we will just reference their existence
and promote jsDelivr to the primary source.
2019-10-28 04:28:59 -04:00
Kevin Brown
37773d408f Delay documentation deployment
This should hopefully fix any possible issues where the NPM package
may be released after the documentation is deployed, which could cause
a cause miss by jsDelivr and cause the documentation to cache without
pulling in the Select2 dependency.

It hasn't happened yet, but I'm concerned it could happen and I don't
want to put in the effort to make a more sophisticated way of
handling this issue.
2019-10-28 04:10:33 -04:00
Kevin Brown
796ab7bf41 Fix deploying to NPM
This changes the NPM registry URL to point to the actual NPM registry
instead of the GitHub package registry.
2019-10-28 04:09:40 -04:00
Kevin Brown
203e833153
Merge pull request #5677 from select2/funding-file
Add GitHub Sponsors funding link
2019-10-23 07:41:34 -04:00
Kevin Brown
08a407e7d1
Add GitHub Sponsors funding link 2019-10-23 07:39:51 -04:00
Kevin Brown
032d964948
Merge pull request #5666 from select2/release/4.0.11
[Release] 4.0.11
2019-10-13 16:35:48 -04:00
Kevin Brown
ca1bbd0738 Update changelog for 4.0.11 2019-10-13 16:30:11 -04:00
Kevin Brown
d18d9b6b71 Recompiled dist for 4.0.11 2019-10-13 16:23:56 -04:00
Kevin Brown
016f628954 Switchs docs to load from jsdelivr
This should hopefully fix the issue we were seeing where the docs
would not render properly immediately after a release because CDNjs
has a delay in updating versions. jsdelivr does not have this delay,
so we shouldn't have any many rendering issues.
2019-10-13 16:18:29 -04:00
Kevin Brown
deda455aac Bump versions for 4.0.11 release 2019-10-13 16:16:38 -04:00
Kevin Brown
34689368df
Remove Travis CI (#5665) 2019-10-13 16:08:40 -04:00
Kevin Brown
7c67f3e9b6
Enable GPM (#5660)
* Uncomment the deploy_github job for GPR

* Automatically add private scope to package for GPM

This is requires in order to deploy to GitHub package manager since
all packages must be scoped to the organization that they are being
deployed to. Because of how publishing scoped packages works with
NPM, there is no easier way to rename a package that is being pushed
to both a scoped and unscoped registry.

* Don't run NPM deploy if it's not a release

There was a change last week that now allows jobs to be filtered
entirely, so this now works like we had originally hoped.

* Tag branch pushes with commit

This is needed because you cannot overwrite a version on NPM, so the
previous plan of just using the prelease version would only work for
a single commit.

* Fixed invalid version identifier
2019-10-09 23:25:12 -04:00
Kevin Brown
7c4131bc27
Merge pull request #5644 from select2/GH-5584
Fixes jQuery migrate error when getting offset when dropdownParent not in document
2019-09-18 21:56:57 -04:00
Kevin Brown
31931a4212 Add tests for when dropdownParent isn't in the document 2019-09-18 21:44:25 -04:00
Kevin Brown
2c5467b38c Fixes error when getting offset of element not in document
This fixes an error which is called out in jQuery Migrate but
probably never happens in real life. This is because we call
`jQuery.fn.offset` without checking if the element is in the
document. Based on testing done here and within the MediaWiki
team, I'm pretty sure jQuery never actually implemented explicit
checks and this jQuery Migrate warning is just to cover the case
where a browser might start returning inconsistnet results. And
we could at least reproduce the inconsistency, so that's something.

We now default the offset to 0/0 if the parent element happens to
not be in the document. This appears to be what jQuery used to do
in the past, and generally appears to be what people expect in
these cases.

This fixes #5584.
2019-09-18 21:33:13 -04:00
Kevin Brown
233424da2b
Merge pull request #5639 from select2/github-actions-updates
GitHub Actions updates
2019-09-11 23:53:51 -04:00
Kevin Brown
2e4c11339c Disable deploying to GPM
We have to wait to be cleared for the private beta access first before we can actually deploy to this.
2019-09-11 23:49:02 -04:00
Kevin Brown
3bc5e4ee40 Update README with new docs location 2019-09-11 23:48:01 -04:00
Kevin Brown
5f78d824ac Swap Travis CI badge with GitHub Actions badge
Since it's still in a private beta, we can't link to anything useful so the link has been dropped
2019-09-11 23:44:21 -04:00
Kevin Brown
581308337a
Merge pull request #5638 from select2/github-actions
Enable GitHub Actions to replace Travis CI
2019-09-11 23:34:01 -04:00
Kevin Brown
7688be5db5 Only deploy docs on releases 2019-09-11 23:27:04 -04:00
Kevin Brown
e1d64e92c4 HOST_FINGERPRINT is also required but unused 2019-09-11 23:15:02 -04:00
Kevin Brown
a31d56d47b HOST_IP is also required but unused 2019-09-11 23:12:52 -04:00
Kevin Brown
120065ed46 SSH_PUBLIC_KEY is required but unused 2019-09-11 23:10:22 -04:00
Kevin Brown
c95ed1796a Switch to using rsync 2019-09-11 23:07:31 -04:00
Kevin Brown
dea726d065 Use new syntax for args 2019-09-11 22:59:11 -04:00
Kevin Brown
bff3a777ae Try using strip.components with drone-scp
This should, in theory, strip out the leading docs directory when doing the copy.
2019-09-11 22:57:24 -04:00
Kevin Brown
29d01a00c5 Move docs into root directory before copying
Hopefully this fixes the issue where it was unpacking the enitre directory into the destination instead of the individually specified files.
2019-09-11 22:51:44 -04:00
Kevin Brown
b3c6d3ebfe Remove trailing slash on destination directory 2019-09-11 22:35:52 -04:00
Kevin Brown
5e32678e49 Proper syntax for copying dir contents 2019-09-11 22:29:43 -04:00
Kevin Brown
c891d2ec72 Deploy docs to the production location 2019-09-11 22:20:38 -04:00
Kevin Brown
8cb7e33766 Fix copying directory during deployment 2019-09-11 22:14:18 -04:00
Kevin Brown
b4c3eccd7b Merge branch 'docs-master' into merge-docs 2019-09-11 04:03:38 -04:00
Kevin Brown
3606801728 Remove old documentation
This is no longer used for deploying the old GitHub pages doucmentation.
2019-09-11 21:56:24 -04:00
Kevin Brown
fe208f1f86 Added workflow for deploying documentation
This does not yet deploy the actual documentation, but it instead deploys the old docs (which are now redirects) to a temporary folder for testing.
2019-09-11 21:49:00 -04:00
Kevin Brown
891993e39b Renamed deploy.yml to package-deploy.yml
Eventually we are going to want to do documentation deployments so it makes sense to split them up.
2019-09-11 21:22:02 -04:00
Kevin Brown
dafddb73c8 Made NPM deployment step consistent with GPM 2019-09-11 21:15:02 -04:00
Kevin Brown
7b1367c6a0 Switch to only deploying when pushing to develop/master
Hopefully this still allows the release trigger to work, but this is relying on undocumented behaviour that nobody else appears to have tried.
2019-09-11 21:13:28 -04:00
Kevin Brown
e0560c74f7 Move documentation to the docs folder 2019-09-11 04:02:16 -04:00
Kevin Brown
748d279107 Extract NPM deployment out to different workflow
This will allow us to limit what branches it runs on.
2019-09-11 03:08:03 -04:00
Kevin Brown
82c51a319c Remove dry run from publish 2019-09-11 20:57:40 -04:00
Kevin Brown
8b9a99d286 Enable dry runs for publishing 2019-09-10 20:56:45 -04:00
Kevin Brown
91838fe0a6 Add deploying to GPM and NPM
This also adds a handler for the release event, which is what we want to be using for pushing NPM builds out.
2019-09-10 20:07:35 -04:00
Kevin Brown
ffd98a493b Add steps for linting, minification, start deployments
The deployment step is not yet finished and this required splitting linting from running tests.
2019-09-10 19:44:27 -04:00
Kevin Brown
6758bb50b9 Fixed GitHub Actions syntax 2019-09-10 19:28:41 -04:00
Kevin Brown
f025d675a9 Added basic GitHub Actions workflow to build the project 2019-09-10 19:21:22 -04:00
Kevin Brown
d6acc57a7c
Merge pull request #42 from select2/develop
Release Select2 4.0.10
2019-08-28 21:27:53 -04:00
Kevin Brown
7f0800ceba Bump versions for 4.0.10 release 2019-08-28 21:26:12 -04:00
Kevin Brown
2a80567151
Merge pull request #5623 from select2/release/4.0.10
[Release] 4.0.10
2019-08-27 23:05:53 -04:00
Kevin Brown
3d52d08063 Updated changelog for 4.0.10 2019-08-27 23:03:06 -04:00
Kevin Brown
5f1a91c447 Recompiled dist for 4.0.10 2019-08-27 23:02:40 -04:00
Kevin Brown
919373e481 Bump versions for 4.0.10 release 2019-08-27 22:58:25 -04:00
Kevin Brown
64e829e447 Converting tests to unix newlines 2019-08-27 22:56:27 -04:00
Kevin Brown
d0c5aca962
Merge pull request #5622 from select2/GH-5373
Support passing in a selector for `dropdownParent` option
2019-08-27 22:54:06 -04:00
Mikhail Titov
01e68f4dd7 Test for dropdownParent option 2019-08-27 22:48:18 -04:00
Mikhail Titov
357c2a11c2 Allow passing non-jQuery objects as dropdownParent 2019-08-27 22:31:24 -04:00
Kevin Brown
9e4f842fb1
Merge pull request #5621 from select2/GH-5619
Fix bug where dropdowns pointing upwards were incorrectly positioned
2019-08-27 22:27:14 -04:00
Kevin Brown
d8d2aa5b03 Switch back to late binding the positioning handlers
This is how it used to work pre-4.0.9, where the bound handlers for
resizing and positioning the dropdown were bound at the first time
that the dropdown was opened. This was changed for the 4.0.9 release
as a part of 3f75227a693 where it was not clear why this late binding
was happening, so it was removed to simplify the code.

The late binding is necessary because the handlers within results for
generating the results, and thus the content within the dropdown,
are bound after the handlers for the dropdown are bound. This results
in situations where the handlers for positioning the dropdown are
bound before the dropdown is updated with content, resulting in the
positioning being calculated for the old content and thus being
incorrectly placed. By binding the positioning handlers after the
dropdow is opened for the first time, we can ensure that the
positioning handlers are bound after the result handlers, so we
won't have to worry about this issue.

The handlers are only bound once because they only need to perform
all the calculations a single time. There is no need to keep checking
all of the calculated styles more than we need to, so this is guarded
by a flag which ensures it is only bound a single time per dropdown.

Fixes #5619
Fixes #5620
2019-08-27 22:20:39 -04:00
Kevin Brown
bdeb9075f5
Merge pull request #40 from select2/develop
Release Select2 4.0.9
2019-08-21 21:25:07 -04:00
Kevin Brown
3f8c3c54a3 Bump versions for Select2 4.0.9 release 2019-08-21 21:22:19 -04:00
Kevin Brown
f8ded17ae7
Merge pull request #39 from MediaIQ/fix_data_properties_doc
Fix the doc for data-disabled property as not available
2019-08-21 21:18:26 -04:00
Kevin Brown
d54560f21e
Merge pull request #5613 from select2/release/4.0.9
[Release] 4.0.9
2019-08-21 20:59:42 -04:00
diesl
1a6d4a1ad8 Update de.js (#5604)
Improve German translation
2019-08-21 20:26:55 -04:00
Kevin Brown
4afa7f88a4
The language option now has a clearly defined fallback chain (#5602)
* Made the test suite for translations more complete

There were previously tests for translations within the test suite,
but they only covered a select few problem cases that had previously
been fixed. They did not cover the majority of cases, which makes
changes to how the translation mechanism for Select2 works a bit
more challenging.

So this adds tests for the majority of edge cases around translations,
including how one would expect the fallback chains to work and also
around how defaults interact with the language options. This should
not be considered an exhaustive list of all of the edge cases, but
it should be good enough to refactor the internals and not have to
worry as much.

The one change of note to this test file is that we are now properly
resetting the defaults in between tests. This should fix any issues
that we may have seen where the defaults were not being reset, and
thus tests were not properly isolated and would start to interfere
with each other. This required pulling the module definition down
below the imports, since we need to reference the defaults within
the module definition.

Many of these tests will fail because the translation system is
broken in many small, unrealized ways. The next few commits should
make these pass and fix the issues that we are seeing.

* Consistently resolve the language option

This fixes an issue that we have had for a while where we did not
have a way to consistently take the `language` option from a string,
array, object, or whatever else is specified and resolve it into
`Translation`-compatible objects or strings. Now there is a new
internal `_resolveLanguage` function which is able to take any of
the supported ways of specifying a language and resolve it down into
the supported language chain.

This now means that we can properly resolve the following cases,
and we can do it in a consistent manner.

* When the language is specified as just a string (for example: "en")
* When the language is specified as a string containing a region
  (for example: "en-US")
* When the langugae chian is specified as a list of strings (for
  example: ["es", "en"])
* When the language is specifid as an object containing messages
  (for example, when a user overrides only a subset of messages)
* When the language is specified as a list of strings and objects
  (for example, when a user wants to use a language other than
  English and also wants to ovverride some default messages)
* When the language is not specified at all (the most common case)
* When the language is specified as an empty object (an edge case
  that allows us to skip processing it)

This allows us to consistently produce the language fallback chain
based on the given `language` option, something which we could not
actually do before because we didn't have a consistent chain. This also
means that now the `language` option will consistently be an array
after going through this process, instead of being any number of
types before.

The translation generation currently does not support having objects
and strings mixed as a part of the fallback chain, despite that being
how the default chain has always worked, and as such there are still
failing tests around this.

* Move English to always be at the end of the language chain

This was technically true in most cases in the past, because if a
language chain was manually specified then it would have English
injected into the end of it anyway. This is needed because not all
translations are complete, but we know the English one is, and
Select2 relies on the translation that it uses being complete.

This will result in cases where a user specifies a language but still
receives English translation for some things, which is what users
have historically seen when using partial translations anyway. This
just ensures that there will always be a complete translation that
is being used, so they won't get unexpected errors and will instead
get unexpected English translations.

* Filter out repeated languages in fallback chain

This is mostly being done for performance reasons, since Select2
will not behave any differently when there are duplicates, but it
makes things cleaner when you ask for the fallback chain and it
only contains unique values.

This cannot distinguish between languages specified by name (string)
and languages specified by the contents of their language file
(such as the default, English), but this should generally not be
an issue.

* Convert the language chain into a finalized translation

This extracts the logic for converting parts of the language chain
into the finalized `Translation` objects out into its own method,
with some small fixes for edge cases.

This can now properly convert a language chain containing both
strings and objects into a translation object that contains them
both.

We no longer need to special case the `language` option being an
array since we know that it will be an array once the language
resolution process is completed.

* Switch default translation to be empty

This should have no external effects, but it fixes an interesting
bug where resetting the defaults would not always reset custom
translations. This was because it was possible to modify the
included English translation when you were setting a default for the
language option.

This should not cause any issues because the English translation is
now appended to the end of the language chain when the defaults
are applied, which means that English will continue to exist as the
final fallback.

* Inherited `lang` attribute should be below the default in the chain

It was pointed out in #5468 that the `lang` attribute, when inherited
from a parent element, was above the option set in the global default
within the inheritance chain. While this makes sense because of how
we inherit other properties, it does not make sense for the `lang`
attribute.

The inheritance chain for the `language` option has been adjusted
to be the following:

1. The `lang` attribute on the original `<select>` element
2. The `data-language` attribute on the original `<select>` element
   (because of how `data-*` attribute resolution affects options)
3. The `language` option specified when initiailizing Select2
4. The `language` Select2 default
5. The `lang` attribute on a parent of the `<select>` element

While this is a breaking change, we believe that this change will
have minimal to no impact on real-world usage of Select2, because
of how the `lang` attribute is generally used within documents.
We believe this will now make setting the default language through
JavaScript easier and more reliable, bringing it in line with how
we recommend it is done within the documentation.

This was implemented through a new method `Defaults.applyFromElement`
instead of within the old `Options.fromElement` method because it
relies on the global defaults object. While we could have reached
in to the internals in order to apply it appropriately, it made
more sense to handle the proper resolution through a single
consistent place.

This was not implemented in the `Defaults.apply` method because that
method is not typically passed in a reference to the original
`<select>` element that it is applying the options for.

Closes #5468

* Properly resolve language chains with dictionaries

It is possible for a language chain to be specified that includes
both a dictionary and the string translation as a part of the same
chain, but we would previously throw an error because we assumed
that the list could only contain strings and that dictionaries
would never be included in lists.

This fixes the issue so language region normalization only occurs
when a string is specified in the language chain, which is what we
were previously assuming was the case but was not actually.

This also now resolves the entire language option during the
`Defaults.apply` method. This should be a no-op except for internal
tests, because the `Defaults.applyFromElement` method should almost
always be called in real-world scenarios.
2019-08-13 20:07:35 -04:00
Nagaraj Tantri
ed4b780dbb
Merge pull request #1 from tan31989/fix_data_properties_doc
Updated the docs to add data-disabled to be added as an info - not al…
2019-08-09 17:54:24 +05:30
Nagaraj Tantri
330ae4a165 Updated the docs to add data-disabled to be added as an info - not allowed 2019-08-09 17:53:09 +05:30
Kevin Brown
4db849cd99 Update changelog for 4.0.9 2019-08-07 21:40:36 -04:00
Kevin Brown
dc4e83379c Recompiled dist for 4.0.9 2019-08-07 21:30:49 -04:00
Kevin Brown
7fab80268f Bump versions for 4.0.9 release 2019-08-07 21:26:10 -04:00
Kevin Brown
9ad1b9107b Converting tests to unix newlines 2019-08-07 21:25:01 -04:00
Luiz Américo
7b9cfcaaa0 Remove unused variables (#5554) 2019-08-07 07:24:17 -04:00
Kevin Brown
f13ba12bea
allowClear no longer shifts selections to a new line (#5603)
* allowClear no longer shifts selections to a new line

This fixes an issue that we have had with the "x" icon used by the
`allowClear` option where selections that just barely interacted
with the position of the "x" icon would be pushed to a new line
that was separate from the normal second line of selections. This
case was pretty rare, because you only had a ~9px area where the
interaction could occur.

The issue was cuased by the "x" icon being sized for the height of
the text in the selection choices, which should be the same as how
the selection choices themselves are sized. Unfortunately this did
not take into account the fact that the selection choices are given
a 1px border which increases their size by 2px, which is what lead
to the odd behaviour. This behaviour could not be replicated without
the 1px border because the height would then line up correctly.

The issue can be fixed by adding a 2px margin to the bottom of the
"x" icon, which would force overlapping selections on to the correct
second line of selections. This was the method that many users have
been using to correct this issue, but was not the method we chose to
use. A 1px padding has been added to the "x" icon instead, which
should expand the touch area of the "x" by a little while also
increasing the height of the "x" by enough to prevent the overlapping.

Fixes #4470

* Remove hard-coded height in tests

Because tests are executed on different browsers, and because each
browser sets their own line height, we cannot depend on the height
of the default Select2 being consistent across browsers. As a result,
we must write our tests to calcualte the expected height based on
known data. In the case of this test, we can calculate ahead of time
what two rows of selections is supposed to look like, instead of the
edge case that we can otherwise encounter.
2019-08-04 22:03:52 -04:00
Nagaraj Tantri
2ccdcb57c6 Updated grunt version so it no longer shows as vulnerable (#5597) 2019-08-04 01:58:52 -04:00
Kevin Brown
e5131d0cc8
Set the main ARIA 1.1 roles and properties for comboboxes (#5582)
* Move search accessibility tests under selection tests

* Set aria-activedescendent and aria-owns on selection search

This is a reduced version of a5ab08b49cb which is split out to only
set the `aria-activedescendent` and `aria-owns` attributes on the
search box located within the selection container. This is the search
box used within a multiple select, and previously it did not always
set these two attributes correctly.

One major change here is that we clear the `aria-activedescendent`
attribute if the result that is selected does not have an ID. This
was not being done previously, instead the attribute was still
containing the old value, and it meant that sometimes the wrong
result was being pointed to.

The test coverage for this was also expanded to ensure that these
attributes are properly being set.

* Set aria-activedescendent and aria-owns on dropdown search

This is a reduced version of a5ab08b49cb which is split out to only
set the `aria-activedescendent` and `aria-owns` attributes on the
search box located within the dropdown. This is the search box used
within a single select, and previously it did not set these two
attributes at all. Additionally, it did not set the `aria-autocomplete`
attribute, which is also needed for screen readers to properly read
through the list of results.

There was previously no test coverage for this, so the tests were
largely copied from the tests for selection search.

* Set proper ARIA roles on result elements

When Select2 4.0.0 was originally written, accessibility was tested
using the Orca screen reader and Mozilla Firefox as the browser.
Because a `<select>` box could contain `<optgroup>` elements, which
can further contain additional `<option>` elements, Orca would read
out a `<select>` box as a tree view. Apparently Orca was the only
screen reader to do this, but Select2 maintained this behaviour
because the ARIA spec did not allow grouping elements for the right
roles.

In the ARIA 1.2 spec, an element with the role of `listbox` (which
is the proper one for representing a `<select>` element) can now
contain elements with the role of `group` that can be used for
grouping. This means that now Select2 can switch to use the proper
ARIA roles to better match how most browsers represent the `<select>`
element out of the box.

As a result, instead of the Select2 results list being represented
as a tree containing tree items, it is now represented as a listbox
containing options and groups. Notices will be represented as an
alert, which more closely represents what they were being used for.

This is a reduced version of a5ab08b49cb which is split out to only
fix the `role` attributes on elements within the results list.

* Switch search boxes to have a role of searchbox

I'm pretty sure this is implicit now, but since we used to specify
that the search box had a role of `textbox`, we may as well migrate
that over to specify the role of `searchbox`. This is different
from the original pull request where this role was changes to
`combobox`, but that is because we are working against the ARIA 1.2
spec and the original pull request was working agianst the ARIA 1.0
spec, which required the search box to have that role.

* Set aria-controls instead of aria-owns on search boxes

In ARIA 1.1, there was a switch to use `aria-controls` on the search
box to point to the results list instead of using `aria-owns`. This
is required because the `combobox`, in our case the selection
container, should have the `aria-owns` attribute pointing to the
results list. And because only one elment can own another element,
we must fall back to `aria-controls` to represent that relationship.

The tests have also been adjusted to reflect this new discovery.
2019-07-29 22:34:24 -04:00
Kevin Brown
f14bdf6b7b
Fix search box expanding width of container (#5595)
This fixes a bug with the search box where, when it had a placeholder,
it would expand the width of the selection container because it was
too large. This bug was specifically caused by the search box not
factoring in the padding surrounding it when caclualting the width
it needed to be, which resulted in the search box extending
outside of the selection container. This bug was easy to notice if
your Select2 was set to have 100% width and if the container it was
held within was not a block element.

This fixes the bug by switching to using `width()` for calculating
the search width instead of using `innerWidth()`, which ignored the
surrounding padding.

Fixes #5517
Closes #5518
2019-07-29 22:25:19 -04:00
Kevin Brown
472e5ad50f
Fix dropdown positioning when displayed above with messages (#5592)
This fixes an issue which was usually observed when working with
AJAX results sets and having a message being displayed, usually the
minimum characters message or an error. The dropdown would display
up, like it was supposed to, but the message would appear to be
floating above the container and detached.

This was occuring because the dropdown position was not being
calculated whenever a message was displayed in the results, only
when the results were loaded or new results were appended to an existing
results set. There are plenty of situations where this could have
caused issues, but somehow most of the reports were around a very
specific situation with AJAX which could be reproduced on the
examples site.

Fixes #4614
Fixes #4616
Fixes #5253
Closes #5196
2019-07-28 15:16:30 -04:00
Kevin Brown
525f661915
Reposition dropdown whenever items are selected (#5590)
* Reposition dropdown whenever items are selected

This fixes an old bug where if you had a multiple select with the
`closeOnSelect` option set to `false` and many options being
selected, the dropdown would not reposition itself if the selected
options expanded the container down another line. This was because
the dropdown was only being repositioned when it was opened, closed,
or if something around it was scrolled or resized. Unfortunately,
in most cases none of these happened and the dropdown would start
covering the selections.

This was fixed by telling Select2 to resize the dropdown when new
options are selected or existing options are unselected.

Fixes #4377

* Attach positioning handlers at bind time

The positioning handlers have been attached at the time that the
dropdown is opened since when they were first committed many years
ago. It's not actually clear why this was being done, since they
don't rely on anything involving the dropdown being open. This
removes the flag and process for setting these handlers only after
the dropdown was opened for the first time, and moves these handlers
to always be set at bind time.
2019-07-28 14:49:25 -04:00
Kevin Brown
efbfd14414
Remove selection title attribute if text is empty (#5589)
This fixes a bug that was introduced in Select2 4.0.0 and only
partially fixed in Select2 4.0.6-rc.0 where the `title` attribute
that is set on the selection container (or individual selections,
for a multiple select) is not cleared when the text/title of the
option is not set. In most cases, users no longer see this issue
because the `text` property of most data objects is set, so the
`title` attribute will always be cleared correctly. There was a bug
for cases where the `text` property was not set, or where the `text`
property was set to an empty string, that resulted in the `title`
attribute persisting with the incorrect value.

We have fixed this issue by always removing the `title` attribute
from the selection (or not adding it in the first place, for a
multiple select) when the `text` and `title` properties of the data
object are empty or not present.

This also adds in a series of tests to ensure the `title` attribute
is set properly in a variety of cases, building upon the ones that
already existed.

Fixes #3895
2019-07-28 00:36:51 -04:00
Kevin Brown
6645ffd4bd
Select2 now clears the internal ID when it is destroyed (#5587)
This fixes a bug where if you cloned a Select2, the internal ID used
for mapping elements (specifically the `<select>`) to the in-memory
data store would be cloned as well, causing issues when you tried to
initialize Select2 on the cloned element. This was because we did not
properly clear all of the internal data and all of the internal
attributes that Select2 uses when we destroyed it. The internal
`data-select2-id` attribute was not being cleared, and this was the
attribute being used for the internal mapping.

Now we properly clear the `data-select2-id` attribute from the element
when we call `RemoveData` on the element. This aligns with what we
were trying to do, since we previously cleared out the internal store
for that ID, and fixes the issue we were seeing when cloning.

Fixes #5247
2019-07-27 21:37:43 -04:00
Kevin Brown
1f3eceba5a
Fix generated options not receiving result IDs (#5586)
In order to enable the ability to uniquely identify a result by an ID
in the DOM, we generate a new ID for the result based on a combination
of things, including the container ID prefix that is generated and
used elsewhere in Select2. This has worked fairly well for use cases
including attaching Select2 to an existing `<select>` and loading in
options from a remote data set.

Unfortunately, because this process relied on the container ID being
used as a prefix, this failed for options which were automatically
generated on initialization using the `data:` option to Select2.
These were not being generated with an ID because at the time that
they were being generated, the data adapter was not aware of the
container it was being used in. This broke some accessibility features
because we had a mix of options in the results list with IDs, and
some without, so we fixed the ordering to make this work.

Option generation no longer happens when the data adapter is first
initialized, which is where it was previously happening, and instead
it now occurs when the data adapter is bound to the container. This
allows us to ensure that the data adapter is always aware of the
container it is being associated with, so now it will be able to
generate the result IDs.

This also fixes the tests for the array adapter as well as the
legacy `<input />` adapter so they properly bind to a container
during the test. This was causing test failures becuase the options
which would previously be generated during initialization were no
longer appearing.

Fixes #4350
2019-07-27 16:37:57 -04:00
Kevin Brown
2fce8ae6c4
Fix maximumSelectionLength being ignored by closeOnSelect (#5581)
* Rewrote maximumSelectionLength tests to use container

These brings the tests in line with other tests which we have, and
makes it easier to understand what is actually going on in the tests.

This also removes a redundant set of tests where we were testing with
=> 2 options being allowed. There are no current edge cases that would
have required this.

* Fix maximumSelectionLength being ignored by closeOnSelect

There was a bug where the `maximumSelectionLength` option would not
kick in if the `closeOnSelect` option was enabled. Normally, this
was enabled by someone in their global configuration, but it could
also be seen when somoene selected an option while holding the
meta/ctrl/alt keys. This would implicitly enable the `closeOnSelect`
behaviour, even when it was not globally enabled, and cause the bug.

This fixes that issue by listening to the `select` event which is
triggered whenever an option is selected, and triggers the "maximum
selected" message based on that event. This should now force the
message to be displayed, even when the results did not have to be
queried another time.

Fixes #3514
Fixes #3860
Closes #5333
2019-07-21 15:44:37 -04:00
Kevin Brown
f2d527ea97
Do not propagate click when search box is not empty (#5580)
This fixes a long-standing bug where if you tried to click in the
search box for a multiple select while there was text in it, the
dropdown would close and the text would be cleared. This caused
many unexpected issues, because it meant that you could only use
your keyboard to edit text within the search box.

This will still clear out the search field if you click within the
area of the selection which is not the search field. I'm not sure
if that is also unexpected behaviour, so for now I am going to
maintain it.

Fixes #3517
Fixes #3808
Fixes #5491
Closes #5551
2019-07-21 13:04:51 -04:00
Kevin Brown
89576153a0
Mirror disabled state through aria-disabled on selection (#5579)
This is needed to screen readers know that the Select2 is disabled
when focus is put on the selection container. Because we were
mirroring the disabled state to the search input on a multiple
select in the past, this is really only needed for single select
elements which would not otherwise has the disabled property.

This was identified in a previous accessibility audit as being
something which Select2 did not properly report because we were
not setting the attributes properly.

Fixes #4575
2019-07-21 11:44:09 -04:00
Kevin Brown
6f88568c99
Merge pull request #37 from select2/develop
Release Select2 4.0.8
2019-07-20 23:24:25 -04:00
Kevin Brown
dd90704377 Bump versions for Select2 4.0.8 release 2019-07-20 23:22:02 -04:00
Kevin Brown
eeefa1e449
Merge pull request #5577 from select2/release/4.0.8
[Release] 4.0.8
2019-07-20 23:12:39 -04:00
Kevin Brown
5005c564c2 Update changelog for 4.0.8 2019-07-20 23:09:14 -04:00
Kevin Brown
8b55e47604 Recompile dist for 4.0.8 2019-07-20 23:05:45 -04:00
Kevin Brown
6fbe132e50 Bump versions for 4.0.8 release 2019-07-20 23:02:46 -04:00
Kevin Brown
bbd320d75e Convert source and tests to unix newlines 2019-07-20 23:01:38 -04:00
Kevin Brown
1b5a962819
Revert change to focusing behaviour in 4.0.6 (#5576)
This behaviour, where the focus was happening on a small asynchronous
delay, was added in commit 933189b92 late last year in a commit with
no supporting tickets or commit message explaining what the change
was trying to accomplish. This commit has effectly been reverted within
this commit, since it caused a regression in how focus was being
assigned that made it inconsistent with a standard `<select>`.

A test was added for this which ensures that we won't see that
regression again.

Fixes #5532
Fixes #5185
Closes #5552
2019-07-20 22:44:28 -04:00
Kevin Brown
d9260254c1
Fix infinite scroll when the scrollbar is not visible (#5575)
Ever since the 4.0.0 release of Select2, there has been a bug where
if you enabled infinite scrolling but did not return enough results
on the first load of AJAX to show a scrollbar, then infinite
scrolling would not be enabled and you could not view anything other
than the first page of results. The solution for this was first
proposed in #3888 but it was closed off because of inactivity and
missing tests.

This fixes the issue by performing the check to see if more results
should be loaded both on scroll and also when the results are first
loaded. This solves the issue that we were seeing before, because
the plugin knows it needs to load in more results, just it did not
receive the scroll event before and thus was not able to actually
load in the new results.

This has the potential to trigger multiple AJAX requests to load in
multiple pages of results if the user has the ability to see many
options, but only a few are being loaded at a time.

This also adds tests for infinite scrolling, both to ensure that
it will attempt to load additional pages, even without the scrollbar,
and to ensure that the regular behaviour of not loading additional
pages when the scrollbar is visible is preserved.

Fixes #3088
2019-07-20 18:09:17 -04:00
kevin-j-morse
8a5aeabcce Remove deprecated jQuery shorthand (#5564) 2019-07-20 16:05:48 -04:00
Min ho Kim
9c4f0c86a1 Fix typos (#5574) 2019-07-20 12:42:18 -04:00
Kevin Brown
1f79acbe5f Fix XSS issue in AJAX example 2019-07-10 00:25:40 -04:00
Kevin Brown
1c394a421b Fix XSS issue in templating example 2019-07-10 00:00:02 -04:00
Kevin Brown
03e1b69751 Merge branch 'master' into develop 2019-07-09 23:24:30 -04:00
Kevin Brown
bd7ac9df03
Results respect disabled state of <option> (#5560)
This check is in place in most other places, mostly because we have
run into widespread issues under similar circumstances and we like to
avoid those, but it was forgotten here. There also were no tests
covering this, so it was never caught.

This adds tests that ensure that the option in the results list will
be generated with the correct "disabled" state based on whether or
not it, or a parent element, is marked as disabled.

This should have been easy: just check `element.disabled`

Unfortunately the `disabled` property is not inherited within the
option chain, so if an `<optgroup>` is disabled, the `<option>`
elements or other `<optgroup>` elements held within it do not have
their `disabled` property set to `true`. As a result, we needed to
use the `matches` method to check if the `:disabled` state is
present for the element. The `matches` method is part of the official
standard, but it was not implemented under that name for a while and
as a result Internet Explorer only supports it under the prefixed
`msMatchesSelector` method and older versions of Webkit have it
implemented as `webkitMatchesSelector`. But once we use this method,
it appears to consistently return the expected results.

This `matches` method and prefixed predecessors are not supported in
IE 8, but they are supported in IE 9 and any browsers newer than
that. Instead of buulding a very hacky solution using
`querySelectorAll` that was brittle, I have chosen to act like
everyone else and pretend IE 8 no longer exists.

Fixes #3347
Closes #4818
2019-07-09 20:58:13 -04:00
Kevin Brown
b5f136ff72
Add computedstyle option for calculating the width (#5559)
This allows for more accurate resolution of the width when compared
to the `resolve` method. This is more relevant for jQuery 1.x, where
the `resolve` method cannot find the width of a hidden select box,
but it also applies to newer versions of jQuery where the `width()`
method provided by jQuery doesn't fully match `getComputedStyle()`.

Fixes #3278
Fixes #5502
Closes #5259
2019-07-09 19:44:33 -04:00
Kevin Brown
f9decd6094
Fix tag creation being broken in 4.0.7 (#5558)
* Add test for losing focus when searching tag entries

* Revert unknown unit test fix

Removing this no longer breaks a unit test, and having it in here
results in the select box receiving focus unexpectedly. It's not
clear what problem this was solving, since it was manually applied
from a series of pull requests.

It claims to be fixing an issue that was specific to IE11, and I'm
willing to re-introduce that bug because there doesn't appear to be
a regression test for it, and it's breaking some critical use cases.

The goal should be to focus the search box if it would have normally
lost focus when the selection was updated.

Fixes #5485
Fixes #5516
Closes #5550
2019-07-09 19:13:03 -04:00
Kevin Brown
9491e1aae2
Test against jQuery 3.4.1 (#5531)
* Update tests to be compatible with jQuery 3.0.0

There was a change in jQuery 3 that ensures that the return value of `.val()` on a multiple select is always an array. This is a breaking change from previous versions, where `null` or `undefined` were returned in these scenarios. Because we cannot `assert.equal` on a list of possible values, these assertions were switched to `assert.ok` which should be good enough.

* Properly strip out units in positioning tests

Before we were assuming that there were no units, and only were we stripping them out if we were expecting 3 digits. Now we just strip out all non-digit characters, so that should do the job and get us what we want.

There was a change in jQuery 3.2.0 that caused the units to be returned in these specific calls. They were not previously being returned, so this was not actually an issue.

* Add automated testing against jQuery 3.4.1

No tests appear to be currently failing.
2019-06-25 22:05:15 -04:00
Waseem Ahmad
d66e55dd9e removed select2-selection__placeholder from _multiple.scss (#5508) 2019-06-25 21:59:56 -04:00
Kevin Brown
5d2fdd75b5
Update grunt-contrib-qunit to latest version (#5530)
We needed to define the `qunit` module in the unit tests because there was a change in grunt-contrib-qunit 0.6.0 that breaks when you define an AMD loader. It expects that the AMD loader is also used to load QUnit, instead of just being used to support the tests, so if you don't define the qunit module it will just hang and do nothing. Luckily we have the helpers file to help us out here, since it allows us to globally define this module.
2019-06-04 22:43:52 -04:00
Kevin Brown
70ca392a43
Update dev dependencies (#5529)
* Update dev dependencies

* Adjust dependencies versions to avoid unmet peer dependency error

* Update Travis CI node version to 8

* Recompile dist

This updates all of the minified files to use the latest uglifyjs version, which results in better compression (by a small margin).
2019-06-04 21:18:37 -04:00
bufferUnderrun
36b226d509 Improve French Translation (#5521)
better translation of the english word "items" to "éléments"
2019-06-04 20:47:35 -04:00
Kevin Brown
d53958ad2b
Clean up docs (#5528)
* Remove SauceLabs credentials

SauceLabs is no longer used during builds, so we no longer need to include these encrypted credentials.

* Clean up badges

* Remove SauceLabs from the README

* Misc README fixes

* Disable Travis email notifications

Looks like we accidentally re-enabled these when removing IRC.
2019-06-04 20:46:45 -04:00
Kevin Brown
0a612f92e1
Automatically deploy to NPM (#5527)
* Added deployments to NPM on tagged releases

Previously this was being done manually after each release, which resulted in a few releases not showing up on NPM for  a significant amount of time. Now the builds should be automatically pushed, which should hopefully improve a lot of the issues we were seeing.

* Drop IRC notifications

We no longer use this IRC channel.

* Clean up .travis.yml

* Remove grunt ci

This is no longer needed now that we don't do anything special for CI builds. This also allows us to minify during CI builds, which will be useful for the tagged builds which depend on these minified files being up to date (so they can get released as well).
2019-06-04 20:26:11 -04:00
Patrizio Bekerle
ad0451d2fd Fix a typo (#34) 2019-06-04 19:54:11 -04:00
Kevin Brown
8020724bd2 Bump versions for Select2 4.0.7 release 2019-05-07 16:22:31 -04:00
Kevin Brown
04fce55967
Merge pull request #5507 from select2/develop
Release Select2 4.0.7
2019-05-07 16:14:21 -04:00
Kevin Brown
f8193c6c82
Merge pull request #5506 from select2/release/4.0.7
[Release] 4.0.7
2019-05-07 16:08:47 -04:00
Kevin Brown
5285eef7b5 Recompile dist for 4.0.7 2019-05-07 16:05:00 -04:00
Kevin Brown
20ffd1296a Bump versions for 4.0.7 release 2019-05-07 16:02:59 -04:00
Kevin Brown
d0ddab6ceb
Merge pull request #5494 from select2/develop
Release Select2 4.0.7-rc.0
2019-04-30 23:44:31 -04:00
Kevin Brown
df3c343490
Merge pull request #5493 from select2/release/4.0.7-rc.0
[Release] 4.0.7-rc.0
2019-04-30 23:41:42 -04:00
Kevin Brown
2596f2ab9c Update changelog for 4.0.7-rc.0 release 2019-04-30 23:37:24 -04:00
Kevin Brown
647533e981 Recompile dist for 4.0.7-rc.0 release 2019-04-30 23:37:08 -04:00
Kevin Brown
48e2f56fea Bump versions for 4.0.7-rc.0 release 2019-04-30 23:33:21 -04:00
Carlos Abalde
f6c455cea9 Do not close on select if Ctrl or Meta (Cmd) keys are being held as described in #3400 (#5222)
Fixes #3400
2019-04-30 23:29:11 -04:00
Kevin Brown
2a5f46bcc4
Move almost and jquery-mousewheel to devDependencies (#5489)
These two are required at build time to generate the full builds
of Select2 (for jQuery Mousewheel) and to inject the AMD loader
(for Almond.js). They are not required for anyone who depends on
Select2, since jQuery Mousewheel is an optional dependency.

This may result in some people needing to add jQuery Mousewheel to
their projects as a required dependency, if they were expecting
it to be added by Select2 before.
2019-04-30 23:15:22 -04:00
Austin S. Hemmelgarn
39bfabd94b Revert PR #5356. (#5492)
It doesn't really do what it says it does, and it introduces other
issues (single select elements re-open after selection).

Fixes #5490
2019-04-30 23:13:50 -04:00
Kevin Brown
a1bd03c408 Bump versions for Select2 4.0.6 release 2019-04-28 04:06:35 -04:00
Geoffroy ARNOUD
3c26bd0ebd Update docs.md (#29)
Fixed "paginate" into "pagination" in optgroups formmat
2019-04-28 14:39:26 -04:00
Takashi Kanemoto
6009970b10 docs: add link to @ttskch/select2-bootstrap4-theme to README.md (#5487) 2019-04-28 00:06:02 -04:00
Kevin Brown
5dcc1022bf
Merge pull request #5488 from select2/develop
Release Select2 4.0.6
2019-04-27 23:14:15 -04:00
Kevin Brown
3e9809d715 Update changelog for 4.0.6 release 2019-04-27 23:02:30 -04:00
Kevin Brown
a2bfa6c867 Recompile dist for 4.0.6 release 2019-04-27 22:43:33 -04:00
Kevin Brown
a8ea4cc3e3 Bump versions for 4.0.6 release 2019-04-27 22:42:34 -04:00
Kevin Brown
b4aa3529f3 Removed unused files
* select2.jquery.json - This was previously used by the jQuery Plugin
  Registry which was shut down and put into read-only mode a few
  years ago. Since nobody else appears to use this file, it doesn't
  make sense for us to keep bumping the version in it and keeping it
  up to date.
* vendor/ - This was needed back when the full version of Select2
  actually bundled its own version of jQuery. Since we never actually
  did this, we no longer need to keep the copy of jQuery around.
2019-04-24 17:25:35 -04:00
Kevin Brown
650035cf38
Restore compatibility with data-* attributes in jQuery 2.x (#5486)
* Start running tests against jQuery 2.x

We were only running tests against jQuery 1.x before and they were
all passing. This was a problem because apparently all of the data-*
attribute tests fail in jQuery 2.x.  We are now running both the
integration and unit tests against both jQuery 1.x and jQuery 2.x.

Right now this resulted in a complete duplication of the test files
because there wasn't an obvious way to run the tests against both
versions. We're going to look into removing this duplication in the
future once the current issues are fixed.

We are also going to look into testing against jQuery 3.x in the
future, since that is also a supported line of jQuery.

* Force the data-* attributes to be parsed

There was a change made that switched us from using `$.data` and
`$.fn.data` internally to using an internal data store (managed
through internal utilities). This had the unfortunate side effect
of breaking the automatic loading of data-* options in versions of
jQuery other than 1.x, which included anything that would be
considered modern jQuery. While the change was made and approved
in good faith, all of the tests passed and the docs pages appeared
to be working, the tests really failed when running on newer versions
of jQuery. This was confirmed when we started running automated tests
against both versions, which confirmed the bug that others have been
seeing for a while.

The change was made becuase calling `$.fn.data` on an element which
contains a reference to itself in the internal jQuery data cache
would cause a stack overflow. This bug was well documented at the
following GitHub ticket and was resolved by no longer using
`$.fn.data`: https://github.com/select2/select2/issues/4014

Unfortunately because `$.fn.data` was no longer being called in a
way such that all of the data attributes would be dumped out, we
needed to find a replacement. The substitute that was given in the
original bug fix worked when the data cache was fully primed, but
we never primed it anywhere so it actually failed in the general
case. That meant we needed to find a way to manually prime it,
which is exactly what this change does.

* Clean up select2/utils
2019-04-27 22:20:56 -04:00
Kevin Brown
9f8b6fff40
[WIP] Get Grunt consistently working again (#5466)
Get Grunt consistently working again
2019-03-19 23:16:01 -04:00
Anastasios Gogos
5977856d81 minor fix (greek omega used has no diacritic) (#5464)
replaced \u03C9 (GREEK SMALL LETTER OMEGA: ω)
with \u03CE (GREEK SMALL LETTER OMEGA WITH TONOS: ώ)
2019-03-18 23:19:52 -04:00
Rodrigo
a9c1b617fa Update composer to remove deprecated dependency (#5165) 2019-03-18 22:36:26 -04:00
MaximAL
9032705e2a More suitable spelling ещё instead of еще (#5401) 2019-03-12 22:13:49 -04:00
Thanh Phan
97c5304518 Update Vietnamese (vi) translation (#5387) 2019-03-12 22:10:00 -04:00
Kevin Brown
b3705b13be Enable the Stale integration
Right now we have a ton of old, stale tickets and this should allow us to get a hold of the problem and try to get ahead of it.
2019-03-12 22:07:42 -04:00
niftylettuce
d86894d890 Added documentation example for BS3 modal shown event binding (#12)
* Added documentation example for https://github.com/select2/select2/issues/5189

* Update docs.md
2018-09-17 13:51:04 -03:00
Nisha Kaushik
14a059d7ee #4530 Add tooltip (title) to the 'remove all' 'X' icon. (#5291)
* #4530 Add tooltip (title) to the 'remove all' 'X' icon.

* #4530 Add tooltip (title) to the 'remove all' 'X' icon.

* #4530 Add tooltip (title) to the 'remove all'

* Revert dist folder.

* add tk.js from pull request.
2018-09-15 16:22:54 -03:00
Pedro Felipe de Azevedo Furtado
933189b92e
Update base.js 2018-09-15 01:14:25 -03:00
Pedro Felipe de Azevedo Furtado
db30f66afc
Update focusing-tests.js 2018-09-15 00:17:56 -03:00
Pedro Felipe de Azevedo Furtado
f546886b92
Update docs.md 2018-09-15 00:13:08 -03:00
Stephen
aac9916894 add cdn badges (#5167) 2018-09-15 00:06:14 -03:00
Pedro Felipe de Azevedo Furtado
c2acb18509
Update focusing-tests.js 2018-09-14 23:54:19 -03:00
Pedro Felipe de Azevedo Furtado
1062187958
Update defaults.js 2018-09-14 23:40:28 -03:00
Simon Charette
1764b8420f Added the right single quotation mark to diactritics. (#4337)
It should be simplified to a typewriter apostrophe.
2018-09-11 16:43:45 -03:00
ellenhutchings
9ffcc260a0 Add migration rename information (#22)
Include information on the createSearchChoice -> createTag, selectOnBlur -> selectOnClose changes within migration page
2018-09-11 15:47:12 -03:00
Pedro Felipe de Azevedo Furtado
8bc269d63e
Update base.js (#5357) 2018-09-11 15:32:24 -03:00
Pedro Felipe de Azevedo Furtado
2ea17181e3
PR for -> autofocus isn't supported #3696 (#5356)
* Update core.js

* Update core.js

* Update core.js
2018-09-11 15:28:59 -03:00
Eliyas Hossain
e15046e959 Add Bangla (bn) localization (#5248) 2018-09-07 10:48:32 -03:00
Bowei Han
2b049c08ab Add scrollAfterSelect as a configurable option for multiselect dropdowns to allow toggling of highlightFirstItem() behaviour (#5150)
* Add scrollOnSelect as a configurable option

* default scrollOnSelect to true to avoid modifying existing behaviour

* added tests and default option for scrollAfterSelect
2018-09-05 17:36:20 -03:00
Pedro Felipe de Azevedo Furtado
165f945937
Update docs.md 2018-09-05 17:35:04 -03:00
Krzysztof Śmiałek
3b44ae2997 Add info about the new clear event (#3)
Related to pull request #5058 in `select2/select2`.
2018-09-05 17:27:59 -03:00
Jonathan Berger
8fc2e93fd9 Improve language for required properties (#13)
The existing language is a bit awkward. This change reads more cleanly, naturally, and accurately.
2018-09-05 17:25:21 -03:00
mlpo
e67c9aa34d Add missing diacritics to diacritics.js (#4118) 2018-09-05 14:31:46 -03:00
Alfredo Barron
2c613555ec Add integration in Angularjs (#4331) 2018-09-05 14:29:52 -03:00
Michael J Erwin
7c50570624 fix typo in comment in attachBody.js (#5182) 2018-09-05 14:27:11 -03:00
Pedro Felipe de Azevedo Furtado
60ee4a1179
Revert "Fix pluralization (#5307)" (#5354)
This reverts commit 5968dccc4c.
2018-09-04 22:14:22 -03:00
Albin
5968dccc4c Fix pluralization (#5307)
The test return always 's' in translations : inputTooLong, inputTooShort, maximumSelected
2018-09-04 22:13:50 -03:00
Tim Graham
ec7c57c288 Fix typos in comments (#5336) 2018-09-04 22:11:36 -03:00
Christian Fritsch
9e613ff22e Add drupal plugin (#5349) 2018-09-04 22:09:39 -03:00
hartator
663a7d193d Make it clearer that "minimumInputLength" should be set as a Select2 option and not inside the AJAX hash. select2/select2#38 (#15) 2018-09-04 21:53:19 -03:00
Tom McLean
591e6a4855 Document dropdownCss and containerCss (#20)
It is not clear that these options expect objects. I tried a string for the entire style-attribute before searching through the sourcecode.
2018-06-02 00:27:17 -04:00
Emmanuel BALLERY
ce57141fe3 Fixed typo (#21)
The example data response for AJAX included the wrong key for pagination.
2018-06-02 00:24:36 -04:00
Samundra Shrestha
d1a57156f7 Add Nepali (ne) localization (#5295)
* Add Nepali (np) localization

* rename np.js to ne.js

Closes #5294
2018-05-24 23:01:22 -04:00
Kevin Brown
69098b179d
Merge pull request #14 from jonathanberger/patch-2
Better title and description
2018-03-24 21:09:39 -04:00
Avtandil Kikabidze
3fb9e4fceb Add georgian (ka) localization (#5179)
* Add georgian (ka) localization

* Fix jshint warning

* Minor fix
2018-02-11 16:36:11 -05:00
ebejko
4346273721 Add Albanian localization (#5199)
* Add Albanian localization

* Fix travis error

* Rename al.js to sq.js
2018-02-11 16:31:24 -05:00
Jonathan Berger
83631cd87b
Better title and description
This isn't really an "API". Rather it's a list of options. I've changed the title and description to match this.
2018-01-21 21:09:07 -08:00
Jimmie Lin
26c8b9fa07
Fix minor spelling error in events page 2017-12-14 18:39:54 +08:00
alexweissman
61ba192a3a update Select2 version 2017-12-07 21:15:57 -05:00
alexweissman
c90adc102b update changelog and compile+minify for 4.0.6-rc.1 2017-11-21 23:16:57 -05:00
rodrigo.perez
34e8b695f0 Fix up arrow error when there is no options 2017-11-21 20:38:03 -05:00
N'Bayramberdiyev
0087114474 Create tk.js 2017-11-21 20:36:26 -05:00
razh
eeba16b9c4 Remove duplicate CSS selector in classic theme
Closes #5100
2017-11-21 20:33:18 -05:00
tchiotludo
0ad18a00b8 Fix french locale 2017-11-21 19:51:39 -05:00
Nadeem Afana
6d0ecbc912 Exposes select2 instance via .data('select2') 2017-11-21 10:34:09 -05:00
alexweissman
944dfd87d3 Merge branch 'patch-1' of https://github.com/zomberg/docs into develop 2017-11-18 19:05:25 -05:00
alexweissman
33f5500adf update CDN version in installation instructions 2017-11-18 18:55:21 -05:00
Slava Pavlov
ee6bb70131
Added missed commas 2017-11-11 14:10:01 +03:00
alexweissman
5424333425 Merge branch 'hotfix' into develop 2017-11-04 20:49:12 -04:00
alexweissman
e02b34ba0f update jsbin links 2017-11-04 20:48:55 -04:00
alexweissman
71b74d9d38 update jsbin template 2017-11-04 20:42:39 -04:00
alexweissman
14f53e7e41 Fix IE11 issue with select losing focus after selecting an item (#4860) 2017-10-27 12:41:34 -04:00
Tore Olav Kristiansen
bca6a50331 Fixed unit test issue and typo in Norwegian translation 2017-10-27 12:39:31 -04:00
ToreOlavKristiansen
45ee7340e5 Fixed Chrome issue: lost focus after selecting a value 2017-10-27 12:39:22 -04:00
ToreOlavKristiansen
6eee443d67 Fixes IE11 issue with select loosing focus having selected an item. 2017-10-27 12:39:10 -04:00
alexweissman
d9b8624682 bump for 4.0.6-rc.1 2017-10-26 18:22:26 -04:00
alexweissman
a48382e44d compile+minify for 4.0.6-rc.0 2017-10-26 14:19:09 -04:00
alexweissman
1864a3d538 Cache objects in Utils.__cache instead of using $.data (#4346) 2017-10-26 14:12:50 -04:00
alexweissman
62c4f6332b Merge branch 'master' of https://github.com/NadeemAfana/select2 into develop 2017-10-26 14:03:02 -04:00
alexweissman
77acc56a1e fix line length to keep jslint happy 2017-10-26 13:48:29 -04:00
alexweissman
16391c3f58 how the heck did they get a tab in there? 2017-10-26 13:38:07 -04:00
alexweissman
20429201c8 Removing the double event binding registration of "selection:update" within SingleSelection.prototype to prevent multiple calls on the selection event (#4306) 2017-10-26 13:35:58 -04:00
alexweissman
05208f9775 Improve .select2-hidden-accessible (#4908) 2017-10-26 13:25:58 -04:00
Gaël Poupard
7ca986701a Improving .select2-hidden-accessible
To match last standards, see [CSS hide and seek](http://hugogiraudel.com/2016/10/13/css-hide-and-seek/) for more explanations :)

Also I removed the negative margin because of unwanted effects in some case, as seen on Bootstrap.
2017-10-26 13:24:48 -04:00
alexweissman
254d3ba422 Add role and aria-readonly attributes to single selection dropdown value (#4881) 2017-10-26 13:22:54 -04:00
Michal Kleiner
01d881c8ae Move role and aria-readonly attributes from render function to bind function 2017-10-26 13:21:57 -04:00
Michal Kleiner
e1cda22475 Add role and aria-readonly attributes to single selection dropdown selected value 2017-10-26 13:21:57 -04:00
alexweissman
edf1ba17cb perform deep merge for Defaults.set() (#4364) 2017-10-26 13:18:46 -04:00
nobodyman
2270afa6c7 more typos 2017-10-26 13:17:26 -04:00
nobodyman
6d35b1931b fixing typos in test 2017-10-26 13:17:26 -04:00
nobodyman
8398788069 perform deep merge for Defaults.set() 2017-10-26 13:17:26 -04:00
Tim Kang
6ff10680a6 Use attr instead of prop for select2-selection__rendered title (#4640)
See #3895, and jQuery docs on `attr`:

> As of jQuery 1.6, the .prop() method provides a way to explicitly retrieve property values, while .attr() retrieves attributes.
2017-10-26 13:06:23 -04:00
Tim Kang
a395ad1d75 Add failing tests
See #3895
2017-10-26 12:59:04 -04:00
alexweissman
3d8864bcfa Fix "the results could not be loaded" displaying during AJAX request (#4356) 2017-10-26 00:38:26 -04:00
Michael Mackus
cd08d805a4 Check for string value 2017-10-26 00:36:45 -04:00
MichaelMackus
c56c20cff0 Fix AJAX data source error
Fixes #4355

Verified in Firefox & Chromium
2017-10-26 00:36:31 -04:00
alexweissman
50bf3cdd59 Implement clear and clearing events (#5058) 2017-10-26 00:31:25 -04:00
Krzysztof Śmiałek
04d3a5da66 Add dedicated event for clearing
Closes #4929, #5045.
2017-10-26 00:30:31 -04:00
Krzysztof Śmiałek
10bda78b37 Fix value not being cleared when unselect event is emitted
Fixes #5049.
2017-10-26 00:30:24 -04:00
Jevon Wright
43ffaea244 Add style property to package.json (#5019)
By adding a reference to the main dist CSS, gulp tools such as `sass-module-importer` can automatically import the stylesheet
2017-10-26 00:27:34 -04:00
alexweissman
18929d6e5a Add ; before beginning of factory wrapper (#5089)
Adding ending statement at the start of the code as absence of that causes console error while concatenating files.
2017-10-25 23:17:05 -04:00
alexweissman
09688ff6d2 Clear tooltip from select2-selection__rendered when selection is cleared (#4746) 2017-10-25 23:12:58 -04:00
shivamgupta001
1cf42cf6a8 on clear cleared tooltip too when placeholder present 2017-10-25 23:12:35 -04:00
shivamgupta001
e2c654b0ec on clear cleared tooltip too when placeholder present 2017-10-25 23:12:20 -04:00
alexweissman
ef2ef8b685 Fix keyboard not closing when closing dropdown on iOS 10 (#4680) 2017-10-25 22:45:29 -04:00
alexweissman
7d41ea153e Merge branch 'hotfix' into develop and bump for 4.0.6-rc.0 2017-10-25 18:37:05 -04:00
alexweissman
ebf10c93db compile+minify for 4.0.5 release 2017-10-25 18:08:18 -04:00
alexweissman
a0df1e86dd update changelog 2017-10-25 18:06:12 -04:00
alexweissman
633e707424 Merge branch 'patch-1' of https://github.com/frkami123/select2 into hotfix 2017-10-25 18:04:57 -04:00
alexweissman
2a21adeb2e Merge branch 'patch-2' of https://github.com/ettiennelouw/select2 into hotfix 2017-10-25 17:59:11 -04:00
alexweissman
a3952c7302 Replace autocapitalize=off with autocapitalize=none (#4994) 2017-10-25 17:52:35 -04:00
alexweissman
65f85c3109 Merge branch 'master' of https://github.com/mnrafg/select2 into hotfix 2017-10-25 17:46:47 -04:00
alexweissman
46ed8ae3ae bump version to 4.0.5 2017-10-25 17:46:02 -04:00
alexweissman
58d9836b7d minor formatting fixes for #5093 2017-10-25 16:55:40 -04:00
alexweissman
dac0433e2f bump for 4.0.5-rc.0 2017-10-25 16:55:19 -04:00
Julian Yuste
b11d6e20b0 Fix for issue #4632 2017-10-25 18:25:50 +02:00
Alex Weissman
d9703c4d1d Merge pull request #7 from anhphamt/patch-1
Update docs.md
2017-10-24 18:15:28 -04:00
Anh Pham
27a29f21e9 Update docs.md
Fix small issue with sample script.
2017-10-24 10:40:12 +07:00
alexweissman
b559310216 extra-last-resort 2017-10-23 18:59:42 -04:00
alexweissman
bf6c3c90af last resort 2017-10-23 18:51:12 -04:00
alexweissman
f0a3058c4d set platform for all browsers in grunt-saucelabs tests 2017-10-23 18:40:07 -04:00
alexweissman
131743d255 try the testTimeout param instead 2017-10-23 18:21:34 -04:00
alexweissman
f764f89325 Increase statusCheckAttempts in saucelabs qunit tests 2017-10-23 17:33:06 -04:00
alexweissman
887465f4ae update contributing, issue template docs 2017-10-23 15:11:39 -04:00
alexweissman
e382d971d6 link to new forum, and add jsbin template 2017-10-22 22:31:47 -04:00
alexweissman
01f821f307 update changelog 2017-10-21 13:45:09 -04:00
alexweissman
e6bd9d72ac document disabling search for multi-select (#4797) 2017-10-12 11:55:01 -04:00
alexweissman
fffbad9463 link to v3 docs 2017-10-12 11:23:42 -04:00
alexweissman
b746ddbd90 explain the need to unbind events after calling destroy 2017-10-12 11:12:59 -04:00
alexweissman
7eef84ec1a clarify user-defined widths (#5078) 2017-10-11 22:50:52 -04:00
alexweissman
93c163965d clarify use of placeholders (#4660) 2017-10-11 22:42:44 -04:00
alexweissman
444906bb6d Add Bower to installation docs (#5047) 2017-10-11 22:31:42 -04:00
alexweissman
e04675a234 selecting multiple items programmatically (#5068) 2017-10-11 22:31:19 -04:00
alexweissman
94b06e64c1 Merge branch 'develop' of https://github.com/select2/docs into develop 2017-10-11 19:48:18 -04:00
alexweissman
5fc339ba88 explain server-side filtering 2017-10-11 19:48:15 -04:00
Alex Weissman
a929ef9bef Merge pull request #4 from kochnev/patch-1
Update docs.md
2017-10-11 19:47:37 -04:00
Alexander
3e06ef43b9 Update docs.md 2017-09-28 17:42:55 +03:00
Muhammad Nasir Rahimi
e579207ab9 Merge pull request #1 from mnrafg/1b2d043
ps.js file removed from dist/
2017-09-27 23:01:00 +04:30
Muhammad Nasir Rahimi
23b3896bcf ps.js file removed from dist/ 2017-09-27 22:57:22 +04:30
Kou Tsuneka
7c13ecc795 remove a unnecessary quote marks 2017-09-27 03:29:16 +07:00
alexweissman
c1e62b7db7 Czech: Add missing commas and periods (#5052) 2017-09-25 20:35:37 -04:00
alexweissman
0cc279ac75 Merge #4817 2017-09-25 20:33:40 -04:00
Ettienne Louw
671a87c764 Fixed Syntax Error
Based this on on ca.js file
2017-09-25 20:28:57 +02:00
Ivan Kvasnica
398870d982 Add missing commas and periods 2017-09-25 10:30:23 +02:00
alexweissman
3561810a64 Fix line lengths to keep Travis happy 2017-09-24 21:43:57 -04:00
alexweissman
ed24c34028 Fixes French translation (see #4988) 2017-09-24 21:38:04 -04:00
alexweissman
389aa1ab97 Add Bosnian (bs) 2017-09-24 16:42:12 -04:00
alexweissman
1afea17194 Fixed Norwegian inputTooShort message (#4896) 2017-09-24 16:28:47 -04:00
alexweissman
bdc70c80a0 Updated sk.js localisation (#4915) 2017-09-24 16:27:10 -04:00
alexweissman
9f55c376d2 Merge branch 'master' of https://github.com/milupo/select2 into hotfix 2017-09-24 16:23:30 -04:00
alexweissman
22e73a5586 Fix typo in Romanian
Merged from @peterlupu
2017-09-24 16:19:47 -04:00
alexweissman
dbe4b3d551 update changelog 2017-09-24 16:15:23 -04:00
alexweissman
4930f735fa Merge branch 'patch-1' of https://github.com/nelson6e65/select2 into nelson6e65-patch-1 2017-09-24 16:08:01 -04:00
alexweissman
b81e62a2eb update for 4.0.4 2017-09-24 13:20:09 -04:00
alexweissman
16f6b10628 Compile and minify for 4.0.4 release 2017-09-24 12:09:35 -04:00
alexweissman
4780f074aa More link fixes 2017-09-24 12:09:28 -04:00
alexweissman
2855656a2d Merge branch 'hotfix' 2017-09-24 12:03:26 -04:00
alexweissman
41edff388b lock version of node-sass and request to deal with Travis build issues
See https://github.com/sass/node-sass/issues/2100
2017-09-24 11:48:36 -04:00
alexweissman
a4ec7fa0c6 update versions and urls in package configs 2017-09-23 17:07:29 -04:00
alexweissman
904d9b11d1 Merge branch 'master' into hotfix 2017-09-23 16:36:34 -04:00
alexweissman
a12c134c90 Changelog! 2017-09-23 16:30:05 -04:00
alexweissman
0f75431d8d fix links 2017-09-22 12:23:01 -04:00
alexweissman
5a9c29462b add common problem (see #5048) 2017-09-22 12:19:50 -04:00
alexweissman
139fb04f92 Improvements to event docs (see #2) 2017-09-22 12:19:30 -04:00
alexweissman
2b8f165539 document pagination (#3308, #5006) 2017-09-14 13:00:32 -04:00
alexweissman
2a7ddab2ff Suggestions as per #4387. 2017-09-13 21:08:22 -04:00
alexweissman
12b757a116 Add name attribute to examples (see #4592) 2017-09-13 20:47:36 -04:00
alexweissman
5ce020f263 Merge branch 'GitHub-files' of https://github.com/PeterDaveHelloKitchen/select2 into hotfix 2017-09-13 19:56:23 -04:00
Alex Weissman
c4544077ae Merge pull request #4434 from PeterDaveHelloKitchen/GitHub-files
move GitHub related markdown files into .github
2017-09-13 19:55:34 -04:00
alexweissman
b61b7f4892 Improve matcher example (see #4668) 2017-09-13 19:34:37 -04:00
Peter Dave Hello
890fe27a21 Move GitHub related markdown files into .github 2017-09-14 07:19:20 +08:00
alexweissman
d2655a89ba Clarify use of matcher 2017-09-13 18:58:24 -04:00
alexweissman
356920421a Fix styling of multi-selects 2017-09-12 23:45:19 -04:00
alexweissman
275ae05128 Clarify #4244 and retrieval of selected items populated via AJAX 2017-09-11 21:06:38 -04:00
alexweissman
361f7fc312 Reorganize and expand AJAX documentation 2017-09-11 20:25:30 -04:00
alexweissman
c9bd2ad716 Addresses #4835 2017-09-11 20:24:54 -04:00
alexweissman
94b14f35a5 clarify some basic JS and jQuery concepts 2017-09-11 17:54:22 -04:00
alexweissman
7fd65b3025 expand the 'programmatic control' chapter 2017-09-11 14:34:54 -04:00
alexweissman
6657444d29 document programmatically adding options 2017-09-11 13:56:11 -04:00
alexweissman
46f6f76aad point back to original GA property 2017-09-10 23:24:32 -04:00
alexweissman
7b3e8c8c92 Add link to NextGI 2017-09-10 23:23:10 -04:00
alexweissman
da40dfbcc4 Update license for docs, and add links to footer. 2017-09-10 23:09:51 -04:00
alexweissman
553f6aa00d Add "common problems" section and address #4217 2017-09-10 21:53:08 -04:00
alexweissman
fa1d12582c Addresses #4583 2017-09-10 21:17:57 -04:00
alexweissman
a2482bd416 Addresses #5004. 2017-09-10 20:49:57 -04:00
Alex Weissman
88b84f7474 Merge pull request #5033 from select2/docs-redirect
Replace docs with a redirect
2017-09-10 18:04:00 -04:00
alexweissman
9cf5eb33d5 update README for /docs 2017-09-10 17:57:07 -04:00
alexweissman
4175214444 update links in readme 2017-09-10 17:48:47 -04:00
alexweissman
a3a8de87e3 implement additional redirects for other pages 2017-09-10 17:47:28 -04:00
alexweissman
4fc911f198 rename "programmatic control" to "methods and events" 2017-09-08 14:28:02 -04:00
alexweissman
af5c13f515 events docs 2017-09-08 14:27:18 -04:00
alexweissman
ec6901d89f "getting help" page 2017-09-08 14:23:33 -04:00
alexweissman
a05a26b3be author link 2017-09-07 23:59:48 -04:00
claudiulodro
67328e3a55 Replace docs with a redirect 2017-09-07 14:24:07 -07:00
alexweissman
b9ec2edede update README 2017-09-07 15:52:24 -04:00
alexweissman
2eadef964f update version in package manager config files 2017-09-06 17:05:28 -04:00
alexweissman
06d2293f3e add changelog 2017-09-06 17:03:04 -04:00
alexweissman
ca4de9dcb0 Merge branch 'focus-event' of https://github.com/nino-s/select2 into hotfix 2017-09-06 16:59:54 -04:00
Nelson Martell
5f7feeb801 Update es.js
Update the 'errorLoading' message.
2017-09-06 13:41:31 -04:00
alexweissman
50fa14c2d1 GA code 2017-09-06 10:52:14 -04:00
alexweissman
08f6165dc6 fix more links 2017-09-06 10:49:19 -04:00
alexweissman
7ca42508a8 fix more links 2017-09-04 01:38:36 -04:00
alexweissman
cdd620d763 Fix links 2017-09-03 23:22:18 -04:00
alexweissman
748eff7c4a finish advanced chapter 2017-09-03 23:09:17 -04:00
alexweissman
bb1fda2654 integrate announcements and backwards-compat 2017-09-03 22:23:13 -04:00
alexweissman
94c5c3a3fe begin integrating the "old options" page 2017-09-03 19:02:00 -04:00
alexweissman
38286400ca Fix i18n examples 2017-09-03 01:01:18 -04:00
alexweissman
7d0701399d Fix tagging examples 2017-09-03 00:47:09 -04:00
alexweissman
0257a66590 fix theme examples 2017-09-03 00:40:02 -04:00
alexweissman
29619aa43a Fix urls to images 2017-09-03 00:28:13 -04:00
alexweissman
05cc3a577a first take 2017-09-02 20:34:47 -04:00
alexweissman
0bbf614ee3 Clarify usage of processResults (#4706) 2017-09-01 13:08:08 -04:00
alexweissman
60e3925128 Provide example code for "can users remove all of their selections" 2017-09-01 12:52:37 -04:00
alexweissman
89c517b589 Merge branch 'patch-1' of https://github.com/ricardokenji/select2 2017-09-01 12:48:33 -04:00
alexweissman
22ac9d5f20 clarify exactly what "tagging" is 2017-09-01 01:18:58 -04:00
alexweissman
b0e5197e00 Merge branch 'patch-1' of https://github.com/marcaparent/select2 2017-09-01 00:32:46 -04:00
alexweissman
0459ac89f5 Results for grouped options (see #4662) 2017-08-31 18:36:44 -04:00
alexweissman
787d20ef0c Fix code highlighting 2017-08-31 18:34:19 -04:00
alexweissman
96f5f724d9 Merge branch 'master' of https://github.com/adw99/select2
Adds information about pagination data
2017-08-31 18:03:22 -04:00
alexweissman
f13ea6f5ff Merge branch 'docs-for-ajax-results-looks-like' of https://github.com/sedrubal/select2 2017-08-31 17:30:22 -04:00
alexweissman
8534d3e2ef Update instructions for building docs locally 2017-08-31 14:00:03 -04:00
Alex Weissman
9a79140920 Merge pull request #4921 from wouter-muller/patch-1
Fix minor typo in README.md
2017-08-31 12:19:56 -04:00
Muhammad Nasir Rahimi
1b2d0424e9 Translation improved 2017-06-18 10:50:10 +04:30
Muhammad Nasir Rahimi
dbb1132b7e JSHint maxlen fix 2017-06-17 13:44:22 +04:30
Muhammad Nasir Rahimi
5330a0cc62 Add Pashto (ps) Language 2017-06-17 13:29:44 +04:30
milupo
575e862f98 Create hsb.js 2017-06-11 20:02:09 +02:00
milupo
d914a6d5f5 Create dsb.js 2017-06-11 20:00:58 +02:00
milupo
5a7f832f12 Create dsb.js 2017-06-10 17:03:53 +02:00
milupo
3bc4522200 Create hsb.js 2017-06-10 17:03:05 +02:00
milupo
25fdc6bef4 Delete hsb.js 2017-06-10 17:02:15 +02:00
milupo
53c4c97411 Delete dsb.js 2017-06-10 17:01:36 +02:00
milupo
32ba6d7573 Create dsb.js 2017-06-10 16:04:48 +02:00
milupo
a4a095bda8 Create hsb.js 2017-06-10 16:02:59 +02:00
Wouter Muller
d6ccd09f5b Fix minor typo in README.md 2017-05-24 13:20:55 +02:00
depesr
5bb7446d24 Update sk.js 2017-05-23 07:22:18 +02:00
depesr
e43a1f2165 Updated sk.js localisation 2017-05-23 07:18:15 +02:00
Frederic G. Østby
f38d84df71 Fixed norwegian inputTooShort message. 2017-05-05 13:02:43 +02:00
Marc-Antoine Parent
a587e39288 Add example for single select element 2017-03-30 16:07:50 -04:00
Marc-Antoine Parent
e5fc98dda9 Update tags.html 2017-03-30 14:04:10 -04:00
Ettienne Louw
2b3dd18d35 Create af.js
Added afrikaans language file
2017-03-29 18:07:49 +02:00
Marc-Antoine Parent
d01457702d Add multiple selection specification to docs 2017-03-13 16:21:29 -04:00
Børge Antonsen
946149277e Simplified Norwegian(nb) translation to a more correct text 2017-03-02 10:13:57 +01:00
Kevin Brown
c155ca5b60 Merge pull request #4794 from crowchirp/patch-2
corrected typo
2017-02-13 17:18:32 -05:00
Chandan Rai
fafcc103a6 corrected typo 2017-02-14 00:33:16 +05:30
Chandan Rai
d54135c444 corrected typo 2017-02-13 13:44:39 +01:00
Olivier Contant
f3d1f5d0b8 Small typo on language (typed lanugage)
Small typo on language (typed lanugage)
2017-02-10 02:21:18 +01:00
Stan Senotrusov
f2ae054f21 Docs, remove mention of private API: jQuery's data in <OPTION> elements 2017-02-09 20:39:28 +01:00
Stan Senotrusov
36927664b3 Correct spelling in documentation. 2017-02-09 20:39:28 +01:00
Stan Senotrusov
bae34d4f8a Add event handler example to documentation on how to programmatically access a selection data. 2017-02-09 20:39:28 +01:00
Stan Senotrusov
576f93778d Add documentation on how to programmatically access a selection data. 2017-02-09 20:39:28 +01:00
James Pic
8dc02bcfb8 Merge pull request #4745 from FROGGS/patch-1
Show same options in example as used in demo
2017-01-30 22:20:16 +01:00
Tobias Leich
4ee9f7b5e2 Show same options in example as used in demo
The templateSelection option was used in the demo, but was not shown in the example code.
This commit fixes it, so that copy&pasting works as expected.
2017-01-11 17:18:16 +01:00
Kevin Brown
04c433d709 Merge pull request #4735 from simi/patch-1
correct typo in pt.js
2016-12-30 12:34:40 -05:00
Josef Šimánek
cd7d4be576 correct typo in pt.js 2016-12-30 18:22:49 +01:00
Kevin Brown
751b36767f Corrected linting issue in Turkish translation 2016-12-30 12:15:56 -05:00
mhamlet
f6fa52dcc0 Added Armenian Localization
This closes https://github.com/select2/select2/pull/3993.
2016-12-30 12:15:25 -05:00
osman orhan
fd4a082531 Add missing errorLoading to Turkish translation
This closes https://github.com/select2/select2/pull/4650.
2016-12-30 11:50:58 -05:00
Kevin Brown
a018dd84a7 Merge pull request #4697 from Shnoulle/patch-1
typo in ISSUE_TEMPLATE.md
2016-12-30 11:47:07 -05:00
Kevin Brown
3b8a5d3660 Merge pull request #4730 from quantus/master
Add missing finnish translations
2016-12-30 11:44:28 -05:00
Kevin Brown
763b3cef3f Updated grunt-saucelabs to the latest version
It was incorrectly set to 0.0.0 instead of 9.0.0 in
288f0283b1
2016-12-29 19:49:32 -05:00
Kevin Brown
04d582123d Recompile dist 2016-12-29 19:47:19 -05:00
Derrick Hammer
45a8773454 Fix UMD commonjs support
This is based on the UMDJS jQuery template available at
95563fd6b4/templates/jqueryPlugin.js

This closes https://github.com/select2/select2/issues/4557.
This closes https://github.com/select2/select2/pull/4558.
2016-12-29 19:40:09 -05:00
Kevin Brown
288f0283b1 Updated grunt-saucelabs to latest version 2016-12-29 19:29:01 -05:00
Kevin Brown
0358ee5287 Added two test cases (zero and empty string check)
This adds two test cases for 16b4840c0e.
2016-12-29 19:25:37 -05:00
Mike Dearman
16b4840c0e Support selecting options with falsy values
Previously you could not select an option which had the number 0
as its value, because there was a check which would detect it as
an option without a value. There was a similar issue with selecting
options which had a blank string as the value.

This closes https://github.com/select2/select2/issues/4604.
This closes https://github.com/select2/select2/issues/4516.
This closes https://github.com/select2/select2/issues/3252.
This closes https://github.com/select2/select2/issues/3519.

This closes https://github.com/select2/select2/pull/4605.
This closes https://github.com/select2/select2/pull/4517.
2016-12-29 19:23:48 -05:00
Kevin Brown
5313143fdf Merge pull request #4663 from sedrubal/fix-typos-in-docs
Fix typos in docs
2016-12-29 19:12:50 -05:00
Kevin Brown
c8d1c312c8 Merge pull request #4670 from josa42/add-license-to-bower-json
Add license to bower.json
2016-12-29 19:11:37 -05:00
Stephen A. Wilson
0a67287c7a Answer question about using HTML in selection template
This closes https://github.com/select2/select2/pull/4606.
2016-12-29 19:09:28 -05:00
Nimit Suwannagate
625fc78ee6 Add errorLoading translation of Thai language.
This closes https://github.com/select2/select2/pull/4521.
2016-12-29 19:01:37 -05:00
Leandro Regueiro
f3788e2cda Simplify Danish and Arabic translations
This closes https://github.com/select2/select2/pull/4547.
2016-12-29 18:59:44 -05:00
Leandro Regueiro
8fcc6202c3 Update Galician translation 2016-12-29 18:59:15 -05:00
mitja-p
8e6422c570 Add Slovene translation
This closes https://github.com/select2/select2/pull/4576.
2016-12-29 18:55:49 -05:00
niki7har
4df965219e Update de.js
The german errorLoading message was missing.

This closes https://github.com/select2/select2/pull/4711.
This closes https://github.com/select2/select2/pull/4591.
2016-12-29 18:48:18 -05:00
Sági György
7d1d133523 i18n hu.js update. Added errorLoading property.
This closes https://github.com/select2/select2/pull/4724.
2016-12-29 18:46:29 -05:00
Kevin Brown
1167bace78 Added tests for case insensitive tag matching
This adds a single test for cb9a904578.
2016-12-29 18:29:04 -05:00
Yaron Uliel
cb9a904578 Make tags matching case insensitive
This closes https://github.com/select2/select2/issues/3566
This closes https://github.com/select2/select2/pull/4509
2016-12-29 18:26:19 -05:00
Pekka Pöyry
124087ae2a Add missing finnish translations 2016-12-22 15:03:12 +02:00
Denis Chenu
3a1603ce03 typo in ISSUE_TEMPLATE.md
This pull request includes a

- [ ] Bug fix
- [ ] New feature
- [ ] Translation
- [x] Documentation

The following changes were made

- typo in ISSUE_TEMPLATE.md : ste**p**s

No ticket
2016-11-24 17:58:38 +01:00
Josa Gesell
321a2460eb Add license to bower.json 2016-11-03 11:23:50 +01:00
sedrubal
69600667e6
Fix typos in docs 2016-10-30 17:22:31 +01:00
sedrubal
793811757b
Docs for: What should the results returned to Select2 look like? 2016-10-30 17:18:44 +01:00
Kevin Brown
563198a4a2 Merge pull request #4597 from jpic/patch-1
Add django-autocomplete-light to integrations
2016-09-23 11:20:16 -04:00
James Pic
3f874a1db4 Add django-autocomplete-light to integrations 2016-09-22 00:08:19 +02:00
Kevin Brown
062c6c3af5 Merge pull request #4538 from luciano-jr/improve-documentation
Update select.html
2016-08-18 23:00:50 -04:00
Luciano Jr
ed5707a3d4 Update select.html 2016-08-17 17:10:47 +01:00
Kevin Brown
3f8492b62f Merge pull request #4441 from uestla/docs-1
docs: more appropriate terminology ("highlight" -> "focus")
2016-06-24 09:17:24 -04:00
Petr Kessler
6f21865d8a docs: more appropriate terminology ("highlight" -> "focus") 2016-06-24 09:54:06 +02:00
Kevin Brown
d2d7a9c381 Merge pull request #4435 from ZuBB/patch-1
fix(docs): corrected mistype
2016-06-21 10:00:56 -04:00
Vasyl Zuzyak
3a67616c2f fix(docs): corrected mistype 2016-06-21 16:57:19 +03:00
Nino Schoch
294e7e664d Fixed form focus lost 2016-06-16 13:45:21 +02:00
Kevin Brown
083c2112df Merge pull request #4389 from anasshekhamis/master
Correct typo in "options" page
2016-06-11 19:47:14 -04:00
Anas Shekhamis
ffe780db53 Correct typo in "options" page
Correct a typo in the "options" page, "Data Adapters" section, "Do the
id properties have to be strings?" part.
"&gt;select&lt;" to "&lt;select&gt;"
2016-05-29 12:36:00 +03:00
Kevin Brown
566c7846fb Update version identifiers for 4.0.3 2016-05-26 21:16:06 -04:00
Kevin Brown
24a8d73a99 Recompile dist 2016-05-26 20:53:18 -04:00
Kevin Brown
2343fd4ae4 Clarify the Bootstrap docs notice with the dropdownParent option
This closes https://github.com/select2/select2/pull/4253.
2016-05-26 20:52:37 -04:00
Kevin Brown
8bc4f5d41d Added createTag code samples
This lays down part of the path for
https://github.com/select2/select2/issues/4023 as well as
https://github.com/select2/select2/issues/3974.
2016-05-26 20:50:12 -04:00
Harry
7eab29e271 Added Greek (el) translation
Translated English (en) language file to Greek (el).

This closes https://github.com/select2/select2/pull/4139
This closes https://github.com/select2/select2/pull/4146
2016-05-26 20:36:22 -04:00
Kevin Brown
7505347a69 Merge pull request #4379 from petruavram/master
[Docs] Add favicon
2016-05-26 20:25:39 -04:00
Petru-Vasile Avram
d34bff5797 Add favicon
I used the logo image on the site to generate a favicon using
[Real
Favicon Generator tool](http://realfavicongenerator.net/).
2016-05-25 10:25:47 +03:00
Kevin Brown
a74547aaa7 Migrate from expect to assert.expect
After we upgraded to QUnit 1.23.1, we gained support for
assert.expect(). This allows us to guard against any race conditions
within tests, because now expect() will be linked to the specific test
instead of the current running test.
2016-05-23 23:38:45 -04:00
Kevin Brown
2805fa7aa4 Add tests for detecting added and removed options
This adds tests for ea79a197e0.
2016-05-23 23:32:02 -04:00
Kevin Brown
ea79a197e0 Select2 now detects added and removed options
Select2 will now automatically update the selection if there are options
added to or removed from the DOM within the `<select>` element. This is
supported in all browsers except for Internet Explorer 8. Internet
Explorer 8 does not support the DOM mutation events which were added in
Internet Explorer 9, and it does not support mutation observers which
are the recommended way of handling this in modern browsers.

DOM mutation events also trigger for the `<select>` itself when it is
pulled from the DOM, so we need to filter these out within the event
handler.

Despite supporting mutation observers, we cannot accurately detect if
the removed option was selected at one time or another, so we need to
always re-pull the selection when an element is deleted.

This closes https://github.com/select2/select2/issues/4248
This builds upon https://github.com/select2/select2/pull/4249
2016-05-23 23:31:17 -04:00
Kevin Brown
a75482fd30 Upgrades QUnit to 1.23.1
This was required for us to get assert.async() support within tests, as
well as assert.expect() support. This was required because we need them
for multiple async tests that are coming.
2016-05-23 23:25:13 -04:00
Kevin Brown
99c248cc34 Recompiled dist 2016-05-14 22:34:03 -04:00
Kevin Brown
4b9e02f022 Corrected check for opening the dropdown
This corrects the check that was used when the dropdown was opened, so
the results would be immediately rendered instead of delaying the
loading. Previously it would delay the immediate load but immediately
load the results when the search term was emptied.

This closes https://github.com/select2/select2/issues/4191
This closes https://github.com/select2/select2/pull/4192
This closes https://github.com/select2/select2/pull/4202
2016-05-14 22:26:56 -04:00
Kevin Brown
481c43883e selectOnClose now properly works with closeOnSelect
Previously we hacked around the infinite loop between closeOnSelect and
selectOnClose by attempting to detect what event was being triggered
without knowing what event triggered it. Now we properly relay the
Select2 event and the jQuery event that triggered the select or unselect

This closes https://github.com/select2/select2/issues/4012
2016-05-14 22:14:20 -04:00
Kevin Brown
ad8447cc35 Add a new _type parameter for the first event argument
This will include the event type in the _type property, so it can be
accessed within the event handlers if it's not normally passed in. This
should not conflict with any existing handlers, and this should not be
considered a public property on event arguments.
2016-05-14 22:01:42 -04:00
Kevin Brown
acd3306192 Added tests for focusing results
This adds three tests related to focusing selected items in the results.
The tests are for e897d00 and 9f58128.
2016-05-14 21:05:30 -04:00
Kevin Brown
9f581285d8 Renamed focusFirstItem method
This renames the `focusFirstItem` method to `highlightFirstItem`, which
better reflects what is actually happening. This also ensures that the
highlight is visible when it is moved by calling
`ensureHighlightVisible`.

This closes https://github.com/select2/select2/issues/3479
This closes https://github.com/select2/select2/pull/4238
2016-05-14 21:05:14 -04:00
Alexander Leonov
e897d008a6 Fixed infinite scrolling issue using down key. 2016-05-14 21:04:31 -04:00
Nadim Afana
b6f0f3a69e Fixed line is too long warning for jquery-calls.js 2016-05-08 19:51:46 -07:00
Nadim Afana
8663d1bf0b Fixed jshint warnings 2016-05-08 19:45:58 -07:00
Nadim Afana
5fd270c9e4 Added an integration test to ensure issue does not come back in the future. 2016-05-08 19:32:41 -07:00
Nadim Afana
fba261c670 Fixed EOL to Unix format. 2016-05-06 14:54:13 -07:00
Nadim Afana
16e26310e1 Fixed more indentation issues. 2016-05-06 12:28:49 -07:00
Nadim Afana
6e9657105b Fixed indentation. 2016-05-06 12:23:58 -07:00
Nadim Afana
a1dc7f23d1 Fixed unit tests and updated source code to handle HTML5 attribs. 2016-05-05 21:41:20 -07:00
Nadim Afana
95b1f8b409 Reverted a line in base.js regarding tab index. 2016-05-05 18:38:38 -07:00
Nadim Afana
76298267f9 Updated inputData.js 2016-05-05 18:12:51 -07:00
Nadim Afana
54e126a664 Fixed bug #4014 2016-05-05 15:38:31 -07:00
Kevin Brown
07aa8a45b0 Merge pull request #4342 from damienfinck/master
Add missing French translation
2016-05-04 17:30:29 -04:00
Damien Finck
b1ea28bb7d Add missing French translation 2016-05-04 19:55:01 +02:00
Kevin Brown
3663b44b83 Merge pull request #4338 from murb/lt-file-jshint-fix
linting fix for lt i18n file
2016-05-02 22:03:03 -04:00
Maarten Brouwers
89dcfef94b linting fix for lt i18n file 2016-05-03 00:08:06 +02:00
Kevin Brown
f3b91d0680 Recompile dist with master 2016-04-24 12:21:53 -04:00
Aurelijus Rožėnas
5b5eddd183 Fixed broken lithuanian translation
This closes https://github.com/select2/select2/issues/4301.

Signed-off-by: Kevin Brown <kevin@kevin-brown.com>
2016-04-23 22:33:22 -04:00
Kevin Brown
5a831afb9a Added documentation for ajax.url
This closes https://github.com/select2/select2/issues/4213.
2016-04-23 22:23:04 -04:00
Kevin Brown
5b207b287e Add test for focus event on inline search
This adds a test for
02cca7baa7.
2016-04-23 21:38:41 -04:00
Kevin Brown
3bc7f4ac78 Added docs section for HTML labels
This will make it easier in the future to test that we support labels,
and it tells people who are looking to confirm that we support labels
that we in fact do.
2016-04-23 20:36:39 -04:00
Kevin Brown
31e7a1d4c5 Support the focus event on the <select> element
This adds basic support for focusing the Select2 element by triggering
the `focus` event on the underlying <select> element.  This implicitly
adds support for <label> elements, which will trigger the `focus` event
on the `<select>` if it is clicked.

This also fixes the focus issue that previously existed if Select2 was
opened while in a <label>. The focus would be transferred to the search
dropdown, and then immediately pulled away to the <select> element. This
happened because the <label> element triggers the `focus` event when a
`click` event propagates its way up, and we do not stop the propagation
of the `click` event when it is triggered on the selection.

This closes https://github.com/select2/select2/issues/2311.
This closes https://github.com/select2/select2/issues/4203.
This closes https://github.com/select2/select2/pull/4235.
2016-04-23 19:58:04 -04:00
Kevin Brown
b10976bd25 Merge pull request #4318 from acorncom/patch-1
Updated old select2-bootstrap-theme link
2016-04-20 14:03:58 -04:00
David Baker
64a79c3a5b Updated old select2-bootstrap-theme link 2016-04-20 11:11:20 -06:00
Kevin Brown
98f054fc18 Tune the tests for positioning
These tests did not cover the classes that should have been
automatically applied to the dropdown based on the space around it. Now
they both test that the dropdown should be facing down, because there is
enough space below it to display the dropdown.
2016-04-17 17:15:44 -04:00
Ryan Cousart
ecdc416635 Fixing bug with non-static parents for dropdowns
The offset of the parent was only being subtracted if the dropdown was
facing down, this now subtracts it if the dropdown is facing up as well.
This more or less applies the same fix as
e260860789,
but when calculating the position of the dropdown when it is facing up.

This closes https://github.com/select2/select2/issues/3303
This closes https://github.com/select2/select2/pull/4267
2016-04-17 16:58:01 -04:00
Kevin Brown
c099755012 Merge pull request #4246 from somethvictory/master
add Khmer translation
2016-04-14 17:54:48 -04:00
Kevin Brown
120672dce7 Added tests for multiple tags and tokenizing
This adds tests to ensure that 3b8cd2e369
will continue to work in the future.
2016-03-27 18:37:27 -04:00
Kevin Brown
3b8cd2e369 Create an option when tokenizing if needed
Previously the tokenizer only worked when creating multiple options
at once if all of the options existed. It always worked when creating
a single option, because all of the special cases were handled by the
tagging module. When working with multiple options, the tagging
module does not kick in until after the query has been run, which
is when the tokenizer does its magic.

This fixes the issue by automatically creating the option tags that
the tagging module would normally create. It only does this if the
options do not already exist, so we don't need to worry about the
tokenizer creating duplicates of existing options.

This closes https://github.com/select2/select2/issues/3458
2016-03-27 18:29:01 -04:00
Kevin Brown
cfb66f5e4f Attempt to detect aborted requests
The error handler should not be raised if a request is aborted while
another one is sent out. This attempts to detect those cases by
handling the case where the error was raised and the request has a
status code of 0, which should either mean we're in offline mode or
the request was aborted.

This closes https://github.com/select2/select2/issues/4205
2016-03-27 15:44:40 -04:00
Kevin Brown
fe26b083eb Fix dropdownAutoWidth so it actually works
Previously the `dropdownAutoWidth` option didn't work because the
dropdown was being absolutely positioned, so setting the width to
`auto` didn't actually have an effect. This cannot be solved by
just setting the width on the container, because that is also
absolutely positioned.

This closes https://github.com/select2/select2/issues/3101
2016-03-27 15:24:37 -04:00
Kevin Brown
ac254ff68d Added tests for jQuery calls to Select2
This adds a test that covers the change made in
c2c1aeef31.
2016-03-27 15:16:22 -04:00
Kevin Brown
c2c1aeef31 Fix calling select2('', args) on multiple elements
This fixes an issue that has existed since Select2 4.0.1 where the
arguments passed into each `<select>` were mutated. This no longer
mutates the arguments for each element, and instead only drops the
first argument once.

This closes https://github.com/select2/select2/issues/4245
2016-03-27 14:59:44 -04:00
jpic
8869b170b1 Set list-style further down the DOM
This closes https://github.com/select2/select2/issues/4225
This closes https://github.com/select2/select2/pull/4226
2016-03-27 14:55:21 -04:00
Kevin Brown
84d6b5d840 Added small example of attaching event listeners
This closes https://github.com/select2/select2/pull/4255
2016-03-27 14:47:06 -04:00
Kevin Brown
962fd63a67 Stub question about event data 2016-03-27 14:46:29 -04:00
Kevin Brown
78cac8972a Merge pull request #4259 from zapodot/master
Added missing Norwegian bokmaal label used for errors
2016-03-27 14:38:11 -04:00
Sondre Eikanger Kvalø
0212edda95 Added missing Norwegian bokmaal label used for errors 2016-03-16 15:51:39 +01:00
Someth Victory
a7738c4517 fix jshint: Line is too long 2016-03-10 16:45:27 +07:00
Someth Victory
a797833e10 add Khmer translation 2016-03-10 16:35:09 +07:00
Kevin Brown
6844be777b Missed a version identifier 2016-03-08 20:42:47 -05:00
Kevin Brown
622a619d25 Updated version identifiers for 4.0.2 2016-03-08 20:33:38 -05:00
Kevin Brown
68a199fc98 Added initial questions for tagging docs 2016-03-08 20:28:36 -05:00
Kevin Brown
3783354d02 Add documentation on ids needing to be strings
This closes https://github.com/select2/select2/issues/4052
This closes https://github.com/select2/select2/pull/4076
This closes https://github.com/select2/select2/issues/4227
2016-03-08 20:04:57 -05:00
Radu Ungureanu
72d905f9e0 Romanian localization
- updated transaltions
- added translation for errorLoading
- issue fixes - compare characters length instead of message when adding terminal character

This closes https://github.com/select2/select2/pull/4208
2016-03-08 19:54:01 -05:00
Kevin Brown
4901e221c9 Merge pull request #4222 from cheeaun/patch-1
s/incluidng/including
2016-03-01 09:54:50 -05:00
Lim Chee Aun
18a453ed9e s/incluidng/including 2016-03-01 17:16:03 +08:00
Kevin Brown
f2268caf23 Added pull request and issue templates
The issue template is largely based on the questions included in the
canned comment that I use for bugs, which is mostly covered in the
contributing guide. Even though there are a lot of lines, most of it is
just ticking checkboxes.

The issue template is focused on bug reports, as those are considerably
more common than feature requests.

The pull request template was designed to be pretty slim, we haven't had
many issues with these in the past.
2016-02-18 17:34:43 -05:00
Kevin Brown
296d2f8879 Add Sauce Labs matrix to the README
This also updates the Travis CI image to be a vector.
2016-02-17 17:11:17 -05:00
Kevin Brown
664210c271 Update the list of integrations
The integrations are now organized by the name of the integration, and
themes are now separated out from the plugins. The references for this
section have been pulled out at the bottom because there are so many.

This closes https://github.com/select2/select2/issues/4150.
This closes https://github.com/select2/select2/pull/4067.
This closes https://github.com/select2/select2/issues/3957.
2016-02-17 17:10:39 -05:00
Kevin Brown
eae6fcc2bd Update version identifiers to 4.0.2-rc.1 2016-02-14 17:06:23 -05:00
Kevin Brown
37dbe059fc Document DOM events
This closes https://github.com/select2/select2/pull/4115.
2016-02-14 16:14:58 -05:00
Kevin Brown
7f8e9dc62a Document the change.select2 event
This closes https://github.com/select2/select2/issues/3620.
2016-02-14 15:16:08 -05:00
Kevin Brown
ac109685a0 Docs for mapping id and text
These modified snippets are from the announcement.

This closes https://github.com/select2/select2/issues/4086.
2016-02-14 15:03:51 -05:00
Kevin Brown
6369f5f173 Fix the Select2 logo
With the update to Bootstrap it was forcing the Select2 text down.
2016-02-14 14:49:39 -05:00
Kevin Brown
81a4a68b11 Updated Font Awesome to 4.5.0 for docs
This also includes the missing WOFF2 and SVG files that were causing
errors for some.

This closes https://github.com/select2/select2/issues/4160.
2016-02-14 14:34:56 -05:00
Kevin Brown
a5e539b509 Updated Bootstrap to 3.3.6 for docs
This allows us to custom build it without Glyphicons so we don't have
any errors about it not being found.
2016-02-14 14:33:52 -05:00
Vasyl Zuzyak
e3f9466d8b Reuse result of previous calcualtion
This closes https://github.com/select2/select2/pull/4155.
2016-02-14 14:03:49 -05:00
Bruno Sampaio
d976f1c576 added test for recursively applying defaults
This adds tests for 983cd8e765.
2016-02-14 14:00:01 -05:00
Bruno Sampaio
983cd8e765 Recursively apply defaults
This closes https://github.com/select2/select2/pull/4130.
2016-02-14 13:58:14 -05:00
Ben
65179f16de Santize automatically generated ids
This closes https://github.com/select2/select2/issues/3618.
This closes https://github.com/select2/select2/pull/4123.
2016-02-14 13:48:19 -05:00
Kevin Brown
75163d67cb Switched options page to use Jekyll highlighting 2016-02-14 13:33:33 -05:00
Kevin Brown
a126b53b4c CSS changes for Rouge highlighting
This adds a new CSS file and adjusts existing highlighting files for the
Rouge syntax highlighting that was enabled.
2016-01-30 21:01:12 -05:00
Kevin Brown
d5a76aab26 Switched 4.0 announcement to Jekyll highlighting 2016-01-30 18:30:57 -05:00
Kevin Brown
74387b9863 Switched examples to use Jekyll's highlighting
This fixes some bugs that were present in the old Prettify highlighter
when there was a mix of JavaScript and HTML in the same code block. Now
with Rouge, the highlighter used by Jekyll, these cases are properly
handled and HTML no longer looks strange.

This does not convert all of the code blocks over, because there are
still some code blocks which double as the actual JavaScript code
powering the example that need to be migrated.
2016-01-30 18:09:01 -05:00
Kevin Brown
54441e6a22 Switched index to use Jekyll's code highlighting
We previously used Google's Prettify, which worked on the client side.
Now that we are actually using Jekyll, and it has built-in syntax
highlighting, we might as well change to doing highlighting on the
backend.
2016-01-28 11:54:24 -05:00
Kevin Brown
ff9486bbd2 Merge pull request #4127 from drmonkeyninja/patch-1
Replaced protocol-relative URLs with HTTPS protocol
2016-01-28 11:26:00 -05:00
Andy Carter
9b4b9175fc Replaced protocol-relative URLs with HTTPS protocol
Use of protocol-relative URLs is now seen as an anti-pattern as it leaves the door open to attacks. As the CDNs serve over HTTPS it should be recommended that people use HTTPS rather than protocol-relative URLs. See Paul Irish's post on [Protocol-relative URLs](http://www.paulirish.com/2010/the-protocol-relative-url/) for more details.
2016-01-27 10:21:50 +00:00
Kevin Brown
97f7eea9ce Recompile dist 2016-01-14 19:31:16 -05:00
Kevin Brown
0840c3923f Code samples and docs for selections 2016-01-14 19:30:11 -05:00
Kevin Brown
ce2204cff0 Code samples for options affecting the dropdown
This is just code samples, most of this still needs readable (non-code)
documentation that actually explains what is going on with the options.
2016-01-14 19:29:48 -05:00
Kevin Brown
55aa2c64cc More docs for data adapters 2016-01-14 19:26:19 -05:00
Kevin Brown
d6bc96d7de Expand upon the core section of the docs
This adds more code examples where they might be useful, and adds some
more description where it was needed. This clarifies a couple of the
questions that have come up about the AMD support and links to the bug
that Select2 was involved with that some people reported when 4.0.0 was
released.
2016-01-14 18:40:37 -05:00
Kevin Brown
69ef214c92 Display error message on AJAX errors
This display the `errorLoading` translation when there is an error
during the AJAX cycle. Previously we were just throwing these errors
out, now we are actually displaying an error message.

This closes https://github.com/select2/select2/issues/3501
2016-01-04 20:07:37 -05:00
Kevin Brown
db5e947664 Added test for new insertTag option
This adds a basic test that ensures that the `insertTag` option works as
expected.
2016-01-03 19:09:45 -05:00
Stretch
e842797aaf Added insertTag to control the tag position
This adds an option called `insertTag` that controls the location within
the results where the tag is inserted. The function should take in the
results array and the tag, and should modify the array in-place to add
the tag to the results.

This closes https://github.com/select2/select2/issues/3420
This closes https://github.com/select2/select2/pull/4008
2016-01-03 19:08:59 -05:00
Kevin Brown
63d531a9c0 Fixed responsive example in documentation
This fixes the documentation so the responsive example actually works.
Everything was working properly, the example just wasn't updated when
the default for the width was changed to `100%` in
5fd72d2052.
This is a change from the old `resolve` width setting, which is
responsible for parsing the style attribute and getting the width that
was set.

This closes https://github.com/select2/select2/issues/4050
2016-01-03 18:57:49 -05:00
Kevin Brown
f3b9693ad9 Fixed existing selections not being respected with array data
This fixes an edge case that occurred pretty much whenever anyone would
use array data with existing selections along with a placeholder. This
caused the existing selections to be discarded, because the `selected`
property was not being transferred over to the new option. This was
based the new data was being preferred over the data that could be
inferred from the option, and the new data typically did not include the
selected state. As a result, the option was assumed to not be selected.

This was not cause by existing tests because all of the existing tests
only covered cases where the selected option was the first option, and
that was not affected by this bug.
2016-01-03 18:34:59 -05:00
Kevin Brown
d1ed0a513a Add failing test for existing array selections
This adds a broken test that demonstrates the issue seen in
https://github.com/select2/select2/issues/3990 where existing selected
options are being reset once Select2 is initialized. This issue cannot
be reproduced on the options page [1] because the issue only appear to
happen if the selected option is not the first one in the list of
possible options.

[1]: https://select2.github.io/examples.html#data-array
2016-01-03 18:21:09 -05:00
Kevin Brown
f58c1efc11 Fixed failing tests in IE9/FX
This fixes the two failing assertions that only triggered in IE 9 (no
other versions) and Firefox. Both of them were caused by the offset for
the dropdown including a constant extra amount, what appeared to be
related to the size of the container if it actually had content. This
was not consistent in browsers, so now we are forcing there to be a
small amount of content within the container and then calculating the
expected offset based on that height.
2016-01-03 17:46:01 -05:00
Kevin Brown
09ecd3cdb9 Remove dead code
This call to `$.fn.position` was causing an error in IE 8 because the
`offsetParent` was null on the container for some reason. It's not
needed, so this line of code has been removed.

This should fix the test failures in IE 8.
2016-01-01 18:16:51 -05:00
Kevin Brown
e260860789 Correct positioning issues for statically positioned elements
There was a commit that landed in 4.0.1 that fixed positioning for
non-static elements, which are commonly used for the custom
`dropdownParent` option, but broke positioning for statically positioned
elements, commonly used in almost every other case. That commit was
c9216b4b96

This fixes the positioning issues caused by that commit by properly
calculating the offsets for statically positioned parents. Statically
positioned parents are unique, because the offset for the dropdown must
be calculated based on the closest element that is non-statically
positioned. Otherwise, the offset for any statically positioned parent
other than the body will be considerably higher than it should be,
resulting in the dropdown being offset by a large amount.

The offset parent for the body element is the html element, which is why
this works for both the body element and any custom parents for the
dropdown. This would not be needed if the parent wasn't customizable (as
seen in Select2 3.x) because you will never need to offset the body
element if it is statically positioned, because the html element almost
never has an offset.

This also fixes JSHint issues within the tests added in the last commit.

This closes https://github.com/select2/select2/issues/3970
This closes https://github.com/select2/select2/issues/3639
2016-01-01 17:15:00 -05:00
Kevin Brown
b5a4698250 Add regression tests for the positioning issues
This adds a regression test that verifies the problem with positioning
the dropdown when the parent is a statically positioned element that
still has an offset. This could typically be seen if the body element
has an offset, which unfortunately it almost always does because of the
default user stylesheet in browsers. This was not caught during
pre-release testing because all of the test pages reset the margins and
padding on the body element.

This regression test verifies that the offsets that should be set for
the dropdown are calculated correctly. These were surprisingly difficult
to do because of how the offset is calculated using different
positioning techniques.

These tests are for https://github.com/select2/select2/issues/3970
2016-01-01 16:47:49 -05:00
Kevin Brown
9c35475c6c Added test for attachBody
This is just a basic test that ensures that the dropdown is appended to
the end of the dropdown parent when `dropdownParent` is defined.
2015-12-31 13:04:38 -05:00
ricardokenji
c33ba3117b Update clearing-selections.html 2015-12-11 13:25:09 -02:00
Kevin Brown
bc19964170 Update version identifiers to 4.0.1 2015-11-27 18:26:20 -05:00
Kevin Brown
c9216b4b96 Fixed positioning with non-static parents
This fixes an issue with non-static parents (ones that were relatively
or absolutely positioned) where the dropdown would be offset by the
offset of the parent, so it would almost never line up. This fixes the
problem by removing the offset when the parent is not statically
positioned, which is what we used to do in older versions of Select2.

This closes https://github.com/select2/select2/issues/3303.
This closes https://github.com/select2/select2/issues/3614.
This closes https://github.com/select2/select2/issues/3672.
2015-11-27 17:58:08 -05:00
Kevin Brown
393ca4cf7f Fix selectOnBlur and closeOnSelect combination
This fixes an infinite loop that used to be caused when both
`closeOnSelect` and `selectOnClose` used to be combined, because they
both were listening to events triggered by the other one. The problem
was that `selectOnClose` was triggering `select` events for data objects
which had already been selected. This problem was solved by checking if
the data object was already selected before trying to select it again.

This closes https://github.com/select2/select2/pull/3751.
This closes https://github.com/select2/select2/issues/3169.
2015-11-27 17:32:54 -05:00
Kevin Brown
d504700c53 Recompile dist with newer dependencies 2015-11-27 16:07:10 -05:00
Kevin Brown
af97cc9996 Use NPM versions in builds
This changes the Grunt script to automatically pull the locations of the
NPM versions of the Almond loader and jQuery mousewheel plugin. This
means we no longer need to include these vendor files in our repository,
as the builds will automatically pull from the existing NPM files.
2015-11-27 16:07:08 -05:00
Kevin Brown
32b6eae54b Explicitly require jquery-mousewheel now
This fixes the implicit requirement of jquery-mousewheel that previously
existed. This was not allowed, as pointed out in
https://github.com/select2/select2/issues/3287#issuecomment-120408092

Now the requirement is more explicit, so everything should work as it
was before.
2015-11-27 16:07:07 -05:00
Kevin Brown
8edf3c6408 Add dependencies on Almond and jQuery Mousewheel
These are technically only required when building the final versions,
but if someone is pulling from NPM they may want to deal with building
it as well. Almond is used for loading in packages and jQuery Mousewheel
is used to prevent the results from scrolling the page.
2015-11-27 16:07:05 -05:00
Kevin Brown
5ca76fda61 Merge pull request #3782 from nopash/patch-1
Correct Typo in noResults
2015-11-27 15:42:51 -05:00
Kevin Brown
23743a785c Merge pull request #3933 from Decagon/patch-1
Fix #3932
2015-11-27 14:56:40 -05:00
Kevin Brown
3c8366e876 Fixed deep cloning options
In
f1e86470ca
we tried to fix the issue where multiple instances created in a single
call would share the same options, and this worked for the most common
cases. Unfortunately it did not work for the case where data attributes
were also used with an options object, and as a result data attributes
would be copied to all instances. Data attributes are supposed to be
specific to a single instance.

This was fixed by moving the `true` for the deep copy to the start of
the `$.extend` call, as this is where jQuery looks for the deep copy
flag.

This closes https://github.com/select2/select2/issues/3485
2015-11-23 18:55:31 -05:00
Kevin Brown
e2b745ea3e Recompiled dist 2015-11-23 18:44:35 -05:00
Kevin Brown
dc516e7073 Add container to templateResult
This closes https://github.com/select2/select2/issues/3222.
2015-11-23 18:40:50 -05:00
Jono Mingard
7e3d4fb697 Add tests for accessible search results 2015-11-23 18:35:36 -05:00
Jono Mingard
9fae3d74e3 Speak results on selection
This closes https://github.com/select2/select2/issues/3735
This closes https://github.com/select2/select2/pull/3821
2015-11-23 18:34:37 -05:00
Kevin Brown
e08222ef15 Tests for the inline search box
This adds tests for the following commits

5f80c5d9f8

395e06aff5
2015-11-23 18:25:09 -05:00
Kevin Brown
5f80c5d9f8 Resize search after removing a choice
This fixes a previous bug with the backspace handler on the multiple
select search box where unselecting a choice through the keyboard would
not properly size the search box. As a result, most of the text would be
cut off and it was very clear that there was an issue.

In addition, a blank space was automatically being added to the end of
the search query. This blank space would not be removed at all, so the
user had to manually remove it.

Additionally, a query would be triggered for the last used search term
instead of the new search term that would be loaded in. This caused
incorrect results to be displayed most of the time.

All of these issues have been fixed by triggering a new search query
after an option has been removed through the keyboard. This will resize
the search box automatically, which fixes the main issue, and it will
trigger a search with the correct query.

This closes https://github.com/select2/select2/issues/3297
This closes https://github.com/select2/select2/pull/3398
2015-11-23 18:22:33 -05:00
Kevin Brown
8763a87779 Merge pull request #3946 from manuel-alvarez-alvarez/master
Add the decorator parameter to the handlers for the attach and detach of the dropdown
2015-11-23 16:49:59 -05:00
Kevin Brown
f94b462b15 Merge pull request #3943 from limonte/sr-Cyrl
Add sr-Cyrl language.
2015-11-23 15:43:03 -05:00
Limon Monte
410916510d Add errorLoading error message to sr, sr-Latin and hr languages. 2015-11-20 11:39:35 +01:00
Limon Monte
1c8d1f8e0d Add sr-Cyrl language. 2015-11-20 11:38:13 +01:00
Manuel Alvarez Alvarez
a06a08a028 Fixed jshint errors due to too long lines on the attachBody adapter 2015-11-19 15:49:52 +01:00
Manuel Alvarez Alvarez
eae4d01158 Add the decorator parameter to the handlers for the attach and detach the dropdown (otherwise the container is undefined) 2015-11-19 15:39:28 +01:00
Decagon
6dbe2d9164 Fix #3932 2015-11-15 16:11:29 -04:00
Kevin Brown
7e2ade0965 Merge pull request #3926 from stahor/patch-1
Update component.json
2015-11-12 11:17:37 -05:00
stahor
7eaee2be9e Update component.json 2015-11-12 14:28:40 +03:00
Kevin Brown
87b182fe2a Update version identifiers to 4.0.1-rc.1 2015-11-09 20:23:20 -05:00
KahWee Teng
31a329eb6d Fix inline search in Safari
This closes https://github.com/select2/select2/issues/3459
This closes https://github.com/select2/select2/pull/3476
2015-11-09 19:28:58 -05:00
Quentin Pradet
878bb3ab07 Fix select2('') calls on multiple elements
This fixes an issue when any of Select2's special options are called on
multiple elements, it would only affect the first option in the group.
This was because Select2 was only applying any changes to the first
element in the group (as chosen by jQuery) instead of applying changes
on each and every element within the list.

This has the new side effect of special options like `select2('data')`
returning the results for the last element in the list instead of the
first element. Because the previous functionality was considered
unspecified behaviour, this is not being treated as a breaking change.

This closes https://github.com/select2/select2/issues/3413
This closes https://github.com/select2/select2/pull/3495
2015-11-09 19:03:22 -05:00
Kevin Brown
7c47912b73 Set all AJAX parameters as query string parameters
This will now pass all of the AJAX parameters into the AJAX request as
query string parameters, so now the page number (and other variables)
will be set automatically. This can still be overridden in `ajax.data`
to pass anything else, but this should make it easier for the most
common case.

This closes https://github.com/select2/select2/issues/3548
This closes https://github.com/select2/select2/pull/3552
2015-11-09 18:49:40 -05:00
Lars Holm Jensen
ef508db161 Corrected Danish translation for results errors
This closes https://github.com/select2/select2/pull/3870
2015-11-09 18:28:59 -05:00
Kevin Brown
d0ce218c0b Merge pull request #3544 from fk/3306-clear-button-appears-under-long-text
#3306: Position clear button before the inline content of `.select2-selection__rendered`
2015-11-09 18:15:12 -05:00
Kevin Brown
c53b2dcf11 Fixed incorrect classes on "Loading more results" message
This fixes an issue where the old `option` and `load-more` classes were
not switched over to the newer BEM style of class names. Unfortunately
this is a breaking change, but this is also a bug given that it doesn't
follow the proper prefixing and is likely to conflict with larger
applications.

https://github.com/select2/select2/issues/3889
2015-11-09 18:13:02 -05:00
Kevin Brown
6d91da7e63 Recompile dist 2015-11-09 18:03:35 -05:00
SilverFire - Dima Naumenko
3037b933e2 Correct reference for this in AJAX callbacks
Previously `this` would point to the AjaxAdapter that was being used to
process the AJAX, or sometimes the JS object holding the AJAX options,
instead of the jQuery element that Select2 was attached to. This fixes
the issue so `this` will consistently point to the jQuery element, just
like in past versions of Select2.

This closes https://github.com/select2/select2/issues/3361
This closes https://github.com/select2/select2/pull/3410
2015-11-09 18:00:39 -05:00
Kevin Brown
71cc891b83 Merge pull request #3859 from ahmadhussain/master
Added arabic language
2015-11-09 17:49:22 -05:00
Meir Cohen
7974fd1662 Corrected a few Hebrew translations
About  `errorLoading`:
Before the correction, the translation was: "התוצאות לא נטענו בהלכה".
The word "בהלכה" is wrong and should be spelled "כהלכה", but besides that, this translations means "The results were loaded improperly", while my corrected translation means "Error while loading results", which is what needed.

About `inputTooLong`, `inputTooShort`, `maximumSelected`:
In Hebrew, it's not acceptable to have the digit 1 for representing a single object. You should use the actual word "one", which is "אחד" in Hebrew together with the singular noun (e.g. "one item" / "one character", instead of "1 item" / "1 character").
**These 3 parts needed a critical fix anyway**, because they were addind the English letter 's' to the end of the Hebrew string.

About `loadingMore`:
The translation was "טען תוצאות נוספות" which means "Load more results", as an instruction, probably a typo.
I changed "טען" to "טוען" so now it means "loading more results", which is the correct form.

This closes https://github.com/select2/select2/pull/3911
2015-11-09 17:43:53 -05:00
Kevin Brown
ca0fd7c195 Properly disable input handlers in IE
Previously we were only disabling the `input` handler when it was
triggered, which caused a race condition within the `keyup` handlers
which also was triggered by the `input` event. This fixes the issue by
also unbinding the `input` handlers within the `keyup` handler, to avoid
running into the race condition.

Thanks to @Eckankar for pointing out the race condition that still
existed in
66ae2ad1d5

This closes https://github.com/select2/select2/issues/3300
2015-11-09 17:33:30 -05:00
Ahmad Hussain
09d825dd31 added arabic language 2015-10-22 12:01:26 +03:00
Kevin Brown
6be96cfaa1 Merge pull request #3851 from yallups/Terminating-script-undefined-args
Fixes an issue of args === undefined and script terminates
2015-10-20 14:54:24 -04:00
Shawn
f3a29b87e1 Fixes and issue where If args are not present script terminates 2015-10-19 15:34:44 -07:00
Nopachat Kalayanapan
9b020edd80 Correct Typo in noResults 2015-09-18 17:57:43 +07:00
Kevin Brown
8ad8f200ba Merge pull request #3780 from InWayOpenSource/master
Fix option name in documentation - fix #3470
2015-09-17 20:26:23 -04:00
Sebastian Podjasek
96fb1bf2d4 Fix option name 2015-09-17 23:36:18 +02:00
Kevin Brown
19861bfa38 Merge pull request #3724 from select2/docs-faq
Switch option page to FAQ in docs
2015-09-14 19:34:09 -04:00
Kevin Brown
8c26dff234 Merge pull request #3767 from select2/contributing-guide
Add developer information to the contributing guide
2015-09-14 19:31:51 -04:00
Kevin Brown
2b91ac0a20 Rename options-new to options 2015-09-14 19:30:32 -04:00
Kevin Brown
8ac5f1ddf2 Migrate old options to options-old 2015-09-14 19:24:46 -04:00
Kevin Brown
2ff5f6a24c Swap mailing list and IRC channel links
These sections were dropped from the README in
5c71e2da50
and replaced by the Community page on the Select2 website.
2015-09-14 19:15:19 -04:00
Kevin Brown
ff4b47bf74 Add section to contributing about patches 2015-09-14 19:11:25 -04:00
Kevin Brown
b819a495aa Added compatibility section
This is the same as the old documentation, it has not been transformed
into a FAQ yet.
2015-09-13 15:36:52 -04:00
Kevin Brown
84d1218751 Added note about incomplete documentation
This adds two notes, one pointing to the old documentation and the other
pointing to the community, for getting extra help if their question is
not answered.
2015-09-13 15:27:34 -04:00
Kevin Brown
bc82856fb6 Document data object format
So far this just documents how <select> elements have their options
converted to a data object.
2015-09-13 11:33:21 -04:00
Kevin Brown
46ab1ebc8d A bunch of questions are missing answers
These will be filled in at a later point in time, hopefully later today.
2015-09-13 11:32:41 -04:00
Kevin Brown
119df9b09f Add questions about the dropdown 2015-09-13 11:31:59 -04:00
Kevin Brown
e9b89b4ac1 Add template for questions without answers 2015-09-13 11:31:34 -04:00
Kevin Brown
e472cb31f0 Finish off the core option answers
These were mostly there before, it was just a matter of moving some of
the answers around.
2015-09-13 11:31:06 -04:00
Kevin Brown
4541d83c5d Updated side navigation
Now most of the links works, not including the ones for sections which
don't exist at the moment.
2015-09-13 11:30:26 -04:00
Kevin Brown
4b5743f22e Merge pull request #3757 from christophano/master
Use apply when calling methods
2015-09-10 08:34:38 -04:00
Chris Rodgers
441fbc2d73 Method called using apply to avoid translating multiple args into single arg. Fixes #3756 2015-09-10 12:05:25 +01:00
Kevin Brown
c502961149 Answers to some of the questions 2015-09-09 12:30:12 -04:00
Kevin Brown
a96ec9d91c Added section for events
Both public jQuery events and internal Select2 events will be
documented.
2015-08-31 21:14:59 -04:00
Kevin Brown
75abd407c8 Continue building out the FAQ
This adds more questions that will eventually get answers. Most of these
questions are already answered either in the current documentation or on
Stack Overflow, so it shouldn't be too difficult to fill out answers for
them.
2015-08-31 20:43:01 -04:00
Kevin Brown
41e4795578 Set up initial page with some questions
Right now this sets up the new FAQ/Options page with most of the
questions for the how to control the selection. Not all of these
questions have answers, most of them weren't moved over, but there are
plans to add detailed answers to all of them.

The questions were aggregated based on common Stack Overflow and IRC
questions, as well as commonly asked things on GitHub.
2015-08-29 19:51:52 -04:00
Kevin Brown
ea074af14c Merge pull request #3717 from P0rnflake/patch-1
Add select2.css to composer generated require.css
2015-08-29 16:23:11 -04:00
P0rnflake
e3920eae44 Add Stylesheet to composer generated require.css 2015-08-28 10:49:12 +02:00
Kevin Brown
eb47f638d3 Merge pull request #3698 from jbrown/patch-1
Fix typo
2015-08-25 11:35:09 -04:00
Kevin Brown
89858c418d Implement Dropdown.bind
This closes https://github.com/select2/select2/issues/3239
2015-08-21 20:51:42 -04:00
Kevin Brown
73e50ae92c Hide messages when loading results
This closes https://github.com/select2/select2/issues/3343
2015-08-21 20:49:01 -04:00
Kevin Brown
b69dd827d0 Recompile dist 2015-08-21 19:19:06 -04:00
Kevin Brown
a86c2e709f Add tests for 4958961 2015-08-21 19:17:00 -04:00
Kevin Brown
49589611ee Handle null being returned from createTag
The `createTag` option does allow for `null` to be returned if a
tag should not be created. The tokenizer previously didn't support
this, so the tokenizer should be able to handle this case. Previously
it would trigger an exception, because the tokenizer would pass back
a null value to the select function.

This also fixes what would have been a potential bug where even if a
tag was not created, the term would still have been sliced at the
location of the token. This allows for tokenizers to have special
cases when tokenizing the term, such as not splittting a token
if it is in the middle of a quoted string.

This closes https://github.com/select2/select2/issues/3593
This closes https://github.com/select2/select2/pull/3591
2015-08-21 19:12:13 -04:00
Kevin Brown
d9c1cbc976 Add tests for d08cb87 2015-08-21 18:32:10 -04:00
Stretch
d08cb874f9 Trigger the select event in the tokenizer
This closes https://github.com/select2/select2/issues/3325.
This closes https://github.com/select2/select2/pull/3453.
2015-08-21 18:30:35 -04:00
Kevin Brown
7166935958 Always pass in a blank object for arguments
This fixes an issue where preventing the default behaviour on some
events would trigger an exception. This was bacause the event relay
was expecting there to always be an object passed in for arguments,
and this wasn't always the case.

This closes https://github.com/select2/select2/issues/3431.
2015-08-21 17:43:50 -04:00
Kevin Brown
8722ae2c81 Compile dist 2015-08-21 14:52:01 -04:00
Kevin Brown
66ae2ad1d5 Fix input event in IE
This closes https://github.com/select2/select2/issues/3300
This closes https://github.com/select2/select2/pull/3677
2015-08-21 14:46:50 -04:00
Justin Brown
dac09005ad Fix typo 2015-08-20 13:15:57 -04:00
Kevin Brown
ab14751507 Merge pull request #3692 from Velocity-/patch-1
Fix improper grammar in Dutch i18n file
2015-08-20 11:01:41 -04:00
Bart Pelle
eee70fd9af Fix improper grammar in Dutch i18n file
Grammar is incorrect when maximum is 1, 'kunnen' should be 'kan' in that case.
2015-08-20 09:21:52 +02:00
Kevin Brown
1587708826 Merge pull request #3507 from RyanDale/issue-3503
Fixes #3503: Removes redundant 'open' event trigger
2015-08-19 22:44:30 -04:00
Kevin Brown
989bd02649 Rebuilt dist 2015-08-19 21:39:21 -04:00
Kevin Brown
ea538819c3 Merge pull request #3605 from molily/master
Multiple select, search field: Removes padding on mobile Safari.
2015-08-19 21:25:01 -04:00
Kevin Brown
68d068f1d2 Prevent selections from being removed when disabled
This prevents selections from being removed when the container is
disabled. This stops any click events that are triggered on the
remove button, so the remove handler won't be triggered at all.

This closes https://github.com/select2/select2/pull/3636.
2015-08-19 21:01:19 -04:00
Kevin Brown
7d8f86cbf8 Add tests for removing a selection when disabled
These tests should fail because a selection can be removed even
though the container is disabled. This is because the only thing
preventing selections from being removed was the CSS which hid the
remove buttons when the container was disabled.
2015-08-19 20:59:39 -04:00
Kevin Brown
671f5a2ce2 Fix memory leak in AttachBody
The `$dropdownContainer` variable wasn't being cleaned up when
Select2 was destroyed, which was causing a memory leak.

This closes https://github.com/select2/select2/issues/3559.
This closes https://github.com/select2/select2/pull/3603.
2015-08-19 20:07:51 -04:00
Kevin Brown
7bc9387de2 Merge pull request #3637 from wobbie/master
fix: modify announcement 4.0 doc Tags example
2015-08-19 20:02:37 -04:00
Kevin Brown
700f7908fc Merge pull request #3654 from wdietz/master
Fix IE 8-11 not showing Chinese characters
2015-08-19 10:26:10 -04:00
Kevin Brown
716e79b7d4 Lock Firefox builds to Linux
Right now Sauce Labs is not triggering builds for Firefox, and that
is causing the automated testing to fail. This might be because
there is no "latest" version logged for Firefox on Sauce Labs, but
it could also be becuase we aren't giving it a platform to look for.

This was also done for Opera as right now Sauce Labs is running
tests on Linux anyway.
2015-08-12 11:14:00 -04:00
Kevin Brown
5021356751 Update grunt-saucelabs version 2015-08-12 10:19:50 -04:00
Kevin Brown
47895b1e45 Merge pull request #3565 from rockshandy/issue-3564
use merged data instead of existingData for ArrayAdapter
2015-08-11 18:22:40 -04:00
Kevin Brown
81a670bd62 Merge pull request #3667 from nikolas/patch-1
Use new travis infrastructure
2015-08-10 13:50:14 -04:00
Nik Nyby
e8f4032724 Use new travis infrastructure 2015-08-10 11:15:40 -04:00
Kevin Brown
dd2990adea Skip focus test on IE 8
I can't reproduce this test failure on and IE 8 virtual machine, so
I'm just going to skip it on IE 8.
2015-08-09 21:00:48 -04:00
Kevin Brown
4a1290b4e9 Recompiled dist 2015-08-09 17:47:05 -04:00
Kevin Brown
8a26de7c60 Merge pull request #3665 from AnthonyDiSanti/master
Fixes typos in docs
2015-08-09 17:08:04 -04:00
Anthony DiSanti
4a5d753112 Fixes typos in docs
* Updates Disabled Mode docs
* Updates Disabled Results docs
2015-08-09 14:19:39 -04:00
Wayne Dietz
d37d6d6cac Fix issue in IE 8-11 that prevents typing characters that require multiple key presses to produce a single glyph. 2015-08-06 10:17:03 -05:00
Kevin Brown
512269fa40 Merge pull request #3643 from TrySound/npm-files
Add npm files filter
2015-08-04 09:27:47 -04:00
Bogdan Chadkin
acfeaaa015 Add npm files filter 2015-08-04 16:12:52 +03:00
wobbie
2932c5448b fix: modify announcement 4.0 doc Tags example 2015-08-03 11:48:26 +01:00
Kevin Brown
14832a8ca4 Merge pull request #3635 from od3n/master
Add Malay translation & Update Indonesian translation
2015-08-01 11:53:35 -04:00
Salahuddin Hairai
fd9ab0665d Updated Indonesian translation 2015-08-01 15:36:45 +08:00
Salahuddin Hairai
00e98e8afc Add Malay translation 2015-08-01 15:34:36 +08:00
Mathias Schaefer (molily)
a1bcd3a7ac Multiple select, search field: Removes padding on iOS. 2015-07-23 13:11:43 +02:00
Kevin Brown
041a3627b9 Merge pull request #3587 from michalzalewski/master
Polish translation: Fixed typo in maximum selected message
2015-07-18 10:38:38 -04:00
Michał Zalewski
74bb22939a Fixed typo in maximum selected message 2015-07-18 10:19:10 +02:00
Phil Eberhardt
af212fa530 added test for #3564 fix 2015-07-11 22:11:55 -04:00
Phil Eberhardt
f5593e12e4 use merged newData in case where an option already exists when using ArrayAdapter 2015-07-09 18:40:56 -04:00
Kevin Brown
3422460488 Merge pull request #3547 from mouse-lin/master
fix: modify announcement 4.0 doc Option params
2015-07-02 10:08:58 -04:00
mouseshi
eab609185a fix: modify announcement 4.0 doc Option params 2015-07-02 16:27:59 +08:00
Florian Kissling
80630c42ec Render .select2-selection__clear before the inline content of .select2-selection__rendered.
As suggested by @njakobsen in https://github.com/select2/select2/issues/3306#issuecomment-109372777, this uses `position: relative` to alter the stacking level of `.select2-selection__clear`.
See http://www.w3.org/TR/CSS2/zindex.html#painting-order and https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Understanding_z_index/Stacking_without_z-index.

Styles are added to the default Sass for `.select2-selection--single`.
Does not include the recompiled distribution CSS.

References https://github.com/select2/select2/issues/3306.
Tested in Google Chrome v43.0.2357.130 only.
2015-07-02 03:00:21 +02:00
Kevin Brown
bd46b7eaac Recompiled dist 2015-06-21 21:47:26 -04:00
Kevin Brown
88503d2c67 Add test for 698fe7b
This adds the test that ensures that the search focus is still
focused, even after the selection is updated (for whatever reason).
Note that we are not triggering the `change` event here, and are
instead just re-calling `update` on the selection adapter. This is
because we do not bind the `change` event in tests, so the selection
is never re-rendered and the tests will pass. The `update` method
is triggered during the `change` cycle anyway, so this has the
same effect while supporting cases where the selection is re-rendered
without the selected values changing.
2015-06-21 21:42:06 -04:00
Stretch
698fe7b9e1 Focus is lost when the change event is triggered
This closes https://github.com/select2/select2/issues/3332.
2015-06-21 21:40:50 -04:00
Ryan Dale
d2346cc331 Change ALT + UP to close the dropdown instead of opening it
This closes https://github.com/select2/select2/issues/3471.
2015-06-21 20:47:05 -04:00
Kevin Brown
bfaa9e9b41 Recompile dist 2015-06-21 20:31:09 -04:00
Kevin Brown
79cdcc0956 Fix focus wars in multiple selects
In the previous commit (02cca7b) support was added for multiple
selects to automatically focus when they were tabbed into. While
this did actually work, it caused a few bugs with the focus that
prevented users from tabbing out of the container, effectively
trapping keyboard users in Select2.

This makes a few major changes to how things work in Select2, but
should not break any backwards compatibility.

 - The internal `focus` event is now proxied through a `focus`
   method on the core object. This allows for two important things

   1. The `focus` event will only be triggered if Select2 was in an
      unfocused state.
   2. Select2 now (unofficially) supports the `select2('focus')`
      method again.

   But that does mean that it is possible to trigger the `focus`
   event now and not have it propagate throughout the widget. As
   it would previously trigger multiple times, even when Select2
   had not actually lost focus, this is considered a fix to a bug
   instead of a breaking change.

 - The internal `blur` event in selections is only triggered when
   the focus is moved off of all elements within the selection. This
   allows for better tracking of where the focus is within Select2,
   but as a result of the asynchronous approach it does mean that the
   `blur` event is not necessarily synchronous and may be more
   difficult to trace.

 - On multiple selects, the standard selection container is never
   visually focused. Instead, the focus is always shifted over to
   the search box when it is requested. The tab index of the selection
   container is also always copied to the search box, so the search
   will always be in the tab order instead of the selection container.

It's important to note that these changes to the tab order and how
the focus is shifted do not apply to multiple selects that do not
have a search box. Those changes also do not apply to single select
boxes, which will still have the same focus and tabbing behaviours
as they previously did.
2015-06-21 20:07:35 -04:00
Ryan Dale
c5a54ed706 Fixes #3503: Removes redundant 'open' event trigger 2015-06-21 16:30:20 -04:00
Ryan Wallace
02cca7baa7 Allow immediate typing when tabbing to multiple select. 2015-06-21 14:16:31 -04:00
Kevin Brown
19c87d3bae Merge pull request #3502 from itainathaniel/patch-1
Fixed direction bug in RTL mode of the text input
2015-06-20 20:06:51 -04:00
Itai Nathaniel
4811ff2c59 Fixed direction bug in RTL mode of the text input 2015-06-19 18:09:25 +03:00
Kevin Brown
6a08076c18 Merge pull request #3492 from pquentin/master
Replace tabs with spaces for consistency
2015-06-18 16:39:11 -04:00
Quentin Pradet
5efdc35aeb Replace tabs with spaces for consistency 2015-06-18 10:19:56 +02:00
Florian Kissling
117f11da21 Merge pull request #3488 from fk/docs-fix-sidebar-layout
docs: Fix sidebar layout and its jumpy link hover/active states
2015-06-17 16:37:44 +02:00
Florian Kissling
38f02e9c0f Merge pull request #3467 from fk/docs-update-anchorjs
docs: Update AnchorJS from v0.3.1 to 1.1.1.
2015-06-17 16:37:18 +02:00
Florian Kissling
82a7e27984 Fix the sidebar layout and its jumpy link hover/active states. 2015-06-17 16:27:10 +02:00
Kevin Brown
60a87728b0 Merge pull request #3477 from wiraqutra/master
Add Japanese translation
2015-06-15 07:59:19 -04:00
Seigo ISHINO
2dcc9ef18b Add Japanese translation 2015-06-15 14:30:08 +09:00
Kevin Brown
6b0ff9f5bd Merge pull request #3473 from kahwee/master
Upgraded dev dependency grunt-sass to "^1.0.0".
2015-06-12 18:59:38 -04:00
KahWee Teng
eecbcceb9b Upgraded dev dependency grunt-sass to "^1.0.0".
Remove explicit node-sass dependency since it is included as part of grunt-sass.
2015-06-12 23:53:47 +08:00
Kevin Brown
d7e137f8a8 Merge pull request #3464 from molily/issues/3446
ContainerCss: Remove magic `:all:` correctly. Fixes #3446.
2015-06-11 09:44:22 -04:00
Mathias Schaefer (molily)
d130bd4fa7 DropdownCSS: Remove magic :all: correctly. 2015-06-11 12:09:02 +02:00
Florian Kissling
ebecea1f98 Update AnchorJS from v0.3.1 to 1.1.1. 2015-06-11 03:45:31 +02:00
Kevin Brown
04a4e41504 Merge pull request #3324 from stretch4x4/MultiSelectStyling
Adding container support issue #3222
2015-06-10 20:09:28 -04:00
Kevin Brown
599de5bdaf Merge pull request #3454 from stretch4x4/3326-MaximumSelection-documentation
#3326 Maximum selection example
2015-06-10 19:56:04 -04:00
Mathias Schaefer (molily)
62b2391972 ContainerCss: Remove magic :all: correctly. Fixes #3446. 2015-06-10 23:15:43 +02:00
Stretch
e60ab22a85 Adding single select support and testing 2015-06-10 20:05:07 +10:00
Stretch
d91dfecd98 #3326 Maximum selection example
Fixing the documentation for maximumselectionlength
2015-06-10 18:59:09 +10:00
Kevin Brown
44cd938dce Merge pull request #3376 from select2/docs-improvements
New documentation theme
2015-06-07 20:47:59 -04:00
Florian Kissling
42739b780e Merge branch 'master' into docs-improvements
Conflicts:
	docs/examples.html

In the docs-improvements branch, the docs examples live in partials located in docs/_includes/examples.
The updated AJAX example code from https://github.com/select2/select2/pull/3357 – the conflicting addition to docs/examples.html – has been ported to the appropiate partial in docs/_includes/examples.data.html.
2015-06-08 02:27:33 +02:00
Florian Kissling
691dfe5340 Tidy and simplify CSS; add very basic documentation. 2015-06-08 01:46:53 +02:00
Florian Kissling
14e1c4d5f9 JavaScript indention. 2015-06-07 17:05:17 +02:00
Florian Kissling
44c64cf6da Replace "..." with an ellipsis, fix a typo. 2015-06-07 16:42:20 +02:00
Florian Kissling
2b8865b3b3 Indention, whitespace. 2015-06-07 16:40:00 +02:00
Florian Kissling
2c627b4875 Fix layout. 2015-06-07 01:03:37 +02:00
Florian Kissling
ab3d5ee884 Ditch Sass' indented syntax. 2015-06-07 00:46:05 +02:00
Florian Kissling
419242fc16 Nesting, whitespace. 2015-06-06 15:32:11 +02:00
Kevin Brown
b4a44ccfdf Adjusted the home page text
This adds the final box, which I've chosen to be for the browser
support (though that can be changed).

The last two boxes on the first row have also been swapped, partially
because the text sizes now match the second row, but also because
the AJAX support should be more prominent than the theme support.
2015-05-31 16:15:55 -04:00
Kevin Brown
038c709c8b Adjusted some wording 2015-05-31 15:11:01 -04:00
Kevin Brown
21bac6a6d8 Updated front page features
This adds correct links to the linked text on the front page under
the features section. There is still one panel which needs to be
written, the last one that includes the AJAX text again, before it
can really be considered finished.

The wording around the Bootstrap theme was adjusted pending further
discussion about how that is going to be handled.
2015-05-31 14:53:39 -04:00
Kevin Brown
bd6148e39f Merge pull request #3350 from cvrebert/patch-1
bower.json: main: select2.css => core.scss
2015-05-24 20:17:20 -04:00
Kevin Brown
fdb2b6aaf2 Merge pull request #3375 from vyrotek/patch-1
Fixed AjaxAdapter's super constructor call
2015-05-19 19:52:46 -04:00
Jason
da5a72c3ac Fixed AjaxAdapter's super constructor call
Replaced ArrayAdapter super constructor call with correct AjaxAdapter super constructor call. This will allow users to initialize an Ajax select with data.
2015-05-19 16:10:16 -07:00
Kevin Brown
dd9af68934 Merge pull request #3357 from pgilad/patch-1
Update ajax example to reflect pagination
2015-05-13 10:42:21 -04:00
Gilad Peleg
45cfac7456 Update ajax example to reflect pagination 2015-05-13 17:34:38 +03:00
Chris Rebert
b0a1192716 bower.json: main: select2.css => core.scss
Per bower/bower.json-spec#43 :
> Use source files with module exports and imports over pre-built distribution files.

Also, the example in that PR includes
/sass/motion.scss in and excludes
/dist/movement.css & /dist/movement.min.css
from its `main`.
2015-05-12 22:14:39 -07:00
Florian Kissling
87f5425464 Drop "_s2-docs-" prefix from Sass partials. 2015-05-08 04:14:41 +02:00
Florian Kissling
14c6113eef Fix indention. 2015-05-08 04:08:31 +02:00
Florian Kissling
922d54615f Fix indention, consistently declare anchor-nav relevant IDs for <h1> (instead of <section>). 2015-05-08 03:41:52 +02:00
Florian Kissling
dc679f7cbd Add a "feature overview" section to the homepage.
While I'm not too happy with things as they currently are, it's a start.
This also removes the icon from the "Download" button.
2015-05-08 03:29:16 +02:00
Florian Kissling
a2ff7a6046 Move button-specific CSS to partial. 2015-05-08 03:21:42 +02:00
Florian Kissling
bc3ce2c5b4 Navigation CSS improvements. 2015-05-08 02:47:20 +02:00
Stretch
581af39288 #3222 test cleanup
Improving my test from feedback.
2015-05-08 08:03:46 +10:00
Florian Kissling
fa421cdfc0 Fix footer border color. 2015-05-07 18:57:06 +02:00
Florian Kissling
83e0f6b034 Add link to contributors to footer. 2015-05-07 15:36:09 +02:00
Florian Kissling
9c8ddd16b8 Move select.js-source-states to partial. 2015-05-07 14:31:58 +02:00
Stretch
13cead0bd0 Adding container support #3222
Fixes issue #3222
Now templateSelection can have access to the parent container so that
classes can be added for styling
2015-05-07 21:59:51 +10:00
Florian Kissling
a0db9efdef Fix version number in footer. 2015-05-07 02:04:43 +02:00
Florian Kissling
5fd72d2052 Set "width" to "100%" as default for all Select2s on the "Examples" page. 2015-05-06 09:28:48 +02:00
Florian Kissling
cc0d662fe6 Fix ID. 2015-05-06 09:22:04 +02:00
Florian Kissling
96abf64472 Rename section "Other data sources" to "Data sources".
Also adds an introductional paragraph to the section.
2015-05-06 03:36:29 +02:00
Florian Kissling
20b64cfe15 Group single and multiple select box examples under "The basics". 2015-05-06 03:20:44 +02:00
Florian Kissling
ea70cbc24c Remove p.lead. 2015-05-06 03:05:27 +02:00
Florian Kissling
45d8486dbb Remove p.lead from .jumbotrons. 2015-05-06 03:04:48 +02:00
Florian Kissling
635b8b2f68 Use https to include ghbtns.com iframes. 2015-05-06 02:57:29 +02:00
Florian Kissling
60bcff089f FIx filename. 2015-05-06 02:51:18 +02:00
Florian Kissling
60710af6ed Add GitHub fork and star buttons to footer.
Directly borrowed from the Bootstrap docs again.
2015-05-06 02:51:10 +02:00
Florian Kissling
dfc8eecdcb Add "type" to stylesheet link tag. 2015-05-06 02:47:53 +02:00
Florian Kissling
f822cd904b Convert "Options" page contents to partials. 2015-05-06 01:47:44 +02:00
Florian Kissling
b74a0ae6e0 Move all examples to partials. 2015-05-06 01:19:05 +02:00
Florian Kissling
f54993050e This h1 should be an h2. 2015-05-04 04:28:28 +02:00
Florian Kissling
a728044fa9 More grouping on the "Examples" page.
* "Loading array data" and "Loading remote data" now go together under "Other data sources",
* "Events" and "Programmatic access" under "Programmatic control",
* "Theme support", "Responsive design" and "Templating" under "Themes, templating and responsive design"
2015-05-04 03:04:09 +02:00
Florian Kissling
cd13697695 Merge branch 'master' into docs-improvements 2015-05-03 22:20:18 +02:00
Kevin Brown
ac1680d81d Merge pull request #3290 from Sopamo/master
Improving Foundation Zurb compatibility
2015-05-03 10:45:29 -04:00
Kevin Brown
d166717f5c Merge pull request #3307 from fk/master
Update Sass vertical gradient mixin to latest version from Bootstrap Sass
2015-05-02 20:50:36 -04:00
Florian Kissling
73fb9a1367 Fix indention to match Select2's (and Bootstrap Sass') style. 2015-05-02 22:40:44 +02:00
Florian Kissling
a9beac83c3 Update Sass vertical gradient mixin to latest version from Bootstrap.
As described in https://github.com/select2/select2/issues/3304#issuecomment-98395238, this updates the mixin to the latest stable version from Bootstrap Sass which adds Sass' http://sass-lang.com/documentation/Sass/Script/Functions.html#ie_hex_str-instance_method to ensure that colors are converted "into the format understood by IE filters".
2015-05-02 22:38:18 +02:00
Florian Kissling
ba61678358 Group diacritics, RTL and l10n examples.
Just an example – very unsure what goes with what.
2015-05-02 20:53:51 +02:00
Florian Kissling
bf7d273f89 Add sidebar anchor navigation to the "Examples" page. 2015-05-02 14:10:31 +02:00
Florian Kissling
3ed07a6fda Stop anchorjs from suffixing its links for "Placeholders" and "Templating" headlines.
Cosmetic changes for the homepage 3.x docs notice.
2015-05-01 04:30:52 +02:00
Florian Kissling
54d2b347b0 Merge remote-tracking branch 'upstream/master' into docs-improvements 2015-05-01 03:49:23 +02:00
Kevin Brown
197384342b Merge pull request #3301 from fk/master
Add `!important` to `.select2-hidden-accessible`.
2015-04-30 14:03:11 -04:00
Florian Kissling
31830c7b32 Add !important to .select2-hidden-accessible.
`.select2-hidden-accessible` is the CSS class that is added to the original `<select>` element (that Select2 is initialized on) to hide it.
In cases where the original `<select>` has other style declarations assigned which conflict with those of `.select2-hidden-accessible`, the latter styles may be overridden, possibly resulting in the original `<select>` element not being properly hidden.

Similar to what https://github.com/select2/select2/pull/1549 did for Select2 v3's CSS, this adds the `!important` rule to all style declarations for `.select2-hidden-accessible` to make it exponentially harder to override them.
2015-04-30 19:09:18 +02:00
Florian Kissling
365ec579b7 Typography. 2015-04-30 00:59:06 +02:00
Florian Kissling
fb40644c42 Add <code> tags. 2015-04-28 04:01:33 +02:00
Florian Kissling
445c48236d Merge branch 'master' into docs-improvements
Conflicts:
	docs/announcements-4.0.html
	docs/index.html
2015-04-28 03:11:24 +02:00
Florian Kissling
b34e5b3925 Tidy. 2015-04-28 02:57:58 +02:00
Florian Kissling
9d85d7fb41 Move 3.x docs notice to partial. 2015-04-28 02:50:05 +02:00
Florian Kissling
082dda4830 Improve headline. 2015-04-28 02:49:27 +02:00
Florian Kissling
4b34dc7063 Calmer "Example Code" headlines. 2015-04-28 02:42:18 +02:00
Florian Kissling
c57a6fea90 Change "Loading remote data" formatRepo() markup.
Now fits the styles in docs/_sass/_s2-result-repository.
2015-04-28 02:41:52 +02:00
Florian Kissling
4ab6567f1d Calmer "Version". 2015-04-28 02:40:04 +02:00
Florian Kissling
58eadd5718 Fix border colors. 2015-04-28 02:36:57 +02:00
Florian Kissling
f061ada2e1 Simplify. 2015-04-28 02:08:53 +02:00
Florian Kissling
f033428742 Center text. 2015-04-28 02:08:20 +02:00
Florian Kissling
d430ff998e Add logo to .navbar-brand. 2015-04-28 02:08:06 +02:00
Florian Kissling
8ddd29ff41 Add paragraphs. 2015-04-28 02:07:23 +02:00
Florian Kissling
f26cc14874 Whitespace. 2015-04-28 02:00:22 +02:00
Florian Kissling
2cd6e864f7 Include new Sass partials. 2015-04-28 01:52:55 +02:00
Florian Kissling
eb3f4c180b Move vendor/prettify.css to _sass/_prettify.scss. 2015-04-28 01:52:35 +02:00
Florian Kissling
041c7ee8ec wrap "initSelection" in <code>. 2015-04-28 01:47:25 +02:00
Florian Kissling
eef50c9b94 Add .s2-docs-home to "home" layout, add partial for homepage CSS. 2015-04-28 01:43:31 +02:00
Florian Kissling
e0e79dbc4e Make "Topics" menu item .active when "announcements-4.0" is the current page. 2015-04-28 01:36:23 +02:00
Florian Kissling
49b7c312e0 gitignore .sass-cache. 2015-04-28 01:35:14 +02:00
Florian Kissling
80dbd692db Don't show line numbers for one line code examples. 2015-04-28 01:17:01 +02:00
Florian Kissling
33b637dbf9 Ditch wrong .lead copy. 2015-04-28 01:16:18 +02:00
Florian Kissling
f73dc290fd Move most of the default CSS to partials/Sass. 2015-04-28 01:15:49 +02:00
Kevin Brown
b1a6d357f9 Merge pull request #3291 from aitor/patch-1
Swap inputTooLong and inputTooShort error messages
2015-04-27 15:06:54 -04:00
Aitor García Rey
42075c6233 Swap inputTooLong and inputTooShort error messages
"Engada"  in galician is "to add" and therefore should be the base text used for the inputTooShort method, asking the use to add more chars. It seems to be mistakenly defined exactly the opposite it should be (as inputTooLong was containing the right text).
2015-04-27 17:20:03 +00:00
Paul Mohr
d4b1247640 Improved Zurb Foundation compatibility
The input fields have a slight box shadow which we want to remove here.
2015-04-27 16:40:41 +02:00
Paul Mohr
6a551dfe74 Improved Zurb Foundation compatibility
The input fields have a slight box shadow which we want to remove here.
2015-04-27 16:38:43 +02:00
Florian Kissling
a2b31e2240 Add animation to the "hamburger icon".
Courtesy of Julien Melissas, ref. http://codepen.io/JulienMelissas/pen/LEBGLj
2015-04-27 09:35:29 +02:00
Florian Kissling
7b62c7d444 Remove icon. 2015-04-27 09:31:42 +02:00
Florian Kissling
25a69716ac Add sidebar anchor navigation. 2015-04-27 09:31:28 +02:00
Kevin Brown
80eb44bec7 Bump version numbers for 4.0.0 release 2015-04-26 17:02:52 -04:00
nath
e416e47356 Added back dropdownAutoWidth option
This adds back the `dropdownAutoWidth` option, so the dropdown can
have a width that is automatically determined by the browser. This
works best for smaller dropdowns that contain options with large
amounts of text.

This closes https://github.com/select2/select2/issues/3103.
This closes https://github.com/select2/select2/pull/3113.

Signed-off-by: Kevin Brown <kevin@kevin-brown.com>
2015-04-26 16:55:22 -04:00
Kevin Brown
86bf6dc272 Removed pre-release note
This removes the pre-release note from the 4.0.0 announcement and
also adds an example for the `matcher` option.
2015-04-26 16:27:22 -04:00
Florian Kissling
b68a7b38a0 Remove explicit "Home" link. 2015-04-25 04:35:55 +02:00
Florian Kissling
25ba1ef1f3 Prettify <pre> on homepage. 2015-04-25 04:34:15 +02:00
Florian Kissling
8a1a35aa15 Make "Download" button stand out a little more. 2015-04-24 03:41:08 +02:00
Florian Kissling
d813feaa7b Simplify homepage .jumbotron. 2015-04-24 03:38:00 +02:00
Florian Kissling
0474e69e6e Add .s2-docs-container to enable anchor.js. 2015-04-24 03:37:20 +02:00
Florian Kissling
15f9922437 Add .navbar-default. 2015-04-24 03:36:45 +02:00
Florian Kissling
481a2f89c9 Add ID. 2015-04-24 03:17:34 +02:00
Florian Kissling
69d8ac4485 Whitespace. 2015-04-24 03:10:54 +02:00
Florian Kissling
96cb7f56ae Move Google Analytics script to include. 2015-04-24 03:09:41 +02:00
Florian Kissling
d98cbcec21 Add a fixed sidebar with anchor navigation to the sidebar.
Borrowed from the Bootstrap doc implementation.
2015-04-24 03:02:56 +02:00
Florian Kissling
f8ecee7783 Add .jumbotron with headline and dummy .lead. 2015-04-24 02:56:28 +02:00
Florian Kissling
5a44b40ee6 Move .lead into .jumbotron. 2015-04-24 02:55:57 +02:00
Florian Kissling
a0b7afbf2f Add .jumbotron to #pre-release. 2015-04-24 02:55:26 +02:00
Kevin Brown
c80b4b0989 Merge pull request #3277 from ognistyi/ru_translation
added RU translation for errorLoading
2015-04-22 13:25:24 -04:00
Andrew Ognistyi
d6886fe6dd added translation for errorLoading 2015-04-22 19:32:45 +03:00
Florian Kissling
80899d973f A first shot at improving the .jumbotron styles. 2015-04-22 18:08:11 +02:00
Florian Kissling
8b344f18b7 Don't override Bootstraps default body font-size. 2015-04-22 18:06:42 +02:00
Florian Kissling
439e834b38 Group buttons for "Programmatic access" and "Disabled mode" demos.
This also gets rid of the colored buttons in favor of `.btn-default`, prevents wrapping of the "Destroy" button of the first button group of the "Programmatic access" demos to a second line and consistently places buttons below the Select2 widgets they apply to.

Ref. http://getbootstrap.com/components/#btn-groups.
2015-04-22 18:05:59 +02:00
Florian Kissling
102cadf02b Switch to the regular (white) Bootstrap navbar. 2015-04-22 17:42:40 +02:00
Florian Kissling
7bf7ab16c7 Separate "Release notes" from the "4.0 Announcement".
While the latter is part of the docs, the "Release notes" are linked to the GitHub "Releases" section; thus the added divider.
2015-04-22 17:42:11 +02:00
Florian Kissling
49c03ba6cf Remove code example text shadow. 2015-04-22 17:38:47 +02:00
Florian Kissling
ae80d23421 Remove the "About" section on the homepage.
With the additional footer navigation in place, it should be safe to remove these.
2015-04-09 21:19:22 +02:00
Florian Kissling
92052cb600 Expand footer navigation mimicking the Bootstrap docs footer.
Adds

 * version information
 * links to the GitHub repository, issues and releases
 * links to the examples and options
 * a link to the 3.5.2 docs

to the footer as well as namespaced styles for the footer in general as well as all the above.
2015-04-09 21:00:52 +02:00
Florian Kissling
df2122c00f Add anchor.js for pages using the default layout.
* adds styles for anchor.js (similar to the official Bootstrap docs)
 * currently results some of the generated links to have a suffix (e. g. examples.html#templating-1) added due to sections having the same ID as the headline copy that we want to link to
2015-04-09 20:27:45 +02:00
Kevin Brown
f3f1b31958 Add back *css* options through an adapter
The old functionality where classes were directly copied to the
container can be done by setting `dropdownCssClass: ':all:'` when
initializing Select2.

This closes https://github.com/select2/select2/issues/2879.
2015-04-05 21:58:02 -04:00
Kevin Brown
4fc874a3ae Improve jQuery performance issues
This improves a regression added in b9b55cec44
that reduced performance for large number of options when using a
jQuery collection object to append multiple options instead of
using a bare array containing the jQuery elements.

As `$.fn.add` is only required for jQuery 1.7.x, we can use a
utility function that only falls back to it for that specific
version of jQuery, and uses `$.fn.append` with an array for all
other versions.

This closes https://github.com/select2/select2/issues/3230.
2015-04-05 20:08:33 -04:00
penihel
c24293f2ba Render native select out of screen
This closes https://github.com/select2/select2/issues/3065.

Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2015-04-02 12:01:32 -04:00
Kevin Brown
a993ed9ca9 Warn when Select2 is called without being initalized
Since Select2 methods should not be called on an element where
Select2 has not yet been initialized, this raises an error when it
happens.  This does not silence the original error, but it does
provide the user with some more context about why they are seeing
a TypeError.

This closes https://github.com/select2/select2/issues/3173.
2015-04-02 11:41:18 -04:00
Kevin Brown
878de20d44 Fix typo in documentation
This closes https://github.com/select2/select2/issues/3213.
2015-04-02 11:29:44 -04:00
Kevin Brown
e7498987a5 Fix abort with JSONP
We now check that the `abort` method actually exists before aborting
the request, as JSONP does not include the `abort` method because
a JSONP request technically cannot be aborted.

This closes https://github.com/select2/select2/issues/3217.
2015-04-02 11:26:23 -04:00
Kevin Brown
a8e6cbc0c9 Add back keyboard support within allowClear
This adds back keyboard support, so you can now clear a selected
item using either the backspace or delete key.  This only work when
the container is closed, to prevent issues with the selection being
clear while a user is searching.

This was a regression in accessibility from 3.x.

This closes https://github.com/select2/select2/issues/3224.
2015-04-02 11:21:10 -04:00
Kevin Brown
00a78bdb1e Allow for a partial dictionary in language
This closes https://github.com/select2/select2/issues/3202.
2015-04-02 10:52:31 -04:00
Kevin Brown
01160f29d8 Allow chaining of .select2()
`.select2("open")`, `.select2("close")`, and `.select2("destroy")`
can now be safely chained.

This closes https://github.com/select2/select2/issues/3221.
2015-04-02 10:34:30 -04:00
jongwoo Yoo
da1ec4e028 fix error: "Uncaught ReferenceError: require is not defined"
Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2015-04-02 10:29:22 -04:00
Kevin Brown
cc1eefb78f Merge pull request #3188 from Brankub/master
Fixes #3169 issue with selectOnClose errors
2015-03-25 10:31:48 -04:00
Brankub
010cf29902 switched back to this instead of self 2015-03-25 10:07:55 +02:00
Brankub
2b9c8b00a7 remove evt 2015-03-24 15:14:32 +02:00
Brankub
e10f3b7dae fixes #3169 2015-03-24 14:44:23 +02:00
Kevin Brown
9318980651 Merge pull request #3178 from tylerpearson/master
Fix misspelling
2015-03-20 09:16:35 -04:00
Tyler Pearson
c0dadf44a1 Fix misspelling 2015-03-19 20:58:57 -07:00
Kevin Brown
54154c3df6 Selected property of the element, not object
Slight revision to the changes made in
9d359c9b38.
2015-03-18 11:55:47 -04:00
Kevin Brown
0c573df402 Prevent IE from going back on backspace
This closes https://github.com/select2/select2/issues/3168.
2015-03-18 11:53:40 -04:00
Kevin Brown
14279a012b Handle special characters in object ids
Slight performance hit as we are no longer using `qurySelectorAll`,
but it handles the situation a bit more cleanly and prevent future
issues with special characters.

This closes https://github.com/select2/select2/issues/3157.
2015-03-18 10:56:10 -04:00
Kevin Brown
1f62eb67e8 Fix TypeError
This closes https://github.com/select2/select2/issues/3160.
2015-03-18 10:48:47 -04:00
Kevin Brown
9d359c9b38 Update the selected property on objects
This fixes the results display so they prefer the `selected`
property on objects over checking if the `id` matches the value of
the underlying select.

We only ignore the `selected` property if it is null, at that point
we compare against the `id` property.

This closes https://github.com/select2/select2/issues/3163.
2015-03-18 10:41:04 -04:00
Kevin Brown
a6999990b0 Fixed Hebrew translation
This should have been in he.js in the first place.
2015-03-18 09:44:04 -04:00
Kevin Brown
607fdf4b4c Merge pull request #3170 from yonihbc/patch-1
he.js
2015-03-18 09:15:31 -04:00
yonihbc
faed59cd42 he.js 2015-03-18 13:39:36 +02:00
Kevin Brown
69e2d73c42 Bump version numbers for rc.2 2015-03-14 20:51:32 -04:00
Kevin Brown
a06379ce8d Normalize ids to string for remote data
This also fixes an issue where we were using the `full_name` for
the value instead of the `id` in the example, which technically
wasn't correct.

This closes https://github.com/select2/select2/issues/3148.
2015-03-14 20:36:06 -04:00
Kevin Brown
5a25c33fc5 Don't do a null check for tags
This closes https://github.com/select2/select2/issues/3155.
2015-03-14 20:11:38 -04:00
Kevin Brown
e5d97e0de0 Fixed the emphasis in the release announcement 2015-03-14 20:06:26 -04:00
Kevin Brown
d146313256 More about initSelection
In the past, `initSelection` was used for loading in data objects
for the pre-selected options. Now that Select2 is using a `<select>`
element, there is no need for doing this because the `<option>`
elements should provide the relevant information. So you can now
just pull this information from the remote data source
(or static array, in some cases) and build out the `<option>`
elements manually.

In most cases you don't need to go the full length with a custom
data adapter, but instead are just looking to pre-load elements on
the initial page load.

This improves https://github.com/select2/select2/issues/3116.
2015-03-14 19:58:50 -04:00
Kevin Brown
aa8978e551 Rip out the old AMD docs 2015-03-14 19:49:47 -04:00
Kevin Brown
fc43f00b59 Only use aria-owns when the dropdown is open
This fixes part of https://github.com/select2/select2/issues/3144.
2015-03-14 19:39:28 -04:00
Kevin Brown
7e4e8bc9d6 Relative paths for require
Now we can use relative paths in the calls to `require`, so those
using relative builds don't have to worry about modules not being
imported properly. This also makes it considerably easier in the
future when we look to cut down the build sizes and have a custom
builder, as we don't have to worry as much about the paths being
incorrect.

This fixes https://github.com/select2/select2/issues/3014 finally.
2015-03-14 19:22:34 -04:00
Kevin Brown
d1e8a6fdad Overhaul of the AMD integration
Now we do not have separate AMD builds, instead we use a UMD wrapper
to support both AMD and CommonJS environments along with the browser.
This has been tested with RequireJS and it correctly imports Select2
and hooks into jQuery.

This means that all builds will include the Almond AMD loader, but
this isn't that much of an issue when you consider the file sizes.
The loader is namespaced so RequireJS and other AMD builders don't
complain about `require` and `define` existing. This is also done
so AMD loaders don't conflict, as Select2's AMD loader should
operate independently of others.

There are now two layers of wrappers that are applied to files,
only one of which is used for the translation files. This allows
us to only load in the internal Select2 modules once, and in
general makes most things cleaner. These have also been pulled out
into individual JS files instead of being stored in JSON files,
allowing us to add comments and make things look readable.

Because we use a few hacks, these files are heavily commented as well.

This closes https://github.com/select2/select2/issues/2945.
This closes https://github.com/select2/select2/issues/2946.
2015-03-14 19:05:24 -04:00
Kevin Brown
e8fd5a0352 Fix select2('data') again
This finally fixes and adds some integration tests to make sure
that `select2('data')` works as we are expecting. This also adds
tests for `select2('val')` and fixes undefined variable issues
that were spotted because of these tests.

We also no longer date stamp distribution builds.

This closes https://github.com/select2/select2/issues/3104.
2015-03-14 15:23:29 -04:00
Kevin Brown
7a1791d5f3 Merge pull request #3147 from justanotheranonymoususer/patch-1
Fixed a link in README.md
2015-03-13 10:35:33 -04:00
Kevin Brown
7d19b97aa0 Merge pull request #3145 from qcaron/master
Updated 15 of the translation files so 'maximumSelected' is used instead of 'maximumSelection'
2015-03-13 10:33:50 -04:00
justanotheranonymoususer
5acd96ee1e Update README.md 2015-03-13 12:35:19 +02:00
Quentin Caron
a3e8cd8f9b Updated 15 of the translation files so 'maximumSelected' is used instead of 'maximumSelection' 2015-03-12 22:11:36 +01:00
Kevin Brown
e3d7cd2d69 Fixed allowClear on fixed width
This moves the clear icon to the top of the DOM from the bottom to
ensure that it is always visible on top of the selection.

This closes https://github.com/select2/select2/issues/3089.
2015-03-11 21:28:06 -04:00
Kevin Brown
78c301f4fb Added debug option
Now most of the warning messages will only be displayed if the
`debug` option is set when initializing Select2.

This closes https://github.com/select2/select2/issues/3100.
2015-03-11 20:41:10 -04:00
Kevin Brown
7feb90f256 Modified banner for translations
We don't need to update the dates on these every time that grunt
is called. This gives it a much more basic banner that is similar
to the minified version.
2015-03-11 20:40:08 -04:00
Kevin Brown
6c0dd6684b Add an actual banner to the JS file
This adds an actual banner that contains the version number and a
link to the license to the top of the files.

This closes https://github.com/select2/select2/issues/3118.
2015-03-11 20:26:48 -04:00
Kevin Brown
55d3c636cc Skip the nested data test on unsupposed browsers
The nested data attributes are only supported on jQuery 2.x or
browsers which support the `dataset` attributes on DOM elements.
In order to prevent test failures, and because tests cannot yet
be skipped conditionally, we just cut the test early.
2015-03-11 19:46:48 -04:00
Kevin Brown
992652bbd2 Expand IE testing
Now that our tests are using jQuery 1.7.2 we can run our tests on
IE8 automatically.
2015-03-11 19:26:30 -04:00
Kevin Brown
b9b55cec44 Tests use jQuery 1.7.2
As jQuery 1.7.2 is the lowest version of jQuery supported by Select2,
it makes sense to run the tests on it. For the most part, we can
assume that the newer versions of Select2 are backwards compatible
enough such that this isn't an issue.

The recommended version of jQuery to use is the latest though, which
is why the jQuery file is only included in the tests.

This revealed a few issues with our data fallbacks and `.append`
functionality that was introduced in jQuery 1.8.
2015-03-11 19:20:41 -04:00
Kevin Brown
4fb079b34f Combine tests into a single file
This combines all of the tests into a single HTML file. This reduces
the number of Sauce Labs sessions and should improve test times.
2015-03-11 18:51:55 -04:00
Kevin Brown
30974e2422 Only test Opera 12 once
Looks like Sauce Labs is not going to have tests running on later
versions of Opera, probably because it switched to Chromium/Blink.
Removing it from the builds so we reduce the time it takes.
2015-03-11 18:30:38 -04:00
Kevin Brown
610381be4a Strip whitespace by default for tags
This strips whitespace in tags by default, so multiple tags cannot
be created with only whitespace as the difference in the id.

A test has been added to ensure that this remains fixed in the future.

This closes https://github.com/select2/select2/issues/3076.
2015-03-11 18:23:10 -04:00
Kevin Brown
95be140760 Fixed select2('data')
This fixes an issue with `select2('data')` that caused it to not
work as intended. Because we were using `Select2.data` for the
data adapter, it was overriding the `Select2.data()` method which
was supposed to be used.

This just renames the `Select2.data` property to
`Select2.dataAdapter` to prevent the naming collision.

This closes https://github.com/select2/select2/issues/3104.
2015-03-11 18:16:21 -04:00
Kevin Brown
0da15aa586 Fixed option text encoding
This fixes an issue when using a `<select>` where the elements were
created with XHTML-encoded characters to prevent any injection, as
they would be double-encoded and display incorrectly.

When using a `<select>`, we can assume that the data has already
been encoded because any XSS will have already run before we get to
it.  Because of this, we can just use `.text()` instead of `.html()`
to avoid any issues.

This also includes a test to ensure that this does not become an
issue in the future.

This closes https://github.com/select2/select2/issues/3115.
2015-03-11 18:12:14 -04:00
Kevin Brown
b917754e55 Merge pull request #3122 from cristi-badila/master
Fixes issues with inputData module. When unselecting an item it would previously unselect all items
2015-03-10 13:21:09 -04:00
Cristi Badila
24f3c4777d Fixes issues with inputData module. When unselecting an item it would previously unselect all items 2015-03-10 19:16:17 +02:00
Kevin Brown
fff04c3f0c Merge pull request #3099 from yoonsy/master
added Korean translation.
2015-03-06 20:01:09 -05:00
Kevin Brown
2df4f5385c Merge pull request #3117 from krautcomputing/fix_typo
fix typos (lanugage -> language)
2015-03-06 20:00:40 -05:00
Kevin Brown
9006e88047 Merge pull request #3111 from ahmadazimi/master
Add Farsi (Persian) language support.
2015-03-06 19:57:57 -05:00
Manuel Meurer
43480954a4 fix typos (lanugage -> language) 2015-03-06 22:18:09 +01:00
Ahmad Azimi
36431d5718 move ignores to user-level .gitignore file 2015-03-05 23:59:32 +03:30
Ahmad Azimi
be9168bc5a Remove unneeded 's' for plural forms 2015-03-05 22:05:15 +03:30
Ahmad Azimi
a6b5b40eb5 Add Farsi (Persian) language support.
Editor config folder and .DS_Stroe files added to .gitignore
2015-03-05 21:56:12 +03:30
yoonsy
45c815da50 remove unneeded 's' for plural and fix comment. 2015-03-03 22:32:22 +09:00
yoonsy
c1bc88eccd added Korean translation. 2015-03-03 22:20:22 +09:00
Kevin Brown
d3c887286d Update CDN version numbers 2015-03-01 22:09:37 -05:00
Kevin Brown
9d6752e3ea Bumping version numbers for rc.1 release 2015-03-01 21:30:37 -05:00
Kevin Brown
94875679f8 Automatically open search when typing
This fixes an issue where the dropdown would not automatically
open when something was typed in the search box on a multiple
select.  This was most noticeable when the dropdown closed and
the search box was focused and the user started to type, as the
text would appear in the search box, queries would be sent out to
retrieve results, but the dropdown would not be opened to display
the results.

This also fixes an issue introduced in a recent commit where search
queries would be sent out twice on modern browsers that supported
both the `keyup` and `input` event.  The `keyup` event is now
properly debounced for these browsers and the queries are only
going out once.

This closes https://github.com/select2/select2/issues/3036.
2015-03-01 21:01:11 -05:00
Kevin Brown
017c201094 More intuitive handling of the enter key
Previously, when in results the enter key would select items that
were highlighted if they were not already selected.  In the case of
a select where multiple items could be selected, pressing enter
when highlighting a selected item would also allow it to be
unselected.  While this seems intuitive for accessibility purposes,
the enter button essentially working as a toggle, it caused some
really strange behavior.

- If the enter button was held down, all previously selected items
  would be unselected.
- The enter button did not work the same across both single and
  multiple selects.

After listening to user feedback, I have decided to remove the
"enter as toggle" functionality from Select2 and have gone back to
just having the enter button select items.  This means that instead
of unselected items that are already selected and highlighted,
Select2 will just close the dropdown.  This is the same as what
Select2 would previously do for single selects, so the keyboard
functionality is now the same across both.

Because this removed the only easy way to unselect items in the
dropdown using the keyboard, we had to maintain the toggle
functionality.  We decided to implement the toggle functionality
on the CTRL + Space keybinding, which is in line with other
applications.  Now when pressing CTRL + Space at the same time in
the dropdown, the highlighted result will behave the same as if the
mouse selected it, which will toggle the current item in multiple
select mode and close the dropdown in single select mode.

This is the same keybinding that Windows Explorer [1] and GTK [2]
use for toggling the current selection, which was why it was picked.

This also fixes an issue where keyboard focus would be lost once an
item was unselected from the results.  This was due to a bug in the
CloseOnSelect module that would only automatically close the
dropdown when an item was selected, but not when an item was
unselected.  Now the dropdown will be closed automatically when an
item is unselected, which will also cause the selection (and
eventually the search) to be focused.

This fixes two issues described in
https://github.com/select2/select2/issues/3036#issuecomment-76321411.

[1]: http://superuser.com/q/78891/72528
[2]: https://developer.gnome.org/gtk3/stable/GtkIconView.html#GtkIconView-toggle-cursor-item
2015-03-01 20:30:43 -05:00
Kevin Brown
c0839b4f93 Fix searching in Firefox for Android
This fixes an issue where most keys would not trigger the search
in Firefox for Android.  There were only a few keys which would
trigger `keyup`, such as space and enter (the search icon), but
they were not consistent.  We know that they were being triggered
though, as you could type "new " (note the space) and it would
trigger a search, giving us all states that started with "new".

The problem is that Firefox for Android does not consistently
trigger `keyup` and `keydown` events when a keyboard is used.  To
work around the issue, we are now using the `input` event in
replacement of the `keyup` event, which was used to trigger the
search.  While this is not an actual `KeyboardEvent` in Chrome, and
lacks some of the important metadata such as `which`/`key` in
Firefox, it works for our implementation.

As the `input` event is not supported in older browsers, such as
those before Internet Explorer 9, we have to listen for both the
old `keyup` event and the new `input` event.  As the `input` event
is always triggered before the `keyup` event, we unbind the `keyup`
event automatically to prevent searches from being triggered twice.
This solution was discovered in a blog post by Mathias Bynens at
https://mathiasbynens.be/notes/oninput.

**Note:** The ability to backspace in a blank text field on multiple
selects in order to remove the last selected item does not work in
Firefox for Android because the `keydown` event does not trigger
when the text field is empty.  Users can still use the "x" icon
provided at the start of every selected option to achieve the same
effect.

This closes https://github.com/select2/select2/issues/2997.
2015-03-01 19:41:27 -05:00
Kevin Brown
61916b2cfb Build latest commits 2015-03-01 19:03:30 -05:00
Kevin Brown
4eaa8c5488 Merge pull request #3074 from loic/title_when_multiple
Fixed the title attribute for choices on "multiple" widgets.
2015-02-27 20:41:04 -05:00
Kevin Brown
5c9dc0e509 Added example for hiding search
This also fixes a possible issue where the `< 0` fallback would
not be used because the `minimumResultsForSearch` check would
always return false and never load in the module.

This closes https://github.com/select2/select2/pull/3077.
2015-02-27 20:37:48 -05:00
Kevin Brown
55f995ea21 Fixed data-ajax-url fallback
This fixes the fallback path for the `data-ajax-url` attribute on
elements.  As this attribute was previously supported in Select2,
the attribute has been migrated to the new, nested format of the
url and triggers a deprecation warning when it is used.  Because
of a fix to the `data-*` attribute parsing made in a9f6d64 that
allowed for nested attributes to be parsed correctly in modern
browsers under jQuery 1.x, the deprecation warning would be
triggered but the attribute would no longer actually be used.

This also fixes some of the `.data` calls to use the camel cased
version of the key instead of the dashed version, which is the
preferred key and will be enforced in future versions of jQuery
as the only way to access data attributes.

Now in situations where the `dataset` attribute is used by Select2,
it combines the results of both `$e.data()` and `e.dataset` when
generating the object containing all of the options.  This will
the `dataset` fix to still be used, while also still relying on
jQuery to do additional parsing on any options that it can.

The `dataset` fix is now only used on jQuery 1.x, as that is the
only version of jQuery affected by the dash issue.  This is done
using version number parsing on the `$.fn.jquery` property that is
defined by jQuery.  As this property is not defined in Zepto and
many other jQuery compatible checks, we only include the fallback
if the property is available.  This assumes that any jQuery
compatible libraries that are in use will not include the same dash
issue, which we believe is a safe assumption given that it did not
match the HTML `dataset` specification.

This also adds a few tests to ensure that the deprecated attributes
still continue to function.

This closes https://github.com/select2/select2/issues/3086.
2015-02-27 20:11:13 -05:00
Kevin Brown
3630385cf7 Merge pull request #3051 from select2/issue_3022
Added compatibility with `<input type="text" />` tags
2015-02-27 18:47:13 -05:00
Kevin Brown
5ec852e18c Added documentation for <input type="text" />
This adds basic documentation explaining that there are compatibility
decorators for `<input type="text" />` support. This is not fully
compatible with all features and requires the use of an external
adapter like the `ArrayAdapter` or `AjaxAdapter` to provide a
reasonable way to query results.

This also triggers a warning if the adapter is used with a hidden
input, as the degraded functionality when there is no JavaScript
support should be discouraged.
2015-02-27 18:38:16 -05:00
Kevin Brown
e9bfa72966 Added tests for the <input /> element 2015-02-27 18:37:06 -05:00
Kevin Brown
956ac46dab Added compatibility with <input /> tags
This adds backwards compatibility back into Select2 for `<input />`
tags.  The compatibility modules are only available in the full
version and will trigger a warning if a hidden input is being used.

With the new decorator, Select2 should support the basic operations
that it previously did, with the exception of completely overriding
the internal objects. As we no longer expose `data` as a writable
method, it is no longer possible to completely override the selected
data. The state is still managed internally, but in order to prevent
data corruption issues in the past, it is not exposed to the public.

Some small changes needed to be made to how Select2 was dynamically
generating new `<option>` tags, so now a method is called that can
be overridden. In the case of the new decorator, this method is
intercepted and handled without having to actually place the
`<option>` tags into the DOM.

The decorator is applied after all of the other defaults, as the
defaults are not given the current element.

There has only been limited testing with this decorator, primarily
using the `data` and `placeholder` options.

This closes https://github.com/select2/select2/issues/3022.
2015-02-27 18:36:34 -05:00
Loic Bistuer
170ca5f57b Fixed the title attribute for choices on "multiple" widgets. 2015-02-26 11:22:05 +07:00
Kevin Brown
a954bae228 Compile Swedish translations 2015-02-24 19:36:44 -05:00
Kevin Brown
5b95c0e834 Clarified the documentation README [ci skip]
The documentation README was previously intended to be read from
the documentation repository, not from the source repository.
This had the potential to give off the impression that documentation
pull requests were not allowed, when exactly the opposite is the
case.  The README has been improved to make it more clear how to
contribute pull requests to update the documentation.

Thanks to Brent Connor [1] for pointing out this issue over at
Stack Overflow [2].

[1]: https://stackoverflow.com/users/3954106/brent-connor
[2]: http://stackoverflow.com/q/28705192/359284
2015-02-24 17:27:16 -05:00
Kevin Brown
9ad1ed8b43 Merge pull request #3067 from stozze/i18n_sv
Swedish i18n
2015-02-24 17:26:57 -05:00
Stozze
1b707960de Swedish i18n 2015-02-24 23:38:21 +02:00
Kevin Brown
a9f6d64b72 Added .dataset fallback for jQuery 1.x
As we have established already, jQuery 1.x does not correctly handle
`data-*` attributes where there are multiple dashes.  This makes it
so we can still handle nested options when working with jQuery 1.x
by using the `.dataset` option that is supported by all major
browsers as well as IE 11+.

Browser support tables for the `.dataset` attributes can be found at
http://caniuse.com/dataset

A notice was already added to the documentation about this in
caeb0ec9b7.

The related ticket in the jQuery repository about this issue is
https://github.com/jquery/jquery/issues/2070.

This closes https://github.com/select2/select2/issues/2969.
2015-02-24 14:42:27 -05:00
Kevin Brown
dc2f6d451a Fix example code for the old matcher 2015-02-24 14:18:07 -05:00
Kevin Brown
f367185a8a Merge pull request #3056 from harshadsabne/select2-ng
Create hi.js
2015-02-24 09:02:23 -05:00
Harshad Sabne
e88440cab3 Create hi.js
Added i18n for Hindi language.
2015-02-20 12:02:25 +05:30
Kevin Brown
e6f249f66d Fixed Array.indexOf in i18n/uk.js 2015-02-17 12:47:48 -05:00
th3byrdm4n
07c4db1de2 replaced usages of [].indexOf with $.inArray()
X-Browser Compatibility (and performance) reasons.

Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2015-02-17 12:41:36 -05:00
th3byrdm4n
e75cd78c51 word-wrap: nowrap styling
Added `word-wrap: nowrap` to places it wasn’t explicit.

Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2015-02-17 12:41:25 -05:00
Kevin Brown
2988cc2bee Pull requests are marked as 'false', not missing 2015-02-14 19:08:23 -05:00
Kevin Brown
e8a12133f8 Don't run Sauce Labs tests on pull requests
Due to security restrictions within Travis CI, we cannot use secure
environment variables in pull requests.  This means that the tests
cannot be run in the Sauce Labs environment.

http://docs.travis-ci.com/user/pull-requests/#Security-Restrictions-when-testing-Pull-Requests
2015-02-14 19:05:05 -05:00
Kevin Brown
4271b10531 Add docs for three more options
This adds documentation for the follow options

- `minimumInputLength`
- `maximumInputLength`
- `minimumResultsForSearch`

This closes https://github.com/select2/select2/issues/3035.
2015-02-14 16:53:17 -05:00
Flávio
86c23c0f5c Create pt.js
European Portuguese Translation
2015-02-14 12:16:18 -05:00
Kevin Brown
8572299a2e Added IE 10 and Opera testing
We are special casing Opera 12 as well as the latest Opera version
because Opera 12 was the last release because Opera switched to the
Webkit rendering engine.
2015-02-14 00:42:59 -05:00
Kevin Brown
3d013020ae Improved focus detection and key handling
Now the focus of the selection container is correctly monitored so
there is a consistent 1px black border on the default theme whenever
it is focused.  This requires `focusin`/`focusout` support, which is
supported by all major browsers except for Firefox.  In Firefox, the
old focus appearance is still consistent and has not been broken
by this update.

The key handling has also been improved such that some of the logic
detection that was previously done within the search handlers for
multiple select searches is now pushed back to the base selection.

This closes https://github.com/select2/select2/issues/2995.
2015-02-14 00:37:51 -05:00
Kevin Brown
b382fdca9c Clone the tabindex from the original select
Previously Select2 would assume that the tab index for the
`<select>` was `0`, which is the browser default.  Now Select2 will
clone the tab index from the original element, and correctly restore
it when it is destroyed or disabled/enabled.

This closes https://github.com/select2/select2/issues/3031.
2015-02-13 23:57:18 -05:00
Kevin Brown
ef5c88a6f6 Add box-sizing to another area
This closes https://github.com/select2/select2/issues/3029.
2015-02-13 23:37:29 -05:00
Kevin Brown
72e5c2a50d Combine tests into common files
This groups tests into common HTML files so they can be run more
quickly. This also reduces the number of Sauce Labs instances that
have to be run, as one instance was previously spun up for each
file.
2015-02-13 23:29:56 -05:00
Kevin Brown
a2a99e64ba Merge pull request #3012 from burnb/select2-ng
fix - add event listener for opera 12
2015-02-13 22:58:41 -05:00
Kevin Brown
081580bcd8 Fix undefined variables
There were a few undefined variables being referenced within the
Select2 code.  The JSHint configuration has been modified to fail
if there are undefined variables being referenced, including any
global variables.

There is an exception that is being made for the jQuery shim, as it
must try to find the global jQuery references.

An exception is made for the test helpers, as the SauceLabs reporting
variables are not camelCase, and would normally trigger warnings.

This closes https://github.com/select2/select2/pull/3028.
2015-02-13 22:49:54 -05:00
Kevin Brown
e383cb573c Build zh-CN 2015-02-13 22:25:45 -05:00
Kevin Brown
08014add7c Fixed local server not starting for Travis 2015-02-13 22:22:14 -05:00
Kevin Brown
a0c26e1114 Hook up with SauceLabs
This sets up Select2 to be able to run tests on the SauceLabs
environment. This will allow us to run the tests on different
browsers in the future, though at the moment we need to start
combining test files.

This required adding a snippet of code for reporting QUnit test
results to SauceLabs within the global test helper file.

The tests currently cannot be run on IE 8 because all of the tests
are using jQuery 2.x, which is not compatible.
2015-02-13 21:59:09 -05:00
Kevin Brown
d51570e1fe Merge pull request #3041 from minddust/fix-typos
Fix typos
2015-02-13 09:21:16 -05:00
Kevin Brown
05f5a1b4b5 Merge pull request #3042 from fantasticfears/patch-1
Create zh-CN.js
2015-02-13 09:18:23 -05:00
Erick Guan
c3c5f360fc Create zh-CN.js 2015-02-13 19:56:40 +08:00
Stephan Groß
a5532ee8a8 Fix typos 2015-02-13 11:36:21 +01:00
Kevin Brown
c2326209c2 Copy option title to results and selection
This copies the `title` attribute of `<option>` and `<optgroup>`
tags to the `title` attribute of the options within the results
list and the selection when it is rendered.

For single selections, the `text` property on the data objects will
be used if the `title` attribute is not present, which will allow
for long names to still be viewable if they overflow the selection
container.

This also fixes a potential issue in browsers that did not support
the non-standard `innerText` property on DOM nodes.  As the
`textContent` property is the standard, and it is supported on
IE 9+, we try to set that before falling back to `innerText`.

This closes https://github.com/select2/select2/issues/2530.
This closes https://github.com/select2/select2/pull/2889.
2015-02-09 20:55:35 -05:00
Kevin Brown
61a231d868 Added back select2("data")
In the past, `select2("data")` allowed you to retrieve the currently
selected data objects.  Read-only support has been added back for
this, which maps to the `current` method of the data adapter.  This
will only work for data adapters which allow for the synchronous
retrieval of the current data, which is the case for all of the
default data adapters.

You could also previously overwrite the currently selected data
objects by passing in an argument to `select2("data")`.  As this
dealt directly with the internals, and required a considerable
amount of work to synchronize it, it has been removed.  A warning
will now be triggered if the method is called with additional
elements, and the `val` method should be used instead.

This closes https://github.com/select2/select2/issues/2938.
2015-02-09 20:27:43 -05:00
Kevin Brown
8f8140e3b0 Added modules for stopping event propagation
This adds `StopPropagation` modules that will stop the propagation
of the most common events from the selection and dropdown containers.
These modules work from a list of 21 common events, most of which
were stopped by default in past versions, and call `stopPropagation`
on them when they are detected at the container level.

These modules are only available in full builds of Select2.

This closes https://github.com/select2/select2/issues/2033.
This closes https://github.com/select2/select2/issues/2974.
2015-02-09 20:04:01 -05:00
Kevin Brown
9d4ec4f85b Add templating documentation
This adds documentation for the `templateResult` and
`templateSelection` options.  The fact that placeholders and
custom messages are templated was noted, although most people
should be using the standard `text` property that they provide
anyway.  This fixes the templating link provided in the release
announcement to link to the correct location in the documentation.

This also adds support for the `templateSelection` function to
return a DocumentFragment or jQuery compatible object to be
passed back and rendered.

This closes https://github.com/select2/select2/issues/3005.
This closes https://github.com/select2/select2/issues/3019.
2015-02-09 19:27:10 -05:00
Kevin Brown
c9a8508a39 Add back closeOnSelect option
The `closeOnSelect` option was previously used to control whether
or not the dropdown was closed when an option was selected.  This
could be simulated by triggering the `open` event after the `close`
event was received, but it makes sense to abstract it out into a
decorator.

This also adds support for not closing the dropdown when the control
key is being held.  This is useful when multiple options need to be
selected in quick succession, so the dropdown does not have to be
reopened.

This also adds documentation that covers both changes.

This closes https://github.com/select2/select2/pull/2735.
This closes https://github.com/select2/select2/issues/3017.
2015-02-09 18:54:19 -05:00
Kevin Brown
caeb0ec9b7 Add jQuery 1.x data attribute note
This adds a note about how nested data attributes do not work in
jQuery 1.x due to a bug with the `$.fn.data` method.

This is for https://github.com/select2/select2/issues/2969.
2015-02-09 17:43:16 -05:00
Kevin Brown
8aca7a4085 Added templating example
This also fixes the case where `templateResult` does not return a
string, where it will fall back to jQuery to set the value of the
option.  This allows for the `templateResult` function to return a
jQuery or DOM element that contains the templated data.

Just like with the translation methods, only strings returned from
`templateResult` will be escaped.

The old flag icons have been transferred from the old repository to
the documentation, for use in the templates.  Unfortunately I cannot
find a license for them, but I suspect a license isn't actually
needed considering the state flags are public.

This closes https://github.com/select2/select2/issues/3005.
This closes https://github.com/select2/select2/issues/818.
2015-02-09 17:35:40 -05:00
Kevin Brown
473267404a Fix CSS text wrapping for single selects
Select2 previously had an issue displaying the text of long values
as it was not correctly wrapping the text.  This was because the
browser did not know that it couldn't wrap at whitespace, which
has been fixed.

Now Select2 should properly display an ellipsis for large text
values instead of overflowing.

This closes https://github.com/select2/select2/issues/2984.
2015-02-09 15:58:16 -05:00
Kevin Brown
0c0e2527fa Autofocus search field in multiple select
In a single select, the search field is automatically focused when
the select is opened. This also applied to multiple selects, but
this was causing issues because the container was automatically
focused when the dropdown was closed.

This makes a change such that the search field is automatically
focused when the dropdown is closed.

This closes https://github.com/select2/select2/issues/2995.
2015-02-09 15:43:46 -05:00
Kevin Brown
4dda5e7a74 Hide the search clear icon in webkit
The search box previously displayed a clear icon on the far right
side in webkit-based browsers, specifically Chrome and Safari. This
hides the clear icon in those browsers, and also fixes a slight
sizing issue, so it should no longer be displayed.

This also disables autocorrect, autocompleted, as well as a few
other automatic search corrections on the field, so mobile devices
should have a better experience.

This closes https://github.com/select2/select2/issues/3018.
2015-02-09 15:29:28 -05:00
Kevin Brown
b1c016584b Merge pull request #3024 from th3byrdm4n/select2-ng
IE7/8 Compatability fixes
2015-02-08 13:32:46 -05:00
th3byrdm4n
5a825e0cb3 IE7/8 Compatability fixes
[].indexOf() isn’t supported in old IE. Utilizing jQuery’s $.inArray()
allows for Select2 to work in IE compatibility mode.
2015-02-08 07:29:52 -10:00
Kevin Brown
a08179f481 Merge pull request #3021 from jordigg/select2-ng
Added Catalan language
2015-02-07 13:50:14 -05:00
Jordi Garcia
dfbac71c39 Updated language name on comments 2015-02-07 19:07:21 +01:00
Jordi Garcia
0b9fdded01 Added Catalan language 2015-02-07 18:54:02 +01:00
Kevin Brown
bcc43139fd Merge pull request #3006 from WouterSioen/patch-1
Add rel=stylesheet to the cdn link.

Closes https://github.com/select2/select2/issues/3020.
2015-02-07 12:51:43 -05:00
burnb
e3b5f39695 fix long line for ci check 2015-02-07 19:33:48 +04:00
burnb
557f655c86 remove event listener on destroy 2015-02-07 19:16:34 +04:00
Kevin Brown
7155adc718 Split out formatRepo and formatRepoSelection
This splits out the two templating functions that are referenced in
the documentation. The two functions were previously available in
the source code, but they were not named with the method names that
the documentation referred to.

This closes https://github.com/select2/select2/issues/2993.
2015-02-06 20:08:28 -05:00
Kevin Brown
1349579192 Respect -1 with minimumResultsForSearch
In past versions of Select2, supplying a value less than zero to
`minimumResultsForSearch` acted the same as providing a high value,
such as `Infinity`.  This corrects the regression by mapping anything
less than zero to the value `Infinity`.

This closes https://github.com/select2/select2/issues/2994.
2015-02-06 19:54:36 -05:00
Kevin Brown
0f7a37b2d6 Pass through non-strings in escapeMarkup
It is assumed that DOM elements or related objects will have been
escaped before they are passed back from templating functions. As
strings are typically blinding concatenated, like in our defaults,
it makes sense to escape the markup within them.

This is related to https://github.com/select2/select2/issues/3005.
2015-02-06 19:45:10 -05:00
Kevin Brown
631ae06c8d Fix broken Placeholder.js links
It appears as though GitHub has stopped serving the Placeholder.js
GitHub Pages site.  This broke placeholder support on older versions
of IE in the documentation and broke the link we had to the
polyfill.  Since the repository is still online, and the
documentation should work without an internet connection, the
JavaScript files have been pulled into the documentation folder.
2015-02-06 19:34:48 -05:00
Kevin Brown
1766e31447 Handle translations like template options
Translations will now be passed through `escapeMarkup` and injected
into the results messages as HTML just like the templating options
for the the results and selections.  This fixes the regression from
3.x where the old formatters always supported HTML.

This closes https://github.com/select2/select2/issues/3008.
2015-02-06 19:29:18 -05:00
Kevin Brown
78b6faf13e Check that allowClear is used with placeholder
The `allowClear` option may not work as intended if a placeholder
is not used. This is becaise the placeholder holds the value that
the `<select>` should be reset to when the `x` is hit.

An error is now properly raised in the console when Select2 detects
that the `allowClear` option is used without the `placeholder`
option.

This closes https://github.com/select2/select2/issues/3016.
2015-02-06 19:20:18 -05:00
Kevin Brown
7a8500f198 Merge pull request #3010 from yanickrochon/select2-ng
Fixing errors in FR locale. Added missing pl/pt-BR locales in dist.
2015-02-06 09:44:18 -05:00
Aleksandr Petrov
307ee39bc2 fix - add event listener for opera 12 2015-02-06 16:41:12 +04:00
Yanick Rochon
75aa419d0a Fixing errors in FR locale. Added missing pl/pt-BR locales in dist. 2015-02-06 03:49:06 -05:00
Wouter Sioen
fabbb734e4 Add rel=stylesheet to the cdn link
Without specifying the rel="stylesheet" in your link tag, some browsers don't interpret the file as css.
2015-02-05 17:34:54 +01:00
Kevin Brown
470bc9ff64 Merge pull request #3002 from teohhanhui/patch-1
Fix typo in docs/options.html
2015-02-05 08:05:37 -05:00
Teoh Han Hui
34000de9f8 Fix typo in docs/options.html 2015-02-05 17:50:26 +08:00
Kevin Brown
1a7bb5fb54 Merge pull request #3000 from lenon/fix-maxlength
Fix for MaximumInputLength
2015-02-04 10:04:12 -05:00
Kevin Brown
e93330271d Merge pull request #2999 from lenon/select2-ng
Add Brazilian Portuguese translation.
2015-02-04 10:03:30 -05:00
Lenon Marcel
f157245511 Fix for MaximumInputLength.
I18n translations expect a "maximum" argument for inputTooLong message,
but MaximumInputLength is passing "minimum". This renames "minimum" to
"maximum" to fix this problem.
2015-02-04 06:46:14 -02:00
Lenon Marcel
862f4b5113 Add Brazilian Portuguese translation. 2015-02-04 05:16:42 -02:00
Kevin Brown
4c563a3d06 Add back ajax.transport support
This adds back the `ajax.transport` option, which allows anyone to
use their own AJAX backend. By default, `jQuery.ajax` is used as the
default transport backend.

**Breaking change:** Instead of taking `params` that contains a
`success` and `error` keys for the callback, two new callback
parameters are passed alongside of `params` that should be called
when the request succeeds or fails.

This closes https://github.com/select2/select2/issues/2987.
2015-01-29 09:15:02 -05:00
Kevin Brown
5a0f7f5518 Added back escapeMarkup
This is needed to escape any bad markup that is passed through
user-entered data. Users can prevent their markup from being
escaped by using a no-op `escapeMarkup` function.

This closes https://github.com/select2/select2/issues/2990.
2015-01-29 09:15:02 -05:00
Kevin Brown
01461813d8 Fixed missing jQuery import
Now we are using `jQuery.noConflict()` in tests, so it should be
slightly easier to detect when this happens next time. Tests just
need to be written for the component.

This closes https://github.com/select2/select2/issues/2985.
2015-01-29 09:15:02 -05:00
Kevin Brown
36cfc26cc1 Merge pull request #2982 from adrianpietka/select2-ng
Added polish translation
2015-01-28 12:43:43 -05:00
Adrian Piętka
a6b5c7df49 Break long lines 2015-01-28 11:06:03 +01:00
Adrian Piętka
2f4737cc86 Added polish translation 2015-01-28 10:50:34 +01:00
Kevin Brown
a4448d3d00 Preparing for the 4.0.0-beta.3 release 2015-01-27 20:11:38 -05:00
Kevin Brown
15c827b60f Added documentation for matcher
This adds documentation for the revised `matcher` function, as well
as the compatibility `oldMatcher` function for those who are
upgrading.

This closes https://github.com/select2/select2/issues/2971.
2015-01-27 19:36:54 -05:00
Kevin Brown
695123a1d2 Remove jQuery from the bower and component files
Users are expected to be using jQuery in their web applications
already, it's up to them to determine how it is loaded in.

This closes https://github.com/select2/select2/issues/2941.
2015-01-27 18:31:52 -05:00
Kevin Brown
003d6053a9 Prevent scrolling in scrollable containers
This prevents scrolling within scrollable containers (excluding the
dropdown) when the dropdown is open. This fixes an issue where the
dropdown would go out of sync with the parent container when the
parent container was scrolled.

We did not have this issue in past versions of Select2 because the
mask prevented any scrolling. Now that we have removed the mask, we
have to deal with scrolling from different areas of the page.

We initially tried to hook into the `scroll` events of the parent
containers, but because of a list of issues we decided against it.
If the container scrolled out of view, the dropdown would still be
left open and above everything else, even though the container
wasn't visually connected to it.

The `scroll` event does not bubble, so we need to attach the `scroll`
handler to every parent element that is scrollable. Since it is
surprisingly difficult to determine if an element is scrollable,
we modified some CC-BY-SA code and use that to determine if the
element has a scrollbar. The original `hasScroll` function can be
found at http://codereview.stackexchange.com/q/13338, the same link
left within the code, and was originally designed to be a sizzle
selector. As Select2 does not require a sizzle-compatible version of
jQuery, we converted it into a function that could be used with
`.filter` to filter down the elements.

This closes https://github.com/select2/select2/issues/2975.
2015-01-27 16:06:27 -05:00
Kevin Brown
000653498f Fix z-index for modals
Select2 did not previously have a high enough `z-index` for it to
be displayed over modals. The `z-index` has been raised to 1051,
so now it should appear over the jQuery UI and Bootstrap modals.

This closes https://github.com/select2/select2/issues/2958.
2015-01-27 14:27:18 -05:00
Kevin Brown
65ff76c543 Fix dropdown search sizing
When Select2 is not used with a design that universally sets
`box-sizing: border-box` to elements, the search box previously
would take up more space than expected. This fixed the issue by
adding the `box-sizing` rule to the search box.

This closes https://github.com/select2/select2/issues/2978.
2015-01-27 14:09:52 -05:00
Kevin Brown
9906b2f434 Fixed dropdown for responsive widths
When we re-implemented support for responsive widths, through the
use of percentages, we never moved the support over to the dropdowns.
So the dropdowns generally were not large enough, and when resized
they never re-adjusted, and they didn't fully work as intended.

This fixes the issue by automatically resizing the dropdown whenever
it is repositioned, mainly to handle new scrollbars, which will
ensure that it is always the same width as the container.

This also adds a section to the examples for responsive design,
just like in the old documentation.

This closes https://github.com/select2/select2/issues/2949.
2015-01-27 14:07:44 -05:00
Kevin Brown
52513f3290 Merge pull request #2968 from loic/typo
Fixed typo in error message.
2015-01-26 08:51:38 -05:00
Loic Bistuer
285d173536 Fixed typo in error message. 2015-01-26 17:18:06 +07:00
Kevin Brown
6488551374 Reverted changes to the scroll detection
This reverts the changes (from 3.5.x) to the scroll detection, so
Select2 will still reposition itself every time the window is
scrolled or resized. This has the benefit of fixing the issue when
the screen jumps if the dropdown is too high, which would previously
close the dropdown.

Select2 will also correctly set the positioning if it is pushed out
of the top of the viewport. Due to an unexpected bug, Select2 would
previously still display above the container, but would be styled
as if it were below it.

This closes https://github.com/select2/select2/issues/2961.
This closes https://github.com/select2/select2/issues/2956.
2015-01-22 17:35:08 -05:00
Kevin Brown
981c4065af Only trigger unselect for multiple
This fixes an issue where an `unselect` event would be incorrectly
triggered when the selected option was selected again in a single
select. This has been fixed now, so the even will only be triggered
for multiple selects. The `close` event will still be triggered
though, so the functionality will still remain the same to the user.

This closes https://github.com/select2/select2/issues/2959.
2015-01-22 17:16:12 -05:00
Kevin Brown
bca4e1f6d8 Add information about build types 2015-01-22 17:01:50 -05:00
Kevin Brown
80bda0ad55 Fixed the selectOnClose option
The `selectOnClose` option did not work in production because we
were decorating the `dropdownAdapter` instead of the `resultsAdpater`
when automatically generating the adapters. This has now been fixed,
and the option should work without errors in production.

This also adds documentation for the `selectOnClose` option.

This closes https://github.com/select2/select2/issues/2953.
2015-01-22 15:19:45 -05:00
Kevin Brown
686f846fa5 Changed how the builds are done
This adds a check that triggers an error if Select2 was not able
to detect a copy of jQuery on the page. This should help users when
they are setting up Select2.

**Breaking change:** The full build no longer includes jQuery.
Previously, the full build included all requirements for Select2,
including jQuery, which meant that anyone looking for the optional
requirements had to possibly include multiple versions of jQuery
on their page. This means that anyone requiring Select2 to also
bundle jQuery will now need to include jQuery on their pages
alongside Select2. A copy of jQuery is included in the repository.

**Breaking change:** The AMD build of Select2 will now correctly
wrap the code in a `define` block. It will still create the named
blocks inside of the code, which should be valid in most AMD build
systems, so now Select2 is compatible with cases where the file
does not have the same name as the Select2 module name.

**Breaking change:** Select2 will re-use the AMD methods if they
are available on the page, but it will not longer leak the included
AMD loader to the global scope. The AMD methods will still be
available on the `jQuery.fn.select2.amd` namespace.

The `mock.js` test file has been renamed to `helpers.js` and will
handle the escalation of the `require` and `define` variables to
the global scope. It should be included in all test files, or the
tests will fail.

This closes https://github.com/select2/select2/issues/2946.
2015-01-22 14:49:39 -05:00
Kevin Brown
53c9d53166 Fix jQuery.noConflict compatibility
When `jQuery.noConflict` is called, the global `$` variable is not
defined. We cannot assume in the code that the variable is defined,
and instead should always make sure to import the `jquery` module
when we need jQuery.

This fixes all of the issues where we are assuming that `$` is
defined globally when we are not importing the module. This also
fixes the issues when defining the `jQuery.fn.select2.amd` modules
where we were always attaching to the `$` object instead of the
`jQuery` object.

This closes https://github.com/select2/select2/issues/2947.
2015-01-21 19:56:06 -05:00
Kevin Brown
d81886e5de Trigger the unselect event when clearing placeholder
In the past, Select2 triggered the `select2-clearing` event when
clearing the placeholder. This has been switched to the `unselect`
event which is now triggered whenever the placeholder is cleared.
The placeholder can also be prevented if the `unselecting` event
is prevented.

This will also trigger the event when deleting every option from
the multiple select, so it is possible for the `unselecting` event
to be triggered multiple times when clearing a multiple select.

This adds tests to ensure that the `allowClear` option always works.

This closes https://github.com/select2/select2/issues/2954.
2015-01-21 19:11:07 -05:00
Kevin Brown
5b4e1eab42 Added a check for the results key in AJAX responses
This should prevent users from running into unexpected errors when
they do not return an object with the `results` key containing an
array.

This closes https://github.com/select2/select2/issues/2950.
2015-01-21 16:36:23 -05:00
Kevin Brown
850816ee77 Update docs links for the CDN
Now that cdnjs is mirroring the beta files, we know what the final
locations are going to be. These identifiers will need to be updated
during the release process, just like all of the others.

This closes https://github.com/select2/select2/issues/2955.
2015-01-21 16:20:15 -05:00
fallenby
0fe54b6d3b Hide element if template returns a false-like value
This allows you to hide elements when using the template% formatting functions.

Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2015-01-17 22:14:12 -05:00
Tim
c318cde916 Added dutch translations
nl.js

Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2015-01-17 22:11:17 -05:00
Kevin Brown
ffb58a1be8 Fixed Russian translation
This fixes a mistake made when migrating the translation.
This closes https://github.com/select2/select2/issues/2933.
2015-01-17 22:05:48 -05:00
Kevin Brown
1b46e8ab3e Improve the default language chain
If the language that is passed in through the options is just a
string, like "en-US" or "pt-BR", Select2 will now try to load the
base language along with the requested language and "en". So
requesting "pt-BR" will try to load "pt-BR", "pt", and "en".

This also catches errors and triggers a warning about not being
able to load the file. This should be a more user friendly error,
and it fixes the problem where Select2 would completely fail to
initialize if a language could not be found.

This closes https://github.com/select2/select2/issues/2934.
2015-01-17 21:56:58 -05:00
Kevin Brown
2f4cc19cd9 If a named style can't be determined, return null
Previously this would return `style` if it couldn't be resolved and
the `style` attribute on the element is set for some reason. Now it
will return `null`, because it tried to resolve the width but was
not able to. This will allow it to fall back to `element` by default,
or not set the width at all.

This closes https://github.com/select2/select2/issues/2935.
2015-01-17 21:43:38 -05:00
Kevin Brown
f427451853 Expose the defaults
This exposes the default options for Select2 as
`$.fn.select2.defaults`. A default option can be set using the
`set(key, val)` option which is available. The key should use the
same formatting as the HTML data attributes.

This also adds some documentation about it.
2015-01-17 21:27:53 -05:00
Kevin Brown
c5a3f34012 Added notes on the AMD-specific options 2015-01-17 20:59:05 -05:00
Kevin Brown
d6a83ea026 Pull query and initSelection out to compat modules
This also adds more documentation and corrects the release notes
for these breaking changes. These modules will now only be included
in the full builds of Select2, which has been noted in a few places.
2015-01-17 20:47:52 -05:00
Kevin Brown
061b432485 Merge pull request #2931 from dlion/ItalianTranslation
Added italian translation
2015-01-16 08:05:30 -05:00
Domenico Leone Luciani
ae564f6219 added italian translation 2015-01-16 11:03:57 +01:00
Kevin Brown
b43656c13c Added basic accessibility tests
This adds basic tests to ensure that the selection is accessible by
all users. This checks for common attributes, ensuring that the
container is always keyboard accessible and follows ARIA guidelines.

This also changes the base selection to create a common element so
we don't need to repeat attributes and such across multiple selection
containers.
2015-01-14 22:54:19 -05:00
Kevin Brown
2a7ae0ea9c Add backwards compatibility with query option
This adds backwards compatibility with the `query` option so it
automatically patches the `DataAdapter.query` function. The only
major difference between the methods is the call signature, which
has now moved the callback out of the parameters and into the second
argument.

This also adds tests that verify that the old query functions should
work as expected.
2015-01-14 21:24:09 -05:00
Kevin Brown
e04188c85a Added backwards compatibility for initSelection
Now if the old `initSelection` method is used, a warning will be
triggered in the console informing the user that it has now been
changed to `DataAdapter.current`, and they should create a custom
data adapter instead. We will still only call `initSelection` once,
and then default back to the old data adapter for calls after that.
This allows for mostly transparent support between versions.

This adds tests to ensure that `initSelection` operates the same as
it previously did, but now patches the `current` method of the
default data adapter.
2015-01-14 21:24:08 -05:00
Kevin Brown
286b83898f Documented the removal of initSelection and query
This adds detailed docs explaining how you can convert the old
implementations of `query` and `initSelection` into a custom data
adapter using the `current` and `query` methods provided there.
Examples are included that should make it considerably easier to
handle.
2015-01-14 21:24:08 -05:00
Kevin Brown
7f2cb23e78 Merge pull request #2917 from solcik/cs-trans
Added czech translations
2015-01-14 19:41:32 -05:00
Kevin Brown
911966be78 Update version identifiers for 4.0.0-beta.2 2015-01-13 19:18:33 -05:00
Kevin Brown
8d35d5e416 Fixed opening issue
This fixes an issue where the data set would not be queried when
the dropdown was opened.
2015-01-13 19:09:04 -05:00
Kevin Brown
28f9cae5d7 Added some more jQuery events
This adds the `select` and `unselect` events so users can still
hook into them from their jQuery plugins.

This also modifies the core `trigger` to fire pre-events that can
be canceled for the `open`, `close`, `select`, and `unselect`
events. Users implementing these events who need to handle cases
where the event has been prevented should check `args.prevented`,
where `args` is the object that was included for arguments when
triggering the internal event.
2015-01-13 18:28:21 -05:00
Kevin Brown
dc0ebd35d5 Merge pull request #2914 from smzchaudary/select2-ng
add maximum selection length option
2015-01-13 14:01:00 -05:00
Zubair
bc71ad4880 fix spacing of examples. 2015-01-13 13:49:27 -05:00
Zubair
160abdc54e cleanup example and move examle based on PR comments. 2015-01-13 13:00:17 -05:00
Zubair
7515fa7f46 only verify when maximumSelectionCount is greater than 0 and add tests 2015-01-13 13:00:16 -05:00
Zubair
25dade52e5 rebuild dist. Fixed space 2015-01-13 13:00:16 -05:00
Zubair
e18fa1b5b8 fix callback using this.current.
add example.
2015-01-13 13:00:16 -05:00
Zubair
1c8846079b replace this.$element.val() with this.current() 2015-01-13 13:00:16 -05:00
Zubair
2bdb5dbdae add maximum selection length option 2015-01-13 13:00:16 -05:00
Kevin Brown
5dad831f7f Merge pull request #2919 from apfelbox/patch-1
Small bugfix in german translation
2015-01-13 12:46:41 -05:00
Jannik Zschiesche
8ec202963a Small bugfix in german translation
Just added a missing parameter in the function definition.
2015-01-13 18:42:50 +01:00
David Šolc
95a586539d Added czech translations - fix 2015-01-13 16:00:47 +01:00
David Šolc
0e9cfaa893 Added czech translations 2015-01-13 15:52:22 +01:00
Kevin Brown
766d9f05e0 Automatically set up docs symlink
This also adds some docs about building the documentation.
[ci skip]
2015-01-12 19:56:25 -05:00
Kevin Brown
86b4a5d8e2 Added amdBase and amdLanguageBase options
This should allow those using their own build systems to
automatically load in translations. In the future, the `amdBase`
option may be used to optionally load some components of Select2.

As Select2 cannot know what the base directory is, it currently
has to load in all of the optional components in the default build.
By allowing users to set their own base, it will allow us to know
the base to load files from, which makes it easier to use the
`require` function to optionally load them.

This fixes https://github.com/select2/select2/issues/2899.
2015-01-11 21:59:27 -05:00
Kevin Brown
584d3b48a2 Added selectOnClose
`selectOnClose` is a new option which works very much like the old
`selectOnBlur` option. When the `close` event is triggered, the
highlighted result is automatically selected. This is useful for
single selects, which is where it is designed to be used, but it
can also be used on multiple selects.

This also adds tests to verify that this works in the future.

During the creation of the test, we noticed that we were missing a
mock container that could be used for triggering events. One was
created and a general mock JS file was created to hold any future
mocks for tests.
2015-01-11 21:47:17 -05:00
Kevin Brown
af1f35176b Added back the width option
In past versions of Select2, the `width` option could be used to
tell Select2 how to determine the width of the container generated
by Select2.

**Breaking change:** The default value for the `width` option has
been changed from `copy` to `resolve.`

**Breaking change:** The old option called `copy` has been renamed
to `style` to better reflect what the width is generated from.

This fixes https://github.com/select2/select2/pull/2090.
This fixes https://github.com/select2/select2/issues/2911.
2015-01-11 18:00:48 -05:00
Kevin Brown
ff596e692e Added a few more tests
This adds a test that makes sure that the inline data attribute
overrides the options that are passed in during initialization.

This also adds a test for the `createTag` option, which is used
when tagging.
2015-01-11 16:30:16 -05:00
Kevin Brown
6a5127ac0f Merge pull request #2912 from summeragain/scroll-fix
Fixes #2908: Dropdown cause scrollbar
2015-01-11 15:41:13 -05:00
Kevin Brown
0424d97396 Merge pull request #2909 from ericdahl/docs-brackets
Docs: typo cleanup
2015-01-10 15:44:32 -05:00
Eric Dahl
e9455e1a84 Docs: typos 2015-01-10 12:39:53 -08:00
lazything
a4d45d4f17 Update dist 2015-01-10 16:27:22 +02:00
lazything
b7f4731051 Fix scroll caused by dropdown 2015-01-10 16:24:32 +02:00
Kevin Brown
a6b11ab48b Add IRC notifications for build failures/changes 2015-01-09 20:56:06 -05:00
Kevin Brown
7f17291932 Fix support for deep nesting
While deep nesting will not work on a standard `<select>`, we can
emulate it through data objects still, and just handle the display
of the data in the results.

This also means that the horrific deep-nested CSS is back to handle
the padding. I hope that will get fixed over time.

This also fixes one of the performance issues with adding array
data, as options are added at the very end instead of one by one.
2015-01-09 20:50:06 -05:00
Kevin Brown
5c71e2da50 Updated README and CONTRIBUTING
This also updates the LICENSE year. [ci skip]
2015-01-09 19:26:59 -05:00
Kevin Brown
05d8407b05 Added Travis CI badge and fixed package.json 2015-01-09 16:09:30 -05:00
Kevin Brown
a6c4215976 Fixed multiple selection placeholders
Due to a change in 7edf0e3ebe that
made the rendered selection take up the full width of the selection
container, the placeholder was not being automatically displayed.
The calculations were always turning out negative, which has been
fixed by not trying to automatically calculate the best possible
width.
2015-01-09 14:08:31 -05:00
Kevin Brown
1191d4a3bb Fixed overflow when triggering results messages
Because of the change made previously to make events global, any
time a result message was triggered there would be a stack overflow.
This was because we were re-triggering the event locally if it
happened on a global level, which would start the loop.

This has been fixed so the event is never caught locally, but
instead uses the global handler.
2015-01-09 12:46:21 -05:00
Kevin Brown
e63c0ce6a0 Update contributing guide and README for 4.0 2015-01-09 11:10:53 -05:00
Kevin Brown
7edf0e3ebe Style clear icon in multiple selects
The `AllowClear` decorator appears to work fine with multiple
selects, so we've chosen to remove remove it. This adds some
styling and fixes the check so it all works as expected.

This closes https://github.com/select2/select2/issues/2903.
2015-01-09 11:03:31 -05:00
Kevin Brown
fe1374fd11 Hide the x when the container is disabled
This fixes an issue where the `x` in multiple selects (visible next
to the option) would be visible even if the container was disabled.
Because it was still accepting events as well, this would cause the
underlying data to be changed, even though it was disabled. We now
hide the icon using CSS so this issue doesn't occur.

The same applies to the `x` for clearing a placeholder.

https://github.com/select2/select2/issues/2903
2015-01-09 10:47:56 -05:00
Kevin Brown
751fc63169 Expose createTag as an option
This is a replacement for the old `createSearchChoice` method which
allowed tags to be dynamically created with a custom data object.
2015-01-09 10:30:56 -05:00
Kevin Brown
024d41b412 Normalize internal select/unselect events
Also pull the logic for automatically closing the dropdown into the
dropdown adapter, taking it out of the core.

The `selected` and `unselected` events are now `select` and
`unselect`, which is what many of the other adapters were expecting
them to be.

Some tests for placeholders have been added.
2015-01-09 10:05:44 -05:00
Kevin Brown
27c5eebcf9 Hide the event demo 2015-01-08 11:57:56 -05:00
Kevin Brown
1fe8de3ad5 Fix tagging example
Tagging should be demonstrated using the multiple select, as that
is where it really shines. It's also how we used to demonstrate it.

This closes https://github.com/select2/select2/issues/2901.
2015-01-08 11:53:31 -05:00
Kevin Brown
64cb528f62 Set up a public event relay
Now Select2 can fire jQuery events that will match the corresponding
internal events. The `open` and `close` events are now publicly
accessible.

The selection adapter was chosen because it is the least likely to
be moved, but handles the most common events. This `EventRelay`
decorator should theoretically be able to decorate any of the
adapters, as they all have the `bind` method that it needs.
2015-01-08 11:44:09 -05:00
Kevin Brown
bba967ba21 Use the star event for internal binding
The star event will allow us to relay any custom events as well as
the ones used internally by Select2. This also makes it much
easier to start triggering events in general, as we don't need to
relay it in the core anymore.

A module has been created for the jQuery-facing events, and the
release announcement has been updated to mention the event name
changes.

This also adds some documentation about the public events.
2015-01-08 10:40:13 -05:00
Kevin Brown
68286e3cff Search focus should also happen in a timeout
For the dropdown search on single select instances, the search
focus should happen in a `setTimeout` call. This is because many
browsers trigger the element focus on `click`, so our original call
to `$search.focus` will essentially be ignored. By also focusing
it in a timeout, this will delay the call to `focus` so the browser
will no longer take it back.

We do not have this issue for multiple select instances, as they
trigger the `open` event on `click`, instead of using `mousedown`.

This fixes https://github.com/select2/select2/issues/2900.
2015-01-08 10:10:23 -05:00
Kevin Brown
e76460a392 Updated package files
The package files (bower, npm, etc.) now point to the new
distribution locations, and have the beta version numbers in place.
The version number has been removed from the `bower.json` and
`composer.json` files as they will retrieve the version numbers
from Git.
2015-01-07 23:30:05 -05:00
Kevin Brown
df40e22586 Finish off the initial release notes and prepare for beta 2015-01-07 23:03:30 -05:00
Kevin Brown
05cbaf7bf7 Universally use the object query return
There was a plan to universally use an array as the return from
query methods, but now that we've realized pagination and extra
things are impossible without it, we're going back to the return
object. Anyone looking to migrate their data should be returning
an object with the key `results` containing what they previously
returned.

This should fix https://github.com/select2/select2/issues/2898
2015-01-07 21:11:32 -05:00
Kevin Brown
063859160d Add a few translations, label the others 2015-01-07 20:39:29 -05:00
Kevin Brown
e111ea0420 Added a few new translations
Also fixed the JSHint issues in the new Ukranian translation.
2015-01-07 20:11:58 -05:00
Kevin Brown
970e98c573 Merge pull request #2897 from ktaras/feature/adding-ukrainian-localization
Adds Ukrainian localization
2015-01-07 17:41:10 -05:00
ktaras
8a2cdac8ce Adds Ukrainian localization 2015-01-08 00:34:54 +02:00
Kevin Brown
f8fdcb6fa5 Added support for tokenization
This brings up both the `tokenizer` and `tokenSeparators` options.
2015-01-06 20:03:12 -05:00
Kevin Brown
938993302f Fixed SASS error
This fixes the SASS error caused by the `&[dir="rtl"]` selector in
the `_single.scss` and `_multiple.scss` files. We were expecting
these files to be nested within the `.select-container` class, which
would have made this a non-error as the `&` would refer to the
`.select2-container` class that was wrapping the `@import`.

This moves the `@import` statements into the `.select2-container`
class, so this no longer triggers an error in the Ruby version of
SASS.

This closes https://github.com/select2/select2/issues/2896
2015-01-06 17:54:33 -05:00
Kevin Brown
dcfaa5f628 Added Google Analytics 2015-01-05 19:30:15 -05:00
Kevin Brown
562669064b Called out 3.5.2 dodcs
Also migrated all of the links to the new location in the GitHub
organization.
2015-01-05 18:22:27 -05:00
Kevin Brown
ed24a51ea3 Updated docs to use the Select2 GitHub organization
Documentation will now be at https://select2.github.io
2015-01-02 21:12:41 -05:00
Kevin Brown
ad94b6faba Added jQuery.mousewheel support
jQuery.mousewheel will allow us to prevent the dropdown from
automatically closing when the user scrolls to the end of the list.
It is automatically bundled in the full versions of Select2 and
we don't require that it is included in order for Select2 to work.

jQuery.mousewheel was taken directly from the source repository
using the commit at

cc2c5d73ae
2015-01-02 20:32:14 -05:00
Kevin Brown
09e3a76bf9 Added pagination support for AJAX results
I'm still not quite sure how this should be handled for the general
case, but for the special case we have this for infinite scrolling,
only on AJAX data.
2015-01-02 19:58:09 -05:00
Kevin Brown
f1e86470ca Clone the options for group elements
This will always clone the options that are passed in when
initializing Select2 on multiple objects (like `$("select")`) so
it doesn't always assume that the configuration is the exact same.
This prevents any reference-based tricks for modifying the data
within Select2, but some would look at that as an upside.
2015-01-02 18:15:59 -05:00
Kevin Brown
12f7ed93f8 Added more migration information
The documentation for templates still needs to be created.

A warning is now generated in the console for applications using
the previous data attributes that have been migrated.
2014-12-27 21:47:18 -05:00
Kevin Brown
e7c2c70d1a Added RTL support to Select2
This works in the same way as the `lang` option, which pulls
directly from the `dir` property on DOM nodes.
2014-12-17 22:08:58 -05:00
Kevin Brown
0bc73941fe Support duplicate options
Now that the data objects have the `element` property, we can test
to make sure it's a DOM element and then use it for selecting the
option. This allows us to select multiple options with the same id,
as well as handle cases where that is already happening.

You cannot use `$e.val()` to select two options with the same id,
as jQuery will reject it, but you can set the second option to
`.selected = true`, which is supported.
2014-12-17 20:36:06 -05:00
Kevin Brown
fe136088f6 Fixed string to object conversion 2014-12-17 19:39:12 -05:00
Kevin Brown
ea41b627dc IE fixes and alt-arrow support
alt-down/up is the standard way of opening a select when using a
screen reader. This also fixes the gradient in IE, so now it
displays the right colors. Also added a note about Placeholders.js,
so the placeholders on multi-select boxes will work in IE 9 and
below.
2014-12-17 19:06:13 -05:00
Kevin Brown
358306ac8c Respect the disabled attribute
Added a disabled state for Select2. This will correctly listen to
property changes (so when the disabled property is changed) and
update the state of Select2 to reflect it.

Added a utility function to find a method to a different context.
2014-12-16 22:44:11 -05:00
Kevin Brown
1e44ab7ee1 Added the element reference in the data
This also fixes `_normalizeItem` for cases where `text` doesn't
exist, so it doesn't clobber the item.
2014-12-16 20:51:35 -05:00
Kevin Brown
33809f1fef Added some translations 2014-12-16 20:45:44 -05:00
Kevin Brown
8a78ff7415 Added five more translations
This also fixes a spelling error in "loading" in the last nine.
2014-12-15 21:16:37 -05:00
Kevin Brown
a6841618b0 Migrated 9 more translations 2014-12-15 20:27:38 -05:00
Kevin Brown
e23b8b5483 More work on the announcement 2014-12-11 18:11:03 -05:00
Kevin Brown
096d55b64d Fixed backspace on multiple selects 2014-12-11 18:10:46 -05:00
Kevin Brown
3ff78d8145 Added back select2("enable")
This also adds a console warning if the `enable` or `val` method is
called.
2014-12-11 17:42:05 -05:00
Kevin Brown
100015b205 Added back select2('val')
With the recent changes to how Select2 works internally, this really
isn't needed. This has been added to make the migration path
easier, and it just internally calls `val` on the underlying select
element. The only difference is that the `val` function will now
convert any non-string elements to strings.

The second argument (`triggerChange`) has not been migrated, as
Select2 now internally relies on the `change` event.

**Note:** As the old `initSelection` method has not been migrated,
it is not possible to set the `val` on remote data sources where
the value has not previously been selected.
2014-12-11 17:11:38 -05:00
Kevin Brown
4afb80b7ff 4.0 announcement 2014-12-10 22:31:07 -05:00
Kevin Brown
395e06aff5 Backspace unselects item in multiple selects
The backspace key now behaves very similar to how it does in other
multiple select boxes, such as the one that Stack Exchange uses.
When the user presses the backspace key, the last selected option
is unselected and the search box is filled with the text of the
option.
2014-12-10 19:19:48 -05:00
Kevin Brown
0de516f17a Add minimumResultsForSearch 2014-12-10 18:46:05 -05:00
Kevin Brown
caf4ad73d7 Allow for custom sorting functions
This adds the `sorter` function, which works in the same way as the
old `sortResults` function.
2014-12-10 18:22:25 -05:00
Kevin Brown
ec1bd3387b Added lang attribute support
Select2 will now detect the language based on the `lang` attribute
of the `<select>` element or any parent elements.
2014-12-10 18:09:00 -05:00
Kevin Brown
14db3fc801 Support data-* attributes for configuration
The documentation is included, along with a few tests, which
explains the general rules for how it is parsed.
2014-12-10 15:23:39 -05:00
Kevin Brown
f6625d2347 Added dropdownParent
`dropdownParent` controls the location of the dropdown when it is
automatically added to the DOM. By default, this is the body
element but it can be modified based on where the user needs it.
2014-12-09 22:12:07 -05:00
Kevin Brown
f7d75b62fa Added more documentation
This adds documentation for a `dropdownParent` option which has
not yet been created, but will come in the next commit.
2014-12-09 22:02:16 -05:00
Kevin Brown
4cdda7e156 Finish off the incomplete options documentation
The documentation is not completely finished, but now we have no
placeholders waiting to be completed.
2014-12-09 20:30:57 -05:00
Kevin Brown
f0017c024d Added support for a click mask
In past versions of Select2, a mask was used to detect clicks
outside of the dropdown. While this works with high accuracy, and
avoid many of the click issues we had with modals, it is no longer
the default close handler for Select2. It blocks any features on
the container from working without a second click, and introduces
odd edge cases that we cannot easily handle.
2014-12-05 22:44:41 -05:00
Kevin Brown
1ca71578d4 Added documentation footer
The documentation will be licensed under CC BY 3.0, instead of
under the MIT license like the rest of the code.
2014-12-05 21:48:31 -05:00
Kevin Brown
ab763b060d Added getting started guide to the home page 2014-12-05 21:21:40 -05:00
Kevin Brown
ce38cd5b9c Allow the dropdown to point up
Up until now, the container could only have a dropdown that was
displayed below the container. While this worked well, there are
some cases where the dropdown should be displayed above the
container. Most notably, this is when the conatainer is displayed
towards the bottom of the page, and displaying the dropdown would
cause the page to be extended. Because we close the dropdown
when the page is scrolled, the user would not be able to access any
options that were displayed outside of the viewpoint.

Because of the order that events are fired, we attach the handlers
for repositioning the dropdown after results are displayed when the
container is opened for the first time.  This allows it to be
registered after the results container registers their events, so
the dropdown is repositioned after the results have been displayed.

The logic for determining the direction that the dropdown will be
shown in is very similar to the positioning code used in
Select2 3.x. Unlike previous versions of Select2, a class is used
to indicate the direction of the dropdown, even if it is displaying
below the container.

The themes provided with Select2 have been updated to correctly
render the dropdown in both directions.
2014-12-05 20:09:42 -05:00
Kevin Brown
fda973c34f Started adding more translations 2014-11-26 23:19:04 -05:00
Kevin Brown
07575f051c Automatically close on scroll
This now matches how the browser works, where the dropdown is
closed when the window scrolls.

The arrow was also covering the clear placeholder icon, this has
now been fixed and the clear icon is now placed correctly.
2014-11-26 22:30:31 -05:00
Kevin Brown
e3647051de Added maximumInputLength support 2014-11-26 21:52:49 -05:00
Kevin Brown
43efd43d57 Add tests for the multiple selection container 2014-11-26 20:50:39 -05:00
Kevin Brown
7fc195f70d Fix hiding search
When the dropdown is in the dropdown that is attached to the body,
the call to `show` causes `display: inline` to be set directly on
the search container. This causes rendering issues, so this change
uses a class instead of calling `show` and `hide` directly.

This is most likely a jQuery bug of some form, as it only happens
when using the dropdown that is attached to the body.
2014-11-26 20:39:52 -05:00
Kevin Brown
4cab421966 Added tests for the single selection container 2014-11-26 20:25:56 -05:00
Kevin Brown
56d5778590 Finished off tests for tags
This also adds back the ability for tags to return `null` in order
for no tag to be added to the results.
2014-11-26 19:53:15 -05:00
Kevin Brown
76e4ea8340 Added tests for tags 2014-11-25 21:28:16 -05:00
Kevin Brown
16e565e28e Added tests for minimumInputLength 2014-11-25 20:12:17 -05:00
Kevin Brown
389c3ed866 More work on the release announcement 2014-11-25 19:42:53 -05:00
Kevin Brown
593a357886 Automatically push docs updates 2014-11-25 16:23:53 -05:00
Kevin Brown
a4af105a6e Fixed the default translations
Previously the default translations would break for custom AMD
builds. This fixes it so it does not rely on a hard-coded import
path.
2014-11-25 16:09:52 -05:00
Kevin Brown
81db43fa99 Extracted the original positioning out
With this change, any instances overriding the dropdown is
required to decorate it with the positioning module.
2014-11-25 15:59:35 -05:00
Kevin Brown
6a0c002f94 Add a module for attaching the dropdown to the body
In Select2 3.x, the dropdown is attached to the body element and
it is floated above all other elements.

In Select2 4.x, the dropdown is attached directly to the Select2
container, which allows us to skip any special placing logic. This
happens to be how Chosen currently does it, and it prevents us
from having the dropdown display up, as well as a few other strange
issues that can't be prevented.

This new module will most likely become the default, as it matches
the functionality of Select2 3.x and has quite a few advantages.
The other positioning code will need to be broken out into a
separate module in the future.
2014-11-25 15:39:42 -05:00
Kevin Brown
31c09315c8 Move positioning into the components
The main container should not need to position the individual
components. This makes it easier for components to override where
they should be placed, such as adding the dropdown outside of the
container.
2014-11-25 14:19:07 -05:00
Kevin Brown
be3414f6fe Moved the body click handlers out
This should allow us to start working on the body mask handler,
and make future implementations easier to work with.
2014-11-25 14:03:21 -05:00
Kevin Brown
85593de1fa Fixed bug when destroying Select2
When destroying Select2, an error could be raised while destroying
the selection container. This was because the destroy handler was
relying on the container id being present.

The old functionality has been restored where Select2 will destroy
itself when it is initialized again.
2014-11-25 13:39:46 -05:00
Kevin Brown
ade7180d70 Updated with master 2014-11-25 08:56:36 -05:00
Kevin Brown
12de3c2b5e Set up the GitHub Pages command
Now we can synchronize GitHub Pages with the docs in the master
branch quickly and easily.
2014-11-25 08:36:01 -05:00
Kevin Brown
d9e254ed27 Fixed the theme example 2014-11-24 21:37:29 -05:00
Kevin Brown
ac5d584f3d Added the arrow for the dropdown 2014-11-24 21:33:22 -05:00
Kevin Brown
ffed37013d Added back the allowClear option 2014-11-24 20:43:15 -05:00
Kevin Brown
dafa99bf40 Working on the classic theme 2014-11-24 20:08:24 -05:00
Kevin Brown
e686bce9d0 Converted classic theme to BEM
This should be the last of the changes.
2014-11-24 19:11:02 -05:00
Kevin Brown
3e54fc97e5 Finish the core switch to BEM
This switches all of the dropdown components to use BEM.
2014-11-24 18:59:19 -05:00
Kevin Brown
8cb074ccef Finished switching main container to BEM 2014-11-24 18:38:58 -05:00
Kevin Brown
7933eb77c1 Switch the multiple selection container
This switches the container to use BEM for the class naming.
2014-11-24 18:30:58 -05:00
Kevin Brown
971422f92e Start the switch to BEM
This is inspired by https://github.com/ivaynberg/select2/issues/2826
and starts the general transition to using selectors with a lower
specificity. This should make it considerably easier to override
the styles in the long run.

Unfortunately libsass does not support the SASS 3.3 style for BEM
where we can just use `&__m` for defining sub-modules. For now we
are still using a limited amount of nesting, but nowhere near as
much as we did in the past.
2014-11-24 18:11:03 -05:00
Kevin Brown
f1c02db189 Automatically resize the search box
Now the search box is automatically resized for placeholders to
fit the available space, so we don't need to worry about the
placeholder not being visible. When the placeholder doesn't need
to be visible, the size of the search box is determined based on
the length of the current search term.
2014-11-22 20:32:25 -05:00
Kevin Brown
217cd4cfd0 Added inline searching for multiple selects
This adds a search box to the main container for multiple select
boxes, similar to the what the old version had. This can still be
swapped out such that the search box displays above the results
like it previously did.

The placeholder for multiple selects will also now use the input
attribute of the search box instead of generating a custom element.

This also changes the selector for the search container to
`.select2-search`, which is consistent with the old class and
reduces the complexity of the selectors.

This fixes an issue with how decorators worked, where the constructor
from the parent class would clobber the custom constructor that is
generated for the new decorated class. This has been fixed by
excluding the constructor from the list of fields which are
transferred when decorating classes.
2014-11-22 19:21:46 -05:00
Kevin Brown
f382f3d02d Merge pull request #2755 from kupishkis/2753
After clearSearch nextSearchTerm is not cleared
2014-11-21 08:47:35 -05:00
Kevin Brown
9913cb7c25 Merge pull request #2730 from od3n/master
updated Malay & Indonesian translations
2014-11-20 21:46:38 -05:00
Kevin Brown
2bec6e2579 Automatically strip diacritics
This adds a dictionary for converting diacritics to a normalized
representation. This dictionary is used in the default matcher.

The code for stripping the diacritics was pulled from the current
implementation in Select2 3.x.
2014-11-19 18:12:59 -05:00
Kevin Brown
5ec201ca30 Built out the translations
This migrates over the required English translations under their
new names.

The "Searching" message has also been adjusted to use "Searching..."
instead of "Loading more results...", which is what it used to
say sometimes.

This also changes the AJAX handler to call `abort` when needed.
2014-11-19 17:48:46 -05:00
Kevin Brown
7e6782d580 Display a loading message when searching
Now when searching, a loading message is prepended to the top of
the results. This replaces the old spinner image and allows for it
to be translated across different languages.

The loading message can be styled differently and is passed
through the results formatters.
2014-11-19 17:22:37 -05:00
Kevin Brown
28c56e7885 Better accessibility for multiple select boxes 2014-11-19 15:50:53 -05:00
Kevin Brown
cee8c18c23 Change how the results are highlighted
Previously, a result was no longer highlighted when the mouse was
no longer over it. While this was useful for resetting the
highlight automatically, we started doing this when a new result
was highlighted to make sure that we never had multiple options
highlighted.

Now, a result will always be highlighted until the highlight is
removed when the next result is highlighted. While this shouldn't
affect many users, it is closer to how native select boxes work.
This also allows users using keyboard navigation to jump between
mouse and keyboard navigation without the highlight reseting to
the top of the results.
2014-11-19 14:29:28 -05:00
Kevin Brown
849a9c7a32 Started work on the classic theme
Some people like the old theme, so we're going to also include that
one as well as the easier-to-extend flat theme.
2014-11-19 14:26:52 -05:00
Kevin Brown
69e8e6e355 Merge pull request #2808 from yuks/patch-1
formatMatches translation added
2014-11-14 17:38:28 -05:00
Yuksel
ced4bf692c formatMatches translation added 2014-11-14 22:17:49 +01:00
Kevin Brown
a2766b7ed6 Added destroy method
Now Select2 supports destroying itself, and all elements that it
creates.
2014-11-13 18:36:40 -05:00
Kevin Brown
a8377e3681 Merge pull request #2789 from RustyToms/drop_above_dropHeight_fix
recalculate $dropdown height after drop-above class added
2014-11-13 17:56:14 -05:00
Kevin Brown
78ee1bc01e Continued work on the documentation 2014-11-08 16:48:57 -05:00
Kevin Brown
10536370de Add support for initializing tags
This adds backwards compatibility for the old tags.
2014-11-07 20:31:27 -05:00
Kevin Brown
d306fcf82c Added default selection for AJAX 2014-11-07 20:20:37 -05:00
Kevin Brown
5535f072e1 Focus the search upon opening 2014-11-07 20:16:59 -05:00
Kevin Brown
07e82d6be8 Automatically create options on select 2014-11-07 20:13:59 -05:00
Kevin Brown
d411a0fa76 Fixed default selections for arrays 2014-11-07 19:53:50 -05:00
Kevin Brown
e3deb3ae03 Remove jQuery from building the options
This fixes many of the speed issues the results had when working
with large data sets. jQuery has been completely dropped, with the
exception of setting the data, which does not require a jQuery
object but instead works directly with the DOM. This does not
include options with children, which still uses jQuery to deal
with the nested objects.

This only works with IE 8+, which is fine.
2014-11-07 19:37:07 -05:00
Kevin Brown
8ecc35d504 Fix caching when querying
This fixes caching when querying, so the data object no longer
needs to be completely regenerated whenever the `<option>` is
queried.

While this does not fix the speed issues on the first opening of
the instance, it does fix the speed issues during searching.
2014-11-07 19:07:01 -05:00
Kevin Brown
05ddbec1a7 Improve data array speeds
This improves the speeds of creating the `<option>` tags for array
data. By creating the HTML ahead of time and putting it into an
`<option>` element before passing it to jQuery, it cuts down on the
time it takes for jQuery to process the HTML string and convert it
into DOM elements. This proved to be incredibly slow.

This also changes the `item` function to return early when the
data exists. The `$e.data` call has also been switched to a
`$.data` call, which doesn't need to check the DOM to see if the
data attributes already exist. This cuts down on a bit of wasted
time, as the `data` key should never be present in the DOM, and it
should be ignored if it is.
2014-11-07 11:17:37 -05:00
Kevin Brown
56dbbf8cdb Improve option generate speed
Now the options are mostly generated by hand before being passed
off to jQuery for templating. This fixes much of the speed issues
we had when they were entirely being generated through jQuery.
2014-11-06 13:40:36 -05:00
Kevin Brown
8158e151ff Added test to make sure the options are generated 2014-11-06 12:12:43 -05:00
Kevin Brown
8ea23610f1 Convert array data to options immediately
This converts individual objects passed in through the `array`
parameter to `<option>` tags when Select2 is initialized. This
removes a lot of duplicate code from the `ArrayAdapter`, and keeps
everything closer to the native `<select>` element.

This introduces a breaking change from previous versions of Select2,
where the initial value for array data was blank, even if a blank
option was not present in the original array of objects. Now the
first object passed in will be selected by default, following the
behavior of a standard `<select>` element.

This breaking change does not affect `<select multiple="multiple">`
elements, which by default have no selection.
2014-11-06 12:05:12 -05:00
Kevin Brown
5454a908a1 Started working on the initial release announcement 2014-11-06 11:27:28 -05:00
Kevin Brown
6d029f3f2f Merge pull request #2786 from exabugs/master
Delete 'StarHack' code. Because select2 support IE8+.
2014-11-05 17:48:33 -05:00
Kevin Brown
c7e8f81595 Added Spanish translation and fixed the example 2014-11-05 11:25:41 -05:00
Kevin Brown
69fb428e01 Rewrote the matcher example 2014-11-05 11:09:55 -05:00
Kevin Brown
ed98443d47 Added matcher example and reworked compat
The matcher example now matches the old matcher example, and the
compatibility module has been turned into a function decorator
instead of a class decorator.
2014-11-05 11:03:53 -05:00
Jonathan Toms
a83ae7858a recalculate $dropdown height after drop-above class added 2014-11-05 00:10:15 -05:00
exabugs
7f75f46e5b Delete 'StarHuck' code. Because select2 support IE8+. 2014-11-04 22:04:30 +09:00
Kevin Brown
6e4336769f Fix AJAx example 2014-11-03 19:32:50 -05:00
Kevin Brown
0bc4832995 Better infinite scroll
Only show the "No results found" message when there are no results
visible in the list. This avoid issues when loading more data, and
it returns no results.

Only try to see if the load more button is visible if it is present
in the DOM. This prevents making continuous requests when there are
no more results.
2014-11-03 19:24:29 -05:00
Kevin Brown
5e3b63289c Added infinite scrolling support for AJAX 2014-11-03 19:10:36 -05:00
Kevin Brown
78bcd6e831 Added docs build for grunt 2014-11-03 19:09:38 -05:00
Kevin Brown
91cecd55ed Handle minimumInputLength 2014-11-01 22:59:59 -04:00
Kevin Brown
8b7924fc72 Templating for selections 2014-11-01 22:12:21 -04:00
Kevin Brown
98fb41b442 Bring over the repo results formatter 2014-11-01 22:05:21 -04:00
Kevin Brown
a3fa516761 Added basic templating to results 2014-11-01 21:57:14 -04:00
Kevin Brown
be4d091451 Working on remote data sets
This starts work on the example, which currently uses the GitHub
API.

The `ajax.delay` option has been added that allows for debouncing
requests made within a certain number of milliseconds.
2014-11-01 21:36:36 -04:00
Kevin Brown
6d2b462e2b Better key event handling 2014-11-01 21:04:31 -04:00
Kevin Brown
e16c505c25 Move to a central key handler
This allows for any control to emit key events, and for the Select2
instance to handle them. So now the search box will allow for
results to be scrolled and selected, bringing back the old expected
functionality. This also stops triggering new queries when the
arrow keys are pressed.

The container will also be automatically focused when the dropdown
is closed, which is consistent with the old Select2.

The results will no longer be queried on initialization, but
instead will be queried when the dropdown is opened. This is more
consistent with the previous version of Select2.

The search box will now be cleared when the dropdown is closed.
2014-11-01 20:35:23 -04:00
Kevin Brown
3b575ad92f Register the click handler in the container
This shouldn't be in the core, it's much easier to override things
in the container.
2014-11-01 19:36:02 -04:00
Kevin Brown
130358e8ae Set up the click handler for closing
Now the dropdown will automatically be closed when the user clicks
outside of it.
2014-11-01 19:29:07 -04:00
Kevin Brown
f8ca597f02 Move all of the event binding into separate methods
This should make it easier to override in subclasses.
2014-11-01 19:05:08 -04:00
Kevin Brown
47d0bc4fe1 Allow the position of the tag to be customized. 2014-11-01 18:40:06 -04:00
Kevin Brown
8bdd83c44f Better support for tagging
This removes the special case for `<select>` elements and instead
handles everything tagging related within the `Tags` decorator.
2014-11-01 17:49:53 -04:00
Kevin Brown
b87a4a55e4 Fix automatically hiding the placeholder
The placeholder will not only be automatically hidden if the
results adapter was not already overridden. This will allow users
to override the results adapter to now hide the placeholder, if
they do not want that functionality.
2014-11-01 17:27:30 -04:00
Kevin Brown
e57e0b1870 Added decorator to remove the placeholder object
This will remove the placeholder object from the results list.
2014-11-01 17:21:46 -04:00
Kevin Brown
09a0bb89b8 Move placing the sections into methods
This allows them to be overridden, allowing for things like
attaching the dropdown to a different part of the DOM.

The id is also now generated in a function that can be overridden.
2014-11-01 17:08:59 -04:00
Kevin Brown
8bf86ebae1 Tweak the README
Now we point users to the `LICENSE.md` file for the license,
instead of including it in the README. This also removes the
example integrations, which are no longer officially maintained
by Select2.

The translation section has also been updated.
2014-11-01 16:05:47 -04:00
Kevin Brown
fef1ccfd81 Merge branch 'master' into select2-ng
This adds the package management files back into the repository
and also updates the README to reflect the future Select2 4.0.
2014-11-01 15:43:01 -04:00
Kevin Brown
6f6e4f50aa Added MIT license 2014-11-01 15:21:10 -04:00
Kevin Brown
4e19d87927 modified version identifiers in descriptors for release 3.5.2 2014-11-01 14:43:38 -04:00
Kevin Brown
db7cd1b373 Go back to hiding the original element
This was only done to maintain compatibility with labels, back
when we could capture the focus events from the original element.
Now that we handle them in a different way, this is no longer
needed.

This fixes #2769.
2014-11-01 14:39:06 -04:00
Kevin Brown
959b96eca6 Started work on the "No results found" message 2014-11-01 14:20:51 -04:00
Kevin Brown
9bb993cee9 Added Translation object
This continues the work to get translations built into Select2.
2014-10-31 23:03:03 -04:00
Kevin Brown
20fcaa4449 Start working on translations
This adds a custom r.js build for i18n, which processes each JS
file in the `select2/i18n` directory and builds it.

So far only the "No results found" translation has been added.
2014-10-31 22:24:59 -04:00
Kevin Brown
65875bf8e7 Better handle AMD across files
Now that `define` and `require` are never made public, we have to
build everything to support `$.fn.select2.amd` while also working
with other AMD loaders.
2014-10-31 21:13:43 -04:00
Kevin Brown
8b77dcab98 Remove old start and end files 2014-10-31 20:17:40 -04:00
Kevin Brown
afbf30d09a Wrap JS
This will prevent leaking variables, and will remove the possibility
of Select2 not working well with other plugins which support
AMD loaders. The `define` and `require` methods are now aliased
under `$.Select2.amd` for use inside additional files, such as
translations.
2014-10-31 20:15:17 -04:00
Kevin Brown
8e70642b87 Lint the Gruntfile 2014-10-31 19:12:27 -04:00
Kevin Brown
e943f6ef08 Revert "Fixed Select2 jumping around in Chrome"
This reverts commit 0daee34626.
This results in artifacts being displayed in Chrome, and doesn't
fix the other jumping issue.
2014-10-31 18:27:33 -04:00
Kevin Brown
1de4be3749 Fixed TypeError when destroying Select2
This fixes #2587.
2014-10-31 18:15:32 -04:00
Kevin Brown
7581fa5708 Merge pull request #2588 from fabdouglas/patch-8
Redirect the focus of original input to Select2
2014-10-31 18:13:47 -04:00
Kevin Brown
0daee34626 Fixed Select2 jumping around in Chrome
This fixes #2769, where Select2 will jump around because of how
focus moves to the original element when selections are made.

Because absolute positioning pushed the original element out of the
viewport, bringing it back into the viewport should be the best
fix.
2014-10-31 18:10:13 -04:00
Kevin Brown
0ed9e0283d Merge pull request #2775 from Splaktar/patch-1
Update link for AngularUI
2014-10-31 16:32:56 -04:00
Kevin Brown
f16eb6c621 Merge pull request #2776 from bjornjohansen/master
Replaced nonexistent locale "no" with "nb" (Norwegian Bokmål).
2014-10-30 11:51:11 -04:00
Bjørn Johansen
d1c19eb012 Added the formatMatches string 2014-10-29 22:36:54 +01:00
Bjørn Johansen
3a9896dc4b Replaced nonexistent locale "no" with "nb" (Norwegian Bokmål). Added space before ellipsis for correct punctuation. 2014-10-29 22:13:48 +01:00
Michael Prentice
9ff939b534 Updated AngularJS link to HTTPS
HTTPS everywhere
2014-10-29 12:45:07 -04:00
Michael Prentice
fd9006047c Updated link for AngularUI
They have deprecated the original ui-select2 directive in favor of the new and better supported ui-select directive. This happened a couple weeks ago.
2014-10-29 12:41:03 -04:00
Kevin Brown
dd323687f3 Merge pull request #2364 from joshuajonah/master
Stopped refresh to top when `closeOnSelect: false`
2014-10-24 18:27:25 -04:00
Valdas Petrulis
c1f338cfbf Dont update the results if the term hasn't changed.
https://github.com/ivaynberg/select2/issues/2751
2014-10-23 10:04:39 +03:00
Valdas Petrulis
0cc0ac43f5 Fixed not to break use case: setting the new value after someone was just searching with a different value
https://github.com/ivaynberg/select2/issues/2751
2014-10-22 16:34:28 +03:00
Kevin Brown
f4f09c9d7e Dropping the new translation for now 2014-10-21 21:44:49 -04:00
Kevin Brown
86cd7245d2 Working on the contributor pages 2014-10-21 21:44:01 -04:00
Kevin Brown
19033f60f7 Added disabled example 2014-10-21 21:44:01 -04:00
Kevin Brown
5dd7df33bb Allow programmatic access of Select2 2014-10-21 21:44:01 -04:00
Kevin Brown
5dd5ad93a6 Ensure that the highlighted result is visible
When opening the dropdown, the highlighted result will not always
be scrolled into view if it isn't already.
2014-10-21 21:44:01 -04:00
Kevin Brown
a728d948c1 Added some content to the tagging section 2014-10-21 21:44:01 -04:00
Kevin Brown
559a93bcb6 Added basic implementation of tags
Tags no longer takes an array, as pre-existing tags should already
exist as options in the data adapter.  A compatibility module will
later be added to convert tag data that is passed in to array data.

Tags allow for users to enter their own options, which will be
added to the beginning of the results list.
2014-10-21 21:44:01 -04:00
Kevin Brown
9e130956fc Better compatibility with array data
When using array data, and an option is selected, the data that is
attached to the DOM element will be run through `item` and should
have any private, automatically generated attributes added and
merged with it.
2014-10-21 21:44:00 -04:00
Kevin Brown
72ae0da879 Only generate result ids when the container has an id 2014-10-21 21:44:00 -04:00
Kevin Brown
cdfa0499f4 Accessibility matches better
Now the accessibility for the single select box better matches what
is picked up for a native select.

This fixes an issue with us always setting `aria-activedescendant`,
which caused Orca to always say the full path to the selected
result, instead of saying that the box was a combobox with a
selection. This means that the `aria-activedescendant` attribute
will now only be set when the dropdown is open.

This also switches the results list from a listbox to a tree, which
is what Firefox tells screen readers that a standard select is.
Combined with a change to use `role=group` and `aria-label` for
option group labels, screen readers will now announce the group
that they are in as well.
2014-10-21 21:44:00 -04:00
Kevin Brown
7c8601d33b Better accessibility for results
Options are correctly called out as focus moves around the results
list.
2014-10-21 21:44:00 -04:00
Kevin Brown
00a31df47a Generate more consistent ids
A global id is generated for the container, and each further id
builds off of the global id.
2014-10-21 21:44:00 -04:00
Kevin Brown
e018a6f69e Changed tests to not use deepEqual
We should only be checking the option values that matter, such as
`id` and `text`, instead of checking all of the option values. This
will prevent unexpected breaking when new properties are added to
the options.

Existing properties should be covered by tests to avoid regressions.
2014-10-21 21:44:00 -04:00
Kevin Brown
9102cf9473 Fixed keyboard scrolling
Now when scrolling through results with the keyboard, the
highlighted option will always be visible.
2014-10-21 21:44:00 -04:00
Kevin Brown
9ada3712f7 Single select accessibility
Now the Select2 instance is correctly recognized as a combobox, and
the selected option is read aloud when it is focused, just like in
a standard select box.

This works by generating semi-random ids that are used for the
ARIA attributes.  These are not intended to be consistent by any
means, they are just generated to make the instance accessible by
screen readers.
2014-10-21 21:44:00 -04:00
Kevin Brown
8dfd6d6960 Add more keyboard support
When the main container is focused, you can now move the highlighted
result by using the up and down arrows on the keyboard.

This does not yet keep the highlighted result visible at all times,
and it only is implemented on single selects, but that will come in
the future.
2014-10-21 21:44:00 -04:00
Kevin Brown
cc9419928e Working on accessibility
This makes quite a few changes, one of the major ones being the
removal of classes for marking options as selected or selectable,
and instead using the ARIA attributes which should already be
present.
2014-10-21 21:44:00 -04:00
Kevin Brown
e601e33ff3 Added a base class for the selection container 2014-10-21 21:44:00 -04:00
Kevin Brown
a07fc21815 Added remove button on multiple select choices 2014-10-21 21:43:59 -04:00
Kevin Brown
3d1dc36711 Added support for placeholders
Placeholder support has been implemented as a separate module, so
any selection container should be able to be decorated and get
instant placeholder support. It hooks into the updating method of
selections, and determines when to display the placeholder based
on the options that are being updated.

It works in the same way as the old placeholders. If no options
are selected and being displayed, like in the case of a multiple
select, then the placeholder will always be shown.  If one option
is being displayed, and the id of the placeholder matches the id
of the selected element, then the placeholder will be shown.  This
is similar to the functionality that was present in Select2 2.x,
where the placeholder could be passed in as an object that would
be compared to the selection.

This still requires that, for single selects, the first element
must match the placeholder id.  Because the default placeholder id
is a blank string, this will maintain backwards compatibility with
past versions where the first option should be blank.  This can
still be overridden to point at a different id, keeping support
for systems where the placeholder doesn't use a blank value.

**Note:** This does not hide the blank option for single selects,
but that will still be maintained for backwards compatibility
within the results module.  It will not depend on a placeholder
being present, but instead will hide any options with blank text.
2014-10-21 21:43:59 -04:00
Kevin Brown
5cf0dbf114 Visibility of the search can be controlled 2014-10-21 21:43:59 -04:00
Kevin Brown
5b98f690c1 Fixed examples page 2014-10-21 21:43:59 -04:00
Kevin Brown
1aff36d28f Add internal support for sorting options 2014-10-21 21:43:59 -04:00
Kevin Brown
4f8fb28d93 Add backwards compatibility with the old matcher
This adds a module for the old matcher, so users can decorate a
data adapter with the module to get the old matcher functionality.

The third parameter to the old matcher, the full element, will
always be the full object now. This does not match the old
functionality, where the third parameter for a `<select>` element
would be the `<option>` element.
2014-10-21 21:43:59 -04:00
Kevin Brown
6d5b0a6c59 Add getters and setters for options
This also gets an object set up that handles the default options.
2014-10-21 21:43:59 -04:00
Kevin Brown
d0fe07f954 Added tests for the query function 2014-10-21 21:43:59 -04:00
Kevin Brown
6375e2ee09 Working on searching results 2014-10-21 21:43:59 -04:00
Kevin Brown
fa3495de24 Drop the playground 2014-10-21 21:43:59 -04:00
Kevin Brown
845f245e1c Fixed sizing of the new select element 2014-10-21 21:43:59 -04:00
Kevin Brown
27ac50a854 Fixed problems with non-string ids
We have to enforce ids being strings as the values of options within
a select will always be an id.  This fixes an issue that we had with
array selections not being highlighted in the results.
2014-10-21 21:43:59 -04:00
Kevin Brown
ac7e7dae24 Added example for disabled results 2014-10-21 21:43:59 -04:00
Kevin Brown
acd469c658 Added optgroup support 2014-10-21 21:43:58 -04:00
Kevin Brown
fd5603be11 Examples use groups now 2014-10-21 21:43:58 -04:00
Kevin Brown
c51a6d6cee Examples are good for now 2014-10-21 21:43:58 -04:00
Kevin Brown
d386849c1f Started building out the examples
This also adds the `select2` function back to jQuery, so you can
still initialize Select2 using the old syntax.
2014-10-21 21:43:58 -04:00
Kevin Brown
4ae3439dbc Started building the docs site 2014-10-21 21:43:58 -04:00
Kevin Brown
c74aeeb5c8 Start working on docs 2014-10-21 21:43:58 -04:00
Kevin Brown
e48d8c2218 Minify dist again 2014-10-21 21:43:58 -04:00
Kevin Brown
9c6a18700b Improved the jshint config a bit more 2014-10-21 21:43:58 -04:00
Kevin Brown
cbfe23eb52 Added basic tests for select2/data/array 2014-10-21 21:43:58 -04:00
Kevin Brown
5f176b66f2 Add tests for select data adapter 2014-10-21 21:43:58 -04:00
Kevin Brown
26986cacb6 Fix undefined variable, rebuild dist 2014-10-21 21:43:58 -04:00
Kevin Brown
f0b819336a Linted select2/data/* and select2/dropdown/* 2014-10-21 21:43:58 -04:00
Kevin Brown
981432ee89 More linting on select2/* 2014-10-21 21:43:58 -04:00
Kevin Brown
f0e3968989 Linted select2/selection/* 2014-10-21 21:43:58 -04:00
Kevin Brown
898db2e74a Linted select2/utils
For the most part this was semicolon fixes, but there was a
function, `calledMethod`, which did need to be moved out of the
loop.
2014-10-21 21:43:58 -04:00
Kevin Brown
ed6eb4ff92 Dropped old js files 2014-10-21 21:43:57 -04:00
Kevin Brown
0bc56a922b Linted tests 2014-10-21 21:43:57 -04:00
Kevin Brown
aebc7ce0d2 Added very basic jshint config 2014-10-21 21:43:57 -04:00
Kevin Brown
114732ec25 Broke out a base data adapter
This should allow us to create a basic interface that all adapters
must follow.
2014-10-21 21:43:57 -04:00
Kevin Brown
08ac13d510 Two spaces indentation for tests 2014-10-21 21:43:57 -04:00
Kevin Brown
5a17226ba6 Minify assets 2014-10-21 21:43:57 -04:00
Kevin Brown
0f30667f01 Added very basic AJAX adapter 2014-10-21 21:43:57 -04:00
Kevin Brown
cbc2d2f3ec Trigger events when the dropdown opens and closes 2014-10-21 21:43:57 -04:00
Kevin Brown
315b1b3c12 Added array adapter
This should add support for dynamically generated array data that
still works with a basic `<select>` element.
2014-10-21 21:43:57 -04:00
Kevin Brown
3e05e32eda Small changes in preparation for more adapters 2014-10-21 21:43:57 -04:00
Kevin Brown
d57f8b2203 Clicking on a selected option triggers an unselect event 2014-10-21 21:43:57 -04:00
Kevin Brown
94b460f930 Limit the explicit coupling between adapters 2014-10-21 21:43:57 -04:00
Kevin Brown
0081716841 Header and footer decorators
Added examples of header and footer decorators.
2014-10-21 21:43:57 -04:00
Kevin Brown
f82202036f Added example
People have asked about getting the multiple selection container
to show for a single selection.  This is a basic example that shows
that it could easily be done now.
2014-10-21 21:43:57 -04:00
Kevin Brown
14d3d99868 Basic multiple select implementation 2014-10-21 21:43:57 -04:00
Kevin Brown
1197960a4e Add proof-of-concept decorator for clearing 2014-10-21 21:43:57 -04:00
Kevin Brown
a25883c659 Add travis
Travis can't be enabled unless we put a minimal file on the `master`
branch.
2014-10-21 21:43:57 -04:00
Kevin Brown
792133ce5c Added Utils.Decorate and tests
This adds decorator support in a very basic way, but enough that
it doesn't take a lot of effort to get it implemented.

This also starts work on splitting things out for theming.
2014-10-21 21:43:56 -04:00
Kevin Brown
2ca14517bb Add classes to results options 2014-10-21 21:43:56 -04:00
Kevin Brown
01c3dc5886 Basic dropdown is in place 2014-10-21 21:43:56 -04:00
Kevin Brown
ae57cf6460 More work on rendering
Switched all of the divs to spans, as the container should not be
a block by default.
2014-10-21 21:43:56 -04:00
Kevin Brown
297a06f8d4 Working on rendering everything 2014-10-21 21:43:56 -04:00
Kevin Brown
06e195b025 Work on the AMD scaffolding
This will make it far easier to ensure that components are in their
own modules as well as make it possible to have custom builds of
Select2.
2014-10-21 21:43:56 -04:00
Igor Vaynberg
c0d9316ce2 clean up playground 2014-10-21 21:43:56 -04:00
Igor Vaynberg
bb63555ab2 mobile playground and some wip on architecture 2014-10-21 21:43:56 -04:00
Igor Vaynberg
68f91c3f1b added footer extension 2014-10-21 21:43:56 -04:00
Igor Vaynberg
08af2fb629 decorators idea 2014-10-21 21:43:56 -04:00
Igor Vaynberg
76933017bf out with the old 2014-10-21 21:43:56 -04:00
Valdas Petrulis
03a15e070b After clearSearch nextSearchTerm is not cleared
https://github.com/ivaynberg/select2/issues/2753
2014-10-21 12:42:28 +03:00
Kevin Brown
5a184921b6 Merge pull request #2726 from KayLeung/patch-1
Fixes results count in accessible text
2014-10-16 17:41:22 -04:00
Kevin Brown
30ab851142 Merge pull request #2747 from arthur-peka/master
fixing minor errors e.g. redefined variable
2014-10-16 10:40:44 -04:00
Arthur
35f706afbd fixing minor errors e.g. redefined variable 2014-10-16 14:27:19 +03:00
Kevin Brown
ea266346be Merge pull request #2665 from bor0/master
Items with spaces can be added infinite times on multiselects
2014-10-13 20:39:17 -04:00
od3n
2afc930a12 updated Indonesian translation 2014-10-11 10:33:22 +08:00
od3n
de5fe02f5e updated Malay translation 2014-10-11 10:32:31 +08:00
Kevin Brown
073f4cb087 Merge pull request #2728 from demkalkov/master
'document.body' instead of 'body' selector
2014-10-10 12:05:26 -04:00
Dementiy Kalkov
e716ad01e1 'document.body' instead of 'body' selector 2014-10-10 13:32:58 +04:00
Kay.L
b7a7dd064e Fixes results count in accessible text
Only counts the selectable items in the list. (filter out selected item)
2014-10-09 13:36:00 +08:00
Kevin Brown
eb0b9ff731 Merge pull request #2690 from marcelod/patch-1
Update Brazilian Portuguese translation
2014-10-08 21:24:14 -04:00
Kevin Brown
c1df0aa942 Merge pull request #2702 from dgroux/master
allow formatSelection to return a jQuery object
2014-10-08 21:12:01 -04:00
Boro Sitnikovski
8644ccb68b Items with spaces can be added infinite times on multiselects
Add optional parameter transformVal that allows the user to define transformation for splitVal

Example demos:
(Infinite spaces, default transformVal):
http://jsfiddle.net/DV23t/9/

(No infinite spaces, transformVal = function (x) { return x; }):
http://jsfiddle.net/DV23t/12/
2014-10-08 23:28:41 +02:00
Kevin Brown
08ee57a03c Merge pull request #2720 from josmardias/fix-ie8-ie9
Fixing IE8 and IE9 issues on select2#3.5.1
2014-10-07 12:25:56 -04:00
Vitor Oliveira
4955be239d Testing if the object exists before use it
It's necessary to make the code compatible with IE8 and IE9.
2014-10-07 13:07:58 -03:00
Dylan Roux
d385dc512e allow formatSelection to return a jQuery object 2014-09-26 15:14:19 +02:00
Kevin Brown
c5c42eaf72 Merge pull request #2695 from junhanamaki/master
allow markups of subsequent formatLoadMore message
2014-09-25 16:45:59 -04:00
Kevin Brown
2b90de5012 Merge pull request #2679 from r0mille/master
fixes cutoff for bottom option when selecting with keyboard
2014-09-25 16:42:23 -04:00
junhanamaki
68070d0cac allow markups of subsequent formatLoadMore message
- setting message with html instead of text
- invoking escapeMarkup method before setting message
2014-09-23 20:48:18 +01:00
Marcelo Diniz
759b01926b Update Brazilian Portuguese translation
Add row `formatAjaxError` and update when `formatInputTooShort` value equal to 1
2014-09-18 13:27:53 -03:00
Kevin Brown
bfaaf8e6e5 Merge pull request #2674 from LuisGP/patch-2
Update select2_locale_es.js
2014-09-11 19:15:26 -04:00
romille
633d4e6b4b fixes cutoff for bottom option when selecting with keyboard 2014-09-11 17:45:59 -04:00
Kevin Brown
dc6b987def Merge pull request #2673 from LuisGP/patch-1
Update select2_locale_es.js
2014-09-11 07:50:00 -04:00
LuisGP
ef284de8b3 Update select2_locale_es.js
Added formatAjaxError string
2014-09-11 13:10:17 +02:00
LuisGP
438be4f537 Update select2_locale_es.js 2014-09-11 13:03:19 +02:00
Kevin Brown
d0d4bfb289 Merge pull request #2655 from DamianZ/master
bug fixes in languages
2014-09-08 15:14:12 -04:00
Damian Zajkowski
21628abb1a [fix] uproszczenie i poprawienie logiki dodawania suffiksów liczby mnogiej
Signed-off-by:Damian Zajkowski <damian.zajkowski@rst.com.pl>
2014-09-02 12:07:48 +02:00
Damian Zajkowski
bbb3722a9b [fix] secure fix, to prevent access to undefined array index
Signed-off-by:Damian Zajkowski <damian.zajkowski@rst.com.pl>
2014-09-02 11:12:31 +02:00
Damian Zajkowski
c2bd82f189 [fix] change undefined variable to the correct one
Signed-off-by:Damian Zajkowski <damian.zajkowski@rst.com.pl>
2014-09-02 10:52:42 +02:00
Kevin Brown
15133f6642 Merge pull request #2650 from mlocati/remove-utf8-bom
Remove UTF-8 BOM
2014-08-29 10:44:50 -04:00
Michele Locati
9f6f6059c7 Remove UTF-8 BOM
select2_locale_ar.js (and only it) contains the UTF-8 BOM: let's remove it.
2014-08-29 11:28:27 +02:00
Kevin Brown
8460e83df0 Merge pull request #2642 from b4oshany/master
Fixed JS breakage due to undefined variable, viewPortLeft.
2014-08-27 15:26:39 -04:00
Oshane Bailey
9207f23073 Fixed JS breakage due to undefined variable, viewPortLeft. 2014-08-26 22:24:33 -05:00
Kevin Brown
2a9db24c58 Add cdnjs to the README
This closes #2638.
2014-08-26 08:47:54 -04:00
Kevin Brown
93157214ad Merge pull request #2415 from santialbo/text-function
Add text function for formatResult and formatSelection
2014-08-22 18:37:07 -04:00
Kevin Brown
7505bb6d60 Merge pull request #2595 from scotam/drop-left-check
Adds check for enough room before switching right to left drop
2014-08-22 18:23:18 -04:00
Kevin Brown
4c59e16a27 Merge pull request #2591 from gsirin/patch-1
IE and compat mode :/
2014-08-21 19:12:57 -04:00
Kevin Brown
2e5538318e Merge pull request #2610 from torke1/patch-1
Prevent multiple select2-hidden-accessible span's
2014-08-21 18:58:17 -04:00
Kevin Brown
c814143df8 Merge pull request #2609 from ivaynberg/issue_1535_contributor_guidelines
Add contributing guidelines
2014-08-21 17:38:02 -04:00
Kevin Brown
4645183054 Merge pull request #2227 from fabdouglas/patch-6
Ignore focus and error on IE7 for disabled select2
2014-08-17 16:49:25 -04:00
Kevin Brown
d6d9f95135 Merge pull request #2615 from mikaelkael/patch-1
Syntax error with IE embedded as ActiveX in fat client
2014-08-14 09:27:00 -04:00
Mickael Perraud
afdb0da5f3 Syntax error with IE embedded as ActiveX in fat client
Syntax error with IE embedded as ActiveX in fat client
2014-08-14 13:59:09 +02:00
torke1
651047d52a Issue #2412
Maybe the fix is a bit ugly, but what it does is to make sure that we don't already have a select2-hidden-accessible span before we create a new one. Tested in several scenarios in our application and has solved the issue for us.
2014-08-13 17:27:07 +02:00
Kevin Brown
6df22fc4a8 Merge pull request #2580 from Phazeshift/master
Fixing 'Type mismatch' exception in destroy in IE11
2014-08-13 08:17:10 -04:00
Kevin Brown
0b3a690a29 Fixed a few links 2014-08-12 20:52:10 -04:00
Kevin Brown
3e77930b8a Add IRC information to README 2014-08-12 20:50:38 -04:00
Kevin Brown
cfcd555471 Added initial contributing guidelines 2014-08-12 20:45:50 -04:00
Rhodri Pugh
d2c9b9aac3 only switch right to left drop when enough room available 2014-08-07 11:48:55 +01:00
Gökhan Sirin
487b329893 IE and compat mode :/
Fixed 2 minor typos which prevent select2 to work in IE compat mode.
2014-08-06 18:24:48 +02:00
Fabrice Daugan
9d19b7f701 Redirect the focus of original input to Select2
Redirect the focus of original input to the "focus" event of Select2.
this way, we get back the accessible label for feature of previous Select2 versions.
2014-08-04 22:50:22 +02:00
Kevin Brown
3c17d3b5bb Call out documentation a bit more explicitly
This should help fix the problem with users not being able to find
the branch when trying to update the documentation.
2014-08-01 10:36:09 -04:00
Phazeshift
39382fab08 Fixing 'Type mismatch' exception in destroy in IE11 2014-08-01 12:19:19 +01:00
Kevin Brown
a6c9b12b82 Merge pull request #2576 from rinogo/master
Basic CSS gradient fix for choices
2014-07-31 20:24:58 -04:00
Rich Christiansen
75e089f3a1 Basic CSS gradient fix for choices
The “top” on the other styles (-moz-linear-gradient,
-webkit-linear-gradient, etc) signifies “start at the top”.  The
equivalent basic “linear-gradient” style is “to bottom”, not “to top”.
2014-07-31 10:10:34 -06:00
Kevin Brown
7c1acdbe5e Merge pull request #2557 from davidwparker/patch-1
Update angular.js website
2014-07-23 12:04:25 -04:00
David Parker
a17becd38c Update angular.js website
Make sure it's http:// so it actually has the real URL.
2014-07-23 10:02:31 -06:00
Kevin Brown
c13b284c74 Change the release remote back to origin 2014-07-22 19:00:44 -04:00
Kevin Brown
362751acd4 modified version identifiers in descriptors for release 3.5.1 2014-07-22 18:58:58 -04:00
Kevin Brown
140efeb28c Merge pull request #2546 from marcovtwout/patch-1
Update select2_locale_nl.js
2014-07-19 20:59:52 -04:00
Kevin Brown
d939794b4c Merge pull request #2550 from pulzarraider/patch-1
Fixed slovak translation
2014-07-19 20:59:11 -04:00
Andrej Hudec
65164fbc90 Fixed slovak translation 2014-07-19 11:46:29 +02:00
marcovtwout
74226e9f47 Update select2_locale_nl.js
Improve translation.
2014-07-17 16:07:49 +02:00
Kevin Brown
f579cbb43c Merge pull request #2540 from futhr/patch-1
Fixes updated translation pattern.
2014-07-16 18:00:56 -04:00
Tobias Bohwalli
e7ad0b00cd Fixes updated translation pattern. 2014-07-16 23:58:13 +02:00
Kevin Brown
f99560508e Merge pull request #2529 from OtkurBiz/master
Added Uyghur translation
2014-07-15 17:45:51 -04:00
boyaq
f330cb2124 Changed Uyghur translation 2014-07-11 19:02:57 +08:00
boyaq
feedfe21de Merge remote-tracking branch 'upstream/master' 2014-07-11 19:01:16 +08:00
boyaq
d8a9f697fb added Uyghur translation 2014-07-11 18:54:33 +08:00
boyaq
6695f88b70 added Uyghur translation 2014-07-11 18:53:23 +08:00
Kevin Brown
c4cba75b5a Merge pull request #2507 from ivaynberg/i18n_backport
Bring locale improvments to 3.5.x
2014-07-03 09:58:23 -04:00
Jonas Pyfferoen
6de07310c8 Fix da language apply
Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2014-07-01 19:17:21 -04:00
Jonas Pyfferoen
8fc069df45 Added some missing ;
Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2014-07-01 19:17:21 -04:00
Jonas Pyfferoen
e2e476c196 Remaining syntax + indentation
Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2014-07-01 19:17:21 -04:00
Jonas Pyfferoen
8243f8191c Syntax fix
Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2014-07-01 19:17:21 -04:00
Jonas Pyfferoen
6b92b1c211 Immediately apply language when including
Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2014-07-01 19:17:21 -04:00
Jonas Pyfferoen
837715f939 Fixes #2278
Instead of instantly applying the translations, add them to an array.
That way users can include the language files that their site supports
and apply the required language using $.extend($.fn.select2.defaults,
$.fn.select2.locales["nl"]);

Signed-off-by: Kevin Brown <kevin@kevinbrown.in>
2014-07-01 19:17:20 -04:00
Kevin Brown
79b5bf6db9 Merge pull request #2483 from hitosu/master
filter 229 keyCodes (input method editor is processing key input)
2014-06-26 20:18:09 -04:00
Igor Vaynberg
724d2f700f Merge pull request #2491 from Ermish/master
Added Ajax Error Handling
2014-06-26 08:15:05 -07:00
Ermish
36db1f1966 Revert "gitignore"
This reverts commit d19bb1c32c.
2014-06-25 20:19:21 -04:00
Ermish
d19bb1c32c gitignore 2014-06-25 19:44:49 -04:00
Ermish
b505601629 Added Ajax Error Handling
Added an error message when an ajax error occurs. This can be
overridden through the select2 option “formatAjaxError”.
2014-06-25 19:40:08 -04:00
Vasily Kazantsev
7c1ceb8fd9 filter 229 keyCodes (input method editor is processing key input) 2014-06-22 19:07:36 +03:00
Kevin Brown
fdad112682 Merge pull request #2481 from sbilstein/master
Fixes #2434 Prevents whitespace only tags from being created
2014-06-22 11:00:37 -04:00
Siegfried Bilstein
2690053010 Fixes #2434 Tagging support allows creation of tags that are only whitespace 2014-06-21 11:37:53 -07:00
Kevin Brown
a73d1b2b52 Merge pull request #2465 from rvitaliy/patch-1
fixed destroy
2014-06-17 21:00:51 -04:00
Kevin Brown
5daca7424e Merge pull request #2466 from tjperovich/patch-1
Fix there/their typo
2014-06-17 21:00:23 -04:00
tjperovich
c0cc6c9f94 Fix there/their typo 2014-06-17 10:11:09 -04:00
Vitaliy Ryaboy
78526a3860 Update select2.js
fixed destroy
2014-06-17 13:47:31 +02:00
Kevin Brown
0d9893936c modified version identifiers in descriptors for release 3.5.0 2014-06-16 19:29:46 -04:00
Kevin Brown
5a7d250071 Merge pull request #2444 from surgeforward/undefined-top
Fix error: Cannot read property 'top' of undefined
2014-06-15 16:22:04 -04:00
Kevin Brown
3fee8fc7e6 Detect classes separated by multiple spaces
This detects classes separated by multiple spaces and will trim
extra spaces surrounding the class attribute.

This closes the following issue: https://github.com/ivaynberg/select2/issues/2358
2014-06-11 20:08:57 -04:00
Kevin Brown
9e17f63013 Normalized select2-selecting event
This normalizes the `select2-selecting` event so the object is
returned as `choice` in the event data.  While the documentation
points to the name being `object`, all other events return the
affected data object as `choice`.

This closes the following issue: https://github.com/ivaynberg/select2/issues/2340
2014-06-11 20:02:23 -04:00
Kevin Brown
b13c9b474d Small formatMatches change for single results
This changes `formatMatches` to notify the user that they can
select the single result.  This is a more clear result compared to
the previous one.

This closes the following issue: https://github.com/ivaynberg/select2/issues/2329
2014-06-11 19:52:08 -04:00
Cameron Spear
0675805621 Fix error: Cannot read property 'top' of undefined
Lines [1499](d487fc58a8/select2.js (L1499)) and [1509](d487fc58a8/select2.js (L1509)) make a call to `child.offset().top`. I don't know what's causing `child.offset()` to return undefined, but it is and it's breaking Select2 so that I can't select the last item in the list (this error occurs when I try hovering over or clicking on the last item in a list).

I can try and create a reduced case, but this fix is 100% backward compatibe, passes all the tests you have for the project and has a 0% chance of breaking anyone's working code. With this patch, my dropdown works just fine. At worst, this does *nothing* for people, at best, it fixes a rare edge case. Like my edge case. And I'm a pretty important person to me.
2014-06-06 19:04:14 -07:00
Kevin Brown
172f973d7b Merge pull request #2436 from asapach/patch-2
updated russian translation to match template
2014-06-05 12:00:03 -04:00
Kevin Brown
108849038a Merge pull request #2435 from asapach/patch-1
updated translation template to match master
2014-06-05 11:27:01 -04:00
Aliaksei Sapach
4871aa5469 updated russian translation
now matches the latest template, see #2435
2014-06-05 17:41:23 +03:00
Aliaksei Sapach
f6597ad1c5 updated translation template to match master 2014-06-05 17:05:44 +03:00
Kevin Brown
c23f978262 Merge pull request #2361 from rjbijl/rtl
Better support for RTL languages
2014-06-03 21:26:52 -04:00
Santi Albo
db86f19552 Remove added line 2014-05-28 18:17:31 +01:00
Santi Albo
b8ce36a65e Add text function for formatResult and formatSelection 2014-05-28 18:13:26 +01:00
Kevin Brown
d487fc58a8 Merge pull request #2360 from ycdtosa/master
changes on updateResults, populate by @cervengoc on #781
2014-05-27 19:09:38 -04:00
Kevin Brown
f544f9d9ab Merge pull request #2367 from gschizas/master
Added Greek accented characters to ignorable diacritics
2014-05-27 18:56:07 -04:00
Kevin Brown
fba74e3ccd Merge pull request #2363 from thereloaded/master
query as third parameter to ajax results callback
2014-05-27 16:50:52 -04:00
Kevin Brown
a29dfc2e2a Merge pull request #2410 from redbmk/master
IE8 does not support Array.prototype.forEach #2339
2014-05-27 16:46:07 -04:00
Kevin Brown
5a8394ba09 Merge pull request #2401 from Holek/patch-1
Reword Polish string for formatInputTooShort
2014-05-23 20:43:31 -04:00
Michał Połtyn
9d44e06dc1 Reword Polish string for formatInputTooShort 2014-05-23 22:36:51 +01:00
Braden M. Kelley
88c6a63937 IE8 does not support Array.prototype.forEach #2339 2014-05-23 10:29:25 -07:00
Kevin Brown
25f89bf49b Merge pull request #2388 from cnicodeme/patch-1
Update select2.js
2014-05-20 09:03:36 -04:00
Cyril Nicodème
02d6e88747 Update select2.js
Fix an exception when called "destroy" on a still opened dropdown.
2014-05-20 09:30:35 +02:00
Kevin Brown
2a0c8444fb Merge pull request #2377 from TheSisb/master
Handling mousemove more delicately
2014-05-19 19:41:18 -04:00
Kevin Brown
2a9407434d Merge pull request #2385 from johngallagher/patch-1
Merge examples from wiki
2014-05-19 09:32:38 -04:00
John Gallagher
a5b6ee431b Merge examples from wiki 2014-05-18 05:31:42 +01:00
TheSisb
e2cd841fe8 Handling mousemove more delicately
Mousemove fires very frequently and is a sure way of killing any app's FPS.  This tweak makes sure it is only bound when it is in fact needed.
2014-05-14 15:25:05 -07:00
George Schizas
827a549ba8 Reverted formatting of diacritics variable, now is again in one line 2014-05-13 17:11:14 +03:00
George Schizas
68c64a1129 Enabled Greek for diacritics ignoring 2014-05-13 17:05:46 +03:00
George Schizas
df43e1a1ec fixed word wrapping for DIACRITICS variable 2014-05-13 16:59:41 +03:00
ycdtosa
0f8a85b994 update populate at formatResults to use bulk append of nodes
this will make a small (25%) improvement on speed.
2014-05-13 12:27:52 +02:00
ycdtosa
c14f45cb6c Revert "changes on updateResults, populate by @cervengoc on #781"
This reverts commit 12e0de21ae.
2014-05-13 09:54:00 +02:00
thereloaded
49a86e21ed added query to function head jsdoc block 2014-05-13 09:34:16 +02:00
Robert-Jan Bijl
5470a453f9 Getting a few more pixels perfect in the RTL mode for multiple selects 2014-05-13 09:05:37 +02:00
Robert-Jan Bijl
fb91adaa57 More RTL style fixes, now for the multiple select 2014-05-13 08:44:20 +02:00
Joshua Jonah
64256f27f2 Stopped refresh to top when closeOnSelect: false
Not really sure how the noHighlightUpdate variable is supposed to work, it is undefined all the time so it appears to be broken. I just referred to `this.opts.closeOnSelect` to get the status directly.
2014-05-12 21:44:27 -04:00
thereloaded
f07bab5a6b query as third parameter to ajax results callback
for e.g. proper cache implementation it is necessary to have the complete query in the results callback of the ajax function. to not break backwards compatibility i added it as third parameter and did not replace query.page parameter
2014-05-12 19:35:59 +02:00
Robert-Jan Bijl
06b93b2703 Better support for RTL languages
CSS changes to better support RTL languages. Most notable is the positioning of the arrow on the left side of the select2 for RTL
2014-05-12 15:34:40 +02:00
ycdtosa
12e0de21ae changes on updateResults, populate by @cervengoc on #781
use string concatenation instead of DOM manipulation at populate. This
does gives about a 45% speed boost as measured with chrome v35. Code by
@cervengoc on #781
2014-05-12 11:39:54 +02:00
Kevin Brown
52425f93c8 Merge pull request #2355 from stephane/i18n
I18n
2014-05-09 15:52:31 -04:00
Stéphane Raimbault
00bad439bc Add note about position of locale file 2014-05-09 21:09:07 +02:00
Stéphane Raimbault
1d26b2bc17 Remove execution flags on select2_locale_zh-TW.js 2014-05-09 21:09:07 +02:00
Stéphane Raimbault
c37640720e Improve French translation 2014-05-09 21:09:07 +02:00
Kevin Brown
8fb7c15b4e Merge pull request #2350 from soichih/master
Fixed the issue where multi-line item inside multi list will touch the ..
2014-05-07 22:02:55 -04:00
Kevin Brown
765cdbfdad Merge pull request #2346 from sroe/patch-1
formatMatches translation added
2014-05-07 22:01:56 -04:00
Soichi Hayashi
09003853e4 Fixed the issue where multi-line item inside multi list will touch the right end of the container 2014-05-07 17:24:07 +00:00
sroe
7bf2f2eb75 formatMatches translation added
formatMatches translation added.
2014-05-06 10:41:08 +02:00
Kevin Brown
c864392ffb Merge pull request #2326 from dawnhammond/feature/2084
Fix issue with dropdown menu getting stuck in IE when using multiselect
2014-05-05 19:23:36 -04:00
Kevin Brown
85a194dd0f Merge pull request #2341 from seferov/locale_az
Azerbaijani translation added
2014-05-05 10:44:48 -04:00
seferov
d4fb3a3b00 typo fixed 2014-05-03 10:24:13 +03:00
seferov
344a4b19e2 Azerbaijani translation added. 2014-05-03 10:22:54 +03:00
Kevin Brown
ab6d38f9b4 Merge pull request #2338 from redbmk/master
keyword `this` inside closures referring to wrong object
2014-05-01 12:00:50 -04:00
Braden M. Kelley
2133129a74 keyword this inside closures referring to wrong object 2014-05-01 08:54:32 -07:00
Kevin Brown
ea3c6766a2 Merge pull request #2164 from colemanw/evaluateFix
Provide context for evaluated functions
2014-05-01 10:08:42 -04:00
Kevin Brown
988eccb557 Merge pull request #2332 from FallSe7en/master
Unbind onpropertychange event handler on destroy for IE8-10
2014-05-01 10:05:20 -04:00
Kevin Brown
0db21bb26d modified version identifiers in descriptors for release 3.4.8 2014-05-01 09:50:32 -04:00
Kevin Brown
fb6ef71ba0 Merge pull request #2337 from snrmwg/master
Query term in tags function in select2 3.4 #2141
2014-05-01 09:44:34 -04:00
Marc Schneider
ca859e4e42 Query term in tags function in select2 3.4 #2141 2014-05-01 15:35:32 +02:00
Kevin Brown
e9ed6b9182 modified version identifiers in descriptors for release 3.4.7 2014-04-30 19:28:04 -04:00
Justin Lei
0313630c57 Unbind onpropertychange event handler on destroy for IE8-10 2014-04-29 17:08:23 -07:00
Kevin Brown
7840a575c6 Merge pull request #2328 from openwide-java/update-french-translation-20140429
Update French translation
2014-04-29 13:52:55 -04:00
Guillaume Smet
c9019afe1f Update French translation 2014-04-29 19:47:20 +02:00
Dawn Hammond
796661a11d change condition to use length 2014-04-28 16:49:08 -05:00
Dawn Hammond
e3751422f0 Fix focus issue when select-input has placeholder 2014-04-28 14:15:50 -05:00
Kevin Brown
00a019b227 Merge pull request #2324 from tunguski/master
Fix for dots in id
2014-04-28 12:32:08 -04:00
marek
97b897abe0 Set id in unescaped version. 2014-04-28 13:12:28 +02:00
marek
3c1482ae45 Replace dots with underscores in event handler names. Dots are processed in special way in jQuery on/off. 2014-04-28 12:59:17 +02:00
Kevin Brown
8b463bff14 Merge pull request #2287 from eduardojmatos/master
Testing if the dropdown is opened before call positionDropdown
2014-04-26 19:28:59 -04:00
Kevin Brown
1c7706ad9e Merge pull request #2307 from IFours/master
Recalculation dropdown height if dropdownAutoWidth is true
2014-04-26 16:16:45 -04:00
Kevin Brown
9e505cdf27 Merge pull request #2313 from FallSe7en/master
Cleanup jQuery DOM elements on destroy
2014-04-26 15:59:47 -04:00
Kevin Brown
7268973138 Merge pull request #2320 from kartik-v/patch-1
Yii 2.0 widget implementation
2014-04-26 15:52:41 -04:00
Kevin Brown
6b689fc4e0 Merge pull request #2302 from ivaynberg/issue_1541
Only disable keyboard focusing for touch devices
2014-04-26 15:46:26 -04:00
Kartik Visweswaran
b5cdf552b1 Yii 2.0 widget implementation
Updated implementation for Yii framework 2.0
2014-04-26 12:02:57 +05:30
Kartik Visweswaran
12d7142652 Update README.md 2014-04-26 12:01:28 +05:30
Kartik Visweswaran
47c1538e4e Yii 2.0 widget implementation
Updated implementation for Yii 2.0
2014-04-26 11:59:17 +05:30
Justin Lei
f9be3c039c Issue 234368 for the Chromium project is fixed now (Issue #1099) 2014-04-23 17:22:58 -07:00
Justin Lei
6156abc2a8 Cleanup jQuery DOM elements on destroy 2014-04-23 17:14:13 -07:00
Kevin Brown
514988ee54 Merge pull request #2282 from dandv/patch-2
Mention CDN hosting
2014-04-22 20:52:24 -04:00
Kevin Brown
086f977b9a Merge pull request #2303 from snrmwg/master
Query term in tags function in select2 3.4 #2141
2014-04-22 20:49:22 -04:00
Kevin Brown
2e79f5eb4f Only disable keyboard focusing for touch devices [Fixes #1541]
This fixes the issue [1] by first checking to see if the current
device is a touch device.  The other issue [2] that occured because
of the original fix [3] is now fixed, because the hidden inputs
are always focused by default on non-touch devices.

The code used for detecting touch devices was pulled from
StackOverflow [4].  Information on the reasoning behind this fix
can be found on GitHub [5].

[1]: https://github.com/ivaynberg/select2/issues/1541
[2]: https://github.com/ivaynberg/select2/issues/2223
[3]: d87e93dd45
[4]: http://stackoverflow.com/a/15439809/359284
[5]: https://github.com/ivaynberg/select2/issues/1541#issuecomment-39805859
2014-04-22 20:25:19 -04:00
IliaFours
ffddc48a24 Recalculation dropdown height if dropdownAutoWidth is true 2014-04-22 14:54:36 +03:00
Marc Schneider
42f2acd0aa Query term in tags function in select2 3.4 #2141 2014-04-21 00:18:19 +02:00
Kevin Brown
79e031fbdf Merge pull request #2241 from zocoi/master
Trap touch events within container
2014-04-18 18:52:40 -04:00
Kevin Brown
435b5369d8 Merge pull request #2293 from jorupp/master
Fix issue syncing CSS classes in IE9/10
2014-04-18 11:42:38 -04:00
jorupp
632595f530 Fix issue syncing CSS classes in IE9/10 2014-04-15 16:36:24 -05:00
Kevin Brown
00716adf65 Merge pull request #2286 from interestincode/patch-1
Update select2.js, fixes #781
2014-04-15 11:26:44 -04:00
Eduardo Matos
22d503f846 Avoid call 'positionDropdown' function if the container it's closed 2014-04-15 10:51:23 -03:00
interestincode
7c9c9612b5 Update select2.js
As suggested in https://github.com/ivaynberg/select2/issues/781#issuecomment-38979100, significantly improves search speed, going from unusable to snappy on IE on a list of almost 10,000 items with a custom query limiting it to 25 results. Uses 'uni range + named function' from http://jsperf.com/diacritics/18
2014-04-15 02:08:16 -07:00
Kevin Brown
24f4bbfefb Merge pull request #2257 from mkurz/title_fix
Copy title attribute from original element
2014-04-14 22:05:37 -04:00
Kevin Brown
f48df6f369 Merge pull request #2153 from 2color/patch-1
Fix a typo in the docs.
2014-04-14 21:30:47 -04:00
Kevin Brown
3cc3e6a4f3 Merge pull request #2281 from dandv/patch-1
List Bootstrap 3 and Meteor integrations
2014-04-14 18:17:58 -04:00
Dan Dascalescu
143341b0a2 Mention CDN hosting 2014-04-14 14:51:45 -07:00
Dan Dascalescu
759ccc93b6 List Bootstrap 3 and Meteor integrations
Since [bootstrap-tagsinput](https://github.com/TimSchlechter/bootstrap-tagsinput/issues/123) appears to be abandoned, Select2 seems like the best choice for Meteor.
2014-04-14 14:39:49 -07:00
Kevin Brown
100266bbb5 Merge pull request #2274 from thiagotalma/patch-1
Update select2_locale_pt-BR.js
2014-04-12 21:48:07 -04:00
Thiago Talma
1a7a218922 Update select2_locale_pt-BR.js
Fix typo
2014-04-12 22:45:54 -03:00
Eduardo Matos
3f43f459e9 Testing if the dropdown is opened before call positionDropdown, on events by resize, scroll and orientation 2014-04-11 14:02:11 -03:00
Kevin Brown
60d74da872 Merge pull request #2225 from davidfstr/fix_empty_placeholder
Allow an empty string to be used as the placeholder title.
2014-04-09 10:59:10 -04:00
Kevin Brown
77afdd899d Merge pull request #2256 from mkurz/xhtml_fix
xhtml compatibility
2014-04-09 07:37:29 -04:00
Matthias Kurz
bdb8840fb4 Copy title attribute from original element 2014-04-09 12:36:43 +02:00
Matthias Kurz
47005ede3a xhtml compatibility 2014-04-09 11:56:31 +02:00
Kevin Brown
8307d76f3e Merge pull request #2239 from antstorm/fix_leaking_clicks_2
Fix for "leaking clicks"
2014-04-08 07:25:39 -04:00
Hung Dao
70be47d84b Merge remote-tracking branch 'upstream/master' 2014-04-07 17:42:57 -07:00
Kevin Brown
45a97881de Merge pull request #2246 from mkurz/css_depth_fix
Css dept-* rules should start with 1 not 0
2014-04-06 19:59:01 -04:00
Matthias Kurz
a6d7ecc273 Css dept-* rules should start with 1 no 0 2014-04-06 17:29:45 +02:00
Hung Dao
534bbff06f trap touchstart touchend events within container 2014-04-03 17:06:08 -07:00
Anthony Dmitriyev
c77e159178 Another solution for clicks triggered on underlying elements 2014-04-03 17:28:13 +03:00
Kevin Brown
0d06066331 Merge pull request #2238 from mkurz/focus-fix
Prevent the cursor from setting it to initial position in IE
2014-04-03 09:01:30 -04:00
Kevin Brown
e801573328 Merge pull request #2236 from mkurz/destroy_fix
.destroy() should destroy all selected select2
2014-04-03 08:47:46 -04:00
Kevin Brown
43a598b372 Merge pull request #2216 from lboynton/fix-search-focus-on-mobile
Fix search focus on mobile
2014-04-03 08:44:45 -04:00
Matthias Kurz
dcabde40c3 Prevent the cursor from setting it to initial position in IE 2014-04-03 12:19:37 +02:00
Matthias Kurz
ddcb61585a .destroy() should destroy all selected select2 2014-04-03 10:59:21 +02:00
Kevin Brown
937aaa1737 Merge pull request #2229 from aanbar/modify_arabic
Added missing letter.
2014-04-02 10:17:07 -04:00
Ahmad Anbar
b163712e66 Added missing letter. 2014-04-02 15:49:08 +03:00
Fabrice Daugan
dd6198a3fa Ignore focus and error on IE7 for disabled select2
For disabled components, focus event was triggered.
On modern browser this error was ignored but not on IE7.

This PR save weird focus event and IE7 JS error.
2014-04-02 14:03:01 +02:00
David Foster
3ce3ad7fb0 Allow an empty string to be used as the placeholder title. 2014-04-01 14:22:41 -07:00
Lee Boynton
2d6b74c2ac Also check if search input should be focussed for multiselects 2014-03-31 21:01:06 +01:00
Kevin Brown
df7b7ba95c Merge pull request #2220 from bigmihail/master
Added translation for formatMatches
2014-03-30 11:03:15 -04:00
Mihail
b2c3dbc0ab Added translation for formatMatches
In accordance with changes in the file select2_locale_en.js.template
2014-03-30 13:30:45 +03:00
Kevin Brown
901a5994c3 Merge pull request #2215 from pineapple-thief/pineapple-thief
Update select2.js
2014-03-29 14:09:29 -04:00
Lee Boynton
ed0bae39c9 Check if search should be focused when the dropdown is activated 2014-03-28 14:56:45 +00:00
Lee Boynton
ad21d01693 Check if search input should be focussed when opening 2014-03-28 14:46:41 +00:00
pineapple-thief
70873abe9d Update select2.js
Fixes unpleasant glitch where initializing select2 on select where first input option tag has non-breakable space in innerText causes selected option to be displayed as "undefined" until user changes selection. (i.e. HTML was like <option value>&nbsp;</option>, that's what Rails 3 f.select helper generate by default).
2014-03-28 15:45:38 +11:00
Kevin Brown
cbd2a70dc3 Merge pull request #2203 from jesperronn/simplify-selectors
Reduced 10 level deep nesting of CSS rules. Instead, using the simpler d...
2014-03-23 17:14:35 -04:00
Jesper Rønn-Jensen
7390721038 Reduced 10 level deep nesting of CSS rules. Instead, using the simpler depth-0,-1,-2,etc for adding padding to the result when nested.
Greatly simplifies complexity of expressions and reduces (hopefully) rendering time.

From https://developers.google.com/speed/docs/best-practices/rendering#UseEfficientCSSSelectors
Descendant selectors are inefficient because, for each element that matches the key, the browser must also traverse up the DOM tree, evaluating every ancestor element until it finds a match or reaches the root element.
2014-03-23 21:50:35 +01:00
Kevin Brown
774a0d7765 modified version identifiers in descriptors for release 3.4.6 2014-03-22 22:30:17 -04:00
Kevin Brown
5b2516818c Fix sed issues in the release scripts
Passing in a blank string after `-i` will cause sed to fail, as it
tries to interpret it as a file (which does not exist) and bails
out.
2014-03-22 22:28:42 -04:00
Kevin Brown
2752563c80 Merge pull request #2096 from springboardretail/mobile-fixes
make selection on iOS more intuitive
2014-03-21 20:36:40 -04:00
Kevin Brown
63f342a12f Revert "Add hideSelectionFromResult function"
This reverts commit 84cf134a4e.

New problems found in:
https://github.com/ivaynberg/select2/issues/2196

Original issue:
https://github.com/ivaynberg/select2/issues/1538

Pull request:
https://github.com/ivaynberg/select2/pull/2032
2014-03-21 19:50:30 -04:00
Kevin Brown
d9f54a617c Merge pull request #2200 from diogotrentini/master
Fix bug related to dropdown position in Firefox and IE
2014-03-20 21:29:21 -04:00
Diogo Trentini
6c731f4181 Fix method to get space above the dropdown
It's better to get the scrollTop value from window rather than body
to update enoughRoomAbove variable. This method is supported by
the main browsers.
2014-03-20 21:45:41 -03:00
Igor Vaynberg
e51e7a64ba Merge pull request #2176 from mattslocum/master
Fix Focus war with modals
2014-03-18 16:34:56 -07:00
Adam Schepis
eb09dfcce0 make selection on iOS more intuitive
allow touchend to cause selection of touched item.
Detect touchmove events so that selection of touched item can be canceled
2014-03-13 22:24:19 -04:00
Matt Slocum
2342d91925 Fix Focus war with modals
Bootstrap modal (and maybe others) require focus to maintain in the modal (because that what a modal is). The dropdown is outside of the modal, so we need to stopPropagation on the event so the modal doesn't know.
2014-03-11 12:14:17 -06:00
Kevin Brown
2d906ee10f Merge pull request #2140 from ivaynberg/issue_1541
Add `shouldFocusInput` option [Fix #1541]
2014-03-07 10:14:32 -05:00
Kevin Brown
51e5d436ff Merge pull request #2160 from s7anley/bugfix/2073-select2-removing
Multiselect items are not removed when event is prevented
2014-03-07 10:12:01 -05:00
Coleman Watts
43e381ed37 Provide context for evaluated functions 2014-03-05 21:02:06 -05:00
Kevin Brown
e6fbfcd101 Merge pull request #2125 from colemanw/evaluateFix
Fix evaluation of formatLoadMore
2014-03-05 20:57:43 -05:00
Ján Koščo
f3c6d6d51f After prevented removing of item in multiselect, proper item is focused 2014-03-05 11:27:08 +01:00
Ján Koščo
86a9c79b04 Removed unnecessary animation during unseint multiselect by close button 2014-03-05 11:27:03 +01:00
Ján Koščo
2059b5d4d3 Unselected item is returned as options only if event isn't prevented 2014-03-05 11:26:50 +01:00
Daniel Norman
660643ae87 Fix a typo in the docs. 2014-02-28 11:21:53 +01:00
Kevin Brown
ec97c818c8 Merge pull request #2151 from dhardtke/csp_fixes
fix select2 csp errors / warnings
2014-02-27 14:18:00 -05:00
dhardtke
60359f9d43 fix select2 csp errors / warnings 2014-02-27 20:07:57 +01:00
Igor Vaynberg
c3592c3f87 Merge pull request #2147 from juanluisrp/patch-1
Unit of measure px is redundant
2014-02-26 08:21:57 -08:00
Igor Vaynberg
27acc27d37 Merge pull request #2148 from djarnis73/patch-1
Update select2.css to prevent float & width style to leak in
2014-02-26 08:21:24 -08:00
djarnis73
b7695ec6a9 Update select2.css 2014-02-26 13:01:10 +01:00
Juan Luis Rodríguez Ponce
b3ecfaabca Unit of measure px is redundant
Remove 'px' when property is set to 0.
2014-02-26 12:13:19 +01:00
Kevin Brown
c5e13d3aa8 Merge pull request #2146 from ebraminio/master
Update and improve Persian (fa) translations
2014-02-25 19:39:20 -05:00
Ebrahim Byagowi
60c9320e1d Update and improve Persian (fa) translations 2014-02-26 03:33:23 +03:30
Kevin Brown
d87e93dd45 Add shouldFocusInput option [Fix #1541]
This adds a `shouldFocusInput` option that determines whether or
not the focusser should be automatically focused.  By default, the
focusser will always be focused, unless `minimumResultsForSearch`
is less than zero.

`close` on single selects took an option `params` argument which
at one point was used to tell the focusser to not automatically
focus.  This was added at one point when tweaking the mask [1]
and later reverted to fix a bug that came as a result [2].  The
leftovers of this code has been removed in this commit.

[1]: e162a4802c
[2]: 9bc68f089e
2014-02-21 20:06:21 -05:00
Kevin Brown
b2b5ebd637 Merge pull request #2129 from campbell/master
Bugfix - only selected options that are not disabled should be used when initializing a dropdown
2014-02-21 10:27:01 -05:00
Pete Campbell
2a4e026b49 Bugfix - only selected options that are not disabled should be used when initializing the dropdown 2014-02-17 21:16:26 -05:00
Coleman Watts
9460b0c9b6 Fix evaluation of formatLoadMore 2014-02-14 17:14:12 -08:00
Kevin Brown
0636e42cbc Merge pull request #2098 from gdi2290/patch-1
update copyright year
2014-02-08 15:31:20 -05:00
Kevin Brown
97af0a39d9 Merge pull request #2106 from PeterMozesMerl/master
Update select2_locale_hu.js
2014-02-08 15:30:22 -05:00
PeterMozesMerl
b3d2d25ca2 Update select2_locale_hu.js
Language: "karakter". Grammar: missing comma.
2014-02-06 23:59:54 +01:00
PatrickJS
218021789f update copyright year 2014-02-03 23:44:44 -08:00
Kevin Brown
3c28c35503 Merge pull request #2095 from mkurz/readonly_chaining
Allow chaining for .select2('readonly', ...)
2014-02-03 15:46:53 -08:00
Kevin Brown
beabb63f03 Merge pull request #2092 from colemanw/strings
Accept strings as well as functions for localization
2014-02-03 15:41:32 -08:00
Matthias Kurz
bd3bd55719 Allow chaining for .select2('readonly', ...) 2014-02-03 16:07:23 +01:00
Coleman Watts
175c78441f Accept strings as well as functions for localization 2014-01-31 21:04:36 -08:00
Kevin Brown
596cf52d07 Merge pull request #2070 from jeanmonod/master
Allow to display item created by createSearchChoice at the end of the dropdown
2014-01-24 16:58:51 -08:00
Jeanmonod David
ed77cab7d5 Allow to display item created by createSearchChoice at the end of the list
ref #595
2014-01-24 18:54:56 +01:00
Kevin Brown
fb6e863839 Merge pull request #2065 from jdecuyper/hideSelectionFromResult-fix
Fix for hideSelectionFromResult
2014-01-21 10:05:44 -08:00
jdecuyper
c87615f14c The function hideSelectionFromResult was tested against undefined as a property and not as a function 2014-01-21 11:45:13 -06:00
Kevin Brown
0f1372ce72 Merge pull request #1733 from flyerhzm/append-label-only-when-formatted-defined
append label only when formatted is not undefined
2014-01-21 05:49:36 -08:00
Kevin Brown
9cb18478a5 Merge pull request #2055 from mac2000/feature-request-search-input-placeholder
Optional Search Input Placeholder parameter added
2014-01-21 05:27:32 -08:00
Marchenko Alexandr
89ae701691 merge 2014-01-21 12:17:58 +02:00
Marchenko Alexandr
2e901f79a1 merge 2014-01-21 11:54:48 +02:00
Kevin Brown
e559f92c35 Merge pull request #2001 from arendjr/master
Don't rely on :visible and :not(..., ...) selectors which only work with Sizzle
2014-01-20 16:48:27 -08:00
Kevin Brown
cd92405312 Merge pull request #2053 from jdecuyper/feature-hide-selection-from-result
Add hideSelectionFromResult function
2014-01-20 06:30:12 -08:00
Kevin Brown
2244365790 Merge pull request #2056 from mkurz/fix_2042
Reset background position for multiple backgrounds [Fixes #2042]
2014-01-20 06:22:47 -08:00
Kevin Brown
a186a16235 Merge pull request #2057 from mkurz/dppx_fix
Use dppx instead of non-existing ppx resolution unit
2014-01-20 06:18:02 -08:00
Matthias Kurz
05efcaf160 Use dppx instead of non-existing ppx resolution unit 2014-01-20 11:50:46 +01:00
Matthias Kurz
6a3ec3f5de Fix for #2042 Chrome bug: Reset the background position for multiple backgrounds 2014-01-20 11:46:39 +01:00
Marchenko Alexandr
f4886a0afa Optional Search Input Placeholder parameter added 2014-01-20 11:38:33 +02:00
jdecuyper
84cf134a4e Add hideSelectionFromResult function 2014-01-19 21:12:39 -06:00
Kevin Brown
9eb12a8906 Merge pull request #1816 from funkjedi/accessibility
Accessibility updates based on jQuery UI Autocomplete
2014-01-19 18:40:50 -08:00
Tim Robertson
eaf09c7f76 Accessibility updates based on jQuery UI Autocomplete 2014-01-19 18:52:56 -05:00
Kevin Brown
d5cb4bfa1c Merge pull request #2044 from sieppl/master
singleSelect: setting nextSearchTerm in initSelection
2014-01-19 13:04:00 -08:00
Sebastian Kather
48d392635f singleSelect: setting nextSearchTerm in initSelection
For single select the nextSearchTerm callback is called when
initSelection returned data
2014-01-16 16:12:00 +01:00
Igor Vaynberg
7087c4bfbf Merge pull request #2037 from codemumbler/patch-1
Changed default text for min number of characters.
2014-01-13 08:33:15 -08:00
Steven Armstrong
829b8c7346 Changed default text for min number of characters.
Use to read:
Please enter 3 more characters.
Now reads:
Please enter 3 or more characters.
2014-01-13 10:01:30 -05:00
Kevin Brown
f0b25ef173 Update package.json on release 2014-01-12 11:17:47 -05:00
Kevin Brown
32a08eac5f Merge pull request #1943 from Jarreddebeer/patch-1
Create package.json
2014-01-12 08:16:43 -08:00
Kevin Brown
4f4d77d36e Fixed dpi warning [Fixes #1964] 2014-01-12 11:10:51 -05:00
Kevin Brown
79ee2084dc Gradients are all set now 2014-01-11 21:01:16 -05:00
Kevin Brown
e2cccc9988 Fixed reversed gradients, again
The gradients that were fixed in #2002 had the wrong target value.
Most of them were targetting the bottom, though not all of them,
and the code set them to target the top.
2014-01-11 18:48:53 -05:00
Kevin Brown
a97b908a2a Added version to composer.json
This fixes #1997 by adding the `version` key to the `composer.json`
file.  The version number will be updated with newer releases as
well.
2014-01-11 17:56:17 -05:00
Kevin Brown
4847be1ab7 Merge pull request #2027 from limonte/master
Added Serbian locale
2014-01-10 06:20:58 -08:00
Limon Saturized
76d21b03bb Added Serbian locale 2014-01-10 13:02:26 +01:00
Kevin Brown
aab3381494 Fixed reversed gradient 2014-01-09 14:58:33 -05:00
Kevin Brown
2158a836e6 Merge pull request #1920 from jpotterm/prevent-ie-body-clicks
Prevent IE from generating unwanted clicks on the body.
2014-01-09 11:43:21 -08:00
Jonathan Potter
4dce487ccb Prevent IE from generating unwanted clicks on the body. When mousedown fires on the selection element and then mouseup fires on the mask (because it is moved under the mouse during mousedown) then IE fires a click event on the body because it is the closest common ancestor. To prevent this, we detach and reatach the elements on mousedown which cancels the click event. 2014-01-09 11:30:48 -05:00
Igor Vaynberg
3e5ad1334e Merge pull request #2020 from merkuriy/master
L10n files improved
2014-01-08 15:05:23 -08:00
Kevin Brown
7132a9a398 Merge pull request #2023 from TheDistantSea/feature/remove-hardcoded-classnames
Remove hardcoded class names from $.fn.select2
2014-01-08 08:21:02 -08:00
pj
c22bdd41a0 Removed hardcoded class names from $.fn.select2. The code now uses the exports accessible through window.Select2 to instantiate widgets, allowing the environment to replace or extend those classes globally. 2014-01-08 18:09:14 +02:00
pj
41c3d4cfc4 Removed hardcoded class names from $.fn.select2. The code now uses the exports accessible through window.Select2 to instantiate widgets, allowing the environment to replace or extend those classes globally. 2014-01-08 17:56:23 +02:00
Uriy Efremochkin
fd97e585d7 L10n files and template l10n file were improved: Groups of three characters "." (dots) were replaced by a single character "…" (ellipsis). 2014-01-08 15:35:47 +06:00
Uriy Efremochkin
147540b3b8 Korean l10n improved 2014-01-08 15:19:13 +06:00
Uriy Efremochkin
0e93836bf3 Icelandic l10n improved 2014-01-08 15:05:47 +06:00
Uriy Efremochkin
c3cc5822f3 Persian l10n improved 2014-01-08 15:03:13 +06:00
Uriy Efremochkin
edc87b4e9d Greek l10n improved 2014-01-08 14:59:06 +06:00
Uriy Efremochkin
93262e16cd Bulgarian l10n improved 2014-01-08 14:53:28 +06:00
Uriy Efremochkin
d322d62396 Croatian l10n improved 2014-01-08 14:43:05 +06:00
Uriy Efremochkin
4e524f7308 Polish l10n improved 2014-01-08 14:41:47 +06:00
Uriy Efremochkin
bc1ba84152 Ukrainian l10n improved 2014-01-08 14:40:47 +06:00
Uriy Efremochkin
0c021ef90f Russian l10n improved 2014-01-08 14:40:46 +06:00
Uriy Efremochkin
3cb76d2f5a Ukrainian language code from l10n file name has been fixed:
"ua" — is country code for Ukraine.
"uk" — is code for Ukrainian language.
http://en.wikipedia.org/wiki/Ukrainian_language
http://en.wikipedia.org/wiki/Ukraine
2014-01-08 14:40:46 +06:00
Uriy Efremochkin
cc254ee219 Latvian l10n improved 2014-01-08 14:40:46 +06:00
Uriy Efremochkin
daea53193e Lithuanian l10n improved 2014-01-08 14:40:45 +06:00
Uriy Efremochkin
372ec8d29a Spanish l10n improved 2014-01-08 13:35:30 +06:00
Kevin Brown
4eb1370b9c Merge pull request #1981 from openwide-java/fix-1946-hard_coded_title
Fix #1946: remove an hard coded title attribute.
2014-01-06 18:01:47 -08:00
Kevin Brown
f83ca8ec2c Merge pull request #2000 from leods92/patch-1
Added padding to searching/no-results messages.
2014-01-06 17:56:18 -08:00
Igor Vaynberg
55aa184c31 Merge pull request #1987 from 76200/patch-1
Fixed plural suffix for Polish translation
2014-01-02 19:20:22 -08:00
Igor Vaynberg
92103a8b02 Merge pull request #2002 from justbeez/master
Fix CSS linear-gradient syntax (gradients broken in IE10)
2014-01-02 19:17:38 -08:00
Igor Vaynberg
a44cf9fef6 Merge pull request #2003 from jdecuyper/feature-next-search-term-multiple
Enable nextSearchTerm function for multiple select
2014-01-02 19:16:36 -08:00
Igor Vaynberg
29b88e34be Merge pull request #2006 from robertfausk/patch-1
Enhance Documentation: Add integration for symfony2
2014-01-02 19:14:46 -08:00
robertfausk
1218a35f73 Add integration for symfony2
added missing integration for symfony2
"* [Symfony2](https://github.com/avocode/FormExtensions)"
2014-01-02 17:52:26 +01:00
jdecuyper
c7dd8c5179 Enable nextSearchTerm function for multiple select 2013-12-31 12:01:48 -06:00
Justin Beasley
8a560453b1 Fix CSS linear-gradient syntax
the first argument to linear-gradient is required to either be an angle, or expressed as "to [side]". Omitting the "to" keyword causes gradients to not render in IE10.
2013-12-31 00:05:23 -08:00
Arend van Beelen
a6ec8fc4e1 Don't rely on :visible and :not(..., ...) selectors which only work with Sizzle. 2013-12-30 15:33:46 +01:00
Leonardo D. Schlossmacher
23b2574d4b Added padding to searching/no-results messages.
It feels just weird without paddings.
2013-12-28 11:55:29 -02:00
bartek
29d3d12f0e Fixed plural suffix for Polish translation
Now formatSelectionTooBig(3) returns "Możesz zaznaczyć najwyżej 3 element**y**" instead of "Możesz zaznaczyć najwyżej 3 element**i**"
2013-12-19 11:56:45 +01:00
Igor Vaynberg
b8fa72db32 Merge pull request #1984 from jibwa/master
Fix problem with positioning the dropdown when it is on RHS
2013-12-18 17:06:46 -08:00
jibwa
92357e61b8 Fix problem with positioning the dropdown when it is on the right hand side of view
In the stable version this line looks like:

dropLeft = offset.left + width - dropWidth;

In line (1193) the variable width is set to dropWidth which means we are always going to end up with 

dropLeft = offset.left + X - X
or
dropLeft = offset.left

Which means we are still aligned to the left of the button.

This current solution from @ef9f1dea is just aligning the select2-drop closer to the center which is not what it did before the dropdownAutoWidth.


The line I submitted worked perfect and my dropdown now aligns to the RHS of the button again as expected.
2013-12-18 16:28:40 -05:00
Guillaume Smet
3d2b91bd7a Fix #1946: remove an hard coded title.
The original title is copied if defined and it's sufficient for accessibility purpose.
We shouldn't force the title attribute, it's especially annoying if people are using
tooltip implementation based on the title attribute such as Bootstrap tooltip.
2013-12-17 17:03:10 +01:00
Igor Vaynberg
5981dcdfcc Merge pull request #1971 from wyuenho/fix_select2_locale_ar_syntax_error
Fix syntax error in Arabic locale file
2013-12-12 08:01:47 -08:00
Jimmy Yuen Ho Wong
62b689d28e Fix syntax error 2013-12-12 18:30:44 +08:00
Igor Vaynberg
39ad3b21e6 Merge pull request #1962 from wyuenho/component
Add component.json
2013-12-11 08:13:44 -08:00
Jimmy Yuen Ho Wong
cdef7d9ed6 Update version for component.json too 2013-12-08 03:28:31 +08:00
Igor Vaynberg
883c750e79 Merge pull request #1963 from wyuenho/fix_select2_locale_ka_syntax_error
Fix georgian locale syntax error
2013-12-07 11:20:59 -08:00
Jimmy Yuen Ho Wong
0505a65fdc Fix georgian locale syntax error 2013-12-07 20:05:42 +08:00
Jimmy Yuen Ho Wong
903aff11ce Add component.json 2013-12-07 20:04:35 +08:00
Igor Vaynberg
c186dc826e better handling for ipads. fixes #1949 2013-12-03 10:21:17 -08:00
Lito
abe7777b0a Fixed string used as regular expression for ID attribute.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-12-03 08:32:27 -08:00
Jarreddebeer
89dfa888c9 Correcting git repository url 2013-12-01 16:41:15 +02:00
Igor Vaynberg
fc5ac5b137 Merge pull request #1728 from corinnaerin/master
Compatibility with jQuery 1.9 +
2013-11-29 22:49:06 -08:00
Igor Vaynberg
0a4668bb43 Merge pull request #1423 from adelynx/master
Select2 Arabic Translate.
2013-11-29 22:44:34 -08:00
Igor Vaynberg
f8dda91171 Merge pull request #1014 from sjschukin/patch-1
.select2("data", null) causes an error
2013-11-29 22:40:52 -08:00
Igor Vaynberg
aa0fb730aa Merge pull request #1938 from datapad/data-result-direct-children
Only pick up direct children when retrieving data in 'multiple' mode
2013-11-29 22:24:32 -08:00
Igor Vaynberg
816a46bf1a Merge pull request #1940 from datapad/reset-filtered-dropdown
Fix dropdown items not being reset after filtering and selecting when `closeOnSelect` is `false`
2013-11-29 22:24:05 -08:00
Igor Vaynberg
c0f37eafcb Merge pull request #1923 from riatiger/master
fix for Uncaught TypeError: Object #<Object> has no method 'abort'
2013-11-29 22:12:51 -08:00
Jarreddebeer
89729dd24d Create package.json
There may be some benefits to having a package.json, but the primary reason i'm interested in submitting this is for the jspm override entry, with it we can include select2 as simply as:

http://jsbin.com/upOtaXIR/2/edit

Any questions please shout!
2013-11-28 18:40:08 +02:00
Alek Storm
b5aa4688ea Fix dropdown items not being reset after filtering and selecting when closeOnSelect is false 2013-11-27 17:24:11 -06:00
Alek Storm
e7bd3a3779 Only pick up direct children when retrieving data in 'multiple' mode:
Prevents accidentally returning the selected items of any select2's embedded in the HTML of
this selection's items.
2013-11-27 17:17:15 -06:00
riatiger
50f813c003 fix for Uncaught TypeError
Prevents "Uncaught TypeError: Object #<Object> has no method 'abort'"
error for case when non-jQuery promise is used as a handler (AngularJS
$promise for example).
2013-11-21 19:58:01 +02:00
Igor Vaynberg
0967c67776 Merge pull request #1865 from pborreli/typos
Fixed typos
2013-11-14 08:24:38 -08:00
Igor Vaynberg
bc78b95591 Merge pull request #1903 from fabian/patch-1
Support for Composer
2013-11-14 08:19:49 -08:00
Fabian Vogler
51ffba0563 Added composer.json 2013-11-14 11:41:47 +01:00
Igor Vaynberg
356984d8fe Merge pull request #1891 from jfisheratwork/master
Fix for collision detection regarding enoughRoomOnRight and css border top for drop-auto-width
2013-11-07 13:50:27 -08:00
Jake
ef9f1dea90 Fix for drop-auto-width collision detection and css border top
- collision detection was not moving the drop left based on the
difference between viewport and relative location of box (dropleft +
dropwidth)
- .select2-drop-active was overriding the .select2-drop-auto-width
making the shifted dropbox look a bit wierd
2013-11-07 16:21:52 -05:00
Igor Vaynberg
cb5b684ae5 Merge pull request #1887 from lukinpark/patch-1
Update select2.js
2013-11-07 10:09:07 -08:00
Igor Vaynberg
50698fd51c Merge pull request #1685 from jdecuyper/feature-enable-formatResultCssClass
Enable function formatResultCssClass.
2013-11-07 09:51:38 -08:00
Igor Vaynberg
fc4bbbb5ef Merge pull request #1846 from tpruvot/master
issue #1778: prevent delayed focus when the list is hidden
2013-11-07 07:40:45 -08:00
lukinpark
85de8cc1d6 Update select2.js
above function doesn't work great
2013-11-07 11:45:05 +01:00
Igor Vaynberg
261dad0ee6 Merge pull request #1877 from khaledhosny/master
Styling fixes for RTL direction
2013-11-06 08:37:37 -08:00
Igor Vaynberg
b747806e63 Merge pull request #1883 from dimakura/master
Georgian (Kartuli) language translation
2013-11-06 08:32:26 -08:00
Igor Vaynberg
8361f9a0e6 Merge pull request #1885 from bottomline/master
Initial fix for main accessibility issues
2013-11-06 08:23:27 -08:00
Jonathan Mahoney
78ccc05e04 Accessibility enhancements for single-value elements. Added correct ARIA attributes and associations. Much-improved screen-reader support (tested with NVDA on Firefox 25) 2013-11-06 12:55:12 +00:00
Dimitri Kurashvili
febb9cd03e Georgian (Kartuli) language translation
Georgian (Kartuli) language translation.
2013-11-05 21:00:38 +04:00
Igor Vaynberg
4059d81e6b modified version identifiers in descriptors for release 3.4.5 2013-11-04 08:22:44 -08:00
Igor Vaynberg
d3b65908e3 be sure to pull before releasing 2013-11-04 08:22:33 -08:00
Khaled Hosny
39f9fc79a5 Styling fixes for RTL direction
* Align the selects to the right
* Place the close button on the left to not cover parts of the label.
2013-11-04 08:07:39 +02:00
Pascal Borreli
9725363ada Fixed typos 2013-10-31 23:20:45 +00:00
Igor Vaynberg
9187ab0c12 Merge pull request #1859 from mxab/master
fixed invalid index in buildChangeDetails, fixes #1858
2013-10-31 15:05:29 -07:00
Max Bruchmann
2d13c0a00a fixed invalid index in buildChangeDetails, fixes #1858 2013-10-31 17:55:19 +01:00
Tanguy Pruvot
b757fb987d issue #1778: prevent delayed focus when the list is hidden
This reset the focus color when the TAB key is pressed.
2013-10-28 11:37:45 +01:00
Igor Vaynberg
cb7aefaeda fix keyboard removal of choices. fixes #1839 2013-10-26 07:57:53 -07:00
Igor Vaynberg
7fb1d01f64 modified version identifiers in descriptors for release 3.4.4 2013-10-24 13:23:11 -07:00
Igor Vaynberg
f8de47481f Merge pull request #1819 from jrlynchii/master
Modified syncCssClasses to use output of adapter when applying classes.
2013-10-20 19:22:24 -07:00
Riley Lynch
53d1fea248 Modified syncCssClasses to use output of adapter when applying a class rather than applying the original class 2013-10-20 13:14:31 -07:00
Igor Vaynberg
8647d51fd6 Merge pull request #1808 from cmcnulty/#1807-Mutation-Observer
#1807 add support for MutationObserver
2013-10-17 15:09:03 -07:00
cmcnulty
d5297ccd6d #1807 add support for MutationObserver
Better support mutation events in Firefox
2013-10-17 15:09:02 -05:00
Igor Vaynberg
92c6cef6cb Merge pull request #1801 from bobbyrenwick/patch-1
Fixing reference to undefined this triggering change on multiselect
2013-10-16 11:10:55 -07:00
Bob Renwick
8e46faa1d9 Fixing reference to undefined this triggering change on multiselect 2013-10-16 18:30:58 +01:00
Igor Vaynberg
e84a1207d0 Merge pull request #1795 from arendjr/master
Don't rely on :selected, makes Select2 compatible with jQuery builds without Sizzle
2013-10-15 08:04:21 -07:00
Arend van Beelen
fc44b96e84 Don't rely on :selected, makes Select2 compatible with jQuery builds without Sizzle. 2013-10-14 14:37:41 +02:00
Igor Vaynberg
f1807f2177 Merge pull request #1789 from STAH/unused-vars
Remove unused var declarations
2013-10-10 12:59:33 -07:00
stan
2a9154e0c7 Remove unused var declarations 2013-10-10 20:15:26 +02:00
Igor Vaynberg
d1f51910ee small cleanup in width regex matching. #1557 2013-10-09 08:30:26 -07:00
Igor Vaynberg
58f939ef3b Merge pull request #1774 from avelis/master
Fix for #1518. Update to select2.js to trigger properly named event.
2013-10-08 20:35:55 -07:00
Igor Vaynberg
2982be4ec9 fixes #1557 ...again... 2013-10-08 20:33:14 -07:00
Igor Vaynberg
0d0882942f Merge pull request #1639 from francoispluchino/fix-close-focus
Fix the focus when list is closed on the mouse click event
2013-10-08 20:25:21 -07:00
Igor Vaynberg
a3e188afe1 Merge pull request #1772 from KyKyPy3/master
Fix selection first element from "postprocessResults"
2013-10-08 20:21:47 -07:00
Igor Vaynberg
51ee7f8dc4 Merge pull request #1777 from yonjah/master
#1776 and #1722 dropdown position issue
2013-10-08 20:13:05 -07:00
Yoni Jah
a65a3ce038 #1776 and #1722 dropdown position issue 2013-10-08 12:37:37 +03:00
Andrew Velis
204d4a276e Update to unselect method to support "select2-removing" triggers.
The goal here is send off a triggered event to a subscriber that an
element is going to be removed. It hasn't removed yet but would be
after the event fires. I have also added logic to determine if a
subscriber has prevented default. This will prove useful in the future
if a subscriber needs to extend the functionality for other usages.
2013-10-07 20:47:12 -07:00
Andrew Velis
f39ab3080e Fix for #1518. Update to select2.js to trigger properly named event.
By the documentation the event that should be fired is "select2-removed" however the event that actually gets fired is called "removed"
2013-10-06 21:27:40 -07:00
Efremenko Roman
9266d7cf55 Fix selection first element from "postprocessResults" - exclude selected elements from highlightable elements 2013-10-06 17:02:03 +04:00
Igor Vaynberg
435b2581ff Merge pull request #1768 from kabitakis/master
corrections for the greek (el) locale file
2013-10-03 10:52:43 -07:00
Nikos Kampitakis
da0aecbdd1 corrections for the greek (el) locale file 2013-10-03 14:12:30 +03:00
Igor Vaynberg
f910bd42db Merge pull request #1764 from tjnurmin/patch-1
Update select2_locale_fi.js
2013-10-01 12:21:01 -07:00
Tapio Nurminen
037c139b0c Update select2_locale_fi.js
fixed typo in Finnish translation
2013-10-01 22:12:17 +03:00
Richard Huang
701e84ea21 append label only when formatted is not undefined 2013-09-19 11:19:10 +08:00
Igor Vaynberg
e78cf7759e Merge pull request #1729 from rschmitty/master
Update select2-bootstrap.css
2013-09-17 15:49:56 -07:00
Rick Schmitty
17f9b8ea0b Update select2-bootstrap.css
Added Bootstrap Validation states for warning, error, info, and success
2013-09-17 17:56:09 -04:00
Corinna Schmidt
5bd41fc00c Compatibility with jQuery 1.10
removeAttr("disabled') is no longer correct with the most recent version
of jQuery. Should use prop("disabled", false) instead.
2013-09-17 16:01:45 -04:00
Igor Vaynberg
9e7dde66b7 Merge pull request #1722 from yonjah/master
dropdown repostion fix when previous postion changes container position
2013-09-17 07:22:48 -07:00
Igor Vaynberg
057cf7e71b Merge pull request #1717 from ProLoser/patch-1
Fixes styling in bootstrap environment
2013-09-17 07:16:43 -07:00
Igor Vaynberg
c73261be21 Merge pull request #1723 from AlexanderZaytsev/master
Use more specific selector for finding options of a select
2013-09-17 07:14:50 -07:00
Igor Vaynberg
84ac8301db modified version identifiers in descriptors for release 3.4.3 2013-09-17 06:47:14 -07:00
Alexander Zaytsev
67699746b4 Use more specific selector for finding options of a select 2013-09-16 21:54:29 +02:00
Yoni Jah
e6840fdc37 dropdown repostion fix when previous postion changes container position 2013-09-15 10:25:35 +03:00
Dean Sofer
4d749a7578 Fixes styling in bootstrap environment
Fixes #1588 thanks to @smajl
2013-09-14 23:17:20 -07:00
Igor Vaynberg
0ab50cc329 Merge pull request #1706 from moneybird/master
Remove negative selector for `.select2-selected`
2013-09-11 08:17:41 -07:00
Edwin Vlieg
ca9b55fadb Remove negative selector for .select2-selected
This broke scroll behaviour when displaying the selected items in the
dropdown.
2013-09-11 12:58:05 +02:00
Igor Vaynberg
b4083330b3 Merge pull request #1694 from cnanney/patch-1
Fix focus on select
2013-09-06 22:36:47 -07:00
cnanney
3b54482522 Fix focus on select
Focus should go back to select2-focusser, not select2-choice.
2013-09-06 18:57:41 -05:00
Igor Vaynberg
49c8b6cf50 Merge pull request #1690 from evangun/initSelectionFix
Edit the default initSelection function to pass all tag properties
2013-09-06 08:48:29 -07:00
evangun
cfec9c6434 Edit the default initSelection function to pass all tag properties
The function will now pass all properties of the objects passed as tags to the constructor, not just the "id" and "text" properties. Because a tag is not always just an id and a text, just like when you provide the items with the "data" object instead.

This makes sure these properties are always available at the runtime of formatSelection() or formatResult(), which is not currently the case when the field is repopulated on a triggered "change" event.

My code looks like this :

$el.select2({
...,
tags: [{
  //id
  id: 1,
  //the string that will matched against the user's query
  text: 'martin smith greatmartin@provider.com'
  //the label of the item that will be shown if this tag is selected
  label: 'M. Smith',
}],
formatSelection: function(object, container){
  return object.label || object.text;
},
//right now I have to override the default function:
initSelection: function(){...}
});
2013-09-05 18:18:50 +02:00
jdecuyper
fa4ce8e382 Enable function formatResultCssClass. 2013-09-03 23:29:42 -05:00
Igor Vaynberg
fb8bf6d51d do not leak click events. fixes #1622 2013-09-03 21:16:16 -07:00
Igor Vaynberg
e09292d800 remove trailing comma. fixes #1633 2013-09-03 20:51:23 -07:00
Igor Vaynberg
7d60f619ce Merge pull request #1211 from jhinch/pixel-rounding-problems
Search width inconsistencies in different browsers due to fractional pixels
2013-09-03 20:48:35 -07:00
Igor Vaynberg
2d401b19ce Merge pull request #1684 from jdecuyper/feature-avoid-removal-of-locked-options
Avoid locked options to be selected and deleted.
2013-09-03 20:35:49 -07:00
jdecuyper
02dea18dc9 Avoid locked options to be selected and deleted. 2013-09-03 17:20:35 -05:00
Igor Vaynberg
418a659adb Merge pull request #1678 from jdecuyper/feature-remove-duplicated-option
Remove duplicated options from multi-valued select boxes.
2013-08-31 19:20:52 -07:00
jdecuyper
a380ebabd5 Remove duplicated options from multi-valued select boxes. 2013-08-30 18:16:41 -05:00
Igor Vaynberg
856af7966f Merge pull request #1675 from duncansmart/clearing-event
Added `select2-clearing` event
2013-08-30 14:01:59 -07:00
Duncan Smart
edc0d86fd2 Added select2-clearing event
that allows clearing selection to be canceled.
2013-08-30 21:35:01 +01:00
Igor Vaynberg
ca7550bf4d Revert "Fixed Tab key not respecting opts.selectOnBlur" breaks tab key. fixes #1646.
This reverts commit 6eb74930d5.
2013-08-30 08:55:16 -07:00
Igor Vaynberg
9380a0678c Merge pull request #1628 from realityking/css
Cleanup CSS
2013-08-28 23:29:45 -07:00
Igor Vaynberg
92f173c1ab Merge pull request #1667 from duckinator/master
Clicking outside of dropdown should remove select2-container-active class.
2013-08-28 23:11:37 -07:00
markwellna
3c2d7f7310 Clicking outside of dropdown removes select2-container-active class.
Closes #1661.
2013-08-28 13:05:41 -04:00
François Pluchino
9bc68f089e Fix the focus when list is closed on the mouse click event 2013-08-21 12:16:50 +02:00
Rouven Weßling
299f87440e Remove duplicate property. 2013-08-18 14:35:04 +02:00
Rouven Weßling
e7649880cb Remove -khtml-user-select. It's not supported by KHTML anyways and their marketshare is incredibly minor. 2013-08-18 14:35:04 +02:00
Rouven Weßling
488526ccf5 Remove -o-linear-gradient used by Opera 11.1 - 12.0. These versions are now very rarely used. 2013-08-18 14:35:01 +02:00
Rouven Weßling
bba1eb04c7 Remove -ms-linear-gradient that was only used by IE 10 preview releases. 2013-08-18 14:34:58 +02:00
Igor Vaynberg
c4529b8700 fix missing placeholder. closes #1614 2013-08-14 16:57:37 -07:00
Igor Vaynberg
236fb0ea23 Merge pull request #1617 from forby/master
Fix missing dropdownCssClass on init
2013-08-14 14:34:15 -07:00
Jonathan Forby
a4dc0ba522 Fix missing dropdownCssClass on init
Fixes issue #1615 where dropdownCssClass is no longer applied.
2013-08-14 16:54:10 -04:00
Igor Vaynberg
6aea56b962 modified version identifiers in descriptors for release 3.4.2 2013-08-12 15:04:12 -07:00
Igor Vaynberg
12d3c4ece2 update build script 2013-08-12 15:03:50 -07:00
Igor Vaynberg
ec740d8beb Revert "modified version identifiers in descriptors for release 3.4.2"
This reverts commit db8c7b6e1f.
2013-08-12 15:03:05 -07:00
Igor Vaynberg
db8c7b6e1f modified version identifiers in descriptors for release 3.4.2 2013-08-12 15:02:00 -07:00
Igor Vaynberg
4dce07a431 fix usecase when a placeholder is not defined but an option with an empty value exists. fixes #1573 2013-08-12 08:43:13 -07:00
Igor Vaynberg
bb85b6a1f9 Merge pull request #1608 from kris-lab/master
Removed BOM
2013-08-12 08:12:39 -07:00
Chris Stasiak
2515e19ed9 Removed BOM 2013-08-12 12:22:48 +02:00
Igor Vaynberg
2400357d59 small fix for #1604 2013-08-09 16:38:23 -07:00
Igor Vaynberg
00ba1bddfa Merge pull request #1604 from jdecuyper/feature-next-search-term
Add 'nextSearchTerm' function
2013-08-09 16:37:01 -07:00
jdecuyper
e1b50a306b Add 'nextSearchTerm' function
- Given a previous selection 'nextSearchTerm' determines what the next search term should be.
- Remove some leftover tabs.
- Fix a typo: 'install the' instead of 'install sthe'.
2013-08-09 17:26:23 -05:00
Igor Vaynberg
5ea0b956b5 Merge pull request #1601 from Streid/master
Not working adaptDropdownCssClass callback.
2013-08-09 08:54:20 -07:00
Streid
e4c1e061e4 Tab to spaces 2013-08-09 11:33:41 +03:00
Streid
1d1212c5ed Fix: Not working adaptDropdownCssClass callback. 2013-08-09 11:30:47 +03:00
Igor Vaynberg
08dc4d3768 Merge pull request #1593 from juliomrqz/patch-1
Improve ES locale
2013-08-05 00:00:46 -07:00
Julio Marquez
26987ddcfd Improve ES locale
Fixed missing diacritical marks & changed word "adicione" -> "introduzca"
2013-08-04 19:00:32 -04:30
Igor Vaynberg
0a6c56c8be Merge pull request #1591 from kepoweran/master
Added Malay translation
2013-08-03 23:09:47 -07:00
kepoweran
2a081dfc1f Added Malay translation 2013-08-02 23:43:34 +08:00
Igor Vaynberg
59df6b4c9a prevent scrolling when dropdown is opened. fixes #1540 2013-07-31 22:05:44 -07:00
Igor Vaynberg
dcee289874 Merge pull request #1578 from yuripc/colors-2
Colors to shorthand hexadecimal
2013-07-31 21:44:35 -07:00
Igor Vaynberg
e162a4802c tweak how mask is created to remove jitter. fixes #1574 2013-07-31 21:41:37 -07:00
Igor Vaynberg
d479018485 Merge pull request #1584 from UltCombo/pt
improve PT locales
2013-07-31 09:01:01 -07:00
UltCombo
881067524d improve PT locales 2013-07-31 11:23:35 -03:00
Igor Vaynberg
2ab64be416 Merge pull request #1563 from UltCombo/1562
Fixes #1562 do not trigger change on $().select2('data') unless specified with the second param
2013-07-30 09:41:56 -07:00
Yuri Pereira
7fd8a9f6e7 Colors to shorthand hexadecimal/2 2013-07-27 14:28:45 -03:00
Yuri Pereira
4ea4246c44 Colors to shorthand hexadecimal 2013-07-27 14:25:24 -03:00
Igor Vaynberg
28ea518257 width: copy option needs to ignore min-width and max-width. fixes #1557 2013-07-27 10:02:27 -07:00
Igor Vaynberg
f886f716e2 Revert "Colors to shorthand hexadecimal"
This reverts commit fe307f6f15.
2013-07-27 09:53:49 -07:00
Igor Vaynberg
852784dd3f fixes #1504 - undo changes made to labels during init 2013-07-26 23:58:38 -07:00
Igor Vaynberg
86fe603082 Merge pull request #1548 from yuripc/colors
Colors to shorthand hexadecimal
2013-07-26 23:47:35 -07:00
Igor Vaynberg
0ce22d5b80 make sure offscreen doesnt cause vertical shift. fixes #829 2013-07-26 22:51:36 -07:00
Igor Vaynberg
238903f5f4 close before destroying. fixes #1550 2013-07-26 22:22:21 -07:00
UltCombo
69396da14f data method use the same triggerChange logic as val method 2013-07-25 21:41:22 -03:00
Igor Vaynberg
bbb3e14102 Merge pull request #1571 from fedeisas/master
add zepto compatibiliy
2013-07-25 13:31:35 -07:00
Fede Isas
337fac620e add zepto compatibiliy 2013-07-25 16:44:41 -03:00
Igor Vaynberg
cb8072df18 Merge pull request #1549 from cmfcmf/patch-1
Added !important to select2-offscreen to make sure that it is definitly hidden.
2013-07-24 20:39:20 -07:00
Igor Vaynberg
521d13318e Merge pull request #1566 from choopanarsh/patch-1
translation for Persian(Farsi) fa.
2013-07-24 20:33:37 -07:00
choopanarsh
82f1009107 translation for Persian(Farsi) fa. 2013-07-24 17:45:00 +04:30
UltCombo
2d58f5b084 Fixes #1562; remove some dead code
No longer fire change event when .select2('data', falsyValue) is called without the 3rd param;
Dead code removed: !"" is true.
2013-07-23 18:55:09 -03:00
Igor Vaynberg
001c9abb34 Merge pull request #1555 from ebbe-brandstrup/master
Fixed Tab key not respecting opts.selectOnBlur
2013-07-22 08:15:36 -07:00
Ebbe Brandstrup
6eb74930d5 Fixed Tab key not respecting opts.selectOnBlur 2013-07-22 09:30:35 +02:00
cmfcmf
2be293ab4a Added !important to select2-offscreen to make sure that it is definitly hidden. 2013-07-19 21:29:35 +02:00
Yuri Pereira
fe307f6f15 Colors to shorthand hexadecimal 2013-07-19 13:16:39 -03:00
Igor Vaynberg
dfeb6d4173 Merge pull request #1546 from yuripc/master
Add some missing spaces
2013-07-19 08:30:56 -07:00
Yuri Pereira
f9b1e150e5 Add missing space 2013-07-19 10:09:44 -03:00
Yuri Pereira
95634b830d Add space after comma 2013-07-19 09:54:48 -03:00
Yuri Pereira
2fc63f264f Add space before { 2013-07-19 09:50:47 -03:00
Igor Vaynberg
92fe5018c9 fix 'autocaptilize' typo. fixes #1544 2013-07-18 14:05:47 -07:00
Igor Vaynberg
0c479b4cd1 additional tweal to #1528 to make formatters skip nulls 2013-07-17 00:32:41 -07:00
Igor Vaynberg
99dbc66d95 fix incorrect reference. fixes #1530 2013-07-15 23:10:19 -07:00
Igor Vaynberg
eaf2704a18 fixes #1528 Returning [] from data method on unset value for single-selects 2013-07-15 23:01:49 -07:00
Igor Vaynberg
01a395f9e1 Merge pull request #1537 from UltCombo/1536
fixes #1536
2013-07-15 20:52:57 -07:00
UltCombo
a6c5302e71 fixes #1536 2013-07-15 11:59:34 -03:00
Igor Vaynberg
0687909eee Merge pull request #1529 from atsawin/master
Add Thai Translation
2013-07-14 20:43:55 -07:00
Atsawin
396d5942b9 Add Thai Translation 2013-07-14 16:16:29 +07:00
Igor Vaynberg
24716bc872 fixes #1513 2013-07-10 16:49:42 -07:00
Igor Vaynberg
1f09c7abaf fix options with empty values. fixes #1497 2013-07-09 00:14:48 -07:00
Igor Vaynberg
247223add7 Merge pull request #1506 from alexryd/remove-bom
Remove the byte order mark
2013-07-08 08:30:39 -07:00
Alexander Ryden
3e2f11d193 Remove the byte order mark 2013-07-08 13:56:11 +02:00
Igor Vaynberg
b8c203ca36 fix #1478 2013-07-03 23:08:55 -07:00
Igor Vaynberg
81b98e7567 fix typo from #1477 2013-07-03 22:45:50 -07:00
Igor Vaynberg
bb7c58406f Merge pull request #1477 from Ugoku/patch-1
Update select2.css
2013-07-03 22:44:39 -07:00
Igor Vaynberg
cdcdc98b55 copy style attr from original element. fixes #1476 2013-07-03 22:42:44 -07:00
Igor Vaynberg
bed05df474 Merge pull request #1486 from fjmilens3/select2-loaded-events
Added select2-loaded event trigger in loadMoreIfNeeded
2013-07-03 22:20:12 -07:00
Igor Vaynberg
88af7ce387 add missing semis. fixes #1489 2013-07-03 22:17:05 -07:00
Igor Vaynberg
567a89e42b Merge pull request #1492 from vikev/master
Bulgarian translation added
2013-07-03 18:53:12 -07:00
Igor Vaynberg
01edc62ff2 Merge pull request #1490 from juliankrispel/patch-1
Rename component.json to bower.json (component.json is deprecated")
2013-07-03 18:52:33 -07:00
Igor Vaynberg
37073f623a Merge pull request #1485 from timisbusy/master
Trimming in opts.createSearchChoice
2013-07-03 15:27:58 -07:00
Igor Vaynberg
42d3ef4405 use click instead of mousedown so we dont break drag and drop support 2013-07-03 15:19:37 -07:00
Igor Vaynberg
ea14b7c30d Merge pull request #1474 from geophree/query-fix
Ignore old queries, remove highlight when beginning a new query.
2013-07-03 15:19:15 -07:00
vikev
a2f138cddf Update select2_locale_bg.js 2013-07-03 17:29:36 +03:00
vikev
a2dbf6fd2d Update select2_locale_bg.js 2013-07-03 11:06:29 +03:00
Lubomir Vikev
081e193a16 Bulgarian translation 2013-07-03 11:00:54 +03:00
Frederick John Milens III
37bf85ead0 Added select2-loaded event trigger in loadMoreIfNeeded 2013-07-02 10:38:09 -05:00
Tim Atkinson
a469143f01 adding trim to opts.createSearchChoice default function to avoid mismatches with val object 2013-07-02 10:35:12 -04:00
juliankrispel
76bfcffac3 Rename component.json to bower.json (component.json is deprecated") 2013-07-02 11:43:59 +01:00
Jeff Hanke
2a0cc76236 Remove ajax out-of-order dropping code, handled in updateResults now. 2013-07-01 13:30:44 -07:00
Ugoku
b7b292bc3b Update select2.css
-ms-box-sizing does not exist, Konqueror does not need prefix.
-ms-text-overflow does not exist, Opera does not need prefix.
-moz-border-radius and -webkit-border-radius not needed anymore.
-moz-background-clip and -webkit-background-clip not needed anymore.
-moz-box-shadow not needed anymore (-webkit still used for Android 2.3)
2013-06-29 17:16:51 +02:00
Igor Vaynberg
be535c7a77 add support for diacritics. fixes #1472 2013-06-28 10:05:12 -07:00
Igor Vaynberg
4947c2950d modified version identifiers in descriptors for release 3.4.1 2013-06-27 18:02:10 -07:00
Jeff Hanke
1eb461a42c Ignore old queries, remove highlight when beginning a new query. 2013-06-27 13:17:35 -07:00
Igor Vaynberg
76f9bae39a fix js error that happens when enter is pressed and there is no highlighted option. fixes #1469 2013-06-27 08:15:58 -07:00
Igor Vaynberg
31117f4ca0 Merge pull request #1468 from derenio/fixing_comment
Add accurate comment to the 'equal' function
2013-06-27 08:05:10 -07:00
Igor Vaynberg
ab22d2f525 Merge pull request #1466 from smajl/patch-1
Update select2_locale_cs.js
2013-06-27 08:03:55 -07:00
Mateusz Dereniowski
8fb7f46297 Add accurate comment to the 'equal' function 2013-06-27 10:30:09 +02:00
smajl
a67fb66362 Update select2_locale_cs.js
Fixed misspelled word "Načítavají" -> "Načítají".
2013-06-27 10:27:49 +02:00
Igor Vaynberg
012a455426 Merge pull request #1465 from geophree/create-search-choice
Always call createSearchChoice and tokenizer with the Select2 object as this.
2013-06-26 16:09:03 -07:00
Jeff Hanke
338a126067 Always call createSearchChoice and tokenizer with the Select2 object as this. 2013-06-26 14:20:22 -07:00
Igor Vaynberg
476b34bd9a Merge pull request #1464 from Tuxosaurus/master
replaces a <div> inside a <a> with a <span>
2013-06-26 10:07:35 -07:00
Cyrille Jouineau
7303852862 replaces a <div> inside a <a> with a <span>
and minor code cleaning
2013-06-26 16:32:07 +02:00
Igor Vaynberg
75edea83b2 added support for data-locked=true next to locked=locked attr. fixes #503. 2013-06-25 21:56:31 -07:00
Igor Vaynberg
4969dcb42c fix #1396 - fix destroy() when double initting 2013-06-23 15:21:16 -07:00
Igor Vaynberg
ef136731d4 move markup escaping of selection into the formatSelection callback. fixes #1417. fixes #1420 2013-06-23 14:32:45 -07:00
Igor Vaynberg
1415567a70 Merge pull request #1455 from vitalets/event-params
fix: data not passed in select2-loaded event
2013-06-22 07:59:17 -07:00
Igor Vaynberg
3e9f0ccbdc Merge pull request #1452 from ibrahimyu/master
Added Indonesian Translation
2013-06-22 07:56:37 -07:00
Igor Vaynberg
fc97452acf Merge pull request #1450 from dpanda/master
Easier use of span elements for selection formatting
2013-06-22 07:55:59 -07:00
vitalets
c57dd1f0ff fix: data not passed in select2-loaded event 2013-06-22 18:19:44 +04:00
imjooseo
5d561bdfe6 Added Indonesian translation 2013-06-22 01:56:54 +07:00
Igor Vaynberg
24c8a19a40 Merge pull request #1445 from spoqa/master
Korean Translation.
2013-06-20 08:56:26 -07:00
daniele panza
161dbb4281 Updated CSS rule to avoid unwanted styling of <span> tags used in options templates 2013-06-20 17:50:41 +02:00
Seong Won Mun
440561761f Added Korean translation. 2013-06-20 14:54:15 +09:00
Igor Vaynberg
3ab1aafae5 fix #1425 ctrl+enter should not open 2013-06-19 22:49:35 -07:00
Igor Vaynberg
ce67f7b7fb fix #1426 - reinitting screws up tabindex 2013-06-19 22:39:03 -07:00
Igor Vaynberg
779b4bae70 Merge pull request #1441 from fitnr/master
Add border to active element drop down.
2013-06-19 10:41:59 -07:00
Igor Vaynberg
3481268f82 Merge pull request #1440 from Outlivier/master
#1429 : French locale, correct file encoding and diacritics.
2013-06-19 08:59:04 -07:00
fitnr
9062267ffa Add border to select2-drop-active
This creates a blue border around an entire active select2 element
2013-06-19 11:58:45 -04:00
Outlivier
7aa8f45063 #1429 : French locale, correct file encoding and diacritics. 2013-06-19 17:39:36 +02:00
Adel KEDJOUR
f132bb36b0 Update select2_locale_ar.js
Translate in the of 1 or 2 or more than 2 because not the same in Arabic.
2013-06-16 18:28:47 +02:00
Igor Vaynberg
455067ed4e fix #1391 make tabbing out work when no results message is shown 2013-06-13 21:02:49 -07:00
Igor Vaynberg
c36b53ad24 fix #1404 allow formatnomatches to be null in multiselects 2013-06-13 20:48:48 -07:00
Igor Vaynberg
48294f2aea remove undermask for ie since its no longer needed after #1414 2013-06-13 20:34:59 -07:00
Igor Vaynberg
d2dc771197 Merge pull request #1414 from easy2luv/master
Drop-mask not working in IE (a CSS solution)
2013-06-13 20:27:55 -07:00
easy2luv
2e9ae91d6c add styles to .select2-drop-mask needed for mask to work in IE 2013-06-13 10:47:14 -07:00
Igor Vaynberg
5159e9872d Merge pull request #1401 from openwide-java/update-french-translation
Sync French translation with source (change made in 5193dc4)
2013-06-12 18:35:50 -07:00
Igor Vaynberg
4aaa887b64 fix ie detection logic 2013-06-12 18:32:22 -07:00
Igor Vaynberg
7c729555e5 improve highlighting in single selects 2013-06-12 17:56:58 -07:00
Igor Vaynberg
29129008d5 when opened scroll to selected item. fixes #1408. closes #1411 2013-06-12 17:49:32 -07:00
Guillaume Smet
bbff80b87f Sync French translation with source (change made in 5193dc4) 2013-06-10 13:40:02 +02:00
Igor Vaynberg
b1867b5341 fix access to search method. fixes #1392 2013-06-06 21:58:10 -07:00
Igor Vaynberg
4917429c7a fixes #1387, better handling of ajax handler var 2013-06-05 08:23:49 -07:00
Igor Vaynberg
111cf37cfe fixes #1386 2013-06-05 08:18:00 -07:00
Igor Vaynberg
e6db3ef208 fixes #1385 2013-06-05 08:14:41 -07:00
Igor Vaynberg
d60fe099b4 Merge pull request #1384 from XP1/patch-2
Update README.md: Use consistent verb tenses.
2013-06-05 08:11:02 -07:00
Igor Vaynberg
a810f27373 Merge pull request #1383 from XP1/patch-1
Update README.md: Use consistent sentence casing.
2013-06-05 08:10:39 -07:00
XP1
1d8cbe7a1a Update README.md
Use consistent verb tenses.
2013-06-05 00:40:55 -04:00
XP1
28d0d04883 Update README.md
Use consistent sentence casing.
2013-06-05 01:34:54 -03:00
Igor Vaynberg
cfbed6f6fe Merge pull request #1362 from MichaelSitter/master
Set input value and update results
2013-06-04 10:44:10 -07:00
Mike S
bbd08bec03 Restoring allowedMethod container 2013-06-04 10:09:49 -07:00
Mike S
796c9e802a Renamed to search 2013-06-04 10:04:14 -07:00
Mike S
06130ffc12 Added setSearch method 2013-06-04 10:04:13 -07:00
Igor Vaynberg
30dac9a40b export default escapeMarkup function so it can be easily accessed. #1222 2013-06-04 08:42:46 -07:00
Igor Vaynberg
4e7a8b00fc a tweak to prevent clicks propagating through the mask on IE9. #1058 2013-06-04 08:33:02 -07:00
Igor Vaynberg
8904e42ef9 correctly handle undefined placeholders. tweak to issue #1365 2013-06-03 12:12:46 -07:00
Igor Vaynberg
def8adca7c cleaner way to detect older IE 2013-06-03 11:19:00 -07:00
Igor Vaynberg
5d8f03c90b clarify syntax. fixes #1358 2013-06-03 10:02:19 -07:00
Igor Vaynberg
d08d9ff18c Revert "add title for choice item"
This reverts commit 79228ce1e0.
2013-06-03 09:55:52 -07:00
Igor Vaynberg
a4a3eedd51 component stays open after clicking on a native select in IE. fixes #1356 2013-05-31 17:57:21 -07:00
Igor Vaynberg
efc609d073 close on tab-out. fixes #1341 2013-05-31 17:14:29 -07:00
Igor Vaynberg
cb7b5464a1 only validate initSelection is present on val() if we are not clearing 2013-05-31 15:29:14 -07:00
Igor Vaynberg
9a3666edb5 Merge pull request #1365 from corinnaerin/master
Feature: Allow placeholders with nonempty values
2013-05-31 15:12:32 -07:00
Igor Vaynberg
fcd7da798b Merge pull request #1370 from jeffturcotte/master
Ability to get dropdown element
2013-05-31 11:58:33 -07:00
Jeff Turcotte
ae71175dbe Added ability to get the dropdown element 2013-05-31 12:17:15 -04:00
Corinna Schmidt
50cbd3927c new placeholderOption option
added ability to specify an option through a function or the shortcut
"first" which will be used as the placeholder option. If no placeholder
text is specified, then the text of this option will be used as the
placeholder text.
2013-05-30 13:41:08 -04:00
Ahmed Medhat Othman
75a062fc0f Adding Arabic locale file
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-05-28 13:29:22 -07:00
Igor Vaynberg
ae2f61ef12 Merge pull request #1351 from alexhaas/patch-1
Fixing inline width declaration when this.opts.width is set to "copy"
2013-05-28 13:15:54 -07:00
Igor Vaynberg
812b28c173 Merge pull request #1350 from lollypopgr/master
Added Greek Language translation
2013-05-28 12:44:47 -07:00
Igor Vaynberg
6858742e16 improve focus handling on mobiles. fixes #1344 2013-05-28 12:32:36 -07:00
alexhaas
0fc90ec95a Update select2.js
Fixing a container width problem that was caused by an inline width declaration when this.opts.width is set to "copy" (the default).
2013-05-27 15:13:09 -03:00
George Drakakis
e1c336578c UTF8 without DOM file 2013-05-27 20:23:10 +03:00
George Drakakis
5912a188de Added Greek translation 2013-05-27 20:20:46 +03:00
Igor Vaynberg
87e62004f6 remove unnecessary code 2013-05-22 23:40:26 -07:00
Igor Vaynberg
f1a5fe2c9e remove dupe format no matches messages. fixes #1341 2013-05-22 23:38:39 -07:00
Igor Vaynberg
213d281ece fix first char being lost. fixes #196 2013-05-22 22:14:42 -07:00
Igor Vaynberg
207139bc12 Merge pull request #1335 from rajeshmeniya/patch-1
Create select2_locale_fi.js
2013-05-21 08:49:10 -07:00
Igor Vaynberg
78e686c23b Merge pull request #1336 from igaidai4uk/patch-1
Remove duplication of "No matches found" message
2013-05-21 08:37:39 -07:00
Igor G.
dae97ffc83 Remove duplication of "No matches found" message
In case if data is fetched in chunks, not at once, "No matches found" message is shown as many times as we requested for it.
Lets say we have 15 items, and data is fetched 5 at a time. After all items are selected, "No matches found" message would be duplicated 3 times.
2013-05-21 17:20:24 +03:00
Rajesh Meniya
ca446422d8 Create select2_locale_fi.js
Finnish translations
2013-05-21 17:32:21 +05:30
Igor Vaynberg
79a0f1de4f Merge pull request #1331 from execjosh/japanese-translation
Shorten Japanese translation for `formatNoMatches`
2013-05-20 08:50:48 -07:00
execjosh
2ac008c483 Shorten Japanese translation for formatNoMatches 2013-05-21 00:44:38 +09:00
Igor Vaynberg
02f3ede201 Merge pull request #1330 from execjosh/sync-translation-template-with-source
Sync translation template with source
2013-05-20 08:02:55 -07:00
execjosh
b0ffea89a6 Sync translation template with source
This change syncs the translation template with the actual string
used for `$.fn.select2.defaults.formatInputTooLong`.

The source was changed by 5193dc40b9.
2013-05-20 23:00:54 +09:00
Igor Vaynberg
70f1b29882 optimize mousemove listener. fixes #1328 2013-05-17 08:14:09 -07:00
Igor Vaynberg
38f6b2bd71 Merge pull request #1320 from jamesramsay/selected-css-class
Added support for css class for selected elements
2013-05-16 21:50:35 -07:00
James Ramsay
856dc0b526 Added support for css class for selected elements 2013-05-17 09:11:58 +10:00
Igor Vaynberg
06440a6bf8 MultiSelect JavaScript error - no method 'showSearch'. fixes #1311 2013-05-14 15:17:24 -07:00
Igor Vaynberg
de6d90c079 fix typo. fixes #1310 2013-05-14 14:05:33 -07:00
Igor Vaynberg
3b5b84fc99 Update README.md 2013-05-14 09:52:42 -06:00
Igor Vaynberg
95d3728b77 modified version identifiers in descriptors for release 3.4.0 2013-05-14 08:27:33 -07:00
Igor Vaynberg
2764752a94 Merge pull request #1306 from julen/no-bom
Removed BOM.
2013-05-14 08:14:14 -07:00
Julen Ruiz Aizpuru
66e06acde8 Removed BOM. 2013-05-14 11:41:31 +02:00
Igor Vaynberg
a345599807 Merge pull request #1299 from olragon/master
Create select2_locale_vi.js Vietnamese translation
2013-05-13 09:06:56 -07:00
Igor Vaynberg
6b357a9fe8 Merge pull request #1298 from dirkpostma/patch-1
Turn off autocorrect and autocapitilze
2013-05-13 09:05:55 -07:00
Long Nguyen
af81daf7bb Create select2_locale_vi.js Vietnamese translation 2013-05-13 13:03:42 +07:00
dirkpostma
f235a84aa8 Turn off autocorrect and autocapitilze
On e.g. mobile devices, it's more user friendly to turn off autocorrect in input fields. This patch adds the attributes autocorrect, autocapitilize and spellcheck. See also:

http://davidwalsh.name/disable-autocorrect
2013-05-12 21:06:16 +03:00
Igor Vaynberg
fa8d260114 Merge pull request #1292 from dshoulders/patch-1
Create select2_locale_is.js
2013-05-10 08:17:48 -07:00
dshoulders
834601e70b Create select2_locale_is.js
Icelandic translation
2013-05-10 16:27:37 +02:00
Igor Vaynberg
4e1873fb9d set maxlength on search when maximumInputLength is defined. closes #538 2013-05-10 00:43:30 -07:00
Igor Vaynberg
26751cb157 small css tweak. #929 2013-05-10 00:34:49 -07:00
Igor Vaynberg
828d7a5052 better way to remove outlines 2013-05-09 21:21:37 -07:00
Igor Vaynberg
7fc16ed094 fix focus in mobile. fixes #1018 2013-05-09 09:48:31 -07:00
Igor Vaynberg
49c05d35b4 norvegian locale 2013-05-09 08:20:35 -07:00
Igor Vaynberg
11c08cab12 bind/delegate -> on. #1260 2013-05-09 00:07:35 -07:00
Igor Vaynberg
92617ec54e preserve order of elements in the data call. fixes #1280 2013-05-08 23:53:30 -07:00
Igor Vaynberg
3d4595c834 Merge pull request #1284 from foxel/master
this.autofocus is undefined on destroy inside init
2013-05-08 22:30:58 -07:00
Foxel
a957ed81fd Fixed undefined this.autofocus on destroy while creating on element that already have select2 applied 2013-05-09 10:36:46 +07:00
Igor Vaynberg
5762b85dd2 prevent opening of a disabled select via api. fixes #1272 2013-05-07 12:39:18 -07:00
Igor Vaynberg
92ceb93e93 fix ajax defaults not to interfere with options 2013-05-07 09:07:03 -07:00
Igor Vaynberg
bcfa3fc702 show search if minimum input length has been set 2013-05-07 08:39:16 -07:00
Igor Vaynberg
43e6b86f75 prevent scrollback left on opening. fixes #467 2013-05-06 23:40:31 -07:00
Igor Vaynberg
13c1dcbf67 add default ajax options. fixes #1125 2013-05-06 21:20:08 -07:00
Igor Vaynberg
694432d83d fix fast typing in IE. fixes #949 2013-05-06 20:54:26 -07:00
Igor Vaynberg
26f41602b2 Merge pull request #1247 from juliankrispel/master
Display formatNoMatches when all ajax results are selected
2013-05-06 20:29:25 -07:00
Igor Vaynberg
e21018147c fixes #1263 2013-05-06 20:26:30 -07:00
Igor Vaynberg
d668ae76d0 select2-focus and select2-blur events. fixes #798. closes #866 2013-05-06 20:13:05 -07:00
Igor Vaynberg
882e7996f4 keep focus in control when the mask is clicked 2013-05-06 20:05:15 -07:00
Igor Vaynberg
4094c1c7de fix tab-on-select transfers focus to next element. fixes #898. fixes #1045 2013-05-06 19:42:38 -07:00
Igor Vaynberg
9c1caa6d3a add handling of autofocus attribute. fixes #837 2013-05-06 19:25:09 -07:00
Igor Vaynberg
18c2bc5cb9 need at least 1x1 px space to receive focus 2013-05-06 19:11:13 -07:00
Igor Vaynberg
b0959000b3 namespace events and consoldate select and selected into selecting. fixes #497. fixes #1262 2013-05-06 16:12:38 -07:00
Igor Vaynberg
266861ac51 fix parameter names 2013-05-06 15:26:46 -07:00
Igor Vaynberg
231cce0add Merge pull request #1187 from barryhunter/patch-2
Bugfix for Resetting Scrollpoint on Multi-select
2013-05-06 15:25:55 -07:00
Igor Vaynberg
5c709bac15 improve offscreen element positioning. fixes #1217. fixes #1218. fixes #1074 2013-05-06 15:23:46 -07:00
Igor Vaynberg
8008bfa8dc attr to prop change. #1260 2013-05-06 15:23:46 -07:00
Igor Vaynberg
c33b9d5e98 Merge pull request #1219 from alexhaas/master
select2-drop-mask background and transparency
2013-05-06 15:16:42 -07:00
Igor Vaynberg
0fe95eb07c Merge pull request #1062 from bigmihail/patch-1
Use $.prop() to get "multiple" attribute
2013-05-06 14:07:26 -07:00
Igor Vaynberg
adb126edc6 Merge pull request #1239 from NielsKuhnel/master
Keyboard navigation in choices (whitespace preserved)
2013-05-06 13:41:06 -07:00
Igor Vaynberg
55827b9159 introduce support for separate readonly and disabled modes. closes #1253. fixes #778. closes #1183 2013-05-06 13:13:02 -07:00
Igor Vaynberg
c02ea3a030 add margin:0 to select2-cotnainer. fixes #1254 2013-05-06 09:58:49 -07:00
Igor Vaynberg
62e0ae6004 #1260 closes #1252 fixes #992 - retrieve option text as value when value is not defined 2013-05-06 09:54:17 -07:00
Igor Vaynberg
83050fd2fa Problem escaped caracter on IE7. fixes #856 2013-05-06 09:34:44 -07:00
Igor Vaynberg
d77b7dbf13 Merge pull request #1255 from demofan/patch-1
Update select2_locale_zh-TW.js
2013-05-06 09:28:14 -07:00
Igor Vaynberg
ab699c1b87 Merge pull request #1258 from 19Gerhard85/patch-1
Closes #1228
2013-05-06 09:21:14 -07:00
19Gerhard85
0d67130d62 Closes #1228 2013-05-06 17:10:08 +03:00
demofan
0810322221 Update select2_locale_zh-TW.js 2013-05-06 14:22:41 +08:00
Julian Krispel-Samsel
9d06fe24dc Render formatNoMatches when all ajax results are selected #381 2013-05-04 08:03:00 +01:00
Igor Vaynberg
07afbdf0eb Merge pull request #1243 from boccob/master
Fixed Russian translation
2013-05-03 08:36:50 -07:00
Boccob
d6b62ca86b fixed Russian translation 2013-05-03 18:10:07 +03:00
Niels Kühnel
870b1b7165 Less aggresive keyboard deletes and carret stays 2013-05-03 11:51:41 +02:00
Igor Vaynberg
4168e061b1 Merge pull request #1240 from norkunas/master
formatSelectionTooBig fix
2013-05-02 16:21:05 -07:00
Tomas
043132fe98 Update select2_locale_lt.js 2013-05-03 01:56:21 +03:00
Niels Kühnel
877c1d90c5 Keyboard navigation in choices (tags) 2013-05-03 00:41:55 +02:00
Igor Vaynberg
36f6f67965 Merge pull request #1236 from leighhalliday/master
Changing from &apos; to &#39; because &apos; isn't html standard and doesn't work in IE8
2013-05-02 12:57:54 -07:00
Leigh Halliday
da7dd51294 Changing to from &apos; to &#39; because &apos; isn't supported in IE8 2013-05-02 12:03:20 -04:00
Igor Vaynberg
8412c758c2 Merge pull request #1226 from Haran/latvian
Added Latvian translation
2013-04-29 10:02:56 -07:00
Shader
a57bbf0d52 Added Latvian translation 2013-04-29 13:53:29 +03:00
Igor Vaynberg
78139a80ba work around chrome and mutation observer bug. fixes #1099 2013-04-27 11:08:29 -07:00
Igor Vaynberg
53fff96c29 Merge pull request #1225 from arhakal/patch-1
Update select2_locale_fr.js
2013-04-27 11:03:10 -07:00
Igor Vaynberg
4fd71df566 Merge pull request #1224 from unho/galician-translation
Galician translation
2013-04-27 11:02:29 -07:00
arhakal
3b9e1d7b50 Update select2_locale_fr.js
Replace accented characters by HTML entities to avoid character set issues.
2013-04-27 11:05:35 -03:00
Leandro Regueiro
a70528221c Galician translation 2013-04-27 13:42:09 +02:00
Igor Vaynberg
839d4db9de Merge pull request #1222 from orloffv/patch-1
add title for choice item
2013-04-26 10:57:58 -07:00
Vitaly
79228ce1e0 add title for choice item 2013-04-26 18:22:23 +04:00
Igor Vaynberg
093f92c09e Merge pull request #1214 from leesei/master
Added Traditional Chinese translation
2013-04-25 22:02:35 -07:00
alexhaas
bf65a2ab25 Update select2.css
Removing select2-drop-mask background and transparency to help out corporate-modified IE 8 and IE 7 browsers that disable the "filter" property in CSS.
2013-04-25 16:35:43 -03:00
leesei
b1a1a1c095 Added Traditional Chinese translation
Changes to be committed:
	new file:   select2_locale_zh-TW.js
2013-04-25 13:51:26 +08:00
Jason Hinch
f37f07006c Floor the searchWidth calculation due to inconsistencies between fractional pixel handling in different browsers 2013-04-24 15:04:38 +10:00
Igor Vaynberg
4f8e89c465 Merge pull request #1210 from kevin-brown/fix_et
Fixed language code for Estonian translation file
2013-04-23 12:31:05 -07:00
Kevin Brown
6dba1b170c Fixed language code for Estonian translation file [Fixes #1207] 2013-04-23 14:55:58 -04:00
Igor Vaynberg
5a9905bfa7 Merge pull request #1186 from barryhunter/patch-1
Allow overriding jquery's automatic cache-busting on ajax calls
2013-04-23 08:53:45 -07:00
Igor Vaynberg
28f50c9462 Merge pull request #1197 from kuldarkalvik/master
Estonian translation
2013-04-17 20:39:26 -07:00
Kuldar Kalvik
dfebf2d339 Estonian translation 2013-04-17 20:44:27 -06:00
Igor Vaynberg
d57fb4733b Update select2.jquery.json 2013-04-17 10:16:16 -07:00
barryhunter
4e8da110d6 Bugfix for Resetting Scrollpoint on Multi-select
Duplicating pull request #974 - which seemed to only fix it for 'single' version. Have copied the same condition into the one for 'multi' case. There may be a better way, but in my testing this seems to have worked.
2013-04-15 00:25:51 +02:00
barryhunter
f511d5a2ff Allow overriding jquery's automatic cache-busting on ajax calls
By default jQuery (and Select2) add parameters to ajax calls, to invalidate browser caching. In certain circumstances its useful to disable this (eg when server sets good Cache-Control headers), this patch allows passing the cache/jsonpCallback params though to jquery's ajax function.
2013-04-14 23:14:16 +02:00
Julen Ruiz Aizpuru
8cb3698820 Fix #1172 -- Properly set width when allowClear is being used.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-04-12 07:58:31 -07:00
Igor Vaynberg
25549c787b Revert "applied fix for #1172 - Clear button overlaps text"
This reverts commit fd07c11484.
2013-04-12 07:58:13 -07:00
Igor Vaynberg
06c82f2d0b do not propagate change event from the search field out of the component. fixes #1178 2013-04-11 20:22:52 -07:00
Igor Vaynberg
733f19e549 Merge pull request #1180 from rice/bug/remove-inline-styles
Remove inline styles
2013-04-11 20:14:08 -07:00
Alex Rice
a0f35aba3f Remove inline styles 2013-04-12 02:57:03 +00:00
Igor Vaynberg
4a0851bce5 Array data with custom key (string) isn't returning matches. fixes #1179 2013-04-11 19:15:16 -07:00
Igor Vaynberg
fd07c11484 applied fix for #1172 - Clear button overlaps text 2013-04-11 15:00:17 -07:00
Igor Vaynberg
c7056adc80 Merge pull request #1177 from psybaron/master
Macedonian Locale Added
2013-04-11 08:21:34 -07:00
Marko Aleksic
d207a56c34 Macedonian locale added 2013-04-11 16:18:34 +02:00
Igor Vaynberg
2a792bd1c9 Merge pull request #1176 from hoopyfrood/master
Removed typo (extra character)
2013-04-10 15:41:24 -07:00
Martin K.
9057a9606f Update select2.js
See #1175 - fixed typo introduced in last commit
2013-04-10 19:33:23 -03:00
Igor Vaynberg
45995d0f34 fix tabindex for both multi and single. fixes #1169 2013-04-10 12:56:30 -07:00
leipie
bc2c780449 Fix tabindexing
Actually set tabindex on the select2-focusser for focussing on tab
navigation

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-04-10 12:43:30 -07:00
Igor Vaynberg
f582d8ae15 Merge pull request #979 from mynameistechno/master
Fixes #291
2013-04-10 12:30:05 -07:00
Igor Vaynberg
92e2c6d56f Merge pull request #1073 from norlin/master
Fix initSelection method with empty input value
2013-04-10 08:22:10 -07:00
Igor Vaynberg
fffba0d1d2 fixes #1110 2013-04-09 20:36:23 -07:00
Igor Vaynberg
dc27a5b74d add a rejectable select event. fixes #1053 2013-04-09 19:53:11 -07:00
Igor Vaynberg
931862c6ef reverse selection gradient when opened up to have better separation. fixes #1040 2013-04-09 19:44:24 -07:00
Igor Vaynberg
2bf5a763c5 fix keystroke dropping when single select is opened by typing in unopened state really fast. fixes #949 2013-04-09 18:58:30 -07:00
Igor Vaynberg
bd2a8c6d84 centralize option tag to data element translation 2013-04-09 15:11:39 -07:00
Igor Vaynberg
49e9908656 Merge pull request #1162 from leipie/master
Fix IE8 clickable issues
2013-04-09 09:54:49 -07:00
Igor Vaynberg
598773258e fixes #1163 fixes #1160 fixes #1129 2013-04-09 09:51:24 -07:00
leipie
d1c81dfbe2 Make select whole select clickable in IE8 2013-04-09 17:12:01 +02:00
Igor Vaynberg
d2f27a0a8a Merge pull request #1149 from dplanella/master
Added Catalan translation
2013-04-08 16:38:18 -07:00
Igor Vaynberg
9d8ecc34f8 Merge pull request #1158 from Karmalakas/master
Lithuanian language translation added
2013-04-08 16:33:53 -07:00
Igor Vaynberg
511c1b8728 when resolving width use case insensitive expression. fixes #1065 2013-04-08 16:25:46 -07:00
Igor Vaynberg
de07ba2b16 apply offscreen class after calculating width because offscreen class resets the width. also use css('width') when copying width if it returns a usable value. fixes #1140. fixes #1079 2013-04-08 16:24:15 -07:00
Igor Vaynberg
ec83e76f5e Repack Hebrew Translation. closes #1154 2013-04-08 09:57:20 -07:00
mantas
266b168613 Email changed 2013-04-08 15:03:22 +03:00
mantas
b36850644e Fixed lithuanian translation 2013-04-08 14:03:03 +03:00
mantas
e8a0336894 Lithuanian language translation added 2013-04-08 13:12:14 +03:00
David Planella
66ad7efe4d Added Catalan translation 2013-04-06 11:48:35 +02:00
Igor Vaynberg
b774917b16 Merge pull request #1141 from AJenbo/master
Danish translation
2013-04-03 14:02:35 -07:00
Anders Jenbo
c2e417d6a8 ... 2013-04-03 20:28:05 +02:00
Anders Jenbo
3d80856643 Danish translation 2013-04-03 20:23:10 +02:00
Igor Vaynberg
d80ec81199 Merge pull request #1055 from jessefoster/autoDropdownWidth
Add option to automatically size dropdown width
2013-04-03 09:16:01 -07:00
Igor Vaynberg
45e1b20e97 Merge pull request #1136 from execjosh/japanese-translation
Add Japanese translation
2013-04-03 09:00:31 -07:00
execjosh
edddf961a1 Add Japanese translation 2013-04-03 17:10:24 +09:00
Igor Vaynberg
7047b81916 merging the hebrew locale commit from KingYes 2013-04-02 14:21:42 -07:00
Igor Vaynberg
8e63ca3eba Merge pull request #1127 from Iristyle/patch-1
Fix: Incorrect Bower specification
2013-04-01 08:40:27 -07:00
Ethan J. Brown
5b6eab0878 Fix: Incorrect Bower specification
- ~ version means 1.4.x, not >= 1.4 which is what we want
 - there is no spinner.gif, but there is a select2-spinner.gif
2013-04-01 12:12:04 -03:00
Igor Vaynberg
708064fbe8 Merge pull request #1123 from sineld/patch-1
Useless space removed.
2013-03-30 10:14:31 -07:00
Sinan Eldem
f70c5e2833 Useless space removed. 2013-03-30 12:30:29 +02:00
Igor Vaynberg
d3fc101ccb Merge pull request #1111 from lazyhammer/fix-choice-focus
Fix focus issue on multi-value select (closes #1109)
2013-03-28 08:53:45 -07:00
Dmitrii Chekaliuk
aedcc10b8f Fix focus issue on multi-value select
Inside the multi-value select box, when you hit backspace next to the
choice, it gets the `select2-search-choice-focus` class, but that class
is not being removed when select box loses the focus.
2013-03-28 02:29:59 +02:00
Igor Vaynberg
c951b72bce Add link to Yii integration. Closes #1102 2013-03-27 09:00:19 -07:00
Igor Vaynberg
e88d8904d5 Merge pull request #1101 from jkondratowicz/master
Add Polish translation
2013-03-27 08:36:29 -07:00
Jan Kondratowicz
a7bfe53361 Add Polish translation 2013-03-27 15:07:52 +01:00
Igor Vaynberg
2f69290e2d Merge pull request #1095 from nolamesa/patch-1
Fix for random scrolling when using hierarchical data
2013-03-26 12:19:35 -07:00
Igor Vaynberg
f9f76d8b4c remove debug statement 2013-03-26 08:48:54 -07:00
nolamesa
5b0bbfeb7c Fix for random scrolling when using hierarchical data
When using hierarchical data there is a random scroll jump when hovering over select options. The reason is that in the case of hierarchical data the highlightable choices are <ul> and thus their outer height is many pixels (includes the children's height as well). A fix is to make the height calculations by using the the label divs.
2013-03-26 14:49:02 +02:00
Igor Vaynberg
545fb8f307 Merge pull request #1092 from michalmarek/master
Czech translation
2013-03-25 19:34:41 -07:00
Michal Marek
7770fb7b15 Czech translation
Czech translation with inflection function from David Vallner (author
of Slovak translation)
2013-03-26 01:56:36 +01:00
Igor Vaynberg
5782e07ff8 modified version identifiers in descriptors for release 3.3.2 2013-03-25 12:14:18 -07:00
Igor Vaynberg
2843a4f21f switch release to uglifyjs instead of closure 2013-03-25 12:13:45 -07:00
Igor Vaynberg
7a3d3dcd2b Revert "Added ajax.transport support to default options"
This reverts commit 04a6535bd5.
2013-03-25 09:17:19 -07:00
Igor Vaynberg
94c1706c67 clear off active class when closing. #1089 2013-03-25 08:57:35 -07:00
Igor Vaynberg
519070b11d fix label focussing bug on ios. fixes #1008. 2013-03-25 08:54:01 -07:00
Igor Vaynberg
45559654bc fixes #1057 2013-03-25 08:54:01 -07:00
Igor Vaynberg
67fb12dc9e Merge pull request #1086 from emodric/croatian_translation
Add Croatian translation
2013-03-25 08:24:29 -07:00
Edi Modrić
ed3a361581 Add Croatian translation 2013-03-25 13:34:31 +01:00
Igor Vaynberg
a624417556 Merge pull request #1083 from rvignacio/default_ajax.transport
Added ajax.transport default option
2013-03-23 21:22:34 -07:00
rvignacio
04a6535bd5 Added ajax.transport support to default options 2013-03-23 17:26:37 -03:00
Igor Vaynberg
74a2805dde Merge pull request #1081 from gboer/patch-2
Fix for when you specify tags using JSON-encoded select2-tags-attribute.
2013-03-23 13:21:18 -07:00
gboer
ea39b25bf6 Update select2.js
Fix for when you specify tags using JSON-encoded select2-tags-attribute.

And thank you for properly implementing my (earlier) submitted hack :)
2013-03-23 15:05:16 +01:00
Igor Vaynberg
4a1c8491a7 Merge pull request #1075 from salimkayabasi/master
added turkish translation
2013-03-22 08:47:19 -07:00
Salim KAYABAŞI
30cdb9ced7 turkish translation added 2013-03-22 12:53:54 +02:00
norlin
c8cae0a6c9 fix initSelection with empty input value 2013-03-22 10:14:39 +04:00
Mihail
381f173e55 Use $.prop() to get "multiple" attribute
The string 
opts.element.attr("multiple") 
returns:
1) string "multiple" - if element have attribute multiple (<select name="..." multiple></select>)
2) undefined - if element have not attribute multiple (<select name="..."></select>)
It is written in the documentation:
"As of jQuery 1.6, the .attr() method returns undefined for attributes that have not been set."
"To retrieve and change DOM properties, use the .prop() method."
(http://api.jquery.com/attr/)

I am propose use "prop" function. The string
opts.element.prop("multiple")
returns:
1) boolean "true" - if element have attribute multiple
2) boolean "false" - if element have not attribute multiple

After, the "multiple" variable use in check of the condition:
select2 = multiple ? new MultiSelect2() : new SingleSelect2();
Better use true/false variable value than "multiple"/undefined in this condition.

Tested in Opera 12 and IE 8.0.7601
2013-03-20 14:19:05 +02:00
Igor Vaynberg
b6186164fe Merge pull request #1060 from bigmihail/patch-1
Ukrainian translation file
2013-03-19 14:19:50 -07:00
bigmihail
8c3f71145e Create Ukrainian translation file 2013-03-19 22:58:59 +02:00
Igor Vaynberg
a425c124e1 Update README.md 2013-03-19 09:00:39 -07:00
Igor Vaynberg
d482a6ed6a Update README.md 2013-03-19 08:54:47 -07:00
Igor Vaynberg
96ddc7ad4f Update README.md 2013-03-19 08:53:36 -07:00
Igor Vaynberg
1de786b8da Update README.md 2013-03-19 08:53:02 -07:00
Igor Vaynberg
1d2387f1e3 Merge pull request #1056 from dlx1986/bugfix
fix a bug when use multi
2013-03-19 08:30:38 -07:00
ZhongYou
6a58e99285 trigger "focus" event in focus function make chrome error:
"Uncaught RangeError: Maximum call stack size exceeded"
2013-03-19 18:01:12 +08:00
jfoster
7956d7aee3 Add option to automatically size dropdown width 2013-03-18 19:56:38 -04:00
Igor Vaynberg
6a29e594b6 Merge pull request #1052 from julen/eu-locale
Added Basque translation.
2013-03-18 08:18:49 -07:00
Julen Ruiz Aizpuru
2d636d5894 Added Basque translation. 2013-03-18 16:02:55 +01:00
Igor Vaynberg
4530e74e95 Merge pull request #1042 from JensRantil/fix-issue-1042
Bugfix: Avoid implosion of empty <option>s
2013-03-15 08:25:06 -07:00
Igor Vaynberg
cbc5106d80 Merge pull request #1043 from Smartik89/master
Romanian translation.
2013-03-15 08:18:59 -07:00
Smartik89
24eaac6819 Added Romanian translation 2013-03-15 13:26:42 +02:00
Jens Rantil
eac267b11f Bugfix: Avoid implosion of empty <option>s
When using select2 on

<select>
  <option value="empty"></option>
  <option>Val 1</option>
  <option>Val 2</option>
</select>

The top option will not have the correct height.
2013-03-15 11:15:03 +01:00
Igor Vaynberg
b826b7f5e3 Merge pull request #1035 from millimoose/master
Slovak localisation
2013-03-14 14:00:37 -07:00
David Vallner
e66344761b Create Slovak localisation file 2013-03-14 21:42:54 +01:00
Igor Vaynberg
9acfc6faa5 prevent duplicate queries 2013-03-14 12:47:46 -07:00
Igor Vaynberg
3be8547584 added new loaded event. fixes #930 2013-03-14 12:00:06 -07:00
Igor Vaynberg
86a8190080 Loading icon doesn't disappear when using tags with auto tokenization. fixes #1005 2013-03-14 11:39:45 -07:00
Igor Vaynberg
b973b56cce Calling select2('open') on multiple select shows 'No Matches Found'. 2013-03-14 11:31:11 -07:00
Igor Vaynberg
911a0bb082 prevent form from being submitted when enter is pressed in multiselect. fixes #961 2013-03-14 11:14:37 -07:00
Igor Vaynberg
dd34cc5d67 always show spinner during searching. fixes #950 fixes #943 2013-03-14 10:00:25 -07:00
Igor Vaynberg
fcce8aaba4 Merge pull request #1032 from JensRantil/make-inline-friendlier
Centering select2 vertically
2013-03-14 08:25:08 -07:00
Jens Rantil
518cdf8600 Centering select2 vertically
This makes Select2 behave much more sane when it's put inline inbetween
text.
2013-03-14 15:00:09 +01:00
Igor Vaynberg
f60c40d484 Merge pull request #1028 from JensRantil/swedish-translation
Swedish translation
2013-03-13 11:13:08 -07:00
Jens Rantil
75dd4a60ff Swedish translation 2013-03-13 19:06:08 +01:00
Igor Vaynberg
95bbabe5a8 Merge pull request #1025 from JensRantil/enter-less-chars-fix
Minor grammar fix
2013-03-13 10:24:41 -07:00
Igor Vaynberg
3b6766c14e Merge pull request #1026 from JensRantil/translation-process-improvements
Translation process improvements
2013-03-13 10:24:05 -07:00
Jens Rantil
84e5cbb154 Suggesting author header in translation files
This can be highly useful when a translation need to be updated and you
need to contact an older translator.
2013-03-13 18:01:28 +01:00
Jens Rantil
96d319f9d2 Mentioning i18n in README
Should probably be documented on http://ivaynberg.github.com/select2/,
too, but I'm not very much of a Jekyll dude.
2013-03-13 17:59:59 +01:00
Jens Rantil
54dbb825a8 Adding a translation template
This will make it easier to translate to other languages.
2013-03-13 17:52:17 +01:00
Jens Rantil
5193dc40b9 Fixing grammar
I find it hard to "type" less characters. It's sort of unintuitive.
2013-03-13 17:38:34 +01:00
Igor Vaynberg
759fb439fe Merge pull request #1021 from frntz/master
Fix escapeMarkup regexp
2013-03-13 08:03:21 -07:00
frntz
78312ce33f Slash doesn't escaped
Caused problems during uglify minification
2013-03-13 08:40:47 +01:00
Igor Vaynberg
ae4b24a7e8 workaround for IE when manipulating classes. fixes #937 fixes #1017 2013-03-12 09:27:11 -07:00
sjschukin
1cff8d4d22 Update select2.js
bugfix: .select2("data", null) for remote datasource causes an error "ReferenceError: e is not defined"
2013-03-12 16:35:14 +04:00
Igor Vaynberg
89bb328a77 Update README.md 2013-03-12 00:05:18 -07:00
Igor Vaynberg
fb158ed0c8 change how offscreen css is defined. finxes #1011 2013-03-11 16:28:27 -07:00
Igor Vaynberg
814e8b5bed fix #1000 2013-03-07 16:04:19 -08:00
Igor Vaynberg
3acecf1b9d Merge pull request #999 from stefandroog/master
Dutch language support
2013-03-07 11:31:40 -08:00
Stefan Droog
e31abcf3cb Dutch language support
Dutch language support
2013-03-07 20:24:45 +01:00
Igor Vaynberg
8609bee8f1 fix bug in css 2013-03-05 19:30:54 -08:00
Igor Vaynberg
6ea386bd67 Merge pull request #981 from backstop/master
Makes it so we don't query every time we select when maximumSelectionSize is 0
2013-03-05 09:16:34 -08:00
Stephen Starkey
e7f2aeaf08 Don't update results if maximumSelectionSize is 0
a maximumSelectionSize of zero means unlimited, which means 
we shouldn't be updating results if it's set to 0
2013-03-05 10:31:28 -06:00
Mark Matyas
8d424b3202 Fixes #291 2013-03-05 02:19:28 -08:00
Igor Vaynberg
4a3d3c88ac Merge pull request #972 from kevin-brown/master
Added pt-PT localisation
2013-03-04 18:03:33 -08:00
Kevin Brown
27f736cb56 Fixed artifacts in pt-PT translation 2013-03-04 20:35:55 -05:00
Igor Vaynberg
1edfde783c Merge pull request #974 from nkenneweg/master
Bugfix for Resetting Scrollpoint when loading more data.
2013-03-04 08:20:00 -08:00
Nils Kenneweg
414c376a1a fixed a bug resetting scroll when loading more data. 2013-03-04 13:54:03 +01:00
Kevin Brown
90dc789cd9 Added pt-PT localisation [Fixes #970] 2013-03-03 14:21:11 -05:00
Igor Vaynberg
fb69e3a3f0 Merge pull request #971 from jackyyf/master
Chinese Locale Added
2013-03-03 10:12:26 -08:00
Jack Yu
4e676af9f2 Chinese Locale Added 2013-03-04 01:46:06 +08:00
Igor Vaynberg
3fe95ac5a4 Merge pull request #966 from djsmith42/master
Fix mask height/width when document is shorter than window
2013-03-01 14:59:55 -08:00
Dave Smith
953b6f2ac1 Fix mask height/width when document is shorter than window
When the document element (e.g., the body) is shorter than the window,
the select2-drop-mask was not extending all the way to the bottom
of the browser viewport, leading to an area below the body that was
clickable but that select2 did not notice. Thus, if a user clicked
down there, the drop would not disappear. This is particularly
troublesome if the page contains absolutely positioned elements at
the bottom of the browser window.
2013-03-01 15:05:46 -07:00
Igor Vaynberg
66860b2811 Merge pull request #964 from adam-iris/master
Fix for issue #934
2013-03-01 10:47:40 -08:00
Igor Vaynberg
debbcfcede correctly filter out selected options out of elements loaded by infinite scroll. fixes #881 2013-03-01 09:11:45 -08:00
Igor Vaynberg
27f6c0198a fix dropdown mask in ie7/8. fixes #926 2013-03-01 08:48:17 -08:00
Igor Vaynberg
5ae70eca5f work around a firefox bug when calculation search width. fixes #944 2013-03-01 08:29:40 -08:00
Igor Vaynberg
31101764ff add missing element prop to data. fix #936 2013-03-01 00:54:11 -08:00
Igor Vaynberg
8520793f25 workaround for chrome focus bug. fixes #939 2013-02-28 19:47:19 -08:00
Igor Vaynberg
5a6d1e0947 Merge pull request #953 from openwide-java/fix-typos-in-french-translation
Fix 2 typos in the French translation
2013-02-28 08:30:45 -08:00
Guillaume Smet
a867257584 fix typos in the French translation 2013-02-28 15:40:59 +01:00
Adam
dacf51361d Default local initSelection returns the actual selected items
Fix for issue #934. The default initSelection uses a matcher to find
items that match the selection, but if the data is hierarchical what
the matcher returns may actually be grouping elements, so they can't be
treated as a list of matching items.  This fix runs the matcher but
rather than using its return value it collects the matching item(s)
into a closure-scoped variable and then returns that.
2013-02-27 17:05:19 -08:00
Igor Vaynberg
83d77cfa62 fix search field focussing problems. fixes #922 2013-02-27 08:53:44 -08:00
Igor Vaynberg
9c2170c64e Merge pull request #941 from krichprollsch/fr_locale
add french translation
2013-02-26 18:31:31 -08:00
Pierre Tachoire
540d37424f add french translation 2013-02-26 22:04:15 +01:00
Igor Vaynberg
5ea402a288 Merge pull request #921 from rfs/master
Add Brazilian Portuguese translation
2013-02-21 22:44:56 -08:00
Reginaldo Francisco
877e701f31 Add Brazilian Portuguese translation 2013-02-22 02:37:41 -03:00
Igor Vaynberg
1113b9dd64 strip down license header 2013-02-21 09:16:25 -08:00
Igor Vaynberg
55b8176c04 Merge pull request #915 from PVince81/triggerchangeflagforclear
triggerChange flag when calling clear() from val() with empty value
2013-02-21 08:50:58 -08:00
Igor Vaynberg
d3b013dd57 Merge pull request #913 from smartcorestudio/master
Russian translation file for Select2
2013-02-21 08:48:26 -08:00
Vincent Petry
08b75a1798 Do not trigger event when calling clear() from val() with empty value 2013-02-21 10:53:16 +01:00
smartcorestudio
ccb1c7a1e8 Create select2_locale_ru.js
Russian translation file for Select2
2013-02-21 13:21:49 +04:00
Igor Vaynberg
cd0adbe913 fix duplicate values in IE. fix #840 2013-02-20 19:06:05 -08:00
Igor Vaynberg
8e9e65f864 Error when clearing a single-select box multiple times. fix #908 2013-02-20 18:36:11 -08:00
Igor Vaynberg
26c33078bf Merge pull request #907 from blizzy78/german
Add German translation
2013-02-20 14:31:21 -08:00
Maik Schreiber
41777bd06f add German translation 2013-02-20 22:42:36 +01:00
Igor Vaynberg
852d6e824b modified version identifiers in descriptors for release 3.3.1 2013-02-20 09:57:22 -08:00
Igor Vaynberg
250447b53a Clicking the clear button raised the changed event twice. fixes #867 2013-02-20 08:51:03 -08:00
Igor Vaynberg
0b57067c8d Merge pull request #903 from mirceapricop/master
Remove -o-box-shadow for CSS cleanliness.
2013-02-20 08:38:08 -08:00
Mircea Pricop
f5b018dd09 Remove -o-box-shadow since it is not needed.
Opera implements box-shadow without a vendor prefix, so -o-box-shadow
is invalid.

See https://developer.mozilla.org/en-US/docs/CSS/box-shadow
2013-02-20 17:31:24 +01:00
Igor Vaynberg
1b2028f6af Merge pull request #901 from 1ed/hungarian-translation
added Hungarian translation
2013-02-20 08:24:24 -08:00
Gábor Egyed
9a37988a0a added Hungarian translation 2013-02-20 02:40:45 -08:00
Igor Vaynberg
38758d754b fix ajax url() context. fixes #895 2013-02-19 14:11:38 -08:00
Igor Vaynberg
70be25cc6d fix ajax url() context. fixes #895 2013-02-19 13:21:57 -08:00
Igor Vaynberg
9bf4614cd5 fix ajax url() context. fixes #895 2013-02-19 11:54:38 -08:00
Igor Vaynberg
6b65976e17 Merge pull request #893 from bgertonson/ajax_url
#608 fix to allow distinct ajax urls
2013-02-19 10:03:28 -08:00
Igor Vaynberg
b0fb36ece9 Merge pull request #886 from orloffv/patch-1
TypeError: Cannot call method 'positionDropdown' of undefined
2013-02-19 09:43:48 -08:00
Bryan Gertonson
302c87b197 Because a shared options object is passed around when creating each instance of a select2 widget, the query function that was built would use the last ajax url that was set on the options object for all select2 widgets. By using a variable scoped to the closure, the ajax url can be maintained per select2 instance. 2013-02-19 11:18:54 -06:00
Igor Vaynberg
4ca141f4bb added spanish translation. fixes #883 2013-02-19 09:17:15 -08:00
Vitaly
dea7979f11 TypeError: Cannot call method 'positionDropdown' of undefined 2013-02-19 12:19:27 +04:00
Lee Baker
6278e7cca0 Fixing when the data helper is a function for the local query
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-02-16 18:33:27 -08:00
Igor Vaynberg
7d908da52f allow data helper to be a function 2013-02-14 19:52:43 -08:00
Igor Vaynberg
76cd145380 fix placeholder sizing. fixes #430 2013-02-14 01:05:28 -08:00
Igor Vaynberg
179ba17174 do not take over mouseup event in dropdown. fixes #857 2013-02-14 00:49:45 -08:00
Igor Vaynberg
c081d0f00c fix placeholder problem. fixes #853 2013-02-13 01:15:05 -08:00
Igor Vaynberg
244ba1bb43 add [it] locale transations 2013-02-13 00:53:25 -08:00
Igor Vaynberg
cd3d7421c4 allow hiding search field permanently. #189 2013-02-12 00:11:24 -08:00
Igor Vaynberg
8868d59176 delay creation of mask until opening. 2013-02-11 22:16:30 -08:00
Igor Vaynberg
2d97b78fc6 Merge pull request #845 from kevin-brown/master
Better imitate native experience on iOS
2013-02-11 20:29:25 -08:00
Kevin Brown
940d1f2d67 Better imitate native touch experience 2013-02-11 20:31:18 -05:00
Igor Vaynberg
9035dfcb93 equal and indexof need to support comparing items of differnet types, ie string vs number. this is needed because numeric ids stored in val() are strings and need to be compared against data ids which are numbers. fixes #840 2013-02-10 15:16:38 -08:00
Igor Vaynberg
b3a0c3269a ignore modifier keys when enter is pressed. fixes #836 2013-02-09 23:55:34 -08:00
Igor Vaynberg
acdbb02498 open multi dropdown on paste. fixes #577 2013-02-09 23:24:09 -08:00
Igor Vaynberg
52c8a9e2cb remove input height css. fixes #587 2013-02-09 23:15:05 -08:00
Igor Vaynberg
be76cd9ded Merge pull request #599 from DataDog/master
Update context from callback data on `query` call
2013-02-09 23:05:12 -08:00
Igor Vaynberg
bd1dfbd49d Revert "* Fix of issue 550 Select2 and CSS Transforms: dropdown menu is off position: https://github.com/ivaynberg/select2/issues/550"
This reverts commit ef8c49f85f.
2013-02-09 22:19:59 -08:00
Igor Vaynberg
cf2b696fd9 fire change on clear. fixes #558 2013-02-09 20:39:33 -08:00
Igor Vaynberg
a9741f9998 prevent user from selecting text in choices. fixes #551 2013-02-09 20:35:55 -08:00
Igor Vaynberg
f15583a555 make query() aware of the element select2 is attached to. fixes #561 2013-02-09 20:22:21 -08:00
Bob Burton
ef8c49f85f * Fix of issue 550 Select2 and CSS Transforms: dropdown menu is off position: https://github.com/ivaynberg/select2/issues/550
jquery offset() returns incorrect value when ancestor container has css transform applied to it, causing dropdown to appear in incorrect position.

Using { top: variable.offsetTop, left: variable.offsetLeft } instead of variable.offset() fixes this issue

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-02-09 19:55:04 -08:00
Igor Vaynberg
6c9aef4bb3 fire selected before close. #835 2013-02-09 19:13:26 -08:00
Igor Vaynberg
a4c76f2dfb added selected and removed events. fixes #835 2013-02-09 16:44:44 -08:00
Igor Vaynberg
d54378563c fix closeOnSelect and maximumSelectionSize combo bug. fixes #672 2013-02-09 15:48:20 -08:00
Igor Vaynberg
6c4b96791d another tweak for css class filtering. #834 2013-02-09 15:14:45 -08:00
Igor Vaynberg
150160f183 sync css classes. fixes #834 2013-02-09 14:29:48 -08:00
Igor Vaynberg
ebc436c42b improve val() handling on multiselect. fixes #654 2013-02-09 09:41:35 -08:00
Igor Vaynberg
2f53c251d4 added params ajax option to pass extra params to transport. fixes #492 2013-02-09 01:20:19 -08:00
Igor Vaynberg
d56f43092b introduce highlight event. fixes #529. fixes #762 2013-02-09 00:45:14 -08:00
Igor Vaynberg
65af98cfed improve dropdown open up/down mode. fixes #589 2013-02-09 00:08:38 -08:00
Igor Vaynberg
640e7066d9 remove the val(' ').val('') work around in firefox as it is no longer needed. fixes #832 2013-02-08 21:53:43 -08:00
Igor Vaynberg
90998d8442 fire open event after the drop has been opened 2013-02-08 12:21:06 -08:00
Igor Vaynberg
d04d127cab fix triggering of unwated change. #824 2013-02-08 09:49:44 -08:00
Igor Vaynberg
0a201b07a5 Fixed 'width' and 'containerCss' incompatibility. fixes #828 2013-02-08 09:40:47 -08:00
Igor Vaynberg
69d4e0896d Fixed 'width' and 'containerCss' incompatibility. fixes #828 2013-02-08 09:34:09 -08:00
Igor Vaynberg
ef364d2118 better handling of first character typed. fixes #196 2013-02-08 09:33:18 -08:00
Igor Vaynberg
2149da3b6b remove unnecessary file 2013-02-07 20:42:14 -08:00
Igor Vaynberg
3be3188853 fix bug in destroy method that would keep the original element hidden. fixes #815 2013-02-07 16:20:29 -08:00
Igor Vaynberg
3ec535ec5b make search work with chinese/japanese imes. fixes #814 2013-02-07 16:17:44 -08:00
Igor Vaynberg
275e094dff fix infinite recursion on focus. fixes #816 2013-02-07 16:16:26 -08:00
Igor Vaynberg
b11a733ad8 Merge pull request #826 from STAH/semicolon
Add missing semicolons
2013-02-07 15:51:46 -08:00
Stanislav Lesnikov
946a1c6329 Add missing semicolons 2013-02-08 00:46:29 +01:00
Igor Vaynberg
270d4bad07 default initSelection in tags mode instead of overriding it. fixes #811 2013-02-06 15:26:19 -08:00
Igor Vaynberg
d1e9531a0a use a form of attr that will always set the value. fixes #810 2013-02-06 14:02:15 -08:00
Igor Vaynberg
4ba14bbf01 disable ajax caching, fixes #807 2013-02-05 21:28:33 -08:00
Igor Vaynberg
7dee473414 removed unneeded file 2013-02-05 18:44:04 -08:00
Igor Vaynberg
76b503e3e5 modified version identifiers in descriptors for release 3.3.0 2013-02-05 18:33:54 -08:00
Igor Vaynberg
b5191af60f updated release script 2013-02-05 18:33:42 -08:00
Igor Vaynberg
b55efddf07 pass escape markup into formatResult 2013-02-05 17:25:32 -08:00
Igor Vaynberg
e78dc69a6b call escape markup on results 2013-02-05 15:16:21 -08:00
Igor Vaynberg
c90bfc3e22 Merge pull request #702 from skivvies/master
allow passing a function for maximumSelectionSize
2013-02-05 15:05:57 -08:00
Igor Vaynberg
81a0e2610a improve placeholder management. fixes #712 2013-02-05 15:02:43 -08:00
Igor Vaynberg
df2aaa0cfc disable focus-via-tab when disabled. fixes #614 2013-02-05 14:50:06 -08:00
Igor Vaynberg
cc74978455 touched manifest to force a commit 2013-02-01 22:56:08 -08:00
Igor Vaynberg
dff53a59bb added jquery plugin manifest 2013-02-01 22:54:05 -08:00
Igor Vaynberg
8332d6a7e9 fix more hierarchical selection bugs. fixes #775 2013-02-01 15:21:07 -08:00
Igor Vaynberg
ecbdc9305b minor optimization. #787 2013-02-01 12:27:30 -08:00
Igor Vaynberg
5374b8799b sync disabled and readonly statuses off original element even post creation 2013-02-01 12:21:28 -08:00
Igor Vaynberg
22dba24881 fix selectOnBlur when closed by means other then tab key. fixes #470 2013-02-01 11:09:08 -08:00
Igor Vaynberg
a19e33e3af ignore configured placeholder on selects without first empty option. fixes #785 2013-02-01 10:46:40 -08:00
Igor Vaynberg
76295bb5e9 use the dropdown mask to close open flyouts instead of a global listener. also move the original element off screen instead of hiding it so clicking a label focuses select2 instance 2013-01-31 23:58:42 -08:00
Igor Vaynberg
c66a91a9bb allow '0' vals to be set. fixes #646 2013-01-31 17:10:30 -08:00
Igor Vaynberg
32249cc7f0 better support orientation change on mobile. #782 2013-01-31 16:45:43 -08:00
Igor Vaynberg
300e99fcd5 Merge pull request #756 from socialceramics/url-function-with-arguments
Ajax `url` option (when function) now called with same arguments and context as `data` option
2013-01-31 14:31:32 -08:00
Igor Vaynberg
4482c2af85 by default do not trigger change from val. #771 #619 2013-01-31 14:25:51 -08:00
Igor Vaynberg
273ec1438e Merge pull request #771 from phtrivier/issue-619
#619 : val takes an optional argument to avoid triggering 'change'
2013-01-31 14:24:45 -08:00
Igor Vaynberg
3f87728f7f fix highlighting bugs introduced by disabled option support. fixes #765 closes #775 2013-01-31 13:15:46 -08:00
Igor Vaynberg
7a006a7259 fix scroll event handling since it doesnt bubble. also add a shim behind the dropdown, this allows it to properly close even when used inside modals. sometimes modals will place their own shim that closes the modal and aborts the default mousedown event. in such cases the modal would close but the dropdown element would still float on the screen now detached and the only way to close it would be to make a selection 2013-01-31 10:52:18 -08:00
Igor Vaynberg
3f14f773f9 dont error out when 'x' is removed really fast multiple times. fixes #745 2013-01-30 22:39:03 -08:00
Igor Vaynberg
db39cdf584 remove dead code. fixes #772 2013-01-30 22:29:19 -08:00
Igor Vaynberg
ee01ab79ad fixes #770 2013-01-30 22:23:18 -08:00
Igor Vaynberg
c270d3e4a3 do not close the dropdown on resize or scroll, instead keep it positioned. fixes #753 #669 #719 2013-01-30 21:49:57 -08:00
phtrivier
cf095d9fee #619 : val takes an optional argument to avoid triggering 'change' 2013-01-30 10:21:40 +01:00
Igor Vaynberg
d0410144ba Merge pull request #768 from bcoughlan/master
Fix issue introduced by 20950e0.
2013-01-29 11:04:46 -08:00
Barry Coughlan
89d583736a Fix issue introduced by 20950e0f0c.
Selected items and other invisible items were not ignored by highlightUnderEvent when calculating index.
This caused highlighting of incorrect items when the list contained hidden items.
2013-01-29 18:45:33 +00:00
Igor Vaynberg
1aa4db12d7 Merge pull request #764 from socialceramics/postdestroy-dropdown-error
Adding defensive check during the document mousedown/touchend event handler.
2013-01-28 18:16:26 -08:00
Jason Purcell
56631aa09f adding defensive check for existence of select2 on the target element during the document mousedown/touchend events 2013-01-28 15:01:17 -05:00
Jason Purcell
67af5a43f1 ajax url function is now passed same arguments and called with same context as data option 2013-01-25 12:40:17 -05:00
Igor Vaynberg
434827d22c Merge pull request #747 from Kollibri/master
Fix issue with disabled options (Issue #733)
2013-01-24 08:42:06 -08:00
Igor Vaynberg
acc6f7923e optimize string comparisons. fixes #743 2013-01-24 08:31:43 -08:00
Igor Vaynberg
dc8fbba511 fixes #742 2013-01-24 08:20:46 -08:00
Amanda Myer
795bd884a6 Update select2.css 2013-01-24 11:11:44 -05:00
Amanda Myer
1c183ef23b Update select2.js 2013-01-24 11:09:30 -05:00
Amanda Myer
1949f4ce31 Update select2.css
Made disabled results show up disabled, and added a class "selected" for elements that have already been selected (by default, these elements are hidden).
2013-01-24 09:04:05 -05:00
Amanda Myer
20950e0f0c Update select2.js
Fixed issues with select2 and disabled options, most of it having to do with incorrectly determining the index of an option when disabled options were being displayed.
2013-01-24 08:59:09 -05:00
Igor Vaynberg
660c402737 Merge pull request #738 from arnar/master
Wrap tags correctly when passed as a function.
2013-01-23 14:30:37 -08:00
Arnar Birgisson
f49b1006aa Use tags correctly when set as a function. 2013-01-23 22:25:34 +01:00
Igor Vaynberg
17f9d78e26 Merge pull request #736 from tamias/label_no_element
Avoid error when label has no matching element
2013-01-23 11:13:31 -08:00
Ronald J Kimball
7ec1e753dc Avoid error when label has no matching element
$('#no_such_element').data("select2") returns null rather than
undefined (jQuery 1.9.0).
2013-01-23 13:53:15 -05:00
Igor Vaynberg
4e92c8b1b4 allow ajax.data to be undefined. fixes #732 2013-01-23 09:24:23 -08:00
Igor Vaynberg
7d8409393c fix parenthesis mismatches 2013-01-23 08:57:10 -08:00
Igor Vaynberg
c12a9d5e9c Merge pull request #735 from vlycser/patch-1
Update select2.js
2013-01-23 08:53:28 -08:00
Cristhian Valencia B.
81cfaa587a Update select2.js
missing parenthesis at line :1448 & :1845
2013-01-23 11:14:12 -05:00
Igor Vaynberg
ee17e4ec27 Merge pull request #727 from Schlogen/master
jQuery 1.9 Fixes
2013-01-22 14:50:36 -08:00
Schlogen
567cb7dbe7 Fix for jQuery 1.9 2013-01-22 17:00:38 -05:00
Igor Vaynberg
e89a851727 Merge pull request #715 from vitalets/default-initselection-hidden
Default initSelection() for hidden element
2013-01-16 11:40:26 -08:00
vitalets
88a86e5953 add default initselection for single and multi 2013-01-16 22:35:24 +04:00
vitalets
3570ab523e add third param to matcher in local 2013-01-16 22:09:31 +04:00
vitalets
f63a10ccb1 ready for single 2013-01-16 21:29:17 +04:00
Igor Vaynberg
fa908972b4 Merge pull request #610 from MaxxSoftware/master
Firefox Tab and Enter keys issue.
2013-01-16 08:45:11 -08:00
Igor Vaynberg
fcea1523fd Merge pull request #703 from jelte12345/master
Fixed my own XSS pull request to actually work
2013-01-14 09:52:40 -08:00
_pants
7bdad56837 allow passing a function for maximumSelectionSize 2013-01-12 11:37:57 -05:00
Jelte Fennema
c0dd741a79 Fixed testing mistake 2013-01-12 17:29:48 +01:00
Igor Vaynberg
353672832d Merge pull request #691 from jelte12345/master
Fix XSS injection
2013-01-11 16:39:48 -08:00
Igor Vaynberg
5f2828098e Merge pull request #697 from agworld/add-load-more-padding-option
add loadMorePadding option
2013-01-10 08:47:05 -08:00
Le Wang
a1273b639a add loadMorePadding option
- Trigger load before scrolling to the very bottom.
- When scrolling very fast, unless we pre-load entries, the page itself
  will scroll.
2013-01-10 17:02:00 +08:00
Igor Vaynberg
b562d1a0e5 Merge pull request #692 from 4sh/master
Allow to pass a callback as ajax.url configuration parameter
2013-01-08 10:44:58 -08:00
Frédéric Camblor
a770ade670 Allow to pass a callback as ajax.url 2013-01-08 18:54:14 +01:00
Igor Vaynberg
b4f6462bb2 Merge pull request #643 from akinnee/master
Added an option: select highlighted option on blur, "selectOnBlur: false"
2013-01-08 09:02:23 -08:00
Jelte Fennema
a65c08097e Make the escapeMarkup function escape html tags and some other characters and apply it to usefull places 2013-01-08 11:35:58 +01:00
Igor Vaynberg
8e9a231847 add [option disabled='disabled'] support. fixes #480 fixes #157 2013-01-04 09:16:48 -08:00
Igor Vaynberg
7a797300a5 Merge pull request #652 from tispratik/master
Be able to limit each input to a maximum length
2012-12-27 20:56:14 -08:00
Igor Vaynberg
df5a03f0b6 Merge pull request #594 from omab/master
Results sorting on populateResults function
2012-12-27 08:37:54 -08:00
Pratik Khadloya
007fd8c3f5 Be able to limit each input to a maximum length 2012-12-14 13:49:01 -08:00
Igor Vaynberg
7f83d8276a Merge pull request #644 from kfiku/patch-1
Update select2.js
2012-12-13 09:05:31 -08:00
Grzegorz Klimek
0d6ba97144 Update select2.js
jQuery("input#someId").attr("tabIndex") don't work well in new jQuery 1.8+.
When you try this on field  that don't have tabIndex attr you get undefined 
(but document.getElementById("someId").tabIndex returns '0').
This is why Select2 element onBlur stay whit attr tabindex='-1' 
and you can't navigate form with 'tab' key.
This simple ' || 0' fix this bug.
2012-12-13 10:39:34 +01:00
Alex Kinnee
fa6313afa4 Added the option to select highlighted upon blur, false by default. Original functionality is maintained by default. 2012-12-12 13:54:47 -05:00
Igor Vaynberg
ac4ce8b0eb Merge pull request #635 from t0m/multi-select-dropdown
Fix for more than one multi-select being open at the same time
2012-12-10 10:37:15 -08:00
tom
b33c86e5e4 Fixes >1 multi-select dropdown being open at the same time
Bug was reproduced on latest FF/Chrome/Safari, but IE exibits correct
behavior with or without the fix.

See: http://jsfiddle.net/tmD7c/2/
2012-12-10 12:46:27 -05:00
Igor Vaynberg
c135db876e Merge pull request #632 from crueber/patch-1
Update select2.js
2012-12-10 08:56:06 -08:00
Chris Rueber
86952b4ed9 Update select2.js
Adding case to fix placeholder not being displayed when element not visible.
2012-12-08 11:36:07 -06:00
Igor Vaynberg
4dc2a62142 Merge pull request #619 from cup-of-giraf/master
Trigger an event on value programatically change
2012-12-04 09:59:20 -08:00
Julien Muetton
09d29585a0 Triggers change when value is set programaticaly.
``` js
$('#select').select2().
    on('change', function () {
        alert('change');
    }).
    val(['foo']);
```

Now shows an alert window.
2012-12-03 09:59:15 +01:00
MaxxSoftware
327e00b0ba Firefox Tab and Enter keys issue.
When item is selected by enter, the list is reopened.
Also pressing tab on focused element with drop list cause immediate reopening with empty search result list.
2012-11-28 12:45:14 +06:00
Conor Branagan
57638ab392 update this.context with data context on query calls 2012-11-21 15:51:31 -05:00
Matías Aguirre
53eaf1fbe1 Results sorting option. Refs #95 2012-11-21 14:12:01 -02:00
Igor Vaynberg
739a7bf3de fixed up bower version. fixes #549 2012-11-20 09:08:07 -08:00
Igor Vaynberg
f910fe5625 change "latest" to "master" for component.json version 2012-11-16 15:50:44 -08:00
Igor Vaynberg
2eb28a60aa allow override of createSearchChoice in tags. fixes #567 2012-11-15 09:56:05 -08:00
Igor Vaynberg
2fa9f73e3b Merge pull request #576 from MaxxSoftware/master
DropLeft recount when DropDown not fit on the right
2012-11-15 08:17:27 -08:00
MaxxSoftware
ac7de2a756 Update select2.js 2012-11-15 17:26:19 +06:00
MaxxSoftware
1560a3918a Update select2.js
DropDown displayed on the left of select-container if not fit right.
2012-11-15 17:16:55 +06:00
Igor Vaynberg
aa686aa47e Merge pull request #541 from brendanheywood/master
Fixed bug with closeOnSelecet is false
2012-11-02 08:57:15 -07:00
Igor Vaynberg
d926d472ef Merge pull request #525 from t0m/master
Trivial change: pluralize default inputTooShort function
2012-11-02 08:54:20 -07:00
Kevin Brown
66ca10815a Fixes #533: IE Gradients Reversed
Reverses the arguments of the IE filter properties
and removes the gradient on the arrow when the
drop-down is open

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-11-02 08:52:07 -07:00
Brendan Heywood
6c59b1e99c Only select the first suitable item if nothing is already selected 2012-11-01 18:00:38 +10:00
Brendan Heywood
291f595a03 Fixed scrolling bug when closeOnSelect is false 2012-10-31 16:35:34 +10:00
tom
ca98ce5564 trivial change: pluralize formatInputTooShort function 2012-10-24 23:48:00 -04:00
Igor Vaynberg
4a363c4b30 Merge pull request #503 from todd-givainc/master
Feature: Locked Items
2012-10-24 13:48:46 -07:00
Igor Vaynberg
b3b75a8c3a Merge pull request #518 from dubbs/patch-1
fix issue #517
2012-10-22 19:21:00 -07:00
Kevin Warrington
77ea616d0c fix issue #517 2012-10-22 17:00:03 -06:00
Igor Vaynberg
6e64336af1 fix typo in css 2012-10-16 11:56:18 -07:00
Todd Rafferty
1d4ea633aa Goofed, changed disabled to locked. 2012-10-16 14:41:03 -03:00
Todd Rafferty
d382f3cdb5 Added .select2-locked 2012-10-16 14:34:55 -03:00
Todd Rafferty
43939f08a4 Create locked items that can't be removed.
This patch creates multi select items that can't be removed.
2012-10-16 14:33:35 -03:00
Igor Vaynberg
6e3b7097a3 Merge pull request #495 from swhitt/master
Rename spinner.gif
2012-10-16 10:23:34 -07:00
Igor Vaynberg
3ed91862fa fixed dropdown positioning when select2 has margins. fixes #501 2012-10-16 10:22:25 -07:00
Igor Vaynberg
258a85b06c Merge pull request #502 from Inkdpixels/master
Style consistency for the stylesheet and a more future proof retina MQ
2012-10-16 10:12:01 -07:00
Inkdpixels
e17f349bf7 Future friendly retina-mq
Using 'dpi' as a unit should be the way to go in the future
2012-10-16 18:34:20 +02:00
Inkdpixels
977ea92d66 Style consistency and proper intendation 2012-10-16 18:28:28 +02:00
Steve Whittaker
7beac3e27c Rename spinner.gif to select2-spinner.gif to prevent collisions with very common filename. 2012-10-13 12:31:25 -05:00
Igor Vaynberg
c4e00c6926 Merge pull request #485 from lisandropuzzolo/patch-1
Update select2.js
2012-10-10 13:35:15 -07:00
Igor Vaynberg
1dd511e70c Merge pull request #487 from kevin-brown/master
Fixes #482: Mobile Safari issues
2012-10-10 13:34:27 -07:00
Kevin Brown
f5ac9bf90c Fixed anchor hrefs
Fixes #482: Mobile Safari issues
2012-10-10 17:24:58 -03:00
lisandropuzzolo
da414577e8 Update select2.js
Fixed line 2154 to allow Select2 work with multiple levels hireachal data.
2012-10-10 12:07:53 -03:00
Igor Vaynberg
c169bd511f Merge pull request #465 from ericandrewlewis/master
Update licenses text in README file
2012-10-03 12:17:28 -07:00
Eric Lewis
52c5d99fb9 Add license text changes to README 2012-10-03 15:34:49 -03:00
Igor Vaynberg
26a3d5342b update license in js header 2012-10-03 11:30:12 -07:00
Igor Vaynberg
1ec6b279f3 Merge pull request #464 from ericandrewlewis/master
Add dual-licensing support for GPL 2, which is incompatible with the Apache License
2012-10-03 11:24:33 -07:00
Eric Lewis
7e15d324ca Add licenses text. 2012-10-03 15:17:28 -03:00
Eric Lewis
b6d90d436e Add support for GPL 2
Modify the text to include support for GPL 2
2012-10-03 15:10:41 -03:00
Igor Vaynberg
732ad030a0 fix tab index issues. fixes #408 2012-10-02 10:09:31 -07:00
Igor Vaynberg
0c11ed7a9c Merge pull request #444 from kevin-brown/master
Fixes 424: Improved Placeholder Detection
2012-09-24 14:43:14 -07:00
Kevin Brown
c4c1cbabde Fixed placeholder detection. Fixes #424. 2012-09-24 18:35:13 -03:00
Igor Vaynberg
6351f2544f Merge pull request #443 from lunks/patch-1
Use single quotes for retina image url
2012-09-24 10:32:24 -07:00
Pedro Nascimento
65d68628b8 Use single quotes for retina image url
This is how all the other images are being referenced.
2012-09-24 14:17:47 -03:00
Igor Vaynberg
98976946d6 pass element attr to initSelection for selects upon init 2012-09-24 09:22:36 -07:00
Igor Vaynberg
fccc84cd11 relax formatSearching check. #434 2012-09-21 08:19:31 -07:00
Igor Vaynberg
e28ea42846 Merge pull request #434 from hzy-/master
formatSearching can be disabled
2012-09-21 08:18:14 -07:00
Jacob Haslehurst
3fcfbed03a formatSearching can be disabled
formatSearching can be disabled by returning null from the function which allows the searching message to be disabled.
2012-09-21 16:12:27 +10:00
Igor Vaynberg
65493206a7 Merge pull request #432 from brettmas/master
make original option available to formatSelection on init
2012-09-20 10:33:16 -07:00
brettmas
c577158599 original option not available to formatSelection on init
The original option isn't available to formatSelection when initializing the selection from a select[multiple]
2012-09-21 02:39:58 +10:00
Igor Vaynberg
2027c0cebf trigger blur handlers on source element when select2 is blurred 2012-09-19 19:37:58 -07:00
Igor Vaynberg
93ed30d67a mange disabled attr on source element. fixes #427 2012-09-19 19:33:46 -07:00
Igor Vaynberg
3cc79b410c Merge pull request #431 from gladmon/master
Fix for z-index of search text box on single select
2012-09-19 14:47:35 -07:00
gladmon
b96ee3fc88 Fix z-index on input text box for single selects.
Using the select2 control in a jquery dialog works fine except for you cannot click on the input box when doing a single select select box. The containing div was given a z-index, but not a position attribute, so the z-index was ignored.
2012-09-19 18:27:18 -03:00
Igor Vaynberg
a145378848 postprocess results always if closeOnSelect is false. fixes #348 2012-09-18 08:42:23 -07:00
Igor Vaynberg
f18caa5957 jquery 1.8.x fixes. fixes #388 2012-09-17 19:52:42 -07:00
Igor Vaynberg
2cb435680b fixes #366 2012-09-17 19:34:50 -07:00
Igor Vaynberg
bdd746844d tweak formatSelection for #400 2012-09-17 19:25:21 -07:00
Igor Vaynberg
c098f51905 added bower component.json. fixes #418 2012-09-17 19:10:00 -07:00
Igor Vaynberg
f7e78f6ed9 label for support for id's with brackets, eg id='name[first]'. fixes #422 2012-09-17 18:43:26 -07:00
Igor Vaynberg
7ee6446bc5 hide the x when the single select is disabled. fixes #401 2012-09-13 17:16:33 -07:00
Igor Vaynberg
4b1204c5de improve keyboard handling. fixes #389 2012-09-13 16:38:20 -07:00
Igor Vaynberg
908c3583d7 bind abbr handler before mousedown. fixes #386 2012-09-13 14:42:53 -07:00
Igor Vaynberg
ab7ab5b3f7 allow clearing on backspace as well as delete. fixes #396 2012-09-13 00:09:17 -07:00
Igor Vaynberg
6690cc449c fix clearing when using jquery 1.6. fixes #386 2012-09-12 16:20:52 -07:00
Igor Vaynberg
2adb8d3a78 Merge pull request #403 from byroot/fix-perfs-issues
Fix perfs issues
2012-09-12 13:49:36 -07:00
Jean Boussier
7bc63dd264 Get rid of 2 useless jQuery.delegate event handler 2012-09-12 14:57:35 -04:00
Jean Boussier
3387853d9c Keep a cached reference to jQueryfied document 2012-09-12 14:50:17 -04:00
Jean Boussier
720bdb8c4f Store last mouse position in a variable instead of document datastore
It's hundred times faster. See http://jsperf.com/data-vs-variable
2012-09-12 14:47:25 -04:00
Igor Vaynberg
96657a16aa fix for dropdown closing as soon as its opened in IE8. fixes #369. fixes #354 2012-09-10 17:05:11 -07:00
Igor Vaynberg
b4371aa253 remove executable permission from files 2012-09-10 10:40:44 -07:00
Igor Vaynberg
84ef3d80c5 simplify release.sh to let github generate archives from tags 2012-09-10 10:36:37 -07:00
Igor Vaynberg
c0ce4be801 Merge pull request #397 from kchung/master
Prevent formatSelection for erroring when accessing an empty select input.
2012-09-10 08:47:53 -07:00
Kevin Chung
7be0e509ff Remove references to jQuery.Events, replace with the closure dollar variable. 2012-09-09 19:35:34 -07:00
Kevin Chung
770924ca8d Fix empty Select2 input from throwing an error when attempting to selecting a value. 2012-09-09 19:06:14 -07:00
Igor Vaynberg
819cca7e70 Merge pull request #387 from markmarkoh/master
change check for "children" in populateResults
2012-09-06 16:31:12 -07:00
Mark DiMarco
7c2dba8fe0 safer check for result.children
`("children" in result) && result.children.length` fails if children is explicitly null.
2012-09-06 16:55:04 -05:00
Igor Vaynberg
281f314fd7 fix performance issue in firefox. fixes #382 2012-09-06 09:17:24 -07:00
Igor Vaynberg
cb44a86649 Merge pull request #374 from tzarger/master
Fix for ValidationEngine & hiding errors on change.
2012-09-05 10:33:05 -07:00
Igor Vaynberg
12d1170242 Merge pull request #379 from brentburgoyne/master
Fix for drop down positioning issue
2012-09-05 10:30:59 -07:00
Brent Burgoyne
5580dbbc4c Fixed drop down alignment issue when body has an offset and is not position static 2012-09-05 11:14:12 -06:00
Igor Vaynberg
e5a2824fae Merge pull request #377 from pmirshad/master
Tabbing out doesn't put placeholder back on input tags with multiple=true and no value selected
2012-09-04 17:25:45 -07:00
Igor Vaynberg
3254f74f64 Merge pull request #378 from fusionbox/master
Pluralize 'items' in formatSelectionTooBig
2012-09-04 17:22:29 -07:00
Gavin Wahl
1b2765fced Pluralize 'items' in formatSelectionTooBig 2012-09-04 16:23:52 -06:00
pmirshad
9fe2453079 Adding event argument to the bound function 2012-09-05 01:52:55 +05:30
pmirshad
5cf5deb267 Fix placeholder missing on tab out on input tags
Tabbing out of input tags with multiple set as true and no value
selected will result in the default placeholder not being shown.
This patch fixes the issue by calling clearSearch() on blur of
MultiSelect2 and preventing the bubbling of the blur event to the
abstract class.

Test case with version 3.2: http://jsfiddle.net/pmirshad/PqP2L/1/
2012-09-05 01:50:34 +05:30
Troy Zarger
039f6b5de9 Fix for ValidationEngine &hiding errors on change.
Copying class attribute to container causes and issue with the JQuery
ValidationEngine. In order to prevent double validation checking, a
simple replace call to copy all but the actual validation[] class.

Also, added a blurOnChange default setting, to allow people to trigger
and blur() event in case of using JQuery ValidationEngine  in order to
immediately hide the validation error message when selecting an option.
2012-09-04 00:43:25 -04:00
Igor Vaynberg
222fa7e415 fix data helper when used with compound choices without a text attribute. fixes #370 2012-08-31 13:41:56 -07:00
Igor Vaynberg
7baa3b9e93 make escapeMarkup configurable. closes #355 2012-08-27 09:48:02 -07:00
Sławek Ehlert
55cc11f9b7 forgot to remove log
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-08-27 09:27:07 -07:00
Sławek Ehlert
852a515d04 make escapeMarkup optional
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-08-27 09:27:07 -07:00
Igor Vaynberg
3b55a65c4d renamed this var. #359 2012-08-27 09:20:31 -07:00
Kyle Gibson
de867bbba1 Pass along arguments sent to debounce
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-08-27 09:19:40 -07:00
Igor Vaynberg
9003c2dd18 Merge pull request #352 from kchung/master
Reevaluate dropdownCss when calling positioning dropdown.
2012-08-23 15:45:07 -07:00
Kevin Chung
22b32614ea Reevaluate dropdownCss when positioning dropdown 2012-08-23 15:28:24 -07:00
Igor Vaynberg
0b859744cc Merge pull request #349 from jameskoster/master
retina friendly sprite/css
2012-08-20 08:55:09 -07:00
James Koster
668c49bb21 Retina-ize icons 2012-08-20 16:26:18 +01:00
Igor Vaynberg
b5cceab21e Merge pull request #346 from Polonious/master
Escapes special characters in containerId selector
2012-08-18 09:03:20 -07:00
TedLiang
02d6f9f5db escape special characters in containerId selector 2012-08-18 20:40:48 +10:00
TedLiang
3276e22ab6 escape special characters in containerId selector 2012-08-18 16:42:59 +10:00
Igor Vaynberg
64ec0c5e89 Merge pull request #345 from Polonious/master
Predictable contain id
2012-08-17 23:25:54 -07:00
TedLiang
881d2fabd3 consistent containid for better integration with form validation. 2012-08-18 15:32:28 +10:00
Igor Vaynberg
c65355edee fixed focussing in IE8. fixes #342 2012-08-16 23:36:26 -07:00
Igor Vaynberg
e4fbf91915 ignore replies that come in after select2 has been closed. fixes #299 2012-08-16 23:04:29 -07:00
Igor Vaynberg
afd353788b allow opts.dropdownCss to override css even after position. fixes #328 2012-08-16 22:54:14 -07:00
Igor Vaynberg
7b60524b35 do not open when clicked on a search choice. fixes #336 2012-08-16 22:25:10 -07:00
Igor Vaynberg
045bff7fe4 Merge pull request #341 from ryfeng/master
Recursive Match for local query
2012-08-16 22:15:12 -07:00
Igor Vaynberg
69567cd2cb Merge branch 'master' of github.com:ivaynberg/select2 2012-08-16 22:11:29 -07:00
ryfeng
476d5ace9a recursive match in local() 2012-08-17 02:11:16 -03:00
Igor Vaynberg
cf01ec6cb5 remove shrinking animation on choice remove because it causes jitter. fixes #326 2012-08-16 22:11:14 -07:00
Igor Vaynberg
d154146caf Merge pull request #340 from 19Gerhard85/master
Another fix for: IE fires window.onbeforeunload event #330
2012-08-16 08:32:49 -07:00
19Gerhard85
d5b6d5fa78 Update select2.js 2012-08-16 18:11:47 +03:00
Igor Vaynberg
8bab0b6f70 always set the val on element so initSelection has access to it. fixes #337 2012-08-16 00:09:00 -07:00
Igor Vaynberg
1da4855191 Merge pull request #330 from 19Gerhard85/master
Bugfix: IE fires window.onbeforeunload event
2012-08-14 09:45:28 -07:00
Igor Vaynberg
52907f2332 tweak release script to generate artifacts in /tmp 2012-08-14 09:02:25 -07:00
19Gerhard85
35d61952f6 Fixed Bug: IE fires onbeforeunload event 2012-08-14 18:27:57 +03:00
Igor Vaynberg
816af4425b fix cursor position in select when opened with a char key press. fixes #323 2012-08-13 15:27:08 -07:00
Igor Vaynberg
4f6bf6cc81 added openOnEnter option. fixes #319 2012-08-13 14:51:56 -07:00
Igor Vaynberg
b7a3f957e3 dont open the dropdown on meta keys. fixes #314 2012-08-13 14:45:21 -07:00
Igor Vaynberg
38dae78dab Merge pull request #325 from sambomartin/master
ajax - support traditional param serialization in ajax calls
2012-08-13 11:08:46 -07:00
sambomartin
31cc5ed40a Update select2.js
Added 'traditional' ajax parameter
2012-08-13 19:57:50 +02:00
Igor Vaynberg
af6a3f556a added link to django integration 2012-08-12 08:38:04 -07:00
Igor Vaynberg
1e9cfc762f Merge pull request #313 from tregagnon/master
Fix typing mistake
2012-08-09 08:38:17 -07:00
Thierry Régagnon
9fd6f12380 Fix typing mistake: "fasle" instead of "false" 2012-08-09 12:49:03 +02:00
Igor Vaynberg
289226cf6c add a tokenizer so choices can be automatically created and selected while user is typing or pasting into the field. fixes #101 #81 #292 2012-08-08 19:33:24 -07:00
Maurus Cuelenaere
c2fa04529b Fix minimumResultsForSearch by recursively counting items
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-08-08 16:48:47 -07:00
Igor Vaynberg
4d3f8b6332 insert select2 container before element instead of after. better bootstrap compat. fixes #278 2012-08-07 22:31:36 -07:00
Igor Vaynberg
1ef57f86af added formatResultCssClass, fixes #288 2012-08-07 22:23:41 -07:00
Igor Vaynberg
92cd1a9037 add vertial align top to select 2 container. fixes #266 2012-08-07 21:50:08 -07:00
Igor Vaynberg
ec31e105d8 remove the pesky BOM. fixes #306 2012-08-07 14:42:58 -07:00
Igor Vaynberg
e7dee23c08 reapply styles specified in dropdownCss option when dropdown is opened to ensure they do not get removed. fixes #305 2012-08-07 08:44:25 -07:00
Igor Vaynberg
220e50fd92 fix select2-more-result positioning. fixes #303 2012-08-07 08:21:18 -07:00
Igor Vaynberg
d92a572694 close on scroll and resize. fixes #149 2012-08-06 23:44:39 -07:00
Igor Vaynberg
921bf06434 fix and clean the new formatSearching() method. closes #301 2012-08-06 20:35:59 -07:00
Igor Vaynberg
02326a58ab Merge pull request #301 from bhoop/master
Add a "Searching" label state for AJAX data
2012-08-06 20:26:00 -07:00
bhoop
b593d06d58 Update select2.js
Add a "Searching" label state for AJAX data
2012-08-06 17:42:05 -03:00
Igor Vaynberg
3a1dcd14f3 remove default width of 25px from multiselect's search input 2012-08-05 13:02:39 -07:00
Igor Vaynberg
a7d0849d23 close any opened select2s when the window is scrolled or resized. fixes #296 and potentially #149 2012-08-04 11:28:02 -07:00
Igor Vaynberg
bc9867af0b change enter and delete key behaviors. fixes #295 2012-08-03 21:50:12 -07:00
Igor Vaynberg
15b654a170 support readonly attribute by disabling select2. fixes #293 2012-08-03 06:19:22 -07:00
Igor Vaynberg
b422d4efef fixed markup escaping. fixes #290 2012-08-02 21:50:02 -07:00
Igor Vaynberg
bef4af91f8 fixed opening and closing of dropdown when an element is removed from selection. fixes #287 2012-08-02 15:05:33 -07:00
Igor Vaynberg
84eb5b33fc fix for some selects not closing. fixes #286 2012-08-02 15:01:33 -07:00
Igor Vaynberg
dc339391f8 allow disabling of some messages by specifying a null formatter. fixes #280, #182 2012-07-30 13:49:34 +03:00
Igor Vaynberg
e2ea6faac7 allow url to be specified via data-ajax-url attribute. fixes #275 2012-07-30 13:32:29 +03:00
Kevin Brown
61603dacc0 Changed event handlers. Fixes #70
Changed to mouseup for displaying options.
Changed to mousedown for selecting options.

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-29 07:28:11 +03:00
Igor Vaynberg
f2460a826e support null, undefined, false for data() to unselect. fixes #273 2012-07-27 19:00:17 +03:00
Igor Vaynberg
08bf83f1a4 renamed selection limit option and formatting function to better align with existing naming. #274 #59 2012-07-27 16:32:14 +03:00
Kevin Brown
4344fa054e Added support for limiting selection
Fixes #59

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-27 16:04:24 +03:00
Igor Vaynberg
94e004ef8c respect source element's tabindex 2012-07-27 00:52:14 +03:00
Igor Vaynberg
38b9e935f0 do not hide search field when disabled because it also hides the placeholder. fixes #272 2012-07-27 00:46:32 +03:00
Igor Vaynberg
ab1a8b93bf some code cleanup. fixes #269 2012-07-26 08:59:51 +03:00
Igor Vaynberg
00058ab315 fix markup escaping. fixes #268 2012-07-26 08:47:10 +03:00
Igor Vaynberg
bb51eb7120 double escape markup populated via html() and append(). fixes #269 2012-07-25 14:08:25 +03:00
Igor Vaynberg
3e42cae401 after triggering change also trigger click to help some validation frameworks. closes #259. closes #262. 2012-07-25 08:11:42 +03:00
Igor Vaynberg
b3089218dc fix tracking of results under mouse. fixes #258 2012-07-25 00:55:53 +03:00
Igor Vaynberg
e620b54271 improved tabbing and tabindex support as well as minor focus management tweaks. fixes things broken by #256 2012-07-24 17:07:14 +03:00
Igor Vaynberg
5d496bd470 Merge branch 'master' of github.com:ivaynberg/select2 2012-07-24 15:10:45 +03:00
Igor Vaynberg
f06aae38fb better handling of tags that are not just strings. fixes #256 2012-07-24 15:10:31 +03:00
Igor Vaynberg
d4e95ee4d3 Merge pull request #255 from kevin-brown/master
Fixes #239: Issues with iPad
2012-07-23 23:40:52 -07:00
Kevin Brown
c58cd12829 Reworks search field. Fixes #239
Uses the correct EOLs now, fixes iPad keyboard issue.
2012-07-23 12:04:50 -04:00
Igor Vaynberg
116528908a clean up val. now it only accepts ids and only when initselection is set 2012-07-21 14:27:49 +03:00
Dean Sofer
ad8fd257aa Added truth checks to avoid unnecessarily firing initSelection.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-21 12:14:17 +03:00
Dean Sofer
d54fd4dd0e Passing a string to select2('val') with initSelection causes it to be used.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-21 12:14:17 +03:00
Igor Vaynberg
b672d760ac allow a custom function for computing the width. fixes #252 2012-07-20 21:24:34 +03:00
Igor Vaynberg
3fc1bc6f35 focus select2 on a click to a related label. fixes #198 2012-07-20 21:15:11 +03:00
Igor Vaynberg
37ff4bbf36 added close event. fixes #246 2012-07-20 17:28:15 +03:00
Igor Vaynberg
33fd9dc810 another tweak for positioning of dropdown and scrollbars. fixes #228 again 2012-07-20 17:12:58 +03:00
Igor Vaynberg
0d5be21e09 fix bug with determing the width. fixes #242 2012-07-20 00:56:37 +03:00
Igor Vaynberg
a718dc45a0 fix multiselects in IEs. fixes #241 2012-07-20 00:53:03 +03:00
Igor Vaynberg
1771c3ba61 fix bug where space was ignored in single selects. fixes #233 2012-07-19 11:13:02 +03:00
Igor Vaynberg
1fc09825ed tweak dropdown position. fixes #228 2012-07-19 11:08:09 +03:00
Igor Vaynberg
96c0166535 more flexible width strategies. fixes #237 2012-07-19 10:55:46 +03:00
Kevin Miller
17ffe5772e container receives width style when hidden input has one or via opt
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-19 01:12:43 +03:00
Igor Vaynberg
6c330eb53b fixes IE8 bug where the dropdown wouldnt open. it would actually open and close immediately because the body would get a focusin event even after the focus was set on the search field by select2. worked fine in IE9 2012-07-19 01:06:16 +03:00
Igor Vaynberg
633a6dc901 mark elements as selected when closeOnSelect is false so they cannot be selected again. fixes #229 2012-07-18 10:26:49 +03:00
Igor Vaynberg
ad9fac45ae make sure data() returns null instead of undefined when unset. this will prevent chaining which may seem weid. fixes #230 2012-07-18 09:56:02 +03:00
Igor Vaynberg
de0d11a82b position the dropdown after hiding selected elements so when above it doesnt float away from the control 2012-07-18 00:51:17 +03:00
Igor Vaynberg
39aa17a790 fixed above/below dropdown opening bug 2012-07-18 00:26:49 +03:00
Igor Vaynberg
3a830a2b81 make the option element available to the matcher function when attached to select. can be used to match on option attributes as well as option text. fixes #227 2012-07-17 16:39:57 +03:00
Igor Vaynberg
7fd94ce623 Merge pull request #226 from fizker/drop-text-color
Added text-color that contrasts with the selected background-color
2012-07-17 06:01:54 -07:00
bho
63fc044915 Added text-color that contrasts with the selected background-color 2012-07-17 14:57:51 +02:00
Igor Vaynberg
b731545eea Merge pull request #223 from malekpour/master
fix dropdown reopen on enter
2012-07-17 04:54:43 -07:00
Igor Vaynberg
33e8e20159 optimize global mousemove listener 2012-07-17 12:38:09 +03:00
Igor Vaynberg
0aea42fe42 give the sizer a higher offset just in case its on a highres screen 2012-07-17 12:10:46 +03:00
Igor Vaynberg
7947803df4 delay finding the body until it is needed and cache it. 2012-07-17 12:01:22 +03:00
Ali Malrkpour
01faae3ff7 fix updateResults prevention if dropdown is closed 2012-07-16 16:30:53 -04:00
Igor Vaynberg
3ed2cc091a fixed dropdown alignment in firefox. still need to test IE. #214 2012-07-16 19:38:02 +03:00
Igor Vaynberg
69758f0b71 added a little animation for removed multiselect choices 2012-07-16 14:10:56 +03:00
Igor Vaynberg
0c4888c6ef expose plugin defaults to make configuration easier. fixes #199 2012-07-16 12:25:12 +03:00
Igor Vaynberg
5d2bcd4007 hide things off screen at -10000 px instead of -1000. fixes #220 2012-07-16 11:41:16 +03:00
Igor Vaynberg
c17336d1ac rename tagSeparator to separator. #191 2012-07-16 11:35:04 +03:00
Grzegorz Kaczan
5aae33d789 Add the ability to specify custom tags separator.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-16 11:32:02 +03:00
Igor Vaynberg
4489ab7769 clean up some comments 2012-07-16 11:24:55 +03:00
Igor Vaynberg
2befc347c5 Merge pull request #219 from malekpour/master
body element caching bug fix
2012-07-16 01:22:47 -07:00
Ali Malrkpour
a3383141d5 fix body element caching for non attached elements 2012-07-15 23:20:56 -04:00
Igor Vaynberg
d6f506e16b more flexible format helpers. fixes #217 2012-07-16 00:22:44 +03:00
Igor Vaynberg
1605a631e5 reworked how dropdown is managed in singleselect so the search field has focus even when the dropdown is not opened and can capture te first keypress. fixes #196 2012-07-15 22:22:38 +03:00
Igor Vaynberg
06ec20dec6 improve keyup-change detection 2012-07-15 00:42:54 +03:00
Igor Vaynberg
6f973d6e40 formatSelection() can now return html string, dom, or jquery object in both multi and single select. #188 2012-07-14 23:35:57 +03:00
Mitko Tschimev
1a4b523871 -add possibility to return a jQuery object with formatSelection -the close event of the selection is now delegated to the class 'select2-search-choice-close' and not only the a tag
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-14 23:22:08 +03:00
Igor Vaynberg
5a73385474 fixes #194 2012-07-14 09:23:21 +03:00
Igor Vaynberg
5859dc8149 possible fix for #205 2012-07-14 00:34:33 +03:00
Igor Vaynberg
4d79adf6ac make keyup-change event work with repeated backspace/delete keys. fixes #211. closes #212 2012-07-14 00:20:21 +03:00
Igor Vaynberg
482cc409ea dropdown can now open above or below control depending on available screens pace. fixes #120. based on #197 2012-07-11 12:33:38 +03:00
Igor Vaynberg
2c0344a520 take the outerwidth of the element when sizing so we include padding and border. fixes #213 2012-07-10 09:40:00 +03:00
Igor Vaynberg
0538bdcfa6 reposition the dropdown whenever results are changed. this is in preparation for open-on-top issue #197 2012-07-10 08:10:52 +03:00
Igor Vaynberg
12d2604ff2 boost z-index so select2 shows over dialogs. fixes #200 2012-07-09 23:16:29 +03:00
Igor Vaynberg
48fe58dee3 better sizing of the input field in multiselect. fixes #203 2012-07-09 22:20:20 +03:00
Igor Vaynberg
a4d496281a fix input sizing when placeholder is set. fixes #192 2012-07-06 23:30:39 +03:00
Igor Vaynberg
77de06ecf3 improve percent width detection. issue #115 2012-07-06 12:13:12 +03:00
Igor Vaynberg
9c864f1da0 clear the ' ' placeholder on open 2012-07-05 11:24:36 +03:00
Igor Vaynberg
6a5719db80 added open event 2012-07-05 11:07:31 +03:00
Igor Vaynberg
f272ac9f80 Merge pull request #186 from nutshellcrm/focus-syntax-error-1.6
Fixes syntax error in jQuery < 1.6 (":focus" selector is unavailable)
2012-07-04 21:50:04 -07:00
Andy Fowler
ec08be78e4 jquery < 1.6 compatibility fix (:focus is unavailable) 2012-07-04 14:48:08 -04:00
Mitko Tschimev
ac8a4db76f bugfix moveHighlight: disabled list elements were highlighted now they are ignored
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-07-04 15:02:47 +03:00
Igor Vaynberg
cb72651787 Merge pull request #183 from ryfeng/master
Default to width: auto instead of width: 0px when styling select2-container
2012-07-03 07:52:57 -07:00
Royce Feng
9baada2a5c Default to auto width if container has 0 width (hidden) 2012-07-03 10:03:21 -04:00
Igor Vaynberg
9c4a4d1b8a improve whitespace detection 2012-07-03 16:56:42 +03:00
Igor Vaynberg
83c11b27df fix firefox caret bug. closes #153 2012-06-29 22:38:34 -07:00
Igor Vaynberg
4ddcc52635 clear search field when data() is used. #178 2012-06-29 21:02:03 -07:00
Igor Vaynberg
95a144d85e highlighting and keyboard navigation improvements to result list that has optgroups 2012-06-29 20:15:45 -07:00
Igor Vaynberg
adc15e3682 fix page 2+ rendering. fixes #175 2012-06-29 05:20:06 -07:00
Igor Vaynberg
6b736669d2 add reference to original option element in the data when attached to select. fixes #171 2012-06-28 23:50:36 -07:00
Igor Vaynberg
504bca4b43 Merge branch 'master' of github.com:ivaynberg/select2 2012-06-28 23:44:42 -07:00
Igor Vaynberg
e12fbdec7e add data method that works with objects instead of ids like val. fixes #166 2012-06-28 23:44:30 -07:00
Igor Vaynberg
b886b40907 Merge pull request #173 from nutshellcrm/38b9d060b116fc4957110f25b03b8437be981136
Fix placeholders in jQuery 1.4
2012-06-28 21:49:45 -07:00
Igor Vaynberg
3107d9d773 manage the more element slightly more efficiently 2012-06-28 06:19:13 -07:00
Igor Vaynberg
593dadec54 trigger loadmoreifneeded on first and other pages 2012-06-28 05:34:26 -07:00
Igor Vaynberg
ea28fa4fe4 Revert "keep loading more results until there are enough to cause a scroll. closes #164 closes #164 closes #74"
This reverts commit ff03dbcaca.
2012-06-28 05:27:23 -07:00
Igor Vaynberg
ff03dbcaca keep loading more results until there are enough to cause a scroll. closes #164 closes #164 closes #74 2012-06-28 04:28:43 -07:00
Igor Vaynberg
89ee75dd9d do not open on meta key, closes #165 2012-06-28 02:27:09 -07:00
Igor Vaynberg
95b89d44f8 use opts.id func to check for id instead of hardcoded id key 2012-06-28 00:55:36 -07:00
Igor Vaynberg
45442aa8d7 removed trailing spaces 2012-06-27 21:44:31 -07:00
Igor Vaynberg
ebcd59fb29 Merge pull request #168 from alanho/master
Make initSelection works asynchronously
2012-06-27 21:37:21 -07:00
Alan Ho
e8083a6e3d Merge remote-tracking branch 'upstream/master' 2012-06-28 03:53:14 +08:00
Igor Vaynberg
a7bd800e5a Merge pull request #159 from ProLoser/patch-1
Added a link to another integration for AngularJS
2012-06-27 06:12:52 -07:00
Dean Sofer
f0d540da37 Added a link to another integration for AngularJS 2012-06-26 18:16:57 -07:00
Igor Vaynberg
7ec2dec955 change event now contains added/removed/val properties. fixes #133 2012-06-21 22:56:50 -07:00
Igor Vaynberg
050a23b53d small cleanup #148 2012-06-21 22:09:33 -07:00
Igor Vaynberg
88ab9f9348 define term and context. fixes #148 2012-06-21 22:08:56 -07:00
Igor Vaynberg
e85d131f0a add ability to programmatically specify css classes as well as css styles 2012-06-21 22:04:35 -07:00
Igor Vaynberg
0f473423eb remove lineheight from choice label. fixes #147 2012-06-21 21:42:45 -07:00
Igor Vaynberg
54b83c2baf fix input field broken by fix to #132 2012-06-21 21:36:08 -07:00
Igor Vaynberg
16c3d31e06 full tabbing support for the mac. closes #132 2012-06-21 21:18:13 -07:00
Igor Vaynberg
e13dc41654 fix placeholder in multiselects when blurred by clicking outside 2012-06-21 19:19:19 -07:00
Igor Vaynberg
84f031f4b0 code navigation 'helpers' 2012-06-21 19:00:29 -07:00
Igor Vaynberg
4819d42f85 no longer need to blur in a settimeout because dropdown and searchfield are now detached. possibly fixes #132 2012-06-20 17:28:26 -07:00
Igor Vaynberg
2343572a25 add spinner to search field in multiselect. fixes #130 2012-06-19 22:09:37 -07:00
Igor Vaynberg
8f6513969e when using default formatResult the matching substring is now wrapped in span with class select2-match. fixes issue #137 2012-06-19 21:31:56 -07:00
Igor Vaynberg
f9f3d6f4f3 add ability to pragmatically specify some css. fixes #121 2012-06-18 23:46:58 -07:00
Igor Vaynberg
8b566bf6ce fix hiding of search when minimumResultsForSearch are used. fixes #138 2012-06-18 23:34:54 -07:00
Igor Vaynberg
b7c952a1a3 ignore first empty option in selects when a placeholder is set 2012-06-18 23:16:45 -07:00
Igor Vaynberg
09f24fdda1 add new options.type parameter for ajax helper. fixes #139 2012-06-18 22:10:33 -07:00
Igor Vaynberg
af964bdbad shorten function name for loadingMore() 2012-06-18 20:48:52 -07:00
Aziz Gazanchiyan
663ba1215f Loading next page message formatting implemented, so it could also have localization
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 20:46:51 -07:00
Igor Vaynberg
1e2881d5d1 a small optimization to how many times highlight is called 2012-06-18 20:44:26 -07:00
Igor Vaynberg
b2314bcb86 fix the fix for #129 2012-06-18 20:21:36 -07:00
Igor Vaynberg
9bf38c833c renamed opts.elementBody to this.body for brevity 2012-06-18 20:18:51 -07:00
Aziz Gazanchiyan
693b541361 Improve performance on dropdown detaching
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 20:05:28 -07:00
Aziz Gazanchiyan
a0f067c2b2 Clear placeholder before opening dropdown, fixes #129
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 19:57:08 -07:00
Aziz Gazanchiyan
7684371923 Improve resizeSearch() performance
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 19:55:38 -07:00
Igor Vaynberg
d94ab04531 Merge pull request #134 from bwalding/master
Use consistent CSS for image URLs
2012-06-17 22:03:22 -07:00
Ben Walding
437be2d632 Use consistent CSS for image URLs 2012-06-18 14:08:16 +10:00
Igor Vaynberg
b825d8ec41 restore smooth scrolling by fixing mouseevent-filtered 2012-06-17 00:45:44 -07:00
Igor Vaynberg
aba23fc3e7 Revert "remove unused code"
This reverts commit 93f5e7508f.
2012-06-17 00:28:18 -07:00
Igor Vaynberg
93f5e7508f remove unused code 2012-06-17 00:13:39 -07:00
creage
64b69425b0 Reduce search field focusing, improving performance
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
9497693b64 style detection for search field sizer corrected
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
492dccd1a5 no need for style if we already have a sizer
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
65eb7c3404 Improve performance on text measuring
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
0ff41ca512 Performance optimizations
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:57 -07:00
creage
68726643ac Save data values to correct context
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:57 -07:00
creage
151c3fd2f6 Stick mousemove event to element' context
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:57 -07:00
Igor Vaynberg
43d990c319 attach the dropdown to the element's body instead of the current body. issue #126 2012-06-15 08:29:47 -07:00
Igor Vaynberg
b840b4e76c Merge branch 'master' of git://github.com/ivaynberg/select2 2012-06-14 20:36:55 -07:00
Igor Vaynberg
800b7bbb3f dont bubble up ESC keypress. fixes #118 2012-06-14 20:36:22 -07:00
Igor Vaynberg
b12e6b42e9 Update master 2012-06-14 20:27:10 -07:00
Igor Vaynberg
09ad968194 Merge pull request #125 from argerim/master
reference about gem use in rails.
2012-06-14 20:20:24 -07:00
Rogerio Medeiros
dc211c4863 reference about gem use in rails. 2012-06-14 22:08:49 -03:00
Igor Vaynberg
1d0e9a4a5b a bit of jshint cleanup 2012-06-14 12:16:44 -07:00
Igor Vaynberg
16c868934d minor cosmetic cleanup 2012-06-14 09:39:23 -07:00
Igor Vaynberg
08d4485400 Merge pull request #107 from butsjoh/master
Fixed issue with loading array data and setting text key to a string
2012-06-14 09:37:33 -07:00
Igor Vaynberg
6e36003b0a Merge pull request #111 from chrisforbes/patch-1
Fix typo in comment
2012-06-14 09:36:12 -07:00
Igor Vaynberg
7007bf8c38 Merge pull request #122 from pothibo/zIndex
set z-index of the dropdown menu in the options
2012-06-14 09:35:43 -07:00
Pier-Olivier Thibault
5941fcea25 Using dropdownZIndex as opts. Dropping default value so use can set it via css. 2012-06-14 12:03:38 -04:00
Pier-Olivier Thibault
277ae4ff5a Added zindex options to dropdown so we can make sure it presents itself on top of whatever is existing in the DOM 2012-06-14 11:57:59 -04:00
Pier-Olivier Thibault
7d3ad2cd47 Merge branch 'master' of https://github.com/ivaynberg/select2 into zIndex 2012-06-14 11:56:55 -04:00
Igor Vaynberg
55fd00169e simplify optgroup querying and rendering code. provide a more powerful populateResults() function fixes #58. fixes #105. fixes #84 2012-06-14 00:21:22 -07:00
Andy Fowler
38b9d060b1 make getPlaceholder() compatible with jquery 1.4
(doesn't check data- attrs when using .data())
2012-06-13 18:06:41 -04:00
Chris Forbes
460cd059f9 Fix typo in comment 2012-06-14 09:06:37 +12:00
Johan Buts
cd538772df Fixed issue with defining the text property as string
because data gets reset afterwards also look at
failing example #e10_2
2012-06-13 13:09:43 +02:00
Igor Vaynberg
9fc18a9ca8 minor cleanup 2012-06-12 22:19:08 -07:00
Igor Vaynberg
0ccfd4853c rename updatePositions() to positionDropdown(). more clear 2012-06-12 22:19:08 -07:00
Igor Vaynberg
a6eeadbe7a always detach and append the dropdown on open. this ensures it will be the last element in body and thus have the highest z-index. issue #105. issue #84 2012-06-12 22:19:07 -07:00
Christopher Nadeau
b18db15f1e Tweak sub-item css a bit to make blue go full width
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:19:07 -07:00
Christopher Nadeau
6151ddbb0d Add support for hierarchies and unselectable items. issue #58
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:18:54 -07:00
Christopher Nadeau
efccc62510 Few tweaks to multi style
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:18:53 -07:00
Christopher Nadeau
2f3262d39e Absolutely position dropdown. fixes #84.
Changes to detach dropdown and append to body, and absolutely position
dropdown. Fixes clipping problems with overflowing.

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:18:40 -07:00
Igor Vaynberg
d62bc5bef1 various small fixes. closes #99 2012-06-12 19:41:21 -07:00
Alan Ho
0d29fff1dd Merge remote-tracking branch 'upstream/master' 2012-06-10 18:16:12 +08:00
Igor Vaynberg
94ffecb824 readme tweak 2012-06-08 18:23:12 -07:00
Igor Vaynberg
cb2e131c50 adding browser compatibility. issue #79 2012-06-08 18:18:40 -07:00
Igor Vaynberg
588d9a5ce9 force a min height on multi containers, closes #96 2012-06-08 14:32:17 -07:00
Igor Vaynberg
3ba3e57715 issue #77, blur on touchend - seems more native 2012-06-07 23:56:51 -07:00
Igor Vaynberg
5e18e71cb4 possible fix for issue #77 better blur support for touch devices like ipad 2012-06-07 23:47:10 -07:00
Igor Vaynberg
47064b2483 tweak to issue #85 do not highlight items based on keypresses 2012-06-07 23:09:51 -07:00
Adam Solove
ec759ac809 When not showing search box, up/down arrows and searching still work.
- The hidden search box is displayed off-screen instead of taken off the dom.
- User can type a search, but instead of filtering the results, just highlight the first matching result.

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-07 21:56:22 -07:00
Alan Ho
af1c398076 Make initSelection works asynchronously 2012-06-08 12:22:06 +08:00
Igor Vaynberg
4ba25b8095 ability to provide custom matchers. closes #86 2012-06-07 20:47:33 -07:00
Igor Vaynberg
4b451fee81 tweak readme to show differences from chosen 2012-06-07 09:33:22 -07:00
Igor Vaynberg
98903a4621 css stylying for disabled mode, issue #76 2012-06-06 23:04:14 -07:00
Igor Vaynberg
6fe77c6110 disabled mode support wip, issue #76 2012-06-06 22:34:51 -07:00
Igor Vaynberg
c27880c19c Merge branch 'master' of git://github.com/ivaynberg/select2 2012-06-04 17:15:25 -07:00
Igor Vaynberg
c44ea24aa4 renamed roundtripValue to context. closes #72 closes #73 2012-06-04 17:15:11 -07:00
Alexander Pepper
0d98ea03af Adds an additional parameter roundtripValue to function data.
Enables a stored value, which can be passed by the function 'result' to the next call of the function 'data'.

This is a solution for issue #72

Example:

    data: function (term, page, roundtripValue) {
      var options = {
        q: term,
        limit: 5,
      };
      if (typeof(roundtripValue) !== 'undefined' && roundtripValue != null) {
        options['continuation_handle'] = roundtripValue;
      }
      return options;
    },
    results: function (data, page) {
      var roundtripValue = data.continuation_handle;
      var more = typeof(roundtripValue) !== 'undefined';
      return {results: data.results, more: more, roundtripValue: roundtripValue};
    },

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-04 16:46:23 -07:00
Igor Vaynberg
26da9f0b2e Merge pull request #71 from niquola/master
fix indexOf with undefined
2012-05-29 17:06:57 -07:00
Igor Vaynberg
f368464132 add drag and drop sort support, fixes #60 2012-05-29 17:04:52 -07:00
nicola
23720246f2 fix internal function indexOf, when undefined passed 2012-05-29 19:15:20 +04:00
Igor Vaynberg
1633d71b4a add container() method that retrieves the main container 2012-05-28 23:15:41 -07:00
Igor Vaynberg
cb7f1da4e6 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-05-28 15:16:23 -07:00
Igor Vaynberg
9ecce5af7c support numeric text keys in local data. fixes #68 2012-05-28 15:15:58 -07:00
Igor Vaynberg
071d6c73d2 Merge pull request #63 from ericbarnes/tags-tab
Adding tab support for tags
2012-05-23 08:13:07 -07:00
Igor Vaynberg
97125fb938 Merge pull request #64 from ghing/patch-1
Check for nonexistent data attribute in a way that works in jQuery 1.4.2
2012-05-23 08:11:43 -07:00
Geoffrey Hing
6dcb276485 Check for nonexistent data attribute in a way that works in jQuery 1.4.2 2012-05-22 11:40:42 -05:00
Eric Barnes
66b789939f Adding tab support for tags
When you select a tag currently the only way to select it was by using the enter key. This change allows the tab key to also select it.

Signed-off-by: Eric Barnes <eric@ericlbarnes.com>
2012-05-22 09:30:10 -04:00
Igor Vaynberg
058ecae750 fixes #61 2012-05-18 14:50:35 -07:00
Igor Vaynberg
d563764dfc tweaked release script a bit 2012-05-16 10:54:22 -07:00
Igor Vaynberg
af6031039a build script 2012-05-16 10:36:28 -07:00
Igor Vaynberg
e5f628b719 a bit of cleanup and better error handling for options 2012-05-07 09:24:14 -07:00
Igor Vaynberg
a6edacc505 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-05-07 08:21:16 -07:00
Igor Vaynberg
b3d9e7ce20 Merge pull request #57 from Fran6co/imp-ajax-abort
Aborts the ajax call when a new is coming up
2012-05-07 08:18:22 -07:00
Francisco Facioni
404539e6d3 Aborts the ajax call when a new is coming up 2012-05-06 10:37:51 -03:00
Igor Vaynberg
0160b36a38 missed one place where id is accessed. issue #51 2012-05-03 15:05:39 -07:00
Igor Vaynberg
bf5e7d16de make it possible to overwrite how the id is retreived from a choice. issue #51 2012-05-03 15:00:48 -07:00
Igor Vaynberg
011770a5d5 license tweaks 2012-05-03 09:01:13 -07:00
Igor Vaynberg
5ae45f4124 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-05-02 22:52:27 -07:00
Igor Vaynberg
bd8c40b0e8 jquery 1.4 compat impl of focus check 2012-05-02 22:52:05 -07:00
Igor Vaynberg
a1457fa491 Merge pull request #56 from ProLoser/master
Added support for [placeholder] attribute
2012-05-02 22:50:40 -07:00
Igor Vaynberg
450aad8f46 fixed placeholder bug. closes #55 2012-05-02 22:48:44 -07:00
Dean Sofer
945249f46a Added support for placeholder attribute in addition to data-placeholder 2012-05-02 20:19:00 -07:00
Igor Vaynberg
5f00dd1cfd resize the search field to full width when placeholder is set. fixes #53 2012-05-02 09:26:00 -07:00
Igor Vaynberg
2aeb3d5bd5 fix bug where tagging was broken if strings instead of objects were used 2012-05-02 08:39:55 -07:00
Igor Vaynberg
e0f854d667 copy the args object so changes to it no longer effect other select2s. closes #47 2012-04-27 22:39:40 -07:00
Igor Vaynberg
3b9840e3ff remove debugging statement 2012-04-27 22:28:20 -07:00
Igor Vaynberg
11b0a1662c imrpove handling of objects in tags helper. closes #50 2012-04-27 11:40:32 -07:00
Igor Vaynberg
ee6f8975a6 clear search when val() is called. closes #45 closes #46 2012-04-26 20:04:57 -07:00
Igor Vaynberg
891102ff47 fix select event syncing. closes #41 2012-04-26 19:46:24 -07:00
Dean Sofer
37ddcb64a3 Fixed #43
Made the dropdown menu positioned via pure css instead of using
javascript to constantly adjust its position. YAY PERFORMANCE!

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-04-26 19:31:08 -07:00
Igor Vaynberg
b96079fef6 Revert "realign dropdown when search box moves to new line. closes #43"
This reverts commit 095cdda05e.
2012-04-26 19:29:28 -07:00
Igor Vaynberg
095cdda05e realign dropdown when search box moves to new line. closes #43 2012-04-26 19:17:34 -07:00
Igor Vaynberg
293bd830b2 added closeOnSelect option, closes #40 2012-04-24 10:46:21 -07:00
Igor Vaynberg
253703add3 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-04-20 23:59:48 -07:00
Igor Vaynberg
6ec4d20d02 added focus() and isFocused(). closes #39 2012-04-20 23:59:44 -07:00
Igor Vaynberg
5ccee14cee remove event bindings on destroy. closes #35 closes #36 2012-04-17 08:16:22 -07:00
Igor Vaynberg
d0caa9131c a small tweak to empty string handling in select2.val(). issue #34 2012-04-17 08:05:14 -07:00
Igor Vaynberg
09d7a2de6e Merge branch 'master' of git://github.com/ivaynberg/select2 2012-04-17 08:04:03 -07:00
Igor Vaynberg
b034a55884 added todo for placeholder validation 2012-04-17 08:04:00 -07:00
Igor Vaynberg
a542280595 better handling of empty string in select.val(). issue #34 2012-04-16 22:00:14 -07:00
Igor Vaynberg
c87e5706e7 cleaned up variable name. issue #32 2012-04-16 08:28:54 -07:00
Grzegorz Kaczan
34913e9557 Add "select2-with-searchbox" to the dropdown container if search box is shown.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-04-16 08:26:30 -07:00
Igor Vaynberg
7bd7139563 added a todo for next ver 2012-04-13 11:29:41 -07:00
Igor Vaynberg
120aff9582 strip BOM from encoding, closes #30 2012-04-13 09:11:23 -07:00
Igor Vaynberg
71848c1353 some minor code cleanup, also fixes #29 2012-04-13 08:59:32 -07:00
Igor Vaynberg
654d1bd3b2 exposed open/close as public. issue #27 2012-04-13 08:18:05 -07:00
Igor Vaynberg
578a8cb0da trim values in arrays produced when splitting user-defined strings. closes #28 2012-04-13 08:07:59 -07:00
Igor Vaynberg
8323051ce3 rewrite classes in a more readable way. closes #20 2012-04-12 00:33:10 -07:00
Igor Vaynberg
1faea146d4 introduced destroy method, closes #18 2012-04-11 23:28:54 -07:00
Igor Vaynberg
c8b274e9ab added ajax.transport variable to provide a custom transport. closes #26 2012-04-11 12:17:58 -07:00
Igor Vaynberg
54033cdb04 monitors source element for change events and syncs the selection. opts.initSelection function has to be specified by the user for this to work because ids have to be mapped back to objects. select2 provides this function automatically for select elements and tags helper. 2012-04-11 00:51:27 -07:00
Igor Vaynberg
e78daff629 Merge pull request #22 from drosen0/patch-1
Define `undefined`
2012-04-10 23:30:23 -07:00
David Rosen
12a3e68256 Update select2.js 2012-04-10 10:42:40 -07:00
Igor Vaynberg
6183a490a3 minor formatting cleanup 2012-04-10 09:46:20 -07:00
Igor Vaynberg
607d3a3a6e Merge pull request #21 from justindujardin/patch-1
Remove duplicate window exports
2012-04-10 09:45:14 -07:00
Justin DuJardin
0645a09e8a tags in the exports. 2012-04-10 09:12:19 -07:00
Justin DuJardin
5094df886c Remove duplicate window exports 2012-04-10 09:09:20 -07:00
Igor Vaynberg
a16190c822 only call initSelection() when there is actual input. avoids making users implement empty input check in their initSelection()s 2012-04-10 07:45:09 -07:00
Igor Vaynberg
19810405ce automatically initialize selection in tagging mode. closes #19 2012-04-10 07:31:59 -07:00
Igor Vaynberg
b9c79344cd hide selected choices from the results by default. issue #1 2012-04-10 00:42:44 -07:00
Igor Vaynberg
34a7f83f7b removed misplaced logging 2012-04-10 00:16:33 -07:00
Igor Vaynberg
d2ec53e33c initial tagging support via opts.tags 2012-04-10 00:14:11 -07:00
Igor Vaynberg
0ca86701ad generalized selection initialization behind opts.initSelection 2012-04-09 23:50:21 -07:00
Igor Vaynberg
d43b8da796 Merge pull request #15 from sjaq/patch-1
Don't remove border, make it transparent to prevent jumping of the page.
2012-04-04 20:18:16 -07:00
Jean Jacques Warmerdam
dca2130d2c Don't remove border, make it transparent to prevent jumping of the page. 2012-04-04 14:34:02 +03:00
Igor Vaynberg
bf25e5e7e4 export classes, issue #13 2012-04-02 08:36:55 -07:00
Igor Vaynberg
b0b70243b6 correct namespace. issue #13 2012-03-31 21:12:23 -07:00
Igor Vaynberg
c913b7e3f9 added reusable helpers into the global window.Select2 namespace. closes #13 2012-03-31 21:11:04 -07:00
Igor Vaynberg
6fee67bcff Merge pull request #5 from justindujardin/jdd-sizable
Add support for flexible width select2 elements.
2012-03-31 11:17:36 -07:00
Justin DuJardin
c5d6cb1327 Deal with non-existent style attributes, and returning calculated pixel widths as a fallback. 2012-03-31 10:20:49 -07:00
Justin DuJardin
fa41027264 Set min-height to 26px for proper input sizing in Opera. 2012-03-31 10:06:34 -07:00
Justin DuJardin
dd0d80532c Fix spinner.gif input jumpiness.
Apply default outline and height properties on the input, to override site-specific CSS input styles.
2012-03-31 10:02:29 -07:00
Igor Vaynberg
40843b1b98 better handling of non-numeric ids 2012-03-30 21:25:38 -07:00
Igor Vaynberg
26982e1952 change event, closes #11 2012-03-30 14:06:34 -07:00
Igor Vaynberg
6bef0b5bf6 fix placeholder styling broken in a previous code cleanup. closes #12 2012-03-30 13:04:32 -07:00
Igor Vaynberg
538c6d1584 camel cased a var and reformatted after jquery 1.4.2 compat change 2012-03-30 09:45:32 -07:00
Justin DuJardin
b162567c22 jQuery 1.4.2 compatibility : - use attr() instead of prop() - use .bind() and .delegate() instead of .on() - pass ajax success handler as an argument, instead of chaining call to .success()
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-03-30 09:43:23 -07:00
Justin DuJardin
576607c46f Undo rebase indentation changes. 2012-03-29 13:51:48 -07:00
Justin DuJardin
de51a5dbdd Hide search.parent() container when minimumResultsForSearch is not met on a single select. 2012-03-29 13:45:36 -07:00
Justin DuJardin
a28ea4fb98 Cleanup sizable implementation
- Remove absolute positioning from search input, and use inline-block with width 100% and padding.
 - Remove hardcoded search results margin (space is consumed by non-absolute, inline-block search wrapper)
2012-03-29 13:39:53 -07:00
Justin DuJardin
09798e3b5f Remove experimental code that accidentally got checked in. 2012-03-29 13:39:46 -07:00
Justin DuJardin
1fff4788eb compress getContainerWidth(), add missing semicolon. 2012-03-29 13:39:38 -07:00
Justin DuJardin
55a257ddba Better extract width style from inline element :
- Match floating point numbers as well as integers (e.g. "width:99.5%")
  - Strip all string spaces, to match styles specified with variable spacing (e.g. "   width:   5em  ;")
2012-03-29 13:39:18 -07:00
Justin DuJardin
26baca110b Remove close button outline. 2012-03-29 13:39:10 -07:00
Justin DuJardin
b2c6ced65f Rework select2 and styles to support styled width's (rather than just fixed pixel widths)
- Will not work with styles specified in remote CSS, because there's no easy way to retrieve the original css value.
 - Will work with styles specified inline on the element (regex parse out width value with specified units intact, from the element style attribute)

Tested in Firefox,Chrome,Safari,Opera
2012-03-29 13:38:57 -07:00
Igor Vaynberg
eddc40934c small code cleanup 2012-03-29 11:43:39 -07:00
Igor Vaynberg
b30b455505 Fix CRLF 2012-03-29 11:08:14 -07:00
Igor Vaynberg
341a3cd8b5 fix ie8 compat, closes #7 2012-03-29 10:45:31 -07:00
Igor Vaynberg
1ab192ac7b option to hide the search field if there are just a few results. closes #4 and closes #6 2012-03-28 15:21:43 -07:00
Igor Vaynberg
7cd54f5358 no need to preload results, they will be loaded on open 2012-03-28 14:43:10 -07:00
Igor Vaynberg
d7f0c0a8b1 simplified support for local array data 2012-03-28 14:32:18 -07:00
Igor Vaynberg
f4e0089b1f cleaned up loading/cleaning of result list 2012-03-27 15:06:42 -07:00
Igor Vaynberg
2dc46c4bfa move the [x] icon back to the right in single selection mode. issue #3 2012-03-26 23:52:31 -07:00
Igor Vaynberg
b18b9aecd8 support removing elements that have non-numeric ids 2012-03-26 23:45:08 -07:00
Igor Vaynberg
339c7a850e moving [x] button to the left so its easier to remove multiple sequential selections. closes #3 2012-03-26 14:24:30 -07:00
Igor Vaynberg
1afffb09dc improved blur tracking. closes #2 2012-03-26 14:08:06 -07:00
Igor Vaynberg
f6eb1edbce change paging of remote data to be 1-based instead of 0-based 2012-03-25 22:10:10 -07:00
Igor Vaynberg
b5c4817149 initial support for multiselect mode, issue #1 2012-03-25 20:30:57 -07:00
698 changed files with 91745 additions and 1058 deletions

6
.editorconfig Normal file
View file

@ -0,0 +1,6 @@
[*]
indent_style = space
end_of_line = lf
[*.js]
indent_size = 2

203
.github/CONTRIBUTING.md vendored Normal file
View file

@ -0,0 +1,203 @@
# Guidelines for Getting Help with Select2
**Before** you open a new issue, you must **read these guidelines.** If it is evident from your issue that you failed to research your question properly, **your issue may be closed** without being answered.
## Troubleshooting
There are some common problems that developers may encounter when using working with Select2 for the first time. **If you are new to Select2**, please consult the [common problems](https://select2.org/troubleshooting/common-problems) section of the documentation first.
If you don't find what you're looking for there, then please check the the [forums](https://forums.select2.org), [Stack Overflow](https://stackoverflow.com/questions/tagged/jquery-select2) and [existing issues](https://github.com/select2/select2/issues?utf8=%E2%9C%93&q=is%3Aissue), both opened and closed. Your question may have already been asked and answered before!
## Asking for Help
In general, the Github issue tracker should **only** be used for **bug reports** and **feature requests**. If you're just having trouble getting something to work, you should ask in the [forums](https://forums.select2.org) or on [Stack Overflow](https://stackoverflow.com) instead.
### Rules for all community platforms
1. Be polite, civil and respectful. Select2 is built and maintained entirely by volunteers.
2. If you are not conversationally proficient in English, **do not just post a machine translation** (e.g. Google Translate). Post in your native language, so that others who speak your language can help. You may post a machine translation below it for the general community to decipher.
3. Any code snippets should be formatted using [Markdown code fences](https://learn.userfrosting.com/troubleshooting/getting-help#use-markdown-to-format-blocks-of-code) and properly indented. Poorly formatted code is difficult to read and reflects badly on you as a programmer.
4. Check what you write for spelling and grammar issues. If you want others to take the time to read your question carefully, you must write your question carefully.
5. When possible create and link to a [minimal, complete, and verifiable](https://stackoverflow.com/help/mcve) example by cloning our [JSBin template](http://jsbin.com/goqagokoye/edit?html,js,output). Code dumps, zip files, etc are NOT acceptable.
6. Include relevant screenshots or animations, if possible. Drag your screenshots directly into the forums or issue tracker text box. They will automatically be uploaded and the Markdown to display them will be generated. Avoid third-party image hosts, or links which require extra clicks to view the image (except IRC, where this is unavoidable).
### Stack Overflow
Tag your question with the `jquery-select2` tag, and optionally with tags relevant to other technologies involved, such as `jquery` or another client-side framework. You should also mention the version of Select2 that you are using.
### GitHub Issue Tracker
We really appreciate clear bug reports that _consistently_ show an issue _within Select2_. If you are reporting a bug, you **must** follow these steps:
1. Make sure that your issue is a bug or feature request. General usage and troubleshooting questions should be directed to the [forums](https://forums.select2.org) or [Stack Overflow](https://stackoverflow.com/questions/tagged/jquery-select2). Issues asking for general support WILL BE CLOSED automatically.
2. Search the current issues, both open and closed, for a similar issue. If the bug is still present but the relevant issue has been closed, you may ask us to reopen the issue. Duplicate issues will be closed automatically.
3. Make sure that you are using the latest stable version of Select2 (see the [release history](https://github.com/select2/select2/releases)). Old minor/patch versions will not be supported.
4. State the steps needed to reproduce the problem.
5. Report any errors in detail. Vague issues like "it doesn't work when I do this" are not helpful. Show that you have put some effort into identifying the cause of the error. Check your [browser console](https://learn.userfrosting.com/troubleshooting/debugging#client-side-debugging) for any Javascript error messages.
6. Mention your version of Select2, as well as the browser(s) and operating system(s) in which the problem occurs.
Requesting features in Select2
------------------------------
Select2 is a large library that carries with it a lot of functionality. Because
of this, many feature requests will not be implemented in the core library.
Before starting work on a major feature for Select2, **post to the [forums](https://forums.select2.org) first** or you may risk spending a considerable amount of
time on something which the project developers are not interested in bringing
into the project.
# Contributing to Select2
Select2 is made up of multiple submodules that all come together to make the
standard and extended builds that are available to users. The build system uses
Node.js to manage and compile the submodules, all of which is done using the
Grunt build system.
### Installing development dependencies
Select2 can be built and developed on any system which supports Node.js. You can download Node.js at
[their website][nodejs].
All other required Node.js packages can be installed using [npm][npm], which comes bundled alongside Node.js.
```bash
cd /path/to/select2/repo
npm install
```
You may need to install `libsass` on your system if it is not already available in order to build the SASS files which generate the CSS for themes and the main component.
### Building the Select2 component
Select2 uses the [Grunt][grunt] build task system and defines a few custom
tasks for common routines. One of them is the `compile` task, which compiles
the JavaScript and CSS and produces the final files.
```bash
cd /path/to/select2/repo
grunt compile
```
You can also generate the minified versions (`.min.js` files) by executing the
`minify` task after compiling.
```bash
cd /path/to/select2/repo
grunt minify
```
### Running tests
Select2 uses the QUnit test system to test individual components.
```bash
cd /path/to/selct2/repo
grunt test
```
### Setting up the documentation repo
The documentation for Select2 is maintained in a [separate repository](https://github.com/select2/docs). Select2.org is built with the flat-file CMS [Grav](http://getgrav.org), using their [RTFM skeleton](https://github.com/getgrav/grav-skeleton-rtfm-site#rtfm-skeleton).
The documentation files themselves are written in Markdown, and can be found in the `pages/` subdirectory. You can submit pull requests to the `develop` branch of the repo.
If you'd like to set up a local instance of the entire documentation website, you must first have a web server (Nginx, Apache, etc) and PHP installed locally. Then, follow these steps:
#### Step 1 - Install Grav
This application uses the [Grav](https://learn.getgrav.org/) CMS. This repository does not contain a full Grav installation - rather, it just contains the contents of Grav's `user` directory, which is where all of our content, themes, and assets live. This was done as per the [recommendation on Grav's blog](https://getgrav.org/blog/developing-with-github-part-2), to make it easier to deploy changes to the live server.
To install this website on your computer, first [install grav core](https://getgrav.org/downloads) in a project folder called `select2-docs` under your webserver's document root folder. Then, find the `user` folder inside of your project folder. Delete the contents of the `user` folder and clone this repository directly into the user folder.
When you're done it might look something like this:
```
htdocs/
└── select2-docs/
├── assets/
├── ...
├── user/
├── .git
├── accounts/
├── assets/
├── config/
└── ...
└── ...
```
#### Step 2
Grav needs your webserver to be able to write to certain directories. Make sure that `backup/`, `cache/`, `images/`, `logs/`, and `tmp/` are all writeable by the user account under which your webserver runs.
#### Step 3
Visit the local installation in your browser! For example, [http://localhost/select2-docs](http://localhost/select2-docs).
### Submitting a pull request
We use GitHub's pull request system for submitting patches. Here are some
guidelines to follow when creating the pull request for your fix.
1. Make sure to create a ticket for your pull request. This will serve as the
bug ticket, and any discussion about the bug will take place there. Your pull
request will be focused on the specific changes that fix the bug.
2. Make sure to reference the ticket you are fixing within your pull request.
This will allow us to close off the ticket once we merge the pull request, or
follow up on the ticket if there are any related blocking issues.
3. Explain why the specific change was made. Not everyone who is reviewing your
pull request will be familiar with the problem it is fixing.
4. Run your tests first. If your tests aren't passing, the pull request won't
be able to be merged. If you're breaking existing tests, make sure that you
aren't causing any breaking changes.
5. Only include source changes (`src/`). Do not make changes directly to files in the `dist`
directory.
By following these steps, you will make it easier for your pull request to be
reviewed and eventually merged.
Triaging issues and pull requests
---------------------------------
Anyone can help the project maintainers triage issues and review pull requests.
### Handling new issues
Select2 regularly receives new issues which need to be tested and organized.
When a new issue that comes in that is similar to another existing issue, it
should be checked to make sure it is not a duplicate. Duplicates issues should
be marked by replying to the issue with "Duplicate of #[issue number]" where
`[issue number]` is the url or issue number for the existing issue. This will
allow the project maintainers to quickly close off additional issues and keep
the discussion focused within a single issue.
If you can test issues that are reported to Select2 that contain test cases and
confirm under what conditions bugs happen, that will allow others to identify
what causes a bug quicker.
### Reviewing pull requests
It is very common for pull requests to be opened for issues that contain a clear
solution to the problem. These pull requests should be rigorously reviewed by
the community before being accepted. If you are not sure about a piece of
submitted code, or know of a better way to do something, do not hesitate to make
a comment on the pull request.
### Reviving old tickets
If you come across tickets which have not been updated for a while, you are encouraged to revive them. If you do, please include more information in your comment on the issue. Common bugs and feature requests are more likely to be fixed, whether it is by the community or the
developers, so keeping tickets up to date is encouraged.
Licensing
---------
It should also be made clear that **all code contributed to Select** must be
licensable under the [MIT license][licensing]. Code that cannot be released
under this license **cannot be accepted** into the project.
[grunt]: http://gruntjs.com/
[isolated-case]: http://css-tricks.com/6263-reduced-test-cases/
[issue-search]: https://github.com/select2/select2/search?q=&type=Issues
[issue-tracker]: https://github.com/select2/select2/issues
[licensing]: https://github.com/select2/select2/blob/master/LICENSE.md
[nodejs]: https://nodejs.org/
[npm]: https://www.npmjs.com/

2
.github/FUNDING.yml vendored Normal file
View file

@ -0,0 +1,2 @@
github: kevin-brown
open_collective: select2

20
.github/ISSUE_TEMPLATE.md vendored Normal file
View file

@ -0,0 +1,20 @@
STOP!
Before you open an issue:
1. Make sure that your issue is a BUG or FEATURE REQUEST. General usage and troubleshooting questions should be directed to the [forums](https://forums.select2.org) or [Stack Overflow](https://stackoverflow.com/questions/tagged/jquery-select2). Issues asking for general support WILL BE CLOSED automatically.
2. Search the current issues, both open and closed, for a similar issue. If the bug is still present but the relevant issue has been closed, you may ask us to reopen the issue. Duplicate issues will be closed automatically.
3. Make sure that you are using the latest stable version of Select2 (see the [release history](https://github.com/select2/select2/releases)). Old minor/patch versions will not be supported.
If you are CERTAIN that it is appropriate to open a new issue, you must:
1. Create and link to a [minimal, complete, and verifiable](https://stackoverflow.com/help/mcve) example by cloning our [JSBin template](http://jsbin.com/goqagokoye/edit?html,js,output). Code dumps, zip files, etc are NOT acceptable.
2. Any additional code snippets should be formatted using [Markdown code fences](https://learn.userfrosting.com/troubleshooting/getting-help#use-markdown-to-format-blocks-of-code) and properly indented. Poorly formatted code is difficult to read and reflects badly on you as a programmer.
3. Include relevant screenshots or animations, if possible. Drag your screenshots directly into this text box. They will automatically be uploaded and the Markdown to display them will be generated. Avoid third-party image hosts, or links which require extra clicks to view the image.
4. If you are not conversationally proficient in English, do NOT just post a machine translation (e.g. Google Translate) to GitHub. Get help in crafting your question, either via the [forums](https://forums.select2.org) or in [chat](https://webchat.freenode.net/?channels=select2). If all else fails, you may post your bug report or feature request in your native language, with a machine translation below that. We will tag it with `translation-needed` so that others who speak your language can find it.
5. State the steps needed to reproduce the problem.
6. Mention your version of Select2, as well as the browser(s) and operating system(s) in which the problem occurs.
7. Clear out this placeholder text.
Issues that ignore these rules will be closed without further comment!

13
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View file

@ -0,0 +1,13 @@
This pull request includes a
- [ ] Bug fix
- [ ] New feature
- [ ] Translation
The following changes were made
-
-
-
If this is related to an existing ticket, include a link to it as well.

14
.github/stale.yml vendored Normal file
View file

@ -0,0 +1,14 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 60
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
# Label to use when marking an issue as stale
staleLabel: "status: stale"
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false

24
.github/workflows/docs-deploy.yml vendored Normal file
View file

@ -0,0 +1,24 @@
name: Documentation Deployment
on: release
jobs:
grav:
name: Deploy Grav
runs-on: ubuntu-latest
steps:
- uses: maddox/actions/sleep@master
with:
args: "60"
- uses: actions/checkout@v1
- name: Copy to documentation server
uses: maxheld83/rsync@v0.1.0
env:
USERNAME: ${{ secrets.DOCUMENTATION_SSH_USERNAME }}
SSH_PRIVATE_KEY: ${{ secrets.DOCUMENTATION_SSH_KEY }}
HOST_NAME: ${{ secrets.DOCUMENTATION_SSH_HOST }}
SSH_PUBLIC_KEY: not-needed
HOST_IP: not-needed
HOST_FINGERPRINT: not-needed
with:
args: "docs/ $USERNAME@$HOST_NAME:/var/www/select2-docs/user/"

44
.github/workflows/main.yml vendored Normal file
View file

@ -0,0 +1,44 @@
name: CI
on: [push, pull_request]
jobs:
linting:
name: Linting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Use Node.js 8
uses: actions/setup-node@v1
with:
node-version: 8
- name: npm install
run: npm install
- name: Run linting
run: grunt compile lint
tests:
name: Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Use Node.js 8
uses: actions/setup-node@v1
with:
node-version: 8
- name: npm install
run: npm install
- name: Run tests
run: grunt compile test
minification:
name: Minification
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Use Node.js 8
uses: actions/setup-node@v1
with:
node-version: 8
- name: npm install
run: npm install
- name: Run minification
run: grunt compile minify

57
.github/workflows/package-deploy.yml vendored Normal file
View file

@ -0,0 +1,57 @@
name: Package Deployment
on:
push:
branches:
- develop
- master
release: ~
jobs:
deploy_github:
name: GitHub Package Registry
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Use Node.js 8
uses: actions/setup-node@v1
with:
node-version: 8
registry-url: https://npm.pkg.github.com/
scope: '@select2'
- name: Rename package to include private scope
run: "sed -i -e 's#\"name\": \"select2\"#\"name\": \"@select2/select2\"#' package.json"
- name: npm install
run: npm install
- name: Run linting, tests, minify
run: grunt
- name: Deploy (release)
if: github.event_name == 'release'
run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
- name: Deploy (release candidate)
if: github.event_name == 'push'
run: 'sed -i -E "s/\"version\": \"(.+)\",/\"version\": \"\1-commit-$GITHUB_SHA\",/" package.json && npm publish --tag next'
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
GITHUB_SHA: ${{github.sha}}
deploy_npm:
name: NPM
if: github.event_name == 'release'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Use Node.js 8
uses: actions/setup-node@v1
with:
node-version: 8
registry-url: 'https://registry.npmjs.org'
- name: npm install
run: npm install
- name: Run linting, tests, minify
run: grunt
- name: Deploy (release)
run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}

3
.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
node_modules
dist/js/i18n/build.txt
.sass-cache

4
.jshintignore Normal file
View file

@ -0,0 +1,4 @@
src/js/banner.*.js
src/js/wrapper.*.js
tests/vendor/*.js
tests/helpers.js

25
.jshintrc Normal file
View file

@ -0,0 +1,25 @@
{
"bitwise": true,
"camelcase": true,
"curly": true,
"es3": true,
"eqnull": true,
"freeze": true,
"globals": {
"console": false,
"define": false,
"document": false,
"MockContainer": false,
"module": false,
"QUnit": false,
"require": false,
"test": false,
"window": false
},
"indent": 2,
"maxlen": 80,
"noarg": true,
"nonew": true,
"quotmark": "single",
"undef": true
}

407
CHANGELOG.md Normal file
View file

@ -0,0 +1,407 @@
# Change Log
## 4.0.12
### Bug fixes
* Fixes incorrect offset when using the Shadow DOM and styling the `<html>` element (#5682)
### Miscellaneous
* Replace cdnjs with jsDelivr in the documentation (#5687)
* Fix incorrect provider for the automated NPM deployment (#5686)
## 4.0.11
### Bug fixes
* Fixes jQuery migrate error when getting offset when dropdownParent not in document (#5584)
### Miscellaneous
* Enable GitHub actions for CI (#5591)
* Documentation has been moved into and is deployed from the code repository (#5638)
* Remove Travis CI integration (#5665)
## 4.0.10
### New features / improvements
* Support passing in a selector for `dropdownParent` option (#5622)
### Bug fixes
* Fix bug where dropdowns pointing upwards were incorrectly positioned (#5621)
## 4.0.9
### New features / improvements
* Mirror disabled state through aria-disabled on selection (#5579)
* Select2 now clears the internal ID when it is destroyed (#5587)
* Set the main ARIA 1.1 roles and properties for comboboxes (#5582)
* The `language` option now has a clearly defined fallback chain (#5602)
### Bug fixes
* Do not propagate click when search box is not empty (#5580)
* Fix `maximumSelectionLength` being ignored by `closeOnSelect` (#5581)
* Fix generated options not receiving result IDs (#5586)
* Remove selection title attribute if text is empty (#5589)
* Reposition dropdown whenever items are selected (#5590)
* Fix dropdown positioning when displayed above with messages (#5592)
* Fix search box expanding width of container (#5595)
* `allowClear` no longer shifts selections to a new line (#5603)
### Translations
* Fix error in German translations (#5604)
### Miscellaneous
* Updated development grunt version so it no longer shows as vulnerable (#5597)
* Remove unused variables (#5554)
## 4.0.8
### New features / improvements
* Test against and fix compatibility with jQuery 3.4.1 (#5531)
* Results respect disabled state of `<option>` (#5560)
* Add `computedstyle` option for calculating the width (#5559)
### Bug fixes
* Fix tag creation being broken in 4.0.7 (#5558)
* Fix infinite scroll when the scrollbar is not visible (#5575)
* Revert change to focusing behaviour in 4.0.6 (#5576)
### Translations
* Fix wording in French translations (#5521)
### Miscellaneous
* Update grunt-contrib-qunit to latest version (#5530)
* Removed unused `.select2-selection__placeholder` CSS definitions for multiple selects (#5508)
* Remove deprecated jQuery shorthand (#5564)
## 4.0.7
### New features/improvements
- Do not close on select if Ctrl or Meta (Cmd) keys being held (#5222)
### Bug fixes
- Fixed issue where single select boxes would automatically reopen when they were closed (#5490, #5492)
### Miscellaneous
- Move almost and jquery-mousewheel to devDependencies (#5489)
## 4.0.6
### New features/improvements
- Add style property to package.json (#5019)
- Implement `clear` and `clearing` events (#5058)
- Add `scrollAfterSelect` option (#5150)
- Add missing diacritics (#4118, #4337, #5464)
### Bug fixes
- Fix up arrow error when there are no options in dropdown (#5127)
- Add `;` before beginning of factory wrapper (#5089)
- Fix IE11 issue with select losing focus after selecting an item (#4860)
- Clear tooltip from `select2-selection__rendered` when selection is cleared (#4640, #4746)
- Fix keyboard not closing when closing dropdown on iOS 10 (#4680)
- User-defined types not normalized properly when passed in as data (#4632)
- Perform deep merge for `Defaults.set()` (#4364)
- Fix "the results could not be loaded" displaying during AJAX request (#4356)
- Cache objects in `Utils.__cache` instead of using `$.data` (#4346, #5486)
- Removing the double event binding registration of `selection:update` (#4306)
#### Accessibility
- Improve `.select2-hidden-accessible` (#4908)
- Add role and aria-readonly attributes to single selection dropdown value (#4881)
### Translations
- Add Turkmen translations (`tk`) (#5125)
- Fix error in French translations (#5122)
- Add Albanian translation (`sq`) (#5199)
- Add Georgian translation (`ka`) (#5179)
- Add Nepali translation (`ne`) (#5295)
- Add Bangla translation (`bn`) (#5248)
- Add `removeAllItems` translation for clear "x" title (#5291)
- Fix wording in Vietnamese translations (#5387)
- Fix error in Russian translation (#5401)
### Miscellaneous
- Remove duplicate CSS selector in classic theme (#5115)
## 4.0.5
### Bug fixes
- Replace `autocapitalize=off` with `autocapitalize=none` (#4994)
### Translations
- Vietnamese: remove an unnecessary quote mark (#5059)
- Czech: Add missing commas and periods (#5052)
- Spanish: Update the 'errorLoading' message (#5032)
- Fix typo in Romanian (#5005)
- Improve French translation (#4988)
- Add Pashto translation (`ps`) (#4960)
- Add translations for lower and upper Sorbian (`dsb` and `hsb`) (#4949)
- Updates to Slovak (#4915)
- Fixed Norwegian `inputTooShort` message (#4817, 4896)
- Add Afrikaans translation (`af`) (#4850)
- Add Bosnian translation (`bs`) (#4504)
## 4.0.4
### New features / Improvements
- Make tag matching case insensitive [https://github.com/select2/select2/commit/cb9a90457867ffb14c7b1550bb67e872e0a5c2dd, https://github.com/select2/select2/commit/1167bace78cd3b1a918c1b04f3bac54674eab62b]
- Support selecting options with blank or `0` option values [https://github.com/select2/select2/commit/16b4840c0e2df0461998e3b464ee0a546173950d, https://github.com/select2/select2/commit/0358ee528765157234643d289bce6b8ca5889c72]
### Bug fixes
- Fix issue with entire form losing focus when tabbing away from a Select2 control (#4419)
- Fix UMD support for CommonJS [https://github.com/select2/select2/commit/45a877345482956021161203ac789c25f40a7d5e]
### Documentation
- Github Pages documentation has been deprecated, replaced with https://github.com/select2/docs
- Add django-autocomplete-light to integrations [https://github.com/select2/select2/pull/4597]
- Correct typo in options page [https://github.com/select2/select2/pull/4389]
- Correct misspelling in AJAX query parameters example [https://github.com/select2/select2/pull/4435]
- "highlight" should be "focus" in focus example [https://github.com/select2/select2/pull/4441]
- Correct misspelling in `<select>` serialization example [https://github.com/select2/select2/pull/4538]
- Correct typos in documentation [https://github.com/select2/select2/pull/4663]
### Translations
- Add `errorLoading` Hungarian translation [https://github.com/select2/select2/commit/7d1d13352321e21670ff1c6cba7413aa264fd57a]
- Add `errorLoading` German translation [https://github.com/select2/select2/commit/4df965219ea4c39147fde9335bc260840465933a]
- Add Slovene language [https://github.com/select2/select2/commit/8e6422c570a87da8d89c45daf0d253695a943c84]
- Add `errorLoading` Galician translation [https://github.com/select2/select2/commit/8fcc6202c37f4e06d951342bf142a3b906b6b8e3]
- Add `errorLoading` Thai translation [https://github.com/select2/select2/commit/625fc78ee616baedf64aa37357403b4b72c7363c]
- Add `searching` and `errorLoading` Finnish translations [https://github.com/select2/select2/pull/4730]
- Add `errorLoading` Turkish translation [https://github.com/select2/select2/commit/fd4a0825315c7055347726d5818c999279f96ff8, https://github.com/select2/select2/commit/751b36767f9f28b9de9428d5e8035c9a404915d9]
- Add Armenian language [https://github.com/select2/select2/commit/f6fa52dcc02341df1523f50348f2effc54ee2911]
## 4.0.3
This is the third bugfix release of Select2 4.0.0. It builds upon the [second bugfix release](https://github.com/select2/select2/releases/tag/4.0.2) and fixes many common issues.
### New features / Improvements
- The old `dropdownAutoWidth` option now properly works [https://github.com/select2/select2/commit/fe26b083eb830836061de1458e483782cefef424]
- A `focus` event on the original `<select>` is now handled [https://github.com/select2/select2/commit/31e7a1d4c52ed7477769fcad5d15166ae3c9b4d0]
- Adding and removing options now refreshes the selection automatically [https://github.com/select2/select2/commit/ea79a197e0ffe55aa600eed6d18cbd1c804c3176]
### Bug fixes
- `select2('option')` no longer mutate the arguments when working on multiple elements [https://github.com/select2/select2/commit/c2c1aeef31c95c6df5545c900a4e1782d712497c]
- Better detect aborted requests [https://github.com/select2/select2/commit/cfb66f5e4f71a56c46a6890c5dde4b7f24f11fa8]
- New options are now properly created during tokenization [https://github.com/select2/select2/commit/3b8cd2e36990e695e4cb4b966c8658e7ca1574dc]
- Fix positioning bug with non-static parents for the dropdown [https://github.com/select2/select2/pull/4267]
- Infinite scrolling no longer resets the keyboard focus [https://github.com/select2/select2/commit/e897d008a672da262ba84cee2a144578696ada29, https://github.com/select2/select2/commit/9f581285d88128b29a01fc1e5fd2d445d610b553]
- `selectOnClose` now works properly with `closeOnSelect` [https://github.com/select2/select2/commit/481c43883e23874e9c35879d173eb8cc5b994b12]
- Apply `ajax.delay` to empty search terms as well [https://github.com/select2/select2/commit/4b9e02f02211248be25ac4c16d4635cf38237bb9]
### Documentation
- Added example for attaching event listeners [https://github.com/select2/select2/commit/84d6b5d840f7f4e6b7a2fb3f08424bf5495c876d]
- Correct link to the [Select2 Bootstrap Theme](https://github.com/select2/select2-bootstrap-theme) [https://github.com/select2/select2/pull/4318]
- Added example for using a `<label>` [https://github.com/select2/select2/commit/3bc7f4ac78b58eff8cd17b3273596638c3c9c5c1]
- Add documentation for `ajax.url` [https://github.com/select2/select2/commit/5a831afb9a7d46e8f20aec21164cfbfd182024de]
- Added favicon [https://github.com/select2/select2/pull/4379]
### Translations
- Add Khmer translation [https://github.com/select2/select2/pull/4246]
- Added Norwegian bokmaal for `errorLoading` [https://github.com/select2/select2/pull/4259]
- Fixed pluralization in Lithuanian translation [https://github.com/select2/select2/commit/5b5eddd183c87bf43165b3a98e03eabe10e9fa58]
- Add French translation for `errorLoading` [https://github.com/select2/select2/commit/b1ea28bb7d8c02b3b352f558031ccfc8041122eb]
- Add Greek translation [https://github.com/select2/select2/pull/4139]
## 4.0.2
This is the second bugfix release of Select2 4.0.0. It builds upon the [first release candidate of Select2 4.0.2](https://github.com/select2/select2/releases/tag/4.0.2-rc.1) with some minor improvements.
### New features / Improvements
- Added `insertTag` option to control the placement of the `tags` option [https://github.com/select2/select2/pull/4008]
- Added handler for AJAX errors [https://github.com/select2/select2/issues/3501]
- Added insertTag to control the tag position [https://github.com/select2/select2/pull/4008]
### Bug fixes
- Fixed positioning issues with static dropdown parents [https://github.com/select2/select2/issues/3970]
- Fixed existing selections not always being respected with array data [https://github.com/select2/select2/issues/3990]
- Sanitize automatically generated ids so CSS identifiers can be used [https://github.com/select2/select2/issues/3618]
- Recursively apply defaults so AJAX defaults can be set [https://github.com/select2/select2/commit/983cd8e765c5345bfe7d3bdcc3b0c882a35461ca]
- No need to recalculate the top of the dropdown twice [https://github.com/select2/select2/pull/4155]
### Documentation
- Updated Bootstrap and Font Awesome dependencies [https://github.com/select2/select2/commit/a5e539b509778eabeb8ce79e191b3ee1e81f6deb, https://github.com/select2/select2/commit/81a4a68b113e0d3e0fb1d0f8b1c33ae1b48ba04f, https://github.com/select2/select2/commit/6369f5f173fb81ec692213782945cc737e248da5]
- Use Jekyll's highlighting instead of prettify [https://github.com/select2/select2/commit/54441e6a22be3969dd934ccb769f5d7dde684bfb, https://github.com/select2/select2/commit/74387b98632c75b06d15d83ad5359b9daf0f5dcb, https://github.com/select2/select2/commit/a126b53b4c90fac33b5d855894647cd8bcac3558, https://github.com/select2/select2/commit/75163d67cb80e4279965a97e9eeda5b171806085]
- Corrected responsive width example to properly show it working [https://github.com/select2/select2/commit/63d531a9c0ab51f05327492a56f3245777762b45]
- Replaced protocol-relative URLs with HTTPS protocol [https://github.com/select2/select2/pull/4127]
- Code snippets for mapping `id` and `text` [https://github.com/select2/select2/issues/4086]
- Document how to trigger `change` just for Select2 [https://github.com/select2/select2/issues/3620]
- Added notes about DOM events [https://github.com/select2/select2/commit/37dbe059fce4578b46b7561e6243b7fdc63ac002]
### Translations
- Correct Romanian translation [https://github.com/select2/select2/commit/72d905f9e026d49e7c600f37a1ce742c404654d7]
## 4.0.1
This is the first bugfix release of Select2 4.0.0. It builds upon the [first release candidate of Select2 4.0.1](https://github.com/select2/select2/releases/tag/4.0.1-rc.1) with some minor improvements.
### New features / improvements
- The option container is now passed in as the second argument when templating selections using `templateResult` [https://github.com/select2/select2/commit/dc516e7073605723be59bc727b96a3b3dea1ae5a]
- The option container is now passed in as the second argument when templating selections using `templateSelection` [https://github.com/select2/select2/pull/3324]
- You can immediately start typing to search when tabbing into a multiple select [https://github.com/select2/select2/commit/02cca7baa7b78e73cdcf393172ee3a54be387167, https://github.com/select2/select2/commit/79cdcc0956e242c1ce642bbaa93e538c54f4be0]
- All parameters passed in for AJAX requests are now set as query string parameters by default [https://github.com/select2/select2/issues/3548]
### Bug fixes
- The search box will now be properly sized after removing a selection [https://github.com/select2/select2/commit/5f80c5d9f81f3c5398c3e6e3e84fd6c67c8873f1]
- Dropdown results will now be spoken by screen readers [https://github.com/select2/select2/commit/9fae3d74e373fc646da4e39a0c2ab11efa808c3f]
- Options are now properly cloned when initializing multiple instances at once [https://github.com/select2/select2/commit/3c8366e8769233a6b20ade934fe629279e7be6ff]
- `selectOnClose` and now be used with `closeOnSelect` without getting a stack overflow [https://github.com/select2/select2/commit/393ca4cf7f7f7097d3a994bda3dbf195e945eba1]
- Fixed positioning with non-static parents [https://github.com/select2/select2/commit/c9216b4b966653dd63a67e815b47899ef5325298]
- Fixed bug where multiple selects with placeholders were buggy in IE [https://github.com/select2/select2/issues/3300]
- Fixed bug where AJAX selects could not be initialized with array data [https://github.com/select2/select2/pull/3375]
- `:all:` is now correctly removed when used in `containerCss` and `dropdownCss` options [https://github.com/select2/select2/pull/3464]
- Fixed bug where the multiple select search box would appear on the left in RTL mode [https://github.com/select2/select2/pull/3502]
- Change ALT + UP to close the dropdown instead of opening it [https://github.com/select2/select2/commit/d2346cc33186c2a00fa2dad29e8e559c42bfea00]
- Fix focus issue with the multiple select search box when the `change` event was triggered [https://github.com/select2/select2/commit/698fe7b9e187e182f679aa679eb8b0ecb64a846b, https://github.com/select2/select2/commit/88503d2c67dc7f4fb9395a17f17edfe4948cf738, https://github.com/select2/select2/commit/dd2990adead92593a2dffff6ae004ea8b647d130]
- Fix bug in `ArrayAdapter` where the existing `<option>` data would be used instead of the array data [https://github.com/select2/select2/pull/3565]
- Remove random call to `$dropdownContainer.width()` in the `AttachBody` decorator [https://github.com/select2/select2/pull/3654]
- Fix memory leak in `AttachBody` decorator [https://github.com/select2/select2/commit/671f5a2ce21005090e0b69059799cd3dd1fbbf84]
- Selections can no longer be removed when Select2 is in a disabled state [https://github.com/select2/select2/commit/68d068f1d2c7722d011d285a291d1f974bf09772, https://github.com/select2/select2/commit/7d8f86cbf85ebd2179195ff6a2a7a1c5dcb9da58]
- Remove redundant `open` event trigger [https://github.com/select2/select2/pull/3507]
- Correct references to `this` in `ajax.data` and `ajax.url` callback functions [https://github.com/select2/select2/issues/3361]
- Apply select2('option') calls on all elements [https://github.com/select2/select2/pull/3495]
### Design
- Fixed original `<select>` not always being hidden correctly in some cases [https://github.com/select2/select2/pull/3301]
- Fix potential issue with Bootstrap's gradients in Internet Explorer [https://github.com/select2/select2/pull/3307]
- Improve compatibility with Zurb Foundation [https://github.com/select2/select2/pull/3290]
- Remove padding on mobile safari search field in multiple selects [https://github.com/select2/select2/pull/3605]
- Fix the clear button appearing beneath long text [https://github.com/select2/select2/issues/3306]
- Migrate the CSS classes for the "Loading more results" message to BEM [https://github.com/select2/select2/issues/3889]
- Fix inline search not displaying properly in Safari [https://github.com/select2/select2/issues/3459]
### Documentation
- New documentation theme designed by @fk [https://github.com/select2/select2/pull/3376, https://github.com/select2/select2/pull/3467, https://github.com/select2/select2/pull/3488]
- Update ajax example to reflect pagination [https://github.com/select2/select2/pull/3357]
- Fix incorrect option name in `maxiumSelectionLength` example [https://github.com/select2/select2/pull/3454]
- Fix typos in the disabled mode/results examples [https://github.com/select2/select2/pull/3665]
- Fix `Option` parameters in the 4.0 announcement [https://github.com/select2/select2/pull/3547]
- Fix invalid JSON in the tags example within the 4.0 announcement [https://github.com/select2/select2/pull/3637]
### Translations
- Added Cyrillic variant of the Serbian language [https://github.com/select2/select2/pull/3943]
- Corrected Thai "no results found" translation [https://github.com/select2/select2/pull/3782]
- Swapped the `inputTooLong` and `inputTooShort` messages in the Galician translation [https://github.com/select2/select2/pull/3291]
- Fix improper grammar in Dutch translation [https://github.com/select2/select2/pull/3692]
- Add Japanese translation [https://github.com/select2/select2/pull/3477]
- Polish translation: Fixed typo in maximum selected message [https://github.com/select2/select2/pull/3587]
- Add Malay translation [https://github.com/select2/select2/pull/3635]
- Add `errorLoading` for Indonesian translation [https://github.com/select2/select2/pull/3635]
- Correct grammar issues in Hebrew translation [https://github.com/select2/select2/pull/3911]
- Add `errorLoading` for Danish translation [https://github.com/select2/select2/pull/3870]
- Add Arabic translation [https://github.com/select2/select2/pull/3859]
## 4.0.0
This builds upon [the second release candidate](https://github.com/select2/select2/tree/4.0.0-rc.2), **so review all previous release notes** before upgrading from previous versions of Select2.
### Supported environments
- jQuery 1.7.2+
- Modern browsers (Chrome, Firefox, Safari)
- Internet Explorer 8+
### New features
- Fully compatible with AMD and UMD based loaders.
- Advanced plugin system that [uses custom adapters](https://select2.org/advanced/adapters-and-decorators).
- Full support for `jQuery.noConflict`.
- A `<select>` is the recommended element and [can be used for all options](https://select2.org/upgrading/migrating-from-35#no-more-hidden-input-tags). There is limited backwards-compatible support for the `<input>` element in [full builds](https://select2.org/getting-started/builds-and-modules).
- [Declarative configuration through `data-*` attributes](https://select2.org/configuration/data-attributes)
- Easy to configure theme system and new default theme
- You can use more specific locales (like `en-US`) and Select2 will be able to determine what translation files to load.
### Breaking changes
- Select2 now uses the MIT license
- [The full build](https://select2.org/getting-started/builds-and-modules) of Select2 no longer includes jQuery - You must include jQuery separately on your page.
- Select2 will prevent the inner scrolling of modals (and other scrollable containers) when it is open to prevent the UI from breaking. [Read more at the commit.](https://github.com/select2/select2/commit/003d6053a9fff587c688008397e7d5824463fe99)
- jQuery is no longer listed as a dependency in the `bower.json`/`component.json` files.
- [`<select>` has replaced `<input type="hidden" />`](https://select2.org/upgrading/migrating-from-35#no-more-hidden-input-tags) for **all options** (_including remote data_)
- The [`matcher` has been revamped](https://select2.org/upgrading/migrating-from-35#advanced-matching-of-searches) to include full context, a compatibility module (`select2/compat/matcher`) has been created
- The [display always reflects the order](https://select2.org/upgrading/migrating-from-35#display-reflects-the-actual-order-of-the-values) data is sent to the server
- The click mask is no longer the default (again). You can get back the old functionality by wrapping your `selectionAdapter` with the `ClickMask` (`select2/selection/clickMask`) decorator.
- Select2 no longer stops the propagation of events happening within the dropdown and selection. You can use the `StopPropagation` modules available in the [full builds](https://select2.org/getting-started/builds-and-modules) to prevent this. [https://github.com/select2/select2/commit/8f8140e3b00c5d5bb232455137c4c633d7da4275]
- The enter key no longer toggles the state of multiple select items in the results, but instead will only select them. Use CTRL + Space instead to toggle the state. [https://github.com/select2/select2/commit/017c20109471fa5b835603faf5dc37f7c2c2ea45]
- Warnings will now be triggered in the developer console if Select2 detects an unsupported configuration.
#### Options
- The default value of the `width` option has been changed from `style` to `resolve`.
- The `copy` value for the `width` option has been renamed to `style`.
##### Renamed
- `formatSelection` -> `templateSelection`
- `formatResult` -> `templateResult`
- `sortResults` -> `sorter`
- `createSearchChoice` -> `createTag`
- `selectOnBlur` -> `selectOnClose`
- `ajax.jsonpCallback` -> `ajax.jsonp`
- `ajax.results` -> `ajax.processResults`
- `tags: [array,of,data]` -> `data: [array,of,data], tags: true`
- `placeholderOption` has been replaced by `placeholder.id` (`placeholder` -> `placeholder.text`)
##### [Internationalization](https://select2.org/i18n)
- `formatNoMatches` -> `language.noMatches`
- `formatSearching` -> `language.searching`
- `formatInputTooShort` -> `language.inputTooShort`
- `formatInputTooLong` -> `language.inputTooLong`
- `formatAjaxError` -> `language.errorLoading`
- `formatLoading` -> `language.loadingMore`
- `formatSelectionTooBig` -> `language.maximumSelected`
##### Deprecated/Removed
- `initSelection` - This is [no longer needed](https://select2.org/upgrading/migrating-from-35#removed-the-requirement-of-initselection) with `<select>` tags. Limited backwards compatibility in the [full build](https://select2.org/getting-started/builds-and-modules).
- `id` - Data objects should now always have `id` and `text` attributes that are strings, use [`$.map`](https://api.jquery.com/jquery.map/) when migrating
- `query` - Use a [custom data adapter](https://select2.org/upgrading/migrating-from-35#custom-data-adapters-instead-of-query) instead. Limited backwards compatibility in the [full build](https://select2.org/getting-started/builds-and-modules).
- `ajax.params` - All parameters passed to `ajax` will be passed to the AJAX data transport function
#### Methods
##### Renamed
- `.select2("val", [value])` -> `.val([value])`
- `.select2("enable", !disabled)` -> `.prop("disabled", disabled)`
##### Removed
- `.select2("onSortStart")` and `.select2("onSortEnd")` - A custom [selection adapter](https://select2.org/advanced/default-adapters/selection) should be created instead
- `.select2("data", data)` - Create the `<option>` tags for the objects that you would like to set, and set the `.val` to select them
- `.select2("readonly")` - There is [no way to make a `<select>` element read-only](http://stackoverflow.com/q/368813/359284), disable it instead
#### Events
##### New
- `select2:closing` is triggered before the dropdown is closed
- `select2:select` is triggered when an option is selected
##### Renamed
- `select2-close` is now `select2:close`
- `select2-open` is now `select2:open`
- `select2-opening` is now `select2:opening`
- `select2-selecting` is now `select2:selecting`
- `select2-removed` is now `select2:unselect`
- `select2-removing` is now `select2:unselecting`
##### Removed
- `select2-clearing` has been removed in favor of `select2:unselecting`
- `select2-highlight`
- `select2-loaded`
- `select2-focus` - Use the native `focus` event instead
- `select2-blur` - Use the native `blur` event instead
- All extra properties from the `change` event were removed
- `val` can be retrieved with `$element.val()` instead
- `added` can be retrieved by listening to `select2:select`
- `removed` can be retrieved by listening to `select2:unselect`

263
Gruntfile.js Normal file
View file

@ -0,0 +1,263 @@
const sass = require('node-sass');
module.exports = function (grunt) {
// Full list of files that must be included by RequireJS
includes = [
'jquery.select2',
'almond',
'jquery-mousewheel' // shimmed for non-full builds
];
fullIncludes = [
'jquery',
'select2/compat/containerCss',
'select2/compat/dropdownCss',
'select2/compat/initSelection',
'select2/compat/inputData',
'select2/compat/matcher',
'select2/compat/query',
'select2/dropdown/attachContainer',
'select2/dropdown/stopPropagation',
'select2/selection/stopPropagation'
].concat(includes);
var i18nModules = [];
var i18nPaths = {};
var i18nFiles = grunt.file.expand({
cwd: 'src/js'
}, 'select2/i18n/*.js');
var testFiles = grunt.file.expand('tests/**/*.html');
var testUrls = testFiles.map(function (filePath) {
return 'http://localhost:9999/' + filePath;
});
var testBuildNumber = "unknown";
if (process.env.TRAVIS_JOB_ID) {
testBuildNumber = "travis-" + process.env.TRAVIS_JOB_ID;
} else {
var currentTime = new Date();
testBuildNumber = "manual-" + currentTime.getTime();
}
for (var i = 0; i < i18nFiles.length; i++) {
var file = i18nFiles[i];
var name = file.split('.')[0];
i18nModules.push({
name: name
});
i18nPaths[name] = '../../' + name;
}
var minifiedBanner = '/*! Select2 <%= package.version %> | https://github.com/select2/select2/blob/master/LICENSE.md */';
grunt.initConfig({
package: grunt.file.readJSON('package.json'),
concat: {
'dist': {
options: {
banner: grunt.file.read('src/js/wrapper.start.js'),
},
src: [
'dist/js/select2.js',
'src/js/wrapper.end.js'
],
dest: 'dist/js/select2.js'
},
'dist.full': {
options: {
banner: grunt.file.read('src/js/wrapper.start.js'),
},
src: [
'dist/js/select2.full.js',
'src/js/wrapper.end.js'
],
dest: 'dist/js/select2.full.js'
}
},
connect: {
tests: {
options: {
base: '.',
hostname: '127.0.0.1',
port: 9999
}
}
},
uglify: {
'dist': {
src: 'dist/js/select2.js',
dest: 'dist/js/select2.min.js',
options: {
banner: minifiedBanner
}
},
'dist.full': {
src: 'dist/js/select2.full.js',
dest: 'dist/js/select2.full.min.js',
options: {
banner: minifiedBanner
}
}
},
qunit: {
all: {
options: {
urls: testUrls
}
}
},
jshint: {
options: {
jshintrc: true,
reporterOutput: ''
},
code: {
src: ['src/js/**/*.js']
},
tests: {
src: ['tests/**/*.js']
}
},
sass: {
dist: {
options: {
implementation: sass,
outputStyle: 'compressed'
},
files: {
'dist/css/select2.min.css': [
'src/scss/core.scss',
'src/scss/theme/default/layout.css'
]
}
},
dev: {
options: {
implementation: sass,
outputStyle: 'nested'
},
files: {
'dist/css/select2.css': [
'src/scss/core.scss',
'src/scss/theme/default/layout.css'
]
}
}
},
requirejs: {
'dist': {
options: {
baseUrl: 'src/js',
optimize: 'none',
name: 'select2/core',
out: 'dist/js/select2.js',
include: includes,
namespace: 'S2',
paths: {
'almond': require.resolve('almond').slice(0, -3),
'jquery': 'jquery.shim',
'jquery-mousewheel': 'jquery.mousewheel.shim'
},
wrap: {
startFile: 'src/js/banner.start.js',
endFile: 'src/js/banner.end.js'
}
}
},
'dist.full': {
options: {
baseUrl: 'src/js',
optimize: 'none',
name: 'select2/core',
out: 'dist/js/select2.full.js',
include: fullIncludes,
namespace: 'S2',
paths: {
'almond': require.resolve('almond').slice(0, -3),
'jquery': 'jquery.shim',
'jquery-mousewheel': require.resolve('jquery-mousewheel').slice(0, -3)
},
wrap: {
startFile: 'src/js/banner.start.js',
endFile: 'src/js/banner.end.js'
}
}
},
'i18n': {
options: {
baseUrl: 'src/js/select2/i18n',
dir: 'dist/js/i18n',
paths: i18nPaths,
modules: i18nModules,
namespace: 'S2',
wrap: {
start: minifiedBanner + grunt.file.read('src/js/banner.start.js'),
end: grunt.file.read('src/js/banner.end.js')
}
}
}
},
watch: {
js: {
files: [
'src/js/select2/**/*.js',
'tests/**/*.js'
],
tasks: [
'compile',
'test',
'minify'
]
},
css: {
files: [
'src/scss/**/*.scss'
],
tasks: [
'compile',
'minify'
]
}
}
});
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-connect');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-qunit');
grunt.loadNpmTasks('grunt-contrib-requirejs');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-sass');
grunt.registerTask('default', ['compile', 'test', 'lint', 'minify']);
grunt.registerTask('compile', [
'requirejs:dist', 'requirejs:dist.full', 'requirejs:i18n',
'concat:dist', 'concat:dist.full',
'sass:dev'
]);
grunt.registerTask('minify', ['uglify', 'sass:dist']);
grunt.registerTask('lint', ['jshint']);
grunt.registerTask('test', ['connect:tests', 'qunit']);
};

16
LICENSE
View file

@ -1,16 +0,0 @@
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.

21
LICENSE.md Normal file
View file

@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2012-2017 Kevin Brown, Igor Vaynberg, and Select2 contributors
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.

148
README.md Executable file → Normal file
View file

@ -1,39 +1,127 @@
Select2
=================
=======
![Build Status][github-actions-image]
[![cdnjs](https://img.shields.io/cdnjs/v/select2.svg)][cdnjs]
[![jsdelivr](https://data.jsdelivr.com/v1/package/npm/select2/badge)][jsdelivr]
Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results. Look and feel of Select2 is based on the excellent [Chosen](http://harvesthq.github.com/chosen/) library.
Select2 is a jQuery-based replacement for select boxes. It supports searching,
remote data sets, and pagination of results.
To get started -- checkout http://ivaynberg.github.com/select2!
To get started, checkout examples and documentation at
https://select2.org/
Bug tracker
-----------
Use cases
---------
* Enhancing native selects with search.
* Enhancing native selects with a better multi-select interface.
* Loading data from JavaScript: easily load items via AJAX and have them
searchable.
* Nesting optgroups: native selects only support one level of nesting. Select2
does not have this restriction.
* Tagging: ability to add new items on the fly.
* Working with large, remote datasets: ability to partially load a dataset based
on the search term.
* Paging of large datasets: easy support for loading more pages when the results
are scrolled to the end.
* Templating: support for custom rendering of results and selections.
Have a bug? Please create an issue here on GitHub!
https://github.com/ivaynberg/select2/issues
Mailing list
------------
Have a question? Ask on our mailing list!
select2@googlegroups.com
https://groups.google.com/d/forum/select2
License
Browser compatibility
---------------------
* IE 8+
* Chrome 8+
* Firefox 10+
* Safari 3+
* Opera 10.6+
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this work except in compliance with the License.
You may obtain a copy of the License in the LICENSE file, or at:
Usage
-----
You can source Select2 directly from a CDN like [jsDelivr][jsdelivr] or
[cdnjs][cdnjs], [download it from this GitHub repo][releases], or use one of
the integrations below.
http://www.apache.org/licenses/LICENSE-2.0
Integrations
------------
Third party developers have created plugins for platforms which allow Select2 to be integrated more natively and quickly. For many platforms, additional plugins are not required because Select2 acts as a standard `<select>` box.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Plugins
* [Django]
- [django-autocomplete-light]
- [django-easy-select2]
- [django-select2]
* [Drupal] - [drupal-select2]
* [Meteor] - [meteor-select2]
* [Ruby on Rails][ruby-on-rails] - [select2-rails]
* [Wicket] - [wicketstuff-select2]
* [Yii 2][yii2] - [yii2-widget-select2]
* [Angularjs][angularjs] - [mdr-angular-select2]
Themes
- [Bootstrap 3][bootstrap3] - [select2-bootstrap-theme]
- [Bootstrap 4][bootstrap4] - [select2-bootstrap4-theme]
- [Flat UI][flat-ui] - [select2-flat-theme]
- [Metro UI][metro-ui] - [select2-metro]
Missing an integration? Modify this `README` and make a pull request back here to Select2 on GitHub.
Internationalization (i18n)
---------------------------
Select2 supports multiple languages by simply including the right language JS
file (`dist/js/i18n/it.js`, `dist/js/i18n/nl.js`, etc.) after
`dist/js/select2.js`.
Missing a language? Just copy `src/js/select2/i18n/en.js`, translate it, and
make a pull request back to Select2 here on GitHub.
Documentation
-------------
The documentation for Select2 is available
[online at the documentation website][documentation] and is located within the
[`docs` directory of this repository][documentation-directory].
Community
---------
You can find out about the different ways to get in touch with the Select2
community at the [Select2 community page][community].
Copyright and license
---------------------
The license is available within the repository in the [LICENSE][license] file.
[cdnjs]: http://www.cdnjs.com/libraries/select2
[community]: https://select2.org/getting-help
[documentation]: https://select2.org
[documentation-directory]: https://github.com/select2/select2/tree/develop/docs
[freenode]: https://freenode.net/
[github-actions-image]: https://github.com/select2/select2/workflows/CI/badge.svg
[jsdelivr]: https://www.jsdelivr.com/package/npm/select2
[license]: LICENSE.md
[releases]: https://github.com/select2/select2/releases
[angularjs]: https://angularjs.org/
[bootstrap3]: https://getbootstrap.com/
[bootstrap4]: https://getbootstrap.com/
[django]: https://www.djangoproject.com/
[django-autocomplete-light]: https://github.com/yourlabs/django-autocomplete-light
[django-easy-select2]: https://github.com/asyncee/django-easy-select2
[django-select2]: https://github.com/applegrew/django-select2
[drupal]: https://www.drupal.org/
[drupal-select2]: https://www.drupal.org/project/select2
[flat-ui]: http://designmodo.github.io/Flat-UI/
[mdr-angular-select2]: https://github.com/modulr/mdr-angular-select2
[meteor]: https://www.meteor.com/
[meteor-select2]: https://github.com/nate-strauser/meteor-select2
[metro-ui]: http://metroui.org.ua/
[select2-metro]: http://metroui.org.ua/select2.html
[ruby-on-rails]: http://rubyonrails.org/
[select2-bootstrap-theme]: https://github.com/select2/select2-bootstrap-theme
[select2-bootstrap4-theme]: https://github.com/ttskch/select2-bootstrap4-theme
[select2-flat-theme]: https://github.com/techhysahil/select2-Flat_Theme
[select2-rails]: https://github.com/argerim/select2-rails
[vue.js]: http://vuejs.org/
[select2-vue]: http://vuejs.org/examples/select2.html
[wicket]: https://wicket.apache.org/
[wicketstuff-select2]: https://github.com/wicketstuff/core/tree/master/select2-parent
[yii2]: http://www.yiiframework.com/
[yii2-widget-select2]: https://github.com/kartik-v/yii2-widget-select2

13
bower.json Normal file
View file

@ -0,0 +1,13 @@
{
"name": "select2",
"description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.",
"main": [
"dist/js/select2.js",
"src/scss/core.scss"
],
"license": "MIT",
"repository": {
"type": "git",
"url": "git@github.com:select2/select2.git"
}
}

19
component.json Normal file
View file

@ -0,0 +1,19 @@
{
"name": "select2",
"repo": "select/select2",
"description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.",
"version": "4.0.12",
"demo": "https://select2.org/",
"keywords": [
"jquery"
],
"main": "dist/js/select2.js",
"styles": [
"dist/css/select2.css"
],
"scripts": [
"dist/js/select2.js",
"dist/js/i18n/*.js"
],
"license": "MIT"
}

22
composer.json Normal file
View file

@ -0,0 +1,22 @@
{
"name": "select2/select2",
"description": "Select2 is a jQuery based replacement for select boxes.",
"type": "component",
"homepage": "https://select2.org/",
"license": "MIT",
"extra": {
"component": {
"scripts": [
"dist/js/select2.js"
],
"styles": [
"dist/css/select2.css"
],
"files": [
"dist/js/select2.js",
"dist/js/i18n/*.js",
"dist/css/select2.css"
]
}
}
}

481
dist/css/select2.css vendored Normal file
View file

@ -0,0 +1,481 @@
.select2-container {
box-sizing: border-box;
display: inline-block;
margin: 0;
position: relative;
vertical-align: middle; }
.select2-container .select2-selection--single {
box-sizing: border-box;
cursor: pointer;
display: block;
height: 28px;
user-select: none;
-webkit-user-select: none; }
.select2-container .select2-selection--single .select2-selection__rendered {
display: block;
padding-left: 8px;
padding-right: 20px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
.select2-container .select2-selection--single .select2-selection__clear {
position: relative; }
.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
padding-right: 8px;
padding-left: 20px; }
.select2-container .select2-selection--multiple {
box-sizing: border-box;
cursor: pointer;
display: block;
min-height: 32px;
user-select: none;
-webkit-user-select: none; }
.select2-container .select2-selection--multiple .select2-selection__rendered {
display: inline-block;
overflow: hidden;
padding-left: 8px;
text-overflow: ellipsis;
white-space: nowrap; }
.select2-container .select2-search--inline {
float: left; }
.select2-container .select2-search--inline .select2-search__field {
box-sizing: border-box;
border: none;
font-size: 100%;
margin-top: 5px;
padding: 0; }
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
-webkit-appearance: none; }
.select2-dropdown {
background-color: white;
border: 1px solid #aaa;
border-radius: 4px;
box-sizing: border-box;
display: block;
position: absolute;
left: -100000px;
width: 100%;
z-index: 1051; }
.select2-results {
display: block; }
.select2-results__options {
list-style: none;
margin: 0;
padding: 0; }
.select2-results__option {
padding: 6px;
user-select: none;
-webkit-user-select: none; }
.select2-results__option[aria-selected] {
cursor: pointer; }
.select2-container--open .select2-dropdown {
left: 0; }
.select2-container--open .select2-dropdown--above {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0; }
.select2-container--open .select2-dropdown--below {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0; }
.select2-search--dropdown {
display: block;
padding: 4px; }
.select2-search--dropdown .select2-search__field {
padding: 4px;
width: 100%;
box-sizing: border-box; }
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
-webkit-appearance: none; }
.select2-search--dropdown.select2-search--hide {
display: none; }
.select2-close-mask {
border: 0;
margin: 0;
padding: 0;
display: block;
position: fixed;
left: 0;
top: 0;
min-height: 100%;
min-width: 100%;
height: auto;
width: auto;
opacity: 0;
z-index: 99;
background-color: #fff;
filter: alpha(opacity=0); }
.select2-hidden-accessible {
border: 0 !important;
clip: rect(0 0 0 0) !important;
-webkit-clip-path: inset(50%) !important;
clip-path: inset(50%) !important;
height: 1px !important;
overflow: hidden !important;
padding: 0 !important;
position: absolute !important;
width: 1px !important;
white-space: nowrap !important; }
.select2-container--default .select2-selection--single {
background-color: #fff;
border: 1px solid #aaa;
border-radius: 4px; }
.select2-container--default .select2-selection--single .select2-selection__rendered {
color: #444;
line-height: 28px; }
.select2-container--default .select2-selection--single .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold; }
.select2-container--default .select2-selection--single .select2-selection__placeholder {
color: #999; }
.select2-container--default .select2-selection--single .select2-selection__arrow {
height: 26px;
position: absolute;
top: 1px;
right: 1px;
width: 20px; }
.select2-container--default .select2-selection--single .select2-selection__arrow b {
border-color: #888 transparent transparent transparent;
border-style: solid;
border-width: 5px 4px 0 4px;
height: 0;
left: 50%;
margin-left: -4px;
margin-top: -2px;
position: absolute;
top: 50%;
width: 0; }
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
float: left; }
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
left: 1px;
right: auto; }
.select2-container--default.select2-container--disabled .select2-selection--single {
background-color: #eee;
cursor: default; }
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
display: none; }
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #888 transparent;
border-width: 0 4px 5px 4px; }
.select2-container--default .select2-selection--multiple {
background-color: white;
border: 1px solid #aaa;
border-radius: 4px;
cursor: text; }
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
box-sizing: border-box;
list-style: none;
margin: 0;
padding: 0 5px;
width: 100%; }
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
list-style: none; }
.select2-container--default .select2-selection--multiple .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
margin-top: 5px;
margin-right: 10px;
padding: 1px; }
.select2-container--default .select2-selection--multiple .select2-selection__choice {
background-color: #e4e4e4;
border: 1px solid #aaa;
border-radius: 4px;
cursor: default;
float: left;
margin-right: 5px;
margin-top: 5px;
padding: 0 5px; }
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
color: #999;
cursor: pointer;
display: inline-block;
font-weight: bold;
margin-right: 2px; }
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
color: #333; }
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
float: right; }
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
margin-left: 5px;
margin-right: auto; }
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
margin-left: 2px;
margin-right: auto; }
.select2-container--default.select2-container--focus .select2-selection--multiple {
border: solid black 1px;
outline: 0; }
.select2-container--default.select2-container--disabled .select2-selection--multiple {
background-color: #eee;
cursor: default; }
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
display: none; }
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
border-top-left-radius: 0;
border-top-right-radius: 0; }
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0; }
.select2-container--default .select2-search--dropdown .select2-search__field {
border: 1px solid #aaa; }
.select2-container--default .select2-search--inline .select2-search__field {
background: transparent;
border: none;
outline: 0;
box-shadow: none;
-webkit-appearance: textfield; }
.select2-container--default .select2-results > .select2-results__options {
max-height: 200px;
overflow-y: auto; }
.select2-container--default .select2-results__option[role=group] {
padding: 0; }
.select2-container--default .select2-results__option[aria-disabled=true] {
color: #999; }
.select2-container--default .select2-results__option[aria-selected=true] {
background-color: #ddd; }
.select2-container--default .select2-results__option .select2-results__option {
padding-left: 1em; }
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
padding-left: 0; }
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
margin-left: -1em;
padding-left: 2em; }
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -2em;
padding-left: 3em; }
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -3em;
padding-left: 4em; }
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -4em;
padding-left: 5em; }
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -5em;
padding-left: 6em; }
.select2-container--default .select2-results__option--highlighted[aria-selected] {
background-color: #5897fb;
color: white; }
.select2-container--default .select2-results__group {
cursor: default;
display: block;
padding: 6px; }
.select2-container--classic .select2-selection--single {
background-color: #f7f7f7;
border: 1px solid #aaa;
border-radius: 4px;
outline: 0;
background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);
background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
.select2-container--classic .select2-selection--single:focus {
border: 1px solid #5897fb; }
.select2-container--classic .select2-selection--single .select2-selection__rendered {
color: #444;
line-height: 28px; }
.select2-container--classic .select2-selection--single .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
margin-right: 10px; }
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
color: #999; }
.select2-container--classic .select2-selection--single .select2-selection__arrow {
background-color: #ddd;
border: none;
border-left: 1px solid #aaa;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
height: 26px;
position: absolute;
top: 1px;
right: 1px;
width: 20px;
background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); }
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
border-color: #888 transparent transparent transparent;
border-style: solid;
border-width: 5px 4px 0 4px;
height: 0;
left: 50%;
margin-left: -4px;
margin-top: -2px;
position: absolute;
top: 50%;
width: 0; }
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
float: left; }
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
border: none;
border-right: 1px solid #aaa;
border-radius: 0;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
left: 1px;
right: auto; }
.select2-container--classic.select2-container--open .select2-selection--single {
border: 1px solid #5897fb; }
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
background: transparent;
border: none; }
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #888 transparent;
border-width: 0 4px 5px 4px; }
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0;
background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);
background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%);
background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); }
.select2-container--classic .select2-selection--multiple {
background-color: white;
border: 1px solid #aaa;
border-radius: 4px;
cursor: text;
outline: 0; }
.select2-container--classic .select2-selection--multiple:focus {
border: 1px solid #5897fb; }
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
list-style: none;
margin: 0;
padding: 0 5px; }
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
display: none; }
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
background-color: #e4e4e4;
border: 1px solid #aaa;
border-radius: 4px;
cursor: default;
float: left;
margin-right: 5px;
margin-top: 5px;
padding: 0 5px; }
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
color: #888;
cursor: pointer;
display: inline-block;
font-weight: bold;
margin-right: 2px; }
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
color: #555; }
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
float: right;
margin-left: 5px;
margin-right: auto; }
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
margin-left: 2px;
margin-right: auto; }
.select2-container--classic.select2-container--open .select2-selection--multiple {
border: 1px solid #5897fb; }
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0; }
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0; }
.select2-container--classic .select2-search--dropdown .select2-search__field {
border: 1px solid #aaa;
outline: 0; }
.select2-container--classic .select2-search--inline .select2-search__field {
outline: 0;
box-shadow: none; }
.select2-container--classic .select2-dropdown {
background-color: white;
border: 1px solid transparent; }
.select2-container--classic .select2-dropdown--above {
border-bottom: none; }
.select2-container--classic .select2-dropdown--below {
border-top: none; }
.select2-container--classic .select2-results > .select2-results__options {
max-height: 200px;
overflow-y: auto; }
.select2-container--classic .select2-results__option[role=group] {
padding: 0; }
.select2-container--classic .select2-results__option[aria-disabled=true] {
color: grey; }
.select2-container--classic .select2-results__option--highlighted[aria-selected] {
background-color: #3875d7;
color: white; }
.select2-container--classic .select2-results__group {
cursor: default;
display: block;
padding: 6px; }
.select2-container--classic.select2-container--open .select2-dropdown {
border-color: #5897fb; }

1
dist/css/select2.min.css vendored Normal file

File diff suppressed because one or more lines are too long

3
dist/js/i18n/af.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/af",[],function(){return{errorLoading:function(){return"Die resultate kon nie gelaai word nie."},inputTooLong:function(e){var n=e.input.length-e.maximum,r="Verwyders asseblief "+n+" character";return 1!=n&&(r+="s"),r},inputTooShort:function(e){return"Voer asseblief "+(e.minimum-e.input.length)+" of meer karakters"},loadingMore:function(){return"Meer resultate word gelaai…"},maximumSelected:function(e){var n="Kies asseblief net "+e.maximum+" item";return 1!=e.maximum&&(n+="s"),n},noResults:function(){return"Geen resultate gevind"},searching:function(){return"Besig…"},removeAllItems:function(){return"Verwyder alle items"}}}),e.define,e.require}();

3
dist/js/i18n/ar.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ar",[],function(){return{errorLoading:function(){return"لا يمكن تحميل النتائج"},inputTooLong:function(n){return"الرجاء حذف "+(n.input.length-n.maximum)+" عناصر"},inputTooShort:function(n){return"الرجاء إضافة "+(n.minimum-n.input.length)+" عناصر"},loadingMore:function(){return"جاري تحميل نتائج إضافية..."},maximumSelected:function(n){return"تستطيع إختيار "+n.maximum+" بنود فقط"},noResults:function(){return"لم يتم العثور على أي نتائج"},searching:function(){return"جاري البحث…"},removeAllItems:function(){return"قم بإزالة كل العناصر"}}}),n.define,n.require}();

3
dist/js/i18n/az.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/az",[],function(){return{inputTooLong:function(n){return n.input.length-n.maximum+" simvol silin"},inputTooShort:function(n){return n.minimum-n.input.length+" simvol daxil edin"},loadingMore:function(){return"Daha çox nəticə yüklənir…"},maximumSelected:function(n){return"Sadəcə "+n.maximum+" element seçə bilərsiniz"},noResults:function(){return"Nəticə tapılmadı"},searching:function(){return"Axtarılır…"},removeAllItems:function(){return"Bütün elementləri sil"}}}),n.define,n.require}();

3
dist/js/i18n/bg.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/bg",[],function(){return{inputTooLong:function(n){var e=n.input.length-n.maximum,u="Моля въведете с "+e+" по-малко символ";return e>1&&(u+="a"),u},inputTooShort:function(n){var e=n.minimum-n.input.length,u="Моля въведете още "+e+" символ";return e>1&&(u+="a"),u},loadingMore:function(){return"Зареждат се още…"},maximumSelected:function(n){var e="Можете да направите до "+n.maximum+" ";return n.maximum>1?e+="избора":e+="избор",e},noResults:function(){return"Няма намерени съвпадения"},searching:function(){return"Търсене…"},removeAllItems:function(){return"Премахнете всички елементи"}}}),n.define,n.require}();

3
dist/js/i18n/bn.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/bn",[],function(){return{errorLoading:function(){return"ফলাফলগুলি লোড করা যায়নি।"},inputTooLong:function(n){var e=n.input.length-n.maximum,u="অনুগ্রহ করে "+e+" টি অক্ষর মুছে দিন।";return 1!=e&&(u="অনুগ্রহ করে "+e+" টি অক্ষর মুছে দিন।"),u},inputTooShort:function(n){return n.minimum-n.input.length+" টি অক্ষর অথবা অধিক অক্ষর লিখুন।"},loadingMore:function(){return"আরো ফলাফল লোড হচ্ছে ..."},maximumSelected:function(n){var e=n.maximum+" টি আইটেম নির্বাচন করতে পারবেন।";return 1!=n.maximum&&(e=n.maximum+" টি আইটেম নির্বাচন করতে পারবেন।"),e},noResults:function(){return"কোন ফলাফল পাওয়া যায়নি।"},searching:function(){return"অনুসন্ধান করা হচ্ছে ..."}}}),n.define,n.require}();

3
dist/js/i18n/bs.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/bs",[],function(){function e(e,n,r,t){return e%10==1&&e%100!=11?n:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?r:t}return{errorLoading:function(){return"Preuzimanje nije uspijelo."},inputTooLong:function(n){var r=n.input.length-n.maximum,t="Obrišite "+r+" simbol";return t+=e(r,"","a","a")},inputTooShort:function(n){var r=n.minimum-n.input.length,t="Ukucajte bar još "+r+" simbol";return t+=e(r,"","a","a")},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(n){var r="Možete izabrati samo "+n.maximum+" stavk";return r+=e(n.maximum,"u","e","i")},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"},removeAllItems:function(){return"Uklonite sve stavke"}}}),e.define,e.require}();

3
dist/js/i18n/ca.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/ca",[],function(){return{errorLoading:function(){return"La càrrega ha fallat"},inputTooLong:function(e){var n=e.input.length-e.maximum,r="Si us plau, elimina "+n+" car";return r+=1==n?"àcter":"àcters"},inputTooShort:function(e){var n=e.minimum-e.input.length,r="Si us plau, introdueix "+n+" car";return r+=1==n?"àcter":"àcters"},loadingMore:function(){return"Carregant més resultats…"},maximumSelected:function(e){var n="Només es pot seleccionar "+e.maximum+" element";return 1!=e.maximum&&(n+="s"),n},noResults:function(){return"No s'han trobat resultats"},searching:function(){return"Cercant…"},removeAllItems:function(){return"Treu tots els elements"}}}),e.define,e.require}();

3
dist/js/i18n/cs.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/cs",[],function(){function e(e,n){switch(e){case 2:return n?"dva":"dvě";case 3:return"tři";case 4:return"čtyři"}return""}return{errorLoading:function(){return"Výsledky nemohly být načteny."},inputTooLong:function(n){var t=n.input.length-n.maximum;return 1==t?"Prosím, zadejte o jeden znak méně.":t<=4?"Prosím, zadejte o "+e(t,!0)+" znaky méně.":"Prosím, zadejte o "+t+" znaků méně."},inputTooShort:function(n){var t=n.minimum-n.input.length;return 1==t?"Prosím, zadejte ještě jeden znak.":t<=4?"Prosím, zadejte ještě další "+e(t,!0)+" znaky.":"Prosím, zadejte ještě dalších "+t+" znaků."},loadingMore:function(){return"Načítají se další výsledky…"},maximumSelected:function(n){var t=n.maximum;return 1==t?"Můžete zvolit jen jednu položku.":t<=4?"Můžete zvolit maximálně "+e(t,!1)+" položky.":"Můžete zvolit maximálně "+t+" položek."},noResults:function(){return"Nenalezeny žádné položky."},searching:function(){return"Vyhledávání…"},removeAllItems:function(){return"Odstraňte všechny položky"}}}),e.define,e.require}();

3
dist/js/i18n/da.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/da",[],function(){return{errorLoading:function(){return"Resultaterne kunne ikke indlæses."},inputTooLong:function(e){return"Angiv venligst "+(e.input.length-e.maximum)+" tegn mindre"},inputTooShort:function(e){return"Angiv venligst "+(e.minimum-e.input.length)+" tegn mere"},loadingMore:function(){return"Indlæser flere resultater…"},maximumSelected:function(e){var n="Du kan kun vælge "+e.maximum+" emne";return 1!=e.maximum&&(n+="r"),n},noResults:function(){return"Ingen resultater fundet"},searching:function(){return"Søger…"},removeAllItems:function(){return"Fjern alle elementer"}}}),e.define,e.require}();

3
dist/js/i18n/de.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/de",[],function(){return{errorLoading:function(){return"Die Ergebnisse konnten nicht geladen werden."},inputTooLong:function(e){return"Bitte "+(e.input.length-e.maximum)+" Zeichen weniger eingeben"},inputTooShort:function(e){return"Bitte "+(e.minimum-e.input.length)+" Zeichen mehr eingeben"},loadingMore:function(){return"Lade mehr Ergebnisse…"},maximumSelected:function(e){var n="Sie können nur "+e.maximum+" Element";return 1!=e.maximum&&(n+="e"),n+=" auswählen"},noResults:function(){return"Keine Übereinstimmungen gefunden"},searching:function(){return"Suche…"},removeAllItems:function(){return"Entferne alle Elemente"}}}),e.define,e.require}();

3
dist/js/i18n/dsb.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/dsb",[],function(){var n=["znamuško","znamušce","znamuška","znamuškow"],e=["zapisk","zapiska","zapiski","zapiskow"],u=function(n,e){return 1===n?e[0]:2===n?e[1]:n>2&&n<=4?e[2]:n>=5?e[3]:void 0};return{errorLoading:function(){return"Wuslědki njejsu se dali zacytaś."},inputTooLong:function(e){var a=e.input.length-e.maximum;return"Pšosym lašuj "+a+" "+u(a,n)},inputTooShort:function(e){var a=e.minimum-e.input.length;return"Pšosym zapódaj nanejmjenjej "+a+" "+u(a,n)},loadingMore:function(){return"Dalšne wuslědki se zacytaju…"},maximumSelected:function(n){return"Móžoš jano "+n.maximum+" "+u(n.maximum,e)+"wubraś."},noResults:function(){return"Žedne wuslědki namakane"},searching:function(){return"Pyta se…"},removeAllItems:function(){return"Remove all items"}}}),n.define,n.require}();

3
dist/js/i18n/el.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/el",[],function(){return{errorLoading:function(){return"Τα αποτελέσματα δεν μπόρεσαν να φορτώσουν."},inputTooLong:function(n){var e=n.input.length-n.maximum,u="Παρακαλώ διαγράψτε "+e+" χαρακτήρ";return 1==e&&(u+="α"),1!=e&&(u+="ες"),u},inputTooShort:function(n){return"Παρακαλώ συμπληρώστε "+(n.minimum-n.input.length)+" ή περισσότερους χαρακτήρες"},loadingMore:function(){return"Φόρτωση περισσότερων αποτελεσμάτων…"},maximumSelected:function(n){var e="Μπορείτε να επιλέξετε μόνο "+n.maximum+" επιλογ";return 1==n.maximum&&(e+="ή"),1!=n.maximum&&(e+="ές"),e},noResults:function(){return"Δεν βρέθηκαν αποτελέσματα"},searching:function(){return"Αναζήτηση…"},removeAllItems:function(){return"Καταργήστε όλα τα στοιχεία"}}}),n.define,n.require}();

3
dist/js/i18n/en.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var n=e.input.length-e.maximum,r="Please delete "+n+" character";return 1!=n&&(r+="s"),r},inputTooShort:function(e){return"Please enter "+(e.minimum-e.input.length)+" or more characters"},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var n="You can only select "+e.maximum+" item";return 1!=e.maximum&&(n+="s"),n},noResults:function(){return"No results found"},searching:function(){return"Searching…"},removeAllItems:function(){return"Remove all items"}}}),e.define,e.require}();

3
dist/js/i18n/es.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/es",[],function(){return{errorLoading:function(){return"No se pudieron cargar los resultados"},inputTooLong:function(e){var n=e.input.length-e.maximum,r="Por favor, elimine "+n+" car";return r+=1==n?"ácter":"acteres"},inputTooShort:function(e){var n=e.minimum-e.input.length,r="Por favor, introduzca "+n+" car";return r+=1==n?"ácter":"acteres"},loadingMore:function(){return"Cargando más resultados…"},maximumSelected:function(e){var n="Sólo puede seleccionar "+e.maximum+" elemento";return 1!=e.maximum&&(n+="s"),n},noResults:function(){return"No se encontraron resultados"},searching:function(){return"Buscando…"},removeAllItems:function(){return"Eliminar todos los elementos"}}}),e.define,e.require}();

3
dist/js/i18n/et.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/et",[],function(){return{inputTooLong:function(e){var n=e.input.length-e.maximum,t="Sisesta "+n+" täht";return 1!=n&&(t+="e"),t+=" vähem"},inputTooShort:function(e){var n=e.minimum-e.input.length,t="Sisesta "+n+" täht";return 1!=n&&(t+="e"),t+=" rohkem"},loadingMore:function(){return"Laen tulemusi…"},maximumSelected:function(e){var n="Saad vaid "+e.maximum+" tulemus";return 1==e.maximum?n+="e":n+="t",n+=" valida"},noResults:function(){return"Tulemused puuduvad"},searching:function(){return"Otsin…"},removeAllItems:function(){return"Eemalda kõik esemed"}}}),e.define,e.require}();

3
dist/js/i18n/eu.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/eu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Idatzi ";return n+=1==t?"karaktere bat":t+" karaktere",n+=" gutxiago"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Idatzi ";return n+=1==t?"karaktere bat":t+" karaktere",n+=" gehiago"},loadingMore:function(){return"Emaitza gehiago kargatzen…"},maximumSelected:function(e){return 1===e.maximum?"Elementu bakarra hauta dezakezu":e.maximum+" elementu hauta ditzakezu soilik"},noResults:function(){return"Ez da bat datorrenik aurkitu"},searching:function(){return"Bilatzen…"},removeAllItems:function(){return"Kendu elementu guztiak"}}}),e.define,e.require}();

3
dist/js/i18n/fa.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/fa",[],function(){return{errorLoading:function(){return"امکان بارگذاری نتایج وجود ندارد."},inputTooLong:function(n){return"لطفاً "+(n.input.length-n.maximum)+" کاراکتر را حذف نمایید"},inputTooShort:function(n){return"لطفاً تعداد "+(n.minimum-n.input.length)+" کاراکتر یا بیشتر وارد نمایید"},loadingMore:function(){return"در حال بارگذاری نتایج بیشتر..."},maximumSelected:function(n){return"شما تنها می‌توانید "+n.maximum+" آیتم را انتخاب نمایید"},noResults:function(){return"هیچ نتیجه‌ای یافت نشد"},searching:function(){return"در حال جستجو..."},removeAllItems:function(){return"همه موارد را حذف کنید"}}}),n.define,n.require}();

3
dist/js/i18n/fi.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/fi",[],function(){return{errorLoading:function(){return"Tuloksia ei saatu ladattua."},inputTooLong:function(n){return"Ole hyvä ja anna "+(n.input.length-n.maximum)+" merkkiä vähemmän"},inputTooShort:function(n){return"Ole hyvä ja anna "+(n.minimum-n.input.length)+" merkkiä lisää"},loadingMore:function(){return"Ladataan lisää tuloksia…"},maximumSelected:function(n){return"Voit valita ainoastaan "+n.maximum+" kpl"},noResults:function(){return"Ei tuloksia"},searching:function(){return"Haetaan…"},removeAllItems:function(){return"Poista kaikki kohteet"}}}),n.define,n.require}();

3
dist/js/i18n/fr.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/fr",[],function(){return{errorLoading:function(){return"Les résultats ne peuvent pas être chargés."},inputTooLong:function(e){var n=e.input.length-e.maximum;return"Supprimez "+n+" caractère"+(n>1?"s":"")},inputTooShort:function(e){var n=e.minimum-e.input.length;return"Saisissez au moins "+n+" caractère"+(n>1?"s":"")},loadingMore:function(){return"Chargement de résultats supplémentaires…"},maximumSelected:function(e){return"Vous pouvez seulement sélectionner "+e.maximum+" élément"+(e.maximum>1?"s":"")},noResults:function(){return"Aucun résultat trouvé"},searching:function(){return"Recherche en cours…"},removeAllItems:function(){return"Supprimer tous les éléments"}}}),e.define,e.require}();

3
dist/js/i18n/gl.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/gl",[],function(){return{errorLoading:function(){return"Non foi posíbel cargar os resultados."},inputTooLong:function(e){var n=e.input.length-e.maximum;return 1===n?"Elimine un carácter":"Elimine "+n+" caracteres"},inputTooShort:function(e){var n=e.minimum-e.input.length;return 1===n?"Engada un carácter":"Engada "+n+" caracteres"},loadingMore:function(){return"Cargando máis resultados…"},maximumSelected:function(e){return 1===e.maximum?"Só pode seleccionar un elemento":"Só pode seleccionar "+e.maximum+" elementos"},noResults:function(){return"Non se atoparon resultados"},searching:function(){return"Buscando…"},removeAllItems:function(){return"Elimina todos os elementos"}}}),e.define,e.require}();

3
dist/js/i18n/he.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/he",[],function(){return{errorLoading:function(){return"שגיאה בטעינת התוצאות"},inputTooLong:function(n){var e=n.input.length-n.maximum,r="נא למחוק ";return r+=1===e?"תו אחד":e+" תווים"},inputTooShort:function(n){var e=n.minimum-n.input.length,r="נא להכניס ";return r+=1===e?"תו אחד":e+" תווים",r+=" או יותר"},loadingMore:function(){return"טוען תוצאות נוספות…"},maximumSelected:function(n){var e="באפשרותך לבחור עד ";return 1===n.maximum?e+="פריט אחד":e+=n.maximum+" פריטים",e},noResults:function(){return"לא נמצאו תוצאות"},searching:function(){return"מחפש…"},removeAllItems:function(){return"הסר את כל הפריטים"}}}),n.define,n.require}();

3
dist/js/i18n/hi.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/hi",[],function(){return{errorLoading:function(){return"परिणामों को लोड नहीं किया जा सका।"},inputTooLong:function(n){var e=n.input.length-n.maximum,r=e+" अक्षर को हटा दें";return e>1&&(r=e+" अक्षरों को हटा दें "),r},inputTooShort:function(n){return"कृपया "+(n.minimum-n.input.length)+" या अधिक अक्षर दर्ज करें"},loadingMore:function(){return"अधिक परिणाम लोड हो रहे है..."},maximumSelected:function(n){return"आप केवल "+n.maximum+" आइटम का चयन कर सकते हैं"},noResults:function(){return"कोई परिणाम नहीं मिला"},searching:function(){return"खोज रहा है..."},removeAllItems:function(){return"सभी वस्तुओं को हटा दें"}}}),n.define,n.require}();

3
dist/js/i18n/hr.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/hr",[],function(){function n(n){var e=" "+n+" znak";return n%10<5&&n%10>0&&(n%100<5||n%100>19)?n%10>1&&(e+="a"):e+="ova",e}return{errorLoading:function(){return"Preuzimanje nije uspjelo."},inputTooLong:function(e){return"Unesite "+n(e.input.length-e.maximum)},inputTooShort:function(e){return"Unesite još "+n(e.minimum-e.input.length)},loadingMore:function(){return"Učitavanje rezultata…"},maximumSelected:function(n){return"Maksimalan broj odabranih stavki je "+n.maximum},noResults:function(){return"Nema rezultata"},searching:function(){return"Pretraga…"},removeAllItems:function(){return"Ukloni sve stavke"}}}),n.define,n.require}();

3
dist/js/i18n/hsb.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/hsb",[],function(){var n=["znamješko","znamješce","znamješka","znamješkow"],e=["zapisk","zapiskaj","zapiski","zapiskow"],u=function(n,e){return 1===n?e[0]:2===n?e[1]:n>2&&n<=4?e[2]:n>=5?e[3]:void 0};return{errorLoading:function(){return"Wuslědki njedachu so začitać."},inputTooLong:function(e){var a=e.input.length-e.maximum;return"Prošu zhašej "+a+" "+u(a,n)},inputTooShort:function(e){var a=e.minimum-e.input.length;return"Prošu zapodaj znajmjeńša "+a+" "+u(a,n)},loadingMore:function(){return"Dalše wuslědki so začitaja…"},maximumSelected:function(n){return"Móžeš jenož "+n.maximum+" "+u(n.maximum,e)+"wubrać"},noResults:function(){return"Žane wuslědki namakane"},searching:function(){return"Pyta so…"},removeAllItems:function(){return"Remove all items"}}}),n.define,n.require}();

3
dist/js/i18n/hu.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/hu",[],function(){return{errorLoading:function(){return"Az eredmények betöltése nem sikerült."},inputTooLong:function(e){return"Túl hosszú. "+(e.input.length-e.maximum)+" karakterrel több, mint kellene."},inputTooShort:function(e){return"Túl rövid. Még "+(e.minimum-e.input.length)+" karakter hiányzik."},loadingMore:function(){return"Töltés…"},maximumSelected:function(e){return"Csak "+e.maximum+" elemet lehet kiválasztani."},noResults:function(){return"Nincs találat."},searching:function(){return"Keresés…"},removeAllItems:function(){return"Távolítson el minden elemet"}}}),e.define,e.require}();

3
dist/js/i18n/hy.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/hy",[],function(){return{errorLoading:function(){return"Արդյունքները հնարավոր չէ բեռնել։"},inputTooLong:function(n){return"Խնդրում ենք հեռացնել "+(n.input.length-n.maximum)+" նշան"},inputTooShort:function(n){return"Խնդրում ենք մուտքագրել "+(n.minimum-n.input.length)+" կամ ավել նշաններ"},loadingMore:function(){return"Բեռնվում են նոր արդյունքներ․․․"},maximumSelected:function(n){return"Դուք կարող եք ընտրել առավելագույնը "+n.maximum+" կետ"},noResults:function(){return"Արդյունքներ չեն գտնվել"},searching:function(){return"Որոնում․․․"},removeAllItems:function(){return"Հեռացնել բոլոր տարրերը"}}}),n.define,n.require}();

3
dist/js/i18n/id.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/id",[],function(){return{errorLoading:function(){return"Data tidak boleh diambil."},inputTooLong:function(n){return"Hapuskan "+(n.input.length-n.maximum)+" huruf"},inputTooShort:function(n){return"Masukkan "+(n.minimum-n.input.length)+" huruf lagi"},loadingMore:function(){return"Mengambil data…"},maximumSelected:function(n){return"Anda hanya dapat memilih "+n.maximum+" pilihan"},noResults:function(){return"Tidak ada data yang sesuai"},searching:function(){return"Mencari…"},removeAllItems:function(){return"Hapus semua item"}}}),n.define,n.require}();

3
dist/js/i18n/is.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/is",[],function(){return{inputTooLong:function(n){var t=n.input.length-n.maximum,e="Vinsamlegast styttið texta um "+t+" staf";return t<=1?e:e+"i"},inputTooShort:function(n){var t=n.minimum-n.input.length,e="Vinsamlegast skrifið "+t+" staf";return t>1&&(e+="i"),e+=" í viðbót"},loadingMore:function(){return"Sæki fleiri niðurstöður…"},maximumSelected:function(n){return"Þú getur aðeins valið "+n.maximum+" atriði"},noResults:function(){return"Ekkert fannst"},searching:function(){return"Leita…"},removeAllItems:function(){return"Fjarlægðu öll atriði"}}}),n.define,n.require}();

3
dist/js/i18n/it.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/it",[],function(){return{errorLoading:function(){return"I risultati non possono essere caricati."},inputTooLong:function(e){var n=e.input.length-e.maximum,t="Per favore cancella "+n+" caratter";return t+=1!==n?"i":"e"},inputTooShort:function(e){return"Per favore inserisci "+(e.minimum-e.input.length)+" o più caratteri"},loadingMore:function(){return"Caricando più risultati…"},maximumSelected:function(e){var n="Puoi selezionare solo "+e.maximum+" element";return 1!==e.maximum?n+="i":n+="o",n},noResults:function(){return"Nessun risultato trovato"},searching:function(){return"Sto cercando…"},removeAllItems:function(){return"Rimuovi tutti gli oggetti"}}}),e.define,e.require}();

3
dist/js/i18n/ja.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ja",[],function(){return{errorLoading:function(){return"結果が読み込まれませんでした"},inputTooLong:function(n){return n.input.length-n.maximum+" 文字を削除してください"},inputTooShort:function(n){return"少なくとも "+(n.minimum-n.input.length)+" 文字を入力してください"},loadingMore:function(){return"読み込み中…"},maximumSelected:function(n){return n.maximum+" 件しか選択できません"},noResults:function(){return"対象が見つかりません"},searching:function(){return"検索しています…"},removeAllItems:function(){return"すべてのアイテムを削除"}}}),n.define,n.require}();

3
dist/js/i18n/ka.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ka",[],function(){return{errorLoading:function(){return"მონაცემების ჩატვირთვა შეუძლებელია."},inputTooLong:function(n){return"გთხოვთ აკრიფეთ "+(n.input.length-n.maximum)+" სიმბოლოთი ნაკლები"},inputTooShort:function(n){return"გთხოვთ აკრიფეთ "+(n.minimum-n.input.length)+" სიმბოლო ან მეტი"},loadingMore:function(){return"მონაცემების ჩატვირთვა…"},maximumSelected:function(n){return"თქვენ შეგიძლიათ აირჩიოთ არაუმეტეს "+n.maximum+" ელემენტი"},noResults:function(){return"რეზულტატი არ მოიძებნა"},searching:function(){return"ძიება…"},removeAllItems:function(){return"ამოიღე ყველა ელემენტი"}}}),n.define,n.require}();

3
dist/js/i18n/km.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/km",[],function(){return{errorLoading:function(){return"មិនអាចទាញយកទិន្នន័យ"},inputTooLong:function(n){return"សូមលុបចេញ "+(n.input.length-n.maximum)+" អក្សរ"},inputTooShort:function(n){return"សូមបញ្ចូល"+(n.minimum-n.input.length)+" អក្សរ រឺ ច្រើនជាងនេះ"},loadingMore:function(){return"កំពុងទាញយកទិន្នន័យបន្ថែម..."},maximumSelected:function(n){return"អ្នកអាចជ្រើសរើសបានតែ "+n.maximum+" ជម្រើសប៉ុណ្ណោះ"},noResults:function(){return"មិនមានលទ្ធផល"},searching:function(){return"កំពុងស្វែងរក..."},removeAllItems:function(){return"លុបធាតុទាំងអស់"}}}),n.define,n.require}();

3
dist/js/i18n/ko.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ko",[],function(){return{errorLoading:function(){return"결과를 불러올 수 없습니다."},inputTooLong:function(n){return"너무 깁니다. "+(n.input.length-n.maximum)+" 글자 지워주세요."},inputTooShort:function(n){return"너무 짧습니다. "+(n.minimum-n.input.length)+" 글자 더 입력해주세요."},loadingMore:function(){return"불러오는 중…"},maximumSelected:function(n){return"최대 "+n.maximum+"개까지만 선택 가능합니다."},noResults:function(){return"결과가 없습니다."},searching:function(){return"검색 중…"},removeAllItems:function(){return"모든 항목 삭제"}}}),n.define,n.require}();

3
dist/js/i18n/lt.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/lt",[],function(){function n(n,e,i,t){return n%10==1&&(n%100<11||n%100>19)?e:n%10>=2&&n%10<=9&&(n%100<11||n%100>19)?i:t}return{inputTooLong:function(e){var i=e.input.length-e.maximum,t="Pašalinkite "+i+" simbol";return t+=n(i,"į","ius","ių")},inputTooShort:function(e){var i=e.minimum-e.input.length,t="Įrašykite dar "+i+" simbol";return t+=n(i,"į","ius","ių")},loadingMore:function(){return"Kraunama daugiau rezultatų…"},maximumSelected:function(e){var i="Jūs galite pasirinkti tik "+e.maximum+" element";return i+=n(e.maximum,"ą","us","ų")},noResults:function(){return"Atitikmenų nerasta"},searching:function(){return"Ieškoma…"},removeAllItems:function(){return"Pašalinti visus elementus"}}}),n.define,n.require}();

3
dist/js/i18n/lv.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/lv",[],function(){function e(e,n,u,i){return 11===e?n:e%10==1?u:i}return{inputTooLong:function(n){var u=n.input.length-n.maximum,i="Lūdzu ievadiet par "+u;return(i+=" simbol"+e(u,"iem","u","iem"))+" mazāk"},inputTooShort:function(n){var u=n.minimum-n.input.length,i="Lūdzu ievadiet vēl "+u;return i+=" simbol"+e(u,"us","u","us")},loadingMore:function(){return"Datu ielāde…"},maximumSelected:function(n){var u="Jūs varat izvēlēties ne vairāk kā "+n.maximum;return u+=" element"+e(n.maximum,"us","u","us")},noResults:function(){return"Sakritību nav"},searching:function(){return"Meklēšana…"},removeAllItems:function(){return"Noņemt visus vienumus"}}}),e.define,e.require}();

3
dist/js/i18n/mk.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/mk",[],function(){return{inputTooLong:function(n){var e=(n.input.length,n.maximum,"Ве молиме внесете "+n.maximum+" помалку карактер");return 1!==n.maximum&&(e+="и"),e},inputTooShort:function(n){var e=(n.minimum,n.input.length,"Ве молиме внесете уште "+n.maximum+" карактер");return 1!==n.maximum&&(e+="и"),e},loadingMore:function(){return"Вчитување резултати…"},maximumSelected:function(n){var e="Можете да изберете само "+n.maximum+" ставк";return 1===n.maximum?e+="а":e+="и",e},noResults:function(){return"Нема пронајдено совпаѓања"},searching:function(){return"Пребарување…"},removeAllItems:function(){return"Отстрани ги сите предмети"}}}),n.define,n.require}();

3
dist/js/i18n/ms.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ms",[],function(){return{errorLoading:function(){return"Keputusan tidak berjaya dimuatkan."},inputTooLong:function(n){return"Sila hapuskan "+(n.input.length-n.maximum)+" aksara"},inputTooShort:function(n){return"Sila masukkan "+(n.minimum-n.input.length)+" atau lebih aksara"},loadingMore:function(){return"Sedang memuatkan keputusan…"},maximumSelected:function(n){return"Anda hanya boleh memilih "+n.maximum+" pilihan"},noResults:function(){return"Tiada padanan yang ditemui"},searching:function(){return"Mencari…"},removeAllItems:function(){return"Keluarkan semua item"}}}),n.define,n.require}();

3
dist/js/i18n/nb.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/nb",[],function(){return{errorLoading:function(){return"Kunne ikke hente resultater."},inputTooLong:function(e){return"Vennligst fjern "+(e.input.length-e.maximum)+" tegn"},inputTooShort:function(e){return"Vennligst skriv inn "+(e.minimum-e.input.length)+" tegn til"},loadingMore:function(){return"Laster flere resultater…"},maximumSelected:function(e){return"Du kan velge maks "+e.maximum+" elementer"},noResults:function(){return"Ingen treff"},searching:function(){return"Søker…"},removeAllItems:function(){return"Fjern alle elementer"}}}),e.define,e.require}();

3
dist/js/i18n/ne.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ne",[],function(){return{errorLoading:function(){return"नतिजाहरु देखाउन सकिएन।"},inputTooLong:function(n){var e=n.input.length-n.maximum,u="कृपया "+e+" अक्षर मेटाउनुहोस्।";return 1!=e&&(u+="कृपया "+e+" अक्षरहरु मेटाउनुहोस्।"),u},inputTooShort:function(n){return"कृपया बाँकी रहेका "+(n.minimum-n.input.length)+" वा अरु धेरै अक्षरहरु भर्नुहोस्।"},loadingMore:function(){return"अरु नतिजाहरु भरिँदैछन् …"},maximumSelected:function(n){var e="तँपाई "+n.maximum+" वस्तु मात्र छान्न पाउँनुहुन्छ।";return 1!=n.maximum&&(e="तँपाई "+n.maximum+" वस्तुहरु मात्र छान्न पाउँनुहुन्छ।"),e},noResults:function(){return"कुनै पनि नतिजा भेटिएन।"},searching:function(){return"खोजि हुँदैछ…"}}}),n.define,n.require}();

3
dist/js/i18n/nl.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/nl",[],function(){return{errorLoading:function(){return"De resultaten konden niet worden geladen."},inputTooLong:function(e){return"Gelieve "+(e.input.length-e.maximum)+" karakters te verwijderen"},inputTooShort:function(e){return"Gelieve "+(e.minimum-e.input.length)+" of meer karakters in te voeren"},loadingMore:function(){return"Meer resultaten laden…"},maximumSelected:function(e){var n=1==e.maximum?"kan":"kunnen",r="Er "+n+" maar "+e.maximum+" item";return 1!=e.maximum&&(r+="s"),r+=" worden geselecteerd"},noResults:function(){return"Geen resultaten gevonden…"},searching:function(){return"Zoeken…"},removeAllItems:function(){return"Verwijder alle items"}}}),e.define,e.require}();

3
dist/js/i18n/pl.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/pl",[],function(){var n=["znak","znaki","znaków"],e=["element","elementy","elementów"],r=function(n,e){return 1===n?e[0]:n>1&&n<=4?e[1]:n>=5?e[2]:void 0};return{errorLoading:function(){return"Nie można załadować wyników."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Usuń "+t+" "+r(t,n)},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Podaj przynajmniej "+t+" "+r(t,n)},loadingMore:function(){return"Trwa ładowanie…"},maximumSelected:function(n){return"Możesz zaznaczyć tylko "+n.maximum+" "+r(n.maximum,e)},noResults:function(){return"Brak wyników"},searching:function(){return"Trwa wyszukiwanie…"},removeAllItems:function(){return"Usuń wszystkie przedmioty"}}}),n.define,n.require}();

3
dist/js/i18n/ps.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ps",[],function(){return{errorLoading:function(){return"پايلي نه سي ترلاسه کېدای"},inputTooLong:function(n){var e=n.input.length-n.maximum,r="د مهربانۍ لمخي "+e+" توری ړنګ کړئ";return 1!=e&&(r=r.replace("توری","توري")),r},inputTooShort:function(n){return"لږ تر لږه "+(n.minimum-n.input.length)+" يا ډېر توري وليکئ"},loadingMore:function(){return"نوري پايلي ترلاسه کيږي..."},maximumSelected:function(n){var e="تاسو يوازي "+n.maximum+" قلم په نښه کولای سی";return 1!=n.maximum&&(e=e.replace("قلم","قلمونه")),e},noResults:function(){return"پايلي و نه موندل سوې"},searching:function(){return"لټول کيږي..."},removeAllItems:function(){return"ټول توکي لرې کړئ"}}}),n.define,n.require}();

3
dist/js/i18n/pt-BR.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/pt-BR",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var n=e.input.length-e.maximum,r="Apague "+n+" caracter";return 1!=n&&(r+="es"),r},inputTooShort:function(e){return"Digite "+(e.minimum-e.input.length)+" ou mais caracteres"},loadingMore:function(){return"Carregando mais resultados…"},maximumSelected:function(e){var n="Você só pode selecionar "+e.maximum+" ite";return 1==e.maximum?n+="m":n+="ns",n},noResults:function(){return"Nenhum resultado encontrado"},searching:function(){return"Buscando…"},removeAllItems:function(){return"Remover todos os itens"}}}),e.define,e.require}();

3
dist/js/i18n/pt.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/pt",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var r=e.input.length-e.maximum,n="Por favor apague "+r+" ";return n+=1!=r?"caracteres":"caractere"},inputTooShort:function(e){return"Introduza "+(e.minimum-e.input.length)+" ou mais caracteres"},loadingMore:function(){return"A carregar mais resultados…"},maximumSelected:function(e){var r="Apenas pode seleccionar "+e.maximum+" ";return r+=1!=e.maximum?"itens":"item"},noResults:function(){return"Sem resultados"},searching:function(){return"A procurar…"},removeAllItems:function(){return"Remover todos os itens"}}}),e.define,e.require}();

3
dist/js/i18n/ro.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/ro",[],function(){return{errorLoading:function(){return"Rezultatele nu au putut fi incărcate."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vă rugăm să ștergeți"+t+" caracter";return 1!==t&&(n+="e"),n},inputTooShort:function(e){return"Vă rugăm să introduceți "+(e.minimum-e.input.length)+" sau mai multe caractere"},loadingMore:function(){return"Se încarcă mai multe rezultate…"},maximumSelected:function(e){var t="Aveți voie să selectați cel mult "+e.maximum;return t+=" element",1!==e.maximum&&(t+="e"),t},noResults:function(){return"Nu au fost găsite rezultate"},searching:function(){return"Căutare…"},removeAllItems:function(){return"Eliminați toate elementele"}}}),e.define,e.require}();

3
dist/js/i18n/ru.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ru",[],function(){function n(n,e,r,u){return n%10<5&&n%10>0&&n%100<5||n%100>20?n%10>1?r:e:u}return{errorLoading:function(){return"Невозможно загрузить результаты"},inputTooLong:function(e){var r=e.input.length-e.maximum,u="Пожалуйста, введите на "+r+" символ";return u+=n(r,"","a","ов"),u+=" меньше"},inputTooShort:function(e){var r=e.minimum-e.input.length,u="Пожалуйста, введите ещё хотя бы "+r+" символ";return u+=n(r,"","a","ов")},loadingMore:function(){return"Загрузка данных…"},maximumSelected:function(e){var r="Вы можете выбрать не более "+e.maximum+" элемент";return r+=n(e.maximum,"","a","ов")},noResults:function(){return"Совпадений не найдено"},searching:function(){return"Поиск…"},removeAllItems:function(){return"Удалить все элементы"}}}),n.define,n.require}();

3
dist/js/i18n/sk.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/sk",[],function(){var e={2:function(e){return e?"dva":"dve"},3:function(){return"tri"},4:function(){return"štyri"}};return{errorLoading:function(){return"Výsledky sa nepodarilo načítať."},inputTooLong:function(n){var t=n.input.length-n.maximum;return 1==t?"Prosím, zadajte o jeden znak menej":t>=2&&t<=4?"Prosím, zadajte o "+e[t](!0)+" znaky menej":"Prosím, zadajte o "+t+" znakov menej"},inputTooShort:function(n){var t=n.minimum-n.input.length;return 1==t?"Prosím, zadajte ešte jeden znak":t<=4?"Prosím, zadajte ešte ďalšie "+e[t](!0)+" znaky":"Prosím, zadajte ešte ďalších "+t+" znakov"},loadingMore:function(){return"Načítanie ďalších výsledkov…"},maximumSelected:function(n){return 1==n.maximum?"Môžete zvoliť len jednu položku":n.maximum>=2&&n.maximum<=4?"Môžete zvoliť najviac "+e[n.maximum](!1)+" položky":"Môžete zvoliť najviac "+n.maximum+" položiek"},noResults:function(){return"Nenašli sa žiadne položky"},searching:function(){return"Vyhľadávanie…"},removeAllItems:function(){return"Odstráňte všetky položky"}}}),e.define,e.require}();

3
dist/js/i18n/sl.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/sl",[],function(){return{errorLoading:function(){return"Zadetkov iskanja ni bilo mogoče naložiti."},inputTooLong:function(e){var n=e.input.length-e.maximum,t="Prosim zbrišite "+n+" znak";return 2==n?t+="a":1!=n&&(t+="e"),t},inputTooShort:function(e){var n=e.minimum-e.input.length,t="Prosim vpišite še "+n+" znak";return 2==n?t+="a":1!=n&&(t+="e"),t},loadingMore:function(){return"Nalagam več zadetkov…"},maximumSelected:function(e){var n="Označite lahko največ "+e.maximum+" predmet";return 2==e.maximum?n+="a":1!=e.maximum&&(n+="e"),n},noResults:function(){return"Ni zadetkov."},searching:function(){return"Iščem…"},removeAllItems:function(){return"Odstranite vse elemente"}}}),e.define,e.require}();

3
dist/js/i18n/sq.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/sq",[],function(){return{errorLoading:function(){return"Rezultatet nuk mund të ngarkoheshin."},inputTooLong:function(e){var n=e.input.length-e.maximum,t="Të lutem fshi "+n+" karakter";return 1!=n&&(t+="e"),t},inputTooShort:function(e){return"Të lutem shkruaj "+(e.minimum-e.input.length)+" ose më shumë karaktere"},loadingMore:function(){return"Duke ngarkuar më shumë rezultate…"},maximumSelected:function(e){var n="Mund të zgjedhësh vetëm "+e.maximum+" element";return 1!=e.maximum&&(n+="e"),n},noResults:function(){return"Nuk u gjet asnjë rezultat"},searching:function(){return"Duke kërkuar…"},removeAllItems:function(){return"Hiq të gjitha sendet"}}}),e.define,e.require}();

3
dist/js/i18n/sr-Cyrl.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/sr-Cyrl",[],function(){function n(n,e,r,u){return n%10==1&&n%100!=11?e:n%10>=2&&n%10<=4&&(n%100<12||n%100>14)?r:u}return{errorLoading:function(){return"Преузимање није успело."},inputTooLong:function(e){var r=e.input.length-e.maximum,u="Обришите "+r+" симбол";return u+=n(r,"","а","а")},inputTooShort:function(e){var r=e.minimum-e.input.length,u="Укуцајте бар још "+r+" симбол";return u+=n(r,"","а","а")},loadingMore:function(){return"Преузимање још резултата…"},maximumSelected:function(e){var r="Можете изабрати само "+e.maximum+" ставк";return r+=n(e.maximum,"у","е","и")},noResults:function(){return"Ништа није пронађено"},searching:function(){return"Претрага…"},removeAllItems:function(){return"Уклоните све ставке"}}}),n.define,n.require}();

3
dist/js/i18n/sr.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/sr",[],function(){function n(n,e,r,t){return n%10==1&&n%100!=11?e:n%10>=2&&n%10<=4&&(n%100<12||n%100>14)?r:t}return{errorLoading:function(){return"Preuzimanje nije uspelo."},inputTooLong:function(e){var r=e.input.length-e.maximum,t="Obrišite "+r+" simbol";return t+=n(r,"","a","a")},inputTooShort:function(e){var r=e.minimum-e.input.length,t="Ukucajte bar još "+r+" simbol";return t+=n(r,"","a","a")},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(e){var r="Možete izabrati samo "+e.maximum+" stavk";return r+=n(e.maximum,"u","e","i")},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"},removeAllItems:function(){return"Уклоните све ставке"}}}),n.define,n.require}();

3
dist/js/i18n/sv.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/sv",[],function(){return{errorLoading:function(){return"Resultat kunde inte laddas."},inputTooLong:function(n){return"Vänligen sudda ut "+(n.input.length-n.maximum)+" tecken"},inputTooShort:function(n){return"Vänligen skriv in "+(n.minimum-n.input.length)+" eller fler tecken"},loadingMore:function(){return"Laddar fler resultat…"},maximumSelected:function(n){return"Du kan max välja "+n.maximum+" element"},noResults:function(){return"Inga träffar"},searching:function(){return"Söker…"},removeAllItems:function(){return"Ta bort alla objekt"}}}),n.define,n.require}();

3
dist/js/i18n/th.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/th",[],function(){return{errorLoading:function(){return"ไม่สามารถค้นข้อมูลได้"},inputTooLong:function(n){return"โปรดลบออก "+(n.input.length-n.maximum)+" ตัวอักษร"},inputTooShort:function(n){return"โปรดพิมพ์เพิ่มอีก "+(n.minimum-n.input.length)+" ตัวอักษร"},loadingMore:function(){return"กำลังค้นข้อมูลเพิ่ม…"},maximumSelected:function(n){return"คุณสามารถเลือกได้ไม่เกิน "+n.maximum+" รายการ"},noResults:function(){return"ไม่พบข้อมูล"},searching:function(){return"กำลังค้นข้อมูล…"},removeAllItems:function(){return"ลบรายการทั้งหมด"}}}),n.define,n.require}();

3
dist/js/i18n/tk.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/tk",[],function(){return{errorLoading:function(){return"Netije ýüklenmedi."},inputTooLong:function(e){return e.input.length-e.maximum+" harp bozuň."},inputTooShort:function(e){return"Ýene-de iň az "+(e.minimum-e.input.length)+" harp ýazyň."},loadingMore:function(){return"Köpräk netije görkezilýär…"},maximumSelected:function(e){return"Diňe "+e.maximum+" sanysyny saýlaň."},noResults:function(){return"Netije tapylmady."},searching:function(){return"Gözlenýär…"},removeAllItems:function(){return"Remove all items"}}}),e.define,e.require}();

3
dist/js/i18n/tr.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/tr",[],function(){return{errorLoading:function(){return"Sonuç yüklenemedi"},inputTooLong:function(n){return n.input.length-n.maximum+" karakter daha girmelisiniz"},inputTooShort:function(n){return"En az "+(n.minimum-n.input.length)+" karakter daha girmelisiniz"},loadingMore:function(){return"Daha fazla…"},maximumSelected:function(n){return"Sadece "+n.maximum+" seçim yapabilirsiniz"},noResults:function(){return"Sonuç bulunamadı"},searching:function(){return"Aranıyor…"},removeAllItems:function(){return"Tüm öğeleri kaldır"}}}),n.define,n.require}();

3
dist/js/i18n/uk.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/uk",[],function(){function n(n,e,u,r){return n%100>10&&n%100<15?r:n%10==1?e:n%10>1&&n%10<5?u:r}return{errorLoading:function(){return"Неможливо завантажити результати"},inputTooLong:function(e){return"Будь ласка, видаліть "+(e.input.length-e.maximum)+" "+n(e.maximum,"літеру","літери","літер")},inputTooShort:function(n){return"Будь ласка, введіть "+(n.minimum-n.input.length)+" або більше літер"},loadingMore:function(){return"Завантаження інших результатів…"},maximumSelected:function(e){return"Ви можете вибрати лише "+e.maximum+" "+n(e.maximum,"пункт","пункти","пунктів")},noResults:function(){return"Нічого не знайдено"},searching:function(){return"Пошук…"},removeAllItems:function(){return"Видалити всі елементи"}}}),n.define,n.require}();

3
dist/js/i18n/vi.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/vi",[],function(){return{inputTooLong:function(n){return"Vui lòng xóa bớt "+(n.input.length-n.maximum)+" ký tự"},inputTooShort:function(n){return"Vui lòng nhập thêm từ "+(n.minimum-n.input.length)+" ký tự trở lên"},loadingMore:function(){return"Đang lấy thêm kết quả…"},maximumSelected:function(n){return"Chỉ có thể chọn được "+n.maximum+" lựa chọn"},noResults:function(){return"Không tìm thấy kết quả"},searching:function(){return"Đang tìm…"},removeAllItems:function(){return"Xóa tất cả các mục"}}}),n.define,n.require}();

3
dist/js/i18n/zh-CN.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/zh-CN",[],function(){return{errorLoading:function(){return"无法载入结果。"},inputTooLong:function(n){return"请删除"+(n.input.length-n.maximum)+"个字符"},inputTooShort:function(n){return"请再输入至少"+(n.minimum-n.input.length)+"个字符"},loadingMore:function(){return"载入更多结果…"},maximumSelected:function(n){return"最多只能选择"+n.maximum+"个项目"},noResults:function(){return"未找到结果"},searching:function(){return"搜索中…"},removeAllItems:function(){return"删除所有项目"}}}),n.define,n.require}();

3
dist/js/i18n/zh-TW.js vendored Normal file
View file

@ -0,0 +1,3 @@
/*! Select2 4.0.12 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/zh-TW",[],function(){return{inputTooLong:function(n){return"請刪掉"+(n.input.length-n.maximum)+"個字元"},inputTooShort:function(n){return"請再輸入"+(n.minimum-n.input.length)+"個字元"},loadingMore:function(){return"載入中…"},maximumSelected:function(n){return"你只能選擇最多"+n.maximum+"項"},noResults:function(){return"沒有找到相符的項目"},searching:function(){return"搜尋中…"},removeAllItems:function(){return"刪除所有項目"}}}),n.define,n.require}();

6759
dist/js/select2.full.js vendored Normal file

File diff suppressed because it is too large Load diff

2
dist/js/select2.full.min.js vendored Normal file

File diff suppressed because one or more lines are too long

6047
dist/js/select2.js vendored Normal file

File diff suppressed because it is too large Load diff

2
dist/js/select2.min.js vendored Normal file

File diff suppressed because one or more lines are too long

395
docs/LICENSE.md Normal file
View file

@ -0,0 +1,395 @@
Attribution 4.0 International
=======================================================================
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
Creative Commons public licenses does not create a lawyer-client or
other relationship. Creative Commons makes its licenses and related
information available on an "as-is" basis. Creative Commons gives no
warranties regarding its licenses, any material licensed under their
terms and conditions, or any related information. Creative Commons
disclaims all liability for damages resulting from their use to the
fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and
conditions that creators and other rights holders may use to share
original works of authorship and other material subject to copyright
and certain other rights specified in the public license below. The
following considerations are for informational purposes only, are not
exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are
intended for use by those authorized to give the public
permission to use material in ways otherwise restricted by
copyright and certain other rights. Our licenses are
irrevocable. Licensors should read and understand the terms
and conditions of the license they choose before applying it.
Licensors should also secure all rights necessary before
applying our licenses so that the public can reuse the
material as expected. Licensors should clearly mark any
material not subject to the license. This includes other CC-
licensed material, or material used under an exception or
limitation to copyright. More considerations for licensors:
wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public
licenses, a licensor grants the public permission to use the
licensed material under specified terms and conditions. If
the licensor's permission is not necessary for any reason--for
example, because of any applicable exception or limitation to
copyright--then that use is not regulated by the license. Our
licenses grant only permissions under copyright and certain
other rights that a licensor has authority to grant. Use of
the licensed material may still be restricted for other
reasons, including because others have copyright or other
rights in the material. A licensor may make special requests,
such as asking that all changes be marked or described.
Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More_considerations
for the public:
wiki.creativecommons.org/Considerations_for_licensees
=======================================================================
Creative Commons Attribution 4.0 International Public License
By exercising the Licensed Rights (defined below), You accept and agree
to be bound by the terms and conditions of this Creative Commons
Attribution 4.0 International Public License ("Public License"). To the
extent this Public License may be interpreted as a contract, You are
granted the Licensed Rights in consideration of Your acceptance of
these terms and conditions, and the Licensor grants You such rights in
consideration of benefits the Licensor receives from making the
Licensed Material available under these terms and conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar
Rights that is derived from or based upon the Licensed Material
and in which the Licensed Material is translated, altered,
arranged, transformed, or otherwise modified in a manner requiring
permission under the Copyright and Similar Rights held by the
Licensor. For purposes of this Public License, where the Licensed
Material is a musical work, performance, or sound recording,
Adapted Material is always produced where the Licensed Material is
synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright
and Similar Rights in Your contributions to Adapted Material in
accordance with the terms and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights
closely related to copyright including, without limitation,
performance, broadcast, sound recording, and Sui Generis Database
Rights, without regard to how the rights are labeled or
categorized. For purposes of this Public License, the rights
specified in Section 2(b)(1)-(2) are not Copyright and Similar
Rights.
d. Effective Technological Measures means those measures that, in the
absence of proper authority, may not be circumvented under laws
fulfilling obligations under Article 11 of the WIPO Copyright
Treaty adopted on December 20, 1996, and/or similar international
agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or
any other exception or limitation to Copyright and Similar Rights
that applies to Your use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database,
or other material to which the Licensor applied this Public
License.
g. Licensed Rights means the rights granted to You subject to the
terms and conditions of this Public License, which are limited to
all Copyright and Similar Rights that apply to Your use of the
Licensed Material and that the Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights
under this Public License.
i. Share means to provide material to the public by any means or
process that requires permission under the Licensed Rights, such
as reproduction, public display, public performance, distribution,
dissemination, communication, or importation, and to make material
available to the public including in ways that members of the
public may access the material from a place and at a time
individually chosen by them.
j. Sui Generis Database Rights means rights other than copyright
resulting from Directive 96/9/EC of the European Parliament and of
the Council of 11 March 1996 on the legal protection of databases,
as amended and/or succeeded, as well as other essentially
equivalent rights anywhere in the world.
k. You means the individual or entity exercising the Licensed Rights
under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License,
the Licensor hereby grants You a worldwide, royalty-free,
non-sublicensable, non-exclusive, irrevocable license to
exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or
in part; and
b. produce, reproduce, and Share Adapted Material.
2. Exceptions and Limitations. For the avoidance of doubt, where
Exceptions and Limitations apply to Your use, this Public
License does not apply, and You do not need to comply with
its terms and conditions.
3. Term. The term of this Public License is specified in Section
6(a).
4. Media and formats; technical modifications allowed. The
Licensor authorizes You to exercise the Licensed Rights in
all media and formats whether now known or hereafter created,
and to make technical modifications necessary to do so. The
Licensor waives and/or agrees not to assert any right or
authority to forbid You from making technical modifications
necessary to exercise the Licensed Rights, including
technical modifications necessary to circumvent Effective
Technological Measures. For purposes of this Public License,
simply making modifications authorized by this Section 2(a)
(4) never produces Adapted Material.
5. Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every
recipient of the Licensed Material automatically
receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this
Public License.
b. No downstream restrictions. You may not offer or impose
any additional or different terms or conditions on, or
apply any Effective Technological Measures to, the
Licensed Material if doing so restricts exercise of the
Licensed Rights by any recipient of the Licensed
Material.
6. No endorsement. Nothing in this Public License constitutes or
may be construed as permission to assert or imply that You
are, or that Your use of the Licensed Material is, connected
with, or sponsored, endorsed, or granted official status by,
the Licensor or others designated to receive attribution as
provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not
licensed under this Public License, nor are publicity,
privacy, and/or other similar personality rights; however, to
the extent possible, the Licensor waives and/or agrees not to
assert any such rights held by the Licensor to the limited
extent necessary to allow You to exercise the Licensed
Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this
Public License.
3. To the extent possible, the Licensor waives any right to
collect royalties from You for the exercise of the Licensed
Rights, whether directly or through a collecting society
under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly
reserves any right to collect such royalties.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the
following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified
form), You must:
a. retain the following if it is supplied by the Licensor
with the Licensed Material:
i. identification of the creator(s) of the Licensed
Material and any others designated to receive
attribution, in any reasonable manner requested by
the Licensor (including by pseudonym if
designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of
warranties;
v. a URI or hyperlink to the Licensed Material to the
extent reasonably practicable;
b. indicate if You modified the Licensed Material and
retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this
Public License, and include the text of, or the URI or
hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any
reasonable manner based on the medium, means, and context in
which You Share the Licensed Material. For example, it may be
reasonable to satisfy the conditions by providing a URI or
hyperlink to a resource that includes the required
information.
3. If requested by the Licensor, You must remove any of the
information required by Section 3(a)(1)(A) to the extent
reasonably practicable.
4. If You Share Adapted Material You produce, the Adapter's
License You apply must not prevent recipients of the Adapted
Material from complying with this Public License.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that
apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
to extract, reuse, reproduce, and Share all or a substantial
portion of the contents of the database;
b. if You include all or a substantial portion of the database
contents in a database in which You have Sui Generis Database
Rights, then the database in which You have Sui Generis Database
Rights (but not its individual contents) is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share
all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not
replace Your obligations under this Public License where the Licensed
Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided
above shall be interpreted in a manner that, to the extent
possible, most closely approximates an absolute disclaimer and
waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and
Similar Rights licensed here. However, if You fail to comply with
this Public License, then Your rights under this Public License
terminate automatically.
b. Where Your right to use the Licensed Material has terminated under
Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided
it is cured within 30 days of Your discovery of the
violation; or
2. upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any
right the Licensor may have to seek remedies for Your violations
of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the
Licensed Material under separate terms or conditions or stop
distributing the Licensed Material at any time; however, doing so
will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different
terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the
Licensed Material not stated herein are separate from and
independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and
shall not be interpreted to, reduce, limit, restrict, or impose
conditions on any use of the Licensed Material that could lawfully
be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is
deemed unenforceable, it shall be automatically reformed to the
minimum extent necessary to make it enforceable. If the provision
cannot be reformed, it shall be severed from this Public License
without affecting the enforceability of the remaining terms and
conditions.
c. No term or condition of this Public License will be waived and no
failure to comply consented to unless expressly agreed to by the
Licensor.
d. Nothing in this Public License constitutes or may be interpreted
as a limitation upon, or waiver of, any privileges and immunities
that apply to the Licensor or You, including from the legal
processes of any jurisdiction or authority.
=======================================================================
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
will be considered the “Licensor.” The text of the Creative Commons
public licenses is dedicated to the public domain under the CC0 Public
Domain Dedication. Except for the limited purpose of indicating that
material is shared under a Creative Commons public license or as
otherwise permitted by the Creative Commons policies published at
creativecommons.org/policies, Creative Commons does not authorize the
use of the trademark "Creative Commons" or any other trademark or logo
of Creative Commons without its prior written consent including,
without limitation, in connection with any unauthorized modifications
to any of its public licenses or any other arrangements,
understandings, or agreements concerning use of licensed material. For
the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.

47
docs/README.md Normal file
View file

@ -0,0 +1,47 @@
# select2.org
https://select2.org
This is the repository for the documentation for Select2. It is built with the flat-file CMS [Grav](http://getgrav.org), using their [RTFM skeleton](https://github.com/getgrav/grav-skeleton-rtfm-site#rtfm-skeleton).
## Local installation
### Step 1 - Install Grav
This application uses the [Grav](https://learn.getgrav.org/) CMS. This repository does not contain a full Grav installation - rather, it just contains the contents of Grav's `user` directory, which is where all of our content, themes, and assets live. This was done as per the [recommendation on Grav's blog](https://getgrav.org/blog/developing-with-github-part-2), to make it easier to deploy changes to the live server.
To install this website on your computer, first [install grav core](https://getgrav.org/downloads) in a project folder called `select2-docs` under your webserver's document root folder. Then, find the `user` folder inside of your project folder. Delete the contents of the `user` folder and clone this repository directly into the user folder.
When you're done it might look something like this:
```
htdocs/
└── select2-docs/
├── assets/
├── ...
├── user/
├── .git
├── accounts/
├── assets/
├── config/
└── ...
└── ...
```
### Step 2
Grav needs your webserver to be able to write to certain directories. In OSX with XAMPP installed, this won't work by default. To deal with this:
Add default webserver user `daemon` to OSX's `staff` group (which already has the necessary permissions for writing to files/directories):
`sudo dseditgroup -o edit -a daemon -t user staff`
### Step 3
Visit the local installation in your browser! For example, http://localhost/select2-docs.
## Credits
Favicons were generated with https://realfavicongenerator.net/

0
docs/accounts/.gitkeep Normal file
View file

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

13
docs/blueprints.yaml Normal file
View file

@ -0,0 +1,13 @@
name: RTFM Site
version: 1.0.2
description: "RTFM is a sample documentation site using the `learn2` theme. This skeleton is used as the basis for the Grav official documentation: http://learn.getgrav.org"
icon: book
author:
name: Team Grav
email: devs@getgrav.org
url: http://getgrav.org
homepage: https://github.com/getgrav/grav-skeleton-rtfm-site
demo: http://demo.getgrav.org/rtfm-skeleton
keywords: rtfm, skeleton, documentation, docs
bugs: https://github.com/getgrav/grav-skeleton-rtfm-site/issues
license: MIT

View file

@ -0,0 +1 @@
selectors: '#body h2, #body h3, #body h4, #body h5'

View file

@ -0,0 +1 @@
theme: learn

View file

@ -0,0 +1,6 @@
enabled: true
built_in_css: false
route: /search
template: simplesearch_results
filters:
category: docs

10
docs/config/site.yaml Normal file
View file

@ -0,0 +1,10 @@
title: Select2 - The jQuery replacement for select boxes
metadata:
description: Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and pagination (infinite scrolling) of results.
taxonomies: [category,tag]
summary:
size: 300
redirects:
/getting-help: /troubleshooting/getting-help

35
docs/config/system.yaml Normal file
View file

@ -0,0 +1,35 @@
home:
alias: '/getting-started'
pages:
theme: site
markdown_extra: true
process:
markdown: true
twig: false
cache:
enabled: true
check:
method: file
driver: auto
prefix: 'g'
twig:
cache: true
debug: false
auto_reload: true
autoescape: false
assets:
css_pipeline: true
css_minify: true
css_rewrite: true
js_pipeline: true
js_minify: true
debugger:
enabled: false
twig: true
shutdown:
close_connection: true

0
docs/data/.gitkeep Normal file
View file

View file

@ -0,0 +1 @@
salt: dc7HfDXRG0WT48

View file

@ -0,0 +1,10 @@
assets:
css_pipeline: false
js_pipeline: false
twig:
cache: true
debug: true
debugger:
enabled: false

View file

@ -0,0 +1,50 @@
---
title: Installation
taxonomy:
category: docs
---
In order to use Select2, you must include the compiled JavaScript and CSS files on your website. There are multiple options for including these pre-compiled files, also known as a **distribution**, in your website or application.
## Using Select2 from a CDN
A CDN (content delivery network) is the fastest way to get up and running with Select2!
Select2 is hosted on both the [jsDelivr](https://www.jsdelivr.com/package/npm/select2) and [cdnjs](https://cdnjs.com/libraries/select2) CDNs. Simply include the following lines of code in the `<head>` section of your page:
```
<link href="https://cdn.jsdelivr.net/npm/select2@4.0.12/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.0.12/dist/js/select2.min.js"></script>
```
>>> <i class="fa fa-info-circle"></i> Immediately following a new release, it takes some time for CDNs to catch up and get the new versions live on the CDN.
## Installing with Bower
Select2 is available on Bower. Add the following to your `bower.json` file and then run `bower install`:
```
"dependencies": {
"select2": "~4.0"
}
```
Or, run `bower install select2` from your project directory.
The precompiled distribution files will be available in `vendor/select2/dist/css/` and `vendor/select2/dist/js/`, relative to your project directory. Include them in your page:
```
<link href="vendor/select2/dist/css/select2.min.css" rel="stylesheet" />
<script src="vendor/select2/dist/js/select2.min.js"></script>
```
## Manual installation
We strongly recommend that you use either a CDN or a package manager like Bower or npm. This will make it easier for you to deploy your project in different environments, and easily update Select2 when new versions are released. Nonetheless if you prefer to integrate Select2 into your project manually, you can [download the release of your choice](https://github.com/select2/select2/tags) from GitHub and copy the files from the `dist` directory into your project.
Include the compiled files in your page:
```
<link href="path/to/select2.min.css" rel="stylesheet" />
<script src="path/to/select2.min.js"></script>
```

View file

@ -0,0 +1,106 @@
---
title: Basic usage
taxonomy:
category: docs
process:
twig: true
never_cache_twig: true
---
## Single select boxes
Select2 was designed to be a replacement for the standard `<select>` box that is displayed by the browser. By default it supports all options and operations that are available in a standard select box, but with added flexibility.
Select2 can take a regular select box like this...
<select class="js-states form-control"></select>
and turn it into this...
<div class="s2-example">
<select class="js-example-basic-single js-states form-control"></select>
</div>
```
<select class="js-example-basic-single" name="state">
<option value="AL">Alabama</option>
...
<option value="WY">Wyoming</option>
</select>
```
<script type="text/javascript" class="js-code-example-basic-single">
$(document).ready(function() {
$('.js-example-basic-single').select2();
});
</script>
Select2 will register itself as a jQuery function if you use any of the distribution builds, so you can call `.select2()` on any jQuery selector where you would like to initialize Select2.
```
// In your Javascript (external .js resource or <script> tag)
$(document).ready(function() {
$('.js-example-basic-single').select2();
});
```
>>>>>> The DOM cannot be safely manipulated until it is "ready". To make sure that your DOM is ready before the browser initializes the Select2 control, wrap your code in a [`$(document).ready()`](https://learn.jquery.com/using-jquery-core/document-ready/) block. Only one `$(document).ready()` block is needed per page.
## Multi-select boxes (pillbox)
Select2 also supports multi-value select boxes. The select below is declared with the `multiple` attribute.
<div class="s2-example">
<p>
<select class="js-example-basic-multiple js-states form-control" multiple="multiple"></select>
</p>
</div>
**In your HTML:**
```
<select class="js-example-basic-multiple" name="states[]" multiple="multiple">
<option value="AL">Alabama</option>
...
<option value="WY">Wyoming</option>
</select>
```
**In your Javascript (external `.js` resource or `<script>` tag):**
```
$(document).ready(function() {
$('.js-example-basic-multiple').select2();
});
```
<script type="text/javascript">
$.fn.select2.amd.require([
"select2/core",
"select2/utils"
], function (Select2, Utils, oldMatcher) {
var $basicSingle = $(".js-example-basic-single");
var $basicMultiple = $(".js-example-basic-multiple");
$.fn.select2.defaults.set("width", "100%");
$basicSingle.select2();
$basicMultiple.select2();
function formatState (state) {
if (!state.id) {
return state.text;
}
var $state = $(
'<span>' +
'<img src="vendor/images/flags/' +
state.element.value.toLowerCase() +
'.png" class="img-flag" /> ' +
state.text +
'</span>'
);
return $state;
};
});
</script>

Some files were not shown because too many files have changed in this diff Show more