UNPKG

ember-material-icons

Version:

Google Material icons for your ember-cli app

126 lines 9.46 kB
import { PropertyReference } from './references/descriptors'; import RootReference from './references/root'; import { DictSet, dict } from '@glimmer/util'; import { VOLATILE_TAG } from '@glimmer/reference'; const NOOP_DESTROY = { destroy() { } }; class ConstPath { constructor(parent, property) { this.tag = VOLATILE_TAG; this.parent = parent; } chain() { return NOOP_DESTROY; } notify() { } value() { return this.parent[this.property]; } get(prop) { return new ConstPath(this.parent[this.property], prop); } } class ConstRoot { constructor(value) { this.tag = VOLATILE_TAG; this.inner = value; } update(inner) { this.inner = inner; } chain() { return NOOP_DESTROY; } notify() { } value() { return this.inner; } referenceFromParts(parts) { throw new Error("Not implemented"); } chainFor(prop) { throw new Error("Not implemented"); } get(prop) { return new ConstPath(this.inner, prop); } } class ConstMeta /*implements IMeta*/ { constructor(object) { this.object = object; } root() { return new ConstRoot(this.object); } } export const CLASS_META = "df8be4c8-4e89-44e2-a8f9-550c8dacdca7"; const hasOwnProperty = Object.hasOwnProperty; class Meta { constructor(object, { RootReferenceFactory, DefaultPathReferenceFactory }) { this.references = null; this.slots = null; this.referenceTypes = null; this.propertyMetadata = null; this.object = object; this.RootReferenceFactory = RootReferenceFactory || RootReference; this.DefaultPathReferenceFactory = DefaultPathReferenceFactory || PropertyReference; } static for(obj) { if (obj === null || obj === undefined) return new Meta(obj, {}); if (hasOwnProperty.call(obj, '_meta') && obj._meta) return obj._meta; if (!Object.isExtensible(obj)) return new ConstMeta(obj); let MetaToUse = Meta; if (obj.constructor && obj.constructor[CLASS_META]) { let classMeta = obj.constructor[CLASS_META]; MetaToUse = classMeta.InstanceMetaConstructor; } else if (obj[CLASS_META]) { MetaToUse = obj[CLASS_META].InstanceMetaConstructor; } return (obj._meta = new MetaToUse(obj, {})); } static exists(obj) { return typeof obj === 'object' && obj._meta; } static metadataForProperty(key) { return null; } addReference(property, reference) { let refs = this.references = this.references || dict(); let set = refs[property] = refs[property] || new DictSet(); set.add(reference); } addReferenceTypeFor(property, type) { this.referenceTypes = this.referenceTypes || dict(); this.referenceTypes[property] = type; } referenceTypeFor(property) { if (!this.referenceTypes) return PropertyReference; return this.referenceTypes[property] || PropertyReference; } removeReference(property, reference) { if (!this.references) return; let set = this.references[property]; set.delete(reference); } getReferenceTypes() { this.referenceTypes = this.referenceTypes || dict(); return this.referenceTypes; } referencesFor(property) { if (!this.references) return; return this.references[property]; } getSlots() { return (this.slots = this.slots || dict()); } root() { return (this.rootCache = this.rootCache || new this.RootReferenceFactory(this.object)); } } export default Meta; export function metaFor(obj) { return Meta.for(obj); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9tZXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdELE9BQU8sYUFBYSxNQUFNLG1CQUFtQixDQUFDO0FBRzlDLE9BQU8sRUFBUSxPQUFPLEVBQWdCLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVNsRSxPQUFPLEVBQW1DLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSW5GLE1BQU0sWUFBWSxHQUFHLEVBQUUsT0FBTyxLQUFJLENBQUMsRUFBRSxDQUFDO0FBRXRDO0lBS0UsWUFBWSxNQUFXLEVBQUUsUUFBZ0I7UUFGbEMsUUFBRyxHQUFHLFlBQVksQ0FBQztRQUd4QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxLQUFLLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sS0FBSSxDQUFDO0lBRVgsS0FBSztRQUNILE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxNQUFNLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGO0FBRUQ7SUFJRSxZQUFZLEtBQUs7UUFGVixRQUFHLEdBQUcsWUFBWSxDQUFDO1FBR3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBVTtRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxLQUFLLEtBQUssTUFBTSxDQUFDLFlBQVksQ0FBQyxD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