angular2
Version:
Angular 2 - a web framework for modern web apps
1 lines • 8.17 kB
Source Map (JSON)
{"version":3,"sources":["view.js"],"names":[],"mappings":"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","file":"angular2/src/render/dom/view/view.es6","sourcesContent":["import {DOM} from 'angular2/src/dom/dom_adapter';\nimport {ListWrapper, MapWrapper, Map, StringMapWrapper, List} from 'angular2/src/facade/collection';\nimport {int, isPresent, isBlank, BaseException} from 'angular2/src/facade/lang';\n\nimport {ViewContainer} from './view_container';\nimport {RenderProtoView} from './proto_view';\nimport {LightDom} from '../shadow_dom/light_dom';\nimport {Content} from '../shadow_dom/content_tag';\n\n// import {EventDispatcher} from '../../api';\n\nconst NG_BINDING_CLASS = 'ng-binding';\n\n/**\n * Const of making objects: http://jsperf.com/instantiate-size-of-object\n */\nexport class RenderView {\n boundElements:List;\n boundTextNodes:List;\n /// When the view is part of render tree, the DocumentFragment is empty, which is why we need\n /// to keep track of the nodes.\n rootNodes:List;\n // TODO(tbosch): move componentChildViews, viewContainers, contentTags, lightDoms into\n // a single array with records inside\n componentChildViews: List<RenderView>;\n viewContainers: List<ViewContainer>;\n contentTags: List<Content>;\n lightDoms: List<LightDom>;\n hostLightDom: LightDom;\n proto: RenderProtoView;\n hydrated: boolean;\n _eventDispatcher: any/*EventDispatcher*/;\n eventHandlerRemovers: List<Function>;\n /// Host views that were added by an imperative view.\n /// This is a dynamically growing / shrinking array.\n imperativeHostViews: List<RenderView>;\n\n constructor(\n proto:RenderProtoView, rootNodes:List,\n boundTextNodes: List, boundElements:List, contentTags:List) {\n this.proto = proto;\n this.rootNodes = rootNodes;\n this.boundTextNodes = boundTextNodes;\n this.boundElements = boundElements;\n this.viewContainers = ListWrapper.createFixedSize(boundElements.length);\n this.contentTags = contentTags;\n this.lightDoms = ListWrapper.createFixedSize(boundElements.length);\n ListWrapper.fill(this.lightDoms, null);\n this.componentChildViews = ListWrapper.createFixedSize(boundElements.length);\n this.hostLightDom = null;\n this.hydrated = false;\n this.eventHandlerRemovers = [];\n this.imperativeHostViews = [];\n }\n\n getDirectParentLightDom(boundElementIndex:number) {\n var binder = this.proto.elementBinders[boundElementIndex];\n var destLightDom = null;\n if (binder.parentIndex !== -1 && binder.distanceToParent === 1) {\n destLightDom = this.lightDoms[binder.parentIndex];\n }\n return destLightDom;\n }\n\n getOrCreateViewContainer(binderIndex) {\n var vc = this.viewContainers[binderIndex];\n if (isBlank(vc)) {\n vc = new ViewContainer(this, binderIndex);\n this.viewContainers[binderIndex] = vc;\n }\n return vc;\n }\n\n setElementProperty(elementIndex:number, propertyName:string, value:any) {\n var setter = MapWrapper.get(this.proto.elementBinders[elementIndex].propertySetters, propertyName);\n setter(this.boundElements[elementIndex], value);\n }\n\n setText(textIndex:number, value:string) {\n DOM.setText(this.boundTextNodes[textIndex], value);\n }\n\n getViewContainer(index:number):ViewContainer {\n return this.viewContainers[index];\n }\n\n setEventDispatcher(dispatcher:any/*EventDispatcher*/) {\n this._eventDispatcher = dispatcher;\n }\n\n dispatchEvent(elementIndex, eventName, event): boolean {\n var allowDefaultBehavior = true;\n if (isPresent(this._eventDispatcher)) {\n var evalLocals = MapWrapper.create();\n MapWrapper.set(evalLocals, '$event', event);\n // TODO(tbosch): reenable this when we are parsing element properties\n // out of action expressions\n // var localValues = this.proto.elementBinders[elementIndex].eventLocals.eval(null, new Locals(null, evalLocals));\n // this._eventDispatcher.dispatchEvent(elementIndex, eventName, localValues);\n allowDefaultBehavior = this._eventDispatcher.dispatchEvent(elementIndex, eventName, evalLocals);\n if (!allowDefaultBehavior) {\n event.preventDefault();\n }\n }\n return allowDefaultBehavior;\n }\n}\n"]}