diff options
Diffstat (limited to 'catalog-ui/src/app/directives/elements')
6 files changed, 145 insertions, 0 deletions
diff --git a/catalog-ui/src/app/directives/elements/checkbox/checkbox.html b/catalog-ui/src/app/directives/elements/checkbox/checkbox.html new file mode 100644 index 0000000000..1e25408188 --- /dev/null +++ b/catalog-ui/src/app/directives/elements/checkbox/checkbox.html @@ -0,0 +1,14 @@ +<label class="tlv-checkbox" ng-class="{'disabled' : disabled}"> + <input id="{{elemId}}" + name="{{elemId}}" + class="tlv-checkbox-i" + type="checkbox" + checked="" + ng-disabled="disabled" + checklist-model="sdcChecklistModel" + checklist-value="sdcChecklistValue" + checklist-change="sdcChecklistChange()" + /> + + <span sdc-smart-tooltip class="tlv-checkbox-label" data-tests-id="{{elemId}}">{{text}}</span> +</label> diff --git a/catalog-ui/src/app/directives/elements/checkbox/checkbox.less b/catalog-ui/src/app/directives/elements/checkbox/checkbox.less new file mode 100644 index 0000000000..0747a680a9 --- /dev/null +++ b/catalog-ui/src/app/directives/elements/checkbox/checkbox.less @@ -0,0 +1,35 @@ +label.tlv-checkbox { + font-weight: normal; +} + +/* +input[type="checkbox"] { + display:none; +} + +input[type="checkbox"] + label span { + margin-right: 6px; + vertical-align: text-bottom; + .sprite-new; + .checkbox_unchecked; + cursor:pointer; +} + +input[type="checkbox"]:checked + label span { + vertical-align: text-bottom; + .sprite-new; + .checkbox_checked; +} + +input[type="checkbox"]:focus + label span { + vertical-align: text-bottom; + .sprite-new; + .checkbox_focus; +} + +input[type="checkbox"][disabled] + label{ + vertical-align: text-bottom; + .sprite-new; + .checkbox_disabled; +} +*/ diff --git a/catalog-ui/src/app/directives/elements/checkbox/checkbox.ts b/catalog-ui/src/app/directives/elements/checkbox/checkbox.ts new file mode 100644 index 0000000000..ec0be8ab07 --- /dev/null +++ b/catalog-ui/src/app/directives/elements/checkbox/checkbox.ts @@ -0,0 +1,43 @@ +'use strict'; + +export interface ICheckboxElementScope extends ng.IScope { + elemId:string; + text:string; + sdcChecklistModel:any; + sdcChecklistValue:string; + disabled:boolean; +} + +export class CheckboxElementDirective implements ng.IDirective { + + constructor(private $filter:ng.IFilterService) { + } + + public replace = true; + public restrict = 'E'; + public transclude = false; + + scope = { + elemId: '@', + text: '@', + disabled: '=', + sdcChecklistModel: '=', + sdcChecklistValue: '=', + sdcChecklistChange: '&' + }; + + template = ():string => { + return require('./checkbox.html'); + }; + + public link = (scope:ICheckboxElementScope, $elem:ng.IAugmentedJQuery, $attrs:angular.IAttributes) => { + + }; + + public static factory = ($filter:ng.IFilterService)=> { + return new CheckboxElementDirective($filter); + }; + +} + +CheckboxElementDirective.factory.$inject = ['$filter']; diff --git a/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.html b/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.html new file mode 100644 index 0000000000..b31fae5d73 --- /dev/null +++ b/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.html @@ -0,0 +1,5 @@ +<div class="tlv-radio"> + <input name="{{elemName}}" id="{{elemId}}" class="tlv-radio-i" type="radio" ng-model="sdcModel" ng-click="onValueChange()" + ng-disabled="disabled" value="{{value}}" /> + <label for="{{elemId}}" sdc-smart-tooltip class="tlv-radio-label">{{text}}</label> +</div> diff --git a/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.less b/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.less new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.less diff --git a/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.ts b/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.ts new file mode 100644 index 0000000000..1384a82674 --- /dev/null +++ b/catalog-ui/src/app/directives/elements/radiobutton/radiobutton.ts @@ -0,0 +1,48 @@ +import INgModelController = angular.INgModelController; +'use strict'; + +export interface IRadiobuttonElementScope extends ng.IScope { + elemId:string; + elemName:string; + text:string; + sdcModel:any; + value:any; + disabled:boolean; + onValueChange:Function; +} + +export class RadiobuttonElementDirective implements ng.IDirective { + + constructor(private $filter:ng.IFilterService) { + } + + public replace = true; + public restrict = 'E'; + public transclude = false; + + scope = { + elemId: '@', + elemName: '@', + text: '@', + sdcModel: '=', + value: '@', + disabled: '=', + onValueChange: '&' + }; + + template = ():string => { + return require('./radiobutton.html'); + }; + + public link = (scope:IRadiobuttonElementScope, $elem:ng.IAugmentedJQuery, $attrs:angular.IAttributes) => { + //$elem.removeAttr("id") + //console.log(scope.sdcChecklistValue); + }; + + public static factory = ($filter:ng.IFilterService)=> { + return new RadiobuttonElementDirective($filter); + }; + +} + +RadiobuttonElementDirective.factory.$inject = ['$filter']; |