pict-section-form 1.0.169 → 1.0.171
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/example_applications/postcard_example/providers/PictProvider-BestPostcardTheme.js +1 -1
- package/example_applications/postcard_example/providers/PictProvider-Dynamic-Sections.js +0 -1
- package/example_applications/simple_distill/Simple-Form-Application.js +26 -3
- package/package.json +3 -3
- package/source/providers/Pict-Provider-DynamicFormSolverBehaviors.js +6 -0
- package/source/providers/Pict-Provider-DynamicInputEvents.js +0 -3
- package/source/providers/Pict-Provider-DynamicSolver.js +146 -8
- package/source/providers/Pict-Provider-MetatemplateGenerator.js +0 -1
- package/source/providers/dynamictemplates/Pict-DynamicTemplates-DefaultFormTemplates.js +20 -0
- package/source/providers/inputs/Pict-Provider-Input-AutofillTriggerGroup.js +32 -0
- package/source/providers/inputs/Pict-Provider-Input-EntityBundleRequest.js +20 -42
- package/source/providers/inputs/Pict-Provider-Input-Templated.js +255 -0
- package/source/providers/inputs/Pict-Provider-Input-TemplatedEntityLookup.js +62 -19
- package/source/services/ManifestFactory.js +105 -0
- package/source/views/Pict-View-DynamicForm.js +1 -6
- package/source/views/Pict-View-Form-Metacontroller.js +0 -2
- package/types/source/providers/Pict-Provider-DynamicFormSolverBehaviors.d.ts +1 -0
- package/types/source/providers/Pict-Provider-DynamicFormSolverBehaviors.d.ts.map +1 -1
- package/types/source/providers/Pict-Provider-DynamicInputEvents.d.ts.map +1 -1
- package/types/source/providers/Pict-Provider-DynamicSolver.d.ts +39 -3
- package/types/source/providers/Pict-Provider-DynamicSolver.d.ts.map +1 -1
- package/types/source/providers/Pict-Provider-MetatemplateGenerator.d.ts.map +1 -1
- package/types/source/providers/inputs/Pict-Provider-Input-AutofillTriggerGroup.d.ts.map +1 -1
- package/types/source/providers/inputs/Pict-Provider-Input-EntityBundleRequest.d.ts +0 -38
- package/types/source/providers/inputs/Pict-Provider-Input-EntityBundleRequest.d.ts.map +1 -1
- package/types/source/providers/inputs/Pict-Provider-Input-Templated.d.ts +131 -0
- package/types/source/providers/inputs/Pict-Provider-Input-Templated.d.ts.map +1 -0
- package/types/source/providers/inputs/Pict-Provider-Input-TemplatedEntityLookup.d.ts +0 -26
- package/types/source/providers/inputs/Pict-Provider-Input-TemplatedEntityLookup.d.ts.map +1 -1
- package/types/source/services/ManifestFactory.d.ts +1 -0
- package/types/source/services/ManifestFactory.d.ts.map +1 -1
- package/types/source/views/Pict-View-DynamicForm.d.ts +1 -1
- package/types/source/views/Pict-View-DynamicForm.d.ts.map +1 -1
- package/types/source/views/Pict-View-Form-Metacontroller.d.ts.map +1 -1
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
const libPictSectionInputExtension = require('../Pict-Provider-InputExtension.js');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Input provider for simple templated content display.
|
|
5
|
+
*
|
|
6
|
+
* @class
|
|
7
|
+
* @extends libPictSectionInputExtension
|
|
8
|
+
* @memberof providers.inputs
|
|
9
|
+
*/
|
|
10
|
+
class TemplatedInputProvider extends libPictSectionInputExtension
|
|
11
|
+
{
|
|
12
|
+
/**
|
|
13
|
+
* @param {import('fable')} pFable - The Fable instance.
|
|
14
|
+
* @param {Record<string, any>} [pOptions] - The options for the provider.
|
|
15
|
+
* @param {string} [pServiceHash] - The service hash for the provider.
|
|
16
|
+
*/
|
|
17
|
+
constructor(pFable, pOptions, pServiceHash)
|
|
18
|
+
{
|
|
19
|
+
super(pFable, pOptions, pServiceHash);
|
|
20
|
+
|
|
21
|
+
/** @type {import('pict')} */
|
|
22
|
+
this.pict;
|
|
23
|
+
/** @type {import('pict')} */
|
|
24
|
+
this.fable;
|
|
25
|
+
/** @type {any} */
|
|
26
|
+
this.log;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Generates the HTML ID for a content display input element.
|
|
31
|
+
*
|
|
32
|
+
* @param {string} pInputHTMLID - The HTML ID of the input element.
|
|
33
|
+
* @returns {string} - The generated HTML ID for the content display input element.
|
|
34
|
+
*/
|
|
35
|
+
getContentDisplayHTMLID(pInputHTMLID)
|
|
36
|
+
{
|
|
37
|
+
return `#DISPLAY-FOR-${pInputHTMLID}`;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Generates a tabular content display input ID based on the provided input HTML ID and row index.
|
|
42
|
+
*
|
|
43
|
+
* @param {string} pInputHTMLID - The input HTML ID.
|
|
44
|
+
* @param {number} pRowIndex - The row index.
|
|
45
|
+
* @returns {string} - The generated tabular content display input ID.
|
|
46
|
+
*/
|
|
47
|
+
getTabularContentDisplayInputID(pInputHTMLID, pRowIndex)
|
|
48
|
+
{
|
|
49
|
+
return `#DISPLAY-FOR-TABULAR-${pInputHTMLID}-${pRowIndex}`;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
54
|
+
* @param {Object} pInput - The input object.
|
|
55
|
+
* @param {any} pValue - The input value.
|
|
56
|
+
* @param {number} [pRowIndex] - (optional) The row index for tabular data.
|
|
57
|
+
*
|
|
58
|
+
* @return {void}
|
|
59
|
+
*/
|
|
60
|
+
handleContentUpdate(pView, pInput, pValue, pRowIndex)
|
|
61
|
+
{
|
|
62
|
+
let tmpContent = '';
|
|
63
|
+
if (pValue && (typeof(pValue) === 'string'))
|
|
64
|
+
{
|
|
65
|
+
tmpContent = pValue;
|
|
66
|
+
}
|
|
67
|
+
let tmpIsLocked = false;
|
|
68
|
+
//TODO: support more templates
|
|
69
|
+
//TODO: support "locked" content?
|
|
70
|
+
if (!tmpIsLocked && pInput.PictForm && pInput.PictForm.Template && (typeof(pInput.PictForm.Template) === 'string'))
|
|
71
|
+
{
|
|
72
|
+
tmpContent = this.pict.parseTemplate(pInput.PictForm.Template, Object.assign({}, this.pict, { Data: pView.getMarshalDestinationObject() }), null, [this], this);
|
|
73
|
+
}
|
|
74
|
+
if (!tmpContent && !tmpIsLocked && pInput.Default && (typeof(pInput.Default) === 'string'))
|
|
75
|
+
{
|
|
76
|
+
tmpContent = pInput.Default;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (pRowIndex != null)
|
|
80
|
+
{
|
|
81
|
+
pView.setDataTabularByHash(pInput.PictForm.GroupIndex, pInput.Hash, pRowIndex, tmpContent);
|
|
82
|
+
}
|
|
83
|
+
else
|
|
84
|
+
{
|
|
85
|
+
pView.setDataByInput(pInput, tmpContent);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Initializes the input element for the Pict provider select input.
|
|
91
|
+
*
|
|
92
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
93
|
+
* @param {Object} pGroup - The group object.
|
|
94
|
+
* @param {Object} pRow - The row object.
|
|
95
|
+
* @param {Object} pInput - The input object.
|
|
96
|
+
* @param {any} pValue - The input value.
|
|
97
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
98
|
+
* @param {string} pTransactionGUID - The transaction GUID for the event dispatch.
|
|
99
|
+
* @returns {boolean} - Returns true if the input element is successfully initialized, false otherwise.
|
|
100
|
+
*/
|
|
101
|
+
onInputInitialize(pView, pGroup, pRow, pInput, pValue, pHTMLSelector, pTransactionGUID)
|
|
102
|
+
{
|
|
103
|
+
this._handleInitialize(pView, pGroup, pRow, pInput, pValue, pHTMLSelector, null, pTransactionGUID);
|
|
104
|
+
return super.onInputInitialize(pView, pGroup, pRow, pInput, pValue, pHTMLSelector, pTransactionGUID);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Initializes a tabular input element.
|
|
109
|
+
*
|
|
110
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
111
|
+
* @param {Object} pGroup - The group object.
|
|
112
|
+
* @param {Object} pInput - The input object.
|
|
113
|
+
* @param {any} pValue - The input value.
|
|
114
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
115
|
+
* @param {number} pRowIndex - The index of the row.
|
|
116
|
+
* @param {string} pTransactionGUID - The transaction GUID for the event dispatch.
|
|
117
|
+
* @returns {any} - The result of the initialization.
|
|
118
|
+
*/
|
|
119
|
+
onInputInitializeTabular(pView, pGroup, pInput, pValue, pHTMLSelector, pRowIndex, pTransactionGUID)
|
|
120
|
+
{
|
|
121
|
+
this._handleInitialize(pView, pGroup, null, pInput, pValue, pHTMLSelector, pRowIndex, pTransactionGUID);
|
|
122
|
+
return super.onInputInitializeTabular(pView, pGroup, pInput, pValue, pHTMLSelector, pRowIndex, pTransactionGUID);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Initializes a tabular input element.
|
|
127
|
+
*
|
|
128
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
129
|
+
* @param {Object} pGroup - The group object.
|
|
130
|
+
* @param {Object|null} pRow - The row object.
|
|
131
|
+
* @param {Object} pInput - The input object.
|
|
132
|
+
* @param {any} pValue - The input value.
|
|
133
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
134
|
+
* @param {number|null} pRowIndex - The index of the row.
|
|
135
|
+
* @param {string} pTransactionGUID - The transaction GUID for the event dispatch.
|
|
136
|
+
* @returns {any} - The result of the initialization.
|
|
137
|
+
*/
|
|
138
|
+
_handleInitialize(pView, pGroup, pRow, pInput, pValue, pHTMLSelector, pRowIndex, pTransactionGUID)
|
|
139
|
+
{
|
|
140
|
+
if (pInput.PictForm && pInput.PictForm.Templates && typeof pInput.PictForm.Templates === 'object' && !Array.isArray(pInput.PictForm.Templates))
|
|
141
|
+
{
|
|
142
|
+
for (const [ tmpTemplateHash, tmpTemplate ] of Object.entries(pInput.PictForm.Templates))
|
|
143
|
+
{
|
|
144
|
+
if (this.pict.TemplateProvider.templates[tmpTemplateHash])
|
|
145
|
+
{
|
|
146
|
+
this.pict.log.error(`[Pict-Input-Templated] Attempt to override template with hash: ${tmpTemplateHash}; skipping.`);
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
this.pict.TemplateProvider.addTemplate(tmpTemplateHash, tmpTemplate, `Templated Input hash: ${pInput.Hash}`);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
this.handleContentUpdate(pView, pInput, pValue);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Marshals data to the form for the given input.
|
|
157
|
+
*
|
|
158
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
159
|
+
* @param {Object} pGroup - The group object.
|
|
160
|
+
* @param {Object} pRow - The row object.
|
|
161
|
+
* @param {Object} pInput - The input object.
|
|
162
|
+
* @param {any} pValue - The value to be marshaled.
|
|
163
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
164
|
+
* @param {string} pTransactionGUID - The transaction GUID for the event dispatch.
|
|
165
|
+
* @returns {boolean} - Returns true if the value is successfully marshaled to the form, otherwise false.
|
|
166
|
+
*/
|
|
167
|
+
onDataMarshalToForm(pView, pGroup, pRow, pInput, pValue, pHTMLSelector, pTransactionGUID)
|
|
168
|
+
{
|
|
169
|
+
this.pict.ContentAssignment.assignContent(this.getContentDisplayHTMLID(pInput.Macro.RawHTMLID), pValue);
|
|
170
|
+
return super.onDataMarshalToForm(pView, pGroup, pRow, pInput, pValue, pHTMLSelector, pTransactionGUID);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Marshals data to a form in tabular format.
|
|
175
|
+
*
|
|
176
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
177
|
+
* @param {Object} pGroup - The group object.
|
|
178
|
+
* @param {Object} pInput - The input object.
|
|
179
|
+
* @param {any} pValue - The value parameter.
|
|
180
|
+
* @param {string} pHTMLSelector - The HTML selector parameter.
|
|
181
|
+
* @param {number} pRowIndex - The row index parameter.
|
|
182
|
+
* @param {string} pTransactionGUID - The transaction GUID for the event dispatch.
|
|
183
|
+
* @returns {any} - The result of the data marshaling.
|
|
184
|
+
*/
|
|
185
|
+
onDataMarshalToFormTabular(pView, pGroup, pInput, pValue, pHTMLSelector, pRowIndex, pTransactionGUID)
|
|
186
|
+
{
|
|
187
|
+
this.pict.ContentAssignment.assignContent(this.getTabularContentDisplayInputID(pInput.Macro.RawHTMLID, pRowIndex), pValue);
|
|
188
|
+
return super.onDataMarshalToFormTabular(pView, pGroup, pInput, pValue, pHTMLSelector, pRowIndex, pTransactionGUID);
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* This input extension only responds to events
|
|
193
|
+
*
|
|
194
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
195
|
+
* @param {Object} pInput - The input object.
|
|
196
|
+
* @param {any} pValue - The value from AppData.
|
|
197
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
198
|
+
* @param {string} pEvent - The event hash that is expected to be triggered.
|
|
199
|
+
* @param {string} pTransactionGUID - The transaction GUID, if any.
|
|
200
|
+
* @returns {boolean} - Returns true.
|
|
201
|
+
*/
|
|
202
|
+
onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID)
|
|
203
|
+
{
|
|
204
|
+
const tmpPayload = typeof pEvent === 'string' ? pEvent : '';
|
|
205
|
+
let [ tmpType, tmpGroupHash ] = tmpPayload.split(':');
|
|
206
|
+
|
|
207
|
+
if (tmpType !== 'TriggerGroup')
|
|
208
|
+
{
|
|
209
|
+
return super.onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
const tmpTriggerGroupHashes = Array.isArray(pInput.PictForm?.TriggerGroupHash) ? pInput.PictForm.TriggerGroupHash : [pInput.PictForm?.TriggerGroupHash];
|
|
213
|
+
if (!pInput.PictForm || !pInput.PictForm.TriggerGroupHash || !tmpTriggerGroupHashes.includes(tmpGroupHash))
|
|
214
|
+
{
|
|
215
|
+
return super.onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID);
|
|
216
|
+
}
|
|
217
|
+
this.handleContentUpdate(pView, pInput, pValue);
|
|
218
|
+
pView.manualMarshalDataToViewByInput(pInput, pTransactionGUID);
|
|
219
|
+
return super.onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Handles events for the Pict-Provider-InputExtension.
|
|
224
|
+
*
|
|
225
|
+
* @param {import('../../views/Pict-View-DynamicForm.js')} pView - The view object.
|
|
226
|
+
* @param {Object} pInput - The input object.
|
|
227
|
+
* @param {any} pValue - The value from AppData.
|
|
228
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
229
|
+
* @param {number} pRowIndex - The row index of the tabular data.
|
|
230
|
+
* @param {string} pEvent - The event hash that is expected to be triggered.
|
|
231
|
+
* @param {string} pTransactionGUID - The transaction GUID, if any.
|
|
232
|
+
* @returns {boolean} - Returns true.
|
|
233
|
+
*/
|
|
234
|
+
onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID)
|
|
235
|
+
{
|
|
236
|
+
const tmpPayload = typeof pEvent === 'string' ? pEvent : '';
|
|
237
|
+
let [ tmpType, tmpGroupHash ] = tmpPayload.split(':');
|
|
238
|
+
|
|
239
|
+
if (tmpType !== 'TriggerGroup')
|
|
240
|
+
{
|
|
241
|
+
return super.onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID);
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
const tmpTriggerGroupHashes = Array.isArray(pInput.PictForm?.TriggerGroupHash) ? pInput.PictForm.TriggerGroupHash : [pInput.PictForm?.TriggerGroupHash];
|
|
245
|
+
if (!pInput.PictForm || !pInput.PictForm.TriggerGroupHash || !tmpTriggerGroupHashes.includes(tmpGroupHash))
|
|
246
|
+
{
|
|
247
|
+
return super.onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID);
|
|
248
|
+
}
|
|
249
|
+
this.handleContentUpdate(pView, pInput, pValue, pRowIndex);
|
|
250
|
+
pView.manualMarshalTabularDataToViewByInput(pInput, pRowIndex, pTransactionGUID);
|
|
251
|
+
return super.onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
module.exports = TemplatedInputProvider;
|
|
@@ -162,39 +162,82 @@ class CustomInputHandler extends libPictSectionInputExtension
|
|
|
162
162
|
}
|
|
163
163
|
|
|
164
164
|
/**
|
|
165
|
-
*
|
|
165
|
+
* This input extension only responds to events
|
|
166
166
|
*
|
|
167
167
|
* @param {Object} pView - The view object.
|
|
168
|
-
* @param {Object} pGroup - The group object.
|
|
169
|
-
* @param {Object} pRow - The row object.
|
|
170
168
|
* @param {Object} pInput - The input object.
|
|
171
|
-
* @param {any} pValue - The value
|
|
169
|
+
* @param {any} pValue - The value from AppData.
|
|
172
170
|
* @param {string} pHTMLSelector - The HTML selector.
|
|
173
|
-
* @param {string}
|
|
174
|
-
* @
|
|
171
|
+
* @param {string} pEvent - The event hash that is expected to be triggered.
|
|
172
|
+
* @param {string} pTransactionGUID - The transaction GUID, if any.
|
|
173
|
+
* @returns {boolean} - Returns true.
|
|
175
174
|
*/
|
|
176
|
-
|
|
175
|
+
onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID)
|
|
177
176
|
{
|
|
178
|
-
|
|
179
|
-
|
|
177
|
+
const tmpPayload = typeof pEvent === 'string' ? pEvent : '';
|
|
178
|
+
let [ tmpType, tmpGroupHash, tmpEvent, tmpInputHash, tmpEventGUID ] = tmpPayload.split(':');
|
|
179
|
+
if (!tmpEventGUID)
|
|
180
|
+
{
|
|
181
|
+
tmpEventGUID = this.pict.getUUID();
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
if (!pInput.PictForm.TemplatedEntityLookup || !('TriggerGroupHash' in pInput.PictForm.TemplatedEntityLookup))
|
|
185
|
+
{
|
|
186
|
+
return super.onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID);
|
|
187
|
+
}
|
|
188
|
+
let tmpAutoFillTriggerGroups = [pInput.PictForm.TemplatedEntityLookup];
|
|
189
|
+
|
|
190
|
+
for (let i = 0; i < tmpAutoFillTriggerGroups.length; i++)
|
|
191
|
+
{
|
|
192
|
+
let tmpAutoFillTriggerGroup = tmpAutoFillTriggerGroups[i];
|
|
193
|
+
if (tmpAutoFillTriggerGroup.TriggerGroupHash !== tmpGroupHash)
|
|
194
|
+
{
|
|
195
|
+
continue;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
this.assignDisplayEntityData(this.getContentDisplayHTMLID(pInput.Macro.RawHTMLID), pInput, pValue);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
return super.onAfterEventCompletion(pView, pInput, pValue, pHTMLSelector, pEvent, pTransactionGUID);
|
|
180
202
|
}
|
|
181
203
|
|
|
182
204
|
/**
|
|
183
|
-
*
|
|
205
|
+
* Handles events for the Pict-Provider-InputExtension.
|
|
184
206
|
*
|
|
185
207
|
* @param {Object} pView - The view object.
|
|
186
|
-
* @param {Object} pGroup - The group object.
|
|
187
208
|
* @param {Object} pInput - The input object.
|
|
188
|
-
* @param {any} pValue - The value
|
|
189
|
-
* @param {string} pHTMLSelector - The HTML selector
|
|
190
|
-
* @param {number} pRowIndex - The row index
|
|
191
|
-
* @param {string}
|
|
192
|
-
* @
|
|
209
|
+
* @param {any} pValue - The value from AppData.
|
|
210
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
211
|
+
* @param {number} pRowIndex - The row index of the tabular data.
|
|
212
|
+
* @param {string} pEvent - The event hash that is expected to be triggered.
|
|
213
|
+
* @param {string} pTransactionGUID - The transaction GUID, if any.
|
|
214
|
+
* @returns {boolean} - Returns true.
|
|
193
215
|
*/
|
|
194
|
-
|
|
216
|
+
onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID)
|
|
195
217
|
{
|
|
196
|
-
|
|
197
|
-
|
|
218
|
+
const tmpPayload = typeof pEvent === 'string' ? pEvent : '';
|
|
219
|
+
let [ tmpType, tmpGroupHash, tmpEvent, tmpInputHash, tmpEventGUID ] = tmpPayload.split(':');
|
|
220
|
+
if (!tmpEventGUID)
|
|
221
|
+
{
|
|
222
|
+
tmpEventGUID = this.pict.getUUID();
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
if (!pInput.PictForm.TemplatedEntityLookup || !('TriggerGroupHash' in pInput.PictForm.TemplatedEntityLookup))
|
|
226
|
+
{
|
|
227
|
+
return super.onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID);
|
|
228
|
+
}
|
|
229
|
+
let tmpAutoFillTriggerGroups = [pInput.PictForm.TemplatedEntityLookup];
|
|
230
|
+
for (const tmpAutoFillTriggerGroup of tmpAutoFillTriggerGroups)
|
|
231
|
+
{
|
|
232
|
+
if (tmpAutoFillTriggerGroup.TriggerGroupHash !== tmpGroupHash)
|
|
233
|
+
{
|
|
234
|
+
continue;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
this.assignDisplayEntityData(this.getTabularContentDisplayInputID(pInput.Macro.RawHTMLID, pRowIndex), pInput, pValue);
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
return super.onAfterEventTabularCompletion(pView, pInput, pValue, pHTMLSelector, pRowIndex, pEvent, pTransactionGUID);
|
|
198
241
|
}
|
|
199
242
|
}
|
|
200
243
|
|
|
@@ -932,6 +932,110 @@ class ManifestFactory extends libFableServiceProviderBase
|
|
|
932
932
|
// This is meant to be overloaded by the parent class
|
|
933
933
|
}
|
|
934
934
|
|
|
935
|
+
migrateAutofillTriggerGroupSolvers(pManifests)
|
|
936
|
+
{
|
|
937
|
+
for (const tmpManifestFactory of Object.values(pManifests))
|
|
938
|
+
{
|
|
939
|
+
const tmpManifest = tmpManifestFactory.manifest;
|
|
940
|
+
|
|
941
|
+
const tmpGatheredSolverExpressions = [];
|
|
942
|
+
|
|
943
|
+
for (const tmpSection of tmpManifest.Sections || [])
|
|
944
|
+
{
|
|
945
|
+
if (Array.isArray(tmpSection.Solvers))
|
|
946
|
+
{
|
|
947
|
+
for (let i = 0; i < tmpSection.Solvers.length; i++)
|
|
948
|
+
{
|
|
949
|
+
const tmpSolverEntry = tmpSection.Solvers[i];
|
|
950
|
+
const tmpSolverExpression = (typeof (tmpSolverEntry) === 'string') ? tmpSolverEntry : tmpSolverEntry.Expression;
|
|
951
|
+
if (typeof tmpSolverExpression === 'string' && tmpSolverExpression.startsWith('TriggerGroup:'))
|
|
952
|
+
{
|
|
953
|
+
tmpGatheredSolverExpressions.push(tmpSolverEntry);
|
|
954
|
+
// Remove it from the section solvers
|
|
955
|
+
tmpSection.Solvers.splice(i, 1);
|
|
956
|
+
--i;
|
|
957
|
+
}
|
|
958
|
+
}
|
|
959
|
+
}
|
|
960
|
+
for (const tmpGroup of tmpSection.Groups || [])
|
|
961
|
+
{
|
|
962
|
+
if (Array.isArray(tmpGroup.RecordSetSolvers))
|
|
963
|
+
{
|
|
964
|
+
for (let i = 0; i < tmpGroup.RecordSetSolvers.length; i++)
|
|
965
|
+
{
|
|
966
|
+
const tmpSolverEntry = tmpGroup.RecordSetSolvers[i];
|
|
967
|
+
const tmpSolverExpression = (typeof (tmpSolverEntry) === 'string') ? tmpSolverEntry : tmpSolverEntry.Expression;
|
|
968
|
+
if (typeof tmpSolverExpression === 'string' && tmpSolverExpression.startsWith('TriggerGroup:'))
|
|
969
|
+
{
|
|
970
|
+
tmpGatheredSolverExpressions.push(tmpSolverEntry);
|
|
971
|
+
// Remove it from the group solvers
|
|
972
|
+
tmpGroup.RecordSetSolvers.splice(i, 1);
|
|
973
|
+
--i;
|
|
974
|
+
}
|
|
975
|
+
}
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
}
|
|
979
|
+
for (const tmpTriggerGroupSolverEntry of tmpGatheredSolverExpressions)
|
|
980
|
+
{
|
|
981
|
+
const tmpSolverExpression = (typeof (tmpTriggerGroupSolverEntry) === 'string') ? tmpTriggerGroupSolverEntry : tmpTriggerGroupSolverEntry.Expression;
|
|
982
|
+
let [ tmpType, tmpTriggerGroupHash, tmpPrePost, tmpSimpleSolverExpression ] = tmpSolverExpression.split(':');
|
|
983
|
+
if (!tmpSimpleSolverExpression)
|
|
984
|
+
{
|
|
985
|
+
tmpSimpleSolverExpression = tmpPrePost;
|
|
986
|
+
tmpPrePost = 'post';
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
if (!tmpSimpleSolverExpression || tmpSimpleSolverExpression.trim() === '')
|
|
990
|
+
{
|
|
991
|
+
this.log.error(`Skipping migration of empty TriggerGroup solver expression in manifest [${tmpManifest.Scope}] for TriggerGroup [${tmpTriggerGroupHash}]`);
|
|
992
|
+
continue;
|
|
993
|
+
}
|
|
994
|
+
const tmpTriggerGroupDescriptor = Object.values(tmpManifest.Descriptors).find((pDescriptor) =>
|
|
995
|
+
{
|
|
996
|
+
if (!pDescriptor.PictForm?.AutofillTriggerGroup)
|
|
997
|
+
{
|
|
998
|
+
return false;
|
|
999
|
+
}
|
|
1000
|
+
/** @type {Array<any>} */
|
|
1001
|
+
const tmpTriggerGroups = Array.isArray(pDescriptor.PictForm.AutofillTriggerGroup) ? pDescriptor.PictForm.AutofillTriggerGroup : [pDescriptor.PictForm.AutofillTriggerGroup];
|
|
1002
|
+
return tmpTriggerGroups.some((pTriggerGroup) => pTriggerGroup.TriggerGroupHash === tmpTriggerGroupHash);
|
|
1003
|
+
});
|
|
1004
|
+
if (!tmpTriggerGroupDescriptor)
|
|
1005
|
+
{
|
|
1006
|
+
this.log.error(`Could not find descriptor for TriggerGroup [${tmpTriggerGroupHash}] in manifest [${tmpManifest.Scope}] while migrating solver expression: ${tmpSolverExpression}`);
|
|
1007
|
+
continue;
|
|
1008
|
+
}
|
|
1009
|
+
const tmpTriggerGroups = Array.isArray(tmpTriggerGroupDescriptor.PictForm.AutofillTriggerGroup) ? tmpTriggerGroupDescriptor.PictForm.AutofillTriggerGroup : [tmpTriggerGroupDescriptor.PictForm.AutofillTriggerGroup];
|
|
1010
|
+
const tmpTriggerGroup = tmpTriggerGroups.find((pTriggerGroup) => pTriggerGroup.TriggerGroupHash === tmpTriggerGroupHash);
|
|
1011
|
+
if (!tmpTriggerGroup)
|
|
1012
|
+
{
|
|
1013
|
+
this.log.error(`Could not find TriggerGroup entry for TriggerGroup [${tmpTriggerGroupHash}] in descriptor [${tmpTriggerGroupDescriptor.Hash}] while migrating solver expression: ${tmpSolverExpression}`);
|
|
1014
|
+
continue;
|
|
1015
|
+
}
|
|
1016
|
+
let tmpUpdatedTriggerGroupSolverEntry = tmpTriggerGroupSolverEntry;
|
|
1017
|
+
if (typeof tmpTriggerGroupSolverEntry === 'string')
|
|
1018
|
+
{
|
|
1019
|
+
tmpUpdatedTriggerGroupSolverEntry = tmpSimpleSolverExpression;
|
|
1020
|
+
}
|
|
1021
|
+
else
|
|
1022
|
+
{
|
|
1023
|
+
tmpTriggerGroupSolverEntry.Expression = tmpSimpleSolverExpression;
|
|
1024
|
+
}
|
|
1025
|
+
if (tmpPrePost.toLowerCase() === 'pre')
|
|
1026
|
+
{
|
|
1027
|
+
tmpTriggerGroup.PreSolvers = tmpTriggerGroup.PreSolvers || [];
|
|
1028
|
+
tmpTriggerGroup.PreSolvers.push(tmpUpdatedTriggerGroupSolverEntry);
|
|
1029
|
+
}
|
|
1030
|
+
else
|
|
1031
|
+
{
|
|
1032
|
+
tmpTriggerGroup.PostSolvers = tmpTriggerGroup.PostSolvers || [];
|
|
1033
|
+
tmpTriggerGroup.PostSolvers.push(tmpUpdatedTriggerGroupSolverEntry);
|
|
1034
|
+
}
|
|
1035
|
+
}
|
|
1036
|
+
}
|
|
1037
|
+
}
|
|
1038
|
+
|
|
935
1039
|
/**
|
|
936
1040
|
* Create some manifests with a "factory" pattern.
|
|
937
1041
|
*
|
|
@@ -983,6 +1087,7 @@ class ManifestFactory extends libFableServiceProviderBase
|
|
|
983
1087
|
this.tabularRowAddDescriptor(tmpManifest, tmpRecord);
|
|
984
1088
|
}
|
|
985
1089
|
}
|
|
1090
|
+
this.migrateAutofillTriggerGroupSolvers(tmpManifests);
|
|
986
1091
|
|
|
987
1092
|
this.log.info(`Generated ${Object.keys(tmpManifests).length} manifests.`);
|
|
988
1093
|
|
|
@@ -567,7 +567,7 @@ class PictViewDynamicForm extends libPictViewClass
|
|
|
567
567
|
}
|
|
568
568
|
|
|
569
569
|
/**
|
|
570
|
-
* Executes the solve operation for the dynamic views
|
|
570
|
+
* Executes the solve operation for the dynamic views.
|
|
571
571
|
*
|
|
572
572
|
* @returns {any} The result of the solve operation.
|
|
573
573
|
*/
|
|
@@ -578,11 +578,6 @@ class PictViewDynamicForm extends libPictViewClass
|
|
|
578
578
|
{
|
|
579
579
|
this.pict.providers.DynamicSolver.solveViews([this.Hash]);
|
|
580
580
|
}
|
|
581
|
-
|
|
582
|
-
if (this.options.AutoMarshalDataOnSolve)
|
|
583
|
-
{
|
|
584
|
-
this.marshalToView();
|
|
585
|
-
}
|
|
586
581
|
return super.onSolve();
|
|
587
582
|
}
|
|
588
583
|
|
|
@@ -1151,7 +1151,6 @@ class PictFormMetacontroller extends libPictViewClass
|
|
|
1151
1151
|
tmpViewConfiguration.Manifests = {};
|
|
1152
1152
|
}
|
|
1153
1153
|
tmpViewConfiguration.Manifests.Section = this.manifestDescription;
|
|
1154
|
-
tmpViewConfiguration.AutoMarshalDataOnSolve = this.options.AutoMarshalDataOnSolve;
|
|
1155
1154
|
this.pict.addView(tmpViewHash, tmpViewConfiguration, libPictViewDynamicForm);
|
|
1156
1155
|
}
|
|
1157
1156
|
|
|
@@ -1396,7 +1395,6 @@ module.exports.default_configuration = (
|
|
|
1396
1395
|
"DefaultRenderable": "Pict-Forms-Metacontainer",
|
|
1397
1396
|
"DefaultDestinationAddress": "#Pict-Form-Container",
|
|
1398
1397
|
|
|
1399
|
-
"AutoMarshalDataOnSolve": true,
|
|
1400
1398
|
"OnlyRenderDynamicSections": true,
|
|
1401
1399
|
|
|
1402
1400
|
"MetaTemplateHash": "Pict-Forms-Metatemplate",
|
|
@@ -20,6 +20,7 @@ declare class PictDynamicFormsSolverBehaviors extends libPictProvider {
|
|
|
20
20
|
setCSSSnippets(pCSSHideClass: any, pCSSSnippet: any): void;
|
|
21
21
|
cssHideClass: any;
|
|
22
22
|
addSolverFunction(pExpressionParser: any, pFunctionName: any, pFunctionAddress: any, pFunctionComment: any): void;
|
|
23
|
+
runSolvers(): any;
|
|
23
24
|
injectBehaviors(pExpressionParser: any): boolean;
|
|
24
25
|
/**
|
|
25
26
|
* @param {number|string} pSolverOrdinal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pict-Provider-DynamicFormSolverBehaviors.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-DynamicFormSolverBehaviors.js"],"names":[],"mappings":";AAaA;;;;;GAKG;AACH;IAeE,kBAAkB;IAClB,SADW,GAAG,CACF;IACZ,qFAAqF;IACrF,MADW,OAAO,MAAM,CAAC,GAAG;QAAE,WAAW,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,UAAU,CAAC,CAAA;KAAE,CACxE;IAIT,qBAAqB;IACrB,qBADW,MAAM,CAC4C;IAC7D,0BAAyD;IACzD,mBAA2H;IAE3H,qBAA0B;IAK3B,2DAMC;IAJA,kBAAsD;IAMvD,kHAaC;IAED,
|
|
1
|
+
{"version":3,"file":"Pict-Provider-DynamicFormSolverBehaviors.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-DynamicFormSolverBehaviors.js"],"names":[],"mappings":";AAaA;;;;;GAKG;AACH;IAeE,kBAAkB;IAClB,SADW,GAAG,CACF;IACZ,qFAAqF;IACrF,MADW,OAAO,MAAM,CAAC,GAAG;QAAE,WAAW,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,UAAU,CAAC,CAAA;KAAE,CACxE;IAIT,qBAAqB;IACrB,qBADW,MAAM,CAC4C;IAC7D,0BAAyD;IACzD,mBAA2H;IAE3H,qBAA0B;IAK3B,2DAMC;IAJA,kBAAsD;IAMvD,kHAaC;IAED,kBAGC;IAED,iDAuBC;IAED;;;OAGG;IACH,wCAHW,MAAM,GAAC,MAAM,YACb,OAAO,GAAC,MAAM,GAAC,MAAM,QAK/B;IAED;;OAEG;IACH,oCAFW,MAAM,GAAC,MAAM,QAKvB;IAED;;OAEG;IACH,qCAFW,MAAM,GAAC,MAAM,QAKvB;IAED;;;;OAIG;IACH,yCAJW,MAAM,GAAC,MAAM,GAEZ,OAAO,CAMlB;IAED,gDAGC;IAED,gEAUC;IAGD,wCAiBC;IAED,wCAiBC;IAED,+DAGC;IAED,+EAUC;IAED,uDAiBC;IAED,uDAiBC;IAED;;;;;;;OAOG;IACH,kCANW,MAAM,cACN,MAAM,WACN,MAAM,GAAC,MAAM,qBACb,OAAO,GAAC,MAAM,WAoDxB;IAGD,iEAqBC;IAED,mFA2BC;IAED,kGA0BC;IAED;;;;;;;;OAQG;IACH,mCAPW,MAAM,cACN,MAAM,UACN,MAAM,gBACN,MAAM,iBACN,MAAM,GACJ,OAAO,CAmCnB;IAED;;;;;;;;;;;OAWG;IACH,0CAVW,MAAM,cACN,MAAM,cAEN,MAAM,aADN,MAAM,UAEN,MAAM,gBACN,MAAM,iBACN,MAAM,qBACN,MAAM,GACJ,OAAO,CA0CnB;IAED;;;;;;OAMG;IACH,oCANW,KAAK,CAAC,WAAW,CAAC,UAClB,MAAM,iBACN,MAAM,GAEJ,OAAO,CA2BnB;IAED,+BAWC;CACD;;;;;AAphBD,kCAAkC;AAClC,6CADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAQ3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pict-Provider-DynamicInputEvents.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-DynamicInputEvents.js"],"names":[],"mappings":";AAaA;;GAEG;AACH;IAeC;;;;;;OAMG;IACH,yCAHW,MAAM,WACN,GAAG,QAyDb;IAED;;;;;;;OAOG;IACH,mCAJW,MAAM,UACN,MAAM,qBACN,MAAM,QAgDhB;IAED;;;;;;;;OAQG;IACH,+BANW,OAAO,gCAAgC,CAAC,eACxC,MAAM,eACN,MAAM,aACN,MAAM,WACN,GAAG,
|
|
1
|
+
{"version":3,"file":"Pict-Provider-DynamicInputEvents.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-DynamicInputEvents.js"],"names":[],"mappings":";AAaA;;GAEG;AACH;IAeC;;;;;;OAMG;IACH,yCAHW,MAAM,WACN,GAAG,QAyDb;IAED;;;;;;;OAOG;IACH,mCAJW,MAAM,UACN,MAAM,qBACN,MAAM,QAgDhB;IAED;;;;;;;;OAQG;IACH,+BANW,OAAO,gCAAgC,CAAC,eACxC,MAAM,eACN,MAAM,aACN,MAAM,WACN,GAAG,QA6Db;IAED;;;;;;;;;OASG;IACH,2CANW,MAAM,eACN,MAAM,aACN,MAAM,UACN,MAAM,qBACN,MAAM,QA4ChB;CACD;;;;;AAhRD,kCAAkC;AAClC,6CADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAS3B"}
|
|
@@ -10,6 +10,7 @@ declare class PictDynamicSolver extends libPictProvider {
|
|
|
10
10
|
instantiateServiceProviderIfNotExists: (hash: string) => any;
|
|
11
11
|
ExpressionParser: any;
|
|
12
12
|
};
|
|
13
|
+
_RunSolversRegex: RegExp;
|
|
13
14
|
logSolveOutcome(pSolveOutcome: any): void;
|
|
14
15
|
/**
|
|
15
16
|
* Prepares the solver results map by ensuring it has the necessary structure.
|
|
@@ -44,6 +45,37 @@ declare class PictDynamicSolver extends libPictProvider {
|
|
|
44
45
|
* @returns {object|undefined} - The solver object if it passes the checks, otherwise undefined.
|
|
45
46
|
*/
|
|
46
47
|
checkSolver(pSolver: string | object, pFiltered?: boolean, pOrdinal?: number): object | undefined;
|
|
48
|
+
/** @typedef {{ Ordinal: number, Expression: string } | string} Solver */
|
|
49
|
+
/**
|
|
50
|
+
* Execute a set of adhoc solvers.
|
|
51
|
+
*
|
|
52
|
+
* @param {import('../views/Pict-View-DynamicForm.js')} pView - The dynamic view to execute the solvers against.
|
|
53
|
+
* @param {Array<Solver>} pSolvers - An array of solvers to execute.
|
|
54
|
+
* @param {string} pReason - The reason for executing the solvers.
|
|
55
|
+
*/
|
|
56
|
+
executeSolvers(pView: import("../views/Pict-View-DynamicForm.js"), pSolvers: Array<string | {
|
|
57
|
+
Ordinal: number;
|
|
58
|
+
Expression: string;
|
|
59
|
+
}>, pReason: string): void;
|
|
60
|
+
lastAdhocSolveOutcome: {
|
|
61
|
+
SolverResultsMap: {};
|
|
62
|
+
StartTimeStamp: number;
|
|
63
|
+
SolveOrdinals: {};
|
|
64
|
+
EndTimeStamp: number;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Runs each Adhoc solver formulae for a dynamic view group at a given ordinal.
|
|
68
|
+
*
|
|
69
|
+
* Or for all ordinals if no ordinal is passed.
|
|
70
|
+
*
|
|
71
|
+
* @param {import('../views/Pict-View-DynamicForm.js')} pView - The dynamic view to execute the solvers against.
|
|
72
|
+
* @param {Array<string>} pAdhocSolverArray - An array of Solvers from the groups to solve.
|
|
73
|
+
* @param {string} pReason - The reason for executing the solvers.
|
|
74
|
+
* @param {number} pOrdinal - The ordinal value to filter to. Optional.
|
|
75
|
+
* @param {Object} pSolverResultsMap - The solver results map.
|
|
76
|
+
* @param {boolean} [pPreventSolverCycles=false] - Whether to prevent solver cycles.
|
|
77
|
+
*/
|
|
78
|
+
executeAdhocSolvers(pView: import("../views/Pict-View-DynamicForm.js"), pAdhocSolverArray: Array<string>, pReason: string, pOrdinal: number, pSolverResultsMap: any, pPreventSolverCycles?: boolean): void;
|
|
47
79
|
/**
|
|
48
80
|
* Runs each RecordSet solver formulae for a dynamic view group at a given ordinal.
|
|
49
81
|
*
|
|
@@ -52,16 +84,18 @@ declare class PictDynamicSolver extends libPictProvider {
|
|
|
52
84
|
* @param {array} pGroupSolverArray - An array of Solvers from the groups to solve.
|
|
53
85
|
* @param {number} pOrdinal - The ordinal value to filter to. Optional.
|
|
54
86
|
* @param {Object} pSolverResultsMap - The solver results map.
|
|
87
|
+
* @param {boolean} [pPreventSolverCycles=false] - Whether to prevent solver cycles.
|
|
55
88
|
*/
|
|
56
|
-
executeGroupSolvers(pGroupSolverArray: any[], pOrdinal: number, pSolverResultsMap: any): void;
|
|
89
|
+
executeGroupSolvers(pGroupSolverArray: any[], pOrdinal: number, pSolverResultsMap: any, pPreventSolverCycles?: boolean): void;
|
|
57
90
|
/**
|
|
58
91
|
* Executes the section solvers at a given ordinal (or all if no ordinal is passed).
|
|
59
92
|
*
|
|
60
93
|
* @param {Array} pViewSectionSolverArray - The array of view section solvers.
|
|
61
94
|
* @param {number} pOrdinal - The ordinal value.
|
|
62
95
|
* @param {Object} pSolverResultsMap - The solver results map.
|
|
96
|
+
* @param {boolean} [pPreventSolverCycles=false] - Whether to prevent solver cycles.
|
|
63
97
|
*/
|
|
64
|
-
executeSectionSolvers(pViewSectionSolverArray: any[], pOrdinal: number, pSolverResultsMap: any): void;
|
|
98
|
+
executeSectionSolvers(pViewSectionSolverArray: any[], pOrdinal: number, pSolverResultsMap: any, pPreventSolverCycles?: boolean): void;
|
|
65
99
|
/**
|
|
66
100
|
* Executes the view solvers for the given array of view hashes.
|
|
67
101
|
*
|
|
@@ -101,8 +135,10 @@ declare class PictDynamicSolver extends libPictProvider {
|
|
|
101
135
|
* leaves on the tree.
|
|
102
136
|
|
|
103
137
|
* @param {Array|string[]} [pViewHashes] - An optional array of view hashes to solve. If not provided, all views in the fable will be solved.
|
|
138
|
+
* @param {boolean} [pPreventSolverCycles] - An optional context string for the solve operation.
|
|
139
|
+
* TODO: make sure you can't cycle with the same solve context - new solver method to invoke this
|
|
104
140
|
*/
|
|
105
|
-
solveViews(pViewHashes?: any[] | string[]): void;
|
|
141
|
+
solveViews(pViewHashes?: any[] | string[], pPreventSolverCycles?: boolean): void;
|
|
106
142
|
lastSolveOutcome: {
|
|
107
143
|
SolverResultsMap: {};
|
|
108
144
|
StartTimeStamp: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pict-Provider-DynamicSolver.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-DynamicSolver.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Pict-Provider-DynamicSolver.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-DynamicSolver.js"],"names":[],"mappings":";AAgCA;;GAEG;AACH;IAcE,6BAA6B;IAC7B,MADW,OAAO,MAAM,CAAC,CAChB;IACT,uHAAuH;IACvH,OADW,OAAO,MAAM,CAAC,GAAG;QAAE,qCAAqC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,CAAC;QAAC,gBAAgB,EAAE,GAAG,CAAA;KAAE,CACzG;IAQV,yBAA0C;IAwB3C,0CAsBC;IAED;;;;;MAKE;IACF,qDAgBC;IAED;;;;;OAKG;IACH,oDA8CC;IAED;;;;;;OAMG;IACH,6BAJW,MAAM,YACN,OAAO,GACL,GAAG,CAyBf;IAED;;;;;;;;;OASG;IACH,qBALW,MAAM,GAAC,MAAM,cACb,OAAO,aACP,MAAM,GACJ,MAAM,GAAC,SAAS,CA8B5B;IAED,yEAAyE;IAEzE;;;;;;OAMG;IACH,sBAJW,OAAO,mCAAmC,CAAC,YAC3C,KAAK;iBANS,MAAM;oBAAc,MAAM;MAM3B,WACb,MAAM,QAmDhB;IADA;;;;;MAA4C;IAG7C;;;;;;;;;;;OAWG;IACH,2BAPW,OAAO,mCAAmC,CAAC,qBAC3C,KAAK,CAAC,MAAM,CAAC,WACb,MAAM,YACN,MAAM,iDAEN,OAAO,QAyCjB;IAED;;;;;;;;;OASG;IACH,wDAJW,MAAM,iDAEN,OAAO,QAoEjB;IAED;;;;;;;OAOG;IACH,gEAJW,MAAM,iDAEN,OAAO,QA0CjB;IAED;;;;;;OAMG;IACH,sDAHW,MAAM,gCA2BhB;IAED;;;;;;;;OAQG;IACH,gCAJW,MAAM,yBAWhB;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,yBAJW,QAAM,MAAM,EAAE,yBACd,OAAO,QA+FjB;IADA;;;;;;MAAuC;CAExC;;;;;AAtoBD,kCAAkC;AAClC,6CADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAS3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pict-Provider-MetatemplateGenerator.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-MetatemplateGenerator.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Pict-Provider-MetatemplateGenerator.d.ts","sourceRoot":"","sources":["../../../source/providers/Pict-Provider-MetatemplateGenerator.js"],"names":[],"mappings":";AAiDA;;;GAGG;AACH;IAcE,6BAA6B;IAC7B,MADW,OAAO,MAAM,CAAC,CAChB;IAIT,qCAAqC;IACrC,kBADW,sBAAsB,CACZ;IAErB,2BAAwC;IAGzC,wCAIC;IAED,uCAYC;IAED;;;;;;;OAOG;IACH,kEAJW,MAAM,2BACN,MAAM,GACJ,MAAM,CAmBlB;IAED;;;;;;;OAOG;IACH,+DAJW,MAAM,oBACN,MAAM,GACJ,MAAM,CAKlB;IAED;;;;;;;;OAQG;IACH,6DALW,MAAM,cACN,MAAM,oBACN,MAAM,GACJ,MAAM,CA4BlB;IAED;;;;;;;;;;OAUG;IACH,oEAPW,MAAM,cACN,MAAM,oBACN,MAAM,eACN,MAAM,aACN,MAAM,GACJ,MAAM,CAqDlB;IAED;;;;;;;;OAQG;IACH,qEALW,MAAM,cACN,MAAM,oBACN,MAAM,GACJ,MAAM,CA4BlB;IAED;;;;;;OAMG;IACH,qDA2BC;IAED;;;;;;OAMG;IACH,wCA8BC;CACD;;;;;;AA1VD,kCAAkC;AAClC,6CADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAS3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pict-Provider-Input-AutofillTriggerGroup.d.ts","sourceRoot":"","sources":["../../../../source/providers/inputs/Pict-Provider-Input-AutofillTriggerGroup.js"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH;IAWE,6BAA6B;IAC7B,MADW,OAAO,MAAM,CAAC,CAChB;IAKV,oDAYC;IAED,sGAwBC;IAED,6HAwBC;IAGD;;;;;;;;;OASG;IACH,8CALW,GAAG,iBACH,MAAM,oBACN,MAAM,GACJ,GAAG,
|
|
1
|
+
{"version":3,"file":"Pict-Provider-Input-AutofillTriggerGroup.d.ts","sourceRoot":"","sources":["../../../../source/providers/inputs/Pict-Provider-Input-AutofillTriggerGroup.js"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH;IAWE,6BAA6B;IAC7B,MADW,OAAO,MAAM,CAAC,CAChB;IAKV,oDAYC;IAED,sGAwBC;IAED,6HAwBC;IAGD;;;;;;;;;OASG;IACH,8CALW,GAAG,iBACH,MAAM,oBACN,MAAM,GACJ,GAAG,CA8Bf;IAED;;;;;;;;;;OAUG;IACH,qDANW,GAAG,iBACH,MAAM,aACN,MAAM,oBACN,MAAM,GACJ,GAAG,CA8Bf;CAmID"}
|