-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathcheckboxtree.min.js
2 lines (2 loc) · 11.1 KB
/
checkboxtree.min.js
1
2
webpackJsonp([20],{1025:function(e,exports){e.exports='<div ui-tree id="tree-root" data-nodrop-enabled="true" data-drag-enabled="false">\n <ol ui-tree-nodes ng-model="vm.list" class="ui-tree-ol">\n <li ng-repeat="node in vm.list" ui-tree-node ng-include="\'goods_nodes_renderer.html\'" collapsed="vm.defaultCollapsed"></li>\n </ol>\n</div>\n\n<script type="text/ng-template" id="goods_nodes_renderer.html">\n <div ui-tree-handle class="tree-node tree-node-content">\n <span class="toggle-btn" ng-if="node[vm.config.fieldOfChildren] && node[vm.config.fieldOfChildren].length > 0" data-nodrag ng-click="toggle(this)">\n <span class="glyphicon"\n ng-class="{\n \'glyphicon-triangle-right\': collapsed,\n \'glyphicon-triangle-bottom\': !collapsed\n }"></span>\n </span>\n <label class="goods-node">\n <input type="checkbox"\n ng-model="node.checked"\n ng-click="vm.nodeClickHandler(node)"\n ng-disabled="vm.ngDisabled"/>\n <span class="glyphicon goods-node-icon"\n ng-class="{\n \'glyphicon-folder-open\': node[vm.config.fieldOfChildren] && !collapsed,\n \'glyphicon-folder-close\': node[vm.config.fieldOfChildren] && collapsed,\n \'glyphicon-file\': !node[vm.config.fieldOfChildren]\n }"></span>\n {{node[vm.config.fieldOfName] || "地级市地方"}}\n </label>\n </div>\n <ol ui-tree-nodes="" ng-model="node[vm.config.fieldOfChildren]" ng-class="{hidden: collapsed}">\n <li ng-repeat="node in node[vm.config.fieldOfChildren]" ui-tree-node ng-include="\'goods_nodes_renderer.html\'" collapsed="node.collapsed">\n </li>\n </ol>\n</script>\n'},1053:function(e,exports,n){var t=n(683);"string"==typeof t&&(t=[[e.i,t,""]]);n(2)(t,{});t.locals&&(e.exports=t.locals)},1094:function(e,exports,n){var t=n(724);"string"==typeof t&&(t=[[e.i,t,""]]);n(2)(t,{});t.locals&&(e.exports=t.locals)},288:function(e,exports,n){"use strict";function t(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(exports,"__esModule",{value:!0});var o=n(831),l=t(o),i=n(918),a=t(i);exports["default"]=angular.module("democheckboxtree",[a["default"].name]).component("democheckboxtree",l["default"])},413:function(e,exports){"use strict";function n(e,n){e?console.warn(e+" will be obsoleted in next major release, please use "+n+" instead"):console.warn("This version will be obsoleted in next major release, please follow http://www.fancyui.org/ for detail")}Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=function(e,t,o){var l=angular.copy(e);try{var i;!function(){var e=l.controller,a=angular.injector.$$annotate(l.controller,!0);i=angular.element(document.body).injector();var r=function(){n(t,o);for(var l=[],r=0,c=a.length;r<c;r++)l.push(i.get(a[r]));var d=Object.create(e.prototype||null);return angular.merge(d,this),e.apply(d,l),d};l.controller=r}()}catch(a){}return l}},683:function(e,exports,n){exports=e.exports=n(1)(),exports.push([e.i,"",""])},724:function(e,exports,n){exports=e.exports=n(1)(),exports.push([e.i,'.checkboxtree {\n color: red;\n}\n#tree-root ol {\n list-style: none;\n}\n#tree-root .toggle-btn {\n cursor: pointer;\n}\n#tree-root .angular-ui-tree input[type="checkbox"]:checked {\n background-color: #108ee9;\n border-color: #108ee9;\n}\n.angular-ui-tree input[type="checkbox"]:checked:after {\n -webkit-transform: rotate(45deg) scale(1);\n -ms-transform: rotate(45deg) scale(1);\n transform: rotate(45deg) scale(1);\n position: absolute;\n left: 4px;\n top: 1px;\n display: table;\n width: 5px;\n height: 8px;\n border: 2px solid #fff;\n border-top: 0;\n border-left: 0;\n content: \' \';\n -webkit-transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;\n transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;\n}\n',""])},831:function(e,exports,n){"use strict";function t(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(exports,"__esModule",{value:!0});var o=n(985),l=t(o),i=n(832),a=t(i);n(1053),exports["default"]={restrict:"E",bindings:{},template:l["default"],controller:a["default"],controllerAs:"vm"}},832:function(e,exports){"use strict";function n(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var t=function o(e,t,l){"ngInject";var i=this;n(this,o),this.$state=t,this.$q=e,l(function(){i.datasource=[{name:"第一个节点",categoryId:1001,child:[{name:"第一个节点的子节点",categoryId:1001001,parent:1001},{name:"第一个节点的子节点2",parent:1001,categoryId:1001002}]},{name:"第二个节点(没有子节点)",categoryId:1002}]},100),this.config={fieldOfChildren:"child",fieldOfName:"name",fieldOfId:"categoryId"},this.form={},this.form.category=[{name:"第二个节点(没有子节点)",categoryId:1002}]};t.$inject=["$q","$state","$timeout"],exports["default"]=t},915:function(e,exports,n){"use strict";function t(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(exports,"__esModule",{value:!0});var o=n(1025),l=t(o),i=n(916),a=t(i);n(1094);var r={restrict:"E",bindings:{datasource:"<",ngDisabled:"=",ngModel:"=",config:"<",defaultCollapsed:"<"},template:l["default"],controller:a["default"],controllerAs:"vm"};exports["default"]=r},916:function(e,exports,n){"use strict";function t(e){return e&&e.__esModule?e:{"default":e}}function o(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(n,t,o){return t&&e(n.prototype,t),o&&e(n,o),n}}(),a=n(917),r=t(a),c=function(){function e(n){"ngInject";var t=this;o(this,e),this.name="checkboxtree",this.config=Object.assign({},r["default"],this.config),n.$watch(function(){return t.datasource},function(){t.datasource&&(t.list=t.datasource,t.formatList(t.list,t.ngModel))}),this.ngModel?"":this.ngModel=[]}return e.$inject=["$scope"],i(e,[{key:"nodeClickHandler",value:function(e){e[this.config.fieldOfChildren]?(this.toggleUpNode(e),this.toggleDownNode(e)):this.toggleUpNode(e),this.updateModel(e)}},{key:"toggleUpNode",value:function(e){var n=!0,t=this.getSiblings(e);if(t&&t&&t.forEach(function(e){e.checked||(n=!1)}),n&&e[this.config.fieldOfParent]){var o=this.getNode(e[this.config.fieldOfParent],this.list);o.checked=e.checked,this.updateModel(o),this.toggleUpNode(o)}}},{key:"toggleDownNode",value:function(e){var n=this;e[this.config.fieldOfChildren]&&e[this.config.fieldOfChildren].forEach(function(t){t.checked=e.checked,n.updateModel(t),n.toggleDownNode(t)})}},{key:"updateModel",value:function(e){var n=this;if(e.checked)this.ngModel.push(e);else{var t=void 0;this.ngModel.forEach(function(o,l){if(o[n.config.fieldOfId]==e[n.config.fieldOfId])return void(t=l)}),this.ngModel.splice(t,1)}this.ngModel=angular.copy(this.ngModel)}},{key:"formatList",value:function(e,n){var t=this;n.forEach(function(n){var o=t.getNode(n[t.config.fieldOfId],e);o&&(o.checked=!0)})}},{key:"getSiblings",value:function(e){var n=this;if(e[this.config.fieldOfParent]){var t=function(){var t=n.getNode(e[n.config.fieldOfParent],n.list),o=angular.copy(t[n.config.fieldOfChildren]);return o.forEach(function(t,l){t[n.config.fieldOfId]==e[n.config.fieldOfId]&&o.splice(l,1)}),{v:o}}();if("object"===("undefined"==typeof t?"undefined":l(t)))return t.v}}},{key:"getNode",value:function(e,n){var t=this,o=void 0,l=function i(e,n){n.forEach(function(n){return n[t.config.fieldOfId]==e?(o=n,!1):void(n[t.config.fieldOfChildren]&&i(e,n[t.config.fieldOfChildren]))})};return l(e,n),o}}]),e}();exports["default"]=c},917:function(e,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n={fieldOfChildren:"children",fieldOfName:"categoryName",fieldOfId:"categoryId",fieldOfParent:"parent"};exports["default"]=n},918:function(e,exports,n){"use strict";function t(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(exports,"__esModule",{value:!0});var o=n(915),l=t(o);n(23);var i=n(413),a=t(i),r=angular.module("checkboxtree",["ui.tree"]).component("fCheckboxTree",l["default"]).component("bpCheckboxtree",(0,a["default"])(l["default"],"bp-checkboxtree"," f-checkbox-tree"));exports["default"]=r},985:function(e,exports){e.exports='<section class="intro-content">\n\t<h1 translate=\'{{vm.$state.current.name}}\'></h1>\n</section>\n\n<section class="intro-content">\n\t<h2>{{\'Install\' | translate}}</h2>\n\t<p>{{\'Install_FancyUI\'|translate}}</p>\n</section>\n\n<div class="example-block">\n\t<div class="highlight" hljs hljs-language="bash">\nnpm install fancyui --save\nnpm install angular-ui-tree --save</div>\n</div>\n\n<section class="intro-content">\n\t<h2>{{\'Inject_Module\'|translate}}</h2>\n</section>\n\n<div class="example-block no-border">\n\t<div class="highlight" hljs hljs-language="javascript">\nimport {Checkboxtree} from \'fancyui\';\nexport default angular.module(\'checkboxtree\', [\n Checkboxtree.name\n])\n</div>\n</div>\n\n<h2>{{\'Example\'|translate}}</h2>\n<div class="example-block">\n\t<div class="bs-example pop-confirm-example">\n\t\t<f-checkbox-tree\n\t\t\tdatasource="vm.datasource"\n\t\t\tng-model="vm.form.category"\n default-collapsed="false"\n\t\t\tconfig="vm.config"></f-checkbox-tree>\n\t</div>\n</div>\n\n<h2>{{\'Basic_Usage\'|translate}}</h2>\n<h3>view</h3>\n<div class="example-block no-border">\n<div class="highlight" hljs hljs-no-escape>\n<f-checkbox-tree\n datasource="vm.datasource"\n default-collapsed="true"\n ng-model="vm.form.category"\n config="vm.config">\n</f-checkbox-tree>\n</div>\n</div>\n\n<h3>controller</h3>\n<div class="example-block no-border">\n<div class="highlight" hljs hljs-language="javascript">\nclass CheckboxtreeController {\n constructor($q, $state, $timeout) {\n \'ngInject\'\n this.$state = $state;\n this.$q = $q;\n $timeout(() => {\n this.datasource = [{\n name: \'第一个节点\',\n categoryId: 1001,\n child: [{\n name: \'第一个节点的子节点\',\n categoryId: 1001001,\n parent: 1001,\n },\n {\n name: \'第一个节点的子节点2\',\n parent: 1001,\n categoryId: 1001002\n }]\n },\n {\n name: \'第二个节点(没有子节点)\',\n categoryId: 1002\n }];\n }, 100);\n //这个配置用于避免或减少数据转换\n this.config = {\n //指示子节点的字段名\n fieldOfChildren: \'child\',\n //指示节点名的字段\n fieldOfName: \'name\',\n //指示节点id的字段\n fieldOfId: \'categoryId\'\n };\n\n this.form = {};\n\n /**发送给服务端的数据,以及数据回填操作 */\n this.form.category = [\n {\n name: \'第二个节点(没有子节点)\',\n categoryId: 1002\n }];\n\n }\n}\n</div>\n</div>\n'}});
//# sourceMappingURL=checkboxtree.min.js.map