CanJS.AMD 2.1.3

CanJS using RequireJS AMD Modules

CanJS is a MIT-licensed, client-side, JavaScript framework that makes building rich web applications easy. Use it because it’s: Smaller, Faster, Safer, Easier, Library-er.

CanJS’s core supports jQuery, Zepto, Dojo, YUI and Mootools.

Install-Package CanJS.AMD -Version 2.1.3
dotnet add package CanJS.AMD --version 2.1.3
<PackageReference Include="CanJS.AMD" Version="2.1.3" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CanJS.AMD --version 2.1.3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

2.1.3 ( Aug 25 2014 )
•change: IE 8+10 fixes
•change: makes sure can.compute.read can read a final can.route value
•change: Allows maps passed to can.Map's constructor
•change: Makes can.route.current is observable  
•change: component does not update scope on id, class, and data-view-id attribute changes
•change: Prevent 'leaking reads' on single bind computes
•change: can.Map constructor fails if passed another Map
•change: Incomplete documentation for can.List.prototype.filter
•change: can.Map method not become computable automatically
•change: can.route.current is not live-bindable
•change: setupSingleBindComputeHandlers leak temporary observables.
•change: can.compute.read should not call can.route
•change: Fix for #1132
•change: Fix for #1143
•change: Fixes compute.read with a Map wrapped in a compute
•change: Error when using a helper with 2 string arguments
•change: Simplifying and clarifying lazymap docs
•change: Documenting how to access Map properties containing a dot
•change: Fix the tabbing/spacing in the validation markdown files, and re-path th...
•change: Fix @typedef name to be dot-separated.
•change: Parse Error when a stache template contains SVG content
•change: test and fix #1079
•change: Fixes #1078 - add offset support to @index
•change: Fixes #1074 - Only call findAll once if argument is a deferred
•change: Document accessing attributes with dot in the name
•change: can.Construct passes original arguments to setup and fixes can.Model's setup accordingly
•change: Corrected pushstate tests and update can.test.route
•change: can.stache read function bug  
•change: Model.resource is not working with inherited classes
•change: Id and class attributes are not ignored in the route URL
•change: @index is not using offset param
•change: new Foo.List(Foo.findAll()) calls Foo.findAll twice  
•change: Store docs
•change: Multiple issues with Model
•change: can.LazyMap docs do not read clearly

2.1.2 ( Jun 16 2014 )
•change: Adds event target back for Map events
•change: Evaluate and cache text sections properly
•change: can.Map events Object missing target property
•change: Fix can.debounce and can.throttle context
•change: can.stache is returning incorrect values for DOM attributes
•change: Fixed incorrect scope for can/event's delegate and undelegate
•change: Warnings for map/define
•change: 1050 component tagnames
•change: Regression in component naming
•change: Model destroyed bug
•change: Remove NodeLists from Stache
•change: #1019 Unless does not live bind
•change: Making routes not greedily consume slashes by default
•change: Map define warn
•change: calling reverse on a model list breaks its "destroyed" bindings
•change: can/event delegate/undelegate aren't using the correct scope
•change: Codeblocks styling in COMPUTE-ATTR
•change: nested component within an #if is not live bound
•change: {{#unless}} does not live bind
•change: #716 can.Model now warns the developer when no static properties are specified  
•change: fixes map unbind bug
•change: 404 on can.view.Scope().readOptions docs
•change: Fix rendering of <col> inside <table> in templates.
•change: fix documentation for can.batch.stop
•change: can.stache performance
•change: Bug with conditionally nested components using stache
•change: can.batch documentation is wrong
•change: can.debounce keeps the context after being called the first time
•change: Dev warning when can.Model is extended without static properties.

2.1.1 ( May 21 2014 )
•change: 404 on define example
•change: Fixing define demo
•change: Fixing up component and scope docs
•change: Helpers are now passed into partials. Fixes #791.
•change: can.mustache: {{else}} does not work for {{#unless}} block
•change: Define demo broken in chrome
•change: stache: Custom elements in IE8 contain a colon
•change: Adding ability to mix can.event into can.Controls safely
•change: Mixing in can/event conflicts with can.Control-based classes
•change: added can parameter
•change: adding tests for can.route.map
•change: Scope docs
•change: Component warn
•change: add warning when component attribute is ignored
•change: stache: Using {{else}} inside of an attribute
•change: Misspelling in stache docs - differences from mustache
•change: Upgrading html5shiv to 3.7.2
•change: Stache conditionally nested components
•change: Bug with conditionally nested components using stache
•change: Bug with stache using view/bindings
•change: Wrong context in serialize of can.map.define
•change: Contributing clarification
•change: can.Mustache: using local helpers inside partials

2.1.0 ( May 05 2014 )
•change: fixes IE8
•change: IE fixes
•change: stache issue with steal and single quotes
•change: Update component docs about passing in data via attributes
•change: can.Mustache, can.EJS and can.view.mustache, can.view.ejs are depreicated
•change: Finalize can.Map.define docs
•change: Warning not using extend.
•change: Adding guide for developing plugins
•change: List promise documentation.
•change: Mustache dev logging
•change: can.Map.define
•change: Makes can-value and can-EVENT work with {}
•change: Fixes bugs with custom self-closing tags and empty custom tags.
•change: {} works with can-value and can-click
•change: Stache doesn't register correctly with steal
•change: can.Mustache is converting a can.Model to a can.Map
•change: can-value handling null in addition to undefined for select elements
•change: can.view.live docs
•change: Updates to recipes page
•change: can.stache using ^ inside a tag throws an exception
•change: Fix implementation of ./
•change: can.stache won't render if self-closing content tag is used
•change: Add "./" to mustache to denote selecting a property from current scope
•change: can/event
•change: Subclassed Model.List should inherit from their parent Model.List
•change: Docco inline documentation
•change: Adds computed attributes for can.List instances
•change: Emit events for can.List.prototype.reverse
•change: Fix inverse ^ to be able to use {{else}}
•change: Adding test for #each with child sections
•change: Remove all references from Model.List on model destroy.
•change: Test for Mustache if sections removing all content
•change: Update can.fixture request data with id
•change: Settable can.computes
•change: can.Map.prototype.define
•change: batchNum issues
•change: Change syntax for passing in template objects to Components to use  {}  
•change: changing cross-binding comparison from === to ==
•change: can-value when cross-bound with input value using === comparison
•change: Restful behavior not fully implemented in can.fixture.store.findOne
•change: Fix for calling removeAttr with number type (on lists)
•change: Bug in log() method in can.view.Mustache
•change: Added delegate/undelegate fallbacks to bind/unbind and fixed broken Zepto/Dojo delegate implementations
•change: can.route crossbind to can.Map
•change: Inverse ^if doesn't work correctly with an else
•change: #each with nested #if not working as expected
•change: Mustache live binding throws "Cannot read property 'length' of undefined" in can.view.elements.after  
•change: can.Model.List should extend an existing List
•change: Dev warning when mustache doesn't find a helper
•change: Recursive mustache template ends with "Maximum call stack size exceeded"
•change: Dev warning when mustache doesn't find a variable
•change: can.Components ignores attributes containing "id"
•change: Adds a can.List promise plugin.
•change: can.List.filter
•change: Content not removed when it should be
•change: defining 'can' missing. setting it as a dependancy
•change: Calling .fn() without arguments should forward scope by default
•change: Path accessor to prevent walking up the scope
•change: Observe attributes for #637
•change: Attributes event API
•change: can.view.tag and can.view.attr
•change: 2.1 API Changes
•change: can.view returns a renderer function that returns a string
•change: Added parseModels and parseModel to fix duplicate instances being created after create an update.
•change: Added test to issue #560
•change: can.Model#save: values for attributes not found in response are replaced with their defaults
•change: Select with multiple-selection for can.view.bindings (i.e. two-way binding via can-value)
•change: Update on can.Model's nested object throws error on recursive mustache template
•change: can.Model: one URL property for REST resource
•change: Adding wildcards to attributes plugin
•change: Inconsistency when passing functions (e.g. descendants of can.Construct) to helpers.
•change: Mustache - TypeError: Cannot read property 'childNodes' of null  
•change: Make can.extend's deep copy clone CanJS classes

2.0.7 ( Mar 26 2014 )
•change: Configuration for AMD development build
•change: 2.0.6 dev errors
•change: AMD dev build

2.0.6 ( Mar 14 2014 )
•change: Allow type inference for fixture parameters.
•change: Updating sourceURL syntax to use # instead of @
•change: Changing typeof check to a check for apply (#681)
•change: Nested component tags of same type throws an error
•change: #773: Fixing date compare logic in can.Object.same.
•change: Enable removeAttr on Map keys with dot
•change: can.Object.same: compare logic is incorrect when it comes to dates
•change: scanner.js error: Using //@ to indicate sourceURL pragmas is deprecated
•change: Bug in sample code on http://canjs.com/ homepage
•change: #713 cleanup can.Control, fixup contributing guide
•change: can.computes that return nulls can be used with #each
•change: can.fixture no longer says id 1 and id "1" are the same
•change: Fixes  updated  callback to can.compute's on/off to simply need to be called.
•change: compute signature not working
•change: 2.0.5 idOrUrl require.toUrl() change documented
•change: can.view Breaking backward compatibility in v2.0.5 amd
•change: confusing example for can.Control template data passing
•change: Canjs not working in default android browser.
•change: sourceURL comment in Scanner.prototype.scan() cause error on IE8

2.0.5 ( Feb 04 2014 )
•change: fixes looking up @ and sets links to docco
•change: Fixing truncation of special attribute (src and style) values containing '='
•change: Fixes IE in all browsers for all libraries
•change: Fixes can.Map::compute to handle deeply nested properties
•change: Live binding attribute in a truthy section does not work
•change: Pluginify tests
•change: Prevents attributes like can-click and can-value from being converted to scope properties
•change: JSHints CanJS
•change: Live binding attributes with no '=' does not work
•change: Fixed the pushstate #652 test to ensure that it should pass in all libraries and phantomjs
•change: Ignore attributes fix
•change: Changing can.Control.route to match pushstate (#612)
•change: Rewrote the pushstate #652 test for stability purposes
•change: Fix for incorrect ignore attributes pattern
•change: Development mode builds
•change: Migrated the fix for can-value with radio buttons from bindings to elements
•change: Fixing the test for pushstate #652
•change: Moving can-value test and fixing IE7 radio button bug
•change: #686 - Fix document.contains issue on Android
•change: Android - document.contains
•change: can.List.Map documentation
•change: Suggested fix to broken attr behaviour
•change: Fixes a memory leak with live binding.
•change: Unexpected behaviour while using a Map
•change: Live-Binding memory leak
•change: Unescaped attributes
•change: scope as Map constructors do not respect default "@" values
•change: no doubled history states
•change: Fixing variable format so it doesn't break Steal build
•change: routed links must descend from pushstate root
•change: util/zepto doesn't use $.fn.remove()
•change: template files relative to requirejs baseUrl
•change: exclude actual root from deparam
•change: Partials within #each not working.
•change: Undefined compute live bind fixes
•change: 2.0.4 Live @index still not working correctly
•change: Broken live-binding with can.compute if compute is updated with a can.Construct
•change: can.Mustache / can.view.Scope: Can't access static properties from an object's constructor.
•change: #each on undefined attributes not working anymore in 2.0.4
•change: can-value in checkboxes in IE7
•change: can.computes with can.Map.prototype.attr() do not set up bindings
•change: Changing can.Control.route selectors to match pushstate.js

2.0.4 ( Dec 23 2013 )        
◾change: 2.0.4 test fixes
◾change: Makes live safeStrings work
◾change: Working @index in mustache templates
◾change: Fixes nested components and <content> tags.
◾change: Fixes a problem with double inserted events
◾change: benchmark.js and minor performance improvements
◾change: Node lists rewrite
◾change: temporary fixed mustache index calculation with simple can.List when remove first item of list
◾change: Serialization
◾change: can.Component ATTR value is undefined when passing a function as a scope
◾change: restore will not remove properties that were added since the last backup
◾change: can.Mustache.safestring does not work with computed properties
◾change: Items pushed on lists don't get removed from the DOM in some cases
◾change: Functions globally defined when it shouldn't be
◾change: undefined list passed to {{#each}}
◾change: Added test for inserted event bug (live binding block)
◾change: Support Offline Testing
◾change: When using certain html-comments, can.view.Scanner does not recognize them correctly
◾change: teardownMap slows perfomance drastically
◾change: test for component content extension stack overflow bug
◾change: Split element classnames fails with {{#if}}
◾change: fixed an error that is caused by the timeout firing after the element has been removed from the DOM
◾change: Please add trailing slash support for can.route.pushstate
◾change: Overwrite can.Map.List.prototype.serialize to avoid infinite loops
◾change: Iterating over component data not as expected
◾change: can-value shows "undefined" if bound to undefined value
◾change: Maximum Call Stack Exceeded When Destroying a nested model
◾change: Individual test pages should run in CI as well

2.0.3 ( Nov 26 2013 )
◾change: fixes #577
◾change: Text live binding remains bound
◾change: fixes for #575 - non-component custom tags
◾change: Non component custom tag problems.
◾change: fixes for jQuery's inserted event and some quick inserted helpers
◾change: Component inserted event doesn't work with jQuery 1.10
◾change: fixes #568 and makes nulls render to empty string
◾change: Mustache loops do not print 0.
◾change: Observe builder update
◾change: Providing a can.Map constructor function to a component's scope does not work.
◾change: 552 index calculation
◾change: @index is not calculated correctly when there are identical elements in the list
◾change: Inside the eventHandler this.scope is not set (as it's called on the scope itself)
◾change: Bower support, multiple jQuery versions

2.0.2 ( Nov 14 2013 )
◾change: cloning setter comptues
◾change: Event listeners leak in 2.0.1
◾change: can.VERSION for 2.0.1 says @EDGE rather than 2.0.1
◾change: 'key' property breaks mustache helpers
◾change: component does not respect can.compute passed via attributes
◾change: Wrapping can.compute in can.Map breaks live-binding

2.0.1 ( Nov 12 2013 )
◾change: Fixes #538 helpers aren't called is data passed to the template happens ...
◾change: Update included plugins and release tasks
◾change: mustache: 'with' string is interpreted as with helper keyword
◾change: can.Component two way binding issues
◾change: New lines are not handled properly in special attributes
◾change: can.Control: {document} events are not working
◾change: "{document} body click" breaks in latest
◾change: pushstate() and preventDefault() were not working on default route becau...
◾change: Make $#domManip patch jq2.0-compatible
◾change: broken livebinding after replace can.Map property or remove property
◾change: fixes a problem with each not working if the whole list is replaced
◾change: can.Map stack exceeded on circular data structures
◾change: Fixes #512 #513, sees the glorious return of can.camelize and his trusty sidekick, can.hyphenate
◾change: List.join is not compute-able
◾change: Fix to multiple tags not necessarily having the right context. Close #515
◾change: avoids jQuery's event system when binding on observes which fixes #280
◾change: Implement can.Mustache.safeString
◾change: can.Component helpers context issue
◾change: can.camelize
◾change: can.Component template attributes name case
◾change: Makes attribute arguments passed to a component two way binding
◾change: Fix Model.List.prototype.findAll() in IE8.
◾change: Return a new can.compute every time (new can.view.Scope()).compute() is called
◾change: Mustache and EJS issues with attributes and truthy blocks
◾change: Handlebars {{#if}} losing scope of var
◾change: can.Model.List() updates its length after destoy() of one of its models only if it has bindings
◾change: can.Mustache doesn't support SafeString
◾change: can.Mustache: inconsistent behavior when updating nested attributes of an Observe
◾change: Support Handlebars @key and @index directives
◾change: Accessing a parent array property from within mustche
◾change: can.Observe binds for nested object. First time event trigger is only on top level object instead of nested one.

2.0.0 ( Oct 17 2013 )
THERE ARE BREAKING CHANGES
A MIGRATION GUIDE IS AT: http://canjs.com/guides/migrating.html

change: Replacing lists live-binding
change: Fix destroy params
change: Special attribute binding
change: Fix Mustache binding lists in helpers
change: Certain HTML attributes need special live-binding
change: Destroy templates and attributes.
change: Fix some typo's in the documentation.
change: attr() not working in some cases in IE9
change: docs update: can.Object dependency for can.fixture
change: View renderer functions don't work with Deferreds
change: Issue: can.view.ejs(str) and can.view.ejs(id, str) return different responses
change: can.Mustache: #if sections are rendered twice when activated from live-binding
change: can.route.ready should not be called automatically
change: fixed issue #470 can.route default values are not working
change: can.route.ready called multiple times
change: Mustache two way helpers don't work as documented
change: Can't 2-way bind Array
change: Bower component does not work with steal
change: Live Binding Broken with Models with Nested Sub-models
change: String parameter not working as expected for: jQuery.fn.control / jQuery.fn.controls
change: error passing can.Observe.List to custom Mustache element helper
change: Wrong variable name in the Guide.
change: Model.destroy request params
change: Fixing can.ajax missing test for error handler with mootools
change: Fixing error that occurs when an item in an Observe.List contains a comp...
change: Observe#on
change: Array is skipped on serialize
change: can.Mustache live-binding on can.route attributes
change: create can.Component for custom tags
change: Feature/route to string
change: Default can.route.ready to false
change: Attributes automatic conversion to Map/Model specified type
change: can.route.pushstate mishandles hash fragments
change: Needed host check for pushstate.js
change: Support for rendering document fragments (returned from the renderer function) in the templates
change: Model.save: handle response data or return data in save callback
change: AMD Consistency
change: Extensionless views fail
change: can.Model.findAll promotes usage of XSS attack vector
change: Allow context change after element has been rendered
change: Make it easier to setup 2-way-binding and other interesting behaviors
change: Accessing attributes in Model destroy
change: mustache: support for backtrack path
change: Live-bound dynamic attributes don't get updated properly if they don't exist on initial execution
change: The can.Model.models arrayName should be configurable like observable's 'id' property
change: can.observe.delegate fails on compound selectors with wildcards

Dependencies

This package has no dependencies.

Version History

Version Downloads Last updated
2.1.3 952 11/5/2014
2.0.5 709 2/4/2014
2.0.4 389 12/28/2013
2.0.2 489 11/15/2013
2.0.1 385 11/12/2013
2.0.0 449 10/17/2013
1.1.8 405 9/27/2013
1.1.7 461 7/30/2013
1.1.6.1 455 6/6/2013
1.1.6 430 5/30/2013
1.1.5 452 3/26/2013
1.1.4.1 516 2/25/2013
1.1.4 447 2/22/2013