+++ /dev/null
-define([], function() {
-
-'use strict';
-
-var wlxmlDict = {
- 'uri': {
- 'uri': 'string'
- }
-};
-
-var hasMetaAttr = function(klass, attrName, dict) {
- dict = dict || wlxmlDict;
- if(!klass)
- return false;
-
- var parts = klass.split('.');
- var partialClass = '';
- for(var i = 0; i < parts.length; i++) {
- partialClass += (partialClass === '' ? '' : '.') + parts[i];
- if(dict[partialClass] && dict[partialClass][attrName])
- return true;
- }
- return false;
-};
-
-var getMetaAttrsList = function(klass, dict) {
- dict = dict || wlxmlDict;
- klass = klass || '';
-
- var toret = {own: [], inheritedFrom: {}, all: []};
- var parts = klass.split('.');
- var partialClass = '';
-
- var generate = function(klass) {
- var toret = [],
- desc = dict[klass];
-
- if(!desc)
- return toret;
-
- _.keys(desc).forEach(function(key) {
- toret.push({name: key, type: desc[key]});
- });
- return toret;
- };
-
- toret.own = generate(klass);
- for(var i = 0; i < parts.length; i++) {
- partialClass += (partialClass === '' ? '' : '.') + parts[i];
- var list = generate(partialClass);
- if(list.length > 0) {
- toret.inheritedFrom[partialClass] = generate(partialClass);
- toret.all = toret.all.concat(toret.inheritedFrom[partialClass]);
- }
- }
- return toret;
-};
-
-return {
- hasMetaAttr: hasMetaAttr,
- getMetaAttrsList: getMetaAttrsList
-};
-
-});
\ No newline at end of file