precedent 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/.config/code-server/config.yaml +4 -0
  2. package/.config/configstore/update-notifier-npm-check-updates.json +4 -0
  3. package/.config/configstore/update-notifier-npm.json +4 -0
  4. package/.vscode/launch.json +46 -0
  5. package/Dockerfile_LUXURYCode +69 -0
  6. package/{harness/Debug.js → debug/Harness.js} +0 -0
  7. package/dist/precedent.js +317 -0
  8. package/dist/precedent.min.js +39 -0
  9. package/dist/precedent.min.js.map +1 -0
  10. package/gulpfile.js +73 -58
  11. package/package.json +35 -16
  12. package/source/Precedent-Browser-Shim.js +8 -6
  13. package/source/StringParser.js +1 -1
  14. package/source/WordTree.js +7 -7
  15. package/test/Precedent_tests.js +106 -0
  16. package/test.js +1 -0
  17. package/.c9/.nakignore +0 -17
  18. package/.c9/metadata/tab0 +0 -1
  19. package/.c9/metadata/tab3 +0 -1
  20. package/.c9/metadata/workspace/.travis.yml +0 -1
  21. package/.c9/metadata/workspace/Ideas.md +0 -1
  22. package/.c9/metadata/workspace/Precedent-Command.js +0 -1
  23. package/.c9/metadata/workspace/Precident-Command.js +0 -1
  24. package/.c9/metadata/workspace/README.md +0 -1
  25. package/.c9/metadata/workspace/bin/Precedent +0 -1
  26. package/.c9/metadata/workspace/bin/Precident +0 -1
  27. package/.c9/metadata/workspace/bower.json +0 -1
  28. package/.c9/metadata/workspace/dist/precedent.latest.min.js +0 -1
  29. package/.c9/metadata/workspace/fs.js +0 -1
  30. package/.c9/metadata/workspace/gulpfile.js +0 -1
  31. package/.c9/metadata/workspace/harness/Debug.js +0 -1
  32. package/.c9/metadata/workspace/internal/module.js +0 -1
  33. package/.c9/metadata/workspace/module.js +0 -1
  34. package/.c9/metadata/workspace/package.json +0 -1
  35. package/.c9/metadata/workspace/source/Precedent-Browser-Shim.js +0 -1
  36. package/.c9/metadata/workspace/source/Precedent-Options.js +0 -1
  37. package/.c9/metadata/workspace/source/Precedent.js +0 -1
  38. package/.c9/metadata/workspace/source/StringParser.js +0 -1
  39. package/.c9/metadata/workspace/source/WordTree.js +0 -1
  40. package/.c9/metadata/workspace/test/Precedent_tests.js +0 -1
  41. package/.c9/project.settings +0 -91
  42. package/.npmignore +0 -37
  43. package/dist/precedent.1.0.5.js +0 -339
  44. package/dist/precedent.1.0.5.min.js +0 -2
  45. package/dist/precedent.1.0.5.min.js.map +0 -1
  46. package/dist/precedent.latest.min.js +0 -2
package/gulpfile.js CHANGED
@@ -1,68 +1,83 @@
1
- /**
2
- * Precedent Meta-templating Web Build Package
3
- *
4
- * @license MIT
5
- *
6
- * @author Steven Velozo <steven@velozo.com>
7
- */
8
- var _Version = require('./package.json').version;
1
+ 'use strict';
9
2
 
10
- var libGulp = require('gulp');
3
+ // We aren't abstracting this yet but here's the ... "Config"
4
+ const _CONFIG = (
5
+ {
6
+ // The input source file that should be passed to browserify:
7
+ // (if you need to auto-instantiate an object, for instance)
8
+ EntrypointInputSourceFile: `${__dirname}/source/Precedent-Browser-Shim.js`,
11
9
 
12
- var libBrowserify = require('browserify');
13
- var libBabelify = require('babelify');
14
- var libVinylSource = require('vinyl-source-stream');
15
- var libVinylBuffer = require('vinyl-buffer');
16
- var libUglify = require('gulp-uglify');
17
- var libRename = require('gulp-rename');
18
- var libSourceMaps = require('gulp-sourcemaps');
19
- var libRunSequence = require('run-sequence');
10
+ // The name of the packaged object to be passed to browserify:
11
+ // (browserify sets this to global scope and window.SOMEOBJECTNAMEHERE where SOMEOBJECTNAMEHERE is the string below)
12
+ LibraryObjectName: `Precedent`,
20
13
 
21
- libGulp.task('copy-latest-release', ['build-release'],
22
- ()=>
23
- {
24
- libGulp.src('./dist/precedent.'+_Version+'.min.js')
25
- .pipe(libRename('precedent.latest.min.js'))
26
- .pipe(libGulp.dest('./dist'));
14
+ // The folder to write the library files and maps out to:
15
+ LibraryOutputFolder: `${__dirname}/dist/`,
16
+
17
+ // The name of the unminified version of the packaged library, for easy debugging:
18
+ LibraryUniminifiedFileName: `precedent.js`,
19
+
20
+ // The name of the minified version of the packaged library, for production release:
21
+ LibraryMinifiedFileName: `precedent.min.js`
27
22
  });
28
23
 
29
- libGulp.task('build-release',
30
- ()=>
31
- {
32
- // app.js is your main JS file with all your module inclusions
33
- return libBrowserify({entries: './source/Precedent', debug: false})
34
- .transform("babelify", { presets: ["es2015"] })
35
- .bundle()
36
- .pipe(libVinylSource('precedent.'+_Version+'.min.js'))
37
- .pipe(libVinylBuffer())
38
- .pipe(libSourceMaps.init())
39
- .pipe(libUglify())
40
- .pipe(libSourceMaps.write('./'))
41
- .pipe(libGulp.dest('./dist'));
42
- }
43
- );
24
+ // ---> Boilerplate Browser Uglification and Packaging <--- \\
44
25
 
45
- libGulp.task('build-debug',
46
- ()=>
47
- {
48
- return libBrowserify({entries: './source/Precedent', debug: true})
49
- .transform("babelify", { presets: ["es2015"] })
50
- .bundle()
51
- .pipe(libVinylSource('precedent.'+_Version+'.js'))
52
- .pipe(libVinylBuffer())
53
- .pipe(libGulp.dest('./dist'));
54
- }
55
- );
26
+ const libBrowserify = require('browserify');
27
+ const libGulp = require('gulp');
56
28
 
57
- libGulp.task('build', ['build-release','build-debug','copy-latest-release']);
29
+ const libVinylSourceStream = require('vinyl-source-stream');
30
+ const libVinylBuffer = require('vinyl-buffer');
58
31
 
59
- libGulp.task('build',
60
- (fCallback) =>
32
+ const libSourcemaps = require('gulp-sourcemaps');
33
+ const libGulpUtil = require('gulp-util');
34
+ const libBabel = require('gulp-babel');
35
+ const libTerser = require('gulp-terser');
36
+
37
+ // Build the module for the browser
38
+ libGulp.task('minified',
39
+ () => {
40
+ // set up the custom browserify instance for this task
41
+ var tmpBrowserify = libBrowserify(
61
42
  {
62
- libRunSequence(['build-debug', 'build-release'],
63
- 'copy-latest-release',
64
- fCallback);
65
- }
66
- );
43
+ entries: _CONFIG.EntrypointInputSourceFile,
44
+ standalone: _CONFIG.LibraryObjectName,
45
+ debug: true
46
+ });
47
+
48
+ return tmpBrowserify.bundle()
49
+ .pipe(libVinylSourceStream(_CONFIG.LibraryMinifiedFileName))
50
+ .pipe(libVinylBuffer())
51
+ .pipe(libSourcemaps.init({loadMaps: true}))
52
+ // Add transformation tasks to the pipeline here.
53
+ .pipe(libBabel())
54
+ .pipe(libTerser())
55
+ .on('error', libGulpUtil.log)
56
+ .pipe(libSourcemaps.write('./'))
57
+ .pipe(libGulp.dest(_CONFIG.LibraryOutputFolder));
58
+ });
59
+
60
+ // Build the module for the browser
61
+ libGulp.task('debug',
62
+ () => {
63
+ // set up the custom browserify instance for this task
64
+ var tmpBrowserify = libBrowserify(
65
+ {
66
+ entries: _CONFIG.EntrypointInputSourceFile,
67
+ standalone: _CONFIG.LibraryObjectName,
68
+ debug: true
69
+ });
70
+
71
+ return tmpBrowserify.bundle()
72
+ .pipe(libVinylSourceStream(_CONFIG.LibraryUniminifiedFileName))
73
+ .pipe(libVinylBuffer())
74
+ .pipe(libBabel())
75
+ .on('error', libGulpUtil.log)
76
+ .pipe(libGulp.dest(_CONFIG.LibraryOutputFolder));
77
+ });
67
78
 
68
- libGulp.task('default', ['build']);
79
+ libGulp.task
80
+ (
81
+ 'build',
82
+ libGulp.series('debug', 'minified')
83
+ );
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "precedent",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Precedent Meta-Templating",
5
5
  "main": "source/Precedent.js",
6
6
  "bin": {
@@ -8,8 +8,11 @@
8
8
  },
9
9
  "scripts": {
10
10
  "start": "node source/Precedent.js",
11
- "coverage": "./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -u tdd -R spec",
12
- "test": "./node_modules/mocha/bin/_mocha -u tdd -R spec"
11
+ "coverage": "./node_modules/.bin/nyc --reporter=lcov --reporter=text-lcov ./node_modules/mocha/bin/_mocha -- -u tdd -R spec",
12
+ "test": "./node_modules/.bin/mocha -u tdd -R spec",
13
+ "docker-dev-build-image": "docker build ./ -f Dockerfile_LUXURYCode -t retold/precedent:local",
14
+ "docker-dev-run": "docker run -it -d --name precedent-dev -p 127.0.0.1:12340:8080 -v \"$PWD/.config:/home/coder/.config\" -v \"$PWD:/home/coder/precedent\" -u \"$(id -u):$(id -g)\" -e \"DOCKER_USER=$USER\" retold/precedent:local",
15
+ "build": "./node_modules/.bin/gulp build"
13
16
  },
14
17
  "repository": {
15
18
  "type": "git",
@@ -23,20 +26,36 @@
23
26
  "bugs": {
24
27
  "url": "https://github.com/stevenvelozo/precedent/issues"
25
28
  },
29
+ "mocha": {
30
+ "diff": true,
31
+ "extension": [
32
+ "js"
33
+ ],
34
+ "package": "./package.json",
35
+ "reporter": "spec",
36
+ "slow": "75",
37
+ "timeout": "5000",
38
+ "ui": "tdd",
39
+ "watch-files": [
40
+ "source/**/*.js",
41
+ "test/**/*.js"
42
+ ],
43
+ "watch-ignore": [
44
+ "lib/vendor"
45
+ ]
46
+ },
26
47
  "devDependencies": {
27
- "babel-preset-es2015": "^6.24.1",
28
- "babelify": "^7.3.0",
29
- "browserify": "^14.4.0",
30
- "chai": "3.5.0",
31
- "gulp": "^3.9.1",
32
- "gulp-rename": "^1.2.2",
33
- "gulp-sourcemaps": "^2.6.0",
34
- "gulp-uglify": "^3.0.0",
35
- "istanbul": "0.4.5",
36
- "mocha": "3.3.0",
37
- "run-sequence": "^1.2.2",
38
- "vinyl-buffer": "^1.0.0",
39
- "vinyl-source-stream": "^1.1.0"
48
+ "browserify": "^17.0.0",
49
+ "chai": "4.3.7",
50
+ "gulp": "^4.0.2",
51
+ "gulp-babel": "^8.0.0",
52
+ "gulp-sourcemaps": "^3.0.0",
53
+ "gulp-terser": "^2.1.0",
54
+ "gulp-util": "^3.0.8",
55
+ "mocha": "10.2.0",
56
+ "nyc": "^15.1.0",
57
+ "vinyl-buffer": "^1.0.1",
58
+ "vinyl-source-stream": "^2.0.0"
40
59
  },
41
60
  "dependencies": {}
42
61
  }
@@ -1,12 +1,14 @@
1
1
  /**
2
+ * Simple browser shim loader - assign the npm module to a window global automatically
3
+ *
2
4
  * @license MIT
3
5
  * @author <steven@velozo.com>
4
6
  */
7
+ var libNPMModuleWrapper = require('./Precedent.js');
5
8
 
6
- /**
7
- * Precedent browser shim loader
8
- */
9
+ if ((typeof(window) == 'object') && (!window.hasOwnProperty('Precedent')))
10
+ {
11
+ window.Precedent = libNPMModuleWrapper;
12
+ }
9
13
 
10
- // Load the precedent module into the browser global automatically.
11
- var Precedent = require('./Precedent.js');
12
- module.exports = Precedent;
14
+ module.exports = libNPMModuleWrapper;
@@ -28,7 +28,7 @@ class StringParser
28
28
  {
29
29
  return (
30
30
  {
31
- ParseTree: pParseTree,
31
+ ParseTree: pParseTree,
32
32
 
33
33
  Output: '',
34
34
  OutputBuffer: '',
@@ -23,15 +23,12 @@ class WordTree
23
23
  * @method addChild
24
24
  * @param {Object} pTree - A parse tree to push the characters into
25
25
  * @param {string} pPattern - The string to add to the tree
26
- * @param {number} pIndex - callback function
26
+ * @param {number} pIndex - The index of the character in the pattern
27
27
  * @returns {Object} The resulting leaf node that was added (or found)
28
28
  * @private
29
29
  */
30
30
  addChild (pTree, pPattern, pIndex)
31
31
  {
32
- if (pIndex > pPattern.length)
33
- return pTree;
34
-
35
32
  if (!pTree.hasOwnProperty(pPattern[pIndex]))
36
33
  pTree[pPattern[pIndex]] = {};
37
34
 
@@ -40,9 +37,9 @@ class WordTree
40
37
 
41
38
  /** Add a Pattern to the Parse Tree
42
39
  * @method addPattern
43
- * @param {Object} pTree - A node on the parse tree to push the characters into
44
- * @param {string} pPattern - The string to add to the tree
45
- * @param {number} pIndex - callback function
40
+ * @param {Object} pPatternStart - The starting string for the pattern (e.g. "${")
41
+ * @param {string} pPatternEnd - The ending string for the pattern (e.g. "}")
42
+ * @param {number} pParser - The function to parse if this is the matched pattern, once the Pattern End is met. If this is a string, a simple replacement occurs.
46
43
  * @return {bool} True if adding the pattern was successful
47
44
  */
48
45
  addPattern (pPatternStart, pPatternEnd, pParser)
@@ -50,6 +47,9 @@ class WordTree
50
47
  if (pPatternStart.length < 1)
51
48
  return false;
52
49
 
50
+ if ((typeof(pPatternEnd) === 'string') && (pPatternEnd.length < 1))
51
+ return false;
52
+
53
53
  let tmpLeaf = this.ParseTree;
54
54
 
55
55
  // Add the tree of leaves iteratively
@@ -121,6 +121,28 @@ suite
121
121
  }
122
122
  );
123
123
  test
124
+ (
125
+ 'Bad pattern start parameter...',
126
+ (fDone) =>
127
+ {
128
+ var testPrecedent = loadPrecedentModule();
129
+ configPrecedent(testPrecedent);
130
+ Expect(testPrecedent.addPattern('', '>', 'SHORTEST_MATCH')).to.equal(false);
131
+ fDone();
132
+ }
133
+ );
134
+ test
135
+ (
136
+ 'Bad pattern end parameter...',
137
+ (fDone) =>
138
+ {
139
+ var testPrecedent = loadPrecedentModule();
140
+ configPrecedent(testPrecedent);
141
+ Expect(testPrecedent.addPattern('<', '', 'SHORTEST_MATCH')).to.equal(false);
142
+ fDone();
143
+ }
144
+ );
145
+ test
124
146
  (
125
147
  'Identifier fallback...',
126
148
  (fDone) =>
@@ -147,6 +169,90 @@ suite
147
169
  'Match this MEDIUM_MATCH and this SHORTEST_MATCH please.'
148
170
  ];
149
171
 
172
+ var tmpResult = '';
173
+ // Test every pair in TestStrings
174
+ for (var i = 0; i < tmpTestStrings.length; i+=2)
175
+ {
176
+ tmpResult = testPrecedent.parseString(tmpTestStrings[i]);
177
+ Expect(tmpResult).to.equal(tmpTestStrings[i+1]);
178
+ }
179
+ fDone();
180
+ }
181
+ );
182
+ test
183
+ (
184
+ 'Config magic example...',
185
+ (fDone) =>
186
+ {
187
+ // Use case is take a string with the following template expressions and translate them into the value from the environment variable if a default isn't passed in:
188
+ // 'Expressions like ${VariableWithDefault|DefaultValue} have a Default value after the pipe; others like ${VariableWithoutDefault} expressions do not have a Default value after the pipe. but should be processed properly.',
189
+ // 'Expressions like DefaultValue have a Default value after the pipe; others like VariableWithoutDefault expressions do not have a Default value after the pipe. but should be processed properly.',
190
+
191
+ // The usual case is just expressions in the string, but composability is fine.
192
+
193
+ var testPrecedent = new libPrecedent();
194
+
195
+ testPrecedent.addPattern('${', '}',
196
+ (pTemplateValue)=>
197
+ {
198
+ let tmpTemplateValue = pTemplateValue.trim();
199
+
200
+ let tmpSeparatorIndex = tmpTemplateValue.indexOf('|');
201
+
202
+ // If there is no pipe, the default value will end up being whatever the variable name is.
203
+ let tmpDefaultValue = tmpTemplateValue.substring(tmpSeparatorIndex+1);
204
+
205
+ let tmpEnvironmentVariableName = (tmpSeparatorIndex > -1) ? tmpTemplateValue.substring(0, tmpSeparatorIndex) : tmpTemplateValue;
206
+
207
+ if (process.env.hasOwnProperty(tmpEnvironmentVariableName))
208
+ {
209
+ return process.env[tmpEnvironmentVariableName];
210
+ }
211
+ else
212
+ {
213
+ return tmpDefaultValue;
214
+ }
215
+ });
216
+
217
+ var tmpTestStrings = [
218
+ 'Expressions like ${VariableWithDefault|DefaultValue} have a Default value after the pipe; others like ${VariableWithoutDefault} expressions do not have a Default value after the pipe. but should be processed properly.',
219
+ 'Expressions like DefaultValue have a Default value after the pipe; others like VariableWithoutDefault expressions do not have a Default value after the pipe. but should be processed properly.',
220
+
221
+ '${PATH}',
222
+ process.env.PATH,
223
+
224
+ 'AAA ${PATH}',
225
+ 'AAA '+process.env.PATH,
226
+
227
+ ' ${PATH} AAA ${PATH}',
228
+ ' '+process.env.PATH+' AAA '+process.env.PATH,
229
+
230
+ 'AAA ${PATH} BBB',
231
+ 'AAA '+process.env.PATH+' BBB',
232
+
233
+ 'AAA ${PATH} } BBB',
234
+ 'AAA '+process.env.PATH+' } BBB',
235
+
236
+ 'AAA ${ ${PATH} BBB',
237
+ // Two start parameters isn't okay ---
238
+ // ...it passes the pattern processor the following (without quotes):
239
+ // " ${PATH"
240
+ // Which is not going to match an environment variable. With the second
241
+ 'AAA ${PATH BBB',
242
+
243
+ '${PATH|Malarky Default Value} ZZZ',
244
+ process.env.PATH+' ZZZ',
245
+
246
+ '${THISISNOTANENVIRONMENTVARIABLE|Real Default Value} ZZZed',
247
+ 'Real Default Value ZZZed',
248
+
249
+ '${ THISISNOTANENVIRONMENTVARIABLETRIMMED|Real Trimmed Default Value } ZZZed',
250
+ 'Real Trimmed Default Value ZZZed',
251
+
252
+ '${PATH} BBB',
253
+ process.env.PATH+' BBB'
254
+ ];
255
+
150
256
  var tmpResult = '';
151
257
  // Test every pair in TestStrings
152
258
  for (var i = 0; i < tmpTestStrings.length; i+=2)
package/test.js ADDED
@@ -0,0 +1 @@
1
+ console.log(JSON.stringify(process.env, null, 4));
package/.c9/.nakignore DELETED
@@ -1,17 +0,0 @@
1
- *~backup-*
2
- .c9revisions
3
- .c9
4
- .git
5
- .svn
6
- .DS_Store
7
- .bzr
8
- .cdv
9
- ~.dep
10
- ~.dot
11
- ~.nib
12
- ~.plst
13
- .hg
14
- .pc
15
- *.min.js
16
- .nakignore
17
- /dev
package/.c9/metadata/tab0 DELETED
@@ -1 +0,0 @@
1
- {"filter":false,"title":"git - \"stevenvelozo-precedent-4804145\" ","tooltip":"git - \"stevenvelozo-precedent-4804145\" ","undoManager":{"mark":-1,"position":-1,"stack":[]},"terminal":{"id":"clone","cwd":"","width":1648,"height":405,"scrollTop":14346},"hash":"da39a3ee5e6b4b0d3255bfef95601890afd80709"}
package/.c9/metadata/tab3 DELETED
@@ -1 +0,0 @@
1
- {"filter":false,"title":"Debug Harness - Running","tooltip":"Debug Harness - Running","undoManager":{"mark":-1,"position":-1,"stack":[]},"output":{"id":"output-defaultDebug-wHarness","width":1648,"height":405,"scrollTop":608,"config":{"command":"harness/Debug.js","debug":true,"default":true,"name":"Debug Harness","runner":"Node.js (default)","toolbar":true},"running":{"pid":19860,"name":"output-defaultDebug-wHarness","running":2,"runner":[{"cmd":["bash","--login","-c","nvm use default > /dev/null; node ${debug?--nocrankshaft --nolazy --nodead_code_elimination --debug-brk=15454} '$file' $args"],"debugger":"v8","debugport":15454,"selector":"source.js","info":"Your code is running at \\033[01;34m$url\\033[00m.\n\\033[01;31mImportant:\\033[00m use \\033[01;32mprocess.env.PORT\\033[00m as the port and \\033[01;32mprocess.env.IP\\033[00m as the host in your scripts!\n","caption":"Node.js (default)","$builtin":true}],"debug":true}},"timestamp":1494786977632,"hash":"da39a3ee5e6b4b0d3255bfef95601890afd80709"}
@@ -1 +0,0 @@
1
- {"filter":false,"title":".travis.yml","tooltip":"/.travis.yml","undoManager":{"mark":-1,"position":-1,"stack":[]},"ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":4,"column":15},"end":{"row":4,"column":15},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":{"row":42,"mode":"ace/mode/yaml"}},"timestamp":1493836451758,"hash":"f9a1f0c930abdc50772e6d5cba85997a7067b28c"}
@@ -1 +0,0 @@
1
- {"filter":false,"title":"Ideas.md","tooltip":"/Ideas.md","undoManager":{"mark":100,"position":100,"stack":[[{"start":{"row":3,"column":3},"end":{"row":3,"column":4},"action":"insert","lines":["o"],"id":125}],[{"start":{"row":3,"column":4},"end":{"row":3,"column":5},"action":"insert","lines":["n"],"id":126}],[{"start":{"row":3,"column":5},"end":{"row":3,"column":6},"action":"insert","lines":["s"],"id":127}],[{"start":{"row":3,"column":6},"end":{"row":3,"column":7},"action":"insert","lines":["i"],"id":128}],[{"start":{"row":3,"column":7},"end":{"row":3,"column":8},"action":"insert","lines":["d"],"id":129}],[{"start":{"row":3,"column":8},"end":{"row":3,"column":9},"action":"insert","lines":["e"],"id":130}],[{"start":{"row":3,"column":9},"end":{"row":3,"column":10},"action":"insert","lines":["r"],"id":131}],[{"start":{"row":3,"column":10},"end":{"row":3,"column":11},"action":"insert","lines":[" "],"id":132}],[{"start":{"row":3,"column":11},"end":{"row":3,"column":12},"action":"insert","lines":["e"],"id":133}],[{"start":{"row":3,"column":12},"end":{"row":3,"column":13},"action":"insert","lines":["l"],"id":134}],[{"start":{"row":3,"column":13},"end":{"row":3,"column":14},"action":"insert","lines":["i"],"id":135}],[{"start":{"row":3,"column":14},"end":{"row":3,"column":15},"action":"insert","lines":["m"],"id":136}],[{"start":{"row":3,"column":15},"end":{"row":3,"column":16},"action":"insert","lines":["i"],"id":137}],[{"start":{"row":3,"column":16},"end":{"row":3,"column":17},"action":"insert","lines":["n"],"id":138}],[{"start":{"row":3,"column":17},"end":{"row":3,"column":18},"action":"insert","lines":["a"],"id":139}],[{"start":{"row":3,"column":18},"end":{"row":3,"column":19},"action":"insert","lines":["t"],"id":140}],[{"start":{"row":3,"column":19},"end":{"row":3,"column":20},"action":"insert","lines":["i"],"id":141}],[{"start":{"row":3,"column":20},"end":{"row":3,"column":21},"action":"insert","lines":["n"],"id":142}],[{"start":{"row":3,"column":21},"end":{"row":3,"column":22},"action":"insert","lines":["g"],"id":143}],[{"start":{"row":3,"column":22},"end":{"row":3,"column":23},"action":"insert","lines":[" "],"id":144}],[{"start":{"row":3,"column":23},"end":{"row":3,"column":24},"action":"insert","lines":["a"],"id":145}],[{"start":{"row":3,"column":24},"end":{"row":3,"column":25},"action":"insert","lines":["l"],"id":146}],[{"start":{"row":3,"column":25},"end":{"row":3,"column":26},"action":"insert","lines":["l"],"id":147}],[{"start":{"row":3,"column":26},"end":{"row":3,"column":27},"action":"insert","lines":[" "],"id":148}],[{"start":{"row":3,"column":27},"end":{"row":3,"column":28},"action":"insert","lines":["e"],"id":149}],[{"start":{"row":3,"column":28},"end":{"row":3,"column":29},"action":"insert","lines":["x"],"id":150}],[{"start":{"row":3,"column":28},"end":{"row":3,"column":29},"action":"remove","lines":["x"],"id":151}],[{"start":{"row":3,"column":27},"end":{"row":3,"column":28},"action":"remove","lines":["e"],"id":152}],[{"start":{"row":3,"column":27},"end":{"row":3,"column":28},"action":"insert","lines":["o"],"id":153}],[{"start":{"row":3,"column":28},"end":{"row":3,"column":29},"action":"insert","lines":["t"],"id":154}],[{"start":{"row":3,"column":29},"end":{"row":3,"column":30},"action":"insert","lines":["h"],"id":155}],[{"start":{"row":3,"column":30},"end":{"row":3,"column":31},"action":"insert","lines":["e"],"id":156}],[{"start":{"row":3,"column":31},"end":{"row":3,"column":32},"action":"insert","lines":["r"],"id":157}],[{"start":{"row":3,"column":32},"end":{"row":3,"column":33},"action":"insert","lines":[" "],"id":158}],[{"start":{"row":3,"column":33},"end":{"row":3,"column":34},"action":"insert","lines":["l"],"id":159}],[{"start":{"row":3,"column":34},"end":{"row":3,"column":35},"action":"insert","lines":["i"],"id":160}],[{"start":{"row":3,"column":35},"end":{"row":3,"column":36},"action":"insert","lines":["b"],"id":161}],[{"start":{"row":3,"column":36},"end":{"row":3,"column":37},"action":"insert","lines":["r"],"id":162}],[{"start":{"row":3,"column":37},"end":{"row":3,"column":38},"action":"insert","lines":["a"],"id":163}],[{"start":{"row":3,"column":38},"end":{"row":3,"column":39},"action":"insert","lines":["r"],"id":164}],[{"start":{"row":3,"column":39},"end":{"row":3,"column":40},"action":"insert","lines":["y"],"id":165}],[{"start":{"row":3,"column":40},"end":{"row":3,"column":41},"action":"insert","lines":[" "],"id":166}],[{"start":{"row":3,"column":41},"end":{"row":3,"column":42},"action":"insert","lines":["d"],"id":167}],[{"start":{"row":3,"column":42},"end":{"row":3,"column":43},"action":"insert","lines":["e"],"id":168}],[{"start":{"row":3,"column":43},"end":{"row":3,"column":44},"action":"insert","lines":["p"],"id":169}],[{"start":{"row":3,"column":44},"end":{"row":3,"column":45},"action":"insert","lines":["e"],"id":170}],[{"start":{"row":3,"column":45},"end":{"row":3,"column":46},"action":"insert","lines":["n"],"id":171}],[{"start":{"row":3,"column":46},"end":{"row":3,"column":47},"action":"insert","lines":["e"],"id":172}],[{"start":{"row":3,"column":47},"end":{"row":3,"column":48},"action":"insert","lines":["d"],"id":173}],[{"start":{"row":3,"column":47},"end":{"row":3,"column":48},"action":"remove","lines":["d"],"id":174}],[{"start":{"row":3,"column":46},"end":{"row":3,"column":47},"action":"remove","lines":["e"],"id":175}],[{"start":{"row":3,"column":46},"end":{"row":3,"column":47},"action":"insert","lines":["d"],"id":176}],[{"start":{"row":3,"column":47},"end":{"row":3,"column":48},"action":"insert","lines":["e"],"id":177}],[{"start":{"row":3,"column":48},"end":{"row":3,"column":49},"action":"insert","lines":["n"],"id":178}],[{"start":{"row":3,"column":49},"end":{"row":3,"column":50},"action":"insert","lines":["c"],"id":179}],[{"start":{"row":3,"column":50},"end":{"row":3,"column":51},"action":"insert","lines":["i"],"id":180}],[{"start":{"row":3,"column":51},"end":{"row":3,"column":52},"action":"insert","lines":["s"],"id":181}],[{"start":{"row":3,"column":52},"end":{"row":3,"column":53},"action":"insert","lines":["e"],"id":182}],[{"start":{"row":3,"column":52},"end":{"row":3,"column":53},"action":"remove","lines":["e"],"id":183}],[{"start":{"row":3,"column":51},"end":{"row":3,"column":52},"action":"remove","lines":["s"],"id":184}],[{"start":{"row":3,"column":51},"end":{"row":3,"column":52},"action":"insert","lines":["e"],"id":185}],[{"start":{"row":3,"column":52},"end":{"row":3,"column":53},"action":"insert","lines":["s"],"id":186}],[{"start":{"row":3,"column":53},"end":{"row":3,"column":54},"action":"insert","lines":[" "],"id":187}],[{"start":{"row":3,"column":54},"end":{"row":3,"column":55},"action":"insert","lines":["f"],"id":188}],[{"start":{"row":3,"column":55},"end":{"row":3,"column":56},"action":"insert","lines":["o"],"id":189}],[{"start":{"row":3,"column":56},"end":{"row":3,"column":57},"action":"insert","lines":["r"],"id":190}],[{"start":{"row":3,"column":57},"end":{"row":3,"column":58},"action":"insert","lines":[" "],"id":191}],[{"start":{"row":3,"column":58},"end":{"row":3,"column":59},"action":"insert","lines":["a"],"id":192}],[{"start":{"row":3,"column":59},"end":{"row":3,"column":60},"action":"insert","lines":[" "],"id":193}],[{"start":{"row":3,"column":60},"end":{"row":3,"column":61},"action":"insert","lines":["s"],"id":194}],[{"start":{"row":3,"column":61},"end":{"row":3,"column":62},"action":"insert","lines":["t"],"id":195}],[{"start":{"row":3,"column":62},"end":{"row":3,"column":63},"action":"insert","lines":["r"],"id":196}],[{"start":{"row":3,"column":63},"end":{"row":3,"column":64},"action":"insert","lines":["i"],"id":197}],[{"start":{"row":3,"column":64},"end":{"row":3,"column":65},"action":"insert","lines":["p"],"id":198}],[{"start":{"row":3,"column":65},"end":{"row":3,"column":66},"action":"insert","lines":["p"],"id":199}],[{"start":{"row":3,"column":66},"end":{"row":3,"column":67},"action":"insert","lines":["e"],"id":200}],[{"start":{"row":3,"column":67},"end":{"row":3,"column":68},"action":"insert","lines":["d"],"id":201}],[{"start":{"row":3,"column":68},"end":{"row":3,"column":69},"action":"insert","lines":["-"],"id":202}],[{"start":{"row":3,"column":69},"end":{"row":3,"column":70},"action":"insert","lines":["d"],"id":203}],[{"start":{"row":3,"column":70},"end":{"row":3,"column":71},"action":"insert","lines":["o"],"id":204}],[{"start":{"row":3,"column":71},"end":{"row":3,"column":72},"action":"insert","lines":["w"],"id":205}],[{"start":{"row":3,"column":72},"end":{"row":3,"column":73},"action":"insert","lines":["n"],"id":206}],[{"start":{"row":3,"column":73},"end":{"row":3,"column":74},"action":"insert","lines":[" "],"id":207}],[{"start":{"row":3,"column":74},"end":{"row":3,"column":75},"action":"insert","lines":["b"],"id":208}],[{"start":{"row":3,"column":75},"end":{"row":3,"column":76},"action":"insert","lines":["r"],"id":209}],[{"start":{"row":3,"column":76},"end":{"row":3,"column":77},"action":"insert","lines":["o"],"id":210}],[{"start":{"row":3,"column":77},"end":{"row":3,"column":78},"action":"insert","lines":["w"],"id":211}],[{"start":{"row":3,"column":78},"end":{"row":3,"column":79},"action":"insert","lines":["s"],"id":212}],[{"start":{"row":3,"column":79},"end":{"row":3,"column":80},"action":"insert","lines":["e"],"id":213}],[{"start":{"row":3,"column":80},"end":{"row":3,"column":81},"action":"insert","lines":["r"],"id":214}],[{"start":{"row":3,"column":81},"end":{"row":3,"column":82},"action":"insert","lines":["i"],"id":215}],[{"start":{"row":3,"column":82},"end":{"row":3,"column":83},"action":"insert","lines":["f"],"id":216}],[{"start":{"row":3,"column":83},"end":{"row":3,"column":84},"action":"insert","lines":["y"],"id":217}],[{"start":{"row":3,"column":84},"end":{"row":3,"column":85},"action":"insert","lines":[" "],"id":218}],[{"start":{"row":3,"column":85},"end":{"row":3,"column":86},"action":"insert","lines":["v"],"id":219}],[{"start":{"row":3,"column":86},"end":{"row":3,"column":87},"action":"insert","lines":["e"],"id":220}],[{"start":{"row":3,"column":87},"end":{"row":3,"column":88},"action":"insert","lines":["r"],"id":221}],[{"start":{"row":3,"column":88},"end":{"row":3,"column":89},"action":"insert","lines":["s"],"id":222}],[{"start":{"row":3,"column":89},"end":{"row":3,"column":90},"action":"insert","lines":["i"],"id":223}],[{"start":{"row":3,"column":90},"end":{"row":3,"column":91},"action":"insert","lines":["o"],"id":224}],[{"start":{"row":3,"column":91},"end":{"row":3,"column":92},"action":"insert","lines":["n"],"id":225}]]},"ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":3,"column":92},"end":{"row":3,"column":92},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":{"row":4,"mode":"ace/mode/markdown"}},"timestamp":1493825896344,"hash":"96bb2981c129bdda0dad6d64feb2ad913de46f3d"}
@@ -1 +0,0 @@
1
- {"filter":false,"title":"Precedent-Command.js","tooltip":"/Precedent-Command.js","ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":0,"column":0},"end":{"row":6,"column":2},"isBackwards":true},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":0},"hash":"56b9e1c9a8b193a6147835f186210b379359a9a8","undoManager":{"mark":-1,"position":-1,"stack":[]},"timestamp":1493744684973}
@@ -1 +0,0 @@
1
- {"filter":false,"title":"Precident-Command.js","tooltip":"/Precident-Command.js","undoManager":{"mark":93,"position":93,"stack":[[{"start":{"row":0,"column":0},"end":{"row":19,"column":32},"action":"insert","lines":["/**","* Stricture MicroDDL JSON Parser","*","* @license MIT","*","* @author Steven Velozo <steven@velozo.com>","*","* @description Processes the JSON Data Description into documentation and SQL statements","*/","","console.log('Stricture JSON DDL Processing Utility');","console.log('Contact: Steven Velozo <steven@velozo.com>');","console.log('');","console.log('---');","console.log('');","","// No frills, run it and use command arguments.","var libStricture = require('./source/Stricture.js');","","module.exports = libStricture();"],"id":1}],[{"start":{"row":1,"column":2},"end":{"row":1,"column":32},"action":"remove","lines":["Stricture MicroDDL JSON Parser"],"id":2},{"start":{"row":1,"column":2},"end":{"row":1,"column":3},"action":"insert","lines":["P"]}],[{"start":{"row":1,"column":3},"end":{"row":1,"column":4},"action":"insert","lines":["r"],"id":3}],[{"start":{"row":1,"column":4},"end":{"row":1,"column":5},"action":"insert","lines":["e"],"id":4}],[{"start":{"row":1,"column":5},"end":{"row":1,"column":6},"action":"insert","lines":["c"],"id":5}],[{"start":{"row":1,"column":6},"end":{"row":1,"column":7},"action":"insert","lines":["e"],"id":6}],[{"start":{"row":1,"column":7},"end":{"row":1,"column":8},"action":"insert","lines":["d"],"id":7}],[{"start":{"row":1,"column":8},"end":{"row":1,"column":9},"action":"insert","lines":["e"],"id":8}],[{"start":{"row":1,"column":9},"end":{"row":1,"column":10},"action":"insert","lines":["n"],"id":9}],[{"start":{"row":1,"column":10},"end":{"row":1,"column":11},"action":"insert","lines":["t"],"id":10}],[{"start":{"row":1,"column":11},"end":{"row":1,"column":12},"action":"insert","lines":[" "],"id":11}],[{"start":{"row":1,"column":12},"end":{"row":1,"column":13},"action":"insert","lines":["M"],"id":12}],[{"start":{"row":1,"column":13},"end":{"row":1,"column":14},"action":"insert","lines":["e"],"id":13}],[{"start":{"row":1,"column":14},"end":{"row":1,"column":15},"action":"insert","lines":["t"],"id":14}],[{"start":{"row":1,"column":15},"end":{"row":1,"column":16},"action":"insert","lines":["a"],"id":15}],[{"start":{"row":1,"column":16},"end":{"row":1,"column":17},"action":"insert","lines":["-"],"id":16}],[{"start":{"row":1,"column":17},"end":{"row":1,"column":18},"action":"insert","lines":["t"],"id":17}],[{"start":{"row":1,"column":18},"end":{"row":1,"column":19},"action":"insert","lines":["e"],"id":18}],[{"start":{"row":1,"column":19},"end":{"row":1,"column":20},"action":"insert","lines":["m"],"id":19}],[{"start":{"row":1,"column":20},"end":{"row":1,"column":21},"action":"insert","lines":["p"],"id":20}],[{"start":{"row":1,"column":21},"end":{"row":1,"column":22},"action":"insert","lines":["l"],"id":21}],[{"start":{"row":1,"column":22},"end":{"row":1,"column":23},"action":"insert","lines":["a"],"id":22}],[{"start":{"row":1,"column":23},"end":{"row":1,"column":24},"action":"insert","lines":["t"],"id":23}],[{"start":{"row":1,"column":24},"end":{"row":1,"column":25},"action":"insert","lines":["e"],"id":24}],[{"start":{"row":1,"column":25},"end":{"row":1,"column":26},"action":"insert","lines":["i"],"id":25}],[{"start":{"row":1,"column":26},"end":{"row":1,"column":27},"action":"insert","lines":["n"],"id":26}],[{"start":{"row":1,"column":26},"end":{"row":1,"column":27},"action":"remove","lines":["n"],"id":27}],[{"start":{"row":1,"column":25},"end":{"row":1,"column":26},"action":"remove","lines":["i"],"id":28}],[{"start":{"row":1,"column":24},"end":{"row":1,"column":25},"action":"remove","lines":["e"],"id":29}],[{"start":{"row":1,"column":24},"end":{"row":1,"column":25},"action":"insert","lines":["i"],"id":30}],[{"start":{"row":1,"column":25},"end":{"row":1,"column":26},"action":"insert","lines":["n"],"id":31}],[{"start":{"row":1,"column":26},"end":{"row":1,"column":27},"action":"insert","lines":["g"],"id":32}],[{"start":{"row":6,"column":0},"end":{"row":8,"column":0},"action":"remove","lines":["*","* @description Processes the JSON Data Description into documentation and SQL statements",""],"id":33}],[{"start":{"row":8,"column":13},"end":{"row":8,"column":50},"action":"remove","lines":["Stricture JSON DDL Processing Utility"],"id":34},{"start":{"row":8,"column":13},"end":{"row":8,"column":14},"action":"insert","lines":["P"]}],[{"start":{"row":8,"column":14},"end":{"row":8,"column":15},"action":"insert","lines":["r"],"id":35}],[{"start":{"row":8,"column":15},"end":{"row":8,"column":16},"action":"insert","lines":["e"],"id":36}],[{"start":{"row":8,"column":16},"end":{"row":8,"column":17},"action":"insert","lines":["c"],"id":37}],[{"start":{"row":8,"column":17},"end":{"row":8,"column":18},"action":"insert","lines":["e"],"id":38}],[{"start":{"row":8,"column":18},"end":{"row":8,"column":19},"action":"insert","lines":["d"],"id":39}],[{"start":{"row":8,"column":19},"end":{"row":8,"column":20},"action":"insert","lines":["e"],"id":40}],[{"start":{"row":8,"column":20},"end":{"row":8,"column":21},"action":"insert","lines":["n"],"id":41}],[{"start":{"row":8,"column":21},"end":{"row":8,"column":22},"action":"insert","lines":["t"],"id":42}],[{"start":{"row":8,"column":22},"end":{"row":8,"column":23},"action":"insert","lines":[" "],"id":43}],[{"start":{"row":8,"column":23},"end":{"row":8,"column":24},"action":"insert","lines":["m"],"id":44}],[{"start":{"row":8,"column":24},"end":{"row":8,"column":25},"action":"insert","lines":["e"],"id":45}],[{"start":{"row":8,"column":25},"end":{"row":8,"column":26},"action":"insert","lines":["t"],"id":46}],[{"start":{"row":8,"column":26},"end":{"row":8,"column":27},"action":"insert","lines":["a"],"id":47}],[{"start":{"row":8,"column":27},"end":{"row":8,"column":28},"action":"insert","lines":["-"],"id":48}],[{"start":{"row":8,"column":28},"end":{"row":8,"column":29},"action":"insert","lines":["t"],"id":49}],[{"start":{"row":8,"column":29},"end":{"row":8,"column":30},"action":"insert","lines":["e"],"id":50}],[{"start":{"row":8,"column":30},"end":{"row":8,"column":31},"action":"insert","lines":["m"],"id":51}],[{"start":{"row":8,"column":31},"end":{"row":8,"column":32},"action":"insert","lines":["p"],"id":52}],[{"start":{"row":8,"column":32},"end":{"row":8,"column":33},"action":"insert","lines":["l"],"id":53}],[{"start":{"row":8,"column":33},"end":{"row":8,"column":34},"action":"insert","lines":["a"],"id":54}],[{"start":{"row":8,"column":34},"end":{"row":8,"column":35},"action":"insert","lines":["t"],"id":55}],[{"start":{"row":8,"column":35},"end":{"row":8,"column":36},"action":"insert","lines":["i"],"id":56}],[{"start":{"row":8,"column":36},"end":{"row":8,"column":37},"action":"insert","lines":["n"],"id":57}],[{"start":{"row":8,"column":37},"end":{"row":8,"column":38},"action":"insert","lines":["g"],"id":58}],[{"start":{"row":15,"column":37},"end":{"row":15,"column":46},"action":"remove","lines":["Stricture"],"id":59},{"start":{"row":15,"column":37},"end":{"row":15,"column":38},"action":"insert","lines":["P"]}],[{"start":{"row":15,"column":38},"end":{"row":15,"column":39},"action":"insert","lines":["r"],"id":60}],[{"start":{"row":15,"column":39},"end":{"row":15,"column":40},"action":"insert","lines":["e"],"id":61}],[{"start":{"row":15,"column":40},"end":{"row":15,"column":41},"action":"insert","lines":["c"],"id":62}],[{"start":{"row":15,"column":41},"end":{"row":15,"column":42},"action":"insert","lines":["e"],"id":63}],[{"start":{"row":15,"column":42},"end":{"row":15,"column":43},"action":"insert","lines":["d"],"id":64}],[{"start":{"row":15,"column":43},"end":{"row":15,"column":44},"action":"insert","lines":["e"],"id":65}],[{"start":{"row":15,"column":44},"end":{"row":15,"column":45},"action":"insert","lines":["n"],"id":66}],[{"start":{"row":15,"column":45},"end":{"row":15,"column":46},"action":"insert","lines":["t"],"id":67}],[{"start":{"row":15,"column":7},"end":{"row":15,"column":16},"action":"remove","lines":["Stricture"],"id":68},{"start":{"row":15,"column":7},"end":{"row":15,"column":8},"action":"insert","lines":["P"]}],[{"start":{"row":15,"column":8},"end":{"row":15,"column":9},"action":"insert","lines":["r"],"id":69}],[{"start":{"row":15,"column":9},"end":{"row":15,"column":10},"action":"insert","lines":["e"],"id":70}],[{"start":{"row":15,"column":10},"end":{"row":15,"column":11},"action":"insert","lines":["c"],"id":71}],[{"start":{"row":15,"column":11},"end":{"row":15,"column":12},"action":"insert","lines":["e"],"id":72}],[{"start":{"row":15,"column":12},"end":{"row":15,"column":13},"action":"insert","lines":["d"],"id":73}],[{"start":{"row":15,"column":13},"end":{"row":15,"column":14},"action":"insert","lines":["e"],"id":74}],[{"start":{"row":15,"column":14},"end":{"row":15,"column":15},"action":"insert","lines":["n"],"id":75}],[{"start":{"row":15,"column":15},"end":{"row":15,"column":16},"action":"insert","lines":["t"],"id":76}],[{"start":{"row":17,"column":17},"end":{"row":17,"column":29},"action":"remove","lines":["libStricture"],"id":77},{"start":{"row":17,"column":17},"end":{"row":17,"column":18},"action":"insert","lines":["l"]}],[{"start":{"row":17,"column":18},"end":{"row":17,"column":19},"action":"insert","lines":["i"],"id":78}],[{"start":{"row":17,"column":19},"end":{"row":17,"column":20},"action":"insert","lines":["b"],"id":79}],[{"start":{"row":17,"column":20},"end":{"row":17,"column":21},"action":"insert","lines":["P"],"id":80}],[{"start":{"row":17,"column":17},"end":{"row":17,"column":21},"action":"remove","lines":["libP"],"id":81},{"start":{"row":17,"column":17},"end":{"row":17,"column":29},"action":"insert","lines":["libPrecedent"]}],[{"start":{"row":15,"column":28},"end":{"row":15,"column":29},"action":"remove","lines":["."],"id":82}],[{"start":{"row":15,"column":27},"end":{"row":15,"column":28},"action":"insert","lines":["_"],"id":83}],[{"start":{"row":15,"column":28},"end":{"row":15,"column":29},"action":"insert","lines":["_"],"id":84}],[{"start":{"row":15,"column":29},"end":{"row":15,"column":30},"action":"insert","lines":["d"],"id":85}],[{"start":{"row":15,"column":30},"end":{"row":15,"column":31},"action":"insert","lines":["i"],"id":86}],[{"start":{"row":15,"column":31},"end":{"row":15,"column":32},"action":"insert","lines":["r"],"id":87}],[{"start":{"row":15,"column":32},"end":{"row":15,"column":33},"action":"insert","lines":["n"],"id":88}],[{"start":{"row":15,"column":33},"end":{"row":15,"column":34},"action":"insert","lines":["a"],"id":89}],[{"start":{"row":15,"column":34},"end":{"row":15,"column":35},"action":"insert","lines":["m"],"id":90}],[{"start":{"row":15,"column":35},"end":{"row":15,"column":36},"action":"insert","lines":["e"],"id":91}],[{"start":{"row":15,"column":36},"end":{"row":15,"column":37},"action":"insert","lines":["+"],"id":92}],[{"start":{"row":15,"column":37},"end":{"row":15,"column":39},"action":"insert","lines":["''"],"id":93}],[{"start":{"row":15,"column":37},"end":{"row":15,"column":39},"action":"remove","lines":["''"],"id":94}]]},"ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":15,"column":37},"end":{"row":15,"column":37},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":0},"timestamp":1493744477388,"hash":"56b9e1c9a8b193a6147835f186210b379359a9a8"}
@@ -1 +0,0 @@
1
- {"filter":false,"title":"README.md","tooltip":"/README.md","undoManager":{"mark":-1,"position":-1,"stack":[]},"ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":40,"column":53},"end":{"row":40,"column":53},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":{"row":4,"state":"allowBlock","mode":"ace/mode/markdown"}},"timestamp":1493918131295,"hash":"182e00a724e226c9d23ef8e89ce9ce12b0eac009"}
@@ -1 +0,0 @@
1
- {"filter":false,"title":"Precedent","tooltip":"/bin/Precedent","undoManager":{"mark":-1,"position":-1,"stack":[]},"ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":10,"column":71},"end":{"row":10,"column":71},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":{"row":4,"state":"doc-start","mode":"ace/mode/javascript"}},"timestamp":1493744703936,"hash":"abd0b2904d9812a26c80656c9f2afa446b206d2f"}
@@ -1 +0,0 @@
1
- {"filter":false,"title":"Precident","tooltip":"/bin/Precident","undoManager":{"mark":100,"position":100,"stack":[[{"start":{"row":13,"column":16},"end":{"row":13,"column":17},"action":"insert","lines":["c"],"id":14}],[{"start":{"row":13,"column":17},"end":{"row":13,"column":18},"action":"insert","lines":["u"],"id":15}],[{"start":{"row":13,"column":18},"end":{"row":13,"column":19},"action":"insert","lines":["t"],"id":16}],[{"start":{"row":13,"column":19},"end":{"row":13,"column":20},"action":"insert","lines":["i"],"id":17}],[{"start":{"row":13,"column":20},"end":{"row":13,"column":21},"action":"insert","lines":["o"],"id":18}],[{"start":{"row":13,"column":21},"end":{"row":13,"column":22},"action":"insert","lines":["n"],"id":19}],[{"start":{"row":13,"column":37},"end":{"row":13,"column":46},"action":"remove","lines":["Stricture"],"id":20},{"start":{"row":13,"column":37},"end":{"row":13,"column":38},"action":"insert","lines":["P"]}],[{"start":{"row":13,"column":38},"end":{"row":13,"column":39},"action":"insert","lines":["r"],"id":21}],[{"start":{"row":13,"column":39},"end":{"row":13,"column":40},"action":"insert","lines":["e"],"id":22}],[{"start":{"row":13,"column":40},"end":{"row":13,"column":41},"action":"insert","lines":["c"],"id":23}],[{"start":{"row":13,"column":41},"end":{"row":13,"column":42},"action":"insert","lines":["i"],"id":24}],[{"start":{"row":13,"column":42},"end":{"row":13,"column":43},"action":"insert","lines":["d"],"id":25}],[{"start":{"row":13,"column":43},"end":{"row":13,"column":44},"action":"insert","lines":["e"],"id":26}],[{"start":{"row":13,"column":44},"end":{"row":13,"column":45},"action":"insert","lines":["n"],"id":27}],[{"start":{"row":13,"column":45},"end":{"row":13,"column":46},"action":"insert","lines":["t"],"id":28}],[{"start":{"row":6,"column":0},"end":{"row":8,"column":0},"action":"remove","lines":[" *"," * See <https://github.com/trentm/node-bunyan>.",""],"id":29}],[{"start":{"row":4,"column":0},"end":{"row":6,"column":0},"action":"remove","lines":[" * Database create statements, documentation, graphs, mock objects"," * for unit tests and a bunch more.",""],"id":30}],[{"start":{"row":2,"column":3},"end":{"row":2,"column":12},"action":"remove","lines":["Stricture"],"id":31},{"start":{"row":2,"column":3},"end":{"row":2,"column":4},"action":"insert","lines":["P"]}],[{"start":{"row":2,"column":4},"end":{"row":2,"column":5},"action":"insert","lines":["r"],"id":32}],[{"start":{"row":2,"column":5},"end":{"row":2,"column":6},"action":"insert","lines":["e"],"id":33}],[{"start":{"row":2,"column":6},"end":{"row":2,"column":7},"action":"insert","lines":["c"],"id":34}],[{"start":{"row":2,"column":7},"end":{"row":2,"column":8},"action":"insert","lines":["i"],"id":35}],[{"start":{"row":2,"column":8},"end":{"row":2,"column":9},"action":"insert","lines":["d"],"id":36}],[{"start":{"row":2,"column":9},"end":{"row":2,"column":10},"action":"insert","lines":["e"],"id":37}],[{"start":{"row":2,"column":10},"end":{"row":2,"column":11},"action":"insert","lines":["n"],"id":38}],[{"start":{"row":2,"column":11},"end":{"row":2,"column":12},"action":"insert","lines":["t"],"id":39}],[{"start":{"row":3,"column":2},"end":{"row":4,"column":0},"action":"insert","lines":["",""],"id":40},{"start":{"row":4,"column":0},"end":{"row":4,"column":1},"action":"insert","lines":[" "]}],[{"start":{"row":4,"column":1},"end":{"row":4,"column":2},"action":"insert","lines":["*"],"id":41}],[{"start":{"row":4,"column":2},"end":{"row":4,"column":3},"action":"insert","lines":[" "],"id":42}],[{"start":{"row":4,"column":3},"end":{"row":4,"column":4},"action":"insert","lines":["M"],"id":43}],[{"start":{"row":4,"column":4},"end":{"row":4,"column":5},"action":"insert","lines":["e"],"id":44}],[{"start":{"row":4,"column":5},"end":{"row":4,"column":6},"action":"insert","lines":["t"],"id":45}],[{"start":{"row":4,"column":6},"end":{"row":4,"column":7},"action":"insert","lines":["a"],"id":46}],[{"start":{"row":4,"column":7},"end":{"row":4,"column":8},"action":"insert","lines":["-"],"id":47}],[{"start":{"row":4,"column":8},"end":{"row":4,"column":9},"action":"insert","lines":["t"],"id":48}],[{"start":{"row":4,"column":9},"end":{"row":4,"column":10},"action":"insert","lines":["e"],"id":49}],[{"start":{"row":4,"column":10},"end":{"row":4,"column":11},"action":"insert","lines":["m"],"id":50}],[{"start":{"row":4,"column":11},"end":{"row":4,"column":12},"action":"insert","lines":["p"],"id":51}],[{"start":{"row":4,"column":12},"end":{"row":4,"column":13},"action":"insert","lines":["l"],"id":52}],[{"start":{"row":4,"column":13},"end":{"row":4,"column":14},"action":"insert","lines":["a"],"id":53}],[{"start":{"row":4,"column":14},"end":{"row":4,"column":15},"action":"insert","lines":["t"],"id":54}],[{"start":{"row":4,"column":15},"end":{"row":4,"column":16},"action":"insert","lines":["i"],"id":55}],[{"start":{"row":4,"column":16},"end":{"row":4,"column":17},"action":"insert","lines":["n"],"id":56}],[{"start":{"row":4,"column":17},"end":{"row":4,"column":18},"action":"insert","lines":["g"],"id":57}],[{"start":{"row":4,"column":18},"end":{"row":4,"column":19},"action":"insert","lines":[","],"id":58}],[{"start":{"row":4,"column":19},"end":{"row":4,"column":20},"action":"insert","lines":[" "],"id":59}],[{"start":{"row":4,"column":20},"end":{"row":4,"column":21},"action":"insert","lines":["f"],"id":60}],[{"start":{"row":4,"column":21},"end":{"row":4,"column":22},"action":"insert","lines":["o"],"id":61}],[{"start":{"row":4,"column":22},"end":{"row":4,"column":23},"action":"insert","lines":["r"],"id":62}],[{"start":{"row":4,"column":23},"end":{"row":4,"column":24},"action":"insert","lines":[" "],"id":63}],[{"start":{"row":4,"column":24},"end":{"row":4,"column":25},"action":"insert","lines":["w"],"id":64}],[{"start":{"row":4,"column":25},"end":{"row":4,"column":26},"action":"insert","lines":["h"],"id":65}],[{"start":{"row":4,"column":26},"end":{"row":4,"column":27},"action":"insert","lines":["e"],"id":66}],[{"start":{"row":4,"column":27},"end":{"row":4,"column":28},"action":"insert","lines":["n"],"id":67}],[{"start":{"row":4,"column":28},"end":{"row":4,"column":29},"action":"insert","lines":[" "],"id":68}],[{"start":{"row":4,"column":29},"end":{"row":4,"column":30},"action":"insert","lines":["y"],"id":69}],[{"start":{"row":4,"column":30},"end":{"row":4,"column":31},"action":"insert","lines":["o"],"id":70}],[{"start":{"row":4,"column":31},"end":{"row":4,"column":32},"action":"insert","lines":["u"],"id":71}],[{"start":{"row":4,"column":32},"end":{"row":4,"column":33},"action":"insert","lines":[" "],"id":72}],[{"start":{"row":4,"column":33},"end":{"row":4,"column":34},"action":"insert","lines":["w"],"id":73}],[{"start":{"row":4,"column":34},"end":{"row":4,"column":35},"action":"insert","lines":["a"],"id":74}],[{"start":{"row":4,"column":35},"end":{"row":4,"column":36},"action":"insert","lines":["n"],"id":75}],[{"start":{"row":4,"column":36},"end":{"row":4,"column":37},"action":"insert","lines":["t"],"id":76}],[{"start":{"row":4,"column":37},"end":{"row":4,"column":38},"action":"insert","lines":[" "],"id":77}],[{"start":{"row":4,"column":38},"end":{"row":4,"column":39},"action":"insert","lines":["t"],"id":78}],[{"start":{"row":4,"column":39},"end":{"row":4,"column":40},"action":"insert","lines":["e"],"id":79}],[{"start":{"row":4,"column":40},"end":{"row":4,"column":41},"action":"insert","lines":["m"],"id":80}],[{"start":{"row":4,"column":41},"end":{"row":4,"column":42},"action":"insert","lines":["p"],"id":81}],[{"start":{"row":4,"column":42},"end":{"row":4,"column":43},"action":"insert","lines":["l"],"id":82}],[{"start":{"row":4,"column":43},"end":{"row":4,"column":44},"action":"insert","lines":["a"],"id":83}],[{"start":{"row":4,"column":44},"end":{"row":4,"column":45},"action":"insert","lines":["t"],"id":84}],[{"start":{"row":4,"column":45},"end":{"row":4,"column":46},"action":"insert","lines":["e"],"id":85}],[{"start":{"row":4,"column":46},"end":{"row":4,"column":47},"action":"insert","lines":["s"],"id":86}],[{"start":{"row":4,"column":47},"end":{"row":4,"column":48},"action":"insert","lines":[" "],"id":87}],[{"start":{"row":4,"column":48},"end":{"row":4,"column":49},"action":"insert","lines":["t"],"id":88}],[{"start":{"row":4,"column":49},"end":{"row":4,"column":50},"action":"insert","lines":["o"],"id":89}],[{"start":{"row":4,"column":50},"end":{"row":4,"column":51},"action":"insert","lines":[" "],"id":90}],[{"start":{"row":4,"column":51},"end":{"row":4,"column":52},"action":"insert","lines":["c"],"id":91}],[{"start":{"row":4,"column":52},"end":{"row":4,"column":53},"action":"insert","lines":["r"],"id":92}],[{"start":{"row":4,"column":53},"end":{"row":4,"column":54},"action":"insert","lines":["e"],"id":93}],[{"start":{"row":4,"column":54},"end":{"row":4,"column":55},"action":"insert","lines":["a"],"id":94}],[{"start":{"row":4,"column":55},"end":{"row":4,"column":56},"action":"insert","lines":["t"],"id":95}],[{"start":{"row":4,"column":56},"end":{"row":4,"column":57},"action":"insert","lines":["e"],"id":96}],[{"start":{"row":4,"column":57},"end":{"row":4,"column":58},"action":"insert","lines":[" "],"id":97}],[{"start":{"row":4,"column":58},"end":{"row":4,"column":59},"action":"insert","lines":["t"],"id":98}],[{"start":{"row":4,"column":59},"end":{"row":4,"column":60},"action":"insert","lines":["e"],"id":99}],[{"start":{"row":4,"column":60},"end":{"row":4,"column":61},"action":"insert","lines":["m"],"id":100}],[{"start":{"row":4,"column":61},"end":{"row":4,"column":62},"action":"insert","lines":["p"],"id":101}],[{"start":{"row":4,"column":62},"end":{"row":4,"column":63},"action":"insert","lines":["l"],"id":102}],[{"start":{"row":4,"column":63},"end":{"row":4,"column":64},"action":"insert","lines":["a"],"id":103}],[{"start":{"row":4,"column":64},"end":{"row":4,"column":65},"action":"insert","lines":["t"],"id":104}],[{"start":{"row":4,"column":65},"end":{"row":4,"column":66},"action":"insert","lines":["e"],"id":105}],[{"start":{"row":4,"column":66},"end":{"row":4,"column":67},"action":"insert","lines":["s"],"id":106}],[{"start":{"row":4,"column":67},"end":{"row":4,"column":68},"action":"insert","lines":["."],"id":107}],[{"start":{"row":10,"column":37},"end":{"row":10,"column":38},"action":"insert","lines":["s"],"id":108}],[{"start":{"row":10,"column":38},"end":{"row":10,"column":39},"action":"insert","lines":["o"],"id":109}],[{"start":{"row":10,"column":39},"end":{"row":10,"column":40},"action":"insert","lines":["u"],"id":110}],[{"start":{"row":10,"column":40},"end":{"row":10,"column":41},"action":"insert","lines":["r"],"id":111}],[{"start":{"row":10,"column":41},"end":{"row":10,"column":42},"action":"insert","lines":["c"],"id":112}],[{"start":{"row":10,"column":42},"end":{"row":10,"column":43},"action":"insert","lines":["e"],"id":113}],[{"start":{"row":10,"column":43},"end":{"row":10,"column":44},"action":"insert","lines":["/"],"id":114}]]},"ace":{"folds":[],"scrolltop":0,"scrollleft":0,"selection":{"start":{"row":10,"column":59},"end":{"row":10,"column":59},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":0},"timestamp":1493743709109,"hash":"cbfd63578afedbe4289421523969cab575a35b69"}