pict-section-form 1.0.127 → 1.0.129

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. package/example_applications/complex_table/Complex-Tabular-Application.js +1 -1
  2. package/example_applications/simple_form/Simple-Form_Default_Manifest.json +1 -1
  3. package/example_applications/simple_form/html/index.html +1 -0
  4. package/package.json +2 -2
  5. package/source/Pict-Section-Form.js +8 -0
  6. package/source/views/Pict-View-Form-Metacontroller.js +167 -0
  7. package/source/views/support/Pict-View-PSF-DebugViewer.js +151 -0
  8. package/source/views/support/Pict-View-PSF-Lifecycle-Visualization.js +36 -0
  9. package/source/views/support/Pict-View-PSF-Solver-Visualization.js +0 -0
  10. package/source/views/support/Pict-View-PSF-SupportBase.js +241 -0
  11. package/types/source/Pict-Section-Form.d.ts +4 -0
  12. package/types/source/providers/Pict-Provider-DynamicFormSolverBehaviors.d.ts +2 -2
  13. package/types/source/views/Pict-View-Form-Metacontroller.d.ts +28 -0
  14. package/types/source/views/Pict-View-Form-Metacontroller.d.ts.map +1 -1
  15. package/types/source/views/support/Pict-View-PSF-DebugViewer.d.ts +32 -0
  16. package/types/source/views/support/Pict-View-PSF-DebugViewer.d.ts.map +1 -0
  17. package/types/source/views/support/Pict-View-PSF-LifeCycle-Visualization.d.ts +23 -0
  18. package/types/source/views/support/Pict-View-PSF-LifeCycle-Visualization.d.ts.map +1 -0
  19. package/types/source/views/support/Pict-View-PSF-Solver-Visualization.d.ts +1 -0
  20. package/types/source/views/support/Pict-View-PSF-Solver-Visualization.d.ts.map +1 -0
  21. package/types/source/views/support/Pict-View-PSF-SupportBase.d.ts +37 -0
  22. package/types/source/views/support/Pict-View-PSF-SupportBase.d.ts.map +1 -0
@@ -88,7 +88,7 @@ module.exports.default_configuration.pict_configuration = {
88
88
  {
89
89
  //onclick="{~D:Record.Macro.DataRequestFunction~}"
90
90
  "HashPostfix": "-Template-Wrap-Prefix",
91
- "Template": "<h1>Rectangular Area Solver Micro-app</h1><div><a href=\"#\" onclick=\"{~Pict~}.PictApplication.solve()\">[ solve ]</a></div><hr />"
91
+ "Template": "<h1>Rectangular Area Solver Micro-app</h1><div><a href=\"#\" onclick=\"{~Pict~}.PictApplication.solve()\">[ solve ]</a> <a href=\"#\" onclick=\"{~P~}.views.PictFormMetacontroller.showSupportViewInlineEditor()\">[ editor ]</a></div><hr />"
92
92
  }
93
93
  ],
94
94
 
@@ -30,7 +30,7 @@
30
30
  [
31
31
  {
32
32
  "HashPostfix": "-Template-Wrap-Prefix",
33
- "Template": "<h1>Rectangular Area Solver Micro-app</h1><div><a href=\"#\" onclick=\"{~P~}.PictApplication.solve()\">[ solve ]</a></div><hr />"
33
+ "Template": "<h1>Rectangular Area Solver Micro-app</h1><div><a href=\"#\" onclick=\"{~P~}.PictApplication.solve()\">[ solve ]</a> <a href=\"#\" onclick=\"{~P~}.views.PictFormMetacontroller.showSupportViewInlineEditor()\">[ editor ]</a></div><hr />"
34
34
  }
35
35
  ]
36
36
  }
@@ -3,6 +3,7 @@
3
3
  <head>
4
4
  <title>Simple.</title>
5
5
  <style id="PICT-CSS"></style>
6
+ <style> #Pict-Form-Container { position: absolute; margin: 10px; padding: 10px; left: 0px; top: 0px; width: 65%; border: 2px solid lightsteelblue; }</style>
6
7
  <script src="./pict.min.js" type="text/javascript"></script>
7
8
  <script type="text/javascript">Pict.safeOnDocumentReady(() => { Pict.safeLoadPictApplication(SimpleApplication, 1)});</script>
8
9
  </head>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pict-section-form",
3
- "version": "1.0.127",
3
+ "version": "1.0.129",
4
4
  "description": "Pict dynamic form sections",
5
5
  "main": "source/Pict-Section-Form.js",
6
6
  "directories": {
@@ -31,7 +31,7 @@
31
31
  "browser-env": "^3.3.0",
32
32
  "eslint": "^9.36.0",
33
33
  "jquery": "^3.7.1",
34
- "pict": "^1.0.308",
34
+ "pict": "^1.0.310",
35
35
  "pict-application": "^1.0.29",
36
36
  "pict-service-commandlineutility": "^1.0.15",
37
37
  "quackage": "^1.0.42",
@@ -24,3 +24,11 @@ module.exports.PictDynamicLayoutProvider = require('./providers/Pict-Provider-Dy
24
24
 
25
25
  // The ManifestFactory, for when we want to convert tabular data to configuration
26
26
  module.exports.ManifestFactory = require('./services/ManifestFactory.js');
27
+
28
+
29
+ // The extension views
30
+ module.exports.ExtensionViews = (
31
+ {
32
+ LifecycleVisualization: require('./views/support/Pict-View-PSF-LifeCycle-Visualization.js'),
33
+ DebugViewer: require('./views/support/Pict-View-PSF-DebugViewer.js')
34
+ });
@@ -7,6 +7,10 @@ const libPictViewDynamicForm = require('./Pict-View-DynamicForm.js');
7
7
  // TODO: Manage view lifecycle internally, including destruction of views if they are flagged to not be needed.
8
8
  // Why? This allows us to dynamically add and remove sections without having to reload the application.
9
9
 
10
+ const PENDING_ASYNC_OPERATION_TYPE = 'PendingAsyncOperation';
11
+ const TRANSACTION_COMPLETE_CALLBACK_TYPE = 'onTransactionComplete';
12
+ const READY_TO_FINALIZE_TYPE = 'ReadyToFinalize';
13
+
10
14
  /**
11
15
  * @typedef {(a: any, b: any) => number} SortFunction
12
16
  */
@@ -33,6 +37,12 @@ class PictFormMetacontroller extends libPictViewClass
33
37
  this.formTemplatePrefix = this.pict.providers.MetatemplateGenerator.baseTemplatePrefix;
34
38
 
35
39
  this.manifest = this.pict.manifest;
40
+
41
+ this.SupportViewPrototypes = (
42
+ {
43
+ LifecycleVisualization: require('./support/Pict-View-PSF-LifeCycle-Visualization.js'),
44
+ DebugViewer: require('./support/Pict-View-PSF-DebugViewer.js')
45
+ });
36
46
  }
37
47
 
38
48
  get viewMarshalDestination()
@@ -940,6 +950,163 @@ class PictFormMetacontroller extends libPictViewClass
940
950
  }
941
951
  }
942
952
 
953
+ /**
954
+ * @param {string} pTransactionGUID - The transaction GUID.
955
+ * @param {string} pAsyncOperationHash - The hash of the async operation.
956
+ */
957
+ registerEventTransactionAsyncOperation(pTransactionGUID, pAsyncOperationHash)
958
+ {
959
+ this.pict.TransactionTracking.pushToTransactionQueue(pTransactionGUID, pAsyncOperationHash, PENDING_ASYNC_OPERATION_TYPE);
960
+ }
961
+
962
+ /**
963
+ * @param {string} pTransactionGUID - The transaction GUID.
964
+ * @param {string} pAsyncOperationHash - The hash of the async operation.
965
+ *
966
+ * @return {boolean} - Returns true if the async operation was found and marked as complete, otherwise false.
967
+ */
968
+ eventTransactionAsyncOperationComplete(pTransactionGUID, pAsyncOperationHash)
969
+ {
970
+ const tmpQueue = this.pict.TransactionTracking.checkTransactionQueue(pTransactionGUID);
971
+ let tmpPendingAsyncOperationCount = 0;
972
+ let tmpMarkedOperationCount = 0;
973
+ let tmpFinalized = false;
974
+ for (let i = 0; i < tmpQueue.length; i++)
975
+ {
976
+ const tmpQueueItem = tmpQueue[i];
977
+ if (tmpQueueItem.Type === PENDING_ASYNC_OPERATION_TYPE)
978
+ {
979
+ if (tmpQueueItem.Data === pAsyncOperationHash)
980
+ {
981
+ tmpQueue.splice(i, 1);
982
+ ++tmpMarkedOperationCount;
983
+ --i;
984
+ }
985
+ else
986
+ {
987
+ ++tmpPendingAsyncOperationCount;
988
+ }
989
+ }
990
+ if (tmpQueueItem.Type === READY_TO_FINALIZE_TYPE)
991
+ {
992
+ tmpFinalized = true;
993
+ }
994
+ }
995
+ if (tmpPendingAsyncOperationCount === 0)
996
+ {
997
+ for (const tmpQueueItem of tmpQueue)
998
+ {
999
+ if (tmpQueueItem.Type === TRANSACTION_COMPLETE_CALLBACK_TYPE)
1000
+ {
1001
+ if (typeof tmpQueueItem.Data !== 'function')
1002
+ {
1003
+ this.log.error(`PICT View Metatemplate Helper eventTransactionAsyncOperationComplete transaction callback was not a function.`);
1004
+ continue;
1005
+ }
1006
+ try
1007
+ {
1008
+ tmpQueueItem.Data();
1009
+ }
1010
+ catch (pError)
1011
+ {
1012
+ this.log.error(`PICT View Metatemplate Helper eventTransactionAsyncOperationComplete transaction callback error: ${pError}`, { Stack: pError.stack });
1013
+ }
1014
+ }
1015
+ }
1016
+ }
1017
+ return tmpMarkedOperationCount > 0;
1018
+ }
1019
+
1020
+ /**
1021
+ * @param {string} pTransactionGUID - The transaction GUID.
1022
+ *
1023
+ * @return {boolean} - Returns true if the transaction was found and able to be finalized, otherwise false.
1024
+ */
1025
+ finalizeTransaction(pTransactionGUID)
1026
+ {
1027
+ this.pict.TransactionTracking.pushToTransactionQueue(pTransactionGUID, null, READY_TO_FINALIZE_TYPE);
1028
+
1029
+ const tmpQueue = this.pict.TransactionTracking.checkTransactionQueue(pTransactionGUID);
1030
+ let tmpPendingAsyncOperationCount = 0;
1031
+ for (const tmpQueueItem of tmpQueue)
1032
+ {
1033
+ if (tmpQueueItem.Type === PENDING_ASYNC_OPERATION_TYPE)
1034
+ {
1035
+ ++tmpPendingAsyncOperationCount;
1036
+ }
1037
+ }
1038
+ if (tmpPendingAsyncOperationCount > 0)
1039
+ {
1040
+ this.pict.log.info(`PICT View Metatemplate Helper finalizeTransaction ${pTransactionGUID} is waiting on ${tmpPendingAsyncOperationCount} pending async operations.`);
1041
+ return false;
1042
+ }
1043
+ for (const tmpQueueItem of tmpQueue)
1044
+ {
1045
+ if (tmpQueueItem.Type === TRANSACTION_COMPLETE_CALLBACK_TYPE)
1046
+ {
1047
+ if (typeof tmpQueueItem.Data !== 'function')
1048
+ {
1049
+ this.log.error(`PICT View Metatemplate Helper eventTransactionAsyncOperationComplete transaction callback was not a function.`);
1050
+ continue;
1051
+ }
1052
+ try
1053
+ {
1054
+ tmpQueueItem.Data();
1055
+ }
1056
+ catch (pError)
1057
+ {
1058
+ this.log.error(`PICT View Metatemplate Helper eventTransactionAsyncOperationComplete transaction callback error: ${pError}`, { Stack: pError.stack });
1059
+ }
1060
+ }
1061
+ }
1062
+ //TODO: figure out how to safely clean up old transactions
1063
+ //delete this.pict.TransactionTracking.transactions[pTransactionGUID];
1064
+ return true;
1065
+ }
1066
+
1067
+ /**
1068
+ * @param {string} pTransactionGUID - The transaction GUID.
1069
+ * @param {Function} fCallback - The callback to call when the transaction is complete.
1070
+ */
1071
+ registerOnTransactionCompleteCallback(pTransactionGUID, fCallback)
1072
+ {
1073
+ const tmpQueue = this.pict.TransactionTracking.checkTransactionQueue(pTransactionGUID);
1074
+ let tmpFinalized = false;
1075
+ for (const tmpQueueItem of tmpQueue)
1076
+ {
1077
+ if (tmpQueueItem.Type === READY_TO_FINALIZE_TYPE)
1078
+ {
1079
+ tmpFinalized = true;
1080
+ break;
1081
+ }
1082
+ }
1083
+ if (tmpFinalized)
1084
+ {
1085
+ fCallback();
1086
+ }
1087
+ else
1088
+ {
1089
+ this.pict.TransactionTracking.pushToTransactionQueue(pTransactionGUID, fCallback, TRANSACTION_COMPLETE_CALLBACK_TYPE);
1090
+ }
1091
+ }
1092
+
1093
+ showSupportViewInlineEditor()
1094
+ {
1095
+ // 1. See if the Inline Editor support view is loaded
1096
+ if (!("Pict-Form-DebugViewer" in this.pict.views))
1097
+ {
1098
+ // 2. Load the support view if it isn't
1099
+ this.pict.addView("Pict-Form-DebugViewer", {}, this.SupportViewPrototypes.DebugViewer);
1100
+ }
1101
+
1102
+ // 3. See if the container for the support view is loaded
1103
+ // 4. Render the container for the support view if it isn't loaded
1104
+ this.pict.views["Pict-Form-DebugViewer"].bootstrapContainer();
1105
+
1106
+ // 5. Render the support view into the container
1107
+ this.pict.views["Pict-Form-DebugViewer"].render();
1108
+ }
1109
+
943
1110
  /**
944
1111
  * Returns whether the object is a Pict Metacontroller.
945
1112
  *
@@ -0,0 +1,151 @@
1
+ const libPictViewFormSupportBase = require(`./Pict-View-PSF-SupportBase.js`);
2
+
3
+ const defaultViewConfiguration = (
4
+ {
5
+ ViewIdentifier: "Pict-Form-DebugViewer",
6
+
7
+ DefaultRenderable: 'Pict-Form-DebugViewer-Renderable',
8
+ DefaultDestinationAddress: "#Pict-Form-Extensions-Container",
9
+
10
+ RenderOnLoad: false,
11
+
12
+ CSS: /*css*/`
13
+ #Pict-Form-Extensions-Container { position: absolute; left: 75%; top: 0px; width: 25%; background-color: blanchedalmond; margin: 2px; }
14
+ #PSFDV-SectionList .PSFDV-Section { margin: 2px; padding: 2px; background-color: aliceblue; }
15
+ #PSFDV-DynamicInputSection .PSFDV-Section { margin: 2px; padding: 2px; background-color: #c8fe44; }
16
+ .PSFDV-Section-Group, .PSFDV-Section-Descriptors { margin-left: 5px; }
17
+ .PSFDV-Section-Buttons { font-face: orange; }
18
+ .PSFDV-Solver-Entry { margin-left: 10px; margin-left: 5px; font-family: "Courier New", "Lucida Console", monospace; white-space: nowrap; overflow: scroll; }
19
+ .PSFDV-Solver-Result { font-family: "Courier New", "Lucida Console", monospace; background-color: #eefaee; white-space: nowrap; overflow: scroll; }
20
+ .PSFDV-DataHeader { font-weight: bold; }
21
+ .PSFDV-DeEmphasize { font-weight: light; font-size: smaller; }
22
+ .PSFDV-Data { margin-left: 10px; line-height: 0.5; font-size: smaller; }
23
+ .PSFDV-Label { font-weight: light; min-width: 15%; color: #334481; }
24
+ .PSFDV-Hidden { display: none; }
25
+ `,
26
+
27
+ Templates: [
28
+ {
29
+ Hash: "Pict-Form-DebugViewer-Content",
30
+ Template: /*html*/`
31
+ <div>
32
+ <h2>Pict Inline Form Editor</h2>
33
+ {~T:Pict-Form-DebugViewer-MetacontrollerContainer~}
34
+ </div>`
35
+ },
36
+ {
37
+ Hash: "Pict-Form-DebugViewer-MetacontrollerContainer",
38
+ Template: /*html*/`
39
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Scope:</span> {~D:Context[0].getDynamicState().Scope~}</p>
40
+ <div id="PSFDV-SectionList">
41
+ {~TS:Pict-Form-DebugViewer-SectionContainer:Context[0].getDynamicState().SectionViews~}
42
+ </div>
43
+ <hr>
44
+ <div id="PSFDV-DynamicInputSection">
45
+ {~T:Pict-Form-DebugViewer-SectionContainer:Context[0].getDynamicState().DynamicInputView~}
46
+ </div>
47
+ `
48
+ },
49
+ {
50
+ Hash: "Pict-Form-DebugViewer-SectionContainer",
51
+ Template: /*html*/`
52
+ <div id="PSFDV-Section-{~D:Record.Hash~}" class="PSFDV-Section">
53
+ <h3><span class="PSFDV-DeEmphasize">Section:</span> {~D:Record.sectionDefinition.Name~}</h3>
54
+ <div class="PSDV-Section-Buttons"><a href="#" onclick="{~P~}.views['{~D:Record.View.Hash~}'].render()">[ render ]</a> <a href="#" onclick="{~P~}.ContentAssignment.assignContent('{~D:Record.View.options.DefaultDestinationAddress~}','')">[ clear ]</a> <a href="#" onclick="{~P~}.ContentAssignment.removeClass('#PSFDV-{~D:Record.View.Hash~}-Extra', 'PSFDV-Hidden')">[ Extra Data ]</a></div>
55
+ <div id="PSFDV-{~D:Record.View.Hash~}-Extra" class="PSFDV-Hidden">
56
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Description:</span> {~D:Record.sectionDefinition.Description~}</p>
57
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Hash:</span> {~D:Record.View.Hash~}</p>
58
+ <p class="PSFDV-Data"><span class="PSFDV-Label">HTML ID:</span> {~D:Record.View.sectionDefinition.Macro.HTMLID~}</p>
59
+ <h4>Section Solvers:</h4>
60
+ <div class="PSFDV-Section-Solvers">
61
+ {~TS:Pict-Form-DebugViewer-SolverEntry:Record.Solvers[]<<~?ExpressionScope,==,Section?~>>~}
62
+ </div>
63
+ <h4>Tabular/RecordSet Solvers:</h4>
64
+ <div class="PSFDV-Group-Solvers">
65
+ {~TS:Pict-Form-DebugViewer-SolverEntry:Record.Solvers[]<<~?ExpressionScope,==,Group?~>>~}
66
+ </div>
67
+ <h4>Inputs:</h4>
68
+ <div class="PSFDV-Section-Solver-DynamicInput">
69
+ {~TS:Pict-Form-DebugViewer-GroupContainer:Record.View.sectionDefinition.Groups~}
70
+ </div>
71
+ <a href="#" onclick="{~P~}.ContentAssignment.addClass('#PSFDV-{~D:Record.View.Hash~}-Extra', 'PSFDV-Hidden')">[ Hide Extra Data for {~D:Record.View.Hash~} ]</a>
72
+ </div>
73
+ </div>
74
+ `
75
+ },
76
+ {
77
+ Hash: "Pict-Form-DebugViewer-SolverEntry",
78
+ Template: /*html*/`
79
+ <div class="PSFDV-Section-Solver-Entry">
80
+ <p class="PSFDV-Solver-Entry">{~D:Record.Expression~}</p>
81
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Last Result</span> <span class="PSFDV-Solver-Result">{~D:Record.LastResult~}</span></p>
82
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Sequence</span> Ordinal [{~D:Record.Ordinal~}] Index [{~D:Record.Index~}]</p>
83
+ </div>
84
+ `
85
+ },
86
+ {
87
+ Hash: "Pict-Form-DebugViewer-GroupContainer",
88
+ Template: /*html*/`
89
+ <div class="PSFDV-Section-Group">
90
+ <h8><span class="PSFDV-DeEmphasize">Group:</span> {~D:Record.Name~} [idx <em>{~D:Record.GroupIndex~}</em>]</h8>
91
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Layout:</span> {~D:Record.Layout~}</p>
92
+ <div class="PSFDV-Section-Rows">
93
+ {~TS:Pict-Form-DebugViewer-RowContainer:Record.Rows~}
94
+ </div>
95
+ </div>
96
+ `
97
+ },
98
+ {
99
+ Hash: "Pict-Form-DebugViewer-RowContainer",
100
+ Template: /*html*/`
101
+ <div class="PSFDV-Section-Descriptors">
102
+ <h9>Row {~D:Record.Hash~}</h9>
103
+ {~TS:Pict-Form-DebugViewer-DescriptorContainer:Record.Inputs~}
104
+ </div>
105
+ `
106
+ },
107
+ {
108
+ Hash: "Pict-Form-DebugViewer-DescriptorContainer",
109
+ Template: /*html*/`
110
+ <div class="PSFDV-Section-Descriptor">
111
+ <p class="PSFDV-DataHeader"><span class="PSFDV-DeEmphasize">Input:</span> {~D:Record.Name~}</p>
112
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Hash</span> {~D:Record.Hash~}</p>
113
+ <p class="PSFDV-Data"><span class="PSFDV-Label">DataType</span> {~D:Record.DataType~}</p>
114
+ <p class="PSFDV-Data"><span class="PSFDV-Label">InputType</span> {~D:Record.PictForm.InputType~}</p>
115
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Informary Data Address</span> {~D:Record.PictForm.InformaryDataAddress~}</p>
116
+ <p class="PSFDV-Data"><span class="PSFDV-Label">Input Index</span> {~D:Record.PictForm.InputIndex~}</p>
117
+ <p class="PSFDV-Data"><span class="PSFDV-Label">HTML ID</span> {~D:Record.PictForm.Macro.HTMLID~}</p>
118
+ </div>
119
+ `
120
+ },
121
+ {
122
+ Hash: "Pict-Form-DebugViewer-Container",
123
+ Template: /*html*/`<div id="Pict-Form-Extensions-Container"></div>`
124
+ }
125
+ ],
126
+ Renderables: [
127
+ {
128
+ RenderableHash: "Pict-Form-DebugViewer-Renderable",
129
+ TemplateHash: "Pict-Form-DebugViewer-Content"
130
+ },
131
+ {
132
+ RenderableHash: "Pict-Form-DebugViewer-Container",
133
+ TemplateHash: "Pict-Form-DebugViewer-Container",
134
+ ContentDestinationAddress: 'body',
135
+ RenderMethod: 'append_once',
136
+ TestAddress: "#Pict-Form-Extensions-Container",
137
+ }
138
+ ]
139
+ });
140
+
141
+ class PictFormsInlineEditor extends libPictViewFormSupportBase
142
+ {
143
+ constructor(pFable, pOptions, pServiceHash)
144
+ {
145
+ super(pFable, pOptions, pServiceHash);
146
+ }
147
+ }
148
+
149
+ module.exports = PictFormsInlineEditor;
150
+
151
+ module.exports.default_configuration = defaultViewConfiguration;
@@ -0,0 +1,36 @@
1
+ const libPictView = require(`pict-view`);
2
+
3
+ const defaultViewConfiguration = (
4
+ {
5
+ ViewIdentifier: "PictSectionForm-Visualization-Lifecycle",
6
+
7
+ DefaultRenderable: 'PSF-Visualization-Lifecycle-Renderable',
8
+ DefaultDestinationAddress: "#PictSectionForm-Extensions-Container",
9
+
10
+ RenderOnLoad: false,
11
+
12
+ Templates: [
13
+ {
14
+ Hash: "PictSectionForm-Visualization-Lifecycle-Content",
15
+ Template: /*html*/``
16
+ }
17
+ ],
18
+ Renderables: [
19
+ {
20
+ RenderableHash: "PictSectionForm-Visualization-Lifecycle-Renderable",
21
+ TemplateHash: "PictSectionForm-Visualization-Lifecycle-Content"
22
+ }
23
+ ]
24
+ });
25
+
26
+ class PictSectionFormsLifecycleVisualization extends libPictView
27
+ {
28
+ constructor(pFable, pOptions, pServiceHash)
29
+ {
30
+ super(pFable, pOptions, pServiceHash);
31
+ }
32
+ }
33
+
34
+ module.exports = PictSectionFormsLifecycleVisualization;
35
+
36
+ module.exports.default_configuration = defaultViewConfiguration;
@@ -0,0 +1,241 @@
1
+ const libPictView = require(`pict-view`);
2
+
3
+ const defaultViewConfiguration = (
4
+ {
5
+ ViewIdentifier: "Pict-Form-SupportBase",
6
+
7
+ DefaultRenderable: 'Pict-Form-SUPPORT-BASE',
8
+
9
+ RenderOnLoad: false,
10
+
11
+ Templates: [],
12
+ Renderables: [
13
+ {
14
+ RenderableHash: "Pict-Form-SUPPORT-BASE",
15
+ TemplateHash: "Pict-Form-SUPPORT-BASE-NOTEMPLATE"
16
+ }
17
+ ]
18
+ });
19
+
20
+ class PictFormsSupportBase extends libPictView
21
+ {
22
+ constructor(pFable, pOptions, pServiceHash)
23
+ {
24
+ super(pFable, pOptions, pServiceHash);
25
+ }
26
+
27
+ getDynamicState()
28
+ {
29
+ if (!('PictFormMetacontroller' in this.pict.views))
30
+ {
31
+ this.pict.log.warn(`Pict Forms Inline Editor tried to initialize but no metacontroller was found.`);
32
+ return (
33
+ {
34
+ "Scope": `ERR_NO_METACONTROLLER`,
35
+ "Description": `Error initializing inline editor -- no metacontroller found.`,
36
+ "Manifest": this.fable.newManyfest(),
37
+ "Sections": []
38
+ });
39
+ }
40
+ let tmpMetacontroller = this.pict.views.PictFormMetacontroller;
41
+ let tmpDynamicState = (
42
+ {
43
+ // TODO: The way the metacontroller pulls in the manifest and bootstraps the description is putting "DEFAULT" into the actual manifest; fix this.
44
+ "Scope": tmpMetacontroller.manifestDescription.Scope,
45
+ "Description": ``,
46
+ "Manifest": tmpMetacontroller.manifest,
47
+ "ManifestDescription": tmpMetacontroller.manifestDescription,
48
+ "AllViews": tmpMetacontroller.filterViews(),
49
+ "SectionViews": [],
50
+ "DynamicInputView": false,
51
+ "Solvers": []
52
+ });
53
+
54
+ for (let i = 0; i < tmpDynamicState.AllViews.length; i++)
55
+ {
56
+ let tmpSectionView = tmpDynamicState.AllViews[i];
57
+ if (tmpSectionView.isPictSectionForm && (tmpSectionView.Hash == 'PictFormMetacontroller-DynamicInputs'))
58
+ {
59
+ // This is the special Dynamic Input section -- it goes in its own place.
60
+ tmpDynamicState.DynamicInputView = tmpSectionView;
61
+ }
62
+ else if (tmpSectionView.isPictSectionForm)
63
+ {
64
+ tmpDynamicState.SectionViews.push(
65
+ {
66
+ View: tmpSectionView,
67
+ sectionDefinition: tmpSectionView.sectionDefinition,
68
+ Solvers: []
69
+ });
70
+ }
71
+ }
72
+
73
+ // Now get the solvers for each section view
74
+ for (let i = 0; i < tmpDynamicState.SectionViews.length; i++)
75
+ {
76
+ let tmpSectionView = tmpDynamicState.SectionViews[i].View;
77
+ let tmpSectionViewSolvers = tmpDynamicState.SectionViews[i].Solvers;
78
+ // Find the view representation in the
79
+ if (tmpSectionView.isPictSectionForm && Array.isArray(tmpSectionView.sectionDefinition.Solvers))
80
+ {
81
+ for (let j = 0; j < tmpSectionView.sectionDefinition.Solvers.length; j++)
82
+ {
83
+ let tmpSolver = tmpSectionView.sectionDefinition.Solvers[j];
84
+
85
+ let tmpSolverEntry = { ViewHash: tmpSectionView.Hash, SectionOrdinal: i, Ordinal: 1, Index: j, Expression: '', ExpressionType: 'Unknown', ExpressionScope: 'Section'}
86
+ if (typeof(tmpSolver) === 'string')
87
+ {
88
+ tmpSolverEntry.Expression = tmpSolver;
89
+ tmpSolverEntry.ExpressionType = 'Simple';
90
+ }
91
+ else if (typeof(tmpSolver) === 'object')
92
+ {
93
+ // When the solvers are in this format:
94
+ // {
95
+ // Ordinal: 0,
96
+ // Expression: "PercentTotalFat = (Fat * 9) / Calories",
97
+ // }
98
+ tmpSolverEntry.Expression = tmpSolver.Expression;
99
+ tmpSolverEntry.Ordinal = tmpSolver.Ordinal;
100
+ tmpSolverEntry.ExpressionType = 'Complex';
101
+ }
102
+ tmpDynamicState.Solvers.push(tmpSolverEntry);
103
+ tmpSectionViewSolvers.push(tmpSolverEntry);
104
+ }
105
+ }
106
+
107
+ // Now get all the Group solvers
108
+ // These guards are here because the metacontroller view masquerades as a section form view but isn't one.
109
+ for (let j = 0; j < tmpSectionView.sectionDefinition.Groups.length; j++)
110
+ {
111
+ let tmpGroup = tmpSectionView.getGroup(j);
112
+ if (`RecordSetSolvers` in tmpGroup)
113
+ {
114
+ for (let k = 0; k < tmpGroup.RecordSetSolvers.length; k++)
115
+ {
116
+ let tmpSolver = tmpGroup.RecordSetSolvers[k];
117
+
118
+ let tmpSolverEntry = { ViewHash: tmpSectionView.Hash, SectionOrdinal: i, Ordinal: 1, Index: j, Expression: '', ExpressionType: 'Unknown', ExpressionScope: 'Group'}
119
+ if (tmpSolver)
120
+ {
121
+ if (typeof(tmpSolver) === 'string')
122
+ {
123
+ tmpSolverEntry.Expression = tmpSolver;
124
+ tmpSolverEntry.ExpressionType = 'Simple';
125
+ }
126
+ else if (typeof(tmpSolver) === 'object')
127
+ {
128
+ // When the solvers are in this format:
129
+ // {
130
+ // Ordinal: 0,
131
+ // Expression: "PercentTotalFat = (Fat * 9) / Calories",
132
+ // }
133
+ tmpSolverEntry.Expression = tmpSolver.Expression;
134
+ tmpSolverEntry.Ordinal = tmpSolver.Ordinal;
135
+ tmpSolverEntry.ExpressionType = 'Complex';
136
+ }
137
+ }
138
+ tmpDynamicState.Solvers.push(tmpSolverEntry);
139
+ tmpSectionViewSolvers.push(tmpSolverEntry);
140
+ }
141
+ }
142
+ }
143
+
144
+ // Now sort the solvers by Ordinal and then Index
145
+ tmpSectionViewSolvers.sort((pLeftValue, pRightValue) =>
146
+ {
147
+ if (pLeftValue.Ordinal < pRightValue.Ordinal) return -1;
148
+ if (pLeftValue.Ordinal > pRightValue.Ordinal) return 1;
149
+ if (pLeftValue.Index < pRightValue.Index) return -1;
150
+ if (pLeftValue.Index > pRightValue.Index) return 1;
151
+ return 0;
152
+ });
153
+ }
154
+
155
+ // Get the *full* last solve outcome object
156
+ tmpDynamicState.LastSolveOutcome = this.pict.providers.DynamicSolver.lastSolveOutcome;
157
+
158
+ // Now walk through the solvers and see if the outcome has a result for it.
159
+ if (typeof(tmpDynamicState.LastSolveOutcome) == 'object')
160
+ {
161
+ for (let i = 0; i < tmpDynamicState.Solvers.length; i++)
162
+ {
163
+ let tmpSolverEntry = tmpDynamicState.Solvers[i];
164
+
165
+ if (tmpSolverEntry.Ordinal in tmpDynamicState.LastSolveOutcome.SolveOrdinals)
166
+ {
167
+ if (tmpSolverEntry.ExpressionScope == 'Section')
168
+ {
169
+ let tmpSolveResultSet = tmpDynamicState.LastSolveOutcome.SolveOrdinals[tmpSolverEntry.Ordinal].SectionSolvers;
170
+ if (Array.isArray(tmpSolveResultSet))
171
+ {
172
+ for (let j = 0; j < tmpSolveResultSet.length; j++)
173
+ {
174
+ let tmpPotentialResultEntry = tmpSolveResultSet[j];
175
+ if ((tmpPotentialResultEntry.ViewHash == tmpSolverEntry.ViewHash) && (tmpPotentialResultEntry.Solver.Expression == tmpSolverEntry.Expression))
176
+ {
177
+ // We have a match -- assign the result to the solver entry
178
+ tmpSolverEntry.LastResult = tmpPotentialResultEntry.Solver.ResultsObject.RawResult;
179
+ tmpSolverEntry.LastResultsObject = tmpPotentialResultEntry.ResultsObject;
180
+ }
181
+ }
182
+ }
183
+ }
184
+ else if ((tmpSolverEntry.ExpressionScope == 'Group'))
185
+ {
186
+ let tmpSolveResultSet = tmpDynamicState.LastSolveOutcome.SolveOrdinals[tmpSolverEntry.Ordinal].GroupSolvers;
187
+ if (Array.isArray(tmpSolveResultSet))
188
+ {
189
+ for (let j = 0; j < tmpSolveResultSet.length; j++)
190
+ {
191
+ let tmpPotentialResultEntry = tmpSolveResultSet[j];
192
+ if ((tmpPotentialResultEntry.ViewHash == tmpSolverEntry.ViewHash) && (tmpPotentialResultEntry.Solver.Expression == tmpSolverEntry.Expression))
193
+ {
194
+ // We have a match -- assign the result to the solver entry
195
+ tmpSolverEntry.LastResult = tmpPotentialResultEntry.Solver.ResultsObject.RawResult;
196
+ tmpSolverEntry.LastResultsObject = tmpPotentialResultEntry.Solver.ResultsObject;
197
+ }
198
+ }
199
+ }
200
+ }
201
+ }
202
+ }
203
+ }
204
+
205
+ return tmpDynamicState;
206
+ }
207
+
208
+ getSectionSolvers(pSectionViewHash)
209
+ {
210
+ let tmpDynamicState = this.getDynamicState();
211
+ let tmpSectionSolvers = tmpDynamicState.Solvers.map((pSolverEntry) => { if (pSolverEntry.ViewHash === pSectionViewHash) return pSolverEntry; });
212
+ return tmpSectionSolvers;
213
+ }
214
+
215
+ writeSolver(pIdentifierHash, pSolver)
216
+ {
217
+
218
+ }
219
+
220
+ bootstrapContainer()
221
+ {
222
+ // 3. See if the container for the support view is loaded
223
+ let tmpContainerTest = this.options.DefaultDestinationAddress;
224
+
225
+ let tmpContainerElement = this.pict.ContentAssignment.getElement(this.options.DefaultDestinationAddress);
226
+ if (tmpContainerElement.length > 0)
227
+ {
228
+ return true;
229
+ }
230
+
231
+ // 4. Render the container for the support view if it isn't loaded
232
+ let tmpContainerRenderableHash = 'Pict-Form-DebugViewer-Container';
233
+ this.renderables[tmpContainerRenderableHash].TestAddress = tmpContainerTest;
234
+ this.pict.CSSMap.injectCSS();
235
+ this.render(tmpContainerRenderableHash);
236
+ }
237
+ }
238
+
239
+ module.exports = PictFormsSupportBase;
240
+
241
+ module.exports.default_configuration = defaultViewConfiguration;
@@ -8,6 +8,10 @@ declare const _exports: {
8
8
  PictFormApplication: typeof import("./application/Pict-Application-Form.js");
9
9
  PictDynamicLayoutProvider: typeof import("./providers/Pict-Provider-DynamicLayout.js");
10
10
  ManifestFactory: typeof import("./services/ManifestFactory.js");
11
+ ExtensionViews: {
12
+ LifecycleVisualization: typeof import("./views/support/Pict-View-PSF-LifeCycle-Visualization.js");
13
+ DebugViewer: typeof import("./views/support/Pict-View-PSF-DebugViewer.js");
14
+ };
11
15
  };
12
16
  export = _exports;
13
17
  //# sourceMappingURL=Pict-Section-Form.d.ts.map
@@ -44,10 +44,10 @@ declare class PictDynamicFormsSolverBehaviors extends libPictProvider {
44
44
  * @param {string} pInputHash - The hash of the input to color.
45
45
  * @param {string} pColor - The HTML hex color to apply (e.g. #FF0000 for red).
46
46
  * @param {string} pApplyChange - If "0", the change will not be applied.
47
- * @param {string} [pClassTarget] - Optional. If provided, the color will be applied to the closest element with this class instead of the input itself.
47
+ * @param {string} [pCSSSelector] - Optional. If provided, the color will be applied to the closest element matching this selector instead of the input itself.
48
48
  * @returns {boolean} - Returns true if the color was applied successfully or if the change was skipped for pApplyChange equal to "0", false otherwise.
49
49
  */
50
- colorInputBackground(pSectionHash: string, pInputHash: string, pColor: string, pApplyChange: string, pClassTarget?: string): boolean;
50
+ colorInputBackground(pSectionHash: string, pInputHash: string, pColor: string, pApplyChange: string, pCSSSelector?: string): boolean;
51
51
  logValues(...args: any[]): any;
52
52
  }
53
53
  declare namespace PictDynamicFormsSolverBehaviors {
@@ -14,6 +14,10 @@ declare class PictFormMetacontroller extends libPictViewClass {
14
14
  lastRenderedViews: any[];
15
15
  formTemplatePrefix: any;
16
16
  manifest: any;
17
+ SupportViewPrototypes: {
18
+ LifecycleVisualization: typeof import("./support/Pict-View-PSF-LifeCycle-Visualization.js");
19
+ DebugViewer: typeof import("./support/Pict-View-PSF-DebugViewer.js");
20
+ };
17
21
  set viewMarshalDestination(pValue: any);
18
22
  get viewMarshalDestination(): any;
19
23
  /**
@@ -160,6 +164,30 @@ declare class PictFormMetacontroller extends libPictViewClass {
160
164
  * @param {string} [pTransactionGUID] - (optional) The transaction GUID to use for the event.
161
165
  */
162
166
  triggerGlobalInputEvent(pEvent: string, pTransactionGUID?: string): void;
167
+ /**
168
+ * @param {string} pTransactionGUID - The transaction GUID.
169
+ * @param {string} pAsyncOperationHash - The hash of the async operation.
170
+ */
171
+ registerEventTransactionAsyncOperation(pTransactionGUID: string, pAsyncOperationHash: string): void;
172
+ /**
173
+ * @param {string} pTransactionGUID - The transaction GUID.
174
+ * @param {string} pAsyncOperationHash - The hash of the async operation.
175
+ *
176
+ * @return {boolean} - Returns true if the async operation was found and marked as complete, otherwise false.
177
+ */
178
+ eventTransactionAsyncOperationComplete(pTransactionGUID: string, pAsyncOperationHash: string): boolean;
179
+ /**
180
+ * @param {string} pTransactionGUID - The transaction GUID.
181
+ *
182
+ * @return {boolean} - Returns true if the transaction was found and able to be finalized, otherwise false.
183
+ */
184
+ finalizeTransaction(pTransactionGUID: string): boolean;
185
+ /**
186
+ * @param {string} pTransactionGUID - The transaction GUID.
187
+ * @param {Function} fCallback - The callback to call when the transaction is complete.
188
+ */
189
+ registerOnTransactionCompleteCallback(pTransactionGUID: string, fCallback: Function): void;
190
+ showSupportViewInlineEditor(): void;
163
191
  /**
164
192
  * Returns whether the object is a Pict Metacontroller.
165
193
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Pict-View-Form-Metacontroller.d.ts","sourceRoot":"","sources":["../../../source/views/Pict-View-Form-Metacontroller.js"],"names":[],"mappings":";AASA;;GAEG;AAEH;;;;;;GAMG;AACH;IAEC,2DAaC;IALA,yBAA2B;IAE3B,wBAAsF;IAEtF,cAAkC;IAQnC,wCAGC;IARD,kCAGC;IAOD;;;;OAIG;IACH,qBAFa,GAAG,CAaf;IAED;;;;OAIG;IACH,mBAFa,GAAG,CAaf;IAED,yCAYC;IAED;;;;;OAKG;IACH,kCAHW,aAAa,GACX,IAAI,CAsBhB;IAwBD;;;;OAIG;IACH,WAFa,GAAG,CAMf;IAED,gDAGC;IAED,+CAGC;IAED;;;;OAIG;IACH,2DAJW,MAAM,GAEL,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAW9B;IAED;;;OAGG;IACH,0BAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,sBACnB,MAAM,QAiChB;IAED;;;;;;;;;OASG;IACH,kCALW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,UACnB,MAAM,GAEL,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAsC9B;IAED;;;;OAIG;IACH,uCAJW,KAAK,CAAC,MAAM,CAAC,sBACb,MAAM,UACN,MAAM,QAahB;IAED;;;OAGG;IACH,6CAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,sBACnB,MAAM,SAehB;IAED;;;;;;;;OAQG;IACH,wDAHW,YAAY,SAoHtB;IAED;;;;;;;OAOG;IACH,4CAHW,MAAM,GACJ,IAAI,CAShB;IAED;;;;OAIG;IACH,6BAFa,IAAI,CAQhB;IAED;;;;;;;OAOG;IACH,+DAFW,YAAY,QAatB;IAED;;;;;OAKG;IACH,8EAFW,YAAY,QAmBtB;IAED;;;;;;OAMG;IACH,oEAHW,YAAY,GACV,IAAI,CAkDhB;IAED;;;;;;;OAOG;IACH,uEAJW,YAAY,GAEX,IAAI,CAsFf;IAED;;;;;OAKG;IACH,qCAHW,MAAM,GACJ,MAAM,GAAC,OAAO,CA2C1B;IAED,+CAeC;IAED;;;;;;;OAOG;IACH,kFAJW,MAAM,GAEJ,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAoLtC;IA5JC,gCAA0D;IAC1D,yBAAiD;IA6JnD;;;;OAIG;IACH,gCAHW,MAAM,qBACN,MAAM,QA0BhB;IAED;;;;OAIG;IACH,4BAFa,OAAO,CAKnB;CACD;;;;;qCAGU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;oBAh7BjB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,MAAM"}
1
+ {"version":3,"file":"Pict-View-Form-Metacontroller.d.ts","sourceRoot":"","sources":["../../../source/views/Pict-View-Form-Metacontroller.js"],"names":[],"mappings":";AAaA;;GAEG;AAEH;;;;;;GAMG;AACH;IAEC,2DAmBC;IAXA,yBAA2B;IAE3B,wBAAsF;IAEtF,cAAkC;IAElC;;;MAIE;IAQH,wCAGC;IARD,kCAGC;IAOD;;;;OAIG;IACH,qBAFa,GAAG,CAaf;IAED;;;;OAIG;IACH,mBAFa,GAAG,CAaf;IAED,yCAYC;IAED;;;;;OAKG;IACH,kCAHW,aAAa,GACX,IAAI,CAsBhB;IAwBD;;;;OAIG;IACH,WAFa,GAAG,CAMf;IAED,gDAGC;IAED,+CAGC;IAED;;;;OAIG;IACH,2DAJW,MAAM,GAEL,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAW9B;IAED;;;OAGG;IACH,0BAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,sBACnB,MAAM,QAiChB;IAED;;;;;;;;;OASG;IACH,kCALW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,UACnB,MAAM,GAEL,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAsC9B;IAED;;;;OAIG;IACH,uCAJW,KAAK,CAAC,MAAM,CAAC,sBACb,MAAM,UACN,MAAM,QAahB;IAED;;;OAGG;IACH,6CAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,sBACnB,MAAM,SAehB;IAED;;;;;;;;OAQG;IACH,wDAHW,YAAY,SAoHtB;IAED;;;;;;;OAOG;IACH,4CAHW,MAAM,GACJ,IAAI,CAShB;IAED;;;;OAIG;IACH,6BAFa,IAAI,CAQhB;IAED;;;;;;;OAOG;IACH,+DAFW,YAAY,QAatB;IAED;;;;;OAKG;IACH,8EAFW,YAAY,QAmBtB;IAED;;;;;;OAMG;IACH,oEAHW,YAAY,GACV,IAAI,CAkDhB;IAED;;;;;;;OAOG;IACH,uEAJW,YAAY,GAEX,IAAI,CAsFf;IAED;;;;;OAKG;IACH,qCAHW,MAAM,GACJ,MAAM,GAAC,OAAO,CA2C1B;IAED,+CAeC;IAED;;;;;;;OAOG;IACH,kFAJW,MAAM,GAEJ,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAoLtC;IA5JC,gCAA0D;IAC1D,yBAAiD;IA6JnD;;;;OAIG;IACH,gCAHW,MAAM,qBACN,MAAM,QA0BhB;IAED;;;OAGG;IACH,yDAHW,MAAM,uBACN,MAAM,QAKhB;IAED;;;;;OAKG;IACH,yDALW,MAAM,uBACN,MAAM,GAEL,OAAO,CAoDlB;IAED;;;;OAIG;IACH,sCAJW,MAAM,GAEL,OAAO,CA0ClB;IAED;;;OAGG;IACH,wDAHW,MAAM,6BAuBhB;IAED,oCAeC;IAED;;;;OAIG;IACH,4BAFa,OAAO,CAKnB;CACD;;;;;qCAGU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;oBAnlCjB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,MAAM"}
@@ -0,0 +1,32 @@
1
+ export = PictFormsInlineEditor;
2
+ declare class PictFormsInlineEditor extends libPictViewFormSupportBase {
3
+ }
4
+ declare namespace PictFormsInlineEditor {
5
+ export { defaultViewConfiguration as default_configuration };
6
+ }
7
+ import libPictViewFormSupportBase = require("./Pict-View-PSF-SupportBase.js");
8
+ declare namespace defaultViewConfiguration {
9
+ let ViewIdentifier: string;
10
+ let DefaultRenderable: string;
11
+ let DefaultDestinationAddress: string;
12
+ let RenderOnLoad: boolean;
13
+ let CSS: string;
14
+ let Templates: {
15
+ Hash: string;
16
+ Template: string;
17
+ }[];
18
+ let Renderables: ({
19
+ RenderableHash: string;
20
+ TemplateHash: string;
21
+ ContentDestinationAddress?: undefined;
22
+ RenderMethod?: undefined;
23
+ TestAddress?: undefined;
24
+ } | {
25
+ RenderableHash: string;
26
+ TemplateHash: string;
27
+ ContentDestinationAddress: string;
28
+ RenderMethod: string;
29
+ TestAddress: string;
30
+ })[];
31
+ }
32
+ //# sourceMappingURL=Pict-View-PSF-DebugViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pict-View-PSF-DebugViewer.d.ts","sourceRoot":"","sources":["../../../../source/views/support/Pict-View-PSF-DebugViewer.js"],"names":[],"mappings":";AA4IA;CAMC"}
@@ -0,0 +1,23 @@
1
+ export = PictSectionFormsLifecycleVisualization;
2
+ declare class PictSectionFormsLifecycleVisualization extends libPictView {
3
+ constructor(pFable: any, pOptions: any, pServiceHash: any);
4
+ }
5
+ declare namespace PictSectionFormsLifecycleVisualization {
6
+ export { defaultViewConfiguration as default_configuration };
7
+ }
8
+ import libPictView = require("pict-view");
9
+ declare namespace defaultViewConfiguration {
10
+ let ViewIdentifier: string;
11
+ let DefaultRenderable: string;
12
+ let DefaultDestinationAddress: string;
13
+ let RenderOnLoad: boolean;
14
+ let Templates: {
15
+ Hash: string;
16
+ Template: string;
17
+ }[];
18
+ let Renderables: {
19
+ RenderableHash: string;
20
+ TemplateHash: string;
21
+ }[];
22
+ }
23
+ //# sourceMappingURL=Pict-View-PSF-LifeCycle-Visualization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pict-View-PSF-LifeCycle-Visualization.d.ts","sourceRoot":"","sources":["../../../../source/views/support/Pict-View-PSF-LifeCycle-Visualization.js"],"names":[],"mappings":";AAyBA;IAEC,2DAGC;CACD"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=Pict-View-PSF-Solver-Visualization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pict-View-PSF-Solver-Visualization.d.ts","sourceRoot":"","sources":["../../../../source/views/support/Pict-View-PSF-Solver-Visualization.js"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ export = PictFormsSupportBase;
2
+ declare class PictFormsSupportBase extends libPictView {
3
+ constructor(pFable: any, pOptions: any, pServiceHash: any);
4
+ getDynamicState(): {
5
+ Scope: any;
6
+ Description: string;
7
+ Manifest: any;
8
+ ManifestDescription: any;
9
+ AllViews: any;
10
+ SectionViews: any[];
11
+ DynamicInputView: boolean;
12
+ Solvers: any[];
13
+ } | {
14
+ Scope: string;
15
+ Description: string;
16
+ Manifest: any;
17
+ Sections: any[];
18
+ };
19
+ getSectionSolvers(pSectionViewHash: any): any;
20
+ writeSolver(pIdentifierHash: any, pSolver: any): void;
21
+ bootstrapContainer(): boolean;
22
+ }
23
+ declare namespace PictFormsSupportBase {
24
+ export { defaultViewConfiguration as default_configuration };
25
+ }
26
+ import libPictView = require("pict-view");
27
+ declare namespace defaultViewConfiguration {
28
+ let ViewIdentifier: string;
29
+ let DefaultRenderable: string;
30
+ let RenderOnLoad: boolean;
31
+ let Templates: any[];
32
+ let Renderables: {
33
+ RenderableHash: string;
34
+ TemplateHash: string;
35
+ }[];
36
+ }
37
+ //# sourceMappingURL=Pict-View-PSF-SupportBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pict-View-PSF-SupportBase.d.ts","sourceRoot":"","sources":["../../../../source/views/support/Pict-View-PSF-SupportBase.js"],"names":[],"mappings":";AAmBA;IAEC,2DAGC;IAED;;;;;;;;;;;;;;MAmLC;IAED,8CAKC;IAED,sDAGC;IAED,8BAgBC;CACD"}