@stratusjs/idx
Version:
AngularJS idx/property Service and Components bundle to be used as an add on to StratusJS
1 lines • 3.61 kB
JavaScript
System.register(["lodash","@stratusjs/runtime/stratus","@stratusjs/angularjs/services/model","@stratusjs/core/misc","@stratusjs/core/environment"],function(exports_1,context_1){"use strict";var lodash_1,stratus_1,model_1,misc_1,environment_1,min,localDir;context_1&&context_1.id;return{setters:[function(lodash_1_1){lodash_1=lodash_1_1},function(stratus_1_1){stratus_1=stratus_1_1},function(model_1_1){model_1=model_1_1},function(misc_1_1){misc_1=misc_1_1},function(environment_1_1){environment_1=environment_1_1}],execute:function(){min=environment_1.cookie("env")?"":".min","idx","property","details-sub-section",localDir=`${stratus_1.Stratus.BaseUrl}${stratus_1.Stratus.DeploymentPath}@stratusjs/idx/src/property/`,stratus_1.Stratus.Components.IdxPropertyDetailsSubSection={bindings:{ngModel:"=",items:"@",sectionName:"@",className:"@",template:"@"},controller($attrs,$scope){$scope.uid=misc_1.safeUniqueId("idx","property","details-sub-section"),$scope.elementId=$attrs.elementId||$scope.uid,$scope.className=$attrs.className||"sub-detail-section",$scope.sectionName=$attrs.sectionName||"",$scope.sectionNameId=lodash_1.camelCase($scope.sectionName)+"_"+$scope.elementId;$scope.items=$attrs.items&&misc_1.isJSON($attrs.items)?JSON.parse($attrs.items):{},$scope.visibleFields=!1,$scope.model=null;if($scope.sectionName.startsWith("{")){const stopWatchingSectionName=$scope.$watch("$ctrl.sectionName",data=>{$scope.sectionName=data,$scope.sectionNameId=lodash_1.camelCase($scope.sectionName)+"_"+$scope.elementId,stopWatchingSectionName()})}if(0===Object.keys($scope.items).length){const stopWatchingItems=$scope.$watch("$ctrl.items",data=>{if(0===Object.keys($scope.items).length){const blankItems={};$scope.items=data&&misc_1.isJSON(data)?JSON.parse(data):blankItems,$scope.convertItemsToObject()}stopWatchingItems()})}const stopWatchingModel=$scope.$watch("$ctrl.ngModel",data=>{data instanceof model_1.Model&&data!==$scope.model&&($scope.model=data,Object.keys($scope.items).forEach(item=>{Object.prototype.hasOwnProperty.call($scope.model.data,item)&&0!==$scope.model.data[item]&&""!==$scope.model.data[item]&&"0"!==$scope.model.data[item]&&!lodash_1.isString($scope.items[item])&&(!1!==$scope.model.data[item]||""!==lodash_1.get($scope.items[item],"false")?(Object.prototype.hasOwnProperty.call($scope.items[item],"appendField")&&Object.prototype.hasOwnProperty.call($scope.model.data,$scope.items[item].appendField)&&""!==$scope.model.data[$scope.items[item].appendField]?$scope.items[item].append=" "+$scope.model.data[$scope.items[item].appendField]:Object.prototype.hasOwnProperty.call($scope.items[item],"appendFieldBackup")&&Object.prototype.hasOwnProperty.call($scope.model.data,$scope.items[item].appendFieldBackup)&&""!==$scope.model.data[$scope.items[item].appendFieldBackup]&&($scope.items[item].append=" "+$scope.model.data[$scope.items[item].appendFieldBackup]),!1!==lodash_1.get($scope.items[item],"hideEmpty")&&lodash_1.isArray($scope.model.data[item])&&$scope.model.data[item].length<=0?$scope.items[item].hide=!0:$scope.visibleFields=!0):!1===$scope.model.data[item]&&!1!==lodash_1.get($scope.items[item],"hideEmpty")&&($scope.items[item].hide=!0))}),stopWatchingModel())});this.$onInit=()=>{$scope.convertItemsToObject()},$scope.convertItemsToObject=()=>{lodash_1.forEach($scope.items,(itemValue,itemKey)=>{"string"==typeof itemValue&&($scope.items[itemKey]={name:itemValue})})},$scope.typeOf=item=>lodash_1.isArray(item)?"array":typeof item,$scope.isArray=item=>lodash_1.isArray(item)},templateUrl:$attrs=>`${localDir}${$attrs.template||"details-sub-section"}.component${min}.html`}}}});