├── .gitignore ├── LICENSE ├── README.md ├── config.xml ├── hooks └── README.md ├── platforms └── android │ ├── .gitignore │ ├── .project │ ├── AndroidManifest.xml │ ├── CordovaLib │ ├── .project │ ├── AndroidManifest.xml │ ├── build.gradle │ ├── project.properties │ └── src │ │ ├── com │ │ └── squareup │ │ │ └── okhttp │ │ │ ├── Address.java │ │ │ ├── Connection.java │ │ │ ├── ConnectionPool.java │ │ │ ├── Dispatcher.java │ │ │ ├── Failure.java │ │ │ ├── HttpResponseCache.java │ │ │ ├── Job.java │ │ │ ├── MediaType.java │ │ │ ├── OkAuthenticator.java │ │ │ ├── OkHttpClient.java │ │ │ ├── OkResponseCache.java │ │ │ ├── Request.java │ │ │ ├── Response.java │ │ │ ├── ResponseSource.java │ │ │ ├── Route.java │ │ │ ├── RouteDatabase.java │ │ │ ├── TunnelRequest.java │ │ │ └── internal │ │ │ ├── AbstractOutputStream.java │ │ │ ├── Base64.java │ │ │ ├── DiskLruCache.java │ │ │ ├── Dns.java │ │ │ ├── FaultRecoveringOutputStream.java │ │ │ ├── NamedRunnable.java │ │ │ ├── Platform.java │ │ │ ├── StrictLineReader.java │ │ │ ├── Util.java │ │ │ ├── http │ │ │ ├── AbstractHttpInputStream.java │ │ │ ├── HeaderParser.java │ │ │ ├── HttpAuthenticator.java │ │ │ ├── HttpDate.java │ │ │ ├── HttpEngine.java │ │ │ ├── HttpTransport.java │ │ │ ├── HttpURLConnectionImpl.java │ │ │ ├── HttpsEngine.java │ │ │ ├── HttpsURLConnectionImpl.java │ │ │ ├── OkResponseCacheAdapter.java │ │ │ ├── Policy.java │ │ │ ├── RawHeaders.java │ │ │ ├── RequestHeaders.java │ │ │ ├── ResponseHeaders.java │ │ │ ├── RetryableOutputStream.java │ │ │ ├── RouteSelector.java │ │ │ ├── SpdyTransport.java │ │ │ ├── Transport.java │ │ │ └── UnknownLengthHttpInputStream.java │ │ │ ├── spdy │ │ │ ├── ErrorCode.java │ │ │ ├── FrameReader.java │ │ │ ├── FrameWriter.java │ │ │ ├── HeadersMode.java │ │ │ ├── Hpack.java │ │ │ ├── Http20Draft06.java │ │ │ ├── IncomingStreamHandler.java │ │ │ ├── NameValueBlockReader.java │ │ │ ├── Ping.java │ │ │ ├── Settings.java │ │ │ ├── Spdy3.java │ │ │ ├── SpdyConnection.java │ │ │ ├── SpdyStream.java │ │ │ └── Variant.java │ │ │ └── tls │ │ │ ├── DistinguishedNameParser.java │ │ │ └── OkHostnameVerifier.java │ │ └── org │ │ └── apache │ │ └── cordova │ │ ├── App.java │ │ ├── AuthenticationToken.java │ │ ├── CallbackContext.java │ │ ├── Config.java │ │ ├── ConfigXmlParser.java │ │ ├── CordovaActivity.java │ │ ├── CordovaArgs.java │ │ ├── CordovaBridge.java │ │ ├── CordovaChromeClient.java │ │ ├── CordovaInterface.java │ │ ├── CordovaPlugin.java │ │ ├── CordovaPreferences.java │ │ ├── CordovaResourceApi.java │ │ ├── CordovaUriHelper.java │ │ ├── CordovaWebView.java │ │ ├── CordovaWebViewClient.java │ │ ├── DirectoryManager.java │ │ ├── DroidGap.java │ │ ├── ExifHelper.java │ │ ├── ExposedJsApi.java │ │ ├── FileHelper.java │ │ ├── IceCreamCordovaWebViewClient.java │ │ ├── JSONUtils.java │ │ ├── LOG.java │ │ ├── LinearLayoutSoftKeyboardDetect.java │ │ ├── NativeToJsMessageQueue.java │ │ ├── PluginEntry.java │ │ ├── PluginManager.java │ │ ├── PluginResult.java │ │ ├── ScrollEvent.java │ │ └── Whitelist.java │ ├── assets │ ├── _where-is-www.txt │ └── www │ │ ├── bower.json │ │ ├── bower_components │ │ ├── angular-resource │ │ │ ├── .bower.json │ │ │ ├── README.md │ │ │ ├── angular-resource.js │ │ │ ├── angular-resource.min.js │ │ │ ├── angular-resource.min.js.map │ │ │ ├── bower.json │ │ │ └── package.json │ │ ├── angular-route │ │ │ ├── .bower.json │ │ │ ├── README.md │ │ │ ├── angular-route.js │ │ │ ├── angular-route.min.js │ │ │ ├── angular-route.min.js.map │ │ │ ├── bower.json │ │ │ └── package.json │ │ ├── angular-touch │ │ │ ├── .bower.json │ │ │ ├── README.md │ │ │ ├── angular-touch.js │ │ │ ├── angular-touch.min.js │ │ │ ├── angular-touch.min.js.map │ │ │ ├── bower.json │ │ │ └── package.json │ │ ├── angular │ │ │ ├── .bower.json │ │ │ ├── README.md │ │ │ ├── angular-csp.css │ │ │ ├── angular.js │ │ │ ├── angular.min.js │ │ │ ├── angular.min.js.gzip │ │ │ ├── angular.min.js.map │ │ │ ├── bower.json │ │ │ └── package.json │ │ ├── bootstrap │ │ │ ├── .bower.json │ │ │ ├── Gruntfile.js │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── bower.json │ │ │ ├── dist │ │ │ │ ├── css │ │ │ │ │ ├── bootstrap-theme.css │ │ │ │ │ ├── bootstrap-theme.css.map │ │ │ │ │ ├── bootstrap-theme.min.css │ │ │ │ │ ├── bootstrap.css │ │ │ │ │ ├── bootstrap.css.map │ │ │ │ │ └── bootstrap.min.css │ │ │ │ ├── fonts │ │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ │ └── glyphicons-halflings-regular.woff │ │ │ │ └── js │ │ │ │ │ ├── bootstrap.js │ │ │ │ │ ├── bootstrap.min.js │ │ │ │ │ └── npm.js │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ └── glyphicons-halflings-regular.woff │ │ │ ├── grunt │ │ │ │ ├── .jshintrc │ │ │ │ ├── bs-commonjs-generator.js │ │ │ │ ├── bs-lessdoc-parser.js │ │ │ │ ├── bs-raw-files-generator.js │ │ │ │ ├── configBridge.json │ │ │ │ └── sauce_browsers.yml │ │ │ ├── js │ │ │ │ ├── .jscsrc │ │ │ │ ├── .jshintrc │ │ │ │ ├── affix.js │ │ │ │ ├── alert.js │ │ │ │ ├── button.js │ │ │ │ ├── carousel.js │ │ │ │ ├── collapse.js │ │ │ │ ├── dropdown.js │ │ │ │ ├── modal.js │ │ │ │ ├── popover.js │ │ │ │ ├── scrollspy.js │ │ │ │ ├── tab.js │ │ │ │ ├── tooltip.js │ │ │ │ └── transition.js │ │ │ ├── less │ │ │ │ ├── .csscomb.json │ │ │ │ ├── .csslintrc │ │ │ │ ├── alerts.less │ │ │ │ ├── badges.less │ │ │ │ ├── bootstrap.less │ │ │ │ ├── breadcrumbs.less │ │ │ │ ├── button-groups.less │ │ │ │ ├── buttons.less │ │ │ │ ├── carousel.less │ │ │ │ ├── close.less │ │ │ │ ├── code.less │ │ │ │ ├── component-animations.less │ │ │ │ ├── dropdowns.less │ │ │ │ ├── forms.less │ │ │ │ ├── glyphicons.less │ │ │ │ ├── grid.less │ │ │ │ ├── input-groups.less │ │ │ │ ├── jumbotron.less │ │ │ │ ├── labels.less │ │ │ │ ├── list-group.less │ │ │ │ ├── media.less │ │ │ │ ├── mixins.less │ │ │ │ ├── mixins │ │ │ │ │ ├── alerts.less │ │ │ │ │ ├── background-variant.less │ │ │ │ │ ├── border-radius.less │ │ │ │ │ ├── buttons.less │ │ │ │ │ ├── center-block.less │ │ │ │ │ ├── clearfix.less │ │ │ │ │ ├── forms.less │ │ │ │ │ ├── gradients.less │ │ │ │ │ ├── grid-framework.less │ │ │ │ │ ├── grid.less │ │ │ │ │ ├── hide-text.less │ │ │ │ │ ├── image.less │ │ │ │ │ ├── labels.less │ │ │ │ │ ├── list-group.less │ │ │ │ │ ├── nav-divider.less │ │ │ │ │ ├── nav-vertical-align.less │ │ │ │ │ ├── opacity.less │ │ │ │ │ ├── pagination.less │ │ │ │ │ ├── panels.less │ │ │ │ │ ├── progress-bar.less │ │ │ │ │ ├── reset-filter.less │ │ │ │ │ ├── resize.less │ │ │ │ │ ├── responsive-visibility.less │ │ │ │ │ ├── size.less │ │ │ │ │ ├── tab-focus.less │ │ │ │ │ ├── table-row.less │ │ │ │ │ ├── text-emphasis.less │ │ │ │ │ ├── text-overflow.less │ │ │ │ │ └── vendor-prefixes.less │ │ │ │ ├── modals.less │ │ │ │ ├── navbar.less │ │ │ │ ├── navs.less │ │ │ │ ├── normalize.less │ │ │ │ ├── pager.less │ │ │ │ ├── pagination.less │ │ │ │ ├── panels.less │ │ │ │ ├── popovers.less │ │ │ │ ├── print.less │ │ │ │ ├── progress-bars.less │ │ │ │ ├── responsive-embed.less │ │ │ │ ├── responsive-utilities.less │ │ │ │ ├── scaffolding.less │ │ │ │ ├── tables.less │ │ │ │ ├── theme.less │ │ │ │ ├── thumbnails.less │ │ │ │ ├── tooltip.less │ │ │ │ ├── type.less │ │ │ │ ├── utilities.less │ │ │ │ ├── variables.less │ │ │ │ └── wells.less │ │ │ └── package.json │ │ ├── eonasdan-bootstrap-datetimepicker │ │ │ ├── .bower.json │ │ │ ├── CONTRIBUTING.md │ │ │ ├── Gruntfile.js │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── bower.json │ │ │ ├── build │ │ │ │ ├── css │ │ │ │ │ ├── bootstrap-datetimepicker.css │ │ │ │ │ └── bootstrap-datetimepicker.min.css │ │ │ │ ├── js │ │ │ │ │ └── bootstrap-datetimepicker.min.js │ │ │ │ └── nuget │ │ │ │ │ ├── Bootstrap.v3.Datetimepicker.4.0.0.nupkg │ │ │ │ │ └── Bootstrap.v3.Datetimepicker.CSS.4.0.0.nupkg │ │ │ ├── component.json │ │ │ ├── composer.json │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── js │ │ │ │ │ └── bootstrap-datetimepicker.js │ │ │ │ ├── less │ │ │ │ │ ├── _bootstrap-datetimepicker.less │ │ │ │ │ ├── bootstrap-datetimepicker-build.less │ │ │ │ │ └── bootstrap-datetimepicker.less │ │ │ │ └── nuget │ │ │ │ │ ├── Bootstrap.v3.Datetimepicker.CSS.nuspec │ │ │ │ │ ├── Bootstrap.v3.Datetimepicker.nuspec │ │ │ │ │ ├── NuGet.exe │ │ │ │ │ └── install.ps1 │ │ │ └── tasks │ │ │ │ └── bump_version.js │ │ ├── fontawesome │ │ │ ├── .bower.json │ │ │ ├── .gitignore │ │ │ ├── .npmignore │ │ │ ├── bower.json │ │ │ ├── css │ │ │ │ ├── font-awesome.css │ │ │ │ └── font-awesome.min.css │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ └── fontawesome-webfont.woff │ │ │ ├── less │ │ │ │ ├── bordered-pulled.less │ │ │ │ ├── core.less │ │ │ │ ├── extras.less │ │ │ │ ├── fixed-width.less │ │ │ │ ├── font-awesome.less │ │ │ │ ├── icons.less │ │ │ │ ├── larger.less │ │ │ │ ├── list.less │ │ │ │ ├── mixins.less │ │ │ │ ├── path.less │ │ │ │ ├── rotated-flipped.less │ │ │ │ ├── spinning.less │ │ │ │ ├── stacked.less │ │ │ │ └── variables.less │ │ │ └── scss │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ ├── _core.scss │ │ │ │ ├── _extras.scss │ │ │ │ ├── _fixed-width.scss │ │ │ │ ├── _icons.scss │ │ │ │ ├── _larger.scss │ │ │ │ ├── _list.scss │ │ │ │ ├── _mixins.scss │ │ │ │ ├── _path.scss │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ ├── _spinning.scss │ │ │ │ ├── _stacked.scss │ │ │ │ ├── _variables.scss │ │ │ │ └── font-awesome.scss │ │ ├── jquery │ │ │ ├── .bower.json │ │ │ ├── MIT-LICENSE.txt │ │ │ ├── bower.json │ │ │ ├── dist │ │ │ │ ├── jquery.js │ │ │ │ ├── jquery.min.js │ │ │ │ └── jquery.min.map │ │ │ └── src │ │ │ │ ├── ajax.js │ │ │ │ ├── ajax │ │ │ │ ├── jsonp.js │ │ │ │ ├── load.js │ │ │ │ ├── parseJSON.js │ │ │ │ ├── parseXML.js │ │ │ │ ├── script.js │ │ │ │ ├── var │ │ │ │ │ ├── nonce.js │ │ │ │ │ └── rquery.js │ │ │ │ └── xhr.js │ │ │ │ ├── attributes.js │ │ │ │ ├── attributes │ │ │ │ ├── attr.js │ │ │ │ ├── classes.js │ │ │ │ ├── prop.js │ │ │ │ ├── support.js │ │ │ │ └── val.js │ │ │ │ ├── callbacks.js │ │ │ │ ├── core.js │ │ │ │ ├── core │ │ │ │ ├── access.js │ │ │ │ ├── init.js │ │ │ │ ├── parseHTML.js │ │ │ │ ├── ready.js │ │ │ │ └── var │ │ │ │ │ └── rsingleTag.js │ │ │ │ ├── css.js │ │ │ │ ├── css │ │ │ │ ├── addGetHookIf.js │ │ │ │ ├── curCSS.js │ │ │ │ ├── defaultDisplay.js │ │ │ │ ├── hiddenVisibleSelectors.js │ │ │ │ ├── support.js │ │ │ │ ├── swap.js │ │ │ │ └── var │ │ │ │ │ ├── cssExpand.js │ │ │ │ │ ├── getStyles.js │ │ │ │ │ ├── isHidden.js │ │ │ │ │ ├── rmargin.js │ │ │ │ │ └── rnumnonpx.js │ │ │ │ ├── data.js │ │ │ │ ├── data │ │ │ │ ├── Data.js │ │ │ │ ├── accepts.js │ │ │ │ └── var │ │ │ │ │ ├── data_priv.js │ │ │ │ │ └── data_user.js │ │ │ │ ├── deferred.js │ │ │ │ ├── deprecated.js │ │ │ │ ├── dimensions.js │ │ │ │ ├── effects.js │ │ │ │ ├── effects │ │ │ │ ├── Tween.js │ │ │ │ └── animatedSelector.js │ │ │ │ ├── event.js │ │ │ │ ├── event │ │ │ │ ├── alias.js │ │ │ │ └── support.js │ │ │ │ ├── exports │ │ │ │ ├── amd.js │ │ │ │ └── global.js │ │ │ │ ├── intro.js │ │ │ │ ├── jquery.js │ │ │ │ ├── manipulation.js │ │ │ │ ├── manipulation │ │ │ │ ├── _evalUrl.js │ │ │ │ ├── support.js │ │ │ │ └── var │ │ │ │ │ └── rcheckableType.js │ │ │ │ ├── offset.js │ │ │ │ ├── outro.js │ │ │ │ ├── queue.js │ │ │ │ ├── queue │ │ │ │ └── delay.js │ │ │ │ ├── selector-native.js │ │ │ │ ├── selector-sizzle.js │ │ │ │ ├── selector.js │ │ │ │ ├── serialize.js │ │ │ │ ├── sizzle │ │ │ │ └── dist │ │ │ │ │ ├── sizzle.js │ │ │ │ │ ├── sizzle.min.js │ │ │ │ │ └── sizzle.min.map │ │ │ │ ├── traversing.js │ │ │ │ ├── traversing │ │ │ │ ├── findFilter.js │ │ │ │ └── var │ │ │ │ │ └── rneedsContext.js │ │ │ │ ├── var │ │ │ │ ├── arr.js │ │ │ │ ├── class2type.js │ │ │ │ ├── concat.js │ │ │ │ ├── hasOwn.js │ │ │ │ ├── indexOf.js │ │ │ │ ├── pnum.js │ │ │ │ ├── push.js │ │ │ │ ├── rnotwhite.js │ │ │ │ ├── slice.js │ │ │ │ ├── strundefined.js │ │ │ │ ├── support.js │ │ │ │ └── toString.js │ │ │ │ └── wrap.js │ │ ├── moment │ │ │ ├── .bower.json │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Moment.js.nuspec │ │ │ ├── README.md │ │ │ ├── benchmarks │ │ │ │ └── clone.js │ │ │ ├── bower.json │ │ │ ├── locale │ │ │ │ ├── af.js │ │ │ │ ├── ar-ma.js │ │ │ │ ├── ar-sa.js │ │ │ │ ├── ar-tn.js │ │ │ │ ├── ar.js │ │ │ │ ├── az.js │ │ │ │ ├── be.js │ │ │ │ ├── bg.js │ │ │ │ ├── bn.js │ │ │ │ ├── bo.js │ │ │ │ ├── br.js │ │ │ │ ├── bs.js │ │ │ │ ├── ca.js │ │ │ │ ├── cs.js │ │ │ │ ├── cv.js │ │ │ │ ├── cy.js │ │ │ │ ├── da.js │ │ │ │ ├── de-at.js │ │ │ │ ├── de.js │ │ │ │ ├── el.js │ │ │ │ ├── en-au.js │ │ │ │ ├── en-ca.js │ │ │ │ ├── en-gb.js │ │ │ │ ├── eo.js │ │ │ │ ├── es.js │ │ │ │ ├── et.js │ │ │ │ ├── eu.js │ │ │ │ ├── fa.js │ │ │ │ ├── fi.js │ │ │ │ ├── fo.js │ │ │ │ ├── fr-ca.js │ │ │ │ ├── fr.js │ │ │ │ ├── fy.js │ │ │ │ ├── gl.js │ │ │ │ ├── he.js │ │ │ │ ├── hi.js │ │ │ │ ├── hr.js │ │ │ │ ├── hu.js │ │ │ │ ├── hy-am.js │ │ │ │ ├── id.js │ │ │ │ ├── is.js │ │ │ │ ├── it.js │ │ │ │ ├── ja.js │ │ │ │ ├── ka.js │ │ │ │ ├── km.js │ │ │ │ ├── ko.js │ │ │ │ ├── lb.js │ │ │ │ ├── lt.js │ │ │ │ ├── lv.js │ │ │ │ ├── mk.js │ │ │ │ ├── ml.js │ │ │ │ ├── mr.js │ │ │ │ ├── ms-my.js │ │ │ │ ├── my.js │ │ │ │ ├── nb.js │ │ │ │ ├── ne.js │ │ │ │ ├── nl.js │ │ │ │ ├── nn.js │ │ │ │ ├── pl.js │ │ │ │ ├── pt-br.js │ │ │ │ ├── pt.js │ │ │ │ ├── ro.js │ │ │ │ ├── ru.js │ │ │ │ ├── sk.js │ │ │ │ ├── sl.js │ │ │ │ ├── sq.js │ │ │ │ ├── sr-cyrl.js │ │ │ │ ├── sr.js │ │ │ │ ├── sv.js │ │ │ │ ├── ta.js │ │ │ │ ├── th.js │ │ │ │ ├── tl-ph.js │ │ │ │ ├── tr.js │ │ │ │ ├── tzm-latn.js │ │ │ │ ├── tzm.js │ │ │ │ ├── uk.js │ │ │ │ ├── uz.js │ │ │ │ ├── vi.js │ │ │ │ ├── zh-cn.js │ │ │ │ └── zh-tw.js │ │ │ ├── meteor │ │ │ │ ├── README.md │ │ │ │ ├── export.js │ │ │ │ └── test.js │ │ │ ├── min │ │ │ │ ├── locales.js │ │ │ │ ├── locales.min.js │ │ │ │ ├── moment-with-locales.js │ │ │ │ ├── moment-with-locales.min.js │ │ │ │ └── moment.min.js │ │ │ ├── moment.js │ │ │ └── scripts │ │ │ │ └── npm_prepublish.sh │ │ └── revolunet-angular-carousel │ │ │ ├── .bower.json │ │ │ ├── .bowerrc │ │ │ ├── .editorconfig │ │ │ ├── .gitignore │ │ │ ├── Gruntfile.js │ │ │ ├── README.md │ │ │ ├── bower.json │ │ │ ├── dist │ │ │ ├── angular-carousel.css │ │ │ ├── angular-carousel.js │ │ │ ├── angular-carousel.min.css │ │ │ └── angular-carousel.min.js │ │ │ ├── fullscreen.html │ │ │ ├── game.html │ │ │ ├── index.html │ │ │ ├── lib │ │ │ ├── angular-mobile.js │ │ │ └── browserTrigger.js │ │ │ ├── package.json │ │ │ ├── src │ │ │ ├── angular-carousel.js │ │ │ ├── css │ │ │ │ └── angular-carousel.scss │ │ │ └── directives │ │ │ │ ├── rn-carousel-auto-slide.js │ │ │ │ ├── rn-carousel-indicators.js │ │ │ │ ├── rn-carousel.js │ │ │ │ ├── shifty.js │ │ │ │ └── sliceFilter.js │ │ │ └── test │ │ │ ├── karma.conf.js │ │ │ └── unit │ │ │ └── angular-carousel.js │ │ ├── controllers │ │ ├── devices.js │ │ ├── index.js │ │ ├── login.js │ │ ├── nav.js │ │ ├── profile.js │ │ └── signup.js │ │ ├── cordova.js │ │ ├── cordova_plugins.js │ │ ├── filters │ │ ├── type-to-html.js │ │ └── type-to-image.js │ │ ├── images │ │ ├── contact │ │ │ └── itead-address.png │ │ ├── custom.png │ │ ├── guide │ │ │ ├── coding.jpg │ │ │ ├── create-device.jpg │ │ │ ├── device-id.jpg │ │ │ ├── indie-device.jpg │ │ │ ├── my-device.jpg │ │ │ ├── my-profile.jpg │ │ │ ├── status.jpg │ │ │ └── upload-debug.jpg │ │ ├── hardware │ │ │ ├── arduino.gif │ │ │ ├── banana_pi.jpg │ │ │ ├── bboard.jpg │ │ │ ├── computer.gif │ │ │ ├── core_evb.jpg │ │ │ ├── cuibeboard.jpg │ │ │ ├── galileo.jpg │ │ │ ├── gboard.jpg │ │ │ ├── hardware.gif │ │ │ ├── iboard.jpg │ │ │ ├── more.jpg │ │ │ ├── rep.jpg │ │ │ ├── solution.jpg │ │ │ ├── wboard_pro.jpg │ │ │ └── wrtnode.jpg │ │ ├── home │ │ │ ├── arduino.png │ │ │ ├── bb.png │ │ │ ├── cb.png │ │ │ ├── chipkit.png │ │ │ ├── coocox.png │ │ │ ├── intel.png │ │ │ ├── more.png │ │ │ ├── process-diy.gif │ │ │ ├── process-ready.gif │ │ │ ├── rpi.png │ │ │ ├── slideshow │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── indiegogo.jpg │ │ │ │ └── iot.jpg │ │ │ └── wrt.png │ │ ├── iotgo-arch.png │ │ ├── light.png │ │ ├── logo-grey.png │ │ ├── logo.png │ │ ├── sensor-temperature-humidity.png │ │ ├── solution │ │ │ ├── app-design.jpg │ │ │ ├── banner-feature.jpg │ │ │ ├── banner-socket.jpg │ │ │ ├── banner.jpg │ │ │ ├── box-wifi-socket.jpg │ │ │ ├── building-server.jpg │ │ │ ├── contact-us.jpg │ │ │ ├── custom-pcb.jpg │ │ │ ├── customizable.jpg │ │ │ ├── how-it-works.jpg │ │ │ ├── low-cost.jpg │ │ │ ├── mobile-app.jpg │ │ │ ├── roll-wifi-socket.jpg │ │ │ ├── shell-purchase.jpg │ │ │ ├── smart hardware_r19_c11.jpg │ │ │ ├── smart hardware_r20_c2.jpg │ │ │ ├── smart hardware_r25_c11.jpg │ │ │ ├── smart hardware_r25_c2.jpg │ │ │ ├── title.jpg │ │ │ ├── video.jpg │ │ │ └── web-server.jpg │ │ └── switch.png │ │ ├── index.html │ │ ├── iotgo.css │ │ ├── iotgo.js │ │ ├── plugins │ │ └── com.knowledgecode.cordova.websocket │ │ │ └── www │ │ │ └── websocket.js │ │ ├── services │ │ ├── auth-interceptor.js │ │ ├── devices.js │ │ ├── settings.js │ │ ├── user.js │ │ └── websocket.js │ │ └── views │ │ ├── about.html │ │ ├── api.html │ │ ├── contact.html │ │ ├── devices.html │ │ ├── guide.html │ │ ├── hardware.html │ │ ├── index.html │ │ ├── login.html │ │ ├── pricing.html │ │ ├── profile.html │ │ ├── signup.html │ │ ├── solution.html │ │ └── types │ │ ├── custom.html │ │ ├── light.html │ │ ├── sensor-temperature-humidity.html │ │ └── switch.html │ ├── build.gradle │ ├── cordova │ ├── android_sdk_version │ ├── build │ ├── build.bat │ ├── check_reqs │ ├── clean │ ├── clean.bat │ ├── defaults.xml │ ├── lib │ │ ├── android_sdk_version.js │ │ ├── appinfo.js │ │ ├── build.js │ │ ├── check_reqs.js │ │ ├── device.js │ │ ├── emulator.js │ │ ├── exec.js │ │ ├── install-device │ │ ├── install-device.bat │ │ ├── install-emulator │ │ ├── install-emulator.bat │ │ ├── list-devices │ │ ├── list-devices.bat │ │ ├── list-emulator-images │ │ ├── list-emulator-images.bat │ │ ├── list-started-emulators │ │ ├── list-started-emulators.bat │ │ ├── log.js │ │ ├── run.js │ │ ├── spawn.js │ │ ├── start-emulator │ │ └── start-emulator.bat │ ├── log │ ├── log.bat │ ├── run │ ├── run.bat │ ├── version │ └── version.bat │ ├── custom_rules.xml │ ├── platform_www │ └── cordova.js │ ├── project.properties │ ├── res │ ├── drawable-hdpi │ │ └── icon.png │ ├── drawable-land-hdpi │ │ └── screen.png │ ├── drawable-land-ldpi │ │ └── screen.png │ ├── drawable-land-mdpi │ │ └── screen.png │ ├── drawable-land-xhdpi │ │ └── screen.png │ ├── drawable-ldpi │ │ └── icon.png │ ├── drawable-mdpi │ │ └── icon.png │ ├── drawable-port-hdpi │ │ └── screen.png │ ├── drawable-port-ldpi │ │ └── screen.png │ ├── drawable-port-mdpi │ │ └── screen.png │ ├── drawable-port-xhdpi │ │ └── screen.png │ ├── drawable-xhdpi │ │ └── icon.png │ ├── drawable │ │ └── icon.png │ ├── values │ │ └── strings.xml │ └── xml │ │ └── config.xml │ ├── settings.gradle │ └── src │ ├── com │ ├── iteadstudio │ │ └── iotgoweb │ │ │ └── CordovaApp.java │ └── knowledgecode │ │ └── cordova │ │ └── websocket │ │ ├── AbstractWebSocket.java │ │ ├── ConnectionTask.java │ │ ├── DisconnectionTask.java │ │ ├── SendingTask.java │ │ ├── TaskRunner.java │ │ ├── WebSocket.java │ │ └── WebSocketGenerator.java │ └── org │ └── eclipse │ └── jetty │ ├── http │ ├── HttpCookie.java │ ├── HttpException.java │ ├── HttpFields.java │ ├── HttpHeaderValues.java │ ├── HttpHeaders.java │ ├── HttpMethods.java │ ├── HttpParser.java │ ├── HttpStatus.java │ ├── HttpTokens.java │ ├── HttpVersions.java │ └── Parser.java │ ├── io │ ├── AbstractBuffer.java │ ├── AbstractBuffers.java │ ├── AbstractConnection.java │ ├── AsyncEndPoint.java │ ├── Buffer.java │ ├── BufferCache.java │ ├── BufferDateCache.java │ ├── BufferUtil.java │ ├── Buffers.java │ ├── BuffersFactory.java │ ├── ByteArrayBuffer.java │ ├── ConnectedEndPoint.java │ ├── Connection.java │ ├── EndPoint.java │ ├── EofException.java │ ├── PooledBuffers.java │ ├── SimpleBuffers.java │ ├── ThreadLocalBuffers.java │ ├── View.java │ ├── bio │ │ └── StreamEndPoint.java │ └── nio │ │ ├── AsyncConnection.java │ │ ├── ChannelEndPoint.java │ │ ├── DirectNIOBuffer.java │ │ ├── IndirectNIOBuffer.java │ │ ├── NIOBuffer.java │ │ ├── RandomAccessFileBuffer.java │ │ ├── SelectChannelEndPoint.java │ │ ├── SelectorManager.java │ │ └── SslConnection.java │ ├── util │ ├── B64Code.java │ ├── BlockingArrayQueue.java │ ├── DateCache.java │ ├── IO.java │ ├── LazyList.java │ ├── Loader.java │ ├── QueuedThreadPool.java │ ├── QuotedStringTokenizer.java │ ├── StringMap.java │ ├── StringUtil.java │ ├── ThreadPool.java │ ├── Timeout.java │ ├── TypeUtil.java │ ├── URIUtil.java │ ├── Utf8Appendable.java │ ├── Utf8StringBuilder.java │ ├── component │ │ ├── AbstractLifeCycle.java │ │ ├── AggregateLifeCycle.java │ │ ├── Destroyable.java │ │ ├── Dumpable.java │ │ └── LifeCycle.java │ ├── log │ │ ├── AbstractLogger.java │ │ ├── Log.java │ │ ├── Logger.java │ │ ├── LoggerLog.java │ │ └── StdErrLog.java │ ├── resource │ │ ├── BadResource.java │ │ ├── FileResource.java │ │ ├── JarFileResource.java │ │ ├── JarResource.java │ │ ├── Resource.java │ │ ├── ResourceFactory.java │ │ └── URLResource.java │ ├── security │ │ ├── CertificateUtils.java │ │ ├── CertificateValidator.java │ │ ├── Credential.java │ │ ├── Password.java │ │ └── UnixCrypt.java │ └── ssl │ │ ├── AliasedX509ExtendedKeyManager.java │ │ └── SslContextFactory.java │ └── websocket │ ├── Extension.java │ ├── MaskGen.java │ ├── RandomMaskGen.java │ ├── WebSocket.java │ ├── WebSocketBuffers.java │ ├── WebSocketClient.java │ ├── WebSocketClientFactory.java │ ├── WebSocketConnection.java │ ├── WebSocketConnectionRFC6455.java │ ├── WebSocketGenerator.java │ ├── WebSocketGeneratorRFC6455.java │ ├── WebSocketParser.java │ └── WebSocketParserRFC6455.java ├── plugins ├── android.json └── com.knowledgecode.cordova.websocket │ ├── .fetch.json │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── package.json │ ├── plugin.xml │ ├── src │ └── android │ │ ├── com │ │ └── knowledgecode │ │ │ └── cordova │ │ │ └── websocket │ │ │ ├── AbstractWebSocket.java │ │ │ ├── ConnectionTask.java │ │ │ ├── DisconnectionTask.java │ │ │ ├── SendingTask.java │ │ │ ├── TaskRunner.java │ │ │ ├── WebSocket.java │ │ │ └── WebSocketGenerator.java │ │ └── org │ │ └── eclipse │ │ └── jetty │ │ ├── http │ │ ├── HttpCookie.java │ │ ├── HttpException.java │ │ ├── HttpFields.java │ │ ├── HttpHeaderValues.java │ │ ├── HttpHeaders.java │ │ ├── HttpMethods.java │ │ ├── HttpParser.java │ │ ├── HttpStatus.java │ │ ├── HttpTokens.java │ │ ├── HttpVersions.java │ │ └── Parser.java │ │ ├── io │ │ ├── AbstractBuffer.java │ │ ├── AbstractBuffers.java │ │ ├── AbstractConnection.java │ │ ├── AsyncEndPoint.java │ │ ├── Buffer.java │ │ ├── BufferCache.java │ │ ├── BufferDateCache.java │ │ ├── BufferUtil.java │ │ ├── Buffers.java │ │ ├── BuffersFactory.java │ │ ├── ByteArrayBuffer.java │ │ ├── ConnectedEndPoint.java │ │ ├── Connection.java │ │ ├── EndPoint.java │ │ ├── EofException.java │ │ ├── PooledBuffers.java │ │ ├── SimpleBuffers.java │ │ ├── ThreadLocalBuffers.java │ │ ├── View.java │ │ ├── bio │ │ │ └── StreamEndPoint.java │ │ └── nio │ │ │ ├── AsyncConnection.java │ │ │ ├── ChannelEndPoint.java │ │ │ ├── DirectNIOBuffer.java │ │ │ ├── IndirectNIOBuffer.java │ │ │ ├── NIOBuffer.java │ │ │ ├── RandomAccessFileBuffer.java │ │ │ ├── SelectChannelEndPoint.java │ │ │ ├── SelectorManager.java │ │ │ └── SslConnection.java │ │ ├── util │ │ ├── B64Code.java │ │ ├── BlockingArrayQueue.java │ │ ├── DateCache.java │ │ ├── IO.java │ │ ├── LazyList.java │ │ ├── Loader.java │ │ ├── QuotedStringTokenizer.java │ │ ├── StringMap.java │ │ ├── StringUtil.java │ │ ├── TypeUtil.java │ │ ├── URIUtil.java │ │ ├── Utf8Appendable.java │ │ ├── Utf8StringBuilder.java │ │ ├── component │ │ │ ├── AbstractLifeCycle.java │ │ │ ├── AggregateLifeCycle.java │ │ │ ├── Destroyable.java │ │ │ ├── Dumpable.java │ │ │ └── LifeCycle.java │ │ ├── log │ │ │ ├── AbstractLogger.java │ │ │ ├── Log.java │ │ │ ├── Logger.java │ │ │ ├── LoggerLog.java │ │ │ └── StdErrLog.java │ │ ├── resource │ │ │ ├── BadResource.java │ │ │ ├── FileResource.java │ │ │ ├── JarFileResource.java │ │ │ ├── JarResource.java │ │ │ ├── Resource.java │ │ │ ├── ResourceFactory.java │ │ │ └── URLResource.java │ │ ├── security │ │ │ ├── CertificateUtils.java │ │ │ ├── CertificateValidator.java │ │ │ ├── Credential.java │ │ │ ├── Password.java │ │ │ └── UnixCrypt.java │ │ ├── ssl │ │ │ ├── AliasedX509ExtendedKeyManager.java │ │ │ └── SslContextFactory.java │ │ └── thread │ │ │ ├── QueuedThreadPool.java │ │ │ ├── ThreadPool.java │ │ │ └── Timeout.java │ │ └── websocket │ │ ├── Extension.java │ │ ├── MaskGen.java │ │ ├── RandomMaskGen.java │ │ ├── WebSocket.java │ │ ├── WebSocketBuffers.java │ │ ├── WebSocketClient.java │ │ ├── WebSocketClientFactory.java │ │ ├── WebSocketConnection.java │ │ ├── WebSocketConnectionRFC6455.java │ │ ├── WebSocketGenerator.java │ │ ├── WebSocketGeneratorRFC6455.java │ │ ├── WebSocketParser.java │ │ └── WebSocketParserRFC6455.java │ └── www │ └── websocket.js └── www ├── .gitignore ├── bower.json ├── controllers ├── devices.js ├── index.js ├── login.js ├── nav.js ├── profile.js └── signup.js ├── filters ├── type-to-html.js └── type-to-image.js ├── images ├── contact │ └── itead-address.png ├── custom.png ├── guide │ ├── coding.jpg │ ├── create-device.jpg │ ├── device-id.jpg │ ├── indie-device.jpg │ ├── my-device.jpg │ ├── my-profile.jpg │ ├── status.jpg │ └── upload-debug.jpg ├── hardware │ ├── arduino.gif │ ├── banana_pi.jpg │ ├── bboard.jpg │ ├── computer.gif │ ├── core_evb.jpg │ ├── cuibeboard.jpg │ ├── galileo.jpg │ ├── gboard.jpg │ ├── hardware.gif │ ├── iboard.jpg │ ├── more.jpg │ ├── rep.jpg │ ├── solution.jpg │ ├── wboard_pro.jpg │ └── wrtnode.jpg ├── home │ ├── arduino.png │ ├── bb.png │ ├── cb.png │ ├── chipkit.png │ ├── coocox.png │ ├── intel.png │ ├── more.png │ ├── process-diy.gif │ ├── process-ready.gif │ ├── rpi.png │ ├── slideshow │ │ ├── 1.jpg │ │ ├── 2.jpg │ │ ├── indiegogo.jpg │ │ └── iot.jpg │ └── wrt.png ├── iotgo-arch.png ├── light.png ├── logo-grey.png ├── logo.png ├── sensor-temperature-humidity.png ├── solution │ ├── app-design.jpg │ ├── banner-feature.jpg │ ├── banner-socket.jpg │ ├── banner.jpg │ ├── box-wifi-socket.jpg │ ├── building-server.jpg │ ├── contact-us.jpg │ ├── custom-pcb.jpg │ ├── customizable.jpg │ ├── how-it-works.jpg │ ├── low-cost.jpg │ ├── mobile-app.jpg │ ├── roll-wifi-socket.jpg │ ├── shell-purchase.jpg │ ├── smart hardware_r19_c11.jpg │ ├── smart hardware_r20_c2.jpg │ ├── smart hardware_r25_c11.jpg │ ├── smart hardware_r25_c2.jpg │ ├── title.jpg │ ├── video.jpg │ └── web-server.jpg └── switch.png ├── index.html ├── iotgo.css ├── iotgo.js ├── services ├── auth-interceptor.js ├── devices.js ├── settings.js ├── user.js └── websocket.js └── views ├── about.html ├── api.html ├── contact.html ├── devices.html ├── guide.html ├── hardware.html ├── index.html ├── login.html ├── pricing.html ├── profile.html ├── signup.html ├── solution.html └── types ├── custom.html ├── light.html ├── sensor-temperature-humidity.html └── switch.html /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | 5 | # Runtime data 6 | pids 7 | *.pid 8 | *.seed 9 | 10 | # Directory for instrumented libs generated by jscoverage/JSCover 11 | lib-cov 12 | 13 | # Coverage directory used by tools like istanbul 14 | coverage 15 | 16 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 17 | .grunt 18 | 19 | # Compiled binary addons (http://nodejs.org/api/addons.html) 20 | build/Release 21 | 22 | # Dependency directory 23 | # Commenting this out is preferred by some people, see 24 | # https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git- 25 | node_modules 26 | 27 | # Users Environment Variables 28 | .lock-wscript 29 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 ITEAD Studio 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | IoTgo Android App 4 | 5 | IoTgo Android application 6 | 7 | 8 | ITEAD Intelligent Systems 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /platforms/android/.gitignore: -------------------------------------------------------------------------------- 1 | # Non-project-specific build files: 2 | build.xml 3 | local.properties 4 | /gradlew 5 | /gradlew.bat 6 | /gradle 7 | # Ant builds 8 | ant-built 9 | ant-gen 10 | # Eclipse builds 11 | gen 12 | out 13 | # Gradle builds 14 | /build 15 | -------------------------------------------------------------------------------- /platforms/android/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /platforms/android/CordovaLib/.project: -------------------------------------------------------------------------------- 1 | CordovaApp-CordovaLib -------------------------------------------------------------------------------- /platforms/android/CordovaLib/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 20 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /platforms/android/CordovaLib/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | # Indicates whether an apk should be generated for each density. 11 | split.density=false 12 | # Project target. 13 | target=android-19 14 | apk-configurations= 15 | renderscript.opt.level=O0 16 | android.library=true 17 | -------------------------------------------------------------------------------- /platforms/android/CordovaLib/src/com/squareup/okhttp/internal/Dns.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2012 Square, Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package com.squareup.okhttp.internal; 17 | 18 | import java.net.InetAddress; 19 | import java.net.UnknownHostException; 20 | 21 | /** 22 | * Domain name service. Prefer this over {@link InetAddress#getAllByName} to 23 | * make code more testable. 24 | */ 25 | public interface Dns { 26 | Dns DEFAULT = new Dns() { 27 | @Override public InetAddress[] getAllByName(String host) throws UnknownHostException { 28 | return InetAddress.getAllByName(host); 29 | } 30 | }; 31 | 32 | InetAddress[] getAllByName(String host) throws UnknownHostException; 33 | } 34 | -------------------------------------------------------------------------------- /platforms/android/assets/_where-is-www.txt: -------------------------------------------------------------------------------- 1 | To show `assets/www` or `res/xml/config.xml`, go to: 2 | Project -> Properties -> Resource -> Resource Filters 3 | And delete the exclusion filter. 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "iotgo frontend app", 3 | "version": "0.0.1", 4 | "description": "iotgo frontend dependencies", 5 | "moduleType": [ 6 | "node" 7 | ], 8 | "keywords": [ 9 | "iot" 10 | ], 11 | "authors": [ 12 | "iotgo@iteadstudio.com" 13 | ], 14 | "license": "MIT", 15 | "private": true, 16 | "ignore": [ 17 | "**/.*", 18 | "node_modules", 19 | "bower_components", 20 | "test", 21 | "tests" 22 | ], 23 | "dependencies": { 24 | "angular": "~1.3.5", 25 | "angular-route": "~1.3.5", 26 | "angular-resource": "~1.3.5", 27 | "jquery": "~2.1.1", 28 | "bootstrap": "~3.3.0", 29 | "fontawesome": "~4.2.0", 30 | "angular-touch": "~1.3.5", 31 | "revolunet-angular-carousel": "~0.3.7" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-resource/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-resource", 3 | "version": "1.3.5", 4 | "main": "./angular-resource.js", 5 | "ignore": [], 6 | "dependencies": { 7 | "angular": "1.3.5" 8 | }, 9 | "homepage": "https://github.com/angular/bower-angular-resource", 10 | "_release": "1.3.5", 11 | "_resolution": { 12 | "type": "version", 13 | "tag": "v1.3.5", 14 | "commit": "0561804c43239b0debd927199ab814ffc7d9718b" 15 | }, 16 | "_source": "git://github.com/angular/bower-angular-resource.git", 17 | "_target": "~1.3.5", 18 | "_originalSource": "angular-resource" 19 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-resource/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-resource", 3 | "version": "1.3.5", 4 | "main": "./angular-resource.js", 5 | "ignore": [], 6 | "dependencies": { 7 | "angular": "1.3.5" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-resource/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-resource", 3 | "version": "1.3.5", 4 | "description": "AngularJS module for interacting with RESTful server-side data sources", 5 | "main": "angular-resource.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/angular/angular.js.git" 12 | }, 13 | "keywords": [ 14 | "angular", 15 | "framework", 16 | "browser", 17 | "rest", 18 | "client-side" 19 | ], 20 | "author": "Angular Core Team ", 21 | "license": "MIT", 22 | "bugs": { 23 | "url": "https://github.com/angular/angular.js/issues" 24 | }, 25 | "homepage": "http://angularjs.org" 26 | } 27 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-route/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-route", 3 | "version": "1.3.5", 4 | "main": "./angular-route.js", 5 | "ignore": [], 6 | "dependencies": { 7 | "angular": "1.3.5" 8 | }, 9 | "homepage": "https://github.com/angular/bower-angular-route", 10 | "_release": "1.3.5", 11 | "_resolution": { 12 | "type": "version", 13 | "tag": "v1.3.5", 14 | "commit": "4a949e84a15e474daa1cf0a4f4fbb3dd1f7536cb" 15 | }, 16 | "_source": "git://github.com/angular/bower-angular-route.git", 17 | "_target": "~1.3.5", 18 | "_originalSource": "angular-route" 19 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-route/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-route", 3 | "version": "1.3.5", 4 | "main": "./angular-route.js", 5 | "ignore": [], 6 | "dependencies": { 7 | "angular": "1.3.5" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-route/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-route", 3 | "version": "1.3.5", 4 | "description": "AngularJS router module", 5 | "main": "angular-route.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/angular/angular.js.git" 12 | }, 13 | "keywords": [ 14 | "angular", 15 | "framework", 16 | "browser", 17 | "router", 18 | "client-side" 19 | ], 20 | "author": "Angular Core Team ", 21 | "license": "MIT", 22 | "bugs": { 23 | "url": "https://github.com/angular/angular.js/issues" 24 | }, 25 | "homepage": "http://angularjs.org" 26 | } 27 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-touch/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-touch", 3 | "version": "1.3.5", 4 | "main": "./angular-touch.js", 5 | "ignore": [], 6 | "dependencies": { 7 | "angular": "1.3.5" 8 | }, 9 | "homepage": "https://github.com/angular/bower-angular-touch", 10 | "_release": "1.3.5", 11 | "_resolution": { 12 | "type": "version", 13 | "tag": "v1.3.5", 14 | "commit": "151e7b1f9b624c5d138a49b0acdd1ca1e35458df" 15 | }, 16 | "_source": "git://github.com/angular/bower-angular-touch.git", 17 | "_target": "~1.3.5", 18 | "_originalSource": "angular-touch" 19 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-touch/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-touch", 3 | "version": "1.3.5", 4 | "main": "./angular-touch.js", 5 | "ignore": [], 6 | "dependencies": { 7 | "angular": "1.3.5" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular-touch/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-touch", 3 | "version": "1.3.5", 4 | "description": "AngularJS module for touch events and helpers for touch-enabled devices", 5 | "main": "angular-touch.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/angular/angular.js.git" 12 | }, 13 | "keywords": [ 14 | "angular", 15 | "framework", 16 | "browser", 17 | "touch", 18 | "client-side" 19 | ], 20 | "author": "Angular Core Team ", 21 | "license": "MIT", 22 | "bugs": { 23 | "url": "https://github.com/angular/angular.js/issues" 24 | }, 25 | "homepage": "http://angularjs.org" 26 | } 27 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular", 3 | "version": "1.3.5", 4 | "main": "./angular.js", 5 | "ignore": [], 6 | "dependencies": {}, 7 | "homepage": "https://github.com/angular/bower-angular", 8 | "_release": "1.3.5", 9 | "_resolution": { 10 | "type": "version", 11 | "tag": "v1.3.5", 12 | "commit": "9acb014af4fd7b0ab001c64fa7bcac454ab4050b" 13 | }, 14 | "_source": "git://github.com/angular/bower-angular.git", 15 | "_target": "~1.3.5", 16 | "_originalSource": "angular" 17 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular/angular-csp.css: -------------------------------------------------------------------------------- 1 | /* Include this file in your html if you are using the CSP mode. */ 2 | 3 | @charset "UTF-8"; 4 | 5 | [ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], 6 | .ng-cloak, .x-ng-cloak, 7 | .ng-hide:not(.ng-hide-animate) { 8 | display: none !important; 9 | } 10 | 11 | ng\:form { 12 | display: block; 13 | } 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular/angular.min.js.gzip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/angular/angular.min.js.gzip -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular", 3 | "version": "1.3.5", 4 | "main": "./angular.js", 5 | "ignore": [], 6 | "dependencies": { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/angular/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular", 3 | "version": "1.3.5", 4 | "description": "HTML enhanced for web apps", 5 | "main": "angular.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/angular/angular.js.git" 12 | }, 13 | "keywords": [ 14 | "angular", 15 | "framework", 16 | "browser", 17 | "client-side" 18 | ], 19 | "author": "Angular Core Team ", 20 | "license": "MIT", 21 | "bugs": { 22 | "url": "https://github.com/angular/angular.js/issues" 23 | }, 24 | "homepage": "http://angularjs.org" 25 | } 26 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2011-2014 Twitter, Inc 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap", 3 | "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", 4 | "version": "3.3.1", 5 | "keywords": [ 6 | "css", 7 | "js", 8 | "less", 9 | "mobile-first", 10 | "responsive", 11 | "front-end", 12 | "framework", 13 | "web" 14 | ], 15 | "homepage": "http://getbootstrap.com", 16 | "main": [ 17 | "less/bootstrap.less", 18 | "dist/css/bootstrap.css", 19 | "dist/js/bootstrap.js", 20 | "dist/fonts/glyphicons-halflings-regular.eot", 21 | "dist/fonts/glyphicons-halflings-regular.svg", 22 | "dist/fonts/glyphicons-halflings-regular.ttf", 23 | "dist/fonts/glyphicons-halflings-regular.woff" 24 | ], 25 | "ignore": [ 26 | "/.*", 27 | "_config.yml", 28 | "CNAME", 29 | "composer.json", 30 | "CONTRIBUTING.md", 31 | "docs", 32 | "js/tests", 33 | "test-infra" 34 | ], 35 | "dependencies": { 36 | "jquery": ">= 1.9.1" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/dist/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/grunt/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends" : "../js/.jshintrc", 3 | "asi" : false, 4 | "browser" : false, 5 | "es3" : false, 6 | "node" : true 7 | } 8 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/grunt/bs-commonjs-generator.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | var fs = require('fs'); 3 | var path = require('path'); 4 | 5 | var COMMONJS_BANNER = '// This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.\n'; 6 | 7 | module.exports = function generateCommonJSModule(grunt, srcFiles, destFilepath) { 8 | var destDir = path.dirname(destFilepath); 9 | 10 | function srcPathToDestRequire(srcFilepath) { 11 | var requirePath = path.relative(destDir, srcFilepath).replace(/\\/g, '/'); 12 | return 'require(\'' + requirePath + '\')'; 13 | } 14 | 15 | var moduleOutputJs = COMMONJS_BANNER + srcFiles.map(srcPathToDestRequire).join('\n'); 16 | try { 17 | fs.writeFileSync(destFilepath, moduleOutputJs); 18 | } 19 | catch (err) { 20 | grunt.fail.warn(err); 21 | } 22 | grunt.log.writeln('File ' + destFilepath.cyan + ' created.'); 23 | }; 24 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/js/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "asi" : true, 3 | "browser" : true, 4 | "eqeqeq" : false, 5 | "eqnull" : true, 6 | "es3" : true, 7 | "expr" : true, 8 | "jquery" : true, 9 | "latedef" : true, 10 | "laxbreak" : true, 11 | "nonbsp" : true, 12 | "strict" : true, 13 | "undef" : true, 14 | "unused" : true 15 | } 16 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/.csslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "adjoining-classes": false, 3 | "box-sizing": false, 4 | "box-model": false, 5 | "compatible-vendor-prefixes": false, 6 | "floats": false, 7 | "font-sizes": false, 8 | "gradients": false, 9 | "important": false, 10 | "known-properties": false, 11 | "outline-none": false, 12 | "qualified-headings": false, 13 | "regex-selectors": false, 14 | "shorthand": false, 15 | "text-indent": false, 16 | "unique-headings": false, 17 | "universal-selector": false, 18 | "unqualified-attributes": false 19 | } 20 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/breadcrumbs.less: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | 6 | .breadcrumb { 7 | padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal; 8 | margin-bottom: @line-height-computed; 9 | list-style: none; 10 | background-color: @breadcrumb-bg; 11 | border-radius: @border-radius-base; 12 | 13 | > li { 14 | display: inline-block; 15 | 16 | + li:before { 17 | content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space 18 | padding: 0 5px; 19 | color: @breadcrumb-color; 20 | } 21 | } 22 | 23 | > .active { 24 | color: @breadcrumb-active-color; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/close.less: -------------------------------------------------------------------------------- 1 | // 2 | // Close icons 3 | // -------------------------------------------------- 4 | 5 | 6 | .close { 7 | float: right; 8 | font-size: (@font-size-base * 1.5); 9 | font-weight: @close-font-weight; 10 | line-height: 1; 11 | color: @close-color; 12 | text-shadow: @close-text-shadow; 13 | .opacity(.2); 14 | 15 | &:hover, 16 | &:focus { 17 | color: @close-color; 18 | text-decoration: none; 19 | cursor: pointer; 20 | .opacity(.5); 21 | } 22 | 23 | // Additional properties for button version 24 | // iOS requires the button element instead of an anchor tag. 25 | // If you want the anchor version, it requires `href="#"`. 26 | button& { 27 | padding: 0; 28 | cursor: pointer; 29 | background: transparent; 30 | border: 0; 31 | -webkit-appearance: none; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/component-animations.less: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | // Heads up! 6 | // 7 | // We don't use the `.opacity()` mixin here since it causes a bug with text 8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. 9 | 10 | .fade { 11 | opacity: 0; 12 | .transition(opacity .15s linear); 13 | &.in { 14 | opacity: 1; 15 | } 16 | } 17 | 18 | .collapse { 19 | display: none; 20 | visibility: hidden; 21 | 22 | &.in { display: block; visibility: visible; } 23 | tr&.in { display: table-row; } 24 | tbody&.in { display: table-row-group; } 25 | } 26 | 27 | .collapsing { 28 | position: relative; 29 | height: 0; 30 | overflow: hidden; 31 | .transition-property(~"height, visibility"); 32 | .transition-duration(.35s); 33 | .transition-timing-function(ease); 34 | } 35 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/jumbotron.less: -------------------------------------------------------------------------------- 1 | // 2 | // Jumbotron 3 | // -------------------------------------------------- 4 | 5 | 6 | .jumbotron { 7 | padding: @jumbotron-padding (@jumbotron-padding / 2); 8 | margin-bottom: @jumbotron-padding; 9 | color: @jumbotron-color; 10 | background-color: @jumbotron-bg; 11 | 12 | h1, 13 | .h1 { 14 | color: @jumbotron-heading-color; 15 | } 16 | p { 17 | margin-bottom: (@jumbotron-padding / 2); 18 | font-size: @jumbotron-font-size; 19 | font-weight: 200; 20 | } 21 | 22 | > hr { 23 | border-top-color: darken(@jumbotron-bg, 10%); 24 | } 25 | 26 | .container &, 27 | .container-fluid & { 28 | border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container 29 | } 30 | 31 | .container { 32 | max-width: 100%; 33 | } 34 | 35 | @media screen and (min-width: @screen-sm-min) { 36 | padding: (@jumbotron-padding * 1.6) 0; 37 | 38 | .container &, 39 | .container-fluid & { 40 | padding-left: (@jumbotron-padding * 2); 41 | padding-right: (@jumbotron-padding * 2); 42 | } 43 | 44 | h1, 45 | .h1 { 46 | font-size: (@font-size-base * 4.5); 47 | } 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/media.less: -------------------------------------------------------------------------------- 1 | .media { 2 | // Proper spacing between instances of .media 3 | margin-top: 15px; 4 | 5 | &:first-child { 6 | margin-top: 0; 7 | } 8 | } 9 | 10 | .media-right, 11 | .media > .pull-right { 12 | padding-left: 10px; 13 | } 14 | 15 | .media-left, 16 | .media > .pull-left { 17 | padding-right: 10px; 18 | } 19 | 20 | .media-left, 21 | .media-right, 22 | .media-body { 23 | display: table-cell; 24 | vertical-align: top; 25 | } 26 | 27 | .media-middle { 28 | vertical-align: middle; 29 | } 30 | 31 | .media-bottom { 32 | vertical-align: bottom; 33 | } 34 | 35 | // Reset margins on headings for tighter default spacing 36 | .media-heading { 37 | margin-top: 0; 38 | margin-bottom: 5px; 39 | } 40 | 41 | // Media list variation 42 | // 43 | // Undo default ul/ol styles 44 | .media-list { 45 | padding-left: 0; 46 | list-style: none; 47 | } 48 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/alerts.less: -------------------------------------------------------------------------------- 1 | // Alerts 2 | 3 | .alert-variant(@background; @border; @text-color) { 4 | background-color: @background; 5 | border-color: @border; 6 | color: @text-color; 7 | 8 | hr { 9 | border-top-color: darken(@border, 5%); 10 | } 11 | .alert-link { 12 | color: darken(@text-color, 10%); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/background-variant.less: -------------------------------------------------------------------------------- 1 | // Contextual backgrounds 2 | 3 | .bg-variant(@color) { 4 | background-color: @color; 5 | a&:hover { 6 | background-color: darken(@color, 10%); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/border-radius.less: -------------------------------------------------------------------------------- 1 | // Single side border-radius 2 | 3 | .border-top-radius(@radius) { 4 | border-top-right-radius: @radius; 5 | border-top-left-radius: @radius; 6 | } 7 | .border-right-radius(@radius) { 8 | border-bottom-right-radius: @radius; 9 | border-top-right-radius: @radius; 10 | } 11 | .border-bottom-radius(@radius) { 12 | border-bottom-right-radius: @radius; 13 | border-bottom-left-radius: @radius; 14 | } 15 | .border-left-radius(@radius) { 16 | border-bottom-left-radius: @radius; 17 | border-top-left-radius: @radius; 18 | } 19 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/center-block.less: -------------------------------------------------------------------------------- 1 | // Center-align a block level element 2 | 3 | .center-block() { 4 | display: block; 5 | margin-left: auto; 6 | margin-right: auto; 7 | } 8 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/clearfix.less: -------------------------------------------------------------------------------- 1 | // Clearfix 2 | // 3 | // For modern browsers 4 | // 1. The space content is one way to avoid an Opera bug when the 5 | // contenteditable attribute is included anywhere else in the document. 6 | // Otherwise it causes space to appear at the top and bottom of elements 7 | // that are clearfixed. 8 | // 2. The use of `table` rather than `block` is only necessary if using 9 | // `:before` to contain the top-margins of child elements. 10 | // 11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/ 12 | 13 | .clearfix() { 14 | &:before, 15 | &:after { 16 | content: " "; // 1 17 | display: table; // 2 18 | } 19 | &:after { 20 | clear: both; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/hide-text.less: -------------------------------------------------------------------------------- 1 | // CSS image replacement 2 | // 3 | // Heads up! v3 launched with with only `.hide-text()`, but per our pattern for 4 | // mixins being reused as classes with the same name, this doesn't hold up. As 5 | // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. 6 | // 7 | // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757 8 | 9 | // Deprecated as of v3.0.1 (will be removed in v4) 10 | .hide-text() { 11 | font: ~"0/0" a; 12 | color: transparent; 13 | text-shadow: none; 14 | background-color: transparent; 15 | border: 0; 16 | } 17 | 18 | // New mixin to use as of v3.0.1 19 | .text-hide() { 20 | .hide-text(); 21 | } 22 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/image.less: -------------------------------------------------------------------------------- 1 | // Image Mixins 2 | // - Responsive image 3 | // - Retina image 4 | 5 | 6 | // Responsive image 7 | // 8 | // Keep images from scaling beyond the width of their parents. 9 | .img-responsive(@display: block) { 10 | display: @display; 11 | max-width: 100%; // Part 1: Set a maximum relative to the parent 12 | height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching 13 | } 14 | 15 | 16 | // Retina image 17 | // 18 | // Short retina mixin for setting background-image and -size. Note that the 19 | // spelling of `min--moz-device-pixel-ratio` is intentional. 20 | .img-retina(@file-1x; @file-2x; @width-1x; @height-1x) { 21 | background-image: url("@{file-1x}"); 22 | 23 | @media 24 | only screen and (-webkit-min-device-pixel-ratio: 2), 25 | only screen and ( min--moz-device-pixel-ratio: 2), 26 | only screen and ( -o-min-device-pixel-ratio: 2/1), 27 | only screen and ( min-device-pixel-ratio: 2), 28 | only screen and ( min-resolution: 192dpi), 29 | only screen and ( min-resolution: 2dppx) { 30 | background-image: url("@{file-2x}"); 31 | background-size: @width-1x @height-1x; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/labels.less: -------------------------------------------------------------------------------- 1 | // Labels 2 | 3 | .label-variant(@color) { 4 | background-color: @color; 5 | 6 | &[href] { 7 | &:hover, 8 | &:focus { 9 | background-color: darken(@color, 10%); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/list-group.less: -------------------------------------------------------------------------------- 1 | // List Groups 2 | 3 | .list-group-item-variant(@state; @background; @color) { 4 | .list-group-item-@{state} { 5 | color: @color; 6 | background-color: @background; 7 | 8 | a& { 9 | color: @color; 10 | 11 | .list-group-item-heading { 12 | color: inherit; 13 | } 14 | 15 | &:hover, 16 | &:focus { 17 | color: @color; 18 | background-color: darken(@background, 5%); 19 | } 20 | &.active, 21 | &.active:hover, 22 | &.active:focus { 23 | color: #fff; 24 | background-color: @color; 25 | border-color: @color; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/nav-divider.less: -------------------------------------------------------------------------------- 1 | // Horizontal dividers 2 | // 3 | // Dividers (basically an hr) within dropdowns and nav lists 4 | 5 | .nav-divider(@color: #e5e5e5) { 6 | height: 1px; 7 | margin: ((@line-height-computed / 2) - 1) 0; 8 | overflow: hidden; 9 | background-color: @color; 10 | } 11 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/nav-vertical-align.less: -------------------------------------------------------------------------------- 1 | // Navbar vertical align 2 | // 3 | // Vertically center elements in the navbar. 4 | // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin. 5 | 6 | .navbar-vertical-align(@element-height) { 7 | margin-top: ((@navbar-height - @element-height) / 2); 8 | margin-bottom: ((@navbar-height - @element-height) / 2); 9 | } 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/opacity.less: -------------------------------------------------------------------------------- 1 | // Opacity 2 | 3 | .opacity(@opacity) { 4 | opacity: @opacity; 5 | // IE8 filter 6 | @opacity-ie: (@opacity * 100); 7 | filter: ~"alpha(opacity=@{opacity-ie})"; 8 | } 9 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/pagination.less: -------------------------------------------------------------------------------- 1 | // Pagination 2 | 3 | .pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) { 4 | > li { 5 | > a, 6 | > span { 7 | padding: @padding-vertical @padding-horizontal; 8 | font-size: @font-size; 9 | } 10 | &:first-child { 11 | > a, 12 | > span { 13 | .border-left-radius(@border-radius); 14 | } 15 | } 16 | &:last-child { 17 | > a, 18 | > span { 19 | .border-right-radius(@border-radius); 20 | } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/panels.less: -------------------------------------------------------------------------------- 1 | // Panels 2 | 3 | .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) { 4 | border-color: @border; 5 | 6 | & > .panel-heading { 7 | color: @heading-text-color; 8 | background-color: @heading-bg-color; 9 | border-color: @heading-border; 10 | 11 | + .panel-collapse > .panel-body { 12 | border-top-color: @border; 13 | } 14 | .badge { 15 | color: @heading-bg-color; 16 | background-color: @heading-text-color; 17 | } 18 | } 19 | & > .panel-footer { 20 | + .panel-collapse > .panel-body { 21 | border-bottom-color: @border; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/progress-bar.less: -------------------------------------------------------------------------------- 1 | // Progress bars 2 | 3 | .progress-bar-variant(@color) { 4 | background-color: @color; 5 | 6 | // Deprecated parent class requirement as of v3.2.0 7 | .progress-striped & { 8 | #gradient > .striped(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/reset-filter.less: -------------------------------------------------------------------------------- 1 | // Reset filters for IE 2 | // 3 | // When you need to remove a gradient background, do not forget to use this to reset 4 | // the IE filter for IE9 and below. 5 | 6 | .reset-filter() { 7 | filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)")); 8 | } 9 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/resize.less: -------------------------------------------------------------------------------- 1 | // Resize anything 2 | 3 | .resizable(@direction) { 4 | resize: @direction; // Options: horizontal, vertical, both 5 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` 6 | } 7 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/responsive-visibility.less: -------------------------------------------------------------------------------- 1 | // Responsive utilities 2 | 3 | // 4 | // More easily include all the states for responsive-utilities.less. 5 | .responsive-visibility() { 6 | display: block !important; 7 | table& { display: table; } 8 | tr& { display: table-row !important; } 9 | th&, 10 | td& { display: table-cell !important; } 11 | } 12 | 13 | .responsive-invisibility() { 14 | display: none !important; 15 | } 16 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/size.less: -------------------------------------------------------------------------------- 1 | // Sizing shortcuts 2 | 3 | .size(@width; @height) { 4 | width: @width; 5 | height: @height; 6 | } 7 | 8 | .square(@size) { 9 | .size(@size; @size); 10 | } 11 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/tab-focus.less: -------------------------------------------------------------------------------- 1 | // WebKit-style focus 2 | 3 | .tab-focus() { 4 | // Default 5 | outline: thin dotted; 6 | // WebKit 7 | outline: 5px auto -webkit-focus-ring-color; 8 | outline-offset: -2px; 9 | } 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/table-row.less: -------------------------------------------------------------------------------- 1 | // Tables 2 | 3 | .table-row-variant(@state; @background) { 4 | // Exact selectors below required to override `.table-striped` and prevent 5 | // inheritance to nested tables. 6 | .table > thead > tr, 7 | .table > tbody > tr, 8 | .table > tfoot > tr { 9 | > td.@{state}, 10 | > th.@{state}, 11 | &.@{state} > td, 12 | &.@{state} > th { 13 | background-color: @background; 14 | } 15 | } 16 | 17 | // Hover states for `.table-hover` 18 | // Note: this is not available for cells or rows within `thead` or `tfoot`. 19 | .table-hover > tbody > tr { 20 | > td.@{state}:hover, 21 | > th.@{state}:hover, 22 | &.@{state}:hover > td, 23 | &:hover > .@{state}, 24 | &.@{state}:hover > th { 25 | background-color: darken(@background, 5%); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/text-emphasis.less: -------------------------------------------------------------------------------- 1 | // Typography 2 | 3 | .text-emphasis-variant(@color) { 4 | color: @color; 5 | a&:hover { 6 | color: darken(@color, 10%); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/mixins/text-overflow.less: -------------------------------------------------------------------------------- 1 | // Text overflow 2 | // Requires inline-block or block for proper styling 3 | 4 | .text-overflow() { 5 | overflow: hidden; 6 | text-overflow: ellipsis; 7 | white-space: nowrap; 8 | } 9 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/pager.less: -------------------------------------------------------------------------------- 1 | // 2 | // Pager pagination 3 | // -------------------------------------------------- 4 | 5 | 6 | .pager { 7 | padding-left: 0; 8 | margin: @line-height-computed 0; 9 | list-style: none; 10 | text-align: center; 11 | &:extend(.clearfix all); 12 | li { 13 | display: inline; 14 | > a, 15 | > span { 16 | display: inline-block; 17 | padding: 5px 14px; 18 | background-color: @pager-bg; 19 | border: 1px solid @pager-border; 20 | border-radius: @pager-border-radius; 21 | } 22 | 23 | > a:hover, 24 | > a:focus { 25 | text-decoration: none; 26 | background-color: @pager-hover-bg; 27 | } 28 | } 29 | 30 | .next { 31 | > a, 32 | > span { 33 | float: right; 34 | } 35 | } 36 | 37 | .previous { 38 | > a, 39 | > span { 40 | float: left; 41 | } 42 | } 43 | 44 | .disabled { 45 | > a, 46 | > a:hover, 47 | > a:focus, 48 | > span { 49 | color: @pager-disabled-color; 50 | background-color: @pager-bg; 51 | cursor: @cursor-disabled; 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/responsive-embed.less: -------------------------------------------------------------------------------- 1 | // Embeds responsive 2 | // 3 | // Credit: Nicolas Gallagher and SUIT CSS. 4 | 5 | .embed-responsive { 6 | position: relative; 7 | display: block; 8 | height: 0; 9 | padding: 0; 10 | overflow: hidden; 11 | 12 | .embed-responsive-item, 13 | iframe, 14 | embed, 15 | object, 16 | video { 17 | position: absolute; 18 | top: 0; 19 | left: 0; 20 | bottom: 0; 21 | height: 100%; 22 | width: 100%; 23 | border: 0; 24 | } 25 | 26 | // Modifier class for 16:9 aspect ratio 27 | &.embed-responsive-16by9 { 28 | padding-bottom: 56.25%; 29 | } 30 | 31 | // Modifier class for 4:3 aspect ratio 32 | &.embed-responsive-4by3 { 33 | padding-bottom: 75%; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/thumbnails.less: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | 6 | // Mixin and adjust the regular image class 7 | .thumbnail { 8 | display: block; 9 | padding: @thumbnail-padding; 10 | margin-bottom: @line-height-computed; 11 | line-height: @line-height-base; 12 | background-color: @thumbnail-bg; 13 | border: 1px solid @thumbnail-border; 14 | border-radius: @thumbnail-border-radius; 15 | .transition(border .2s ease-in-out); 16 | 17 | > img, 18 | a > img { 19 | &:extend(.img-responsive); 20 | margin-left: auto; 21 | margin-right: auto; 22 | } 23 | 24 | // Add a hover state for linked versions only 25 | a&:hover, 26 | a&:focus, 27 | a&.active { 28 | border-color: @link-color; 29 | } 30 | 31 | // Image captions 32 | .caption { 33 | padding: @thumbnail-caption-padding; 34 | color: @thumbnail-caption-color; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/utilities.less: -------------------------------------------------------------------------------- 1 | // 2 | // Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // Floats 7 | // ------------------------- 8 | 9 | .clearfix { 10 | .clearfix(); 11 | } 12 | .center-block { 13 | .center-block(); 14 | } 15 | .pull-right { 16 | float: right !important; 17 | } 18 | .pull-left { 19 | float: left !important; 20 | } 21 | 22 | 23 | // Toggling content 24 | // ------------------------- 25 | 26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 27 | .hide { 28 | display: none !important; 29 | } 30 | .show { 31 | display: block !important; 32 | } 33 | .invisible { 34 | visibility: hidden; 35 | } 36 | .text-hide { 37 | .text-hide(); 38 | } 39 | 40 | 41 | // Hide from screenreaders and browsers 42 | // 43 | // Credit: HTML5 Boilerplate 44 | 45 | .hidden { 46 | display: none !important; 47 | visibility: hidden !important; 48 | } 49 | 50 | 51 | // For Affix plugin 52 | // ------------------------- 53 | 54 | .affix { 55 | position: fixed; 56 | } 57 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/bootstrap/less/wells.less: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .well { 8 | min-height: 20px; 9 | padding: 19px; 10 | margin-bottom: 20px; 11 | background-color: @well-bg; 12 | border: 1px solid @well-border; 13 | border-radius: @border-radius-base; 14 | .box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 15 | blockquote { 16 | border-color: #ddd; 17 | border-color: rgba(0,0,0,.15); 18 | } 19 | } 20 | 21 | // Sizes 22 | .well-lg { 23 | padding: 24px; 24 | border-radius: @border-radius-large; 25 | } 26 | .well-sm { 27 | padding: 9px; 28 | border-radius: @border-radius-small; 29 | } 30 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Jonathan Peterson (@Eonasdan) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "eonasdan-bootstrap-datetimepicker", 3 | "version": "4.0.0", 4 | "main": [ 5 | "build/css/bootstrap-datetimepicker.min.css", 6 | "build/js/bootstrap-datetimepicker.min.js", 7 | "src/less/_bootstrap-datetimepicker.less", 8 | "src/less/bootstrap-datetimepicker-build.less", 9 | "src/js/bootstrap-datetimepicker.js" 10 | ], 11 | "dependencies": { 12 | "jquery": ">=1.8.3", 13 | "moment": ">=2.8.0" 14 | }, 15 | "homepage": "https://github.com/Eonasdan/bootstrap-datetimepicker", 16 | "authors": [ 17 | "Eonasdan" 18 | ], 19 | "description": "bootstrap3 datetimepicker", 20 | "keywords": [ 21 | "twitter-bootstrap", 22 | "bootstrap", 23 | "datepicker", 24 | "datetimepicker", 25 | "timepicker", 26 | "moment" 27 | ], 28 | "license": "MIT", 29 | "private": false, 30 | "ignore": [ 31 | "**/.*", 32 | "node_modules", 33 | "bower_components", 34 | "test", 35 | "tests" 36 | ] 37 | } 38 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/build/nuget/Bootstrap.v3.Datetimepicker.4.0.0.nupkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/build/nuget/Bootstrap.v3.Datetimepicker.4.0.0.nupkg -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/build/nuget/Bootstrap.v3.Datetimepicker.CSS.4.0.0.nupkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/build/nuget/Bootstrap.v3.Datetimepicker.CSS.4.0.0.nupkg -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap-datetimepicker", 3 | "version": "4.0.0", 4 | "main": ["build/css/bootstrap-datetimepicker.min.css","build/js/bootstrap-datetimepicker.min.js","src/less/_bootstrap-datetimepicker.less","src/less/bootstrap-datetimepicker-build.less","src/js/bootstrap-datetimepicker.js"], 5 | "dependencies": { 6 | "jquery" : ">=1.8.3", 7 | "moment": ">=2.8.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "eonasdan/bootstrap-datetimepicker", 3 | "type": "component", 4 | "version": "4.0.0", 5 | "description": "Date/time picker widget based on twitter bootstrap", 6 | "keywords": [ 7 | "bootstrap", 8 | "datetimepicker" 9 | ], 10 | "homepage": "http://eonasdan.github.io/bootstrap-datetimepicker/", 11 | "license": "MIT", 12 | "require": { 13 | "robloach/component-installer": "*", 14 | "components/jquery": ">=1.9.1", 15 | "moment/moment": ">=2.8" 16 | }, 17 | "extra": { 18 | "component": { 19 | "scripts": [ 20 | "src/js/bootstrap-datetimepicker.js" 21 | ], 22 | "files": [ 23 | "build/js/bootstrap-datetimepicker.min.js", 24 | "build/css/bootstrap-datetimepicker.css", 25 | "build/css/bootstrap-datetimepicker.min.css", 26 | "src/less/_bootstrap-datetimepicker.less", 27 | "src/less/bootstrap-datetimepicker-build.less" 28 | ] 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap-datetimepicker", 3 | "filename": "js/bootstrap-datetimepicker.min.js", 4 | "version": "4.0.0", 5 | "repository": { 6 | "type": "git", 7 | "url": "https://github.com/eonasdan/bootstrap-datetimepicker.git" 8 | }, 9 | "bugs": { 10 | "url": "https://github.com/eonasdan/bootstrap-datetimepicker/issues" 11 | }, 12 | "keywords": [ 13 | "twitter-bootstrap", 14 | "bootstrap", 15 | "datepicker", 16 | "datetimepicker", 17 | "timepicker", 18 | "moment" 19 | ], 20 | "dependencies": { 21 | "moment": "~2.8.2", 22 | "bootstrap": "^3.0", 23 | "jquery": "latest" 24 | }, 25 | "devDependencies": { 26 | "grunt": "latest", 27 | "grunt-contrib-jasmine": "^0.7.0", 28 | "grunt-contrib-jshint": "latest", 29 | "grunt-contrib-less": "latest", 30 | "grunt-contrib-uglify": "latest", 31 | "grunt-jscs": "latest", 32 | "grunt-string-replace": "latest", 33 | "load-grunt-tasks": "latest" 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/src/less/bootstrap-datetimepicker-build.less: -------------------------------------------------------------------------------- 1 | // Import boostrap variables including default color palette and fonts 2 | @import "../../node_modules/bootstrap/less/variables.less"; 3 | 4 | // Import datepicker component 5 | @import "_bootstrap-datetimepicker.less"; 6 | 7 | 8 | .sr-only { 9 | position: absolute; 10 | width: 1px; 11 | height: 1px; 12 | margin: -1px; 13 | padding: 0; 14 | overflow: hidden; 15 | clip: rect(0,0,0,0); 16 | border: 0; 17 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/NuGet.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/NuGet.exe -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/install.ps1: -------------------------------------------------------------------------------- 1 | # install.ps1 2 | $DTE.ItemOperations.Navigate("https://github.com/Eonasdan/bootstrap-datetimepicker#change-log", $DTE.vsNavigateOptions.vsNavigateOptionsNewWindow) 3 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": [ 10 | "OFL-1.1", 11 | "MIT", 12 | "CC-BY-3.0" 13 | ], 14 | "main": [ 15 | "./css/font-awesome.css", 16 | "./fonts/*" 17 | ], 18 | "ignore": [ 19 | "*/.*", 20 | "*.json", 21 | "src", 22 | "*.yml", 23 | "Gemfile", 24 | "Gemfile.lock", 25 | "*.md" 26 | ], 27 | "_release": "4.2.0", 28 | "_resolution": { 29 | "type": "version", 30 | "tag": "v4.2.0", 31 | "commit": "0b924144a95a54fa738d0450ff66c1dabd11ae74" 32 | }, 33 | "_source": "git://github.com/FortAwesome/Font-Awesome.git", 34 | "_target": "~4.2.0", 35 | "_originalSource": "fontawesome" 36 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/.npmignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | 34 | # don't need these in the npm package. 35 | src/ 36 | _config.yml 37 | bower.json 38 | component.json 39 | composer.json 40 | CONTRIBUTING.md 41 | Gemfile 42 | Gemfile.lock 43 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": ["OFL-1.1", "MIT", "CC-BY-3.0"], 10 | "main": [ 11 | "./css/font-awesome.css", 12 | "./fonts/*" 13 | ], 14 | "ignore": [ 15 | "*/.*", 16 | "*.json", 17 | "src", 18 | "*.yml", 19 | "Gemfile", 20 | "Gemfile.lock", 21 | "*.md" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/fontawesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/fontawesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/fontawesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/bower_components/fontawesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .pull-right { float: right; } 11 | .pull-left { float: left; } 12 | 13 | .@{fa-css-prefix} { 14 | &.pull-left { margin-right: .3em; } 15 | &.pull-right { margin-left: .3em; } 16 | } 17 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal 14px/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | } 12 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/extras.less: -------------------------------------------------------------------------------- 1 | // Extras 2 | // -------------------------- 3 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "spinning"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal 14px/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | } 12 | 13 | .fa-icon-rotate(@degrees, @rotation) { 14 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); 15 | -webkit-transform: rotate(@degrees); 16 | -ms-transform: rotate(@degrees); 17 | transform: rotate(@degrees); 18 | } 19 | 20 | .fa-icon-flip(@horiz, @vert, @rotation) { 21 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); 22 | -webkit-transform: scale(@horiz, @vert); 23 | -ms-transform: scale(@horiz, @vert); 24 | transform: scale(@horiz, @vert); 25 | } 26 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 9 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 10 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 11 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 12 | font-weight: normal; 13 | font-style: normal; 14 | } 15 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .pull-right { float: right; } 11 | .pull-left { float: left; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.pull-left { margin-right: .3em; } 15 | &.pull-right { margin-left: .3em; } 16 | } 17 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal 14px/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | } 12 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal 14px/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | } 12 | 13 | @mixin fa-icon-rotate($degrees, $rotation) { 14 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 15 | -webkit-transform: rotate($degrees); 16 | -ms-transform: rotate($degrees); 17 | transform: rotate($degrees); 18 | } 19 | 20 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 21 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 22 | -webkit-transform: scale($horiz, $vert); 23 | -ms-transform: scale($horiz, $vert); 24 | transform: scale($horiz, $vert); 25 | } 26 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 9 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 10 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 11 | //src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 12 | font-weight: normal; 13 | font-style: normal; 14 | } 15 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/fontawesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "spinning"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "version": "2.1.1", 4 | "main": "dist/jquery.js", 5 | "license": "MIT", 6 | "ignore": [ 7 | "**/.*", 8 | "build", 9 | "speed", 10 | "test", 11 | "*.md", 12 | "AUTHORS.txt", 13 | "Gruntfile.js", 14 | "package.json" 15 | ], 16 | "devDependencies": { 17 | "sizzle": "1.10.19", 18 | "requirejs": "2.1.10", 19 | "qunit": "1.14.0", 20 | "sinon": "1.8.1" 21 | }, 22 | "keywords": [ 23 | "jquery", 24 | "javascript", 25 | "library" 26 | ], 27 | "homepage": "https://github.com/jquery/jquery", 28 | "_release": "2.1.1", 29 | "_resolution": { 30 | "type": "version", 31 | "tag": "2.1.1", 32 | "commit": "4dec426aa2a6cbabb1b064319ba7c272d594a688" 33 | }, 34 | "_source": "git://github.com/jquery/jquery.git", 35 | "_target": "~2.1.1", 36 | "_originalSource": "jquery", 37 | "_direct": true 38 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/MIT-LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright 2014 jQuery Foundation and other contributors 2 | http://jquery.com/ 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining 5 | a copy of this software and associated documentation files (the 6 | "Software"), to deal in the Software without restriction, including 7 | without limitation the rights to use, copy, modify, merge, publish, 8 | distribute, sublicense, and/or sell copies of the Software, and to 9 | permit persons to whom the Software is furnished to do so, subject to 10 | the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "version": "2.1.1", 4 | "main": "dist/jquery.js", 5 | "license": "MIT", 6 | "ignore": [ 7 | "**/.*", 8 | "build", 9 | "speed", 10 | "test", 11 | "*.md", 12 | "AUTHORS.txt", 13 | "Gruntfile.js", 14 | "package.json" 15 | ], 16 | "devDependencies": { 17 | "sizzle": "1.10.19", 18 | "requirejs": "2.1.10", 19 | "qunit": "1.14.0", 20 | "sinon": "1.8.1" 21 | }, 22 | "keywords": [ 23 | "jquery", 24 | "javascript", 25 | "library" 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/ajax/parseJSON.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | // Support: Android 2.3 6 | // Workaround failure to string-cast null input 7 | jQuery.parseJSON = function( data ) { 8 | return JSON.parse( data + "" ); 9 | }; 10 | 11 | return jQuery.parseJSON; 12 | 13 | }); 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/ajax/parseXML.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | // Cross-browser xml parsing 6 | jQuery.parseXML = function( data ) { 7 | var xml, tmp; 8 | if ( !data || typeof data !== "string" ) { 9 | return null; 10 | } 11 | 12 | // Support: IE9 13 | try { 14 | tmp = new DOMParser(); 15 | xml = tmp.parseFromString( data, "text/xml" ); 16 | } catch ( e ) { 17 | xml = undefined; 18 | } 19 | 20 | if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) { 21 | jQuery.error( "Invalid XML: " + data ); 22 | } 23 | return xml; 24 | }; 25 | 26 | return jQuery.parseXML; 27 | 28 | }); 29 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/ajax/var/nonce.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../../core" 3 | ], function( jQuery ) { 4 | return jQuery.now(); 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/ajax/var/rquery.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return (/\?/); 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/attributes.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./core", 3 | "./attributes/attr", 4 | "./attributes/prop", 5 | "./attributes/classes", 6 | "./attributes/val" 7 | ], function( jQuery ) { 8 | 9 | // Return jQuery for attributes-only inclusion 10 | return jQuery; 11 | }); 12 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/attributes/support.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../var/support" 3 | ], function( support ) { 4 | 5 | (function() { 6 | var input = document.createElement( "input" ), 7 | select = document.createElement( "select" ), 8 | opt = select.appendChild( document.createElement( "option" ) ); 9 | 10 | input.type = "checkbox"; 11 | 12 | // Support: iOS 5.1, Android 4.x, Android 2.3 13 | // Check the default checkbox/radio value ("" on old WebKit; "on" elsewhere) 14 | support.checkOn = input.value !== ""; 15 | 16 | // Must access the parent to make an option select properly 17 | // Support: IE9, IE10 18 | support.optSelected = opt.selected; 19 | 20 | // Make sure that the options inside disabled selects aren't marked as disabled 21 | // (WebKit marks them as disabled) 22 | select.disabled = true; 23 | support.optDisabled = !opt.disabled; 24 | 25 | // Check if an input maintains its value after becoming a radio 26 | // Support: IE9, IE10 27 | input = document.createElement( "input" ); 28 | input.value = "t"; 29 | input.type = "radio"; 30 | support.radioValue = input.value === "t"; 31 | })(); 32 | 33 | return support; 34 | 35 | }); 36 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/core/parseHTML.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "./var/rsingleTag", 4 | "../manipulation" // buildFragment 5 | ], function( jQuery, rsingleTag ) { 6 | 7 | // data: string of html 8 | // context (optional): If specified, the fragment will be created in this context, defaults to document 9 | // keepScripts (optional): If true, will include scripts passed in the html string 10 | jQuery.parseHTML = function( data, context, keepScripts ) { 11 | if ( !data || typeof data !== "string" ) { 12 | return null; 13 | } 14 | if ( typeof context === "boolean" ) { 15 | keepScripts = context; 16 | context = false; 17 | } 18 | context = context || document; 19 | 20 | var parsed = rsingleTag.exec( data ), 21 | scripts = !keepScripts && []; 22 | 23 | // Single tag 24 | if ( parsed ) { 25 | return [ context.createElement( parsed[1] ) ]; 26 | } 27 | 28 | parsed = jQuery.buildFragment( [ data ], context, scripts ); 29 | 30 | if ( scripts && scripts.length ) { 31 | jQuery( scripts ).remove(); 32 | } 33 | 34 | return jQuery.merge( [], parsed.childNodes ); 35 | }; 36 | 37 | return jQuery.parseHTML; 38 | 39 | }); 40 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/core/var/rsingleTag.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | // Match a standalone tag 3 | return (/^<(\w+)\s*\/?>(?:<\/\1>|)$/); 4 | }); 5 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/addGetHookIf.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | 3 | function addGetHookIf( conditionFn, hookFn ) { 4 | // Define the hook, we'll check on the first run if it's really needed. 5 | return { 6 | get: function() { 7 | if ( conditionFn() ) { 8 | // Hook not needed (or it's not possible to use it due to missing dependency), 9 | // remove it. 10 | // Since there are no other hooks for marginRight, remove the whole object. 11 | delete this.get; 12 | return; 13 | } 14 | 15 | // Hook needed; redefine it so that the support test is not executed again. 16 | 17 | return (this.get = hookFn).apply( this, arguments ); 18 | } 19 | }; 20 | } 21 | 22 | return addGetHookIf; 23 | 24 | }); 25 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/hiddenVisibleSelectors.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../selector" 4 | ], function( jQuery ) { 5 | 6 | jQuery.expr.filters.hidden = function( elem ) { 7 | // Support: Opera <= 12.12 8 | // Opera reports offsetWidths and offsetHeights less than zero on some elements 9 | return elem.offsetWidth <= 0 && elem.offsetHeight <= 0; 10 | }; 11 | jQuery.expr.filters.visible = function( elem ) { 12 | return !jQuery.expr.filters.hidden( elem ); 13 | }; 14 | 15 | }); 16 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/swap.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | // A method for quickly swapping in/out CSS properties to get correct calculations. 6 | jQuery.swap = function( elem, options, callback, args ) { 7 | var ret, name, 8 | old = {}; 9 | 10 | // Remember the old values, and insert the new ones 11 | for ( name in options ) { 12 | old[ name ] = elem.style[ name ]; 13 | elem.style[ name ] = options[ name ]; 14 | } 15 | 16 | ret = callback.apply( elem, args || [] ); 17 | 18 | // Revert the old values 19 | for ( name in options ) { 20 | elem.style[ name ] = old[ name ]; 21 | } 22 | 23 | return ret; 24 | }; 25 | 26 | return jQuery.swap; 27 | 28 | }); 29 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/var/cssExpand.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return [ "Top", "Right", "Bottom", "Left" ]; 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/var/getStyles.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return function( elem ) { 3 | return elem.ownerDocument.defaultView.getComputedStyle( elem, null ); 4 | }; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/var/isHidden.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../../core", 3 | "../../selector" 4 | // css is assumed 5 | ], function( jQuery ) { 6 | 7 | return function( elem, el ) { 8 | // isHidden might be called from jQuery#filter function; 9 | // in that case, element will be second argument 10 | elem = el || elem; 11 | return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem ); 12 | }; 13 | }); 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/var/rmargin.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return (/^margin/); 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/css/var/rnumnonpx.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../../var/pnum" 3 | ], function( pnum ) { 4 | return new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/data/accepts.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | /** 6 | * Determines whether an object can have data 7 | */ 8 | jQuery.acceptData = function( owner ) { 9 | // Accepts only: 10 | // - Node 11 | // - Node.ELEMENT_NODE 12 | // - Node.DOCUMENT_NODE 13 | // - Object 14 | // - Any 15 | /* jshint -W018 */ 16 | return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); 17 | }; 18 | 19 | return jQuery.acceptData; 20 | }); 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/data/var/data_priv.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../Data" 3 | ], function( Data ) { 4 | return new Data(); 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/data/var/data_user.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../Data" 3 | ], function( Data ) { 4 | return new Data(); 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/deprecated.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./core", 3 | "./traversing" 4 | ], function( jQuery ) { 5 | 6 | // The number of elements contained in the matched element set 7 | jQuery.fn.size = function() { 8 | return this.length; 9 | }; 10 | 11 | jQuery.fn.andSelf = jQuery.fn.addBack; 12 | 13 | }); 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/effects/animatedSelector.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../selector", 4 | "../effects" 5 | ], function( jQuery ) { 6 | 7 | jQuery.expr.filters.animated = function( elem ) { 8 | return jQuery.grep(jQuery.timers, function( fn ) { 9 | return elem === fn.elem; 10 | }).length; 11 | }; 12 | 13 | }); 14 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/event/alias.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../event" 4 | ], function( jQuery ) { 5 | 6 | jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " + 7 | "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + 8 | "change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) { 9 | 10 | // Handle event binding 11 | jQuery.fn[ name ] = function( data, fn ) { 12 | return arguments.length > 0 ? 13 | this.on( name, null, data, fn ) : 14 | this.trigger( name ); 15 | }; 16 | }); 17 | 18 | jQuery.fn.extend({ 19 | hover: function( fnOver, fnOut ) { 20 | return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); 21 | }, 22 | 23 | bind: function( types, data, fn ) { 24 | return this.on( types, null, data, fn ); 25 | }, 26 | unbind: function( types, fn ) { 27 | return this.off( types, null, fn ); 28 | }, 29 | 30 | delegate: function( selector, types, data, fn ) { 31 | return this.on( types, selector, data, fn ); 32 | }, 33 | undelegate: function( selector, types, fn ) { 34 | // ( namespace ) or ( selector, types [, fn] ) 35 | return arguments.length === 1 ? this.off( selector, "**" ) : this.off( types, selector || "**", fn ); 36 | } 37 | }); 38 | 39 | }); 40 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/event/support.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../var/support" 3 | ], function( support ) { 4 | 5 | support.focusinBubbles = "onfocusin" in window; 6 | 7 | return support; 8 | 9 | }); 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/exports/amd.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | // Register as a named AMD module, since jQuery can be concatenated with other 6 | // files that may use define, but not via a proper concatenation script that 7 | // understands anonymous AMD modules. A named AMD is safest and most robust 8 | // way to register. Lowercase jquery is used because AMD module names are 9 | // derived from file names, and jQuery is normally delivered in a lowercase 10 | // file name. Do this after creating the global so that if an AMD module wants 11 | // to call noConflict to hide this version of jQuery, it will work. 12 | 13 | // Note that for maximum portability, libraries that are not jQuery should 14 | // declare themselves as anonymous modules, and avoid setting a global if an 15 | // AMD loader is present. jQuery is a special case. For more information, see 16 | // https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon 17 | 18 | if ( typeof define === "function" && define.amd ) { 19 | define( "jquery", [], function() { 20 | return jQuery; 21 | }); 22 | } 23 | 24 | }); 25 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/exports/global.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../var/strundefined" 4 | ], function( jQuery, strundefined ) { 5 | 6 | var 7 | // Map over jQuery in case of overwrite 8 | _jQuery = window.jQuery, 9 | 10 | // Map over the $ in case of overwrite 11 | _$ = window.$; 12 | 13 | jQuery.noConflict = function( deep ) { 14 | if ( window.$ === jQuery ) { 15 | window.$ = _$; 16 | } 17 | 18 | if ( deep && window.jQuery === jQuery ) { 19 | window.jQuery = _jQuery; 20 | } 21 | 22 | return jQuery; 23 | }; 24 | 25 | // Expose jQuery and $ identifiers, even in 26 | // AMD (#7102#comment:10, https://github.com/jquery/jquery/pull/557) 27 | // and CommonJS for browser emulators (#13566) 28 | if ( typeof noGlobal === strundefined ) { 29 | window.jQuery = window.$ = jQuery; 30 | } 31 | 32 | }); 33 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/jquery.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./core", 3 | "./selector", 4 | "./traversing", 5 | "./callbacks", 6 | "./deferred", 7 | "./core/ready", 8 | "./data", 9 | "./queue", 10 | "./queue/delay", 11 | "./attributes", 12 | "./event", 13 | "./event/alias", 14 | "./manipulation", 15 | "./manipulation/_evalUrl", 16 | "./wrap", 17 | "./css", 18 | "./css/hiddenVisibleSelectors", 19 | "./serialize", 20 | "./ajax", 21 | "./ajax/xhr", 22 | "./ajax/script", 23 | "./ajax/jsonp", 24 | "./ajax/load", 25 | "./effects", 26 | "./effects/animatedSelector", 27 | "./offset", 28 | "./dimensions", 29 | "./deprecated", 30 | "./exports/amd", 31 | "./exports/global" 32 | ], function( jQuery ) { 33 | 34 | return jQuery; 35 | 36 | }); 37 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/manipulation/_evalUrl.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../ajax" 3 | ], function( jQuery ) { 4 | 5 | jQuery._evalUrl = function( url ) { 6 | return jQuery.ajax({ 7 | url: url, 8 | type: "GET", 9 | dataType: "script", 10 | async: false, 11 | global: false, 12 | "throws": true 13 | }); 14 | }; 15 | 16 | return jQuery._evalUrl; 17 | 18 | }); 19 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/manipulation/support.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../var/support" 3 | ], function( support ) { 4 | 5 | (function() { 6 | var fragment = document.createDocumentFragment(), 7 | div = fragment.appendChild( document.createElement( "div" ) ), 8 | input = document.createElement( "input" ); 9 | 10 | // #11217 - WebKit loses check when the name is after the checked attribute 11 | // Support: Windows Web Apps (WWA) 12 | // `name` and `type` need .setAttribute for WWA 13 | input.setAttribute( "type", "radio" ); 14 | input.setAttribute( "checked", "checked" ); 15 | input.setAttribute( "name", "t" ); 16 | 17 | div.appendChild( input ); 18 | 19 | // Support: Safari 5.1, iOS 5.1, Android 4.x, Android 2.3 20 | // old WebKit doesn't clone checked state correctly in fragments 21 | support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; 22 | 23 | // Make sure textarea (and checkbox) defaultValue is properly cloned 24 | // Support: IE9-IE11+ 25 | div.innerHTML = ""; 26 | support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; 27 | })(); 28 | 29 | return support; 30 | 31 | }); 32 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/manipulation/var/rcheckableType.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return (/^(?:checkbox|radio)$/i); 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/outro.js: -------------------------------------------------------------------------------- 1 | })); 2 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/queue/delay.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../queue", 4 | "../effects" // Delay is optional because of this dependency 5 | ], function( jQuery ) { 6 | 7 | // Based off of the plugin by Clint Helfers, with permission. 8 | // http://blindsignals.com/index.php/2009/07/jquery-delay/ 9 | jQuery.fn.delay = function( time, type ) { 10 | time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; 11 | type = type || "fx"; 12 | 13 | return this.queue( type, function( next, hooks ) { 14 | var timeout = setTimeout( next, time ); 15 | hooks.stop = function() { 16 | clearTimeout( timeout ); 17 | }; 18 | }); 19 | }; 20 | 21 | return jQuery.fn.delay; 22 | }); 23 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/selector-sizzle.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./core", 3 | "sizzle" 4 | ], function( jQuery, Sizzle ) { 5 | 6 | jQuery.find = Sizzle; 7 | jQuery.expr = Sizzle.selectors; 8 | jQuery.expr[":"] = jQuery.expr.pseudos; 9 | jQuery.unique = Sizzle.uniqueSort; 10 | jQuery.text = Sizzle.getText; 11 | jQuery.isXMLDoc = Sizzle.isXML; 12 | jQuery.contains = Sizzle.contains; 13 | 14 | }); 15 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/selector.js: -------------------------------------------------------------------------------- 1 | define([ "./selector-sizzle" ]); 2 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/traversing/var/rneedsContext.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../../core", 3 | "../../selector" 4 | ], function( jQuery ) { 5 | return jQuery.expr.match.needsContext; 6 | }); 7 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/arr.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return []; 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/class2type.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | // [[Class]] -> type pairs 3 | return {}; 4 | }); 5 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/concat.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./arr" 3 | ], function( arr ) { 4 | return arr.concat; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/hasOwn.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./class2type" 3 | ], function( class2type ) { 4 | return class2type.hasOwnProperty; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/indexOf.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./arr" 3 | ], function( arr ) { 4 | return arr.indexOf; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/pnum.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source; 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/push.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./arr" 3 | ], function( arr ) { 4 | return arr.push; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/rnotwhite.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return (/\S+/g); 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/slice.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./arr" 3 | ], function( arr ) { 4 | return arr.slice; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/strundefined.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | return typeof undefined; 3 | }); 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/support.js: -------------------------------------------------------------------------------- 1 | define(function() { 2 | // All support tests are defined in their respective modules. 3 | return {}; 4 | }); 5 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/jquery/src/var/toString.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "./class2type" 3 | ], function( class2type ) { 4 | return class2type.toString; 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "moment", 3 | "version": "2.9.0", 4 | "main": "moment.js", 5 | "ignore": [ 6 | "**/.*", 7 | "node_modules", 8 | "bower_components", 9 | "test", 10 | "tests", 11 | "tasks", 12 | "component.json", 13 | "composer.json", 14 | "CONTRIBUTING.md", 15 | "ender.js", 16 | "Gruntfile.js", 17 | "package.js", 18 | "package.json" 19 | ], 20 | "homepage": "https://github.com/moment/moment", 21 | "_release": "2.9.0", 22 | "_resolution": { 23 | "type": "version", 24 | "tag": "2.9.0", 25 | "commit": "8b35bc74c0e88c1a8c58ccb90117a9edc9f6a479" 26 | }, 27 | "_source": "git://github.com/moment/moment.git", 28 | "_target": ">=2.8.0", 29 | "_originalSource": "moment" 30 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011-2014 Tim Wood, Iskren Chernev, Moment.js contributors 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/benchmarks/clone.js: -------------------------------------------------------------------------------- 1 | var Benchmark = require('benchmark'), 2 | moment = require("./../moment.js"), 3 | base = moment('2013-05-25'); 4 | 5 | module.exports = { 6 | name: 'clone', 7 | onComplete: function(){console.log('done');}, 8 | fn: function(){base.clone();}, 9 | async: true 10 | }; 11 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "moment", 3 | "version": "2.9.0", 4 | "main": "moment.js", 5 | "ignore": [ 6 | "**/.*", 7 | "node_modules", 8 | "bower_components", 9 | "test", 10 | "tests", 11 | "tasks", 12 | "component.json", 13 | "composer.json", 14 | "CONTRIBUTING.md", 15 | "ender.js", 16 | "Gruntfile.js", 17 | "package.js", 18 | "package.json" 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/meteor/README.md: -------------------------------------------------------------------------------- 1 | Packaging [Moment](momentjs.org) for [Meteor.js](http://meteor.com). 2 | 3 | 4 | # Meteor 5 | 6 | If you're new to Meteor, here's what the excitement is all about - 7 | [watch the first two minutes](https://www.youtube.com/watch?v=fsi0aJ9yr2o); you'll be hooked by 1:28. 8 | 9 | That screencast is from 2012. In the meantime, Meteor has become a mature JavaScript-everywhere web 10 | development framework. Read more at [Why Meteor](http://www.meteorpedia.com/read/Why_Meteor). 11 | 12 | 13 | # Issues 14 | 15 | If you encounter an issue while using this package, please CC @dandv when you file it in this repo. 16 | 17 | 18 | # DONE 19 | 20 | * Simple test. Should be enough. 21 | 22 | 23 | # TODO 24 | 25 | * Add other tests; however, that is overkill, and the responsibiity of Moment, not of the Meteor integration. 26 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/meteor/export.js: -------------------------------------------------------------------------------- 1 | // moment.js makes `moment` global on the window (or global) object, while Meteor expects a file-scoped global variable 2 | moment = this.moment; 3 | delete this.moment; 4 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/meteor/test.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Tinytest.add('Moment.is', function (test) { 4 | test.ok(moment.isMoment(moment()), {message: 'simple moment object'}); 5 | }); 6 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/moment/scripts/npm_prepublish.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | if [ "$#" != 1 ]; then 6 | echo "Please provide tag to checkout" >&2 7 | exit 1 8 | fi 9 | tag="$1" 10 | 11 | while [ "$PWD" != '/' -a ! -f moment.js ]; do 12 | cd .. 13 | done 14 | 15 | if [ ! -f moment.js ]; then 16 | echo "Run me from the moment repo" >&2 17 | exit 1 18 | fi 19 | 20 | basename=$(basename $PWD) 21 | src=moment-npm-git 22 | dest=moment-npm 23 | 24 | cd .. 25 | 26 | rm -rf $src $dest 27 | 28 | git clone $basename $src 29 | mkdir $dest 30 | 31 | 32 | cp $src/moment.js $dest 33 | cp $src/package.json $dest 34 | cp $src/README.md $dest 35 | cp $src/LICENSE $dest 36 | cp -r $src/locale $dest 37 | cp -r $src/min $dest 38 | cp $src/ender.js $dest 39 | cp $src/package.js $dest 40 | 41 | rm -rf $src 42 | 43 | echo "Check out $dest" 44 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-carousel", 3 | "description": "Angular Carousel - Mobile friendly touch carousel for AngularJS", 4 | "version": "0.3.7", 5 | "homepage": "http://revolunet.github.com/angular-carousel", 6 | "author": "Julien Bouquillon ", 7 | "repository": { 8 | "type": "git", 9 | "url": "git://github.com/revolunet/angular-carousel.git" 10 | }, 11 | "main": [ 12 | "dist/angular-carousel.js", 13 | "dist/angular-carousel.css" 14 | ], 15 | "ignore": [ 16 | "demo" 17 | ], 18 | "dependencies": { 19 | "angular": ">=1.2.10", 20 | "angular-touch": ">=1.2.10" 21 | }, 22 | "devDependencies": { 23 | "angular-mocks": ">=1.2.10" 24 | }, 25 | "_release": "0.3.7", 26 | "_resolution": { 27 | "type": "version", 28 | "tag": "0.3.7", 29 | "commit": "5b2235e0c926d089dce683dd28093150bf204b75" 30 | }, 31 | "_source": "git://github.com/revolunet/angular-carousel.git", 32 | "_target": "~0.3.7", 33 | "_originalSource": "revolunet-angular-carousel", 34 | "_direct": true 35 | } -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "directory": "bower_components", 3 | "json": "bower.json" 4 | } 5 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/.gitignore: -------------------------------------------------------------------------------- 1 | .sass-cache 2 | *.DS_Store 3 | node_modules 4 | bower_components 5 | coverage 6 | .idea -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-carousel", 3 | "description": "Angular Carousel - Mobile friendly touch carousel for AngularJS", 4 | "version": "0.3.7", 5 | "homepage": "http://revolunet.github.com/angular-carousel", 6 | "author": "Julien Bouquillon ", 7 | "repository": { 8 | "type": "git", 9 | "url": "git://github.com/revolunet/angular-carousel.git" 10 | }, 11 | "main": [ 12 | "dist/angular-carousel.js", 13 | "dist/angular-carousel.css" 14 | ], 15 | "ignore": [ 16 | "demo" 17 | ], 18 | "dependencies": { 19 | "angular": ">=1.2.10", 20 | "angular-touch": ">=1.2.10" 21 | }, 22 | "devDependencies": { 23 | "angular-mocks": ">=1.2.10" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/dist/angular-carousel.min.css: -------------------------------------------------------------------------------- 1 | input[type=range]{width:300px}ul[rn-carousel]{overflow:hidden;padding:0;white-space:nowrap;position:relative;-webkit-perspective:1000px;-ms-perspective:1000px;perspective:1000px;-ms-touch-action:pan-y;touch-action:pan-y}ul[rn-carousel]>li{color:#000;-webkit-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;overflow:visible;vertical-align:top;position:absolute;left:0;right:0;white-space:normal;padding:0;margin:0;list-style-type:none;width:100%;height:100%;display:inline-block}ul[rn-carousel-buffered]>li{display:none}ul[rn-carousel-transition=hexagon]{overflow:visible}div.rn-carousel-indicator span{cursor:pointer;color:#666}div.rn-carousel-indicator span.active{color:#fff}.rn-carousel-control{-webkit-transition:opacity .2s ease-out;transition:opacity .2s ease-out;font-size:2rem;position:absolute;top:40%;opacity:.75;cursor:pointer}.rn-carousel-control:hover{opacity:1}.rn-carousel-control.rn-carousel-control-prev{left:.5em}.rn-carousel-control.rn-carousel-control-prev:before{content:"<"}.rn-carousel-control.rn-carousel-control-next{right:.5em}.rn-carousel-control.rn-carousel-control-next:before{content:">"} -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/src/angular-carousel.js: -------------------------------------------------------------------------------- 1 | /*global angular */ 2 | 3 | /* 4 | Angular touch carousel with CSS GPU accel and slide buffering 5 | http://github.com/revolunet/angular-carousel 6 | 7 | */ 8 | 9 | angular.module('angular-carousel', [ 10 | 'ngTouch', 11 | 'angular-carousel.shifty' 12 | ]); 13 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/src/directives/rn-carousel-indicators.js: -------------------------------------------------------------------------------- 1 | angular.module('angular-carousel') 2 | 3 | .directive('rnCarouselIndicators', ['$parse', function($parse) { 4 | return { 5 | restrict: 'A', 6 | scope: { 7 | slides: '=', 8 | index: '=rnCarouselIndex' 9 | }, 10 | templateUrl: 'carousel-indicators.html', 11 | link: function(scope, iElement, iAttributes) { 12 | var indexModel = $parse(iAttributes.rnCarouselIndex); 13 | scope.goToSlide = function(index) { 14 | indexModel.assign(scope.$parent.$parent, index); 15 | }; 16 | } 17 | }; 18 | }]); 19 | 20 | angular.module('angular-carousel').run(['$templateCache', function($templateCache) { 21 | $templateCache.put('carousel-indicators.html', 22 | '' 25 | ); 26 | }]); 27 | -------------------------------------------------------------------------------- /platforms/android/assets/www/bower_components/revolunet-angular-carousel/src/directives/sliceFilter.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | "use strict"; 3 | 4 | angular.module('angular-carousel') 5 | 6 | .filter('carouselSlice', function() { 7 | return function(collection, start, size) { 8 | if (angular.isArray(collection)) { 9 | return collection.slice(start, start + size); 10 | } else if (angular.isObject(collection)) { 11 | // dont try to slice collections :) 12 | return collection; 13 | } 14 | }; 15 | }); 16 | 17 | })(); 18 | -------------------------------------------------------------------------------- /platforms/android/assets/www/controllers/index.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('IndexCtrl', [ '$scope', 3 | function ($scope) { 4 | $scope.slides = [{ 5 | href: 'https://github.com/itead/IoTgo', 6 | src: 'images/home/slideshow/iot.jpg' 7 | }, { 8 | href: 'https://www.indiegogo.com/projects/iotgo-open-source-iot-cloud-solution', 9 | src: 'images/home/slideshow/indiegogo.jpg' 10 | }]; 11 | } 12 | ]); 13 | -------------------------------------------------------------------------------- /platforms/android/assets/www/controllers/login.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('LoginCtrl', [ '$scope', '$window', '$location', 'User', 3 | function ($scope, $window, $location, User) { 4 | $scope.login = function () { 5 | User.login($scope.email, $scope.password, function (err, user) { 6 | if (err) { 7 | $window.alert(err); 8 | return; 9 | } 10 | 11 | $location.path('/devices'); 12 | }); 13 | }; 14 | } 15 | ]); -------------------------------------------------------------------------------- /platforms/android/assets/www/controllers/nav.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo') 2 | .controller('NavCtrl', [ '$scope', 'User', 3 | function ($scope, User) { 4 | $scope.isLoggedIn = User.isLoggedIn; 5 | $scope.logout = User.logout; 6 | } 7 | ]); -------------------------------------------------------------------------------- /platforms/android/assets/www/controllers/profile.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('ProfileCtrl', [ '$scope', '$window', '$location', 'User', 3 | function ($scope, $window, $location, User) { 4 | if (! User.isLoggedIn()) { 5 | $window.alert('Restricted area, please login first!'); 6 | $location.path('/login'); 7 | return; 8 | } 9 | 10 | $scope.getEmail = function () { 11 | return User.getUser().email; 12 | }; 13 | 14 | $scope.getApikey = function () { 15 | return User.getUser().apikey; 16 | }; 17 | 18 | $scope.setPassword = function () { 19 | User.setPassword($scope.oldPassword, $scope.newPassword, 20 | function (err) { 21 | if (err) { 22 | $window.alert(err); 23 | return; 24 | } 25 | 26 | $window.alert('Password changed! Please log in again!'); 27 | User.logout(); 28 | $location.path('/login'); 29 | }); 30 | }; 31 | } 32 | ]); -------------------------------------------------------------------------------- /platforms/android/assets/www/controllers/signup.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('SignupCtrl', [ '$scope', '$window', '$location', 'User', 3 | function ($scope, $window, $location, User) { 4 | $scope.register = function () { 5 | if (! $scope.email || ! $scope.password) { 6 | $window.alert('Email and Password must not be empty!'); 7 | return; 8 | } 9 | 10 | User.register($scope.email, $scope.password, 'no reCAPTCHA', function (err) { 11 | if (err) { 12 | $window.alert(err); 13 | return; 14 | } 15 | 16 | $location.path('/devices'); 17 | }); 18 | }; 19 | } 20 | ]); 21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/cordova_plugins.js: -------------------------------------------------------------------------------- 1 | cordova.define('cordova/plugin_list', function(require, exports, module) { 2 | module.exports = [ 3 | { 4 | "file": "plugins/com.knowledgecode.cordova.websocket/www/websocket.js", 5 | "id": "com.knowledgecode.cordova.websocket.websocket", 6 | "clobbers": [ 7 | "WebSocket" 8 | ] 9 | } 10 | ]; 11 | module.exports.metadata = 12 | // TOP OF METADATA 13 | { 14 | "com.knowledgecode.cordova.websocket": "0.8.0" 15 | } 16 | // BOTTOM OF METADATA 17 | }); -------------------------------------------------------------------------------- /platforms/android/assets/www/filters/type-to-html.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | filter('typeToHtml', function () { 3 | var types = { 4 | '00': 'custom.html', 5 | '01': 'switch.html', 6 | '02': 'light.html', 7 | '03': 'sensor-temperature-humidity.html' 8 | }; 9 | 10 | return function (value, path) { 11 | return path + (types[value] || types['00']); 12 | } 13 | }); -------------------------------------------------------------------------------- /platforms/android/assets/www/filters/type-to-image.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | filter('typeToImage', function () { 3 | var images = { 4 | '00': 'custom.png', 5 | '01': 'switch.png', 6 | '02': 'light.png', 7 | '03': 'sensor-temperature-humidity.png' 8 | }; 9 | 10 | return function (value) { 11 | return images[value] || images['00']; 12 | }; 13 | }); -------------------------------------------------------------------------------- /platforms/android/assets/www/images/contact/itead-address.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/contact/itead-address.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/custom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/custom.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/coding.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/coding.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/create-device.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/create-device.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/device-id.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/device-id.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/indie-device.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/indie-device.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/my-device.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/my-device.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/my-profile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/my-profile.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/status.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/status.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/guide/upload-debug.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/guide/upload-debug.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/arduino.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/arduino.gif -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/banana_pi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/banana_pi.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/bboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/bboard.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/computer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/computer.gif -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/core_evb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/core_evb.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/cuibeboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/cuibeboard.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/galileo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/galileo.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/gboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/gboard.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/hardware.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/hardware.gif -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/iboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/iboard.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/more.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/more.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/rep.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/rep.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/solution.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/solution.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/wboard_pro.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/wboard_pro.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/hardware/wrtnode.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/hardware/wrtnode.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/arduino.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/arduino.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/bb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/bb.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/cb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/cb.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/chipkit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/chipkit.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/coocox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/coocox.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/intel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/intel.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/more.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/process-diy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/process-diy.gif -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/process-ready.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/process-ready.gif -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/rpi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/rpi.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/slideshow/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/slideshow/1.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/slideshow/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/slideshow/2.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/slideshow/indiegogo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/slideshow/indiegogo.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/slideshow/iot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/slideshow/iot.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/home/wrt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/home/wrt.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/iotgo-arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/iotgo-arch.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/light.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/logo-grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/logo-grey.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/logo.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/sensor-temperature-humidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/sensor-temperature-humidity.png -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/app-design.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/app-design.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/banner-feature.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/banner-feature.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/banner-socket.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/banner-socket.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/banner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/banner.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/box-wifi-socket.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/box-wifi-socket.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/building-server.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/building-server.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/contact-us.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/contact-us.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/custom-pcb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/custom-pcb.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/customizable.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/customizable.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/how-it-works.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/how-it-works.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/low-cost.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/low-cost.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/mobile-app.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/mobile-app.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/roll-wifi-socket.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/roll-wifi-socket.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/shell-purchase.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/shell-purchase.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/smart hardware_r19_c11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/smart hardware_r19_c11.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/smart hardware_r20_c2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/smart hardware_r20_c2.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/smart hardware_r25_c11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/smart hardware_r25_c11.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/smart hardware_r25_c2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/smart hardware_r25_c2.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/title.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/title.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/video.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/video.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/solution/web-server.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/solution/web-server.jpg -------------------------------------------------------------------------------- /platforms/android/assets/www/images/switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/assets/www/images/switch.png -------------------------------------------------------------------------------- /platforms/android/assets/www/services/auth-interceptor.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | factory('authInterceptor', [ '$window', '$q', function ($window, $q) { 3 | return { 4 | request: function (config) { 5 | config.headers = config.headers || {}; 6 | if ($window.sessionStorage.token) { 7 | config.headers.Authorization = 'Bearer ' + $window.sessionStorage.token; 8 | } 9 | return config; 10 | }, 11 | response: function (response) { 12 | if (response.status === 401) { 13 | $window.alert('Restricted area, please log in first!'); 14 | return; 15 | } 16 | 17 | return response; 18 | } 19 | } 20 | } ]); -------------------------------------------------------------------------------- /platforms/android/assets/www/services/settings.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo') 2 | 3 | .factory('Settings', [ '$location', function ($location) { 4 | //var host = $location.host() + ':' + $location.port(); 5 | var host = '172.16.7.188:3000'; 6 | 7 | return { 8 | httpServer: 'http://' + host, 9 | websocketServer: 'ws://' + host 10 | }; 11 | } ]); 12 | -------------------------------------------------------------------------------- /platforms/android/assets/www/views/contact.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 |
7 |
8 |

ITEAD Intelligent Systems Co. Ltd

9 |

4F, Bilding 4th, Wangtang Industrial Zone

10 |

Xili Town, Nanshan Dist.

11 |

Shenzhen, GD 518000

12 |

People's Republic of China

13 |

Phone: +86 755 27955416

14 |

FAX: +86 755 29610458

15 |

Email: 16 | info@iteadstudio.com

17 |
18 |
19 |
20 |
21 | -------------------------------------------------------------------------------- /platforms/android/assets/www/views/login.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /platforms/android/assets/www/views/pricing.html: -------------------------------------------------------------------------------- 1 | Pricing -------------------------------------------------------------------------------- /platforms/android/assets/www/views/signup.html: -------------------------------------------------------------------------------- 1 | 20 | -------------------------------------------------------------------------------- /platforms/android/assets/www/views/types/custom.html: -------------------------------------------------------------------------------- 1 |
2 |
{{activeDevice.params | json}}
3 |
-------------------------------------------------------------------------------- /platforms/android/assets/www/views/types/sensor-temperature-humidity.html: -------------------------------------------------------------------------------- 1 |
2 |
Humidity: {{activeDevice.params.humidity}}%
3 |
Temperature: {{activeDevice.params.temperature}}°C
4 |
-------------------------------------------------------------------------------- /platforms/android/cordova/android_sdk_version: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | /* 4 | Licensed to the Apache Software Foundation (ASF) under one 5 | or more contributor license agreements. See the NOTICE file 6 | distributed with this work for additional information 7 | regarding copyright ownership. The ASF licenses this file 8 | to you under the Apache License, Version 2.0 (the 9 | "License"); you may not use this file except in compliance 10 | with the License. You may obtain a copy of the License at 11 | 12 | http://www.apache.org/licenses/LICENSE-2.0 13 | 14 | Unless required by applicable law or agreed to in writing, 15 | software distributed under the License is distributed on an 16 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17 | KIND, either express or implied. See the License for the 18 | specific language governing permissions and limitations 19 | under the License. 20 | */ 21 | 22 | var android_sdk_version = require('./lib/android_sdk_version'); 23 | 24 | android_sdk_version.run().done(null, function(err) { 25 | console.log(err); 26 | process.exit(2); 27 | }); 28 | 29 | 30 | -------------------------------------------------------------------------------- /platforms/android/cordova/build.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0build" 20 | IF EXIST %script_path% ( 21 | node %script_path% %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'build' script in 'cordova' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/check_reqs: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | /* 4 | Licensed to the Apache Software Foundation (ASF) under one 5 | or more contributor license agreements. See the NOTICE file 6 | distributed with this work for additional information 7 | regarding copyright ownership. The ASF licenses this file 8 | to you under the Apache License, Version 2.0 (the 9 | "License"); you may not use this file except in compliance 10 | with the License. You may obtain a copy of the License at 11 | 12 | http://www.apache.org/licenses/LICENSE-2.0 13 | 14 | Unless required by applicable law or agreed to in writing, 15 | software distributed under the License is distributed on an 16 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17 | KIND, either express or implied. See the License for the 18 | specific language governing permissions and limitations 19 | under the License. 20 | */ 21 | 22 | var check_reqs = require('./lib/check_reqs'); 23 | 24 | check_reqs.run().done( 25 | function success() { 26 | console.log('Looks like your environment fully supports cordova-android development!'); 27 | }, function fail(err) { 28 | console.log(err); 29 | process.exit(2); 30 | } 31 | ); 32 | -------------------------------------------------------------------------------- /platforms/android/cordova/clean.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0clean" 20 | IF EXIST %script_path% ( 21 | node %script_path% %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'clean' script in 'cordova' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/defaults.xml: -------------------------------------------------------------------------------- 1 | 2 | 20 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /platforms/android/cordova/lib/install-device.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0install-device" 20 | IF EXIST %script_path% ( 21 | node "%script_path%" %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'install-device' script in 'cordova\lib' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/lib/install-emulator.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0install-emulator" 20 | IF EXIST %script_path% ( 21 | node "%script_path%" %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'install-emulator' script in 'cordova\lib' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/lib/list-devices.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0list-devices" 20 | IF EXIST %script_path% ( 21 | node "%script_path%" %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'list-devices' script in 'cordova\lib' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/lib/list-emulator-images.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0list-emulator-images" 20 | IF EXIST %script_path% ( 21 | node "%script_path%" %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'list-emulator-images' script in 'cordova\lib' folder, aborting...>&2 25 | EXIT /B 1 26 | ) 27 | -------------------------------------------------------------------------------- /platforms/android/cordova/lib/list-started-emulators.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0list-started-emulators" 20 | IF EXIST %script_path% ( 21 | node "%script_path%" %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'list-started-emulators' script in 'cordova\lib' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/lib/start-emulator.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0start-emulator" 20 | IF EXIST %script_path% ( 21 | node "%script_path%" %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'start-emulator' script in 'cordova\lib' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/log.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0log" 20 | IF EXIST %script_path% ( 21 | node %script_path% %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'log' script in 'cordova' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/run.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0run" 20 | IF EXIST %script_path% ( 21 | node %script_path% %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'run' script in 'cordova' folder, aborting...>&2 25 | EXIT /B 1 26 | ) -------------------------------------------------------------------------------- /platforms/android/cordova/version: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | /* 4 | Licensed to the Apache Software Foundation (ASF) under one 5 | or more contributor license agreements. See the NOTICE file 6 | distributed with this work for additional information 7 | regarding copyright ownership. The ASF licenses this file 8 | to you under the Apache License, Version 2.0 (the 9 | "License"); you may not use this file except in compliance 10 | with the License. You may obtain a copy of the License at 11 | 12 | http://www.apache.org/licenses/LICENSE-2.0 13 | 14 | Unless required by applicable law or agreed to in writing, 15 | software distributed under the License is distributed on an 16 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17 | KIND, either express or implied. See the License for the 18 | specific language governing permissions and limitations 19 | under the License. 20 | */ 21 | 22 | // Coho updates this line: 23 | var VERSION = "3.6.4"; 24 | 25 | console.log(VERSION); 26 | -------------------------------------------------------------------------------- /platforms/android/cordova/version.bat: -------------------------------------------------------------------------------- 1 | :: Licensed to the Apache Software Foundation (ASF) under one 2 | :: or more contributor license agreements. See the NOTICE file 3 | :: distributed with this work for additional information 4 | :: regarding copyright ownership. The ASF licenses this file 5 | :: to you under the Apache License, Version 2.0 (the 6 | :: "License"); you may not use this file except in compliance 7 | :: with the License. You may obtain a copy of the License at 8 | :: 9 | :: http://www.apache.org/licenses/LICENSE-2.0 10 | :: 11 | :: Unless required by applicable law or agreed to in writing, 12 | :: software distributed under the License is distributed on an 13 | :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | :: KIND, either express or implied. See the License for the 15 | :: specific language governing permissions and limitations 16 | :: under the License. 17 | 18 | @ECHO OFF 19 | SET script_path="%~dp0version" 20 | IF EXIST %script_path% ( 21 | node %script_path% %* 22 | ) ELSE ( 23 | ECHO. 24 | ECHO ERROR: Could not find 'version' script in 'cordova' folder, aborting...>&2 25 | EXIT /B 1 26 | ) 27 | -------------------------------------------------------------------------------- /platforms/android/custom_rules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /platforms/android/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | # Project target. 13 | target=android-19 14 | android.library.reference.1=CordovaLib 15 | -------------------------------------------------------------------------------- /platforms/android/res/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-land-hdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-land-hdpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-land-ldpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-land-ldpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-land-mdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-land-mdpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-land-xhdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-land-xhdpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-ldpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-ldpi/icon.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-mdpi/icon.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-port-hdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-port-hdpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-port-ldpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-port-ldpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-port-mdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-port-mdpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-port-xhdpi/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-port-xhdpi/screen.png -------------------------------------------------------------------------------- /platforms/android/res/drawable-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable-xhdpi/icon.png -------------------------------------------------------------------------------- /platforms/android/res/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/platforms/android/res/drawable/icon.png -------------------------------------------------------------------------------- /platforms/android/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | IoTgo Web 4 | @string/app_name 5 | @string/launcher_name 6 | 7 | -------------------------------------------------------------------------------- /platforms/android/res/xml/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | IoTgo Web 8 | 9 | A sample Apache Cordova application that responds to the deviceready event. 10 | 11 | 12 | Apache Cordova Team 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /platforms/android/settings.gradle: -------------------------------------------------------------------------------- 1 | import java.util.regex.Pattern 2 | 3 | def getProjectList() { 4 | def manifestFile = file("project.properties") 5 | def pattern = Pattern.compile("android.library.reference.(\\d+)\\s*=\\s*(.*)") 6 | def matcher = pattern.matcher(manifestFile.getText()) 7 | def projects = [] 8 | while (matcher.find()) { 9 | projects.add(":" + matcher.group(2).replace("/",":")) 10 | } 11 | return projects 12 | } 13 | 14 | for (subproject in getProjectList()) { 15 | include subproject 16 | } 17 | 18 | include ':' 19 | -------------------------------------------------------------------------------- /platforms/android/src/org/eclipse/jetty/io/ConnectedEndPoint.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.io; 20 | 21 | public interface ConnectedEndPoint extends EndPoint 22 | { 23 | Connection getConnection(); 24 | void setConnection(Connection connection); 25 | } 26 | -------------------------------------------------------------------------------- /platforms/android/src/org/eclipse/jetty/io/nio/AsyncConnection.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.io.nio; 20 | 21 | import java.io.IOException; 22 | 23 | import org.eclipse.jetty.io.Connection; 24 | 25 | public interface AsyncConnection extends Connection 26 | { 27 | void onInputShutdown() throws IOException; 28 | } 29 | -------------------------------------------------------------------------------- /platforms/android/src/org/eclipse/jetty/util/component/Dumpable.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.util.component; 20 | 21 | import java.io.IOException; 22 | 23 | public interface Dumpable 24 | { 25 | String dump(); 26 | void dump(Appendable out,String indent) throws IOException; 27 | } 28 | -------------------------------------------------------------------------------- /platforms/android/src/org/eclipse/jetty/websocket/MaskGen.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.websocket; 20 | 21 | public interface MaskGen 22 | { 23 | void genMask(byte[] mask); 24 | } 25 | -------------------------------------------------------------------------------- /plugins/android.json: -------------------------------------------------------------------------------- 1 | { 2 | "prepare_queue": { 3 | "installed": [], 4 | "uninstalled": [] 5 | }, 6 | "config_munge": { 7 | "files": { 8 | "res/xml/config.xml": { 9 | "parents": { 10 | "/*": [ 11 | { 12 | "xml": "", 13 | "count": 1 14 | } 15 | ] 16 | } 17 | }, 18 | "AndroidManifest.xml": { 19 | "parents": { 20 | "/*": [ 21 | { 22 | "xml": "", 23 | "count": 1 24 | } 25 | ] 26 | } 27 | } 28 | } 29 | }, 30 | "installed_plugins": { 31 | "com.knowledgecode.cordova.websocket": { 32 | "PACKAGE_NAME": "com.iteadstudio.iotgoweb" 33 | } 34 | }, 35 | "dependent_plugins": {} 36 | } -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/.fetch.json: -------------------------------------------------------------------------------- 1 | {"source":{"type":"registry","id":"com.knowledgecode.cordova.websocket"}} -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/NOTICE: -------------------------------------------------------------------------------- 1 | ============================================================== 2 | Jetty Web Container 3 | Copyright 1995-2014 Mort Bay Consulting Pty Ltd. 4 | ============================================================== 5 | 6 | The Jetty Web Container is Copyright Mort Bay Consulting Pty Ltd 7 | unless otherwise noted. 8 | 9 | Jetty is dual licensed under both 10 | 11 | * The Apache 2.0 License 12 | http://www.apache.org/licenses/LICENSE-2.0.html 13 | 14 | and 15 | 16 | * The Eclipse Public 1.0 License 17 | http://www.eclipse.org/legal/epl-v10.html 18 | 19 | Jetty may be distributed under either license. 20 | 21 | The javax.servlet package used was sourced from the Apache 22 | Software Foundation and is distributed under the apache 2.0 23 | license. 24 | 25 | The UnixCrypt.java code implements the one way cryptography used by 26 | Unix systems for simple password protection. Copyright 1996 Aki Yoshida, 27 | modified April 2001 by Iris Van den Broeke, Daniel Deville. 28 | Permission to use, copy, modify and distribute UnixCrypt 29 | for non-commercial or commercial purposes and without fee is 30 | granted provided that the copyright notice appears in all copies. 31 | 32 | -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.8.0", 3 | "name": "com.knowledgecode.cordova.websocket", 4 | "cordova_name": "WebSocket for Android", 5 | "description": "Cordova WebSocket Plugin for Android", 6 | "license": "Apache 2.0", 7 | "keywords": [ 8 | "cordova", 9 | "phonegap", 10 | "websocket", 11 | "android" 12 | ], 13 | "platforms": [ 14 | "android" 15 | ], 16 | "engines": [ 17 | { 18 | "name": "cordova", 19 | "version": ">=3.0.0" 20 | } 21 | ] 22 | } -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/src/android/org/eclipse/jetty/io/ConnectedEndPoint.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.io; 20 | 21 | public interface ConnectedEndPoint extends EndPoint 22 | { 23 | Connection getConnection(); 24 | void setConnection(Connection connection); 25 | } 26 | -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/src/android/org/eclipse/jetty/io/nio/AsyncConnection.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.io.nio; 20 | 21 | import java.io.IOException; 22 | 23 | import org.eclipse.jetty.io.Connection; 24 | 25 | public interface AsyncConnection extends Connection 26 | { 27 | void onInputShutdown() throws IOException; 28 | } 29 | -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/src/android/org/eclipse/jetty/util/component/Dumpable.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.util.component; 20 | 21 | import java.io.IOException; 22 | 23 | public interface Dumpable 24 | { 25 | String dump(); 26 | void dump(Appendable out,String indent) throws IOException; 27 | } 28 | -------------------------------------------------------------------------------- /plugins/com.knowledgecode.cordova.websocket/src/android/org/eclipse/jetty/websocket/MaskGen.java: -------------------------------------------------------------------------------- 1 | // 2 | // ======================================================================== 3 | // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 | // ------------------------------------------------------------------------ 5 | // All rights reserved. This program and the accompanying materials 6 | // are made available under the terms of the Eclipse Public License v1.0 7 | // and Apache License v2.0 which accompanies this distribution. 8 | // 9 | // The Eclipse Public License is available at 10 | // http://www.eclipse.org/legal/epl-v10.html 11 | // 12 | // The Apache License v2.0 is available at 13 | // http://www.opensource.org/licenses/apache2.0.php 14 | // 15 | // You may elect to redistribute this code under either of these licenses. 16 | // ======================================================================== 17 | // 18 | 19 | package org.eclipse.jetty.websocket; 20 | 21 | public interface MaskGen 22 | { 23 | void genMask(byte[] mask); 24 | } 25 | -------------------------------------------------------------------------------- /www/.gitignore: -------------------------------------------------------------------------------- 1 | # Dev dependencies 2 | bower_components 3 | -------------------------------------------------------------------------------- /www/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "iotgo frontend app", 3 | "version": "0.0.1", 4 | "description": "iotgo frontend dependencies", 5 | "moduleType": [ 6 | "node" 7 | ], 8 | "keywords": [ 9 | "iot" 10 | ], 11 | "authors": [ 12 | "iotgo@iteadstudio.com" 13 | ], 14 | "license": "MIT", 15 | "private": true, 16 | "ignore": [ 17 | "**/.*", 18 | "node_modules", 19 | "bower_components", 20 | "test", 21 | "tests" 22 | ], 23 | "dependencies": { 24 | "angular": "~1.3.5", 25 | "angular-route": "~1.3.5", 26 | "angular-resource": "~1.3.5", 27 | "jquery": "~2.1.1", 28 | "bootstrap": "~3.3.0", 29 | "fontawesome": "~4.2.0", 30 | "angular-touch": "~1.3.5", 31 | "revolunet-angular-carousel": "~0.3.7" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /www/controllers/index.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('IndexCtrl', [ '$scope', 3 | function ($scope) { 4 | $scope.slides = [{ 5 | href: 'https://github.com/itead/IoTgo', 6 | src: 'images/home/slideshow/iot.jpg' 7 | }, { 8 | href: 'https://www.indiegogo.com/projects/iotgo-open-source-iot-cloud-solution', 9 | src: 'images/home/slideshow/indiegogo.jpg' 10 | }]; 11 | } 12 | ]); 13 | -------------------------------------------------------------------------------- /www/controllers/login.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('LoginCtrl', [ '$scope', '$window', '$location', 'User', 3 | function ($scope, $window, $location, User) { 4 | $scope.login = function () { 5 | User.login($scope.email, $scope.password, function (err, user) { 6 | if (err) { 7 | $window.alert(err); 8 | return; 9 | } 10 | 11 | $location.path('/devices'); 12 | }); 13 | }; 14 | } 15 | ]); -------------------------------------------------------------------------------- /www/controllers/nav.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo') 2 | .controller('NavCtrl', [ '$scope', 'User', 3 | function ($scope, User) { 4 | $scope.isLoggedIn = User.isLoggedIn; 5 | $scope.logout = User.logout; 6 | } 7 | ]); -------------------------------------------------------------------------------- /www/controllers/profile.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('ProfileCtrl', [ '$scope', '$window', '$location', 'User', 3 | function ($scope, $window, $location, User) { 4 | if (! User.isLoggedIn()) { 5 | $window.alert('Restricted area, please login first!'); 6 | $location.path('/login'); 7 | return; 8 | } 9 | 10 | $scope.getEmail = function () { 11 | return User.getUser().email; 12 | }; 13 | 14 | $scope.getApikey = function () { 15 | return User.getUser().apikey; 16 | }; 17 | 18 | $scope.setPassword = function () { 19 | User.setPassword($scope.oldPassword, $scope.newPassword, 20 | function (err) { 21 | if (err) { 22 | $window.alert(err); 23 | return; 24 | } 25 | 26 | $window.alert('Password changed! Please log in again!'); 27 | User.logout(); 28 | $location.path('/login'); 29 | }); 30 | }; 31 | } 32 | ]); -------------------------------------------------------------------------------- /www/controllers/signup.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | controller('SignupCtrl', [ '$scope', '$window', '$location', 'User', 3 | function ($scope, $window, $location, User) { 4 | $scope.register = function () { 5 | if (! $scope.email || ! $scope.password) { 6 | $window.alert('Email and Password must not be empty!'); 7 | return; 8 | } 9 | 10 | User.register($scope.email, $scope.password, 'no reCAPTCHA', function (err) { 11 | if (err) { 12 | $window.alert(err); 13 | return; 14 | } 15 | 16 | $location.path('/devices'); 17 | }); 18 | }; 19 | } 20 | ]); 21 | -------------------------------------------------------------------------------- /www/filters/type-to-html.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | filter('typeToHtml', function () { 3 | var types = { 4 | '00': 'custom.html', 5 | '01': 'switch.html', 6 | '02': 'light.html', 7 | '03': 'sensor-temperature-humidity.html' 8 | }; 9 | 10 | return function (value, path) { 11 | return path + (types[value] || types['00']); 12 | } 13 | }); -------------------------------------------------------------------------------- /www/filters/type-to-image.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | filter('typeToImage', function () { 3 | var images = { 4 | '00': 'custom.png', 5 | '01': 'switch.png', 6 | '02': 'light.png', 7 | '03': 'sensor-temperature-humidity.png' 8 | }; 9 | 10 | return function (value) { 11 | return images[value] || images['00']; 12 | }; 13 | }); -------------------------------------------------------------------------------- /www/images/contact/itead-address.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/contact/itead-address.png -------------------------------------------------------------------------------- /www/images/custom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/custom.png -------------------------------------------------------------------------------- /www/images/guide/coding.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/coding.jpg -------------------------------------------------------------------------------- /www/images/guide/create-device.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/create-device.jpg -------------------------------------------------------------------------------- /www/images/guide/device-id.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/device-id.jpg -------------------------------------------------------------------------------- /www/images/guide/indie-device.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/indie-device.jpg -------------------------------------------------------------------------------- /www/images/guide/my-device.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/my-device.jpg -------------------------------------------------------------------------------- /www/images/guide/my-profile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/my-profile.jpg -------------------------------------------------------------------------------- /www/images/guide/status.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/status.jpg -------------------------------------------------------------------------------- /www/images/guide/upload-debug.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/guide/upload-debug.jpg -------------------------------------------------------------------------------- /www/images/hardware/arduino.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/arduino.gif -------------------------------------------------------------------------------- /www/images/hardware/banana_pi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/banana_pi.jpg -------------------------------------------------------------------------------- /www/images/hardware/bboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/bboard.jpg -------------------------------------------------------------------------------- /www/images/hardware/computer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/computer.gif -------------------------------------------------------------------------------- /www/images/hardware/core_evb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/core_evb.jpg -------------------------------------------------------------------------------- /www/images/hardware/cuibeboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/cuibeboard.jpg -------------------------------------------------------------------------------- /www/images/hardware/galileo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/galileo.jpg -------------------------------------------------------------------------------- /www/images/hardware/gboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/gboard.jpg -------------------------------------------------------------------------------- /www/images/hardware/hardware.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/hardware.gif -------------------------------------------------------------------------------- /www/images/hardware/iboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/iboard.jpg -------------------------------------------------------------------------------- /www/images/hardware/more.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/more.jpg -------------------------------------------------------------------------------- /www/images/hardware/rep.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/rep.jpg -------------------------------------------------------------------------------- /www/images/hardware/solution.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/solution.jpg -------------------------------------------------------------------------------- /www/images/hardware/wboard_pro.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/wboard_pro.jpg -------------------------------------------------------------------------------- /www/images/hardware/wrtnode.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/hardware/wrtnode.jpg -------------------------------------------------------------------------------- /www/images/home/arduino.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/arduino.png -------------------------------------------------------------------------------- /www/images/home/bb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/bb.png -------------------------------------------------------------------------------- /www/images/home/cb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/cb.png -------------------------------------------------------------------------------- /www/images/home/chipkit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/chipkit.png -------------------------------------------------------------------------------- /www/images/home/coocox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/coocox.png -------------------------------------------------------------------------------- /www/images/home/intel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/intel.png -------------------------------------------------------------------------------- /www/images/home/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/more.png -------------------------------------------------------------------------------- /www/images/home/process-diy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/process-diy.gif -------------------------------------------------------------------------------- /www/images/home/process-ready.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/process-ready.gif -------------------------------------------------------------------------------- /www/images/home/rpi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/rpi.png -------------------------------------------------------------------------------- /www/images/home/slideshow/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/slideshow/1.jpg -------------------------------------------------------------------------------- /www/images/home/slideshow/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/slideshow/2.jpg -------------------------------------------------------------------------------- /www/images/home/slideshow/indiegogo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/slideshow/indiegogo.jpg -------------------------------------------------------------------------------- /www/images/home/slideshow/iot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/slideshow/iot.jpg -------------------------------------------------------------------------------- /www/images/home/wrt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/home/wrt.png -------------------------------------------------------------------------------- /www/images/iotgo-arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/iotgo-arch.png -------------------------------------------------------------------------------- /www/images/light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/light.png -------------------------------------------------------------------------------- /www/images/logo-grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/logo-grey.png -------------------------------------------------------------------------------- /www/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/logo.png -------------------------------------------------------------------------------- /www/images/sensor-temperature-humidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/sensor-temperature-humidity.png -------------------------------------------------------------------------------- /www/images/solution/app-design.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/app-design.jpg -------------------------------------------------------------------------------- /www/images/solution/banner-feature.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/banner-feature.jpg -------------------------------------------------------------------------------- /www/images/solution/banner-socket.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/banner-socket.jpg -------------------------------------------------------------------------------- /www/images/solution/banner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/banner.jpg -------------------------------------------------------------------------------- /www/images/solution/box-wifi-socket.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/box-wifi-socket.jpg -------------------------------------------------------------------------------- /www/images/solution/building-server.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/building-server.jpg -------------------------------------------------------------------------------- /www/images/solution/contact-us.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/contact-us.jpg -------------------------------------------------------------------------------- /www/images/solution/custom-pcb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/custom-pcb.jpg -------------------------------------------------------------------------------- /www/images/solution/customizable.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/customizable.jpg -------------------------------------------------------------------------------- /www/images/solution/how-it-works.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/how-it-works.jpg -------------------------------------------------------------------------------- /www/images/solution/low-cost.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/low-cost.jpg -------------------------------------------------------------------------------- /www/images/solution/mobile-app.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/mobile-app.jpg -------------------------------------------------------------------------------- /www/images/solution/roll-wifi-socket.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/roll-wifi-socket.jpg -------------------------------------------------------------------------------- /www/images/solution/shell-purchase.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/shell-purchase.jpg -------------------------------------------------------------------------------- /www/images/solution/smart hardware_r19_c11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/smart hardware_r19_c11.jpg -------------------------------------------------------------------------------- /www/images/solution/smart hardware_r20_c2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/smart hardware_r20_c2.jpg -------------------------------------------------------------------------------- /www/images/solution/smart hardware_r25_c11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/smart hardware_r25_c11.jpg -------------------------------------------------------------------------------- /www/images/solution/smart hardware_r25_c2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/smart hardware_r25_c2.jpg -------------------------------------------------------------------------------- /www/images/solution/title.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/title.jpg -------------------------------------------------------------------------------- /www/images/solution/video.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/video.jpg -------------------------------------------------------------------------------- /www/images/solution/web-server.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/solution/web-server.jpg -------------------------------------------------------------------------------- /www/images/switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itead/IoTgo_Android_App/8450ab54d2f1889e497096adef47b05c1880f9f3/www/images/switch.png -------------------------------------------------------------------------------- /www/services/auth-interceptor.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo'). 2 | factory('authInterceptor', [ '$window', '$q', function ($window, $q) { 3 | return { 4 | request: function (config) { 5 | config.headers = config.headers || {}; 6 | if ($window.sessionStorage.token) { 7 | config.headers.Authorization = 'Bearer ' + $window.sessionStorage.token; 8 | } 9 | return config; 10 | }, 11 | response: function (response) { 12 | if (response.status === 401) { 13 | $window.alert('Restricted area, please log in first!'); 14 | return; 15 | } 16 | 17 | return response; 18 | } 19 | } 20 | } ]); -------------------------------------------------------------------------------- /www/services/settings.js: -------------------------------------------------------------------------------- 1 | angular.module('iotgo') 2 | 3 | .factory('Settings', [ '$location', function ($location) { 4 | //var host = $location.host() + ':' + $location.port(); 5 | var host = '172.16.7.188:3000'; 6 | 7 | return { 8 | httpServer: 'http://' + host, 9 | websocketServer: 'ws://' + host 10 | }; 11 | } ]); 12 | -------------------------------------------------------------------------------- /www/views/contact.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 |
7 |
8 |

ITEAD Intelligent Systems Co. Ltd

9 |

4F, Bilding 4th, Wangtang Industrial Zone

10 |

Xili Town, Nanshan Dist.

11 |

Shenzhen, GD 518000

12 |

People's Republic of China

13 |

Phone: +86 755 27955416

14 |

FAX: +86 755 29610458

15 |

Email: 16 | info@iteadstudio.com

17 |
18 |
19 |
20 |
21 | -------------------------------------------------------------------------------- /www/views/login.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /www/views/pricing.html: -------------------------------------------------------------------------------- 1 | Pricing -------------------------------------------------------------------------------- /www/views/signup.html: -------------------------------------------------------------------------------- 1 | 20 | -------------------------------------------------------------------------------- /www/views/types/custom.html: -------------------------------------------------------------------------------- 1 |
2 |
{{activeDevice.params | json}}
3 |
-------------------------------------------------------------------------------- /www/views/types/sensor-temperature-humidity.html: -------------------------------------------------------------------------------- 1 |
2 |
Humidity: {{activeDevice.params.humidity}}%
3 |
Temperature: {{activeDevice.params.temperature}}°C
4 |
--------------------------------------------------------------------------------