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
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
const JS_File_Query_Features = require('./JS_File_4.1-Query_Features.js');
|
|
2
|
-
const Variable_Name_Provider = require('../Variable_Name_Provider');
|
|
3
|
-
const { each } = require('lang-tools');
|
|
4
|
-
class JS_File_Planning extends JS_File_Query_Features {
|
|
5
|
-
constructor(spec) {
|
|
6
|
-
super(spec);
|
|
7
|
-
|
|
8
|
-
// string path of the variable within the ast.
|
|
9
|
-
// can use that path to find the position at a later stage.
|
|
10
|
-
// Need to keep the planning stage separate for the moment.
|
|
11
|
-
|
|
12
|
-
// Want a way to access the paths of the nodes too.
|
|
13
|
-
|
|
14
|
-
// (node, path)
|
|
15
|
-
|
|
16
|
-
// propose_local_variable_name_remapping
|
|
17
|
-
|
|
18
|
-
const get_proposed_root_definitions_inner_name_remappings = this.get_proposed_root_definitions_inner_name_remappings = () => {
|
|
19
|
-
const res = {};
|
|
20
|
-
this.each_root_declaration(node => {
|
|
21
|
-
//console.log('node', node);
|
|
22
|
-
const idns = node.inner_declaration_names;
|
|
23
|
-
//throw 'stop';
|
|
24
|
-
|
|
25
|
-
if (idns.length > 0) {
|
|
26
|
-
//console.log('');
|
|
27
|
-
//console.log('node.own_declaration_names', node.own_declaration_names);
|
|
28
|
-
|
|
29
|
-
if (node.own_declaration_names.length === 1) {
|
|
30
|
-
const own_name = node.own_declaration_names[0];
|
|
31
|
-
//console.log('idns', idns);
|
|
32
|
-
|
|
33
|
-
const l_max = 2;
|
|
34
|
-
|
|
35
|
-
const arr_names_for_shortening = idns.filter(x => x.length > l_max);
|
|
36
|
-
//console.log('arr_names_for_shortening', arr_names_for_shortening);
|
|
37
|
-
|
|
38
|
-
if (arr_names_for_shortening.length > 0) {
|
|
39
|
-
const namer = new Variable_Name_Provider();
|
|
40
|
-
const map_renames = {};
|
|
41
|
-
each(arr_names_for_shortening, name => {
|
|
42
|
-
const new_name = namer.get_l();
|
|
43
|
-
map_renames[name] = new_name;
|
|
44
|
-
});
|
|
45
|
-
//console.log('map_renames', map_renames);
|
|
46
|
-
res[own_name] = map_renames;
|
|
47
|
-
}
|
|
48
|
-
} else {
|
|
49
|
-
console.log('node', node);
|
|
50
|
-
throw 'stop';
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
return res;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
module.exports = JS_File_Planning;
|
|
1
|
+
const JS_File_Query_Features = require('./JS_File_4.1-Query_Features.js');
|
|
2
|
+
const Variable_Name_Provider = require('../Variable_Name_Provider');
|
|
3
|
+
const { each } = require('lang-tools');
|
|
4
|
+
class JS_File_Planning extends JS_File_Query_Features {
|
|
5
|
+
constructor(spec) {
|
|
6
|
+
super(spec);
|
|
7
|
+
|
|
8
|
+
// string path of the variable within the ast.
|
|
9
|
+
// can use that path to find the position at a later stage.
|
|
10
|
+
// Need to keep the planning stage separate for the moment.
|
|
11
|
+
|
|
12
|
+
// Want a way to access the paths of the nodes too.
|
|
13
|
+
|
|
14
|
+
// (node, path)
|
|
15
|
+
|
|
16
|
+
// propose_local_variable_name_remapping
|
|
17
|
+
|
|
18
|
+
const get_proposed_root_definitions_inner_name_remappings = this.get_proposed_root_definitions_inner_name_remappings = () => {
|
|
19
|
+
const res = {};
|
|
20
|
+
this.each_root_declaration(node => {
|
|
21
|
+
//console.log('node', node);
|
|
22
|
+
const idns = node.inner_declaration_names;
|
|
23
|
+
//throw 'stop';
|
|
24
|
+
|
|
25
|
+
if (idns.length > 0) {
|
|
26
|
+
//console.log('');
|
|
27
|
+
//console.log('node.own_declaration_names', node.own_declaration_names);
|
|
28
|
+
|
|
29
|
+
if (node.own_declaration_names.length === 1) {
|
|
30
|
+
const own_name = node.own_declaration_names[0];
|
|
31
|
+
//console.log('idns', idns);
|
|
32
|
+
|
|
33
|
+
const l_max = 2;
|
|
34
|
+
|
|
35
|
+
const arr_names_for_shortening = idns.filter(x => x.length > l_max);
|
|
36
|
+
//console.log('arr_names_for_shortening', arr_names_for_shortening);
|
|
37
|
+
|
|
38
|
+
if (arr_names_for_shortening.length > 0) {
|
|
39
|
+
const namer = new Variable_Name_Provider();
|
|
40
|
+
const map_renames = {};
|
|
41
|
+
each(arr_names_for_shortening, name => {
|
|
42
|
+
const new_name = namer.get_l();
|
|
43
|
+
map_renames[name] = new_name;
|
|
44
|
+
});
|
|
45
|
+
//console.log('map_renames', map_renames);
|
|
46
|
+
res[own_name] = map_renames;
|
|
47
|
+
}
|
|
48
|
+
} else {
|
|
49
|
+
console.log('node', node);
|
|
50
|
+
throw 'stop';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
return res;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
module.exports = JS_File_Planning;
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
const JS_File_Planning = require('./JS_File_5-Planning');
|
|
2
|
-
const Variable_Name_Provider = require('../Variable_Name_Provider');
|
|
3
|
-
const { each } = require('lang-tools');
|
|
4
|
-
|
|
5
|
-
const {transform} = require("@babel/core");
|
|
6
|
-
// import { transform } from "@babel/core";
|
|
7
|
-
const generate = require("@babel/generator").default;
|
|
8
|
-
//import generate from "@babel/generator";
|
|
9
|
-
//console.log('generate', generate);
|
|
10
|
-
//throw 'stop';
|
|
11
|
-
|
|
12
|
-
class JS_File_Changing extends JS_File_Planning {
|
|
13
|
-
constructor(spec) {
|
|
14
|
-
super(spec);
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
JS_File_Changing.load_from_stream = (rs, path) => {
|
|
21
|
-
const res = new JS_File_Changing({rs: rs, path: path});
|
|
22
|
-
return res;
|
|
23
|
-
}
|
|
24
|
-
module.exports = JS_File_Changing;
|
|
1
|
+
const JS_File_Planning = require('./JS_File_5-Planning');
|
|
2
|
+
const Variable_Name_Provider = require('../Variable_Name_Provider');
|
|
3
|
+
const { each } = require('lang-tools');
|
|
4
|
+
|
|
5
|
+
const {transform} = require("@babel/core");
|
|
6
|
+
// import { transform } from "@babel/core";
|
|
7
|
+
const generate = require("@babel/generator").default;
|
|
8
|
+
//import generate from "@babel/generator";
|
|
9
|
+
//console.log('generate', generate);
|
|
10
|
+
//throw 'stop';
|
|
11
|
+
|
|
12
|
+
class JS_File_Changing extends JS_File_Planning {
|
|
13
|
+
constructor(spec) {
|
|
14
|
+
super(spec);
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
JS_File_Changing.load_from_stream = (rs, path) => {
|
|
21
|
+
const res = new JS_File_Changing({rs: rs, path: path});
|
|
22
|
+
return res;
|
|
23
|
+
}
|
|
24
|
+
module.exports = JS_File_Changing;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
// Has to be a single object.
|
|
3
|
-
// But that single object can be expressed inline too.
|
|
4
|
-
// Shouldn't be so hard.
|
|
5
|
-
|
|
6
|
-
// Just a single object gets exported - but may help with some syntax that exports multiple objects.
|
|
7
|
-
// Eg libraries of utility functions.
|
|
8
|
-
|
|
9
|
-
// Spot class non prototype functions too?
|
|
10
|
-
|
|
11
|
-
// Maybe make JSGUI_Module_Exports declaration.
|
|
12
|
-
|
|
1
|
+
|
|
2
|
+
// Has to be a single object.
|
|
3
|
+
// But that single object can be expressed inline too.
|
|
4
|
+
// Shouldn't be so hard.
|
|
5
|
+
|
|
6
|
+
// Just a single object gets exported - but may help with some syntax that exports multiple objects.
|
|
7
|
+
// Eg libraries of utility functions.
|
|
8
|
+
|
|
9
|
+
// Spot class non prototype functions too?
|
|
10
|
+
|
|
11
|
+
// Maybe make JSGUI_Module_Exports declaration.
|
|
12
|
+
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
class Import_Reference {
|
|
3
|
-
constructor(spec = {}) {
|
|
4
|
-
|
|
5
|
-
// name and value pair.
|
|
6
|
-
|
|
7
|
-
let name, value;
|
|
8
|
-
|
|
9
|
-
Object.defineProperty(this, 'name', {
|
|
10
|
-
set: function(v) { name = v; },
|
|
11
|
-
get() { return name; },
|
|
12
|
-
enumerable: true,
|
|
13
|
-
configurable: false
|
|
14
|
-
});
|
|
15
|
-
Object.defineProperty(this, 'value', {
|
|
16
|
-
set: function(v) { value = v; },
|
|
17
|
-
get() { return value; },
|
|
18
|
-
enumerable: true,
|
|
19
|
-
configurable: false
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
1
|
+
|
|
2
|
+
class Import_Reference {
|
|
3
|
+
constructor(spec = {}) {
|
|
4
|
+
|
|
5
|
+
// name and value pair.
|
|
6
|
+
|
|
7
|
+
let name, value;
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(this, 'name', {
|
|
10
|
+
set: function(v) { name = v; },
|
|
11
|
+
get() { return name; },
|
|
12
|
+
enumerable: true,
|
|
13
|
+
configurable: false
|
|
14
|
+
});
|
|
15
|
+
Object.defineProperty(this, 'value', {
|
|
16
|
+
set: function(v) { value = v; },
|
|
17
|
+
get() { return value; },
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: false
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
24
|
module.exports = Import_Reference;
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
// May be removed / a changed version made.
|
|
2
|
-
// Possibly a more general version, not just for JS files (in theory)
|
|
3
|
-
|
|
4
|
-
// But this could be useful for understanding what the import references are and matching the code for them.
|
|
5
|
-
|
|
6
|
-
// An abstraction that represents an understanding of the references that get imported into a JS_File.
|
|
7
|
-
// Likely to be:
|
|
8
|
-
// Generated when a js file is loaded
|
|
9
|
-
// Used to understand where in the working and therefore output structure the functionality goes (if it is treated as a block).
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class Import_References {
|
|
17
|
-
constructor(spec = {}) {
|
|
18
|
-
|
|
19
|
-
const arr = [];
|
|
20
|
-
Object.defineProperty(this, 'arr', {
|
|
21
|
-
//set: function(v) { arr = v; },
|
|
22
|
-
get() { return arr; },
|
|
23
|
-
enumerable: true,
|
|
24
|
-
configurable: false
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
this.push = value => arr.push(value);
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
|
|
1
|
+
// May be removed / a changed version made.
|
|
2
|
+
// Possibly a more general version, not just for JS files (in theory)
|
|
3
|
+
|
|
4
|
+
// But this could be useful for understanding what the import references are and matching the code for them.
|
|
5
|
+
|
|
6
|
+
// An abstraction that represents an understanding of the references that get imported into a JS_File.
|
|
7
|
+
// Likely to be:
|
|
8
|
+
// Generated when a js file is loaded
|
|
9
|
+
// Used to understand where in the working and therefore output structure the functionality goes (if it is treated as a block).
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class Import_References {
|
|
17
|
+
constructor(spec = {}) {
|
|
18
|
+
|
|
19
|
+
const arr = [];
|
|
20
|
+
Object.defineProperty(this, 'arr', {
|
|
21
|
+
//set: function(v) { arr = v; },
|
|
22
|
+
get() { return arr; },
|
|
23
|
+
enumerable: true,
|
|
24
|
+
configurable: false
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
this.push = value => arr.push(value);
|
|
28
|
+
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
32
|
module.exports = Import_References;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
// Don't use? Use planning and changing instead?
|
|
2
|
-
// Come up with the course of action. Then carry it out.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const JS_File_Comprehension = require('./JS_File_4-Queryjs');
|
|
6
|
-
|
|
7
|
-
class JS_FIle_Processor extends JS_File_Comprehension {
|
|
8
|
-
constructor(spec) {
|
|
9
|
-
super(spec);
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
module.exports = JS_FIle_Processor;
|
|
1
|
+
// Don't use? Use planning and changing instead?
|
|
2
|
+
// Come up with the course of action. Then carry it out.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
const JS_File_Comprehension = require('./JS_File_4-Queryjs');
|
|
6
|
+
|
|
7
|
+
class JS_FIle_Processor extends JS_File_Comprehension {
|
|
8
|
+
constructor(spec) {
|
|
9
|
+
super(spec);
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
module.exports = JS_FIle_Processor;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
const {each, Evented_Class} = require('lang-tools');
|
|
2
|
-
|
|
3
|
-
class JS_Files extends Evented_Class {
|
|
4
|
-
constructor(spec) {
|
|
5
|
-
|
|
6
|
-
const arr_files = [];
|
|
7
|
-
const map_files = {}; // by full path if provided, otherwise name.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
super(spec);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
1
|
+
const {each, Evented_Class} = require('lang-tools');
|
|
2
|
+
|
|
3
|
+
class JS_Files extends Evented_Class {
|
|
4
|
+
constructor(spec) {
|
|
5
|
+
|
|
6
|
+
const arr_files = [];
|
|
7
|
+
const map_files = {}; // by full path if provided, otherwise name.
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
super(spec);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
}
|
|
15
|
+
|
|
16
16
|
module.exports = JS_Files;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
// Corresponds to an npm module, JS code in a directory and with the package.json standard.
|
|
2
|
-
|
|
3
|
-
// Will be able to get data about what it imports and exports.
|
|
4
|
-
|
|
5
|
-
// Want a fairly simple API.
|
|
6
|
-
|
|
7
|
-
// Like load, get_compressed
|
|
8
|
-
|
|
9
|
-
// Some kind of categorisation / signature / signature match of the structure of the module.
|
|
10
|
-
|
|
11
|
-
// Want to do things such as load a file as a module, and it has information about what the module exports.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
// Corresponds to an npm module, JS code in a directory and with the package.json standard.
|
|
2
|
+
|
|
3
|
+
// Will be able to get data about what it imports and exports.
|
|
4
|
+
|
|
5
|
+
// Want a fairly simple API.
|
|
6
|
+
|
|
7
|
+
// Like load, get_compressed
|
|
8
|
+
|
|
9
|
+
// Some kind of categorisation / signature / signature match of the structure of the module.
|
|
10
|
+
|
|
11
|
+
// Want to do things such as load a file as a module, and it has information about what the module exports.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
// Make a platform about providing variables.
|
|
2
|
-
|
|
3
|
-
const {each, Evented_Class} = require('lang-tools');
|
|
4
|
-
const Declaration_Sequence = require('./Abstract_Single_Declaration_Sequence');
|
|
5
|
-
|
|
6
|
-
class Platform extends Evented_Class {
|
|
7
|
-
constructor(spec) {
|
|
8
|
-
super(spec);
|
|
9
|
-
const map_local_module_directories = {};
|
|
10
|
-
const scope = new Scope();
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
|
|
1
|
+
// Make a platform about providing variables.
|
|
2
|
+
|
|
3
|
+
const {each, Evented_Class} = require('lang-tools');
|
|
4
|
+
const Declaration_Sequence = require('./Abstract_Single_Declaration_Sequence');
|
|
5
|
+
|
|
6
|
+
class Platform extends Evented_Class {
|
|
7
|
+
constructor(spec) {
|
|
8
|
+
super(spec);
|
|
9
|
+
const map_local_module_directories = {};
|
|
10
|
+
const scope = new Scope();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
14
|
module.exports = Platform;
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
// May be irrelevant / directly equivalent with Platform.
|
|
2
|
-
// Platform should be able to contain multiple platforms.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
// Acts as an array / collection of platforms. Will use enumerator.
|
|
6
|
-
const {tof, each, Evented_Class} = require('lang-tools');
|
|
7
|
-
|
|
8
|
-
// A platform can require a variety of other platforms under it.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
class Platforms extends Evented_Class {
|
|
13
|
-
constructor(spec = {}) {
|
|
14
|
-
// Each platform has a scope level.
|
|
15
|
-
super(spec);
|
|
16
|
-
|
|
17
|
-
let arr_requires = [];
|
|
18
|
-
let arr_platforms = [];
|
|
19
|
-
|
|
20
|
-
const tsr = tof(spec.requires);
|
|
21
|
-
if (tsr === 'string') {
|
|
22
|
-
arr_requires.push(spec.requires);
|
|
23
|
-
} else {
|
|
24
|
-
if (tsr === 'array') {
|
|
25
|
-
each(spec.requires, item => spec.requires.push(item));
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
// Platforms is one of the main thing that a project contains.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
// Can require platforms
|
|
32
|
-
// Can require single functions???
|
|
33
|
-
// In that case it would require the smallest platform that contains it, or it fishes the function out.
|
|
34
|
-
// Looks like we need tests for if a function is inline.
|
|
35
|
-
|
|
36
|
-
if (spec.platforms) {
|
|
37
|
-
const t = spec.platforms;
|
|
38
|
-
if (t === 'array') {
|
|
39
|
-
each(spec.platforms, platform => arr_platforms.push(platform));
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
console.log('arr_requires', arr_requires);
|
|
44
|
-
console.log('arr_platforms', arr_platforms);
|
|
45
|
-
|
|
46
|
-
this.push = platform => {
|
|
47
|
-
const idx = arr_platforms.length;
|
|
48
|
-
arr_platforms.push(platform);
|
|
49
|
-
this.raise('change', {
|
|
50
|
-
'type': 'add',
|
|
51
|
-
'value': platform
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
// Still need the simple exports info
|
|
57
|
-
// despite it possibly being complex to get that info
|
|
58
|
-
//
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
// A bunch of local variables get defined within each platform.
|
|
64
|
-
|
|
65
|
-
// Make a platform about providing variables.
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
|
|
1
|
+
// May be irrelevant / directly equivalent with Platform.
|
|
2
|
+
// Platform should be able to contain multiple platforms.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
// Acts as an array / collection of platforms. Will use enumerator.
|
|
6
|
+
const {tof, each, Evented_Class} = require('lang-tools');
|
|
7
|
+
|
|
8
|
+
// A platform can require a variety of other platforms under it.
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class Platforms extends Evented_Class {
|
|
13
|
+
constructor(spec = {}) {
|
|
14
|
+
// Each platform has a scope level.
|
|
15
|
+
super(spec);
|
|
16
|
+
|
|
17
|
+
let arr_requires = [];
|
|
18
|
+
let arr_platforms = [];
|
|
19
|
+
|
|
20
|
+
const tsr = tof(spec.requires);
|
|
21
|
+
if (tsr === 'string') {
|
|
22
|
+
arr_requires.push(spec.requires);
|
|
23
|
+
} else {
|
|
24
|
+
if (tsr === 'array') {
|
|
25
|
+
each(spec.requires, item => spec.requires.push(item));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
// Platforms is one of the main thing that a project contains.
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
// Can require platforms
|
|
32
|
+
// Can require single functions???
|
|
33
|
+
// In that case it would require the smallest platform that contains it, or it fishes the function out.
|
|
34
|
+
// Looks like we need tests for if a function is inline.
|
|
35
|
+
|
|
36
|
+
if (spec.platforms) {
|
|
37
|
+
const t = spec.platforms;
|
|
38
|
+
if (t === 'array') {
|
|
39
|
+
each(spec.platforms, platform => arr_platforms.push(platform));
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
console.log('arr_requires', arr_requires);
|
|
44
|
+
console.log('arr_platforms', arr_platforms);
|
|
45
|
+
|
|
46
|
+
this.push = platform => {
|
|
47
|
+
const idx = arr_platforms.length;
|
|
48
|
+
arr_platforms.push(platform);
|
|
49
|
+
this.raise('change', {
|
|
50
|
+
'type': 'add',
|
|
51
|
+
'value': platform
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
// Still need the simple exports info
|
|
57
|
+
// despite it possibly being complex to get that info
|
|
58
|
+
//
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
// A bunch of local variables get defined within each platform.
|
|
64
|
+
|
|
65
|
+
// Make a platform about providing variables.
|
|
66
|
+
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
70
|
module.exports = Platforms;
|