esri / offline-editor-js Goto Github PK
View Code? Open in Web Editor NEWArcGIS JavaScript library for handling offline editing and tiling.
Home Page: http://esri.github.io/offline-editor-js/demo/
License: Apache License 2.0
ArcGIS JavaScript library for handling offline editing and tiling.
Home Page: http://esri.github.io/offline-editor-js/demo/
License: Apache License 2.0
Create a sample that demonstrates this library working with PhoneGap/Cordova.
Single edits work, multiple edits seem to be failing. Reproducible.
Sometimes it writes duplicate information, sometimes is doesn't represent an add, update or delete that has definitely occured.
I think the last build broke this even though the tests are passing. I'll take a look.
Javier, I changed my mind. I agree with you that we should add this as a submodule. After thinking about it for a bit, I actually like the web interface better than the node "pure text" terminal view.
Need to dynamically determine which fields are available and configure the attribute inspector to use them. We'll probably need some sort of configuration file or preconfigured object that specifies which fields we want to not display. Default will be to display all fields in the attribute inspector.
Caveat: library won't be able to create new attributes that don't already exist on the server.
The tile library has ability to allow user to download a csv file containing the cut tiles. This issue is for building the functionality to allow the reverse, which is programmatically reading the CSV-based tiles and allowing them to be read back into indexedDB.
This provides a mechanism to make the tiles portable amongst different machines and devices.
There needs to be a way to indicate that a graphic (point, line or polygon) has be created or deleted while offline. This will allow someone, at a glance, to determine was has been done. This could be as simple as changing the color, or adding some sort of icon to the graphic.
And/or there needs to be a table of edits that is updated as adds, updates, deletes occur.
Firefox debugger console doesn't seem like the shim. We need to be able to debug in Firefox. I haven't looked at this in detail, however app fails because of numerous errors such as:
setting a property that has only a getter Line 2
'onreadystatechange' getter called on an object that does not implement interface XMLHttpRequest. Line 2
'readyState' getter called on an object that does not implement interface XMLHttpRequest. Line 2
'timeout' getter called on an object that does not implement interface XMLHttpRequest. Line 2
Unable to commit edits because graphic attributes aren't rehydrating correctly when application first loads.
do this FIRST!
it will help us get more people onboard
This is being used in the offline editing library.
The existing index.html app isn't very pretty although it does demonstrate add and delete for points, lines and polygons.
Maybe with some cleanup and removal off all the testing functionality it could become the demonstration app.
This way we can enforce that each URL + image is unique. With the current coding pattern this is not possible.
The graphics created in edit-basic.html are 'not' well formed and are causing sync failures with their respective feature services. Furthermore, the tests are showing these requests as completing successfully.
Here's example of a correctly working "adds":
[{"geometry":{"rings":[[[-9266233.729308194,5247884.508472704],[-9265798.993709812,5247454.550188589],[-9266458.263078788,5247444.995560053],[-9266458.263078788,5247444.995560053],[-9266233.729308194,5247884.508472704]]],"spatialReference":{"wkid":102100}},"attributes":{"ruleid":2,"name":null,"__hydrate_id":"0"}}]
Here's an adds that is obviously being messed up by the serializer:
[{"geometry":{"rings":[[[-115.312,37.96875],[-111.4453125,37.96875],[-99.84375,36.2109375],[-99.84375,23.90625],[-116.015625,24.609375],[-115.3125,37.96875]]],"spatialReference":{"wkid":102100}},"attributes":{"0":"","1":"","2":"h","3":"y","4":"d","5":"r","6":"a","7":"t","8":"e","9":"","10":"r","11":"e","12":"f","13":"","14":"0"}}]
Let's look into CORS or another mechanism that allows downloading images without resorting to a proxy
I think the permissions got changed on this web map url: http://services1.arcgis.com/ohIVh2op2jYT7sku/arcgis/rest/services/Hot%20Spots%20Privately%20Owned%20Public%20Open%20Spaces%20-%20Privately_Owned_Public_Open_Spaces/FeatureServer/0
It's throwing the following error when I try to load the sample:
Error {code: 500, message: "Unauthorized access", details: Array[1], log: undefined, httpCode: 500}
This includes feature services and tiles.
I'm looking into this. Not sure if it's just a problem on my local machine. Getting error: Unable to find current revision in submodule path 'vendor/bootstrap-map-js'
Just checking...this used to be offline-editor-js / tiles / src ?
Examples might be camera snapshots or short video clips.
There have been quite a few times when the offline detector did not detect an offline condition properly.
XMLHttpRequest cannot load http://www.arcgis.com/sharing/rest/content/items/f58996878ac24702afef792e52a07e55/data?f=json. The 'Access-Control-Allow-Origin' whitelists only 'http://esri.github.io'. Origin 'http://localhost' is not in the list, and is therefore not allowed access.
GET http://www.arcgis.com/sharing/rest/content/items/f58996878ac24702afef792e52a07e55/data?f=json
304 Not Modified
94ms
3.7compact (line 157)
RequestError: Unable to load http://www.arcgis.com/sharing/rest/content/items/f58996878ac24702afef792e52a07e55/data?f=json status: 0
The resource from this URL is not text: http://js.arcgis.com/3.7compact
The longer the app is offline the more duplicate edits that are created when the app returns to an online condition. I suspect this is somehow tied into the new offline detection functionality.
Remove or deprecated the localstorage code. LocalStorage simply doesn't provide enough space to be a viable target.
if we can use built-in functionality in js or dojo
Need a way in the UX to listen for success or failure after detecting an online condition and re-syncing the adds, updates and deletes.
need to:
if we have time
right now it is needed for working with tiles offline
I've been able to reproduce this condition.
An error is properly returned in line 54 of offlineFeaturesManager.js. However, I'm not sure where we can properly capture this error in the TemplatePicker?
This topic is related to protecting data integrity.
Reference: https://developer.mozilla.org/en-US/docs/IndexedDB (See the Storage Limits section).
https://developers.google.com/chrome/whitepapers/storage#temporary
Need a way to determine if there was success or failure when an internet connection is available.
Sub-library dependencies aren't really manageable with the current script loader.
following webstorm format
Want to make sure that we can measure incoming adds,updates or deletes and insure there is enough space available to handle them.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.