openmct/platform/entanglement
Pete Richards 0d53898af9 Build refactor to webpack (#2139)
* Move to webpack build
* Use webpack for building openmct.  Move SCSS to one folder and load
all core css up front.  Remove bower, begin removing gulp in favor
of npm run.
* Uses eslint instead of jshint and jscs.  Merge style checking rules
into .eshintrc.js, carrying over core parts of crockford style and
our adaptations.  Current code base fails to pass the linter, want
to separate linter changes from fixes to linting rules.
* Support for Vue SFC with example
* Remove outdated examples
* Use HTML loader for html (supports relative imports of resources e.g.
images) and raw-loader for when javascript must be loaded as text.
2018-08-07 14:47:50 -07:00
..
src Build refactor to webpack (#2139) 2018-08-07 14:47:50 -07:00
test Build refactor to webpack (#2139) 2018-08-07 14:47:50 -07:00
bundle.js [Copyright] Update copyright year across platform code references 2018-05-14 15:46:17 -07:00
README.md Typo corrections, I avoided making changes to words that have regional spelling differences. 2016-09-03 09:16:54 -04:00

Entanglement

Entanglement is the process of moving, copying, and linking domain objects in such a way that their relationships are impossible to discern.

This bundle provides move, copy, and link functionality. Achieving a state of entanglement is left up to the end user.

Services implement logic

Each method (move, copy, link) is implemented as a service, and each service provides two functions: validate and perform.

validate(object, parentCandidate) returns true if the object can be move/copy/linked into the parentCandidate's composition.

perform(object, parentObject) move/copy/links the object into the parentObject's composition.

Actions implement user interactions

Actions are used to expose move/copy/link to the user. They prompt for input where necessary, and complete the actions.