@progress/kendo-angular-listbox 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +11 -0
- package/NOTICE.txt +654 -0
- package/README.md +31 -0
- package/dist/cdn/js/kendo-angular-listbox.js +20 -0
- package/dist/cdn/main.js +5 -0
- package/dist/es/constants.js +65 -0
- package/dist/es/data-binding.directive.js +145 -0
- package/dist/es/index.js +11 -0
- package/dist/es/item-selectable.directive.js +49 -0
- package/dist/es/item-template.directive.js +38 -0
- package/dist/es/listbox.component.js +196 -0
- package/dist/es/listbox.module.js +28 -0
- package/dist/es/main.js +7 -0
- package/dist/es/package-metadata.js +15 -0
- package/dist/es/selection.service.js +30 -0
- package/dist/es/size.js +4 -0
- package/dist/es/toolbar.js +4 -0
- package/dist/es/util.js +38 -0
- package/dist/es2015/constants.d.ts +25 -0
- package/dist/es2015/constants.js +65 -0
- package/dist/es2015/data-binding.directive.d.ts +36 -0
- package/dist/es2015/data-binding.directive.js +140 -0
- package/dist/es2015/index.d.ts +11 -0
- package/dist/es2015/index.js +11 -0
- package/dist/es2015/index.metadata.json +1 -0
- package/dist/es2015/item-selectable.directive.d.ts +15 -0
- package/dist/es2015/item-selectable.directive.js +44 -0
- package/dist/es2015/item-template.directive.d.ts +28 -0
- package/dist/es2015/item-template.directive.js +37 -0
- package/dist/es2015/listbox.component.d.ts +93 -0
- package/dist/es2015/listbox.component.js +216 -0
- package/dist/es2015/listbox.module.d.ts +9 -0
- package/dist/es2015/listbox.module.js +25 -0
- package/dist/es2015/main.d.ts +12 -0
- package/dist/es2015/main.js +7 -0
- package/dist/es2015/package-metadata.d.ts +9 -0
- package/dist/es2015/package-metadata.js +15 -0
- package/dist/es2015/selection.service.d.ts +21 -0
- package/dist/es2015/selection.service.js +32 -0
- package/dist/es2015/size.d.ts +13 -0
- package/dist/es2015/size.js +4 -0
- package/dist/es2015/toolbar.d.ts +42 -0
- package/dist/es2015/toolbar.js +4 -0
- package/dist/es2015/util.d.ts +31 -0
- package/dist/es2015/util.js +38 -0
- package/dist/fesm2015/index.js +565 -0
- package/dist/fesm5/index.js +557 -0
- package/dist/npm/constants.js +67 -0
- package/dist/npm/data-binding.directive.js +147 -0
- package/dist/npm/index.js +17 -0
- package/dist/npm/item-selectable.directive.js +51 -0
- package/dist/npm/item-template.directive.js +40 -0
- package/dist/npm/listbox.component.js +198 -0
- package/dist/npm/listbox.module.js +30 -0
- package/dist/npm/main.js +12 -0
- package/dist/npm/package-metadata.js +17 -0
- package/dist/npm/selection.service.js +32 -0
- package/dist/npm/size.js +6 -0
- package/dist/npm/toolbar.js +6 -0
- package/dist/npm/util.js +40 -0
- package/dist/systemjs/kendo-angular-listbox.js +5 -0
- package/package.json +153 -0
- package/schematics/collection.json +12 -0
- package/schematics/ngAdd/index.js +18 -0
- package/schematics/ngAdd/index.js.map +1 -0
- package/schematics/ngAdd/schema.json +28 -0
package/README.md
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<a href="https://www.telerik.com/kendo-angular-ui/" target="_blank">
|
|
2
|
+
<img width="631" src="https://www.telerik.com/kendo-angular-ui/npm-banner.svg">
|
|
3
|
+
</a>
|
|
4
|
+
|
|
5
|
+
## Native UI and Data Visualization Components for Angular
|
|
6
|
+
|
|
7
|
+
Kendo UI for Angular is a commercial UI library designed and built for developing business applications with Angular. Every UI component in the Kendo UI for Angular suite has been built from the ground-up specifically for Angular.
|
|
8
|
+
|
|
9
|
+
> **Important**
|
|
10
|
+
> * This package is part of the [Kendo UI for Angular](https://www.telerik.com/kendo-angular-ui/)—a commercial UI library.
|
|
11
|
+
> * You will need to install a license key when adding the package to your project. For more information, please refer to the [My License page](https://www.telerik.com/kendo-angular-ui/my-license/).
|
|
12
|
+
> * To receive a license key, you need to either [purchase a license](https://www.telerik.com/purchase/kendo-ui/) or register for a [free trial](https://www.telerik.com/download-login-v2-kendo-angular-ui). Doing so indicates that you [Kendo UI for Angular License Agreement](https://www.telerik.com/purchase/license-agreement/kendo-ui).
|
|
13
|
+
> * The 30-day free trial gives you access to all the Kendo UI for Angular components and their full functionality. Additionally, for the period of your license, you get access to our legendary technical support provided directly by the Kendo UI dev team!
|
|
14
|
+
|
|
15
|
+
## Resources
|
|
16
|
+
|
|
17
|
+
* [Get Started with Kendo UI for Angular (requires trial registration)](https://www.telerik.com/kendo-angular-ui/getting-started)
|
|
18
|
+
* [Demos, documentation, and component reference](https://www.telerik.com/kendo-angular-ui/components)
|
|
19
|
+
* [Blogs](http://www.telerik.com/blogs/kendo-ui)
|
|
20
|
+
* [Kendo UI for Angular pricing and licensing](https://www.telerik.com/purchase/kendo-ui)
|
|
21
|
+
|
|
22
|
+
## Questions and Feedback
|
|
23
|
+
|
|
24
|
+
* [Official Forums](https://www.telerik.com/forums/kendo-angular-ui)
|
|
25
|
+
* [GitHub Issues](https://github.com/telerik/kendo-angular/issues)
|
|
26
|
+
* [Feedback Portal](https://feedback.telerik.com/kendo-angular-ui)
|
|
27
|
+
* [StackOverflow](https://stackoverflow.com/questions/tagged/kendo-ui-angular2)
|
|
28
|
+
|
|
29
|
+
*Copyright © 2022 Progress Software Corporation and/or one of its subsidiaries or affiliates. All rights reserved.*
|
|
30
|
+
|
|
31
|
+
*Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries.*
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@angular/core"),require("rxjs"),require("@progress/kendo-licensing"),require("@progress/kendo-common"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-buttons"),require("@angular/common")):"function"==typeof define&&define.amd?define([,,,,,,],t):"object"==typeof exports?exports.KendoAngularListbox=t(require("@angular/core"),require("rxjs"),require("@progress/kendo-licensing"),require("@progress/kendo-common"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-buttons"),require("@angular/common")):e.KendoAngularListbox=t(e.ng.core,e.rxjs,e.KendoLicensing,e.KendoCommon,e.KendoAngularCommon,e.KendoAngularButtons,e.ng.common)}(window,(function(e,t,n,o,r,i,a){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=9)}([function(e,t,n){"use strict";n.r(t),n.d(t,"__extends",(function(){return r})),n.d(t,"__assign",(function(){return i})),n.d(t,"__rest",(function(){return a})),n.d(t,"__decorate",(function(){return s})),n.d(t,"__param",(function(){return c})),n.d(t,"__metadata",(function(){return l})),n.d(t,"__awaiter",(function(){return u})),n.d(t,"__generator",(function(){return d})),n.d(t,"__createBinding",(function(){return f})),n.d(t,"__exportStar",(function(){return p})),n.d(t,"__values",(function(){return m})),n.d(t,"__read",(function(){return b})),n.d(t,"__spread",(function(){return y})),n.d(t,"__spreadArrays",(function(){return _})),n.d(t,"__await",(function(){return h})),n.d(t,"__asyncGenerator",(function(){return v})),n.d(t,"__asyncDelegator",(function(){return g})),n.d(t,"__asyncValues",(function(){return x})),n.d(t,"__makeTemplateObject",(function(){return O})),n.d(t,"__importStar",(function(){return w})),n.d(t,"__importDefault",(function(){return S})),n.d(t,"__classPrivateFieldGet",(function(){return k})),n.d(t,"__classPrivateFieldSet",(function(){return I}));
|
|
6
|
+
/*! *****************************************************************************
|
|
7
|
+
Copyright (c) Microsoft Corporation.
|
|
8
|
+
|
|
9
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
10
|
+
purpose with or without fee is hereby granted.
|
|
11
|
+
|
|
12
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
13
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
14
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
15
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
16
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
17
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
18
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
19
|
+
***************************************************************************** */
|
|
20
|
+
var o=function(e,t){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function r(e,t){function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var i=function(){return(i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function a(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n}function s(e,t,n,o){var r,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function c(e,t){return function(n,o){t(n,o,e)}}function l(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function u(e,t,n,o){return new(n||(n=Promise))((function(r,i){function a(e){try{c(o.next(e))}catch(e){i(e)}}function s(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((o=o.apply(e,t||[])).next())}))}function d(e,t){var n,o,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,o&&(r=2&i[0]?o.return:i[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,i[1])).done)return r;switch(o=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,o=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(r=a.trys,(r=r.length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){a.label=i[1];break}if(6===i[0]&&a.label<r[1]){a.label=r[1],r=i;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(i);break}r[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],o=0}finally{n=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}function f(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}function p(e,t){for(var n in e)"default"===n||t.hasOwnProperty(n)||(t[n]=e[n])}function m(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function b(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(b(arguments[t]));return e}function _(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var o=Array(e),r=0;for(t=0;t<n;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,r++)o[r]=i[a];return o}function h(e){return this instanceof h?(this.v=e,this):new h(e)}function v(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=n.apply(e,t||[]),i=[];return o={},a("next"),a("throw"),a("return"),o[Symbol.asyncIterator]=function(){return this},o;function a(e){r[e]&&(o[e]=function(t){return new Promise((function(n,o){i.push([e,t,n,o])>1||s(e,t)}))})}function s(e,t){try{(n=r[e](t)).value instanceof h?Promise.resolve(n.value.v).then(c,l):u(i[0][2],n)}catch(e){u(i[0][3],e)}var n}function c(e){s("next",e)}function l(e){s("throw",e)}function u(e,t){e(t),i.shift(),i.length&&s(i[0][0],i[0][1])}}function g(e){var t,n;return t={},o("next"),o("throw",(function(e){throw e})),o("return"),t[Symbol.iterator]=function(){return this},t;function o(o,r){t[o]=e[o]?function(t){return(n=!n)?{value:h(e[o](t)),done:"return"===o}:r?r(t):t}:r}}function x(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=m(e),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(n){t[n]=e[n]&&function(t){return new Promise((function(o,r){(function(e,t,n,o){Promise.resolve(o).then((function(t){e({value:t,done:n})}),t)})(o,r,(t=e[n](t)).done,t.value)}))}}}function O(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function w(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function S(e){return e&&e.__esModule?e:{default:e}}function k(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function I(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}},function(t,n){t.exports=e},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),r=n(1),i=n(10),a=n(3),s=n(11),c=n(4),l=n(5),u=n(6),d=n(7),f=function(){function e(e,t,n){var o=this;this.selectionService=e,this.renderer=t,this.hostElement=n,this.listboxClassName=!0,this.data=[],this.size="medium",this.itemDisabled=u.defaultItemDisabled,this.selectionChange=new r.EventEmitter,this.actionClick=new r.EventEmitter,this.selectedTools=d.allTools,this.sub=new a.Subscription,i.validatePackage(s.packageMetadata),this.setToolbarClass(d.DEFAULT_TOOLBAR_POSITION),this.sub.add(this.selectionService.onSelect.subscribe((function(e){o.selectionChange.next(e)})))}return Object.defineProperty(e.prototype,"toolbar",{set:function(e){var t=d.DEFAULT_TOOLBAR_POSITION;"boolean"==typeof e?this.selectedTools=e?d.allTools:[]:(this.selectedTools=e.tools?u.getTools(e.tools):d.allTools,e.position&&(t=e.position)),this.setToolbarClass(t)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"listClasses",{get:function(){return"k-list k-list-"+d.sizeClassMap[this.size]},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this.sub.unsubscribe()},e.prototype.performAction=function(e){this.actionClick.next(e)},e.prototype.selectItem=function(e){this.selectionService.selectedIndex=e},e.prototype.clearSelection=function(){this.selectionService.clearSelection()},Object.defineProperty(e.prototype,"selectedIndex",{get:function(){return this.selectionService.selectedIndex},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if("string"!=typeof e&&!this.textField&&r.isDevMode())throw new Error("Missing textField input. When passing an array of objects as data, please set the textField input of the ListBox accordingly.");return u.fieldAccessor(e,this.textField)},e.prototype.setToolbarClass=function(e){var t=this;Object.keys(d.toolbarClasses).forEach((function(n){e===n?t.renderer.addClass(t.hostElement.nativeElement,d.toolbarClasses[n]):t.renderer.removeClass(t.hostElement.nativeElement,d.toolbarClasses[n])}))},o.__decorate([r.HostBinding("class.k-listbox"),o.__metadata("design:type",Boolean)],e.prototype,"listboxClassName",void 0),o.__decorate([r.ContentChild(l.ItemTemplateDirective,{static:!1}),o.__metadata("design:type",l.ItemTemplateDirective)],e.prototype,"itemTemplate",void 0),o.__decorate([r.Input(),o.__metadata("design:type",String)],e.prototype,"textField",void 0),o.__decorate([r.Input(),o.__metadata("design:type",Array)],e.prototype,"data",void 0),o.__decorate([r.Input(),o.__metadata("design:type",String)],e.prototype,"size",void 0),o.__decorate([r.Input(),o.__metadata("design:type",Object),o.__metadata("design:paramtypes",[Object])],e.prototype,"toolbar",null),o.__decorate([r.Input(),o.__metadata("design:type",Function)],e.prototype,"itemDisabled",void 0),o.__decorate([r.Output(),o.__metadata("design:type",r.EventEmitter)],e.prototype,"selectionChange",void 0),o.__decorate([r.Output(),o.__metadata("design:type",r.EventEmitter)],e.prototype,"actionClick",void 0),e=o.__decorate([r.Component({selector:"kendo-listbox",providers:[c.ListBoxSelectionService],template:'\n <div class="k-listbox-toolbar" *ngIf="selectedTools.length > 0">\n <ul class="k-reset">\n <li *ngFor="let tool of selectedTools">\n <button kendoButton [icon]="tool.icon" (click)="performAction(tool.name)"></button>\n </li>\n\n \x3c!-- react moving items has a smoother removal of the style: https://www.telerik.com/kendo-react-ui/components/listbox/ --\x3e\n </ul>\n </div>\n <div class="k-list-scroller k-selectable">\n <div class="{{ listClasses }}">\n <div class="k-list-content">\n <ul class="k-list-ul">\n <li\n class="k-list-item"\n *ngFor="let item of data; let i = index;"\n kendoListBoxItemSelectable\n [index]="i"\n [class.k-disabled]="itemDisabled(item)"\n >\n <ng-template *ngIf="itemTemplate; else defaultItemTemplate"\n [templateContext]="{\n templateRef: itemTemplate.templateRef,\n $implicit: item\n }">\n </ng-template>\n <ng-template #defaultItemTemplate>\n <span class="k-list-item-text">{{ getText(item) }}</span>\n </ng-template>\n </li>\n </ul>\n </div>\n </div>\n </div>\n '}),o.__metadata("design:paramtypes",[c.ListBoxSelectionService,r.Renderer2,r.ElementRef])],e)}();t.ListBoxComponent=f},function(e,n){e.exports=t},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),r=n(1),i=function(){function e(){this.onSelect=new r.EventEmitter,this.selectedIndex=null}return e.prototype.select=function(e){this.selectedIndex=e,this.onSelect.next({index:this.selectedIndex})},e.prototype.isSelected=function(e){return e===this.selectedIndex},e.prototype.clearSelection=function(){this.selectedIndex=null},e=o.__decorate([r.Injectable()],e)}();t.ListBoxSelectionService=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),r=n(1),i=function(){function e(e){this.templateRef=e}return e=o.__decorate([r.Directive({selector:"[kendoListBoxItemTemplate]"}),o.__metadata("design:paramtypes",[r.TemplateRef])],e)}();t.ItemTemplateDirective=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(12),r=n(7);t.isPresent=function(e){return null!=e},t.isObject=function(e){return t.isPresent(e)&&"object"==typeof e},t.fieldAccessor=function(e,n){return t.isPresent(e)?t.isPresent(n)&&t.isObject(e)?o.getter(n)(e):e:null},t.defaultItemDisabled=function(){return!1},t.getTools=function(e){return e.map((function(e){return r.allTools.find((function(t){return t.name===e}))}))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_TOOLBAR_POSITION="right",t.allTools=[{name:"moveUp",label:"Move Up",icon:"arrow-n"},{name:"moveDown",label:"Move Down",icon:"arrow-s"},{name:"transferTo",label:"Transfer From",icon:"arrow-w"},{name:"transferFrom",label:"Transfer To",icon:"arrow-e"},{name:"transferAllTo",label:"Transfer All To",icon:"arrow-double-60-right"},{name:"transferAllFrom",label:"Transfer All From",icon:"arrow-double-60-left"},{name:"remove",label:"Remove",icon:"x"}],t.sizeClassMap={small:"sm",medium:"md",large:"lg"},t.toolbarClasses={left:"k-listbox-toolbar-left",right:"k-listbox-toolbar-right",top:"k-listbox-toolbar-top",bottom:"k-listbox-toolbar-bottom"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),r=n(1),i=n(13),a=n(3),s=n(2),c=n(6),l=function(){function e(e){var t=this;this.listbox=e,this.data=[],this.sub=new a.Subscription,this.selectedBox=this.listbox,this.sub.add(this.listbox.actionClick.subscribe((function(e){switch(e){case"moveUp":t.moveVertically("up");break;case"moveDown":t.moveVertically("down");break;case"transferTo":t.transferItem(t.connectedWith,t.listbox);break;case"transferFrom":t.transferItem(t.listbox,t.connectedWith);break;case"transferAllTo":t.transferAll(t.listbox,t.connectedWith);break;case"transferAllFrom":t.transferAll(t.connectedWith,t.listbox);break;case"remove":t.removeItem()}})))}return e.prototype.ngOnChanges=function(e){var t=this;i.isChanged("connectedWith",e,!1)&&(this.sub.add(this.listbox.selectionChange.subscribe((function(){t.selectedBox=t.listbox,t.connectedWith.clearSelection()}))),this.sub.add(this.connectedWith.selectionChange.subscribe((function(){t.selectedBox=t.connectedWith,t.listbox.clearSelection()})))),i.isChanged("data",e,!0)&&(this.listbox.data=e.data.currentValue)},e.prototype.ngOnDestroy=function(){this.sub.unsubscribe()},e.prototype.moveVertically=function(e){var t,n=this.selectedBox.selectedIndex;if(c.isPresent(n)){var o="up"===e&&n<=0,r="down"===e&&n>=this.selectedBox.data.length-1;if(!o&&!r){var i="up"===e?n-1:n+1;t=[this.selectedBox.data[n],this.selectedBox.data[i]],this.selectedBox.data[i]=t[0],this.selectedBox.data[n]=t[1],this.selectedBox.selectionService.select(i)}}},e.prototype.removeItem=function(){var e=this.selectedBox.selectedIndex;c.isPresent(e)&&(this.selectedBox.data.splice(e,1),this.selectedBox.selectionService.clearSelection())},e.prototype.transferItem=function(e,t){var n=e&&e.data[e.selectedIndex];n&&t&&e&&(t.data.push(n),e.data.splice(e.selectedIndex,1),e.clearSelection(),t.selectItem(t.data.length-1),this.selectedBox=t)},e.prototype.transferAll=function(e,t){var n;t&&e&&((n=t.data).splice.apply(n,[t.data.length,0].concat(e.data.splice(0,e.data.length))),t.selectItem(t.data.length-1),this.selectedBox=t)},o.__decorate([r.Input("kendoListBoxDataBinding"),o.__metadata("design:type",Array)],e.prototype,"data",void 0),o.__decorate([r.Input(),o.__metadata("design:type",s.ListBoxComponent)],e.prototype,"connectedWith",void 0),e=o.__decorate([r.Directive({selector:"[kendoListBoxDataBinding]"}),o.__metadata("design:paramtypes",[s.ListBoxComponent])],e)}();t.DataBindingDirective=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(2);t.ListBoxComponent=o.ListBoxComponent;var r=n(8);t.DataBindingDirective=r.DataBindingDirective;var i=n(14);t.ListBoxModule=i.ListBoxModule},function(e,t){e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.packageMetadata={name:"@progress/kendo-angular-listbox",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1649835747,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"}},function(e,t){e.exports=o},function(e,t){e.exports=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),r=n(1),i=n(2),a=n(15),s=n(16),c=n(5),l=n(17),u=n(8),d=function(){function e(){}return e=o.__decorate([r.NgModule({imports:[a.ButtonsModule,s.CommonModule],declarations:[i.ListBoxComponent,c.ItemTemplateDirective,l.ItemSelectableDirective,u.DataBindingDirective],exports:[i.ListBoxComponent,c.ItemTemplateDirective,l.ItemSelectableDirective,u.DataBindingDirective]})],e)}();t.ListBoxModule=d},function(e,t){e.exports=i},function(e,t){e.exports=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(0),r=n(1),i=n(4),a=function(){function e(e){this.selectionService=e}return Object.defineProperty(e.prototype,"selectedClassName",{get:function(){return this.selectionService.isSelected(this.index)},enumerable:!0,configurable:!0}),e.prototype.onClick=function(e){e.stopPropagation(),this.selectionService.select(this.index)},o.__decorate([r.Input(),o.__metadata("design:type",Number)],e.prototype,"index",void 0),o.__decorate([r.HostBinding("class.k-selected"),o.__metadata("design:type",Boolean),o.__metadata("design:paramtypes",[])],e.prototype,"selectedClassName",null),o.__decorate([r.HostListener("click",["$event"]),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object]),o.__metadata("design:returntype",void 0)],e.prototype,"onClick",null),e=o.__decorate([r.Directive({selector:"[kendoListBoxItemSelectable]"}),o.__metadata("design:paramtypes",[i.ListBoxSelectionService])],e)}();t.ItemSelectableDirective=a}])}));
|
package/dist/cdn/main.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("tslib"),require("@angular/core"),require("rxjs"),require("@progress/kendo-licensing"),require("@progress/kendo-common"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-buttons"),require("@angular/common")):"function"==typeof define&&define.amd?define([,,,,,,,],t):"object"==typeof exports?exports.KendoAngularListbox=t(require("tslib"),require("@angular/core"),require("rxjs"),require("@progress/kendo-licensing"),require("@progress/kendo-common"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-buttons"),require("@angular/common")):e.KendoAngularListbox=t(e.self,e.ng.core,e.rxjs,e.KendoLicensing,e.KendoCommon,e.KendoAngularCommon,e.KendoAngularButtons,e.ng.common)}(window,(function(e,t,o,n,i,r,s,a){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)o.d(n,i,function(t){return e[t]}.bind(null,i));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=9)}([function(t,o){t.exports=e},function(e,o){e.exports=t},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),i=o(1),r=o(10),s=o(3),a=o(11),l=o(4),c=o(5),d=o(6),u=o(7),p=function(){function e(e,t,o){var n=this;this.selectionService=e,this.renderer=t,this.hostElement=o,this.listboxClassName=!0,this.data=[],this.size="medium",this.itemDisabled=d.defaultItemDisabled,this.selectionChange=new i.EventEmitter,this.actionClick=new i.EventEmitter,this.selectedTools=u.allTools,this.sub=new s.Subscription,r.validatePackage(a.packageMetadata),this.setToolbarClass(u.DEFAULT_TOOLBAR_POSITION),this.sub.add(this.selectionService.onSelect.subscribe((function(e){n.selectionChange.next(e)})))}return Object.defineProperty(e.prototype,"toolbar",{set:function(e){var t=u.DEFAULT_TOOLBAR_POSITION;"boolean"==typeof e?this.selectedTools=e?u.allTools:[]:(this.selectedTools=e.tools?d.getTools(e.tools):u.allTools,e.position&&(t=e.position)),this.setToolbarClass(t)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"listClasses",{get:function(){return"k-list k-list-"+u.sizeClassMap[this.size]},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this.sub.unsubscribe()},e.prototype.performAction=function(e){this.actionClick.next(e)},e.prototype.selectItem=function(e){this.selectionService.selectedIndex=e},e.prototype.clearSelection=function(){this.selectionService.clearSelection()},Object.defineProperty(e.prototype,"selectedIndex",{get:function(){return this.selectionService.selectedIndex},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if("string"!=typeof e&&!this.textField&&i.isDevMode())throw new Error("Missing textField input. When passing an array of objects as data, please set the textField input of the ListBox accordingly.");return d.fieldAccessor(e,this.textField)},e.prototype.setToolbarClass=function(e){var t=this;Object.keys(u.toolbarClasses).forEach((function(o){e===o?t.renderer.addClass(t.hostElement.nativeElement,u.toolbarClasses[o]):t.renderer.removeClass(t.hostElement.nativeElement,u.toolbarClasses[o])}))},n.__decorate([i.HostBinding("class.k-listbox"),n.__metadata("design:type",Boolean)],e.prototype,"listboxClassName",void 0),n.__decorate([i.ContentChild(c.ItemTemplateDirective,{static:!1}),n.__metadata("design:type",c.ItemTemplateDirective)],e.prototype,"itemTemplate",void 0),n.__decorate([i.Input(),n.__metadata("design:type",String)],e.prototype,"textField",void 0),n.__decorate([i.Input(),n.__metadata("design:type",Array)],e.prototype,"data",void 0),n.__decorate([i.Input(),n.__metadata("design:type",String)],e.prototype,"size",void 0),n.__decorate([i.Input(),n.__metadata("design:type",Object),n.__metadata("design:paramtypes",[Object])],e.prototype,"toolbar",null),n.__decorate([i.Input(),n.__metadata("design:type",Function)],e.prototype,"itemDisabled",void 0),n.__decorate([i.Output(),n.__metadata("design:type",i.EventEmitter)],e.prototype,"selectionChange",void 0),n.__decorate([i.Output(),n.__metadata("design:type",i.EventEmitter)],e.prototype,"actionClick",void 0),e=n.__decorate([i.Component({selector:"kendo-listbox",providers:[l.ListBoxSelectionService],template:'\n <div class="k-listbox-toolbar" *ngIf="selectedTools.length > 0">\n <ul class="k-reset">\n <li *ngFor="let tool of selectedTools">\n <button kendoButton [icon]="tool.icon" (click)="performAction(tool.name)"></button>\n </li>\n\n \x3c!-- react moving items has a smoother removal of the style: https://www.telerik.com/kendo-react-ui/components/listbox/ --\x3e\n </ul>\n </div>\n <div class="k-list-scroller k-selectable">\n <div class="{{ listClasses }}">\n <div class="k-list-content">\n <ul class="k-list-ul">\n <li\n class="k-list-item"\n *ngFor="let item of data; let i = index;"\n kendoListBoxItemSelectable\n [index]="i"\n [class.k-disabled]="itemDisabled(item)"\n >\n <ng-template *ngIf="itemTemplate; else defaultItemTemplate"\n [templateContext]="{\n templateRef: itemTemplate.templateRef,\n $implicit: item\n }">\n </ng-template>\n <ng-template #defaultItemTemplate>\n <span class="k-list-item-text">{{ getText(item) }}</span>\n </ng-template>\n </li>\n </ul>\n </div>\n </div>\n </div>\n '}),n.__metadata("design:paramtypes",[l.ListBoxSelectionService,i.Renderer2,i.ElementRef])],e)}();t.ListBoxComponent=p},function(e,t){e.exports=o},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),i=o(1),r=function(){function e(){this.onSelect=new i.EventEmitter,this.selectedIndex=null}return e.prototype.select=function(e){this.selectedIndex=e,this.onSelect.next({index:this.selectedIndex})},e.prototype.isSelected=function(e){return e===this.selectedIndex},e.prototype.clearSelection=function(){this.selectedIndex=null},e=n.__decorate([i.Injectable()],e)}();t.ListBoxSelectionService=r},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),i=o(1),r=function(){function e(e){this.templateRef=e}return e=n.__decorate([i.Directive({selector:"[kendoListBoxItemTemplate]"}),n.__metadata("design:paramtypes",[i.TemplateRef])],e)}();t.ItemTemplateDirective=r},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(12),i=o(7);t.isPresent=function(e){return null!=e},t.isObject=function(e){return t.isPresent(e)&&"object"==typeof e},t.fieldAccessor=function(e,o){return t.isPresent(e)?t.isPresent(o)&&t.isObject(e)?n.getter(o)(e):e:null},t.defaultItemDisabled=function(){return!1},t.getTools=function(e){return e.map((function(e){return i.allTools.find((function(t){return t.name===e}))}))}},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_TOOLBAR_POSITION="right",t.allTools=[{name:"moveUp",label:"Move Up",icon:"arrow-n"},{name:"moveDown",label:"Move Down",icon:"arrow-s"},{name:"transferTo",label:"Transfer From",icon:"arrow-w"},{name:"transferFrom",label:"Transfer To",icon:"arrow-e"},{name:"transferAllTo",label:"Transfer All To",icon:"arrow-double-60-right"},{name:"transferAllFrom",label:"Transfer All From",icon:"arrow-double-60-left"},{name:"remove",label:"Remove",icon:"x"}],t.sizeClassMap={small:"sm",medium:"md",large:"lg"},t.toolbarClasses={left:"k-listbox-toolbar-left",right:"k-listbox-toolbar-right",top:"k-listbox-toolbar-top",bottom:"k-listbox-toolbar-bottom"}},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),i=o(1),r=o(13),s=o(3),a=o(2),l=o(6),c=function(){function e(e){var t=this;this.listbox=e,this.data=[],this.sub=new s.Subscription,this.selectedBox=this.listbox,this.sub.add(this.listbox.actionClick.subscribe((function(e){switch(e){case"moveUp":t.moveVertically("up");break;case"moveDown":t.moveVertically("down");break;case"transferTo":t.transferItem(t.connectedWith,t.listbox);break;case"transferFrom":t.transferItem(t.listbox,t.connectedWith);break;case"transferAllTo":t.transferAll(t.listbox,t.connectedWith);break;case"transferAllFrom":t.transferAll(t.connectedWith,t.listbox);break;case"remove":t.removeItem()}})))}return e.prototype.ngOnChanges=function(e){var t=this;r.isChanged("connectedWith",e,!1)&&(this.sub.add(this.listbox.selectionChange.subscribe((function(){t.selectedBox=t.listbox,t.connectedWith.clearSelection()}))),this.sub.add(this.connectedWith.selectionChange.subscribe((function(){t.selectedBox=t.connectedWith,t.listbox.clearSelection()})))),r.isChanged("data",e,!0)&&(this.listbox.data=e.data.currentValue)},e.prototype.ngOnDestroy=function(){this.sub.unsubscribe()},e.prototype.moveVertically=function(e){var t,o=this.selectedBox.selectedIndex;if(l.isPresent(o)){var n="up"===e&&o<=0,i="down"===e&&o>=this.selectedBox.data.length-1;if(!n&&!i){var r="up"===e?o-1:o+1;t=[this.selectedBox.data[o],this.selectedBox.data[r]],this.selectedBox.data[r]=t[0],this.selectedBox.data[o]=t[1],this.selectedBox.selectionService.select(r)}}},e.prototype.removeItem=function(){var e=this.selectedBox.selectedIndex;l.isPresent(e)&&(this.selectedBox.data.splice(e,1),this.selectedBox.selectionService.clearSelection())},e.prototype.transferItem=function(e,t){var o=e&&e.data[e.selectedIndex];o&&t&&e&&(t.data.push(o),e.data.splice(e.selectedIndex,1),e.clearSelection(),t.selectItem(t.data.length-1),this.selectedBox=t)},e.prototype.transferAll=function(e,t){var o;t&&e&&((o=t.data).splice.apply(o,[t.data.length,0].concat(e.data.splice(0,e.data.length))),t.selectItem(t.data.length-1),this.selectedBox=t)},n.__decorate([i.Input("kendoListBoxDataBinding"),n.__metadata("design:type",Array)],e.prototype,"data",void 0),n.__decorate([i.Input(),n.__metadata("design:type",a.ListBoxComponent)],e.prototype,"connectedWith",void 0),e=n.__decorate([i.Directive({selector:"[kendoListBoxDataBinding]"}),n.__metadata("design:paramtypes",[a.ListBoxComponent])],e)}();t.DataBindingDirective=c},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(2);t.ListBoxComponent=n.ListBoxComponent;var i=o(8);t.DataBindingDirective=i.DataBindingDirective;var r=o(14);t.ListBoxModule=r.ListBoxModule},function(e,t){e.exports=n},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.packageMetadata={name:"@progress/kendo-angular-listbox",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1649835747,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"}},function(e,t){e.exports=i},function(e,t){e.exports=r},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),i=o(1),r=o(2),s=o(15),a=o(16),l=o(5),c=o(17),d=o(8),u=function(){function e(){}return e=n.__decorate([i.NgModule({imports:[s.ButtonsModule,a.CommonModule],declarations:[r.ListBoxComponent,l.ItemTemplateDirective,c.ItemSelectableDirective,d.DataBindingDirective],exports:[r.ListBoxComponent,l.ItemTemplateDirective,c.ItemSelectableDirective,d.DataBindingDirective]})],e)}();t.ListBoxModule=u},function(e,t){e.exports=s},function(e,t){e.exports=a},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),i=o(1),r=o(4),s=function(){function e(e){this.selectionService=e}return Object.defineProperty(e.prototype,"selectedClassName",{get:function(){return this.selectionService.isSelected(this.index)},enumerable:!0,configurable:!0}),e.prototype.onClick=function(e){e.stopPropagation(),this.selectionService.select(this.index)},n.__decorate([i.Input(),n.__metadata("design:type",Number)],e.prototype,"index",void 0),n.__decorate([i.HostBinding("class.k-selected"),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[])],e.prototype,"selectedClassName",null),n.__decorate([i.HostListener("click",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Object]),n.__metadata("design:returntype",void 0)],e.prototype,"onClick",null),e=n.__decorate([i.Directive({selector:"[kendoListBoxItemSelectable]"}),n.__metadata("design:paramtypes",[r.ListBoxSelectionService])],e)}();t.ItemSelectableDirective=s}])}));
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export var DEFAULT_TOOLBAR_POSITION = 'right';
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export var allTools = [
|
|
13
|
+
{
|
|
14
|
+
name: 'moveUp',
|
|
15
|
+
label: 'Move Up',
|
|
16
|
+
icon: 'arrow-n'
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
name: 'moveDown',
|
|
20
|
+
label: 'Move Down',
|
|
21
|
+
icon: 'arrow-s'
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'transferTo',
|
|
25
|
+
label: 'Transfer From',
|
|
26
|
+
icon: 'arrow-w'
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
name: 'transferFrom',
|
|
30
|
+
label: 'Transfer To',
|
|
31
|
+
icon: 'arrow-e'
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'transferAllTo',
|
|
35
|
+
label: 'Transfer All To',
|
|
36
|
+
icon: 'arrow-double-60-right'
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'transferAllFrom',
|
|
40
|
+
label: 'Transfer All From',
|
|
41
|
+
icon: 'arrow-double-60-left'
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'remove',
|
|
45
|
+
label: 'Remove',
|
|
46
|
+
icon: 'x'
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
/**
|
|
50
|
+
* @hidden
|
|
51
|
+
*/
|
|
52
|
+
export var sizeClassMap = {
|
|
53
|
+
small: 'sm',
|
|
54
|
+
medium: 'md',
|
|
55
|
+
large: 'lg'
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* @hidden
|
|
59
|
+
*/
|
|
60
|
+
export var toolbarClasses = {
|
|
61
|
+
left: 'k-listbox-toolbar-left',
|
|
62
|
+
right: 'k-listbox-toolbar-right',
|
|
63
|
+
top: 'k-listbox-toolbar-top',
|
|
64
|
+
bottom: 'k-listbox-toolbar-bottom'
|
|
65
|
+
};
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Directive, Input } from '@angular/core';
|
|
7
|
+
import { isChanged } from '@progress/kendo-angular-common';
|
|
8
|
+
import { Subscription } from 'rxjs';
|
|
9
|
+
import { ListBoxComponent } from './listbox.component';
|
|
10
|
+
import { isPresent } from './util';
|
|
11
|
+
/**
|
|
12
|
+
* A directive which manages the functoinality of the ListBox tools out of the box, and modifies the provided data accordingly.
|
|
13
|
+
*/
|
|
14
|
+
var DataBindingDirective = /** @class */ (function () {
|
|
15
|
+
function DataBindingDirective(listbox) {
|
|
16
|
+
var _this = this;
|
|
17
|
+
this.listbox = listbox;
|
|
18
|
+
/**
|
|
19
|
+
* @hidden
|
|
20
|
+
*/
|
|
21
|
+
this.data = [];
|
|
22
|
+
this.sub = new Subscription();
|
|
23
|
+
this.selectedBox = this.listbox;
|
|
24
|
+
this.sub.add(this.listbox.actionClick.subscribe(function (actionName) {
|
|
25
|
+
switch (actionName) {
|
|
26
|
+
case 'moveUp': {
|
|
27
|
+
_this.moveVertically('up');
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
case 'moveDown': {
|
|
31
|
+
_this.moveVertically('down');
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
case 'transferTo': {
|
|
35
|
+
_this.transferItem(_this.connectedWith, _this.listbox);
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
case 'transferFrom': {
|
|
39
|
+
_this.transferItem(_this.listbox, _this.connectedWith);
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
case 'transferAllTo': {
|
|
43
|
+
_this.transferAll(_this.listbox, _this.connectedWith);
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
case 'transferAllFrom': {
|
|
47
|
+
_this.transferAll(_this.connectedWith, _this.listbox);
|
|
48
|
+
break;
|
|
49
|
+
}
|
|
50
|
+
case 'remove': {
|
|
51
|
+
_this.removeItem();
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
default: {
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}));
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* @hidden
|
|
62
|
+
*/
|
|
63
|
+
DataBindingDirective.prototype.ngOnChanges = function (changes) {
|
|
64
|
+
var _this = this;
|
|
65
|
+
if (isChanged('connectedWith', changes, false)) {
|
|
66
|
+
this.sub.add(this.listbox.selectionChange.subscribe(function () {
|
|
67
|
+
_this.selectedBox = _this.listbox;
|
|
68
|
+
_this.connectedWith.clearSelection();
|
|
69
|
+
}));
|
|
70
|
+
this.sub.add(this.connectedWith.selectionChange.subscribe(function () {
|
|
71
|
+
_this.selectedBox = _this.connectedWith;
|
|
72
|
+
_this.listbox.clearSelection();
|
|
73
|
+
}));
|
|
74
|
+
}
|
|
75
|
+
if (isChanged('data', changes, true)) {
|
|
76
|
+
this.listbox.data = changes.data.currentValue;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* @hidden
|
|
81
|
+
*/
|
|
82
|
+
DataBindingDirective.prototype.ngOnDestroy = function () {
|
|
83
|
+
this.sub.unsubscribe();
|
|
84
|
+
};
|
|
85
|
+
DataBindingDirective.prototype.moveVertically = function (dir) {
|
|
86
|
+
var _a;
|
|
87
|
+
var index = this.selectedBox.selectedIndex;
|
|
88
|
+
if (!isPresent(index)) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
var topReached = dir === 'up' && index <= 0;
|
|
92
|
+
var bottomReached = dir === 'down' && index >= this.selectedBox.data.length - 1;
|
|
93
|
+
if (topReached || bottomReached) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
var newIndex = dir === 'up' ? index - 1 : index + 1;
|
|
97
|
+
// ES6 Destructuring swap
|
|
98
|
+
_a = [this.selectedBox.data[index], this.selectedBox.data[newIndex]], this.selectedBox.data[newIndex] = _a[0], this.selectedBox.data[index] = _a[1];
|
|
99
|
+
this.selectedBox.selectionService.select(newIndex);
|
|
100
|
+
};
|
|
101
|
+
DataBindingDirective.prototype.removeItem = function () {
|
|
102
|
+
var index = this.selectedBox.selectedIndex;
|
|
103
|
+
if (!isPresent(index)) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
this.selectedBox.data.splice(index, 1);
|
|
107
|
+
this.selectedBox.selectionService.clearSelection();
|
|
108
|
+
};
|
|
109
|
+
DataBindingDirective.prototype.transferItem = function (source, target) {
|
|
110
|
+
var item = source && source.data[source.selectedIndex];
|
|
111
|
+
if (!item || !target || !source) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
target.data.push(item);
|
|
115
|
+
source.data.splice(source.selectedIndex, 1);
|
|
116
|
+
source.clearSelection();
|
|
117
|
+
target.selectItem(target.data.length - 1);
|
|
118
|
+
this.selectedBox = target;
|
|
119
|
+
};
|
|
120
|
+
DataBindingDirective.prototype.transferAll = function (source, target) {
|
|
121
|
+
var _a;
|
|
122
|
+
if (!target || !source) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
(_a = target.data).splice.apply(_a, [target.data.length, 0].concat(source.data.splice(0, source.data.length)));
|
|
126
|
+
target.selectItem(target.data.length - 1);
|
|
127
|
+
this.selectedBox = target;
|
|
128
|
+
};
|
|
129
|
+
tslib_1.__decorate([
|
|
130
|
+
Input('kendoListBoxDataBinding'),
|
|
131
|
+
tslib_1.__metadata("design:type", Array)
|
|
132
|
+
], DataBindingDirective.prototype, "data", void 0);
|
|
133
|
+
tslib_1.__decorate([
|
|
134
|
+
Input(),
|
|
135
|
+
tslib_1.__metadata("design:type", ListBoxComponent)
|
|
136
|
+
], DataBindingDirective.prototype, "connectedWith", void 0);
|
|
137
|
+
DataBindingDirective = tslib_1.__decorate([
|
|
138
|
+
Directive({
|
|
139
|
+
selector: '[kendoListBoxDataBinding]'
|
|
140
|
+
}),
|
|
141
|
+
tslib_1.__metadata("design:paramtypes", [ListBoxComponent])
|
|
142
|
+
], DataBindingDirective);
|
|
143
|
+
return DataBindingDirective;
|
|
144
|
+
}());
|
|
145
|
+
export { DataBindingDirective };
|
package/dist/es/index.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* Generated bundle index. Do not edit.
|
|
7
|
+
*/
|
|
8
|
+
export * from './main';
|
|
9
|
+
export { ItemSelectableDirective } from './item-selectable.directive';
|
|
10
|
+
export { ItemTemplateDirective } from './item-template.directive';
|
|
11
|
+
export { ListBoxSelectionService } from './selection.service';
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Directive, Input, HostBinding, HostListener } from '@angular/core';
|
|
7
|
+
import { ListBoxSelectionService } from './selection.service';
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
*/
|
|
11
|
+
var ItemSelectableDirective = /** @class */ (function () {
|
|
12
|
+
function ItemSelectableDirective(selectionService) {
|
|
13
|
+
this.selectionService = selectionService;
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(ItemSelectableDirective.prototype, "selectedClassName", {
|
|
16
|
+
get: function () {
|
|
17
|
+
return this.selectionService.isSelected(this.index);
|
|
18
|
+
},
|
|
19
|
+
enumerable: true,
|
|
20
|
+
configurable: true
|
|
21
|
+
});
|
|
22
|
+
ItemSelectableDirective.prototype.onClick = function (event) {
|
|
23
|
+
event.stopPropagation();
|
|
24
|
+
this.selectionService.select(this.index);
|
|
25
|
+
};
|
|
26
|
+
tslib_1.__decorate([
|
|
27
|
+
Input(),
|
|
28
|
+
tslib_1.__metadata("design:type", Number)
|
|
29
|
+
], ItemSelectableDirective.prototype, "index", void 0);
|
|
30
|
+
tslib_1.__decorate([
|
|
31
|
+
HostBinding('class.k-selected'),
|
|
32
|
+
tslib_1.__metadata("design:type", Boolean),
|
|
33
|
+
tslib_1.__metadata("design:paramtypes", [])
|
|
34
|
+
], ItemSelectableDirective.prototype, "selectedClassName", null);
|
|
35
|
+
tslib_1.__decorate([
|
|
36
|
+
HostListener('click', ['$event']),
|
|
37
|
+
tslib_1.__metadata("design:type", Function),
|
|
38
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
39
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
40
|
+
], ItemSelectableDirective.prototype, "onClick", null);
|
|
41
|
+
ItemSelectableDirective = tslib_1.__decorate([
|
|
42
|
+
Directive({
|
|
43
|
+
selector: '[kendoListBoxItemSelectable]'
|
|
44
|
+
}),
|
|
45
|
+
tslib_1.__metadata("design:paramtypes", [ListBoxSelectionService])
|
|
46
|
+
], ItemSelectableDirective);
|
|
47
|
+
return ItemSelectableDirective;
|
|
48
|
+
}());
|
|
49
|
+
export { ItemSelectableDirective };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Directive, TemplateRef } from '@angular/core';
|
|
7
|
+
/**
|
|
8
|
+
* Renders the ListBox item content. To define the item template, nest an `<ng-template>` tag
|
|
9
|
+
* with the `kendoListBoxItemTemplate` directive inside the `<kendo-listbox>` tag. The template context is
|
|
10
|
+
* set to the current data item.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* _@Component({
|
|
15
|
+
* selector: 'my-app',
|
|
16
|
+
* template: `
|
|
17
|
+
* <kendo-listbox [data]="listBoxItems">
|
|
18
|
+
* <ng-template kendoListBoxItemTemplate let-dataItem>
|
|
19
|
+
* <span>{{ dataItem }} item</span>
|
|
20
|
+
* </ng-template>
|
|
21
|
+
* </kendo-listbox>
|
|
22
|
+
* `
|
|
23
|
+
* })
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
var ItemTemplateDirective = /** @class */ (function () {
|
|
27
|
+
function ItemTemplateDirective(templateRef) {
|
|
28
|
+
this.templateRef = templateRef;
|
|
29
|
+
}
|
|
30
|
+
ItemTemplateDirective = tslib_1.__decorate([
|
|
31
|
+
Directive({
|
|
32
|
+
selector: '[kendoListBoxItemTemplate]'
|
|
33
|
+
}),
|
|
34
|
+
tslib_1.__metadata("design:paramtypes", [TemplateRef])
|
|
35
|
+
], ItemTemplateDirective);
|
|
36
|
+
return ItemTemplateDirective;
|
|
37
|
+
}());
|
|
38
|
+
export { ItemTemplateDirective };
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Component, ContentChild, ElementRef, EventEmitter, HostBinding, Input, isDevMode, Output, Renderer2 } from '@angular/core';
|
|
7
|
+
import { validatePackage } from '@progress/kendo-licensing';
|
|
8
|
+
import { Subscription } from 'rxjs';
|
|
9
|
+
import { packageMetadata } from './package-metadata';
|
|
10
|
+
import { ListBoxSelectionService } from './selection.service';
|
|
11
|
+
import { ItemTemplateDirective } from './item-template.directive';
|
|
12
|
+
import { defaultItemDisabled, fieldAccessor, getTools } from './util';
|
|
13
|
+
import { allTools, DEFAULT_TOOLBAR_POSITION, sizeClassMap, toolbarClasses } from './constants';
|
|
14
|
+
/**
|
|
15
|
+
* Represents the [Kendo UI ListBox component for Angular]({% slug overview_listbox %}).
|
|
16
|
+
*/
|
|
17
|
+
var ListBoxComponent = /** @class */ (function () {
|
|
18
|
+
function ListBoxComponent(selectionService, renderer, hostElement) {
|
|
19
|
+
var _this = this;
|
|
20
|
+
this.selectionService = selectionService;
|
|
21
|
+
this.renderer = renderer;
|
|
22
|
+
this.hostElement = hostElement;
|
|
23
|
+
/**
|
|
24
|
+
* @hidden
|
|
25
|
+
*/
|
|
26
|
+
this.listboxClassName = true;
|
|
27
|
+
/**
|
|
28
|
+
* The data which will be displayed by the ListBox.
|
|
29
|
+
*/
|
|
30
|
+
this.data = [];
|
|
31
|
+
/**
|
|
32
|
+
* Sets the size of the component.
|
|
33
|
+
*
|
|
34
|
+
* The possible values are:
|
|
35
|
+
* - `'small'`
|
|
36
|
+
* - `'medium'` (default)
|
|
37
|
+
* - `'large'`
|
|
38
|
+
*/
|
|
39
|
+
this.size = 'medium';
|
|
40
|
+
/**
|
|
41
|
+
* A function which determines if a specific item is disabled.
|
|
42
|
+
*/
|
|
43
|
+
this.itemDisabled = defaultItemDisabled;
|
|
44
|
+
/**
|
|
45
|
+
* Fires when the user selects a different ListBox item. Also fires when a node is moved, since that also changes its index.
|
|
46
|
+
*/
|
|
47
|
+
this.selectionChange = new EventEmitter();
|
|
48
|
+
/**
|
|
49
|
+
* Fires when the user clicks a ListBox item.
|
|
50
|
+
*/
|
|
51
|
+
this.actionClick = new EventEmitter();
|
|
52
|
+
/**
|
|
53
|
+
* @hidden
|
|
54
|
+
*/
|
|
55
|
+
this.selectedTools = allTools;
|
|
56
|
+
this.sub = new Subscription();
|
|
57
|
+
validatePackage(packageMetadata);
|
|
58
|
+
this.setToolbarClass(DEFAULT_TOOLBAR_POSITION);
|
|
59
|
+
this.sub.add(this.selectionService.onSelect.subscribe(function (e) {
|
|
60
|
+
_this.selectionChange.next(e);
|
|
61
|
+
}));
|
|
62
|
+
}
|
|
63
|
+
Object.defineProperty(ListBoxComponent.prototype, "toolbar", {
|
|
64
|
+
/**
|
|
65
|
+
* Sets whether a toolbar should be displayed with the ListBox, as well as what tools and position should be used.
|
|
66
|
+
*/
|
|
67
|
+
set: function (config) {
|
|
68
|
+
var position = DEFAULT_TOOLBAR_POSITION;
|
|
69
|
+
if (typeof config === 'boolean') {
|
|
70
|
+
this.selectedTools = config ? allTools : [];
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
this.selectedTools = config.tools ? getTools(config.tools) : allTools;
|
|
74
|
+
if (config.position) {
|
|
75
|
+
position = config.position;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
this.setToolbarClass(position);
|
|
79
|
+
},
|
|
80
|
+
enumerable: true,
|
|
81
|
+
configurable: true
|
|
82
|
+
});
|
|
83
|
+
Object.defineProperty(ListBoxComponent.prototype, "listClasses", {
|
|
84
|
+
/**
|
|
85
|
+
* @hidden
|
|
86
|
+
*/
|
|
87
|
+
get: function () {
|
|
88
|
+
return "k-list k-list-" + sizeClassMap[this.size];
|
|
89
|
+
},
|
|
90
|
+
enumerable: true,
|
|
91
|
+
configurable: true
|
|
92
|
+
});
|
|
93
|
+
/**
|
|
94
|
+
* @hidden
|
|
95
|
+
*/
|
|
96
|
+
ListBoxComponent.prototype.ngOnDestroy = function () {
|
|
97
|
+
this.sub.unsubscribe();
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* @hidden
|
|
101
|
+
*/
|
|
102
|
+
ListBoxComponent.prototype.performAction = function (actionName) {
|
|
103
|
+
this.actionClick.next(actionName);
|
|
104
|
+
};
|
|
105
|
+
/**
|
|
106
|
+
* Programmatically selects a ListBox node.
|
|
107
|
+
*/
|
|
108
|
+
ListBoxComponent.prototype.selectItem = function (index) {
|
|
109
|
+
this.selectionService.selectedIndex = index;
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Programmatically clears the ListBox selection.
|
|
113
|
+
*/
|
|
114
|
+
ListBoxComponent.prototype.clearSelection = function () {
|
|
115
|
+
this.selectionService.clearSelection();
|
|
116
|
+
};
|
|
117
|
+
Object.defineProperty(ListBoxComponent.prototype, "selectedIndex", {
|
|
118
|
+
/**
|
|
119
|
+
* The index of the currently selected item in the ListBox.
|
|
120
|
+
*/
|
|
121
|
+
get: function () {
|
|
122
|
+
return this.selectionService.selectedIndex;
|
|
123
|
+
},
|
|
124
|
+
enumerable: true,
|
|
125
|
+
configurable: true
|
|
126
|
+
});
|
|
127
|
+
/**
|
|
128
|
+
* @hidden
|
|
129
|
+
*/
|
|
130
|
+
ListBoxComponent.prototype.getText = function (dataItem) {
|
|
131
|
+
if (typeof dataItem !== 'string' && !this.textField && isDevMode()) {
|
|
132
|
+
throw new Error('Missing textField input. When passing an array of objects as data, please set the textField input of the ListBox accordingly.');
|
|
133
|
+
}
|
|
134
|
+
return fieldAccessor(dataItem, this.textField);
|
|
135
|
+
};
|
|
136
|
+
ListBoxComponent.prototype.setToolbarClass = function (pos) {
|
|
137
|
+
var _this = this;
|
|
138
|
+
Object.keys(toolbarClasses).forEach(function (className) {
|
|
139
|
+
if (pos === className) {
|
|
140
|
+
_this.renderer.addClass(_this.hostElement.nativeElement, toolbarClasses[className]);
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
_this.renderer.removeClass(_this.hostElement.nativeElement, toolbarClasses[className]);
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
};
|
|
147
|
+
tslib_1.__decorate([
|
|
148
|
+
HostBinding('class.k-listbox'),
|
|
149
|
+
tslib_1.__metadata("design:type", Boolean)
|
|
150
|
+
], ListBoxComponent.prototype, "listboxClassName", void 0);
|
|
151
|
+
tslib_1.__decorate([
|
|
152
|
+
ContentChild(ItemTemplateDirective, { static: false }),
|
|
153
|
+
tslib_1.__metadata("design:type", ItemTemplateDirective)
|
|
154
|
+
], ListBoxComponent.prototype, "itemTemplate", void 0);
|
|
155
|
+
tslib_1.__decorate([
|
|
156
|
+
Input(),
|
|
157
|
+
tslib_1.__metadata("design:type", String)
|
|
158
|
+
], ListBoxComponent.prototype, "textField", void 0);
|
|
159
|
+
tslib_1.__decorate([
|
|
160
|
+
Input(),
|
|
161
|
+
tslib_1.__metadata("design:type", Array)
|
|
162
|
+
], ListBoxComponent.prototype, "data", void 0);
|
|
163
|
+
tslib_1.__decorate([
|
|
164
|
+
Input(),
|
|
165
|
+
tslib_1.__metadata("design:type", String)
|
|
166
|
+
], ListBoxComponent.prototype, "size", void 0);
|
|
167
|
+
tslib_1.__decorate([
|
|
168
|
+
Input(),
|
|
169
|
+
tslib_1.__metadata("design:type", Object),
|
|
170
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
171
|
+
], ListBoxComponent.prototype, "toolbar", null);
|
|
172
|
+
tslib_1.__decorate([
|
|
173
|
+
Input(),
|
|
174
|
+
tslib_1.__metadata("design:type", Function)
|
|
175
|
+
], ListBoxComponent.prototype, "itemDisabled", void 0);
|
|
176
|
+
tslib_1.__decorate([
|
|
177
|
+
Output(),
|
|
178
|
+
tslib_1.__metadata("design:type", EventEmitter)
|
|
179
|
+
], ListBoxComponent.prototype, "selectionChange", void 0);
|
|
180
|
+
tslib_1.__decorate([
|
|
181
|
+
Output(),
|
|
182
|
+
tslib_1.__metadata("design:type", EventEmitter)
|
|
183
|
+
], ListBoxComponent.prototype, "actionClick", void 0);
|
|
184
|
+
ListBoxComponent = tslib_1.__decorate([
|
|
185
|
+
Component({
|
|
186
|
+
selector: 'kendo-listbox',
|
|
187
|
+
providers: [ListBoxSelectionService],
|
|
188
|
+
template: "\n <div class=\"k-listbox-toolbar\" *ngIf=\"selectedTools.length > 0\">\n <ul class=\"k-reset\">\n <li *ngFor=\"let tool of selectedTools\">\n <button kendoButton [icon]=\"tool.icon\" (click)=\"performAction(tool.name)\"></button>\n </li>\n\n <!-- react moving items has a smoother removal of the style: https://www.telerik.com/kendo-react-ui/components/listbox/ -->\n </ul>\n </div>\n <div class=\"k-list-scroller k-selectable\">\n <div class=\"{{ listClasses }}\">\n <div class=\"k-list-content\">\n <ul class=\"k-list-ul\">\n <li\n class=\"k-list-item\"\n *ngFor=\"let item of data; let i = index;\"\n kendoListBoxItemSelectable\n [index]=\"i\"\n [class.k-disabled]=\"itemDisabled(item)\"\n >\n <ng-template *ngIf=\"itemTemplate; else defaultItemTemplate\"\n [templateContext]=\"{\n templateRef: itemTemplate.templateRef,\n $implicit: item\n }\">\n </ng-template>\n <ng-template #defaultItemTemplate>\n <span class=\"k-list-item-text\">{{ getText(item) }}</span>\n </ng-template>\n </li>\n </ul>\n </div>\n </div>\n </div>\n "
|
|
189
|
+
}),
|
|
190
|
+
tslib_1.__metadata("design:paramtypes", [ListBoxSelectionService,
|
|
191
|
+
Renderer2,
|
|
192
|
+
ElementRef])
|
|
193
|
+
], ListBoxComponent);
|
|
194
|
+
return ListBoxComponent;
|
|
195
|
+
}());
|
|
196
|
+
export { ListBoxComponent };
|