jsgui3-server 0.0.121 → 0.0.123
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 +112 -248
- package/examples/box/2) twenty square boxes/css flex wrap/server.js +39 -112
- package/examples/box/3) twenty selectable square boxes/css flex wrap/client.js +129 -0
- package/examples/{controls/15) window, text field → box/3) twenty selectable square boxes/css flex wrap}/server.js +38 -38
- 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 +118 -320
- package/examples/controls/10) window, mirrored text inputs/server.js +37 -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 +66 -452
- package/examples/controls/12) window, Select_Options control/server.js +19 -117
- package/examples/controls/13) window, Dropdown_Menu control/client.js +66 -0
- package/examples/controls/13) window, Dropdown_Menu control/server.js +20 -0
- 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 +68 -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 +33 -209
- package/examples/controls/8) window, checkbox/server.js +117 -117
- package/examples/controls/9) window, date picker/client.js +76 -303
- package/examples/controls/9) window, date picker/server.js +117 -117
- package/examples/controls/9b) window, shared data.model mirrored date pickers/README.md +51 -0
- package/examples/controls/9b) window, shared data.model mirrored date pickers/client.js +83 -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/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,40 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
// Coming up with a new version based on the plan.
|
|
3
|
-
// Want to hold the compressed version. Hold a reference to the new version which has has the compression run.
|
|
4
|
-
|
|
5
|
-
const JS_AST_Node_Planning = require('./JS_AST_Node_9-Planning');
|
|
6
|
-
|
|
7
|
-
class JS_AST_Node_Changing extends JS_AST_Node_Planning {
|
|
8
|
-
constructor(spec = {}) {
|
|
9
|
-
super(spec);
|
|
10
|
-
|
|
11
|
-
// sets the childnodes here.
|
|
12
|
-
// will also make available the relevant bable properties.
|
|
13
|
-
|
|
14
|
-
// Use the lower level tools to kind of understand the node.
|
|
15
|
-
// Provide property getters that will do this.
|
|
16
|
-
|
|
17
|
-
// Seeing what pattern / recognised object / pattern it is.
|
|
18
|
-
|
|
19
|
-
let compressed_version;
|
|
20
|
-
|
|
21
|
-
const get_compressed_version = () => {
|
|
22
|
-
// Compress the inner local variables.
|
|
23
|
-
//
|
|
24
|
-
|
|
25
|
-
// Will compare original and compressed source.
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
Object.defineProperty(this, 'compressed_version', {
|
|
29
|
-
get() {
|
|
30
|
-
if (!compressed_version) compressed_version = get_compressed_version();
|
|
31
|
-
return compressed_version;
|
|
32
|
-
},
|
|
33
|
-
//set(newValue) { bValue = newValue; },
|
|
34
|
-
enumerable: true,
|
|
35
|
-
configurable: false
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
1
|
+
|
|
2
|
+
// Coming up with a new version based on the plan.
|
|
3
|
+
// Want to hold the compressed version. Hold a reference to the new version which has has the compression run.
|
|
4
|
+
|
|
5
|
+
const JS_AST_Node_Planning = require('./JS_AST_Node_9-Planning');
|
|
6
|
+
|
|
7
|
+
class JS_AST_Node_Changing extends JS_AST_Node_Planning {
|
|
8
|
+
constructor(spec = {}) {
|
|
9
|
+
super(spec);
|
|
10
|
+
|
|
11
|
+
// sets the childnodes here.
|
|
12
|
+
// will also make available the relevant bable properties.
|
|
13
|
+
|
|
14
|
+
// Use the lower level tools to kind of understand the node.
|
|
15
|
+
// Provide property getters that will do this.
|
|
16
|
+
|
|
17
|
+
// Seeing what pattern / recognised object / pattern it is.
|
|
18
|
+
|
|
19
|
+
let compressed_version;
|
|
20
|
+
|
|
21
|
+
const get_compressed_version = () => {
|
|
22
|
+
// Compress the inner local variables.
|
|
23
|
+
//
|
|
24
|
+
|
|
25
|
+
// Will compare original and compressed source.
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
Object.defineProperty(this, 'compressed_version', {
|
|
29
|
+
get() {
|
|
30
|
+
if (!compressed_version) compressed_version = get_compressed_version();
|
|
31
|
+
return compressed_version;
|
|
32
|
+
},
|
|
33
|
+
//set(newValue) { bValue = newValue; },
|
|
34
|
+
enumerable: true,
|
|
35
|
+
configurable: false
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
40
|
module.exports = JS_AST_Node_Changing;
|
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const JS_AST_Node_Basics_Babel = require('./JS_AST_Node_1-Babel');
|
|
4
|
-
|
|
5
|
-
const JS_AST_Relationship_Node_To_Group = require('./JS_AST_Relationship_Node_To_Group');
|
|
6
|
-
|
|
7
|
-
const JS_AST_Group_Shared = require('./JS_AST_Group_Shared');
|
|
8
|
-
|
|
9
|
-
class JS_AST_Node_Child extends JS_AST_Node_Basics_Babel {
|
|
10
|
-
constructor(spec = {}) {
|
|
11
|
-
super(spec);
|
|
12
|
-
const {each_child_node} = this;
|
|
13
|
-
|
|
14
|
-
const select_child_nodes = fn_select => {
|
|
15
|
-
const res = [];
|
|
16
|
-
filter_each_child_node(fn_select, cn => res.push(cn));
|
|
17
|
-
return res;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
// Make it a Relationship_Group.
|
|
21
|
-
// Node_To_Group_Relationship
|
|
22
|
-
|
|
23
|
-
// JS_AST_Relationship_Node_To_Group
|
|
24
|
-
|
|
25
|
-
const child = new JS_AST_Relationship_Node_To_Group({
|
|
26
|
-
origin: this,
|
|
27
|
-
name: 'child'//,
|
|
28
|
-
//obtainer: () => this.child_nodes,
|
|
29
|
-
//iterator: callback => each(this.child_nodes, callback),
|
|
30
|
-
//each: callback => each(this.child_nodes, callback)//,
|
|
31
|
-
//select: fn_select => select_child_nodes(fn_select)
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
// Group properties....
|
|
35
|
-
|
|
36
|
-
/*
|
|
37
|
-
let child_shared_type;
|
|
38
|
-
|
|
39
|
-
// Could benefit from making some kind of group shared class
|
|
40
|
-
// so the shared type property definition would work on multiple different groups.
|
|
41
|
-
// as would a find function.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
//child.shared = {
|
|
47
|
-
|
|
48
|
-
//}
|
|
49
|
-
|
|
50
|
-
Object.defineProperty(child.shared, 'type', {
|
|
51
|
-
get() {
|
|
52
|
-
if (child_shared_type === undefined) {
|
|
53
|
-
each_child_node((cn, idx, stop) => {
|
|
54
|
-
if (child_shared_type === undefined) {
|
|
55
|
-
child_shared_type = cn.type;
|
|
56
|
-
} else {
|
|
57
|
-
if (cn.type === child_shared_type) {
|
|
58
|
-
// all good
|
|
59
|
-
} else {
|
|
60
|
-
child_shared_type = false;
|
|
61
|
-
stop();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
})
|
|
66
|
-
}
|
|
67
|
-
return child_shared_type;
|
|
68
|
-
//return child_nodes.length;
|
|
69
|
-
},
|
|
70
|
-
enumerable: true,
|
|
71
|
-
configurable: false
|
|
72
|
-
});
|
|
73
|
-
*/
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
/*
|
|
77
|
-
const find_child_node = (finder, callback) => {
|
|
78
|
-
let res;
|
|
79
|
-
each_child_node((cn, idx, stop) => {
|
|
80
|
-
if (finder(cn)) {
|
|
81
|
-
res = cn;
|
|
82
|
-
stop();
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
return res;
|
|
86
|
-
}
|
|
87
|
-
*/
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
let arr_child_types;
|
|
92
|
-
let arr_child_categories;
|
|
93
|
-
this.child = child;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
const JS_AST_Node_Basics_Babel = require('./JS_AST_Node_1-Babel');
|
|
4
|
+
|
|
5
|
+
const JS_AST_Relationship_Node_To_Group = require('./JS_AST_Relationship_Node_To_Group');
|
|
6
|
+
|
|
7
|
+
const JS_AST_Group_Shared = require('./JS_AST_Group_Shared');
|
|
8
|
+
|
|
9
|
+
class JS_AST_Node_Child extends JS_AST_Node_Basics_Babel {
|
|
10
|
+
constructor(spec = {}) {
|
|
11
|
+
super(spec);
|
|
12
|
+
const {each_child_node} = this;
|
|
13
|
+
|
|
14
|
+
const select_child_nodes = fn_select => {
|
|
15
|
+
const res = [];
|
|
16
|
+
filter_each_child_node(fn_select, cn => res.push(cn));
|
|
17
|
+
return res;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
// Make it a Relationship_Group.
|
|
21
|
+
// Node_To_Group_Relationship
|
|
22
|
+
|
|
23
|
+
// JS_AST_Relationship_Node_To_Group
|
|
24
|
+
|
|
25
|
+
const child = new JS_AST_Relationship_Node_To_Group({
|
|
26
|
+
origin: this,
|
|
27
|
+
name: 'child'//,
|
|
28
|
+
//obtainer: () => this.child_nodes,
|
|
29
|
+
//iterator: callback => each(this.child_nodes, callback),
|
|
30
|
+
//each: callback => each(this.child_nodes, callback)//,
|
|
31
|
+
//select: fn_select => select_child_nodes(fn_select)
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
// Group properties....
|
|
35
|
+
|
|
36
|
+
/*
|
|
37
|
+
let child_shared_type;
|
|
38
|
+
|
|
39
|
+
// Could benefit from making some kind of group shared class
|
|
40
|
+
// so the shared type property definition would work on multiple different groups.
|
|
41
|
+
// as would a find function.
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
//child.shared = {
|
|
47
|
+
|
|
48
|
+
//}
|
|
49
|
+
|
|
50
|
+
Object.defineProperty(child.shared, 'type', {
|
|
51
|
+
get() {
|
|
52
|
+
if (child_shared_type === undefined) {
|
|
53
|
+
each_child_node((cn, idx, stop) => {
|
|
54
|
+
if (child_shared_type === undefined) {
|
|
55
|
+
child_shared_type = cn.type;
|
|
56
|
+
} else {
|
|
57
|
+
if (cn.type === child_shared_type) {
|
|
58
|
+
// all good
|
|
59
|
+
} else {
|
|
60
|
+
child_shared_type = false;
|
|
61
|
+
stop();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
})
|
|
66
|
+
}
|
|
67
|
+
return child_shared_type;
|
|
68
|
+
//return child_nodes.length;
|
|
69
|
+
},
|
|
70
|
+
enumerable: true,
|
|
71
|
+
configurable: false
|
|
72
|
+
});
|
|
73
|
+
*/
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
/*
|
|
77
|
+
const find_child_node = (finder, callback) => {
|
|
78
|
+
let res;
|
|
79
|
+
each_child_node((cn, idx, stop) => {
|
|
80
|
+
if (finder(cn)) {
|
|
81
|
+
res = cn;
|
|
82
|
+
stop();
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
return res;
|
|
86
|
+
}
|
|
87
|
+
*/
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
let arr_child_types;
|
|
92
|
+
let arr_child_categories;
|
|
93
|
+
this.child = child;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
97
|
module.exports = JS_AST_Node_Child
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const JS_AST_Node_Basics_Child = require('./JS_AST_Node_2.1.1-Child');
|
|
4
|
-
|
|
5
|
-
const JS_AST_Relationship_Node_Within_Group_To_Node = require('./JS_AST_Relationship_Node_Within_Group_To_Node');
|
|
6
|
-
|
|
7
|
-
class JS_AST_Node_Parent extends JS_AST_Node_Basics_Child {
|
|
8
|
-
constructor(spec = {}) {
|
|
9
|
-
super(spec);
|
|
10
|
-
const {each_inner_node} = this;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// Make it a Relationship_Group.
|
|
14
|
-
// Node_To_Group_Relationship
|
|
15
|
-
|
|
16
|
-
// JS_AST_Relationship_Node_To_Group
|
|
17
|
-
|
|
18
|
-
// Do we have the index within parent?
|
|
19
|
-
// Could change the construction algo lower down so it's given - it's useful.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const parent = new JS_AST_Relationship_Node_Within_Group_To_Node({
|
|
23
|
-
origin: this,
|
|
24
|
-
name: 'parent',
|
|
25
|
-
node: this.parent_node
|
|
26
|
-
//obtainer: () => this.child_nodes,
|
|
27
|
-
//iterator: callback => each(this.child_nodes, callback),
|
|
28
|
-
//each: callback => each(this.child_nodes, callback)//,
|
|
29
|
-
//select: fn_select => select_child_nodes(fn_select)
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
// Group properties....
|
|
33
|
-
|
|
34
|
-
this.parent = parent;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
const JS_AST_Node_Basics_Child = require('./JS_AST_Node_2.1.1-Child');
|
|
4
|
+
|
|
5
|
+
const JS_AST_Relationship_Node_Within_Group_To_Node = require('./JS_AST_Relationship_Node_Within_Group_To_Node');
|
|
6
|
+
|
|
7
|
+
class JS_AST_Node_Parent extends JS_AST_Node_Basics_Child {
|
|
8
|
+
constructor(spec = {}) {
|
|
9
|
+
super(spec);
|
|
10
|
+
const {each_inner_node} = this;
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
// Make it a Relationship_Group.
|
|
14
|
+
// Node_To_Group_Relationship
|
|
15
|
+
|
|
16
|
+
// JS_AST_Relationship_Node_To_Group
|
|
17
|
+
|
|
18
|
+
// Do we have the index within parent?
|
|
19
|
+
// Could change the construction algo lower down so it's given - it's useful.
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
const parent = new JS_AST_Relationship_Node_Within_Group_To_Node({
|
|
23
|
+
origin: this,
|
|
24
|
+
name: 'parent',
|
|
25
|
+
node: this.parent_node
|
|
26
|
+
//obtainer: () => this.child_nodes,
|
|
27
|
+
//iterator: callback => each(this.child_nodes, callback),
|
|
28
|
+
//each: callback => each(this.child_nodes, callback)//,
|
|
29
|
+
//select: fn_select => select_child_nodes(fn_select)
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
// Group properties....
|
|
33
|
+
|
|
34
|
+
this.parent = parent;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
38
|
module.exports = JS_AST_Node_Parent
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const JS_AST_Node_Basics_Parent = require('./JS_AST_Node_2.1.2-Parent');
|
|
4
|
-
|
|
5
|
-
const JS_AST_Relationship_Node_To_Group = require('./JS_AST_Relationship_Node_To_Group');
|
|
6
|
-
|
|
7
|
-
class JS_AST_Node_Ancestor extends JS_AST_Node_Basics_Parent {
|
|
8
|
-
constructor(spec = {}) {
|
|
9
|
-
super(spec);
|
|
10
|
-
const {each_inner_node} = this;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// Make it a Relationship_Group.
|
|
14
|
-
// Node_To_Group_Relationship
|
|
15
|
-
|
|
16
|
-
// JS_AST_Relationship_Node_To_Group
|
|
17
|
-
|
|
18
|
-
// index (of ancestors)
|
|
19
|
-
|
|
20
|
-
const ancestor = new JS_AST_Relationship_Node_To_Group({
|
|
21
|
-
origin: this,
|
|
22
|
-
name: 'ancestor'//,
|
|
23
|
-
//obtainer: () => this.child_nodes,
|
|
24
|
-
//iterator: callback => each(this.child_nodes, callback),
|
|
25
|
-
//each: callback => each(this.child_nodes, callback)//,
|
|
26
|
-
//select: fn_select => select_child_nodes(fn_select)
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
// Group properties....
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
const parent = this.parent;
|
|
33
|
-
let gparent, ggparent;
|
|
34
|
-
if (parent.node) {
|
|
35
|
-
gparent = parent.node.parent;
|
|
36
|
-
if (gparent && gparent.node) {
|
|
37
|
-
ggparent = gparent.node.parent;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
Object.assign(this, {
|
|
50
|
-
ancestor: ancestor,
|
|
51
|
-
gparent: gparent,
|
|
52
|
-
ggparent: ggparent
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
this.ancestor = ancestor;
|
|
57
|
-
this.gparent = gparent;
|
|
58
|
-
this.ggparent = ggparent;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
const JS_AST_Node_Basics_Parent = require('./JS_AST_Node_2.1.2-Parent');
|
|
4
|
+
|
|
5
|
+
const JS_AST_Relationship_Node_To_Group = require('./JS_AST_Relationship_Node_To_Group');
|
|
6
|
+
|
|
7
|
+
class JS_AST_Node_Ancestor extends JS_AST_Node_Basics_Parent {
|
|
8
|
+
constructor(spec = {}) {
|
|
9
|
+
super(spec);
|
|
10
|
+
const {each_inner_node} = this;
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
// Make it a Relationship_Group.
|
|
14
|
+
// Node_To_Group_Relationship
|
|
15
|
+
|
|
16
|
+
// JS_AST_Relationship_Node_To_Group
|
|
17
|
+
|
|
18
|
+
// index (of ancestors)
|
|
19
|
+
|
|
20
|
+
const ancestor = new JS_AST_Relationship_Node_To_Group({
|
|
21
|
+
origin: this,
|
|
22
|
+
name: 'ancestor'//,
|
|
23
|
+
//obtainer: () => this.child_nodes,
|
|
24
|
+
//iterator: callback => each(this.child_nodes, callback),
|
|
25
|
+
//each: callback => each(this.child_nodes, callback)//,
|
|
26
|
+
//select: fn_select => select_child_nodes(fn_select)
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
// Group properties....
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
const parent = this.parent;
|
|
33
|
+
let gparent, ggparent;
|
|
34
|
+
if (parent.node) {
|
|
35
|
+
gparent = parent.node.parent;
|
|
36
|
+
if (gparent && gparent.node) {
|
|
37
|
+
ggparent = gparent.node.parent;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
Object.assign(this, {
|
|
50
|
+
ancestor: ancestor,
|
|
51
|
+
gparent: gparent,
|
|
52
|
+
ggparent: ggparent
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
this.ancestor = ancestor;
|
|
57
|
+
this.gparent = gparent;
|
|
58
|
+
this.ggparent = ggparent;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
62
|
module.exports = JS_AST_Node_Ancestor
|
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const JS_AST_Node_Ancestor = require('./JS_AST_Node_2.1.3-Ancestor');
|
|
4
|
-
|
|
5
|
-
const JS_AST_Relationship_Node_To_Group = require('./JS_AST_Relationship_Node_To_Group');
|
|
6
|
-
|
|
7
|
-
class JS_AST_Node_Inner extends JS_AST_Node_Ancestor {
|
|
8
|
-
constructor(spec = {}) {
|
|
9
|
-
super(spec);
|
|
10
|
-
const {each_inner_node} = this;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// Make it a Relationship_Group.
|
|
14
|
-
// Node_To_Group_Relationship
|
|
15
|
-
|
|
16
|
-
// JS_AST_Relationship_Node_To_Group
|
|
17
|
-
|
|
18
|
-
const inner = new JS_AST_Relationship_Node_To_Group({
|
|
19
|
-
origin: this,
|
|
20
|
-
name: 'inner'//,
|
|
21
|
-
//obtainer: () => this.child_nodes,
|
|
22
|
-
//iterator: callback => each(this.child_nodes, callback),
|
|
23
|
-
//each: callback => each(this.child_nodes, callback)//,
|
|
24
|
-
//select: fn_select => select_child_nodes(fn_select)
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
// Group properties....
|
|
28
|
-
|
|
29
|
-
// Make a shared property class?
|
|
30
|
-
// Group_Shared_Properties class
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
// Group_Shared_Property type possibly?
|
|
34
|
-
|
|
35
|
-
//inner.shared = {
|
|
36
|
-
|
|
37
|
-
//}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
this.inner = inner;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
const JS_AST_Node_Ancestor = require('./JS_AST_Node_2.1.3-Ancestor');
|
|
4
|
+
|
|
5
|
+
const JS_AST_Relationship_Node_To_Group = require('./JS_AST_Relationship_Node_To_Group');
|
|
6
|
+
|
|
7
|
+
class JS_AST_Node_Inner extends JS_AST_Node_Ancestor {
|
|
8
|
+
constructor(spec = {}) {
|
|
9
|
+
super(spec);
|
|
10
|
+
const {each_inner_node} = this;
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
// Make it a Relationship_Group.
|
|
14
|
+
// Node_To_Group_Relationship
|
|
15
|
+
|
|
16
|
+
// JS_AST_Relationship_Node_To_Group
|
|
17
|
+
|
|
18
|
+
const inner = new JS_AST_Relationship_Node_To_Group({
|
|
19
|
+
origin: this,
|
|
20
|
+
name: 'inner'//,
|
|
21
|
+
//obtainer: () => this.child_nodes,
|
|
22
|
+
//iterator: callback => each(this.child_nodes, callback),
|
|
23
|
+
//each: callback => each(this.child_nodes, callback)//,
|
|
24
|
+
//select: fn_select => select_child_nodes(fn_select)
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
// Group properties....
|
|
28
|
+
|
|
29
|
+
// Make a shared property class?
|
|
30
|
+
// Group_Shared_Properties class
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
// Group_Shared_Property type possibly?
|
|
34
|
+
|
|
35
|
+
//inner.shared = {
|
|
36
|
+
|
|
37
|
+
//}
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
this.inner = inner;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
44
|
module.exports = JS_AST_Node_Inner
|