Jeff Avallone
fd27e28918
Merge pull request #24 from Byron/repeat-edge-cases
...
'{0}' label is not shown anymore
2016-03-03 07:19:01 -05:00
Sebastian Thiel
b08a9d95f7
'{0}' label is not shown anymore
...
Previously, '{0}' would be labelled as '-1 Times', which is not actually the case.
Also I am not sure to best visualize such a pattern, right now, except for the label,
'a{0}' looks similar to 'a?', even though they don't have the same effect.
2016-01-03 18:27:34 +01:00
Sebastian Thiel
7a591bb4a8
cleanup special 'definedProperties' field in Node
...
'definedProperties' seems like module-meta-data, which shouldn't be on a Node instance.
2016-01-03 15:59:50 +01:00
Jeff Avallone
966ab5f2d6
Fixing lint errors
2015-11-01 10:28:37 -05:00
Jeff Avallone
025636d559
Switching from compass to node-sass and Bourbon
2015-10-31 22:45:36 -04:00
Jeff Avallone
dc72b2d4e4
Switching template rendering to use Handlebars
...
- Extracting the IE8 notice and SVG templates out into partials
- Moving changelog details into a data file
2015-10-31 13:12:14 -04:00
Jeff Avallone
d98e2ed384
Updating changelog
2015-09-17 05:57:24 -04:00
Jeff Avallone
0f3677658d
Changing content used for empty match
...
When an empty expression is used in alternation with something else
(such as `(|test)`) the empty expression was using its empty group as a
placeholder element for calculating its anchor position. This
calculation was incorrect and was leading to the alternation not being
centered vertically. Using any element with height and width fixes this.
Fixes #16
2015-09-17 05:51:38 -04:00
Jeff Avallone
6c9f5d4cb6
Fixing label rendering for repetition
...
Rendering a text element with a string leads to just a <text/> element.
Rendering with an array leads to <text><tspan/></text>. Decided to use
the latter since it matches with the majority of text rendering
currently in use.
2015-09-03 17:08:20 -04:00
Jeff Avallone
4169720eb2
Updating changelog
2015-09-02 17:04:35 -04:00
Christophe Coevoet
4875dd17c4
Fix exposing the error
...
Using a promise for the setTimeout call is broken in this case, as the error would again be thrown in a promise operation, and so not exposed
2015-09-02 12:41:21 +02:00
Jeff Avallone
bdd64b7141
Updating changelog
2015-07-05 18:33:34 -04:00
Jeff Avallone
7fc7affd9f
Belatedly adding changelog notes that have been sitting around
2015-07-05 18:32:20 -04:00
Jeff Avallone
4c556a39a1
Tweaking buggy hash detection
...
This should more appropriately detect the presence of the URL
constructor, and will silently ignore any exceptions (and assume the
hash isn't buggy)
2015-06-22 22:05:03 -04:00
Jeff Avallone
8ac6e7bf9b
Updating changelog
2015-06-16 20:32:31 -04:00
Jeff Avallone
e1f5891a3a
Support for FF's buggy location.hash
...
FF decodes location.hash for you, so decoding is unnecessary and breaks
when the regex contains a "%"
Fixes #12
2015-06-16 20:22:04 -04:00
Jeff Avallone
06a7ffc110
Moving skip and loop line calculation into Repeat nodes
...
This code seems more at home in Repeat instead of MatchFragment since
Repeat knows about the dimensions of the lines for the contentPosition
value.
2015-04-23 20:03:25 -04:00
Jeff Avallone
ff9e84f20e
Adding documentation to subexp.js
2015-04-23 19:50:01 -04:00
Jeff Avallone
661e7fa6fb
Adding documentation to root.js
2015-04-23 19:37:24 -04:00
Jeff Avallone
c6af61659f
Adding documentation to repeat.js and some logic simplification
2015-04-23 19:31:36 -04:00
Jeff Avallone
6beeddb83a
Adding documentation to repeat_spec.js
2015-04-23 19:08:35 -04:00
Jeff Avallone
beb5a6fb52
Adding documentation to repeat_required.js
2015-04-21 20:53:11 -04:00
Jeff Avallone
bd67d7826e
Adding documentation to repeat_optional.js
2015-04-21 20:52:21 -04:00
Jeff Avallone
042d44c044
Adding documentation to repeat_any.js
2015-04-21 20:51:27 -04:00
Jeff Avallone
01e920c31c
Adding documentation to regexp.js
2015-04-21 20:48:12 -04:00
Jeff Avallone
1b03663473
Adding documentation to match.js
2015-04-21 20:24:56 -04:00
Jeff Avallone
ce41796f8b
Adding documentation to match_fragment.js
2015-04-21 20:24:56 -04:00
Jeff Avallone
424eca0a2a
Adding documentation to literal.js
2015-04-21 20:24:56 -04:00
Jeff Avallone
51c2f87765
Adding documentation to escape.js
2015-04-21 20:24:56 -04:00
Jeff Avallone
d8a635fa8f
Adding documentation to charset_range.js
2015-04-21 20:24:53 -04:00
Jeff Avallone
7ca4b95cd7
Adding documentation to charset.js
2015-04-21 20:24:49 -04:00
Jeff Avallone
c22656a75d
Adding documentation to charset_escape.js
2015-04-21 20:24:46 -04:00
Jeff Avallone
01abba224a
Adding documentation to any_character.js
2015-04-21 20:24:41 -04:00
Jeff Avallone
2777da518e
Replacing an array join with a JS template
2015-04-19 16:45:06 -04:00
Jeff Avallone
1ef8bd7500
Adding documentation and a few tweaks to node.js
2015-04-19 16:40:53 -04:00
Jeff Avallone
8796c1329c
Reorganizing and cleanup of base Node code
2015-04-19 12:06:22 -04:00
Jeff Avallone
b2e7bade04
Adding more documentation
2015-04-16 17:52:50 -04:00
Jeff Avallone
5917d2b035
Updating getBBox and anchor code to improve performance
...
This change will reduce the number of calls to this.container.getBBox
when calculating the bounding box of a node
2015-04-16 17:13:12 -04:00
Jeff Avallone
5601c6a398
Removing some long dead code
2015-04-16 17:13:00 -04:00
Jeff Avallone
6cf4e3fe9b
Tweaking normalizeBBox
...
Using defaults instead of extend seems to more clearly illustrate the
intent.
2015-04-16 17:10:30 -04:00
Jeff Avallone
35e817b105
Updating changelog
2015-04-14 21:52:41 -04:00
Jeff Avallone
0fdd210741
Optimizing spaceHorizontall and spaceVertically methods
...
Each method was transforming each item twice, and I found that Snap
appears to generate at least one timer per transform. Reducing it to one
transform per item.
2015-04-14 21:46:14 -04:00
Jeff Avallone
d918f956ef
Adding documentation to regexper.js and some minor tweaks
2015-04-12 17:03:13 -04:00
Jeff Avallone
7de958dc25
Adding documentation to util.js
2015-04-12 17:03:13 -04:00
Jeff Avallone
d4b4b2111e
Adding documentation to main.js
2015-04-12 17:03:13 -04:00
Jeff Avallone
1b3a1819c8
Updating changelog
2015-03-14 17:35:57 -04:00
Jeff Avallone
06e66c0f24
Creating helper methods for the setTimeout uses
...
Abstracting out some of the setTimeout patterns that have popped up in
the code to make the intention clearer.
2015-03-14 17:27:59 -04:00
Jeff Avallone
0093db8e20
Replacing Q promises with ES6 promises
2015-03-14 17:11:14 -04:00
Jeff Avallone
3970224302
Removing use of notify to update progress bar
2015-03-14 14:01:25 -04:00
Jeff Avallone
ef11adb67c
Updating changelog
2015-03-13 20:24:03 -04:00
Jeff Avallone
7328825204
Changing when subexpression numbers are generated
...
Generating subexp numbers during setup was leading to nested expressions
being numbered in reverse order.
Fixes #7
2015-03-13 20:23:04 -04:00
Jeff Avallone
1a117e3672
Updating changelog
2015-02-11 20:11:55 -05:00
Jeff Avallone
bd40a71ece
Tweaking styling of header links
...
Fixes #5
2015-02-11 20:06:01 -05:00
Jeff Avallone
1170a1be76
Displaying the hex code of escaped characters
...
This is only done where appropriate (escapes like "word boundary" don't
have a hex value, and displaying it for hex or unicode escapes would be
a little redundant).
2015-01-25 17:44:07 -05:00
Jeff Avallone
80e96c7bd3
Trapping errors in URL formatting and displaying an error message
2015-01-19 10:15:34 -05:00
Jeff Avallone
66c9d445da
Adjusting how JS errors are tracked.
...
- Checking for a valid lineno instead of the filename to filter out
"(0): Script error." logging
- Tracking stack traces separately from exceptions to make debugging
easier
2015-01-04 18:50:16 -05:00
Jeff Avallone
0600d18bb5
Adding more detailed exception tracking
2015-01-01 12:24:11 -05:00
Jeff Avallone
491c9535a9
Adding code to track expression rendering time
2015-01-01 11:57:11 -05:00
Jeff Avallone
37fca15bc8
Removing _trackEvent method
...
It has become an unnecessary abstraction around _gaq.push
2015-01-01 11:56:36 -05:00
Jeff Avallone
fd8014d326
Updating changelog
2014-12-30 17:10:13 -05:00
Jeff Avallone
cb359bf4dd
Adding support for rendering empty subexpressions
...
Fixes #1
2014-12-30 17:06:29 -05:00
Jeff Avallone
facd4f6ac4
Changing how permalink and download links are hidden
...
Using a class name instead of setting the display CSS property. This
way, the ::after of the download link can be hidden when the permalink
is gone
2014-12-30 16:20:37 -05:00
Jeff Avallone
6c49d6ba8e
Condensing some styles
2014-12-30 15:54:20 -05:00
Jeff Avallone
fc6ffbd73a
Merging some shared styles
2014-12-30 10:17:55 -05:00
Jeff Avallone
998e2a5574
Updating changelog
2014-12-29 21:39:20 -05:00
Jeff Avallone
e271115d24
Merging the rendering code from main.js and regexper.js
2014-12-29 21:31:36 -05:00
Jeff Avallone
d6e81a2932
Beginning to merge rendering code in main.js and regexper.js
2014-12-29 18:37:21 -05:00
Jeff Avallone
8dda135960
Animating the progress bar
2014-12-29 18:01:10 -05:00
Jeff Avallone
f83e0c6ea8
Removing spinner
...
It has seemed a little excessive since adding the progress bar
2014-12-29 17:55:57 -05:00
Jeff Avallone
d538d7b62a
Adding progress bars to the inline diagrams in the documentation
2014-12-29 17:53:54 -05:00
Jeff Avallone
e890fe7d2c
Updating progress using the promise notify feature
2014-12-29 17:35:18 -05:00
Jeff Avallone
99c4c078fb
No longer setting parseError attribute on error object
...
This was causing some JS exceptions to be logged
2014-12-29 16:32:08 -05:00
Jeff Avallone
5406487ae0
Adjusting how errors are logged
...
This should allow for working out any JS failures that may occur
2014-12-28 17:37:11 -05:00
Jeff Avallone
cfaa3afa78
Changing date formatting on the changelog to be unambigious
2014-12-27 23:07:12 -05:00
Jeff Avallone
eae4959f41
Updating event tracking to reduce noise in reporting
...
No need to report a "parse error" as an "exception"
2014-12-27 15:54:32 -05:00
Jeff Avallone
66836e0552
Fixing issue with multiple SVG elements being rendered at once
2014-12-26 17:08:37 -05:00
Jeff Avallone
24971eb09f
Setting date in changelog
2014-12-26 16:49:41 -05:00
Jeff Avallone
b292a764ff
Embedding a template for SVG element instead of just styles
2014-12-26 15:38:22 -05:00
Jeff Avallone
2007fd9e01
Styling tweaks
2014-12-26 15:24:19 -05:00
Jeff Avallone
efbd3aa762
Reformatting header nav links
2014-12-26 14:57:13 -05:00
Jeff Avallone
aa6c792867
Adding tests for Match nodes
2014-12-26 12:48:02 -05:00
Jeff Avallone
cf159c28a5
Finishing tests for MatchFragment nodes
2014-12-26 10:57:46 -05:00
Jeff Avallone
68e4bed048
Adding a deprecation notice for IE8
...
I may add similar notices for other old browsers, but IE8 was
particularly bad since it does not render most of the styles
2014-12-25 07:59:03 -05:00
Jeff Avallone
d21846e872
Fixing how styles are added to SVG documents to please IE
...
This also allowed the SVG element to be created in a single place
2014-12-24 23:01:32 -05:00
Jeff Avallone
000809752e
Removing some unnecessary extend calls
2014-12-23 23:27:09 -05:00
Jeff Avallone
6793b342ae
Using fancy quotes for literals
2014-12-23 23:07:51 -05:00
Jeff Avallone
d909312b94
Starting tests for MatchFragment nodes
2014-12-23 22:23:03 -05:00
Jeff Avallone
11cf4c74dc
I accidentally a whole word
2014-12-23 11:19:01 -05:00
Jeff Avallone
e11058688f
Some cleanup of Match and MatchFragment in prep for tests
2014-12-23 11:17:28 -05:00
Jeff Avallone
f264eee5f9
Adding tests for Regexp nodes
2014-12-23 11:02:15 -05:00
Jeff Avallone
e3eedb17af
Adding tests for Root nodes
2014-12-22 20:35:49 -05:00
Jeff Avallone
f842b424cc
Adding warnings for non-standard escape sequence usage
2014-12-22 16:57:30 -05:00
Jeff Avallone
a4f831bc60
Cleaning up some messy code in the grammar
2014-12-22 16:28:46 -05:00
Jeff Avallone
9e6f066763
Reducing duplication in grammar
2014-12-22 16:26:08 -05:00
Jeff Avallone
b35dece228
Fixing character set ranges
...
Certain escape sequences are not considered in ranges, and lead to the
hyphen to be part of the matched set of characters
2014-12-22 16:09:27 -05:00
Jeff Avallone
d882ee8e08
Adding check that charset range is in correct order
2014-12-22 15:18:49 -05:00
Jeff Avallone
9b8eef9c02
Setting ordinals for literals
2014-12-22 15:11:37 -05:00
Jeff Avallone
d4b648fa43
Setting ordinal for control code escapes
2014-12-22 15:11:20 -05:00
Jeff Avallone
580af045d6
Adjusting grammar to match \c escape "correctly"
...
\c followed by something other than a-z leads to inconsistent behavior
across browsers. Most will treat it as a series of literals (/\c#/ will
match the string "\\c#" for example)
2014-12-22 15:00:38 -05:00
Jeff Avallone
101b457260
Adding ordinal values to escapes
...
Work still needs to be done to get control characters correct, and
ordinals will need to be added for literals as well. This is in
preparation for reporting incorrectly ordered charset ranges
2014-12-22 12:44:19 -05:00
Jeff Avallone
33bbd11af6
Simplifying how parts of a charset are checked for uniqueness
2014-12-22 11:31:20 -05:00
Jeff Avallone
961d4812e9
Adding tests for Charset nodes
2014-12-22 10:57:16 -05:00
Jeff Avallone
8021775880
Adding a 404 page
2014-12-21 19:59:07 -05:00
Jeff Avallone
49ac4d118b
Changing nav styling
2014-12-21 18:06:31 -05:00
Jeff Avallone
e0825b7850
Fixing bug in charset code
2014-12-21 18:02:28 -05:00
Jeff Avallone
4bec717f84
Adding documentation
2014-12-21 18:02:18 -05:00
Jeff Avallone
445cec7c7f
Replacing "container" class with "application"
2014-12-21 15:22:59 -05:00
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
fbb8c4187d
Tweaking styling in preparation for writing documentation
2014-12-21 14:26:09 -05:00
Jeff Avallone
fe645a7c4b
Tweaking changelog
2014-12-21 12:17:41 -05:00
Jeff Avallone
9bf5328da7
Adding specs for Subexp nodes
2014-12-21 12:05:55 -05:00
Jeff Avallone
82ca4f40f7
Adding initial tests for Repeat nodes
2014-12-20 13:03:57 -05:00
Jeff Avallone
79cda13dc5
Adding a few more points to the changelog
2014-12-20 12:31:00 -05:00
Jeff Avallone
9a79b95337
Finally writing the changelog (at least for now)
2014-12-20 11:18:15 -05:00
Jeff Avallone
55657a792b
Adding check for out of order numbers
2014-12-20 10:53:01 -05:00
Jeff Avallone
ccdb29224a
Rejecting promise when parsing fails
2014-12-20 10:47:41 -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
8a9a129856
Adding tests for CharsetRange nodes
2014-12-20 10:18:00 -05:00
Jeff Avallone
d27831a265
Adding tests for CharsetEscape nodes
2014-12-19 21:56:56 -05:00
Jeff Avallone
24e21834f6
Adding tests for Escape nodes
2014-12-19 21:49:11 -05:00
Jeff Avallone
32a28ede90
Adding tests for Literal nodes
2014-12-19 21:35:03 -05:00
Jeff Avallone
69ae3f0fe1
Moving parser setup code into a separate file
2014-12-19 20:41:02 -05:00
Jeff Avallone
43eaf493e6
Removing some cruft in the grammar
2014-12-19 20:35:20 -05:00
Jeff Avallone
70789258ab
Removing CharsetLiteral
...
It was no different from just Literal (and most likely won't be any
different)
2014-12-19 20:23:32 -05:00
Jeff Avallone
2d4694f447
Simplifying some modules
2014-12-19 20:18:19 -05:00
Jeff Avallone
a50ba68a21
Moving spaceHorizontally and spaceVertically to util.js
2014-12-19 12:11:44 -05:00
Jeff Avallone
870b2e6ed4
Moving normalizeBBox to util.js
2014-12-19 12:06:21 -05:00
Jeff Avallone
be145e3fac
Adding rest of tests for Node class
2014-12-19 11:48:09 -05:00
Jeff Avallone
91581afe2c
Adding more Node tests
2014-12-19 11:00:47 -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
bc351bc9fc
Removing unnecessary render step
2014-12-17 17:18:46 -05:00
Jeff Avallone
17a95392a8
Refactoring property definition code
2014-12-17 16:04:55 -05:00
Jeff Avallone
a0f145ab3d
Removing unnecessary atype attributes
2014-12-17 15:48:06 -05:00
Jeff Avallone
020feae951
Fixing flag display
2014-12-17 15:28:04 -05:00
Jeff Avallone
f93388dec0
Converting getAnchor into a property
2014-12-17 15:24:27 -05:00
Jeff Avallone
155ad51d58
Turning container into a property
2014-12-17 15:14:33 -05:00
Jeff Avallone
c5c98ad62f
Simplifying node proxy code
2014-12-17 15:12:04 -05:00
Jeff Avallone
dd6eac2b4e
Simplifying literal merging code
2014-12-17 14:56:02 -05:00
Jeff Avallone
e362a54551
Converting methods into properties where possible/reasonable
2014-12-17 14:44:48 -05:00
Jeff Avallone
4af524112e
Moving properties out of the way
2014-12-17 12:07:25 -05:00
Jeff Avallone
57ccd4b0c5
Refactoring to enhance the SyntaxNode extending
2014-12-17 11:53:04 -05:00
Jeff Avallone
6322b48f31
Removing debugging code
2014-12-17 10:06:03 -05:00
Jeff Avallone
484abdbb0c
Explicitly specifying image dimensions
2014-12-16 23:22: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
f69d24e302
Tweaking styles
2014-12-16 15:46:56 -05:00
Jeff Avallone
91404ccf26
Replacing the setState method with a property
2014-12-16 13:34:02 -05:00
Jeff Avallone
dbae70ce52
Updating main JS to not run if not on the index page
...
This is to get the karma tests in a position where they can be written
2014-12-16 13:33:20 -05:00
Jeff Avallone
8651fd0d9b
Adding some nav items
2014-12-16 11:05:13 -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
8cc2f29aec
Adding regexp flag indications
2014-12-16 10:14:37 -05:00
Jeff Avallone
ca0e6fdfa9
Allowing newlines in regexps
2014-12-16 10:01:17 -05:00
Jeff Avallone
4195a101a2
Fixing some small styling issues
2014-12-16 10:00:57 -05:00
Jeff Avallone
3d42894ac2
Replacing some calls to _.each with new for loops
2014-12-15 22:11:12 -05:00
Jeff Avallone
26bf0fcd52
Converting some string generation to templates
2014-12-15 22:01:55 -05:00
Jeff Avallone
84d3fe797d
Removing unnecessary binds
2014-12-15 22:00:24 -05:00
Jeff Avallone
d22ab35b68
Converting uses of Snap.format to use template literals
2014-12-15 21:51:17 -05:00
Jeff Avallone
db62743d54
Fixing various IE-related issues
2014-12-15 18:06:16 -05:00
Jeff Avallone
5a96955419
Tweaking text spacing
2014-12-15 15:29:13 -05:00
Jeff Avallone
dea4011530
Adding progress indicator
2014-12-15 15:19:37 -05:00
Jeff Avallone
f4ea4d6da6
Adding greedy indication
2014-12-15 12:43:13 -05:00
Jeff Avallone
c0eed07d9b
Adding repetition labels
2014-12-15 12:29:47 -05:00
Jeff Avallone
b4b999d7a6
Removing support for "{,n}" syntax
...
Don't know I missed that this isn't supported in JS
2014-12-15 11:11:17 -05:00
Jeff Avallone
67a71289bc
Getting rid of GitHub ribbon in exchange for a simple link
2014-12-15 11:05:37 -05:00
Jeff Avallone
deb95ef123
Removing duplicate elements from charset
2014-12-15 10:19:18 -05:00
Jeff Avallone
b103982273
Changing the cursor used on the "Display" button
2014-12-15 10:12:30 -05:00
Jeff Avallone
dab0dab9b1
Encoding regexp when updating URL
2014-12-15 10:09:54 -05:00
Jeff Avallone
3374e760db
Fixing some styling issues
2014-12-15 08:37:43 -05:00
Jeff Avallone
f8ce2d8f40
Putting all labels in a tspan.
...
This will get all of them aligning the same way
2014-12-15 07:54:55 -05:00
Jeff Avallone
66d9b97a6f
Making quotes around literals lighter
2014-12-14 22:17:59 -05:00
Jeff Avallone
10d5e7f534
Reverting change to repeat node that adjusted the vertical position
2014-12-14 21:53:54 -05:00
Jeff Avallone
95af49e385
Adding horizontal connecting lines
2014-12-14 21:37:56 -05:00
Jeff Avallone
a30c16a940
Fixing root node positioning
2014-12-14 19:29:45 -05:00
Jeff Avallone
40ac83ab91
Revert "Simplifying positioning code for root nodes"
...
This reverts commit 46ab0662f5
.
2014-12-14 19:28:50 -05:00
Jeff Avallone
c2d8473425
Adding node-type-specific anchor code
2014-12-14 19:13:08 -05:00
Jeff Avallone
9ba2b8579e
Updating major positioning code to use anchor position
2014-12-14 19:13:03 -05:00
Jeff Avallone
56927dd7fa
Adding anchors
2014-12-14 19:13:00 -05:00
Jeff Avallone
46ab0662f5
Simplifying positioning code for root nodes
2014-12-14 17:48:48 -05:00
Jeff Avallone
97b816ffc9
Extracting a method to ease readability
2014-12-14 17:03:40 -05:00
Jeff Avallone
d216c0fe5f
Simplifying more code
2014-12-13 13:42:55 -05:00
Jeff Avallone
407167a4ae
Folding labeled box positioning into rendering
2014-12-13 13:26:43 -05:00
Jeff Avallone
b9f1cfae55
Cleaning up some messy code
2014-12-13 13:00:46 -05:00
Jeff Avallone
cb9785de91
Folding _position methods into render method promises
2014-12-13 12:55:03 -05:00
Jeff Avallone
29316bb2aa
Updating renderLabel to be promise based
2014-12-13 12:28:16 -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
f81ba6535f
Adding transform method to Base node
2014-12-10 20:28:02 -05:00
Jeff Avallone
340d6b4859
Simplifying literal normalization code
2014-12-10 20:11:51 -05:00
Jeff Avallone
2e60561be6
Cleaning up code for match node
2014-12-10 19:58:36 -05:00
Jeff Avallone
dbcdd583ed
Removing need for separate setContainer calls
2014-12-10 19:31:07 -05:00
Jeff Avallone
9ac25b9a50
No need to save most label objects
2014-12-10 19:23:14 -05:00
Jeff Avallone
15655900f1
Updating to automatically size labels when positioning
2014-12-10 19:16:21 -05:00
Jeff Avallone
d953dcaab4
renderLabel method doesn't really need a container argument
2014-12-10 19:12:17 -05:00
Jeff Avallone
521ab74723
Cleanup of path code
2014-12-10 19:09:31 -05:00