Destroy representation scope before adding elements back into
the DOM; avoids having a momentary activation of watches and
listeners on those scopes before they are replaced with newly
compiled content for new scopes.
An mct-representation may have a refresh triggered either by
a key change or a domain object change; both will typically
happen in the same digest cycle. Track what prior state was
an abort refreshes if nothing will change.
Create new scopes on every changeTemplate request, even if
the same template is being viewed; presume that we want a
new instance of the same template. Avoids scope reuse for
cases such as switching from a plot of one object to a
plot of another object.
The event is already listened-for at the representation
level to trigger cleanup, including gestures, so the info gesture
does not need to listen for it as well.
Per code review feedback, nasa/openmctweb#222
Handle edge cases (e.g. directive priorities, race conditions)
to ensure that mct-representation and mct-include display correctly
when added to or removed from the DOM.
element.scope() may be undefined when wiring in the info
gesture, so check for that.
That this is sometimes undefined appears to be a consequence
of changes to mct-representation, but which changes influence
this are unclear. In any event, it appears that this cannot
be relied-upon per https://github.com/angular/angular.js/issues/9515
...of templateLinker into mct-representation. Not working currently
due to prevalence of mct-representation instances with transcluding
directives (hitting a multiple transclusion error.)
Remove usage of ng-include and template from mct-include for
compatibility with element-level transclusion. Has useful
side effect of pre-fetching templates and reducing watch
count.
...to add/remove conditionally depending on the existence of
certain templates.
Note that this currently breaks mct-include due to an incompatibility
between element transclusion and directive templates; see
https://github.com/angular/angular.js/issues/3368.
...from mct-include. Improves behavior of that directive and supports
testing of changes to remove whole elements when inapplicable,
nasa/openmctweb#195.
Specify path for uuid, making it available for any code that would require it,
without that code needing to know the path to it.
Fixes https://github.com/nasa/openmctweb/issues/211.
Ignore empty lines (plot lines with no data) when determining
domain extrema; avoids failure to draw multiple plot lines in
a telemetry panel, nasa/openmctweb#150.
Update field name in GenericSearchProvider to reflect changes
from nasa/openmctweb#193. Avoids exceptions on mutation.
Additionally, add test case exercising relevant code and verifying
that reindexing is scheduled upon mutation as expected.
Add spec coverage for ElasticSearchProvider. Also remove
unneeded guards for max number of results, as the aggregator
will always provide a max number of results.