OK this is beyond frustrating.
I have provided complete code and described the situation completely. How is it that I am supposed to provide you with a running sample?
If I had a running solution I would not be asking the question. I need a real world solution to this problem, not a solution which is taken completely out of context. Tell me how to create a runnable solution based on what I have given you?
You have not even made an attempt to take the elements of my problem into account. Your samples above did not use a percentage type of progress bar, they did not do any kind of "save" function, and they are not using any kind of promise pattern.
All you did was regurgitate a sample from the demos section of the site. I have already studied every possible example I have found. None of them come close to answering the question.
I guess I will have to waste a support ticket on this.