jsgui3-server 0.0.75 → 0.0.79
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.
- package/examples/client-side-popup-menu-button.html +93 -93
- package/examples/controls/_html-server-color-palette.js +114 -114
- package/examples/controls/html-server-combo-box.js +104 -104
- package/examples/controls/html-server-list.js +98 -98
- package/examples/controls/html-server-popup-menu-button.js +114 -114
- package/examples/controls/html-server-start-stop-toggle-button.js +146 -146
- package/examples/controls/scs-arrow-button.js +36 -36
- package/examples/controls/scs-date-picker.js +157 -157
- package/examples/controls/scs-file-browser.js +82 -82
- package/examples/controls/scs-item.js +159 -159
- package/examples/controls/scs-month-arrow-selector.js +126 -126
- package/examples/controls/scs-month-view.js +95 -95
- package/examples/controls/scs-start-stop-toggle-button.js +40 -40
- package/examples/controls/scs-tree.js +49 -49
- package/examples/controls/scs-year-arrow-selector.js +127 -127
- package/examples/demos/date-picker.js +119 -119
- package/examples/demos/explain-encapsulation.js +9 -9
- package/examples/demos/resizing.js +35 -35
- package/examples/demos/server_time.js +6 -6
- package/examples/demos/square_box.js +324 -324
- package/examples/html-rendering.js +20 -20
- package/examples/html-server.js +102 -100
- package/fs2.js +1836 -1836
- package/module.js +21 -21
- package/old/single-control-server.js +418 -418
- package/package.json +44 -42
- package/publishing/function-publisher.js +202 -202
- package/publishing/notes.md +5 -5
- package/publishing/observable-publisher.js +118 -118
- package/publishing/resource-publisher.js +306 -306
- package/resources/data-resource.js +104 -104
- package/resources/fs-resource.js +148 -148
- package/resources/jsbuilder/Abstract_Single_Declaration.js +105 -0
- package/resources/jsbuilder/Abstract_Single_Declaration_Sequence.js +43 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Abstract_Node.js +62 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Abstract_Node_Group.js +42 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Group_Shared.js +62 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node.js +94 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_0-Core.js +228 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_1-Babel.js +338 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_10-Changing.js +40 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.1.1-Child.js +97 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.1.2-Parent.js +38 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.1.3-Ancestor.js +62 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.2-Inner.js +44 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.3-All.js +73 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.4-Sibling.js +93 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.5-Available_In_Scope.js +29 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.9-Signature.js +116 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3-Basics.js +160 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.0.0-Basics_First.js +179 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.0.1-Basics_Second.js +88 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.0.99-Basics_Last.js +92 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.1-Basics_Each.js +137 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.1.5-Basics_Count.js +74 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.2-Basics_Filter.js +40 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.3-Basics_Collect.js +86 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.4-Basics_Select.js +43 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.5-Basics_Find.js +41 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.6-Basics_Callmap.js +55 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_4.0-Index_Indexes.js +46 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_4.1-Index.js +344 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.0-Category.js +39 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.1-Category_Identifier.js +31 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.2-Category_Literal.js +29 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.3-Category_Expression.js +27 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.4-Category_Pattern.js +9 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.5-Category_Declaration.js +44 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.6-Category_Statement.js +22 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.0-Type.js +87 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.1-Type_Class_Declaration.js +9 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.2-Type_Variable_Declaration.js +28 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.3-Type_Variable_Declarator.js +29 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_7-Query.js +737 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_8-Features.js +65 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_9-Planning.js +32 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Arrangement.js +15 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Declared_Object.js +306 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Feature.js +78 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Feature_Declaration.js +249 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Feature_Declarator.js +139 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Feature.js +10 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Feature_Exported.js +101 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Feature_Exports.js +61 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Interpreted.js +180 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/_JSGUI_Root_Node_Interpreted.js +43 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/special_case_objectassign_to_object.js +12 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Group.js +35 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Operation.js +11 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Operation_On_Relationship.js +32 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Ordered_Relationship_Node_To_Group.js +38 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Ordinal.js +40 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Ordinal_Relationship.js +25 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Relationship_Node_To_Group.js +201 -0
- package/resources/jsbuilder/JS_AST/JS_AST_Relationship_Node_Within_Group_To_Node.js +44 -0
- package/resources/jsbuilder/JS_AST/_JS_AST_Node_3.8-Query_Features.js +77 -0
- package/resources/jsbuilder/JS_AST/query/all.js +0 -0
- package/resources/jsbuilder/JS_AST/query/enable_array_as_queryable.js +228 -0
- package/resources/jsbuilder/JS_AST/query/find_object_keys.js +405 -0
- package/resources/jsbuilder/JS_AST/query/node_queries.js +9 -0
- package/resources/jsbuilder/JS_AST/query/root_queries.js +0 -0
- package/resources/jsbuilder/JS_AST/query/root_query_identidy.js +12 -0
- package/resources/jsbuilder/JS_AST_Node_Extended/JSGUI_Singular_Declaration.js +86 -0
- package/resources/jsbuilder/JS_AST_Node_Extended/JS_AST_Node_Declaration.js +124 -0
- package/resources/jsbuilder/JS_AST_Node_Extended/JS_AST_Node_Extended.js +88 -0
- package/resources/jsbuilder/JS_AST_Node_Extended/JS_AST_Node_Extended_0-Core.js +11 -0
- package/resources/jsbuilder/JS_Builder.js +10 -36
- package/resources/jsbuilder/JS_File/Feature/JS_File_Declared_Object.js +32 -0
- package/resources/jsbuilder/JS_File/Feature/JS_File_Exported_Object_Info.js +26 -0
- package/resources/jsbuilder/JS_File/Feature/JS_File_Exports.js +79 -0
- package/resources/jsbuilder/JS_File/Feature/JS_File_Feature.js +18 -0
- package/resources/jsbuilder/JS_File/Feature/JS_File_Imported_Object_Info.js +26 -0
- package/resources/jsbuilder/JS_File/Feature/JS_File_Imports.js +9 -0
- package/resources/jsbuilder/JS_File/JS_File.js +12 -0
- package/resources/jsbuilder/JS_File/JS_File_0-Core.js +202 -0
- package/resources/jsbuilder/JS_File/JS_File_1-Early_Parse.js +175 -0
- package/resources/jsbuilder/JS_File/JS_File_2-Babel.js +81 -0
- package/resources/jsbuilder/JS_File/JS_File_3-JS_AST_Node.js +86 -0
- package/resources/jsbuilder/JS_File/JS_File_4-Query.js +414 -0
- package/resources/jsbuilder/JS_File/JS_File_4.1-Query_Features.js +415 -0
- package/resources/jsbuilder/JS_File/JS_File_5-Planning.js +59 -0
- package/resources/jsbuilder/JS_File/JS_File_6-Changing.js +24 -0
- package/resources/jsbuilder/JS_File/JS_File_Export_Reference.js +12 -0
- package/resources/jsbuilder/JS_File/JS_File_Import_Reference.js +24 -0
- package/resources/jsbuilder/JS_File/JS_File_Import_References.js +32 -0
- package/resources/jsbuilder/JS_File/JS_File_Processor.js +16 -0
- package/resources/jsbuilder/JS_File/JS_Files.js +16 -0
- package/resources/jsbuilder/Module.js +14 -0
- package/resources/jsbuilder/Platform.js +13 -53
- package/resources/jsbuilder/Platforms.js +69 -15
- package/resources/jsbuilder/Project.js +109 -0
- package/resources/jsbuilder/Reference.js +1 -1
- package/resources/jsbuilder/Reference_Sequence.js +16 -7
- package/resources/jsbuilder/Scope.js +30 -0
- package/resources/jsbuilder/Variable_Name_Provider.js +43 -0
- package/resources/jsbuilder/_JS_File.js +226 -0
- package/resources/jsbuilder/ast_query.js +21 -0
- package/resources/jsbuilder/babel/babel_consts.js +150 -0
- package/resources/jsbuilder/babel/babel_node_tools.js +542 -0
- package/resources/jsbuilder/babel/deep_iterate/deep_iterate_babel.js +604 -0
- package/resources/jsbuilder/build.js +16 -0
- package/resources/jsbuilder/platform_notes.md +66 -0
- package/resources/jsbuilder/test/test_ast_node.js +451 -0
- package/resources/jsbuilder/test/test_js_file.js +303 -11
- package/resources/jsbuilder/test/test_project.js +157 -0
- package/resources/local-server-info-resource.js +78 -78
- package/resources/process-js.js +537 -537
- package/resources/server-resource-pool.js +84 -84
- package/resources/website-css-resource.js +411 -411
- package/resources/website-javascript-resource.js +761 -751
- package/resources/website-resource.js +390 -390
- package/resources/website-static-html-resource.js +196 -196
- package/server.js +170 -170
- package/single-control-server.js +398 -398
- package/single-page-app.js +129 -129
- package/resources/jsbuilder/Declaration.js +0 -15
- package/resources/jsbuilder/Declaration_Sequence.js +0 -15
- package/resources/jsbuilder/JS_File.js +0 -77
package/single-page-app.js
CHANGED
|
@@ -1,130 +1,130 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Created by James on 03/01/2016.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var jsgui = require('jsgui3-html');
|
|
7
|
-
//var Window = require('../../../../js/web/controls/advanced/window');
|
|
8
|
-
//var Start_Stop_Toggle_Button = require('../../../../js/web/controls/advanced/start-stop-toggle-button');
|
|
9
|
-
var Server_Page_Context = require("./page-context");
|
|
10
|
-
|
|
11
|
-
var Data_Object = jsgui.Data_Object;
|
|
12
|
-
var Collection = jsgui.Collection;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
//var Simple_Authentication_Provider = Resource_Authentication.Simple_Provider;
|
|
16
|
-
|
|
17
|
-
var j = jsgui;
|
|
18
|
-
var Class = j.Class;
|
|
19
|
-
|
|
20
|
-
class Single_Page_App extends jsgui.Evented_Class {
|
|
21
|
-
constructor(spec) {
|
|
22
|
-
super(spec);
|
|
23
|
-
var name = spec.name;
|
|
24
|
-
var port = spec.port;
|
|
25
|
-
var ctrl_main = spec.ctrl_main;
|
|
26
|
-
var server = new jsgui.Server.JSGUI_Server({
|
|
27
|
-
'*': {
|
|
28
|
-
'name': name
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
this.name = name;
|
|
32
|
-
this.server = server;
|
|
33
|
-
this.port = port;
|
|
34
|
-
if (ctrl_main) this.ctrl_main = ctrl_main;
|
|
35
|
-
}
|
|
36
|
-
'start'(callback) {
|
|
37
|
-
var server = this.server;
|
|
38
|
-
|
|
39
|
-
var rp = server.resource_pool;
|
|
40
|
-
var ar = rp.get_resource('Server Router');
|
|
41
|
-
var rt = ar.routing_tree;
|
|
42
|
-
|
|
43
|
-
var name = this.name;
|
|
44
|
-
|
|
45
|
-
var port = this.port;
|
|
46
|
-
var ctrl_main = this.ctrl_main;
|
|
47
|
-
|
|
48
|
-
//console.log('port', port);
|
|
49
|
-
//throw 'stop';
|
|
50
|
-
|
|
51
|
-
//console.log('callback', callback);
|
|
52
|
-
//throw 'stop';
|
|
53
|
-
|
|
54
|
-
var website_resource = rp.get_resource(name);
|
|
55
|
-
var js = website_resource.get_resource('Site JavaScript');
|
|
56
|
-
|
|
57
|
-
js.build_client(function(err, res_build_client) {
|
|
58
|
-
if (err) { callback(err); } else {
|
|
59
|
-
server.start(port, function(err, res_started) {
|
|
60
|
-
// Maybe it's best to use je-suis-xml for setting up the page.
|
|
61
|
-
// Set up jsgui-html-client-stylish within the js serving resource.
|
|
62
|
-
// It gets served as if it's within /js/web
|
|
63
|
-
|
|
64
|
-
rt.set('/', function(req, res) {
|
|
65
|
-
// Better to make a proper JSGUI client document.
|
|
66
|
-
//console.log('main page request');
|
|
67
|
-
var server_page_context = new Server_Page_Context({
|
|
68
|
-
'req': req,
|
|
69
|
-
'res': res
|
|
70
|
-
});
|
|
71
|
-
var hd = new jsgui.Client_HTML_Document({
|
|
72
|
-
'context': server_page_context
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
hd.include_client_css();
|
|
76
|
-
hd.include_js('/js/app-bundle.js');
|
|
77
|
-
|
|
78
|
-
var body = hd.body();
|
|
79
|
-
// Will need to add the abstract control that has been given.
|
|
80
|
-
|
|
81
|
-
var ctrl_0 = server_page_context.make(ctrl_main);
|
|
82
|
-
body.add(ctrl_0);
|
|
83
|
-
ctrl_0.active();
|
|
84
|
-
//var ctrl_0 = new Control({
|
|
85
|
-
// 'context': server_page_context
|
|
86
|
-
//});
|
|
87
|
-
//ctrl_0.resizable();
|
|
88
|
-
//body.add(ctrl_0);
|
|
89
|
-
//ctrl_0.active();
|
|
90
|
-
|
|
91
|
-
// style should at least set the CSS.
|
|
92
|
-
//
|
|
93
|
-
|
|
94
|
-
hd.all_html_render(function(err, deferred_html) {
|
|
95
|
-
if (err) {
|
|
96
|
-
throw err;
|
|
97
|
-
} else {
|
|
98
|
-
//console.log('deferred_html', deferred_html);
|
|
99
|
-
var mime_type = 'text/html';
|
|
100
|
-
//console.log('mime_type ' + mime_type);
|
|
101
|
-
res.writeHead(200, { 'Content-Type': mime_type });
|
|
102
|
-
res.end(deferred_html, 'utf-8');
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
rt.setRoot404(function(req, res) {
|
|
108
|
-
res.writeHead(404, {"Content-Type": "text/html"});
|
|
109
|
-
res.write("<!DOCTYPE \"html\">");
|
|
110
|
-
res.write("<html>");
|
|
111
|
-
res.write("<head>");
|
|
112
|
-
res.write("<title>Page Not Found</title>");
|
|
113
|
-
res.write("</head>");
|
|
114
|
-
res.write("<body>");
|
|
115
|
-
res.write("<h1>Page Not Found</h1>");
|
|
116
|
-
res.write("</body>");
|
|
117
|
-
res.write("</html>");
|
|
118
|
-
res.end();
|
|
119
|
-
});
|
|
120
|
-
callback(null, true);
|
|
121
|
-
|
|
122
|
-
// We should be able to put info into the db.
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Created by James on 03/01/2016.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
var jsgui = require('jsgui3-html');
|
|
7
|
+
//var Window = require('../../../../js/web/controls/advanced/window');
|
|
8
|
+
//var Start_Stop_Toggle_Button = require('../../../../js/web/controls/advanced/start-stop-toggle-button');
|
|
9
|
+
var Server_Page_Context = require("./page-context");
|
|
10
|
+
|
|
11
|
+
var Data_Object = jsgui.Data_Object;
|
|
12
|
+
var Collection = jsgui.Collection;
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
//var Simple_Authentication_Provider = Resource_Authentication.Simple_Provider;
|
|
16
|
+
|
|
17
|
+
var j = jsgui;
|
|
18
|
+
var Class = j.Class;
|
|
19
|
+
|
|
20
|
+
class Single_Page_App extends jsgui.Evented_Class {
|
|
21
|
+
constructor(spec) {
|
|
22
|
+
super(spec);
|
|
23
|
+
var name = spec.name;
|
|
24
|
+
var port = spec.port;
|
|
25
|
+
var ctrl_main = spec.ctrl_main;
|
|
26
|
+
var server = new jsgui.Server.JSGUI_Server({
|
|
27
|
+
'*': {
|
|
28
|
+
'name': name
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
this.name = name;
|
|
32
|
+
this.server = server;
|
|
33
|
+
this.port = port;
|
|
34
|
+
if (ctrl_main) this.ctrl_main = ctrl_main;
|
|
35
|
+
}
|
|
36
|
+
'start'(callback) {
|
|
37
|
+
var server = this.server;
|
|
38
|
+
|
|
39
|
+
var rp = server.resource_pool;
|
|
40
|
+
var ar = rp.get_resource('Server Router');
|
|
41
|
+
var rt = ar.routing_tree;
|
|
42
|
+
|
|
43
|
+
var name = this.name;
|
|
44
|
+
|
|
45
|
+
var port = this.port;
|
|
46
|
+
var ctrl_main = this.ctrl_main;
|
|
47
|
+
|
|
48
|
+
//console.log('port', port);
|
|
49
|
+
//throw 'stop';
|
|
50
|
+
|
|
51
|
+
//console.log('callback', callback);
|
|
52
|
+
//throw 'stop';
|
|
53
|
+
|
|
54
|
+
var website_resource = rp.get_resource(name);
|
|
55
|
+
var js = website_resource.get_resource('Site JavaScript');
|
|
56
|
+
|
|
57
|
+
js.build_client(function(err, res_build_client) {
|
|
58
|
+
if (err) { callback(err); } else {
|
|
59
|
+
server.start(port, function(err, res_started) {
|
|
60
|
+
// Maybe it's best to use je-suis-xml for setting up the page.
|
|
61
|
+
// Set up jsgui-html-client-stylish within the js serving resource.
|
|
62
|
+
// It gets served as if it's within /js/web
|
|
63
|
+
|
|
64
|
+
rt.set('/', function(req, res) {
|
|
65
|
+
// Better to make a proper JSGUI client document.
|
|
66
|
+
//console.log('main page request');
|
|
67
|
+
var server_page_context = new Server_Page_Context({
|
|
68
|
+
'req': req,
|
|
69
|
+
'res': res
|
|
70
|
+
});
|
|
71
|
+
var hd = new jsgui.Client_HTML_Document({
|
|
72
|
+
'context': server_page_context
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
hd.include_client_css();
|
|
76
|
+
hd.include_js('/js/app-bundle.js');
|
|
77
|
+
|
|
78
|
+
var body = hd.body();
|
|
79
|
+
// Will need to add the abstract control that has been given.
|
|
80
|
+
|
|
81
|
+
var ctrl_0 = server_page_context.make(ctrl_main);
|
|
82
|
+
body.add(ctrl_0);
|
|
83
|
+
ctrl_0.active();
|
|
84
|
+
//var ctrl_0 = new Control({
|
|
85
|
+
// 'context': server_page_context
|
|
86
|
+
//});
|
|
87
|
+
//ctrl_0.resizable();
|
|
88
|
+
//body.add(ctrl_0);
|
|
89
|
+
//ctrl_0.active();
|
|
90
|
+
|
|
91
|
+
// style should at least set the CSS.
|
|
92
|
+
//
|
|
93
|
+
|
|
94
|
+
hd.all_html_render(function(err, deferred_html) {
|
|
95
|
+
if (err) {
|
|
96
|
+
throw err;
|
|
97
|
+
} else {
|
|
98
|
+
//console.log('deferred_html', deferred_html);
|
|
99
|
+
var mime_type = 'text/html';
|
|
100
|
+
//console.log('mime_type ' + mime_type);
|
|
101
|
+
res.writeHead(200, { 'Content-Type': mime_type });
|
|
102
|
+
res.end(deferred_html, 'utf-8');
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
rt.setRoot404(function(req, res) {
|
|
108
|
+
res.writeHead(404, {"Content-Type": "text/html"});
|
|
109
|
+
res.write("<!DOCTYPE \"html\">");
|
|
110
|
+
res.write("<html>");
|
|
111
|
+
res.write("<head>");
|
|
112
|
+
res.write("<title>Page Not Found</title>");
|
|
113
|
+
res.write("</head>");
|
|
114
|
+
res.write("<body>");
|
|
115
|
+
res.write("<h1>Page Not Found</h1>");
|
|
116
|
+
res.write("</body>");
|
|
117
|
+
res.write("</html>");
|
|
118
|
+
res.end();
|
|
119
|
+
});
|
|
120
|
+
callback(null, true);
|
|
121
|
+
|
|
122
|
+
// We should be able to put info into the db.
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
|
|
130
130
|
module.exports = Single_Page_App;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
// Defines a single constant, which is also functionality to be built.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const {each, Evented_Class} = require('lang-mini');
|
|
5
|
-
|
|
6
|
-
class Declaration extends Evented_Class {
|
|
7
|
-
constructor(spec) {
|
|
8
|
-
super();
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
module.exports = Declaration;
|
|
13
|
-
|
|
14
|
-
// Loading a declaration out of a file, so it fits within a declaration object.
|
|
15
|
-
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
// lang-mini, for example, would be represented with this. It's a module that reveals a number of declarations.
|
|
4
|
-
// Internally, it operates in a sequence (kind of).
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const {each, Evented_Class} = require('lang-mini');
|
|
8
|
-
|
|
9
|
-
class Declaration_Sequence extends Evented_Class {
|
|
10
|
-
constructor(spec) {
|
|
11
|
-
super();
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
module.exports = Declaration_Sequence;
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
// Could do this in a simpler way than full AST manipulation.
|
|
2
|
-
|
|
3
|
-
// Want to write out jsgui in such a way that the lower levels are all accessed as local functions and objects within an inner scope.
|
|
4
|
-
|
|
5
|
-
const {each, Evented_Class} = require('lang-mini');
|
|
6
|
-
//const { default: JS_Builder } = require('./JS_Builder');
|
|
7
|
-
|
|
8
|
-
// Interpret / arrange a file in terms of the other objects within this system.
|
|
9
|
-
|
|
10
|
-
// References at the beginning - will also work in terms of references to declarations, platforms, and declaration sequences.
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
// Make it operate in a streaming way?
|
|
15
|
-
// Event driven too?
|
|
16
|
-
// So it can have events as it goes through the file or the stream.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
class JS_File extends Evented_Class {
|
|
22
|
-
constructor(spec = {}) {
|
|
23
|
-
super();
|
|
24
|
-
|
|
25
|
-
const rs = () => spec.rs || undefined;
|
|
26
|
-
const line_break_hex = () => spec.line_break_hex || '0A';
|
|
27
|
-
|
|
28
|
-
//this.on('readline', e_readline => {
|
|
29
|
-
|
|
30
|
-
//});
|
|
31
|
-
|
|
32
|
-
if (rs) {
|
|
33
|
-
// Interpret it in chunks.
|
|
34
|
-
// Read it line by line, after character by character.
|
|
35
|
-
// Very event driven parser, or partial parser at least.
|
|
36
|
-
|
|
37
|
-
//let buf1;
|
|
38
|
-
|
|
39
|
-
// Separate the chunks and the raise an event for each line.
|
|
40
|
-
// Charactrer by character???
|
|
41
|
-
|
|
42
|
-
this.on('recieve-character', e_receive_character => {
|
|
43
|
-
console.log('e_receive_character', e_receive_character);
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
rs.on('data', chunk => {
|
|
47
|
-
if (!buf1) {buf1 = chunk} else {
|
|
48
|
-
// buf1 = Buffer.concat([buf1, chunk]);
|
|
49
|
-
const l = chunk.length;
|
|
50
|
-
console.log('l', l);
|
|
51
|
-
for (let c = 0; c < l; c++) {
|
|
52
|
-
this.raise('recieve-character', {
|
|
53
|
-
byte_value: chunk.readUInt8(c)
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
// then divide by line break character?
|
|
61
|
-
// not sure of the formating, probably unicode.
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
JS_File.load_from_stream = (rs) => {
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
JS_File.load_from_path = (path) => {
|
|
74
|
-
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
module.exports = JS_File;
|