Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2764)

Unified Diff: bower_components/core-ajax/core-ajax.html

Issue 786953007: npm_modules: Fork bower_components into Polymer 0.4.0 and 0.5.0 versions (Closed) Base URL: https://chromium.googlesource.com/infra/third_party/npm_modules.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « bower_components/core-ajax/bower.json ('k') | bower_components/core-ajax/core-xhr.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: bower_components/core-ajax/core-ajax.html
diff --git a/bower_components/core-ajax/core-ajax.html b/bower_components/core-ajax/core-ajax.html
deleted file mode 100644
index b74901f67d3cee36442a9e85e0aa7b8669b65863..0000000000000000000000000000000000000000
--- a/bower_components/core-ajax/core-ajax.html
+++ /dev/null
@@ -1,345 +0,0 @@
-<!--
-Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
-This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
-The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
-The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
-Code distributed by Google as part of the polymer project is also
-subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
--->
-
-<!--
-@group Polymer Core Elements
-
-The `core-ajax` element exposes `XMLHttpRequest` functionality.
-
- <core-ajax
- auto
- url="http://gdata.youtube.com/feeds/api/videos/"
- params='{"alt":"json", "q":"chrome"}'
- handleAs="json"
- on-core-response="{{handleResponse}}"></core-ajax>
-
-With `auto` set to `true`, the element performs a request whenever
-its `url` or `params` properties are changed.
-
-Note: The `params` attribute must be double quoted JSON.
-
-You can trigger a request explicitly by calling `go` on the
-element.
-
-@element core-ajax
-@status beta
-@homepage github.io
--->
-<link rel="import" href="core-xhr.html">
-<polymer-element name="core-ajax" hidden attributes="url handleAs auto params response error method headers body contentType withCredentials">
-<script>
-
- Polymer('core-ajax', {
- /**
- * Fired when a response is received.
- *
- * @event core-response
- */
-
- /**
- * Fired when an error is received.
- *
- * @event core-error
- */
-
- /**
- * Fired whenever a response or an error is received.
- *
- * @event core-complete
- */
-
- /**
- * The URL target of the request.
- *
- * @attribute url
- * @type string
- * @default ''
- */
- url: '',
-
- /**
- * Specifies what data to store in the `response` property, and
- * to deliver as `event.response` in `response` events.
- *
- * One of:
- *
- * `text`: uses `XHR.responseText`.
- *
- * `xml`: uses `XHR.responseXML`.
- *
- * `json`: uses `XHR.responseText` parsed as JSON.
- *
- * `arraybuffer`: uses `XHR.response`.
- *
- * `blob`: uses `XHR.response`.
- *
- * `document`: uses `XHR.response`.
- *
- * @attribute handleAs
- * @type string
- * @default 'text'
- */
- handleAs: '',
-
- /**
- * If true, automatically performs an Ajax request when either `url` or `params` changes.
- *
- * @attribute auto
- * @type boolean
- * @default false
- */
- auto: false,
-
- /**
- * Parameters to send to the specified URL, as JSON.
- *
- * @attribute params
- * @type string (JSON)
- * @default ''
- */
- params: '',
-
- /**
- * The response for the most recently made request, or null if it hasn't
- * completed yet or the request resulted in error.
- *
- * @attribute response
- * @type Object
- * @default null
- */
- response: null,
-
- /**
- * The error for the most recently made request, or null if it hasn't
- * completed yet or the request resulted in success.
- *
- * @attribute error
- * @type Object
- * @default null
- */
- error: null,
-
- /**
- * The HTTP method to use such as 'GET', 'POST', 'PUT', or 'DELETE'.
- * Default is 'GET'.
- *
- * @attribute method
- * @type string
- * @default ''
- */
- method: '',
-
- /**
- * HTTP request headers to send.
- *
- * Example:
- *
- * <core-ajax
- * auto
- * url="http://somesite.com"
- * headers='{"X-Requested-With": "XMLHttpRequest"}'
- * handleAs="json"
- * on-core-response="{{handleResponse}}"></core-ajax>
- *
- * @attribute headers
- * @type Object
- * @default null
- */
- headers: null,
-
- /**
- * Optional raw body content to send when method === "POST".
- *
- * Example:
- *
- * <core-ajax method="POST" auto url="http://somesite.com"
- * body='{"foo":1, "bar":2}'>
- * </core-ajax>
- *
- * @attribute body
- * @type Object
- * @default null
- */
- body: null,
-
- /**
- * Content type to use when sending data.
- *
- * @attribute contentType
- * @type string
- * @default 'application/x-www-form-urlencoded'
- */
- contentType: 'application/x-www-form-urlencoded',
-
- /**
- * Set the withCredentials flag on the request.
- *
- * @attribute withCredentials
- * @type boolean
- * @default false
- */
- withCredentials: false,
-
- /**
- * Additional properties to send to core-xhr.
- *
- * Can be set to an object containing default properties
- * to send as arguments to the `core-xhr.request()` method
- * which implements the low-level communication.
- *
- * @property xhrArgs
- * @type Object
- * @default null
- */
- xhrArgs: null,
-
- ready: function() {
- this.xhr = document.createElement('core-xhr');
- },
-
- receive: function(response, xhr) {
- if (this.isSuccess(xhr)) {
- this.processResponse(xhr);
- } else {
- this.processError(xhr);
- }
- this.complete(xhr);
- },
-
- isSuccess: function(xhr) {
- var status = xhr.status || 0;
- return !status || (status >= 200 && status < 300);
- },
-
- processResponse: function(xhr) {
- var response = this.evalResponse(xhr);
- if (xhr === this.activeRequest) {
- this.response = response;
- }
- this.fire('core-response', {response: response, xhr: xhr});
- },
-
- processError: function(xhr) {
- var response = xhr.status + ': ' + xhr.responseText;
- if (xhr === this.activeRequest) {
- this.error = response;
- }
- this.fire('core-error', {response: response, xhr: xhr});
- },
-
- complete: function(xhr) {
- this.fire('core-complete', {response: xhr.status, xhr: xhr});
- },
-
- evalResponse: function(xhr) {
- return this[(this.handleAs || 'text') + 'Handler'](xhr);
- },
-
- xmlHandler: function(xhr) {
- return xhr.responseXML;
- },
-
- textHandler: function(xhr) {
- return xhr.responseText;
- },
-
- jsonHandler: function(xhr) {
- var r = xhr.responseText;
- try {
- return JSON.parse(r);
- } catch (x) {
- console.warn('core-ajax caught an exception trying to parse response as JSON:');
- console.warn('url:', this.url);
- console.warn(x);
- return r;
- }
- },
-
- documentHandler: function(xhr) {
- return xhr.response;
- },
-
- blobHandler: function(xhr) {
- return xhr.response;
- },
-
- arraybufferHandler: function(xhr) {
- return xhr.response;
- },
-
- urlChanged: function() {
- if (!this.handleAs) {
- var ext = String(this.url).split('.').pop();
- switch (ext) {
- case 'json':
- this.handleAs = 'json';
- break;
- }
- }
- this.autoGo();
- },
-
- paramsChanged: function() {
- this.autoGo();
- },
-
- autoChanged: function() {
- this.autoGo();
- },
-
- // TODO(sorvell): multiple side-effects could call autoGo
- // during one micro-task, use a job to have only one action
- // occur
- autoGo: function() {
- if (this.auto) {
- this.goJob = this.job(this.goJob, this.go, 0);
- }
- },
-
- /**
- * Performs an Ajax request to the specified URL.
- *
- * @method go
- */
- go: function() {
- var args = this.xhrArgs || {};
- // TODO(sjmiles): we may want XHR to default to POST if body is set
- args.body = this.body || args.body;
- args.params = this.params || args.params;
- if (args.params && typeof(args.params) == 'string') {
- args.params = JSON.parse(args.params);
- }
- args.headers = this.headers || args.headers || {};
- if (args.headers && typeof(args.headers) == 'string') {
- args.headers = JSON.parse(args.headers);
- }
- var hasContentType = Object.keys(args.headers).some(function (header) {
- return header.toLowerCase() === 'content-type';
- });
- if (!hasContentType && this.contentType) {
- args.headers['Content-Type'] = this.contentType;
- }
- if (this.handleAs === 'arraybuffer' || this.handleAs === 'blob' ||
- this.handleAs === 'document') {
- args.responseType = this.handleAs;
- }
- args.withCredentials = this.withCredentials;
- args.callback = this.receive.bind(this);
- args.url = this.url;
- args.method = this.method;
-
- this.response = this.error = null;
- this.activeRequest = args.url && this.xhr.request(args);
- return this.activeRequest;
- }
-
- });
-
-</script>
-</polymer-element>
« no previous file with comments | « bower_components/core-ajax/bower.json ('k') | bower_components/core-ajax/core-xhr.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698