aboutsummaryrefslogtreecommitdiffstats
path: root/src/ng/directive
AgeCommit message (Collapse)Author
2013-11-04style: remove wsIgor Minar
2013-10-31fix(ngEventDirectives): parse expression only once during compile phase.Tobias Bosch
2013-10-30chore($compile): remove special case for ngIf and ngRepeatBrian Ford
2013-10-30chore: move getBlockElements to Angular.jsBrian Ford
2013-10-30fix(ngIf): ngIf removes elements dynamically added to itBrian Ford
When using ngIf with ngInclude on the same element, ngIf previously did not remove elements added by ngInclude. Similarly, when using ngIfStart/End, ngIf will miss elements added between the start/end markers added after ngIf is linked. This commit changes the behavior of ngIf to add a comment node at the end of its elements such that elements between the starting comment and this ending comment are removed when ngIf's predicate does not hold.
2013-10-27docs(form): fix typoYuriy Bilogub
Close #4671
2013-10-26docs(ngForm): ensure correct attribute name in usage exampleDavid Bennett
Closes #4611
2013-10-25docs(ngIf): fix typoBalázs Suhajda
Closes #4512
2013-10-24docs(ngClass): fix typoSam Dornan
Closes #4471
2013-10-24docs(ngModelController): $parent can help isolate scope directivesbasarat
2013-10-24docs(select): fix typowiebl
Closes #4433
2013-10-24docs(ngBindHtml): add exampleNicolas Brugneaux
Closes #4427
2013-10-24docs(ngNonBindable): fix punctuationDave Peticolas
Closes #4424
2013-10-24docs(ngController): do not attach a controller twiceTyler McGinnis
A common mistake for beginners is to attach a controller in both the $routeProvider and also in the html document using the ng-controller directive. This change highlights this, to help prevent developers from doing so in the future. Closes #4409
2013-10-24fix(input): keep track of min/max attars on-the-flyDmitry Shirokov
Now input[type=button] keeps track of both min and max attrs even if they change over time.
2013-10-22style: make jshint happyVojta Jina
2013-10-22fix: don't inline css in csp mode.tigbro
Also add `angular-csp.css` to the resulting build.
2013-10-21docs(ngCsp): pretty-format docsIgor Minar
2013-10-18fix(csp): fix csp auto-detection and stylesheet injectionIgor Minar
When we refactored , we broke the csp mode because the previous implementation relied on the fact that it was ok to lazy initialize the .csp property, this is not the case any more. Besides, we need to know about csp mode during bootstrap and avoid injecting the stylesheet when csp is active, so I refactored the code to fix both issues. PR #4411 will follow up on this commit and add more improvements. Closes #917 Closes #2963 Closes #4394 Closes #4444 BREAKING CHANGE: triggering ngCsp directive via `ng:csp` attribute is not supported any more. Please use data-ng-csp instead.
2013-10-18docs: correct broken linksVojta Jina
This also contains some whitespace corrections by my editor.
2013-10-14docs: add missing priority documentation for structural directivesIgor Minar
2013-10-14docs(ngInit): fix typoTyler McGinnis
Closes #4384
2013-10-14docs(ngNonBindable): improve descriptionPete Bacon Darwin
Closes #4391
2013-10-14docs(booleanAttrs): improve grammar and clarityDave Peticolas
Closes #4392
2013-10-11fix(directives): correct priority of structural directivesIgor Minar
BREAKING CHANGE: the priority of ngRepeat, ngSwitchWhen, ngIf, ngInclude and ngView has changed. This could affect directives that explicitly specify their priority. In order to make ngRepeat, ngSwitchWhen, ngIf, ngInclude and ngView work together in all common scenarios their directives are being adjusted to achieve the following precendence: Directive | Old Priority | New Priority ============================================= ngRepeat | 1000 | 1000 --------------------------------------------- ngSwitchWhen | 500 | 800 --------------------------------------------- ngIf | 1000 | 600 --------------------------------------------- ngInclude/ngView | 1000 | 400
2013-10-11style: strip white space from filesIgor Minar
2013-10-10docs(ngInit): add note on best practicesBrian Ford
2013-10-09feat(ngRepeat): use block separator commentsjankuca
Issue: multi-elements ng-repeat (ng-repeat-start, ng-repeat-end) can contain elements with a trancluding directive. This directive changes content of the row (template) and ng-repeat does not work correctly (when removing/moving rows), because ng-repeat works with the original template (elements). This changes ng-repeat behavior to traverse the DOM to find current elements everytime we are moving/removing rows (if the template has multiple elements). Closes #3104
2013-10-07fix(input): `false` is no longer an empty value by defaultPete Bacon Darwin
`checkboxInputType` and `ngList` directives need to have special logic for whether they are empty or not. Previously this had been hard coded into their own directives or the `ngRequired` directive. This made it difficult to handle these special cases. This change factors out the question of whether an input is empty into a method `$isEmpty` on the `ngModelController`. The `ngRequired` directive now uses this method when testing for validity and directives, such as `checkbox` or `ngList` can override it to apply logic specific to their needs. Closes #3490, #3658, #2594
2013-10-07fix(*): protect calls to hasOwnProperty in public APIPeter Bacon Darwin
Objects received from outside AngularJS may have had their `hasOwnProperty` method overridden with something else. In cases where we can do this without incurring a performance penalty we call directly on Object.prototype.hasOwnProperty to ensure that we use the correct method. Also, we have some internal hash objects, where the keys for the map are provided from outside AngularJS. In such cases we either prevent `hasOwnProperty` from being used as a key or provide some other way of preventing our objects from having their `hasOwnProperty` overridden. BREAKING CHANGE: Inputs with name equal to "hasOwnProperty" are not allowed inside form or ngForm directives. Before, inputs whose name was "hasOwnProperty" were quietly ignored and not added to the scope. Now a badname exception is thrown. Using "hasOwnProperty" for an input name would be very unusual and bad practice. Either do not include such an input in a `form` or `ngForm` directive or change the name of the input. Closes #3331
2013-10-07style(select): fix semicolons and varsPeter Bacon Darwin
2013-10-07docs(ngModel): fix grammar and improve clarityDave Peticolas
Closes #4291
2013-10-07docs(ngValue): add docs for ngValue directiveBrian Ford
Closes #4267
2013-10-05docs(a): change model.$save() into something less deceptiveMichiel Staessen
Closes #4215
2013-10-05docs(ngList): improve grammar and clarityDave Peticolas
2013-10-03fix($compile): fix (reverse) directive postLink fn execution orderIgor Minar
previously the compile/link fns executed in this order controlled via priority: - CompilePriorityHigh, CompilePriorityMedium, CompilePriorityLow - PreLinkPriorityHigh, PreLinkPriorityMedium, PreLinkPriorityLow - link children - PostLinkPriorityHigh, PostLinkPriorityMedium, PostLinkPriorityLow This was changed to: - CompilePriorityHigh, CompilePriorityMedium, CompilePriorityLow - PreLinkPriorityHigh, PreLinkPriorityMedium, PreLinkPriorityLow - link children - PostLinkPriorityLow, PostLinkPriorityMedium , PostLinkPriorityHigh Using this order the child transclusion directive that gets replaced onto the current element get executed correctly (see issue #3558), and more generally, the order of execution of post linking function makes more sense. The incorrect order was an oversight that has gone unnoticed for many suns and moons. (FYI: postLink functions are the default linking functions) BREAKING CHANGE: the order of postLink fn is now mirror opposite of the order in which corresponding preLinking and compile functions execute. Very few directives in practice rely on order of postLinking function (unlike on the order of compile functions), so in the rare case of this change affecting an existing directive, it might be necessary to convert it to a preLinking function or give it negative priority (look at the diff of this commit to see how an internal attribute interpolation directive was adjusted). Closes #3558
2013-10-03docs(ngInclude): clarity, formattingDave Peticolas
Closes #4222
2013-10-03docs(ngClass): clarify the descriptionDave Peticolas
Closes #4220
2013-10-03docs(select): clarify usagegdennie
The wording seemed confusing and these adjustments seem to capture the intent with less turbulence. Closes #4257
2013-10-01refactor(select): simplify the ngOptions regular expressionStefan hr Berder
\w matches [a-zA-Z0-9_] and \d matches [0-9], using both in a character set is simply redundant. Closes #3903
2013-09-30fix(ngTransclude): detect ngTranslude usage without a transclusion directivejankuca
Closes #3759
2013-09-27docs(ngIf): formatting, clarityDave Peticolas
2013-09-27docs(ngController): fix grammarDave Peticolas
2013-09-27docs(ngCsp): fix grammarDave Peticolas
2013-09-27docs(dblClick): fix grammarDave Peticolas
2013-09-27docs(ngDisabled): clarifyDave Peticolas
2013-09-26feat(ngEventDirectives): add `ngCopy`, `ngCut`, and `ngPaste`Ben McCann
Closes #4172, #4170
2013-09-25docs(ngHref): fix formatting and clarifyDave Peticolas
Closes #4106
2013-09-25docs(ngShowHide): improve clarityDave Peticolas
Closes #4099
2013-09-25fix(ngRepeat): correctly track elements even when the collection is ↵jankuca
initially undefined Previously if the collection model was set to undefined on the first digest, the repeater would get confused and not use the correct tracking function for associating model with dom elements in the repeater. Closes #4145 Closes #3964