jsgui3-server 0.0.121 → 0.0.122
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/.vscode/settings.json +6 -0
- package/README.md +10 -10
- package/controls/Active_HTML_Document.js +116 -116
- package/controls/README.md +7 -7
- package/controls/page/admin.js +74 -74
- package/controls/panel/admin.js +11 -11
- package/examples/_css/basic.css +913 -913
- package/examples/_css/database-control.css +51 -51
- package/examples/_css/jsgui.css +66 -66
- package/examples/_css/multi-layout.css +23 -23
- package/examples/_css/style.css +1669 -1669
- package/examples/_css/top-and-bottom-bars.css +54 -54
- package/examples/box/1) square box/client.js +188 -188
- package/examples/box/1) square box/server.js +112 -112
- package/examples/box/2) twenty square boxes/css flex wrap/client.js +248 -248
- package/examples/box/2) twenty square boxes/css flex wrap/server.js +112 -112
- package/examples/boxes/square_boxes.js +45 -48
- package/examples/boxes/square_boxes_client.js +132 -136
- package/examples/client-side-popup-menu-button.html +93 -93
- package/examples/color_palette.js +51 -51
- package/examples/color_palette_client.js +95 -95
- package/examples/controls/1) window/client.js +186 -186
- package/examples/controls/1) window/server.js +117 -117
- package/examples/controls/10) window, mirrored text inputs/client.js +320 -320
- package/examples/controls/10) window, mirrored text inputs/server.js +117 -117
- package/examples/controls/11) window, mirrored text fields/client.js +493 -251
- package/examples/controls/11) window, mirrored text fields/server.js +117 -117
- package/examples/controls/11b) window, shared Data_Object model mirrored text fields/client.js +613 -331
- package/examples/controls/11b) window, shared Data_Object model mirrored text fields/server.js +117 -117
- package/examples/controls/11c) window, shared Data_Value model mirrored text fields/client.js +617 -617
- package/examples/controls/11c) window, shared Data_Value model mirrored text fields/server.js +117 -117
- package/examples/controls/11d) window, shared model mirrored integer text fields/client.js +611 -280
- package/examples/controls/11d) window, shared model mirrored integer text fields/server.js +134 -22
- package/examples/controls/12) window, Select_Options control/client.js +435 -452
- package/examples/controls/12) window, Select_Options control/server.js +117 -117
- package/examples/controls/2) two windows/client.js +193 -193
- package/examples/controls/2) two windows/server.js +113 -113
- package/examples/controls/3) five windows/client.js +217 -217
- package/examples/controls/3) five windows/server.js +116 -115
- package/examples/controls/4) window, tabbed panel/client.js +54 -225
- package/examples/controls/4) window, tabbed panel/server.js +17 -117
- package/examples/controls/5) window, grid/client.js +204 -484
- package/examples/controls/5) window, grid/server.js +117 -119
- package/examples/controls/6) window, color_palette/client.js +204 -204
- package/examples/controls/6) window, color_palette/server.js +117 -117
- package/examples/controls/7) window, month_view/client.js +40 -231
- package/examples/controls/7) window, month_view/server.js +117 -117
- package/examples/controls/8) window, checkbox/client.js +247 -209
- package/examples/controls/8) window, checkbox/server.js +117 -117
- package/examples/controls/9) window, date picker/client.js +303 -303
- package/examples/controls/9) window, date picker/server.js +117 -117
- package/examples/controls/9b) window, shared data.model mirrored date pickers/client.js +398 -398
- package/examples/controls/9b) window, shared data.model mirrored date pickers/server.js +117 -117
- package/examples/controls/__old/_html-server-color-palette.js +114 -114
- package/examples/controls/__old/html-server-combo-box.js +104 -104
- package/examples/controls/__old/html-server-list.js +98 -98
- package/examples/controls/__old/html-server-popup-menu-button.js +114 -114
- package/examples/controls/__old/html-server-start-stop-toggle-button.js +146 -146
- package/examples/controls/__old/scs-arrow-button.js +36 -36
- package/examples/controls/__old/scs-date-picker.js +157 -157
- package/examples/controls/__old/scs-file-browser.js +82 -82
- package/examples/controls/__old/scs-item.js +159 -159
- package/examples/controls/__old/scs-month-arrow-selector.js +126 -126
- package/examples/controls/__old/scs-month-view.js +94 -94
- package/examples/controls/__old/scs-start-stop-toggle-button.js +40 -40
- package/examples/controls/__old/scs-tree.js +49 -49
- package/examples/controls/__old/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/grids/grid_1.js +45 -45
- package/examples/grids/grid_1_client.js +329 -329
- package/examples/html-rendering.js +20 -20
- package/examples/html-server.js +105 -105
- package/examples/introducing jsgui3/server.js +110 -110
- package/examples/mx_display/mx_display_1.js +45 -45
- package/examples/mx_display/mx_display_1_client.js +444 -444
- package/fs2.js +1836 -1836
- package/http/responders/HTTP_Responder.js +15 -15
- package/http/responders/static/Static_Route_HTTP_Responder.js +105 -105
- package/module.js +34 -34
- package/old/_single-control-server.js +418 -418
- package/old/single-control-server.js +368 -368
- package/old/single-page-app.js +131 -131
- package/package.json +42 -42
- package/page-context.js +92 -92
- package/publishers/helpers/assigners/Assigner.js +10 -10
- package/publishers/helpers/assigners/static-compressed-response-buffers/Single_Control_Webpage_Server_Static_Compressed_Response_Buffers_Assigner.js +150 -150
- package/publishers/helpers/assigners/static-headers/Single_Control_Webpage_Server_Static_Headers_Assigner.js +109 -109
- package/publishers/helpers/assigners/static-routes/Single_Control_Webpage_Server_Static_Routes_Assigner.js +91 -91
- package/publishers/helpers/assigners/static-uncompressed-response-buffers/Single_Control_Webpage_Server_Static_Uncompressed_Response_Buffers_Assigner.js +104 -104
- package/publishers/helpers/preparers/static/bundle/Ready_To_Serve_Preparer.js +18 -18
- package/publishers/helpers/preparers/static/bundle/Static_Routes_Responses_Webpage_Bundle_Preparer.js +44 -44
- package/publishers/http-function-publisher.js +212 -212
- package/publishers/http-html-page-publisher.js +5 -5
- package/publishers/http-html-publisher.js +24 -24
- package/publishers/http-js-publisher.js +135 -135
- package/publishers/http-observable-publisher.js +124 -124
- package/publishers/http-publisher.js +53 -53
- package/publishers/http-resource-publisher.js +325 -325
- package/publishers/http-webpage-publisher.js +659 -658
- package/publishers/http-webpageorsite-publisher.js +343 -343
- package/publishers/http-website-publisher.js +640 -640
- package/publishers/notes.md +9 -9
- package/resources/README.md +16 -16
- package/resources/_old_website-javascript-resource.js +994 -994
- package/resources/_old_website-resource.js +507 -507
- package/resources/compile/server-resource-compilation.js +43 -43
- package/resources/data-resource.js +118 -118
- package/resources/fs-resource.js +146 -146
- package/resources/jsbuilder/Abstract_Single_Declaration.js +105 -105
- package/resources/jsbuilder/Abstract_Single_Declaration_Sequence.js +42 -42
- package/resources/jsbuilder/JS_AST/JS_AST_Abstract_Node.js +61 -61
- package/resources/jsbuilder/JS_AST/JS_AST_Abstract_Node_Group.js +41 -41
- package/resources/jsbuilder/JS_AST/JS_AST_Group_Shared.js +61 -61
- package/resources/jsbuilder/JS_AST/JS_AST_Node.js +93 -93
- package/resources/jsbuilder/JS_AST/JS_AST_Node_0-Core.js +253 -253
- package/resources/jsbuilder/JS_AST/JS_AST_Node_1-Babel.js +337 -337
- package/resources/jsbuilder/JS_AST/JS_AST_Node_10-Changing.js +39 -39
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.1.1-Child.js +96 -96
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.1.2-Parent.js +37 -37
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.1.3-Ancestor.js +61 -61
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.2-Inner.js +43 -43
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.3-All.js +72 -72
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.4-Sibling.js +92 -92
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.5-Available_In_Scope.js +29 -29
- package/resources/jsbuilder/JS_AST/JS_AST_Node_2.9-Signature.js +116 -116
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3-Basics.js +159 -159
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.0.0-Basics_First.js +178 -178
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.0.1-Basics_Second.js +87 -87
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.0.99-Basics_Last.js +91 -91
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.1-Basics_Each.js +136 -136
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.1.5-Basics_Count.js +73 -73
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.2-Basics_Filter.js +39 -39
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.3-Basics_Collect.js +85 -85
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.4-Basics_Select.js +42 -42
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.5-Basics_Find.js +40 -40
- package/resources/jsbuilder/JS_AST/JS_AST_Node_3.6-Basics_Callmap.js +54 -54
- package/resources/jsbuilder/JS_AST/JS_AST_Node_4.0-Index_Indexes.js +45 -45
- package/resources/jsbuilder/JS_AST/JS_AST_Node_4.1-Index.js +343 -343
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.0-Category.js +38 -38
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.1-Category_Identifier.js +30 -30
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.2-Category_Literal.js +28 -28
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.3-Category_Expression.js +26 -26
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.4-Category_Pattern.js +8 -8
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.5-Category_Declaration.js +43 -43
- package/resources/jsbuilder/JS_AST/JS_AST_Node_5.6-Category_Statement.js +21 -21
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.0-Type.js +89 -89
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.1-Type_Class_Declaration.js +8 -8
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.2-Type_Variable_Declaration.js +27 -27
- package/resources/jsbuilder/JS_AST/JS_AST_Node_6.3-Type_Variable_Declarator.js +28 -28
- package/resources/jsbuilder/JS_AST/JS_AST_Node_7-Query.js +736 -736
- package/resources/jsbuilder/JS_AST/JS_AST_Node_8-Features.js +64 -64
- package/resources/jsbuilder/JS_AST/JS_AST_Node_9-Planning.js +31 -31
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Arrangement.js +15 -15
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Declared_Object.js +305 -305
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Feature.js +77 -77
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Feature_Declaration.js +248 -248
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Node_Feature_Declarator.js +138 -138
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Feature.js +10 -10
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Feature_Exported.js +100 -100
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Feature_Exports.js +60 -60
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/JS_AST_Root_Node_Interpreted.js +179 -179
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/_JSGUI_Root_Node_Interpreted.js +43 -43
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Feature/JS_AST_Root_Node_Feature/special_case_objectassign_to_object.js +12 -12
- package/resources/jsbuilder/JS_AST/JS_AST_Node_Group.js +35 -35
- package/resources/jsbuilder/JS_AST/JS_AST_Operation.js +11 -11
- package/resources/jsbuilder/JS_AST/JS_AST_Operation_On_Relationship.js +31 -31
- package/resources/jsbuilder/JS_AST/JS_AST_Ordered_Relationship_Node_To_Group.js +37 -37
- package/resources/jsbuilder/JS_AST/JS_AST_Ordinal.js +39 -39
- package/resources/jsbuilder/JS_AST/JS_AST_Ordinal_Relationship.js +25 -25
- package/resources/jsbuilder/JS_AST/JS_AST_Relationship_Node_To_Group.js +200 -200
- package/resources/jsbuilder/JS_AST/JS_AST_Relationship_Node_Within_Group_To_Node.js +43 -43
- package/resources/jsbuilder/JS_AST/_JS_AST_Node_3.8-Query_Features.js +76 -76
- package/resources/jsbuilder/JS_AST/query/enable_array_as_queryable.js +227 -227
- package/resources/jsbuilder/JS_AST/query/find_object_keys.js +404 -404
- package/resources/jsbuilder/JS_AST/query/node_queries.js +8 -8
- package/resources/jsbuilder/JS_AST/query/root_query_identidy.js +11 -11
- package/resources/jsbuilder/JS_AST_Node_Extended/JSGUI_Singular_Declaration.js +85 -85
- package/resources/jsbuilder/JS_AST_Node_Extended/JS_AST_Node_Declaration.js +123 -123
- package/resources/jsbuilder/JS_AST_Node_Extended/JS_AST_Node_Extended.js +87 -87
- package/resources/jsbuilder/JS_AST_Node_Extended/JS_AST_Node_Extended_0-Core.js +10 -10
- package/resources/jsbuilder/JS_Builder.js +10 -10
- package/resources/jsbuilder/JS_File/Feature/JS_File_Declared_Object.js +31 -31
- package/resources/jsbuilder/JS_File/Feature/JS_File_Exported_Object_Info.js +25 -25
- package/resources/jsbuilder/JS_File/Feature/JS_File_Exports.js +78 -78
- package/resources/jsbuilder/JS_File/Feature/JS_File_Feature.js +17 -17
- package/resources/jsbuilder/JS_File/Feature/JS_File_Imported_Object_Info.js +25 -25
- package/resources/jsbuilder/JS_File/Feature/JS_File_Imports.js +8 -8
- package/resources/jsbuilder/JS_File/JS_File.js +12 -12
- package/resources/jsbuilder/JS_File/JS_File_0-Core.js +202 -202
- package/resources/jsbuilder/JS_File/JS_File_1-Early_Parse.js +175 -175
- package/resources/jsbuilder/JS_File/JS_File_2-Babel.js +81 -81
- package/resources/jsbuilder/JS_File/JS_File_3-JS_AST_Node.js +86 -86
- package/resources/jsbuilder/JS_File/JS_File_4-Query.js +413 -413
- package/resources/jsbuilder/JS_File/JS_File_4.1-Query_Features.js +414 -414
- package/resources/jsbuilder/JS_File/JS_File_5-Planning.js +59 -59
- package/resources/jsbuilder/JS_File/JS_File_6-Changing.js +24 -24
- package/resources/jsbuilder/JS_File/JS_File_Export_Reference.js +12 -12
- package/resources/jsbuilder/JS_File/JS_File_Import_Reference.js +23 -23
- package/resources/jsbuilder/JS_File/JS_File_Import_References.js +31 -31
- package/resources/jsbuilder/JS_File/JS_File_Processor.js +16 -16
- package/resources/jsbuilder/JS_File/JS_Files.js +15 -15
- package/resources/jsbuilder/Module.js +14 -14
- package/resources/jsbuilder/Platform.js +13 -13
- package/resources/jsbuilder/Platforms.js +69 -69
- package/resources/jsbuilder/Project.js +109 -109
- package/resources/jsbuilder/Reference.js +1 -1
- package/resources/jsbuilder/Reference_Sequence.js +16 -16
- package/resources/jsbuilder/Scope.js +29 -29
- package/resources/jsbuilder/Variable_Name_Provider.js +42 -42
- package/resources/jsbuilder/_JS_File.js +225 -225
- package/resources/jsbuilder/ast_query.js +20 -20
- package/resources/jsbuilder/babel/babel_consts.js +162 -162
- package/resources/jsbuilder/babel/babel_node_tools.js +541 -541
- package/resources/jsbuilder/babel/deep_iterate/deep_iterate_babel.js +923 -904
- package/resources/jsbuilder/build.js +16 -16
- package/resources/jsbuilder/platform_notes.md +66 -66
- package/resources/jsbuilder/test/test_ast_node.js +381 -381
- package/resources/jsbuilder/test/test_js_file.js +303 -303
- package/resources/jsbuilder/test/test_project.js +157 -157
- package/resources/local-server-info-resource.js +96 -96
- package/resources/notes.txt +10 -10
- package/resources/old/website-image-resource.js +1185 -1185
- package/resources/process-js.js +498 -498
- package/resources/processors/bundlers/bundle.js +29 -29
- package/resources/processors/bundlers/bundler.js +23 -23
- package/resources/processors/bundlers/css-bundler.js +234 -234
- package/resources/processors/bundlers/js/JS_Bundler.js +51 -51
- package/resources/processors/bundlers/js/esbuild/Advanced_JS_Bundler_Using_ESBuild.js +388 -391
- package/resources/processors/bundlers/js/esbuild/Bundler_Using_ESBuild.js +8 -8
- package/resources/processors/bundlers/js/esbuild/Core_JS_Non_Minifying_Bundler_Using_ESBuild.js +188 -188
- package/resources/processors/bundlers/js/esbuild/Core_JS_Single_File_Minifying_Bundler_Using_ESBuild.js +191 -192
- package/resources/processors/bundlers/js/esbuild/_Old_CSS_Extractor.js +239 -239
- package/resources/processors/bundlers/js-bundler.js +263 -263
- package/resources/processors/bundlers/test_ast.js +73 -73
- package/resources/processors/bundlers/webpage-bundler.js +404 -404
- package/resources/processors/bundlers/website-bundler.js +22 -22
- package/resources/processors/extractors/Extractor.js +9 -11
- package/resources/processors/extractors/js/css_and_js/AST_Node/CSS_And_JS_From_JS_String_Using_AST_Node_Extractor.js +239 -254
- package/resources/processors/extractors/js/css_and_js/CSS_And_JS_From_JS_String_Extractor.js +3 -3
- package/resources/processors/extractors/string/Pos_Span_String_Extractor.js +93 -93
- package/resources/server-installed-tools.js +28 -28
- package/resources/server-resource-pool.js +41 -41
- package/resources/website-audio-resource.js +735 -735
- package/resources/website-css-resource.js +411 -411
- package/resources/website-image-resource.js +412 -412
- package/resources/website-javascript-resource-processor.js +908 -908
- package/resources/website-javascript-resource.js +874 -874
- package/resources/website-resource-processor.js +10 -10
- package/resources/website-resource.js +164 -164
- package/resources/website-static-html-resource.js +199 -199
- package/resources/website-template-html-resource.js +231 -231
- package/roadmap.md +75 -75
- package/server.js +609 -573
- package/static-page-context.js +13 -13
- package/website/webpage.js +81 -81
- package/website/website-group.js +15 -15
- package/website/website.js +260 -260
- package/examples/controls/11d) window, shared model mirrored integer text fields/both.js +0 -17
- package/examples/controls/13) window, shared model mirrored lat_long/client.js +0 -933
- package/examples/controls/13) window, shared model mirrored lat_long/server.js +0 -50
- package/examples/controls/14) window, control compositional model/client.js +0 -328
- package/examples/controls/14) window, control compositional model/server.js +0 -118
- package/examples/controls/14a) window, control spec has compositional model/client.js +0 -440
- package/examples/controls/14a) window, control spec has compositional model/server.js +0 -118
- package/examples/controls/15) window, text field/client.js +0 -256
- package/examples/controls/15) window, text field/server.js +0 -39
- package/examples/controls/16) Window([Text_Input])/client.js +0 -266
- package/examples/controls/16) Window([Text_Input])/server.js +0 -109
- package/examples/controls/16a) Window([Text_Input]) Integer data.model.data_type/client.js +0 -494
- package/examples/controls/16a) Window([Text_Input]) Integer data.model.data_type/isomorphic.js +0 -24
- package/examples/controls/16a) Window([Text_Input]) Integer data.model.data_type/server.js +0 -73
- package/examples/controls/2b) two window, context menus/client.js +0 -193
- package/examples/controls/2b) two window, context menus/server.js +0 -114
- package/examples/controls/4a) window, tabbed panel with various controls inside/client.js +0 -233
- package/examples/controls/4a) window, tabbed panel with various controls inside/server.js +0 -118
package/old/single-page-app.js
CHANGED
|
@@ -1,132 +1,132 @@
|
|
|
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
|
-
// Again, jsgui3-server now is better configured to do this out-of-the-box.
|
|
21
|
-
|
|
22
|
-
class Single_Page_App extends jsgui.Evented_Class {
|
|
23
|
-
constructor(spec) {
|
|
24
|
-
super(spec);
|
|
25
|
-
var name = spec.name;
|
|
26
|
-
var port = spec.port;
|
|
27
|
-
var ctrl_main = spec.ctrl_main;
|
|
28
|
-
var server = new jsgui.Server.JSGUI_Server({
|
|
29
|
-
'*': {
|
|
30
|
-
'name': name
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
this.name = name;
|
|
34
|
-
this.server = server;
|
|
35
|
-
this.port = port;
|
|
36
|
-
if (ctrl_main) this.ctrl_main = ctrl_main;
|
|
37
|
-
}
|
|
38
|
-
'start'(callback) {
|
|
39
|
-
var server = this.server;
|
|
40
|
-
|
|
41
|
-
var rp = server.resource_pool;
|
|
42
|
-
var ar = rp.get_resource('Server Router');
|
|
43
|
-
var rt = ar.routing_tree;
|
|
44
|
-
|
|
45
|
-
var name = this.name;
|
|
46
|
-
|
|
47
|
-
var port = this.port;
|
|
48
|
-
var ctrl_main = this.ctrl_main;
|
|
49
|
-
|
|
50
|
-
//console.log('port', port);
|
|
51
|
-
//throw 'stop';
|
|
52
|
-
|
|
53
|
-
//console.log('callback', callback);
|
|
54
|
-
//throw 'stop';
|
|
55
|
-
|
|
56
|
-
var website_resource = rp.get_resource(name);
|
|
57
|
-
var js = website_resource.get_resource('Site JavaScript');
|
|
58
|
-
|
|
59
|
-
js.build_client(function(err, res_build_client) {
|
|
60
|
-
if (err) { callback(err); } else {
|
|
61
|
-
server.start(port, function(err, res_started) {
|
|
62
|
-
// Maybe it's best to use je-suis-xml for setting up the page.
|
|
63
|
-
// Set up jsgui-html-client-stylish within the js serving resource.
|
|
64
|
-
// It gets served as if it's within /js/web
|
|
65
|
-
|
|
66
|
-
rt.set('/', function(req, res) {
|
|
67
|
-
// Better to make a proper JSGUI client document.
|
|
68
|
-
//console.log('main page request');
|
|
69
|
-
var server_page_context = new Server_Page_Context({
|
|
70
|
-
'req': req,
|
|
71
|
-
'res': res
|
|
72
|
-
});
|
|
73
|
-
var hd = new jsgui.Client_HTML_Document({
|
|
74
|
-
'context': server_page_context
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
hd.include_client_css();
|
|
78
|
-
hd.include_js('/js/app-bundle.js');
|
|
79
|
-
|
|
80
|
-
var body = hd.body();
|
|
81
|
-
// Will need to add the abstract control that has been given.
|
|
82
|
-
|
|
83
|
-
var ctrl_0 = server_page_context.make(ctrl_main);
|
|
84
|
-
body.add(ctrl_0);
|
|
85
|
-
ctrl_0.active();
|
|
86
|
-
//var ctrl_0 = new Control({
|
|
87
|
-
// 'context': server_page_context
|
|
88
|
-
//});
|
|
89
|
-
//ctrl_0.resizable();
|
|
90
|
-
//body.add(ctrl_0);
|
|
91
|
-
//ctrl_0.active();
|
|
92
|
-
|
|
93
|
-
// style should at least set the CSS.
|
|
94
|
-
//
|
|
95
|
-
|
|
96
|
-
hd.all_html_render(function(err, deferred_html) {
|
|
97
|
-
if (err) {
|
|
98
|
-
throw err;
|
|
99
|
-
} else {
|
|
100
|
-
//console.log('deferred_html', deferred_html);
|
|
101
|
-
var mime_type = 'text/html';
|
|
102
|
-
//console.log('mime_type ' + mime_type);
|
|
103
|
-
res.writeHead(200, { 'Content-Type': mime_type });
|
|
104
|
-
res.end(deferred_html, 'utf-8');
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
rt.setRoot404(function(req, res) {
|
|
110
|
-
res.writeHead(404, {"Content-Type": "text/html"});
|
|
111
|
-
res.write("<!DOCTYPE \"html\">");
|
|
112
|
-
res.write("<html>");
|
|
113
|
-
res.write("<head>");
|
|
114
|
-
res.write("<title>Page Not Found</title>");
|
|
115
|
-
res.write("</head>");
|
|
116
|
-
res.write("<body>");
|
|
117
|
-
res.write("<h1>Page Not Found</h1>");
|
|
118
|
-
res.write("</body>");
|
|
119
|
-
res.write("</html>");
|
|
120
|
-
res.end();
|
|
121
|
-
});
|
|
122
|
-
callback(null, true);
|
|
123
|
-
|
|
124
|
-
// We should be able to put info into the db.
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
|
|
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
|
+
// Again, jsgui3-server now is better configured to do this out-of-the-box.
|
|
21
|
+
|
|
22
|
+
class Single_Page_App extends jsgui.Evented_Class {
|
|
23
|
+
constructor(spec) {
|
|
24
|
+
super(spec);
|
|
25
|
+
var name = spec.name;
|
|
26
|
+
var port = spec.port;
|
|
27
|
+
var ctrl_main = spec.ctrl_main;
|
|
28
|
+
var server = new jsgui.Server.JSGUI_Server({
|
|
29
|
+
'*': {
|
|
30
|
+
'name': name
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
this.name = name;
|
|
34
|
+
this.server = server;
|
|
35
|
+
this.port = port;
|
|
36
|
+
if (ctrl_main) this.ctrl_main = ctrl_main;
|
|
37
|
+
}
|
|
38
|
+
'start'(callback) {
|
|
39
|
+
var server = this.server;
|
|
40
|
+
|
|
41
|
+
var rp = server.resource_pool;
|
|
42
|
+
var ar = rp.get_resource('Server Router');
|
|
43
|
+
var rt = ar.routing_tree;
|
|
44
|
+
|
|
45
|
+
var name = this.name;
|
|
46
|
+
|
|
47
|
+
var port = this.port;
|
|
48
|
+
var ctrl_main = this.ctrl_main;
|
|
49
|
+
|
|
50
|
+
//console.log('port', port);
|
|
51
|
+
//throw 'stop';
|
|
52
|
+
|
|
53
|
+
//console.log('callback', callback);
|
|
54
|
+
//throw 'stop';
|
|
55
|
+
|
|
56
|
+
var website_resource = rp.get_resource(name);
|
|
57
|
+
var js = website_resource.get_resource('Site JavaScript');
|
|
58
|
+
|
|
59
|
+
js.build_client(function(err, res_build_client) {
|
|
60
|
+
if (err) { callback(err); } else {
|
|
61
|
+
server.start(port, function(err, res_started) {
|
|
62
|
+
// Maybe it's best to use je-suis-xml for setting up the page.
|
|
63
|
+
// Set up jsgui-html-client-stylish within the js serving resource.
|
|
64
|
+
// It gets served as if it's within /js/web
|
|
65
|
+
|
|
66
|
+
rt.set('/', function(req, res) {
|
|
67
|
+
// Better to make a proper JSGUI client document.
|
|
68
|
+
//console.log('main page request');
|
|
69
|
+
var server_page_context = new Server_Page_Context({
|
|
70
|
+
'req': req,
|
|
71
|
+
'res': res
|
|
72
|
+
});
|
|
73
|
+
var hd = new jsgui.Client_HTML_Document({
|
|
74
|
+
'context': server_page_context
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
hd.include_client_css();
|
|
78
|
+
hd.include_js('/js/app-bundle.js');
|
|
79
|
+
|
|
80
|
+
var body = hd.body();
|
|
81
|
+
// Will need to add the abstract control that has been given.
|
|
82
|
+
|
|
83
|
+
var ctrl_0 = server_page_context.make(ctrl_main);
|
|
84
|
+
body.add(ctrl_0);
|
|
85
|
+
ctrl_0.active();
|
|
86
|
+
//var ctrl_0 = new Control({
|
|
87
|
+
// 'context': server_page_context
|
|
88
|
+
//});
|
|
89
|
+
//ctrl_0.resizable();
|
|
90
|
+
//body.add(ctrl_0);
|
|
91
|
+
//ctrl_0.active();
|
|
92
|
+
|
|
93
|
+
// style should at least set the CSS.
|
|
94
|
+
//
|
|
95
|
+
|
|
96
|
+
hd.all_html_render(function(err, deferred_html) {
|
|
97
|
+
if (err) {
|
|
98
|
+
throw err;
|
|
99
|
+
} else {
|
|
100
|
+
//console.log('deferred_html', deferred_html);
|
|
101
|
+
var mime_type = 'text/html';
|
|
102
|
+
//console.log('mime_type ' + mime_type);
|
|
103
|
+
res.writeHead(200, { 'Content-Type': mime_type });
|
|
104
|
+
res.end(deferred_html, 'utf-8');
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
rt.setRoot404(function(req, res) {
|
|
110
|
+
res.writeHead(404, {"Content-Type": "text/html"});
|
|
111
|
+
res.write("<!DOCTYPE \"html\">");
|
|
112
|
+
res.write("<html>");
|
|
113
|
+
res.write("<head>");
|
|
114
|
+
res.write("<title>Page Not Found</title>");
|
|
115
|
+
res.write("</head>");
|
|
116
|
+
res.write("<body>");
|
|
117
|
+
res.write("<h1>Page Not Found</h1>");
|
|
118
|
+
res.write("</body>");
|
|
119
|
+
res.write("</html>");
|
|
120
|
+
res.end();
|
|
121
|
+
});
|
|
122
|
+
callback(null, true);
|
|
123
|
+
|
|
124
|
+
// We should be able to put info into the db.
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
|
|
132
132
|
module.exports = Single_Page_App;
|
package/package.json
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "jsgui3-server",
|
|
3
|
-
"main": "module.js",
|
|
4
|
-
"license": "MIT",
|
|
5
|
-
"dependencies": {
|
|
6
|
-
"@babel/core": "^7.
|
|
7
|
-
"@babel/generator": "^7.
|
|
8
|
-
"@babel/parser": "7.
|
|
9
|
-
"cookies": "^0.
|
|
10
|
-
"esbuild": "^0.
|
|
11
|
-
"fnl": "^0.0.36",
|
|
12
|
-
"fnlfs": "^0.0.32",
|
|
13
|
-
"jsgui3-client": "^0.0.
|
|
14
|
-
"jsgui3-html": "^0.0.
|
|
15
|
-
"jsgui3-webpage": "^0.0.8",
|
|
16
|
-
"jsgui3-website": "^0.0.8",
|
|
17
|
-
"lang-tools": "^0.0.35",
|
|
18
|
-
"multiparty": "^4.2.3",
|
|
19
|
-
"ncp": "^2.0.0",
|
|
20
|
-
"obext": "^0.0.31",
|
|
21
|
-
"rimraf": "^
|
|
22
|
-
"stream-to-array": "^2.3.0",
|
|
23
|
-
"url-parse": "^1.5.10"
|
|
24
|
-
},
|
|
25
|
-
"commentDeps": {
|
|
26
|
-
"babel-plugin-minify-dead-code-elimination": "^0.5.0",
|
|
27
|
-
"babel-plugin-remove-comments": "^2.0.0",
|
|
28
|
-
"babel-plugin-transform-class": "^0.3.0",
|
|
29
|
-
"babel-plugin-transform-es2015-classes": "^6.24.1",
|
|
30
|
-
"babel-plugin-transform-es2015-object-super": "^6.24.1"
|
|
31
|
-
},
|
|
32
|
-
"engines": {
|
|
33
|
-
"node": ">=15.0.0"
|
|
34
|
-
},
|
|
35
|
-
"description": "ES6 JSGUI Server. Delivers the client to the browser.",
|
|
36
|
-
"author": "James Vickers <james@metabench.com>",
|
|
37
|
-
"repository": {
|
|
38
|
-
"type": "git",
|
|
39
|
-
"url": "https://github.com/metabench/jsgui3-server.git"
|
|
40
|
-
},
|
|
41
|
-
"version": "0.0.
|
|
42
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "jsgui3-server",
|
|
3
|
+
"main": "module.js",
|
|
4
|
+
"license": "MIT",
|
|
5
|
+
"dependencies": {
|
|
6
|
+
"@babel/core": "^7.26.9",
|
|
7
|
+
"@babel/generator": "^7.26.9",
|
|
8
|
+
"@babel/parser": "7.26.9",
|
|
9
|
+
"cookies": "^0.9.1",
|
|
10
|
+
"esbuild": "^0.25.0",
|
|
11
|
+
"fnl": "^0.0.36",
|
|
12
|
+
"fnlfs": "^0.0.32",
|
|
13
|
+
"jsgui3-client": "^0.0.111",
|
|
14
|
+
"jsgui3-html": "^0.0.152",
|
|
15
|
+
"jsgui3-webpage": "^0.0.8",
|
|
16
|
+
"jsgui3-website": "^0.0.8",
|
|
17
|
+
"lang-tools": "^0.0.35",
|
|
18
|
+
"multiparty": "^4.2.3",
|
|
19
|
+
"ncp": "^2.0.0",
|
|
20
|
+
"obext": "^0.0.31",
|
|
21
|
+
"rimraf": "^6.0.1",
|
|
22
|
+
"stream-to-array": "^2.3.0",
|
|
23
|
+
"url-parse": "^1.5.10"
|
|
24
|
+
},
|
|
25
|
+
"commentDeps": {
|
|
26
|
+
"babel-plugin-minify-dead-code-elimination": "^0.5.0",
|
|
27
|
+
"babel-plugin-remove-comments": "^2.0.0",
|
|
28
|
+
"babel-plugin-transform-class": "^0.3.0",
|
|
29
|
+
"babel-plugin-transform-es2015-classes": "^6.24.1",
|
|
30
|
+
"babel-plugin-transform-es2015-object-super": "^6.24.1"
|
|
31
|
+
},
|
|
32
|
+
"engines": {
|
|
33
|
+
"node": ">=15.0.0"
|
|
34
|
+
},
|
|
35
|
+
"description": "ES6 JSGUI Server. Delivers the client to the browser.",
|
|
36
|
+
"author": "James Vickers <james@metabench.com>",
|
|
37
|
+
"repository": {
|
|
38
|
+
"type": "git",
|
|
39
|
+
"url": "https://github.com/metabench/jsgui3-server.git"
|
|
40
|
+
},
|
|
41
|
+
"version": "0.0.122"
|
|
42
|
+
}
|
package/page-context.js
CHANGED
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
var jsgui = require('jsgui3-html');
|
|
2
|
-
|
|
3
|
-
// Not extend the client page context would be best....
|
|
4
|
-
|
|
5
|
-
// This should be running in node.js
|
|
6
|
-
var stringify = jsgui.stringify, each = jsgui.each, arrayify = jsgui.arrayify, tof = jsgui.tof;
|
|
7
|
-
var filter_map_by_regex = jsgui.filter_map_by_regex;
|
|
8
|
-
var Class = jsgui.Class, Data_Object = jsgui.Data_Object;
|
|
9
|
-
var fp = jsgui.fp, is_defined = jsgui.is_defined;
|
|
10
|
-
var get_a_sig = jsgui.get_a_sig;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// Server_Static_Page_Context could help just by the more explicit name.
|
|
14
|
-
// Used for a single rendering.
|
|
15
|
-
|
|
16
|
-
// Will not be in the context of a request and response.
|
|
17
|
-
// Though could help with creating a response that can be reused.
|
|
18
|
-
|
|
19
|
-
// Think we should continue making the various (very specific) bits and pieces that represent all parts of the process.
|
|
20
|
-
|
|
21
|
-
//
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
// Need to find out what this one requires to put it in its own module.
|
|
28
|
-
class Server_Page_Context extends jsgui.Page_Context {
|
|
29
|
-
constructor(spec) {
|
|
30
|
-
spec = spec || {};
|
|
31
|
-
super(spec);
|
|
32
|
-
if (spec.req) {
|
|
33
|
-
this.req = spec.req;
|
|
34
|
-
this.request = spec.req;
|
|
35
|
-
} else if (spec.request) {
|
|
36
|
-
this.req = spec.request;
|
|
37
|
-
this.request = spec.request;
|
|
38
|
-
};
|
|
39
|
-
if (this.req && this.req.auth) {
|
|
40
|
-
this.auth = this.req.auth;
|
|
41
|
-
}
|
|
42
|
-
if (spec.res) {
|
|
43
|
-
this.res = spec.res;
|
|
44
|
-
this.response = spec.res;
|
|
45
|
-
} else if (spec.response) {
|
|
46
|
-
this.res = spec.response;
|
|
47
|
-
this.response = spec.response;
|
|
48
|
-
};
|
|
49
|
-
// would need to create the Page_Context with the server in the spec.
|
|
50
|
-
if (spec.server) {
|
|
51
|
-
this.server = spec.server;
|
|
52
|
-
}
|
|
53
|
-
this.selection_scope_count = 0;
|
|
54
|
-
// Perhaps things could be more sandboxed, so that controls don't get access to the resource pool by default.
|
|
55
|
-
// Maybe only a small number of controls should have access to this.
|
|
56
|
-
if (spec.pool) {
|
|
57
|
-
this.pool = spec.pool;
|
|
58
|
-
}
|
|
59
|
-
this.rendering_mode = spec.rendering_mode || 'html5';
|
|
60
|
-
// The item IDs could be handled here... use the local variable closure here.
|
|
61
|
-
var map_new_ids = {};
|
|
62
|
-
// and have the objects registered within the context too.
|
|
63
|
-
var map_objects = {};
|
|
64
|
-
var _get_new_typed_object_id = function(type_name) {
|
|
65
|
-
if (!is_defined(map_new_ids[type_name])) {
|
|
66
|
-
map_new_ids[type_name] = 0;
|
|
67
|
-
}
|
|
68
|
-
//if (!is_defined(map_new_ids[type_name]) {
|
|
69
|
-
// map_new_ids[type_name] = 0;
|
|
70
|
-
//}
|
|
71
|
-
var res = type_name + '_' + map_new_ids[type_name];
|
|
72
|
-
map_new_ids[type_name]++;
|
|
73
|
-
return res;
|
|
74
|
-
}
|
|
75
|
-
this.new_id = _get_new_typed_object_id;
|
|
76
|
-
}
|
|
77
|
-
'get_dtd'() {
|
|
78
|
-
if (this.rendering_mode === 'html5') {
|
|
79
|
-
return '<!DOCTYPE html>';
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
'new_selection_scope'(ctrl) {
|
|
83
|
-
let res = super.new_selection_scope(ctrl);
|
|
84
|
-
//var num = this.selection_scope_count++;
|
|
85
|
-
//ctrl.selection_scope = num;
|
|
86
|
-
ctrl._fields = ctrl._fields || {};
|
|
87
|
-
ctrl._fields.selection_scope = res.id;
|
|
88
|
-
return res;
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
module.exports = Server_Page_Context;
|
|
1
|
+
var jsgui = require('jsgui3-html');
|
|
2
|
+
|
|
3
|
+
// Not extend the client page context would be best....
|
|
4
|
+
|
|
5
|
+
// This should be running in node.js
|
|
6
|
+
var stringify = jsgui.stringify, each = jsgui.each, arrayify = jsgui.arrayify, tof = jsgui.tof;
|
|
7
|
+
var filter_map_by_regex = jsgui.filter_map_by_regex;
|
|
8
|
+
var Class = jsgui.Class, Data_Object = jsgui.Data_Object;
|
|
9
|
+
var fp = jsgui.fp, is_defined = jsgui.is_defined;
|
|
10
|
+
var get_a_sig = jsgui.get_a_sig;
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
// Server_Static_Page_Context could help just by the more explicit name.
|
|
14
|
+
// Used for a single rendering.
|
|
15
|
+
|
|
16
|
+
// Will not be in the context of a request and response.
|
|
17
|
+
// Though could help with creating a response that can be reused.
|
|
18
|
+
|
|
19
|
+
// Think we should continue making the various (very specific) bits and pieces that represent all parts of the process.
|
|
20
|
+
|
|
21
|
+
//
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
// Need to find out what this one requires to put it in its own module.
|
|
28
|
+
class Server_Page_Context extends jsgui.Page_Context {
|
|
29
|
+
constructor(spec) {
|
|
30
|
+
spec = spec || {};
|
|
31
|
+
super(spec);
|
|
32
|
+
if (spec.req) {
|
|
33
|
+
this.req = spec.req;
|
|
34
|
+
this.request = spec.req;
|
|
35
|
+
} else if (spec.request) {
|
|
36
|
+
this.req = spec.request;
|
|
37
|
+
this.request = spec.request;
|
|
38
|
+
};
|
|
39
|
+
if (this.req && this.req.auth) {
|
|
40
|
+
this.auth = this.req.auth;
|
|
41
|
+
}
|
|
42
|
+
if (spec.res) {
|
|
43
|
+
this.res = spec.res;
|
|
44
|
+
this.response = spec.res;
|
|
45
|
+
} else if (spec.response) {
|
|
46
|
+
this.res = spec.response;
|
|
47
|
+
this.response = spec.response;
|
|
48
|
+
};
|
|
49
|
+
// would need to create the Page_Context with the server in the spec.
|
|
50
|
+
if (spec.server) {
|
|
51
|
+
this.server = spec.server;
|
|
52
|
+
}
|
|
53
|
+
this.selection_scope_count = 0;
|
|
54
|
+
// Perhaps things could be more sandboxed, so that controls don't get access to the resource pool by default.
|
|
55
|
+
// Maybe only a small number of controls should have access to this.
|
|
56
|
+
if (spec.pool) {
|
|
57
|
+
this.pool = spec.pool;
|
|
58
|
+
}
|
|
59
|
+
this.rendering_mode = spec.rendering_mode || 'html5';
|
|
60
|
+
// The item IDs could be handled here... use the local variable closure here.
|
|
61
|
+
var map_new_ids = {};
|
|
62
|
+
// and have the objects registered within the context too.
|
|
63
|
+
var map_objects = {};
|
|
64
|
+
var _get_new_typed_object_id = function(type_name) {
|
|
65
|
+
if (!is_defined(map_new_ids[type_name])) {
|
|
66
|
+
map_new_ids[type_name] = 0;
|
|
67
|
+
}
|
|
68
|
+
//if (!is_defined(map_new_ids[type_name]) {
|
|
69
|
+
// map_new_ids[type_name] = 0;
|
|
70
|
+
//}
|
|
71
|
+
var res = type_name + '_' + map_new_ids[type_name];
|
|
72
|
+
map_new_ids[type_name]++;
|
|
73
|
+
return res;
|
|
74
|
+
}
|
|
75
|
+
this.new_id = _get_new_typed_object_id;
|
|
76
|
+
}
|
|
77
|
+
'get_dtd'() {
|
|
78
|
+
if (this.rendering_mode === 'html5') {
|
|
79
|
+
return '<!DOCTYPE html>';
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
'new_selection_scope'(ctrl) {
|
|
83
|
+
let res = super.new_selection_scope(ctrl);
|
|
84
|
+
//var num = this.selection_scope_count++;
|
|
85
|
+
//ctrl.selection_scope = num;
|
|
86
|
+
ctrl._fields = ctrl._fields || {};
|
|
87
|
+
ctrl._fields.selection_scope = res.id;
|
|
88
|
+
return res;
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
module.exports = Server_Page_Context;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
// A publisher helper?
|
|
3
|
-
// Could make that the top level class even, would help with typing.
|
|
4
|
-
|
|
5
|
-
class Assigner {
|
|
6
|
-
constructor(spec = {}) {
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
1
|
+
|
|
2
|
+
// A publisher helper?
|
|
3
|
+
// Could make that the top level class even, would help with typing.
|
|
4
|
+
|
|
5
|
+
class Assigner {
|
|
6
|
+
constructor(spec = {}) {
|
|
7
|
+
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
11
|
module.exports = Assigner;
|