Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

angular-scenario

Package Overview
Dependencies
Maintainers
2
Versions
99
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular-scenario - npm Package Versions

1
810

1.3.11

Diff

Changelog

Source

1.3.11 spiffy-manatee (2015-01-26)

Bug Fixes

  • $location: don't rewrite when link is shift-clicked (939ca37c, #9904, #9906)
  • htmlAnchorDirective:
    • remove "element !== target element" check (779e3f6b, #10866)
    • don't add event listener if replaced, ignore event if target is different element (837a0775, #4262, #10849)

<a name="1.4.0-beta.1"></a>

angularcore
published 1.4.0-beta.2 •

Changelog

Source

1.4.0-beta.2 holographic-rooster (2015-01-26)

Bug Fixes

Breaking Changes

  • filterFilter: due to cea8e751, Previously, the filter was not applied if used with a non array. Now, it throws an error. This can be worked around by converting an object to an array, using a filter such as https://github.com/petebacondarwin/angular-toArrayFilter

Closes #9992 Closes #10352

<a name="1.3.11"></a>

angularcore
published 1.4.0-beta.1 •

Changelog

Source

1.4.0-beta.1 trepidatious-salamander (2015-01-20)

Bug Fixes

Features

Breaking Changes

Previously, the order of items when using ngRepeat to iterate over object properties was guaranteed to be consistent by sorting the keys into alphabetic order.

Now, the order of the items is browser dependent based on the order returned from iterating over the object using the for key in obj syntax.

It seems that browsers generally follow the strategy of providing keys in the order in which they were defined, although there are exceptions when keys are deleted and reinstated. See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete#Cross-browser_issues

The best approach is to convert Objects into Arrays by a filter such as https://github.com/petebacondarwin/angular-toArrayFilter or some other mechanism, and then sort them manually in the order you need.

Closes #6210 Closes #10538

<a name="1.3.10"></a>

angularcore
published 1.3.10 •

Changelog

Source

1.3.10 heliotropic-sundial (2015-01-20)

Bug Fixes

<a name="1.4.0-beta.0"></a>

angularcore
published 1.3.9 •

Changelog

Source

1.3.9 multidimensional-awareness (2015-01-13)

Bug Fixes

  • $parse: allow use of locals in assignments (86900814)
  • filterFilter: use isArray() to determine array type (d4b60ada, #10621)

Features

Performance Improvements

<a name="1.3.8"></a>

angularcore
published 1.4.0-beta.0 •

Changelog

Source

1.4.0-beta.0 photonic-umbrakinesis (2015-01-13)

Bug Fixes

Features

Performance Improvements

Breaking Changes

  • limitTo: due to a3c3bf33, limitTo changed behavior when limit value is invalid. Instead of returning empty object/array it returns unchanged input.

  • ngOptions: due to 7fda214c,

When using ngOptions: the directive applies a surrogate key as the value of the <option> element. This commit changes the actual string used as the surrogate key. We now store a string that is computed by calling hashKey on the item in the options collection; previously it was the index or key of the item in the collection.

(This is in keeping with the way that the unknown option value is represented in the select directive.)

Before you might have seen:

<select ng-model="x" ng-option="i in items">
  <option value="1">a</option>
  <option value="2">b</option>
  <option value="3">c</option>
  <option value="4">d</option>
</select>

Now it will be something like:

<select ng-model="x" ng-option="i in items">
  <option value="string:a">a</option>
  <option value="string:b">b</option>
  <option value="string:c">c</option>
  <option value="string:d">d</option>
</select>

If your application code relied on this value, which it shouldn't, then you will need to modify your application to accommodate this. You may find that you can use the track by feature of ngOptions as this provides the ability to specify the key that is stored.

When iterating over an object's properties using the (key, value) in obj syntax the order of the elements used to be sorted alphabetically. This was an artificial attempt to create a deterministic ordering since browsers don't guarantee the order. But in practice this is not what people want and so this change iterates over properties in the order they are returned by Object.keys(obj), which is almost always the order in which the properties were defined.

setting the ngOptions attribute expression after the element is compiled, will no longer trigger the ngOptions behavior. This worked previously because the ngOptions logic was part of the select directive, while it is now implemented in the ngOptions directive itself.

the select directive will now use strict comparison of the ngModel scope value against option values to determine which option is selected. This means Number scope values will not be matched against numeric option strings. In AngularJS 1.3.x, setting scope.x = 200 would select the option with the value 200 in the following select:

<select ng-model="x">
  <option value="100">100</option>
  <option value="200">200</option>
</select>

In AngularJS 1.4.x, the 'unknown option' will be selected. To remedy this, you can simply initialize the model as a string: scope.x = '200', or if you want to keep the model as a Number, you can do the conversion via $formatters and $parsers on ngModel:

ngModelCtrl.$parsers.push(function(value) {
  return parseInt(value, 10); // Convert option value to number
});

ngModelCtrl.$formatters.push(function(value) {
  return value.toString(); // Convert scope value to string
});

<a name="1.3.9"></a>

angularcore
published 1.3.8 •

Changelog

Source

1.3.8 prophetic-narwhal (2014-12-19)

Bug Fixes

Performance Improvements

  • limitTo: replace for loop with slice (cd77c089)

<a name="1.3.7"></a>

angularcore
published 1.2.28 •

Changelog

Source

1.2.28 finnish-disembarkation (2014-12-15)

Bug Fixes

<a name="1.3.6"></a>

angularcore
published 1.3.7 •

Changelog

Source

1.3.7 leaky-obstruction (2014-12-15)

Bug Fixes

  • $compile: use createMap() for $$observe listeners when initialized from attr interpolation (8e28bb4c)
  • $http:
  • $parse: a chain of field accessors should use a single getterFn (c90ad968)
  • ngRepeat: allow extra whitespaces in (key,value) part of micro-syntax (ef640cbc, #6827, #6833)
  • orderBy: do not try to call valueOf/toString on null (a097aa95, #10385, #10386)

Features

Performance Improvements

  • $compile: only re-$interpolate attribute values at link time if changed since compile (9ae0c01c)

Breaking Changes

Previously, if either value being compared in the orderBy comparator was null or undefined, the order would, incorrectly, not change. Now, this order behaves more like Array.prototype.sort, which by default pushes null behind objects, due to n occurring after [ (the first characters of their stringified forms) in ASCII / Unicode. If toString is customized, or does not exist, the behavior is undefined.

<a name="1.2.28"></a>

angularcore
published 1.3.6 •

Changelog

Source

1.3.6 robofunky-danceblaster (2014-12-08)

Bug Fixes

  • $browser: prevent infinite digests when clearing the hash of a url (10ac5948, #9629, #9635, #10228, #10308)
  • $http: preserve config object when resolving from cache (facfec98, #9004, #9030)
  • $location:
  • $parse:
    • fix operators associativity (ed1243ff)
    • follow JavaScript context for unbound functions (429938da)
  • filterFilter:
  • inputs: ignoring input events in IE caused by placeholder changes or focus/blur on inputs with placeholders (55d9db56, #9265)
  • linky: make urls starting with www. links, like markdown (915a891a, #10290)
  • ngAnimate: do not use jQuery class API (40a537c2, #10024, #10329)
  • ngMock: allow numeric timeouts in $httpBackend mock (acb066e8, #4891)
  • ngModel:
    • always use the most recent viewValue for validation (2d6a0a1d, #10126, #10299)
    • fixing many keys incorrectly marking inputs as dirty (d21dff21)
  • ngSanitize: exclude smart quotes at the end of the link (7c6be43e, #7307)
  • numberFilter: numbers rounding to zero shouldn't be negative (96c61fe7, #10278)
  • orderBy:
    • make object-to-primitive behavior work for objects with null prototype (3aa57528)
    • maintain order in array of objects when predicate is not provided (8bfeddb5, #9566, #9747, #10311)

Features

  • $$jqLite: export jqLite as a private service (f2e7f875)
  • $injector: print caller name in "unknown provider" errors (when available) (013b522c, #8135, #9721)
  • jsonFilter: add optional arg to define custom indentation (1191edba, #9771)
  • ngAria: bind keypress on ng-click w/ option (5481e2cf, #10288)

Breaking Changes

We no longer throw an ihshprfx error if the URL after the base path contains only a hash fragment. Previously, if the base URL was http://abc.com/base/ and the hashPrefix is ! then trying to parse http://abc.com/base/#some-fragment would have thrown an error. Now we simply assume it is a normal fragment and that the path is empty, resulting $location.absUrl() === "http://abc.com/base/#!/#some-fragment".

This should not break any applications, but you can no longer rely on receiving the ihshprfx error for paths that have the syntax above. It is actually more similar to what currently happens for invalid extra paths anyway: If the base URL and hashPrfix are set up as above, then http://abc.com/base/other/path does not throw an error but just ignores the extra path: http://abc.com/base.

  • filterFilter: due to a75537d4,

    Named properties in the expression object will only match against properties on the same level. Previously, named string properties would match against properties on the same level or deeper.

    Before:

    arr = filterFilter([{level1: {level2: 'test'}}], {level1: 'test'});   // arr.length -> 1
    

    After:

    arr = filterFilter([{level1: {level2: 'test'}}], {level1: 'test'});   // arr.length -> 0
    

    In order to match deeper nested properties, you have to either match the depth level of the property or use the special $ key (which still matches properties on the same level or deeper). E.g.:

    // Both examples below have `arr.length === 1`
    arr = filterFilter([{level1: {level2: 'test'}}], {level1: {level2: 'test'}});
    arr = filterFilter([{level1: {level2: 'test'}}], {$: 'test'});
    

<a name="1.3.5"></a>

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc