Commit Graph

29 Commits

Author SHA1 Message Date
Jeff Avallone
55ee380817 Adding ability to easily render demo images 2014-12-21 15:22:01 -05:00
Jeff Avallone
e466e7e548 Moving the SVG styles out of the svg element
They are now processed with compass
2014-12-21 14:48:43 -05:00
Jeff Avallone
6c5b36f334 Changing util.js to export an object
This allows the methods to be spied on in tests
2014-12-20 10:25:32 -05:00
Jeff Avallone
78917d44e6 Extracting custom event creation into a util module 2014-12-19 10:24:45 -05:00
Jeff Avallone
e43033d789 Updating Regexper class specs 2014-12-18 18:29:40 -05:00
Jeff Avallone
80ec29cd6b Refactoring parser code to remove global state
This allows canceling an in-progress render and moves some of the
rendering code to a more appropriate location.
2014-12-18 11:13:15 -05:00
Jeff Avallone
7de0a6490a Adding code to track visualization lifecycle events 2014-12-17 19:54:58 -05:00
Jeff Avallone
c64e48946e Adding support for canceling a parse/render 2014-12-17 19:24:33 -05:00
Jeff Avallone
c9754de8c4 Fixing broken download link 2014-12-16 23:13:55 -05:00
Jeff Avallone
b934423d11 Finishing tests for Regexper module 2014-12-16 19:00:27 -05:00
Jeff Avallone
5537928a80 Starting work on spec files 2014-12-16 16:08:36 -05:00
Jeff Avallone
91404ccf26 Replacing the setState method with a property 2014-12-16 13:34:02 -05:00
Jeff Avallone
22ade8846d Hiding results element when told to display an empty expression 2014-12-16 10:22:49 -05:00
Jeff Avallone
ca0e6fdfa9 Allowing newlines in regexps 2014-12-16 10:01:17 -05:00
Jeff Avallone
84d3fe797d Removing unnecessary binds 2014-12-15 22:00:24 -05:00
Jeff Avallone
db62743d54 Fixing various IE-related issues 2014-12-15 18:06:16 -05:00
Jeff Avallone
dea4011530 Adding progress indicator 2014-12-15 15:19:37 -05:00
Jeff Avallone
dab0dab9b1 Encoding regexp when updating URL 2014-12-15 10:09:54 -05:00
Jeff Avallone
773fd5c1a6 Refactoring how _position is called to be promise-based
The render method now returns a promise. Once this promise is resolved,
the _position method for that node will be called (if applicable). This
promise must be resolved only after all subordinate nodes have completed
their render phase (the promise returned by subordinate node's render
method has resolved). Node that do not have subordinates can return the
result of calling terminalRender, and proxied renders only need to
return the result of calling proxy.

With this change, it is no longer necessary to explicitly position
subordinate nodes. They will already be positioned once their render
promise is resolved.
2014-12-13 09:09:58 -05:00
Jeff Avallone
bc84f68250 Adding a delay before positioning the regex
This gives the page time to render the loading indicator before doing
all the positioning work; providing a better experience for users when
rendering complicated regexs like that Perl email regex.
2014-12-13 08:19:27 -05:00
Jeff Avallone
dbcdd583ed Removing need for separate setContainer calls 2014-12-10 19:31:07 -05:00
Jeff Avallone
0b85f552c3 Setting class names of nodes automatically 2014-12-10 16:57:42 -05:00
Jeff Avallone
60d7cab504 Adding code to indicate subexpression numbers 2014-12-10 06:18:55 -05:00
Jeff Avallone
cd11b7e6e5 Centralizing some of the layout code 2014-12-09 19:02:31 -05:00
Jeff Avallone
cd279d3a80 Further refactoring of Regexper class
Still not entirely sure this is setup how I'd like it to be.
2014-12-07 21:40:05 -05:00
Jeff Avallone
52a0863449 Refactoring rendering code to allow the loader to show
The loader is mostly an easter egg for people who like to try rendering
that enormous email-matching regexp from the Mail::RFC822::Address perl
module
2014-12-07 18:19:00 -05:00
Jeff Avallone
5fcb0758a3 Fixing re-display of regex 2014-12-06 10:36:23 -05:00
Jeff Avallone
4af501b37b Fixing positioning of rendered expression 2014-12-05 23:06:02 -05:00
Jeff Avallone
257fb19369 Adding initial UI JS
This still needs lots of tests to be written, and checks for missing
browser functionality (specifically around Blob URLs)
2014-12-04 18:37:35 -05:00