Konstantin Stepanov
e1e7aca9a6
fix($locationProvider) hashPrefix's getter returned html5Mode + doc fix
2012-01-17 11:21:20 -08:00
Igor Minar
92af30ce6e
docs(*): various doc fixes
2012-01-17 09:49:37 -08:00
Vojta Jina
c49b8a2db5
fix($location): do not $digest if browser's url change fired within $apply/$digest
...
Chrome (probably other browsers as well) fires 'hashchange' event synchronously, so if you change raw location from within $apply/$digest, we don't want to $apply twice. (It would throw an exception)
2012-01-14 11:23:12 -08:00
Igor Minar
b7f4d8c3c3
fix($http): anonnymous response interceptors should be treated as factories
2012-01-13 14:28:20 -08:00
Igor Minar
939c8e8fac
docs($http, $httpBackend): docs docs docs
2012-01-13 14:28:20 -08:00
Igor Minar
46691c2721
fix($http): remove support for PATCH + better whenXXX, expectXXX api
...
- there are too many unknowns about PATCH, so I'm dropping its support until we know that this is actually useful
- expectGET, expectHEAD and expectJSON (and the same for whenXXX) should not require response data to be specified
2012-01-13 13:53:07 -08:00
Vojta Jina
15fd735793
refactor($autoScroll): rename to $anchorScroll and allow disabling auto scrolling (links)
...
Now, that we have autoscroll attribute on ng:include, there is no reason to disable the service completely, so $anchorScrollProvider.disableAutoScrolling() means it won't be scrolling when $location.hash() changes.
And then, it's not $autoScroll at all, it actually scrolls to anchor when it's called, so I renamed
it to $anchorScroll.
2012-01-13 01:07:12 -08:00
Vojta Jina
249c89c091
fix($autoScroll): scroll even if $location is in html5 mode
...
+ use autoscroll in docs (ng:include)
2012-01-13 01:01:26 -08:00
Misko Hevery
d648d709f3
refactor(module): strict separation between module-config / app-runtime
2012-01-12 13:40:07 -08:00
Igor Minar
7146f70636
fix($httpBackend): fix for jsonp requests
2012-01-09 14:38:32 -08:00
Igor Minar
b8960c3710
chore($http): small $http fixes
2012-01-09 13:17:48 -08:00
Igor Minar
23f8da7cbb
feat($http): expose req/resp headers to transform fns
2012-01-09 13:17:48 -08:00
Igor Minar
a13b5ed3bc
fix($http): fix and cleanup $http and friends
...
$http:
- use promises internally
- get rid of XhrFuture that was previously used internally
- get rid of $browser.defer calls for async stuff (serving from cache),
promises will take care of asynchronicity
- fix transformation bugs (when caching requested + multiple request
pending + error is returned)
- get rid of native header parsing and instead just lazily parse the
header string
$httpBackend:
- don't return raw/mock XMLHttpRequest object (we don't use it for
anything anymore)
- call the callback with response headers string
mock $httpBackend:
- unify response api for expect and when
- call the callback with response headers string
- changed the expect/when failure error message so that EXPECTED and GOT
values are aligned
Conflicts:
src/service/http.js
test/service/compilerSpec.js
test/service/httpSpec.js
2012-01-09 13:17:48 -08:00
Vojta Jina
f2119c7524
fix($httpBackend): respond 200/404 when on file protocol (fix protocol parsing)
2012-01-06 19:20:29 -08:00
Igor Minar
0bf611087b
feat(scope): throw exception when recursive $apply
2012-01-06 12:19:39 -08:00
Igor Minar
9632f5c1c7
style(q): rename src/Deferred.js to src/service/q.js
2012-01-03 17:48:09 -08:00
Mark Hansen
50eb7f15b8
docs(scope): fix typo $digest -> $watch
2012-01-03 15:01:34 -08:00
Sean Gilligan
212a6ff29a
docs(resource): fix params for non-get actions
2012-01-03 14:57:38 -08:00
Igor Minar
c28662d28d
fix(filter): remove the $ prefix from filter service ids
2011-12-07 13:07:19 -08:00
Igor Minar
fd38655e6c
fix(): use angular.callbacks namespace for jsonp callbacks
...
Previously we used to put callbacks on the window object, but that
causes problems on IE8 where it is not possible to delete properties
from the window object
2011-12-07 07:54:09 -08:00
Vojta Jina
b9001e9147
fix(route): $destroy scope after update and reload
...
When we update route (changing only search param, no route reload) and then reload (change to different
route), it did not $destroy last scope.
2011-12-06 13:35:05 -08:00
Igor Minar
163e05ed36
feat($http): allow interceptors to be services
2011-12-05 23:53:26 -08:00
Igor Minar
44b2f44f93
fix($resource): forwardport exposing headers from 0.9.19
2011-12-01 16:20:08 -05:00
Igor Minar
baa7af0df0
docs($location): add docs for the $location.search setter
2011-11-30 14:49:36 -05:00
Misko Hevery
0e1fa2aefe
feat($interpolate): string interpolation function
2011-11-30 14:49:36 -05:00
Igor Minar
3d0ce0ebe9
feat($location): name the watch function to ease debugging
2011-11-30 14:49:36 -05:00
Igor Minar
b00da987a9
scope($digest): add new&old val to the infinite $digest log
2011-11-30 14:49:35 -05:00
Igor Minar
188bdf7768
feat($http): add response interceptors
2011-11-30 14:49:35 -05:00
Igor Minar
dbd880cc0a
feat($http): add promise support
...
quite messy, some tests are missing, contains an experimental jasmine DI support)
2011-11-30 14:49:35 -05:00
Igor Minar
78b6e8a446
feat($parse): add support for transparent evaluation of Promises
...
Parser now builds expressions that can detect promises and transparently
evaluate them to undefined or the promise value.
If promiseA is resolved with value 'A', then {{promiseA}} evals to 'A';
If promiseA is unresolved, then {{promiseA}} evals to undefined;
Following invocations are supported:
- {{promise}}
- {{promise.futureProp}}
- {{[promise][0]}}
- {{object.promise}}
- {{object[promise]}}
- {{array[promise]}}
- {{fn(promise)}}
- combinations of the above
2011-11-30 14:49:35 -05:00
Igor Minar
1cdfa3b960
feat(deferreds/promises): Q-like deferred/promise implementation with a ton of specs
2011-11-30 14:49:03 -05:00
Vojta Jina
92995bbce9
fix($http): default json transformation should not crash on angular template
...
The way we determine whether it's json is lame anyway. We need to change that.
We should probably check the content type header...
2011-11-30 11:17:25 -05:00
Vojta Jina
b9707d910e
style(): get rid off some jsl warnings
2011-11-30 11:17:25 -05:00
Vojta Jina
5bbd64ac65
feat($http): allow passing custom cache instance per request
...
You can still use cache: true, which will use $http's default cache.
2011-11-30 11:17:25 -05:00
Vojta Jina
caeb1bf899
feat($httpBackend): fix 0 status code when "file" protocol
...
Browsers return always 0 status code for "file" protocol, so we convert them into 200/404.
2011-11-30 11:17:24 -05:00
Vojta Jina
7b705df2b7
feat($http): broadcast $http.request event
2011-11-30 11:17:23 -05:00
Vojta Jina
e3e2e4436e
fix($http): add .send() alias for .retry() to get better stack trace on error
2011-11-30 11:17:22 -05:00
Vojta Jina
972c3e9be0
refactor($http): change callback matching mechanism
2011-11-30 11:17:22 -05:00
Vojta Jina
feacf608ee
fix($resource): to work with $http, $httpBackend services
...
Breaks Disabling $resource caching for the moment.
2011-11-30 11:17:22 -05:00
Vojta Jina
fe633dd0cf
fix($http): allow multiple json vulnerability prefixes
...
We strip out both:
)]}',
)]}'
2011-11-30 11:17:22 -05:00
Vojta Jina
fdcc2dbfd3
feat($http): expose pendingRequests and configuration object
...
- $http.pendingRequests is now an array of pending requests
- each request (its future object) has public property configuration
2011-11-30 11:17:22 -05:00
Vojta Jina
5ad0c7d0e4
feat($httpBackend): extract $browser.xhr into separate service
...
- remove whole $browser.xhr stuff
- remove whole mock $browser.xhr stuff
- add $httpBackend service + migrate unit tests from $browser
- add temporary API to access $browser's outstandingRequests count
2011-11-30 11:17:22 -05:00
Vojta Jina
4d2d70e7fb
feat($templateCache): add $templateCache - shared by ng:include, ng:view
2011-11-30 11:17:21 -05:00
Vojta Jina
cd28a2e952
feat(mocks.$httpBackend): add $httpBackend mock
...
$httpBackend mock allows:
- expecting (asserting) requests
- stubbing (responding without asserting)
Add empty $httpBackend service (currently just wrapper for $browser.xhr)
2011-11-30 11:12:14 -05:00
Vojta Jina
59adadca08
feat($http): new $http service, removing $xhr.*
...
Features:
- aborting requests
- more flexible callbacks (per status code)
- custom request headers (per request)
- access to response headers
- custom transform functions (both request, response)
- caching
- shortcut methods (get, head, post, put, delete, patch, jsonp)
- exposing pendingCount()
- setting timeout
Breaks Renaming $xhr to $http
Breaks Takes one parameter now - configuration object
Breaks $xhr.cache removed - use configuration cache: true instead
Breaks $xhr.error, $xhr.bulk removed
Breaks Callback functions get parameters: response, status, headers
Closes #38
Closes #80
Closes #180
Closes #299
Closes #342
Closes #395
Closes #413
Closes #414
Closes #507
2011-11-30 11:12:14 -05:00
Igor Minar
497839f583
feat($cacheFactory): add general purpose $cacheFactory service
2011-11-30 11:03:42 -05:00
Vojta Jina
5487bdb3d1
feat($browser.xhr): add timeout option to abort request
...
Timeouted request responds internal status code -1, which should be normalized
into 0 by $xhr.
2011-11-30 11:03:42 -05:00
Vojta Jina
3ae3ccf3da
fix($browser.xhr): fix IE6, IE7 bug - sync xhr when serving from cache
...
IE6, IE7 is sync when serving content from cache.
We want consistent api, so we have to use setTimeout to make it async.
2011-11-30 11:03:42 -05:00
Vojta Jina
e9b57f9df8
fix($browser.xhr): respond with internal -2 status on jsonp error
...
If jsonp is not successfull, we return internal status -2.
This internal status should by normalized by $xhr into 0,
but $xhr needs to distinguish between jsonp-error/abort/timeout (all status 0).
2011-11-30 11:03:42 -05:00
Vojta Jina
45f47ff6cd
fix($browser.xhr): change method "JSON" to "JSONP"
...
Breaks "JSON" xhr method is now called "JSONP"
2011-11-30 11:03:41 -05:00