@swim/constraint implements an incremental solver for systems of linear layout constraints. @swim/constraint is part of the @swim/ui framework.
For an npm-managed project,
npm install @swim/constraint to make it a dependency.
TypeScript sources will be installed into
node_modules/@swim/constraint/lib/main. And a pre-built UMD script can
be found in
Browser applications can load
swim-ui.js—which bundles the @swim/constraint
library—along with its
swim-core.js dependency, directly from the SwimOS CDN.
<!-- Development --> <script src="https://cdn.swimos.org/js/latest/swim-core.js"></script> <script src="https://cdn.swimos.org/js/latest/swim-ui.js"></script> <!-- Production --> <script src="https://cdn.swimos.org/js/latest/swim-core.min.js"></script> <script src="https://cdn.swimos.org/js/latest/swim-ui.min.js"></script>
swim-toolkit.js script may be loaded, along with its
swim-system.js dependency, from the SwimOS CDN. The
script bundles @swim/constraint together with all other
<!-- Development --> <script src="https://cdn.swimos.org/js/latest/swim-system.js"></script> <script src="https://cdn.swimos.org/js/latest/swim-toolkit.js"></script> <!-- Production --> <script src="https://cdn.swimos.org/js/latest/swim-system.min.js"></script> <script src="https://cdn.swimos.org/js/latest/swim-toolkit.min.js"></script>
@swim/constraint can be imported as an ES6 module from TypeScript and other ES6-compatible environments.
import * as constraint from "@swim/constraint";
@swim/constraint can also be used as a CommonJS module in Node.js applications.
var constraint = require("@swim/constraint");
When loaded by a web browser, the
swim-ui.js script adds all
@swim/constraint library exports to the global
swim namespace. The
swim-ui.js script requires that
swim-core.js has already been loaded.
swim-toolkit.js script also adds all @swim/constraint library
exports to the global
swim namespace, making it a drop-in replacement for
swim-constraint.js when additional @swim/toolkit
frameworks are needed.