aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bower_components/select2/src/js/select2/dropdown/hidePlaceholder.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/bower_components/select2/src/js/select2/dropdown/hidePlaceholder.js')
-rw-r--r--public/bower_components/select2/src/js/select2/dropdown/hidePlaceholder.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/public/bower_components/select2/src/js/select2/dropdown/hidePlaceholder.js b/public/bower_components/select2/src/js/select2/dropdown/hidePlaceholder.js
new file mode 100644
index 0000000..2901f68
--- /dev/null
+++ b/public/bower_components/select2/src/js/select2/dropdown/hidePlaceholder.js
@@ -0,0 +1,42 @@
+define([
+
+], function () {
+ function HidePlaceholder (decorated, $element, options, dataAdapter) {
+ this.placeholder = this.normalizePlaceholder(options.get('placeholder'));
+
+ decorated.call(this, $element, options, dataAdapter);
+ }
+
+ HidePlaceholder.prototype.append = function (decorated, data) {
+ data.results = this.removePlaceholder(data.results);
+
+ decorated.call(this, data);
+ };
+
+ HidePlaceholder.prototype.normalizePlaceholder = function (_, placeholder) {
+ if (typeof placeholder === 'string') {
+ placeholder = {
+ id: '',
+ text: placeholder
+ };
+ }
+
+ return placeholder;
+ };
+
+ HidePlaceholder.prototype.removePlaceholder = function (_, data) {
+ var modifiedData = data.slice(0);
+
+ for (var d = data.length - 1; d >= 0; d--) {
+ var item = data[d];
+
+ if (this.placeholder.id === item.id) {
+ modifiedData.splice(d, 1);
+ }
+ }
+
+ return modifiedData;
+ };
+
+ return HidePlaceholder;
+});