Home Reference Source Repository
import Shadow from 'f.lux/src/Shadow.js'
public class | source

Shadow

Direct Subclass:

CollectionShadow, IndexedShadow, IsolatedShadow, MapShadow, src/collection/PojoEndpointProperty.js~PojoEndpointShadow, TransientShadow, TransientsShadow

Indirect Subclass:

ArrayShadow

The base class for all shadow state properties. The api is purposefully spartan so as to not polute the namespace of shadow state objects. This class does provide implementations for the standard javascript methods toJSON() and toString(). toJson() is very useful in the javascript console to obtain the actual state being proxied by this shadow state property.

Each non-primitive shadow state property exposes four special, f.lux specific methods that are named so as to be unlikely to collide with normal method names:

  • _() - gets this Shadow object. This method may seem superflous but when using the @shadow decorator this allows property methods to be written to work when invoked through the shadow state property or directly using this within Property methods.
  • __() - gets the backing ShadowImpl instance for this shadow property
  • $() - gets the Access object for obtaining information about a property.
  • $$() - gets the Property managing this shadow state property.

See:

Constructor Summary

Public Constructor
public

constructor(impl: *)

Member Summary

Public Members
public

[_impl]: *

Method Summary

Public Methods
public

$(): Access

Gets the Access object for obtaining information about a property.

public

Gets the Property managing this shadow state property.

public

Gets the actual state property being proxied by this shadow state property.

public

toString(): *

Public Constructors

public constructor(impl: *) source

Params:

NameTypeAttributeDescription
impl *

Public Members

public [_impl]: * source

Public Methods

public $(): Access source

Gets the Access object for obtaining information about a property.

Return:

Access

public $$(): Property source

Gets the Property managing this shadow state property.

Return:

Property

public toJSON(): Object | Array source

Gets the actual state property being proxied by this shadow state property.

Note: this is the actual state so critical it is not mutated in any way.

Return:

Object | Array

public toString(): * source

Return:

*