@openmrs/ngx-formentry 18.0.1-pre.487 → 19.0.1-pre.492
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/esm2022/change-tracking/control-relation.mjs +1 -3
- package/esm2022/components/custom-component-wrapper/custom-component-wrapper.module.mjs +22 -0
- package/esm2022/components/custom-control-wrapper/custom-control-wrapper.module.mjs +23 -0
- package/esm2022/form-entry/form-entry.module.mjs +6 -12
- package/esm2022/form-entry/form-factory/control-relations.factory.mjs +1 -1
- package/esm2022/form-entry/form-factory/form-node.mjs +1 -1
- package/esm2022/form-entry/form-factory/form.factory.mjs +6 -7
- package/esm2022/form-entry/form-factory/question.factory.mjs +2 -2
- package/esm2022/form-entry/helpers/js-expression-helper.mjs +16 -8
- package/esm2022/form-entry/services/form-schema-compiler.service.mjs +19 -5
- package/esm2022/form-entry/value-adapters/obs.adapter.mjs +4 -5
- package/esm2022/form-entry/value-adapters/order.adapter.mjs +4 -4
- package/esm2022/form-entry/value-adapters/person-attribute.adapter.mjs +5 -5
- package/esm2022/lib/index.mjs +2 -2
- package/fesm2022/openmrs-ngx-formentry.mjs +51 -37
- package/fesm2022/openmrs-ngx-formentry.mjs.map +1 -1
- package/form-entry/form-entry.module.d.ts +2 -2
- package/form-entry/form-factory/form.factory.d.ts +2 -2
- package/form-entry/helpers/js-expression-helper.d.ts +1 -1
- package/form-entry/services/form-schema-compiler.service.d.ts +2 -0
- package/form-entry/value-adapters/obs.adapter.d.ts +0 -1
- package/form-entry/value-adapters/person-attribute.adapter.d.ts +3 -3
- package/lib/index.d.ts +1 -1
- package/package.json +1 -1
- package/esm2022/components/custom-component-wrapper/custom-component-wrapper..module.mjs +0 -22
- package/esm2022/components/custom-control-wrapper/custom-control-wrapper..module.mjs +0 -23
- /package/components/custom-component-wrapper/{custom-component-wrapper..module.d.ts → custom-component-wrapper.module.d.ts} +0 -0
- /package/components/custom-control-wrapper/{custom-control-wrapper..module.d.ts → custom-control-wrapper.module.d.ts} +0 -0
|
@@ -178,8 +178,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
178
178
|
type: Injectable
|
|
179
179
|
}] });
|
|
180
180
|
|
|
181
|
-
// import { CanHide } from '../form-entry/control-hiders-disablers/can-hide';
|
|
182
|
-
// import { CanDisable } from '../form-entry/control-hiders-disablers/can-disable';
|
|
183
181
|
class ControlRelation {
|
|
184
182
|
constructor(control, relatedTo) {
|
|
185
183
|
this._control = control;
|
|
@@ -1827,14 +1825,21 @@ class JsExpressionHelper {
|
|
|
1827
1825
|
formatDate(value, format, offset) {
|
|
1828
1826
|
format = format || 'yyyy-MM-dd';
|
|
1829
1827
|
offset = offset || '+0300';
|
|
1830
|
-
if (
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1828
|
+
if (value === null || value === undefined || value === '') {
|
|
1829
|
+
throw new Error('DateFormatException: value passed is not a valid date');
|
|
1830
|
+
}
|
|
1831
|
+
const date = moment(value);
|
|
1832
|
+
if (!date.isValid()) {
|
|
1833
|
+
throw new Error('DateFormatException: value passed is not a valid date');
|
|
1834
|
+
}
|
|
1835
|
+
if (offset) {
|
|
1836
|
+
date.utcOffset(offset);
|
|
1835
1837
|
}
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
+
const momentFormat = format
|
|
1839
|
+
.replace(/yyyy/g, 'YYYY')
|
|
1840
|
+
.replace(/yy/g, 'YY')
|
|
1841
|
+
.replace(/dd/g, 'DD');
|
|
1842
|
+
return date.format(momentFormat);
|
|
1838
1843
|
}
|
|
1839
1844
|
arrayContainsAny(array, members) {
|
|
1840
1845
|
if (Array.isArray(members)) {
|
|
@@ -10654,6 +10659,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10654
10659
|
|
|
10655
10660
|
class FormSchemaCompiler {
|
|
10656
10661
|
constructor() { }
|
|
10662
|
+
isTestEnv() {
|
|
10663
|
+
const globalRef = typeof globalThis !== 'undefined'
|
|
10664
|
+
? globalThis
|
|
10665
|
+
: typeof window !== 'undefined'
|
|
10666
|
+
? window
|
|
10667
|
+
: {};
|
|
10668
|
+
return (typeof globalRef.jasmine !== 'undefined' ||
|
|
10669
|
+
typeof globalRef.__karma__ !== 'undefined');
|
|
10670
|
+
}
|
|
10671
|
+
logError(message, payload) {
|
|
10672
|
+
if (!this.isTestEnv()) {
|
|
10673
|
+
console.error(message, payload);
|
|
10674
|
+
}
|
|
10675
|
+
}
|
|
10657
10676
|
compileFormSchema(formSchema, referencedComponents) {
|
|
10658
10677
|
// get all referenced forms
|
|
10659
10678
|
const refForms = this.getReferencedForms(formSchema, referencedComponents);
|
|
@@ -10829,7 +10848,7 @@ class FormSchemaCompiler {
|
|
|
10829
10848
|
_.each(placeHoldersArray, (placeHolder) => {
|
|
10830
10849
|
const referencedObject = this.getReferencedObject(placeHolder.reference, keyValReferencedForms);
|
|
10831
10850
|
if (_.isEmpty(referencedObject)) {
|
|
10832
|
-
|
|
10851
|
+
this.logError('Form compile: Error finding referenced object', placeHolder.reference);
|
|
10833
10852
|
}
|
|
10834
10853
|
else {
|
|
10835
10854
|
placeHolder = this.fillPlaceholderObject(placeHolder, referencedObject);
|
|
@@ -10861,11 +10880,11 @@ class FormSchemaCompiler {
|
|
|
10861
10880
|
}
|
|
10862
10881
|
getReferencedObject(referenceData, keyValReferencedForms) {
|
|
10863
10882
|
if (_.isEmpty(referenceData.form)) {
|
|
10864
|
-
|
|
10883
|
+
this.logError('Form compile: reference missing form attribute', referenceData);
|
|
10865
10884
|
return;
|
|
10866
10885
|
}
|
|
10867
10886
|
if (_.isEmpty(keyValReferencedForms[referenceData.form])) {
|
|
10868
|
-
|
|
10887
|
+
this.logError('Form compile: referenced form alias not found', referenceData);
|
|
10869
10888
|
return;
|
|
10870
10889
|
}
|
|
10871
10890
|
if (!_.isEmpty(referenceData.questionId)) {
|
|
@@ -10877,7 +10896,7 @@ class FormSchemaCompiler {
|
|
|
10877
10896
|
if (!_.isEmpty(referenceData.page)) {
|
|
10878
10897
|
return this.getPageInSchemaByLabel(keyValReferencedForms[referenceData.form], referenceData.page);
|
|
10879
10898
|
}
|
|
10880
|
-
|
|
10899
|
+
this.logError('Form compile: Unsupported reference type', referenceData.reference);
|
|
10881
10900
|
}
|
|
10882
10901
|
getReferencedForms(formSchema, formSchemasLookupArray) {
|
|
10883
10902
|
const referencedForms = formSchema.referencedForms;
|
|
@@ -12209,7 +12228,7 @@ class QuestionFactory {
|
|
|
12209
12228
|
return question;
|
|
12210
12229
|
}
|
|
12211
12230
|
getSchemaQuestions(schema) {
|
|
12212
|
-
const listQuestions =
|
|
12231
|
+
const listQuestions = [];
|
|
12213
12232
|
this.getQuestions(schema, listQuestions);
|
|
12214
12233
|
return listQuestions;
|
|
12215
12234
|
}
|
|
@@ -12546,9 +12565,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
12546
12565
|
}], ctorParameters: () => [] });
|
|
12547
12566
|
|
|
12548
12567
|
class FormFactory {
|
|
12549
|
-
constructor(controlService,
|
|
12568
|
+
constructor(controlService, questionFactory, controlRelationsFactory, translate) {
|
|
12550
12569
|
this.controlService = controlService;
|
|
12551
|
-
this.
|
|
12570
|
+
this.questionFactory = questionFactory;
|
|
12552
12571
|
this.controlRelationsFactory = controlRelationsFactory;
|
|
12553
12572
|
this.translate = translate;
|
|
12554
12573
|
this.nodeIndex = 0;
|
|
@@ -12559,7 +12578,7 @@ class FormFactory {
|
|
|
12559
12578
|
};
|
|
12560
12579
|
}
|
|
12561
12580
|
createForm(schema, dataSource) {
|
|
12562
|
-
const form = new Form(schema, this, this.
|
|
12581
|
+
const form = new Form(schema, this, this.questionFactory);
|
|
12563
12582
|
if (dataSource) {
|
|
12564
12583
|
for (const key in dataSource) {
|
|
12565
12584
|
if (dataSource.hasOwnProperty(key)) {
|
|
@@ -12567,7 +12586,7 @@ class FormFactory {
|
|
|
12567
12586
|
}
|
|
12568
12587
|
}
|
|
12569
12588
|
}
|
|
12570
|
-
const question = this.
|
|
12589
|
+
const question = this.questionFactory.createQuestionModel(schema, form);
|
|
12571
12590
|
form.rootNode = this.createNode(question, null, null, form);
|
|
12572
12591
|
this.buildRelations(form.rootNode);
|
|
12573
12592
|
form.updateHiddenDisabledStateForAllControls();
|
|
@@ -12656,7 +12675,7 @@ class FormFactory {
|
|
|
12656
12675
|
removeArrayNodeChild(index, node) {
|
|
12657
12676
|
const nodeToRemove = node.children[index];
|
|
12658
12677
|
node.children.splice(index, 1);
|
|
12659
|
-
if (node.control !== null
|
|
12678
|
+
if (node.control !== null && node.control !== undefined) {
|
|
12660
12679
|
if (node.control instanceof AfeFormArray) {
|
|
12661
12680
|
const control = node.control;
|
|
12662
12681
|
const controlIndexToRemove = control.controls.indexOf(nodeToRemove.control);
|
|
@@ -13304,9 +13323,9 @@ class ObsValueAdapter {
|
|
|
13304
13323
|
(node.question.extras.type === 'obs' ||
|
|
13305
13324
|
(node.question.extras.type === 'complex-obs-child' &&
|
|
13306
13325
|
node.question.extras.questionOptions.obsField === 'value')) &&
|
|
13307
|
-
node.question.extras.questionOptions.rendering !== 'multiCheckbox'
|
|
13308
|
-
node.question.extras.questionOptions.rendering !== 'checkbox'
|
|
13309
|
-
node.question.extras.questionOptions.rendering !== 'multi-select') {
|
|
13326
|
+
node.question.extras.questionOptions.rendering !== 'multiCheckbox' &&
|
|
13327
|
+
node.question.extras.questionOptions.rendering !== 'checkbox' &&
|
|
13328
|
+
node.question.extras.questionOptions.rendering !== 'multi-select')) {
|
|
13310
13329
|
const obs = _.find(payload, (o) => {
|
|
13311
13330
|
return o.concept.uuid === node.question.extras.questionOptions.concept;
|
|
13312
13331
|
});
|
|
@@ -13858,7 +13877,7 @@ class OrderValueAdapter {
|
|
|
13858
13877
|
}
|
|
13859
13878
|
return payload;
|
|
13860
13879
|
}
|
|
13861
|
-
_createPayloadOrder(orderConcept,
|
|
13880
|
+
_createPayloadOrder(orderConcept, questionExtras) {
|
|
13862
13881
|
const order = {
|
|
13863
13882
|
concept: '',
|
|
13864
13883
|
type: '',
|
|
@@ -13866,9 +13885,9 @@ class OrderValueAdapter {
|
|
|
13866
13885
|
careSetting: ''
|
|
13867
13886
|
};
|
|
13868
13887
|
order.concept = orderConcept;
|
|
13869
|
-
order.type =
|
|
13888
|
+
order.type = questionExtras.questionOptions.orderType;
|
|
13870
13889
|
order.orderer = this.provider;
|
|
13871
|
-
order.careSetting =
|
|
13890
|
+
order.careSetting = questionExtras.questionOptions.orderSettingUuid;
|
|
13872
13891
|
// delete orderer if provider not provided
|
|
13873
13892
|
if (order.orderer === '') {
|
|
13874
13893
|
delete order.orderer;
|
|
@@ -14362,7 +14381,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
14362
14381
|
type: Injectable
|
|
14363
14382
|
}], ctorParameters: () => [{ type: OrderValueAdapter }, { type: DiagnosisValueAdapter }, { type: ObsValueAdapter }] });
|
|
14364
14383
|
|
|
14365
|
-
class
|
|
14384
|
+
class PersonAttributeAdapter {
|
|
14366
14385
|
constructor() { }
|
|
14367
14386
|
generateFormPayload(form) {
|
|
14368
14387
|
return this.generateNodePayload(form.rootNode);
|
|
@@ -14440,10 +14459,10 @@ class PersonAttribuAdapter {
|
|
|
14440
14459
|
});
|
|
14441
14460
|
}
|
|
14442
14461
|
}
|
|
14443
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
14444
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
14462
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonAttributeAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
14463
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonAttributeAdapter }); }
|
|
14445
14464
|
}
|
|
14446
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
14465
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonAttributeAdapter, decorators: [{
|
|
14447
14466
|
type: Injectable
|
|
14448
14467
|
}], ctorParameters: () => [] });
|
|
14449
14468
|
|
|
@@ -14981,7 +15000,6 @@ class FormEntryModule {
|
|
|
14981
15000
|
InputModule,
|
|
14982
15001
|
DateTimePickerModule,
|
|
14983
15002
|
NgxRemoteSelectModule,
|
|
14984
|
-
// NoopAnimationsModule,
|
|
14985
15003
|
RemoteFileUploadModule,
|
|
14986
15004
|
CheckboxModule,
|
|
14987
15005
|
RadioModule,
|
|
@@ -15008,12 +15026,11 @@ class FormEntryModule {
|
|
|
15008
15026
|
FormSchemaCompiler,
|
|
15009
15027
|
FormFactory,
|
|
15010
15028
|
QuestionFactory,
|
|
15011
|
-
ValidationFactory,
|
|
15012
15029
|
ControlRelationsFactory,
|
|
15013
15030
|
ObsAdapterHelper,
|
|
15014
15031
|
ObsValueAdapter,
|
|
15015
15032
|
EncounterAdapter,
|
|
15016
|
-
|
|
15033
|
+
PersonAttributeAdapter,
|
|
15017
15034
|
OrderValueAdapter,
|
|
15018
15035
|
DiagnosisValueAdapter,
|
|
15019
15036
|
DebugModeService,
|
|
@@ -15026,7 +15043,6 @@ class FormEntryModule {
|
|
|
15026
15043
|
InputModule,
|
|
15027
15044
|
DateTimePickerModule,
|
|
15028
15045
|
NgxRemoteSelectModule,
|
|
15029
|
-
// NoopAnimationsModule,
|
|
15030
15046
|
RemoteFileUploadModule,
|
|
15031
15047
|
CheckboxModule,
|
|
15032
15048
|
RadioModule,
|
|
@@ -15053,7 +15069,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
15053
15069
|
InputModule,
|
|
15054
15070
|
DateTimePickerModule,
|
|
15055
15071
|
NgxRemoteSelectModule,
|
|
15056
|
-
// NoopAnimationsModule,
|
|
15057
15072
|
RemoteFileUploadModule,
|
|
15058
15073
|
CheckboxModule,
|
|
15059
15074
|
RadioModule,
|
|
@@ -15087,12 +15102,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
15087
15102
|
FormSchemaCompiler,
|
|
15088
15103
|
FormFactory,
|
|
15089
15104
|
QuestionFactory,
|
|
15090
|
-
ValidationFactory,
|
|
15091
15105
|
ControlRelationsFactory,
|
|
15092
15106
|
ObsAdapterHelper,
|
|
15093
15107
|
ObsValueAdapter,
|
|
15094
15108
|
EncounterAdapter,
|
|
15095
|
-
|
|
15109
|
+
PersonAttributeAdapter,
|
|
15096
15110
|
OrderValueAdapter,
|
|
15097
15111
|
DiagnosisValueAdapter,
|
|
15098
15112
|
DebugModeService,
|
|
@@ -15121,5 +15135,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
15121
15135
|
* Generated bundle index. Do not edit.
|
|
15122
15136
|
*/
|
|
15123
15137
|
|
|
15124
|
-
export { AfeControlType, AfeFormArray, AfeFormControl, AfeFormGroup, AfeNgSelectComponent, CheckBoxQuestion, ConditionalValidationModel, ControlRelationsFactory, DataSources, DatePickerComponent, DateQuestion, DateTimePickerComponent, DateTimePickerModule, DateValidationModel, EncounterAdapter, ErrorRendererComponent, FileUploadQuestion, Form, FormControlService, FormEntryModule, FormErrorsService, FormFactory, FormRendererComponent, FormSchemaCompiler, HistoricalEncounterDataService, JsExpressionHelper, JsExpressionValidationModel, MaxValidationModel, MinValidationModel, ModalComponent, MomentPipe, MultiSelectQuestion, NestedQuestion, NgxDateTimePickerModule, NgxDatetimeComponent, ObsAdapterHelper, ObsValueAdapter, Option, OrderValueAdapter, Pair, PatientIdentifierAdapter,
|
|
15138
|
+
export { AfeControlType, AfeFormArray, AfeFormControl, AfeFormGroup, AfeNgSelectComponent, CheckBoxQuestion, ConditionalValidationModel, ControlRelationsFactory, DataSources, DatePickerComponent, DateQuestion, DateTimePickerComponent, DateTimePickerModule, DateValidationModel, EncounterAdapter, ErrorRendererComponent, FileUploadQuestion, Form, FormControlService, FormEntryModule, FormErrorsService, FormFactory, FormRendererComponent, FormSchemaCompiler, HistoricalEncounterDataService, JsExpressionHelper, JsExpressionValidationModel, MaxValidationModel, MinValidationModel, ModalComponent, MomentPipe, MultiSelectQuestion, NestedQuestion, NgxDateTimePickerModule, NgxDatetimeComponent, ObsAdapterHelper, ObsValueAdapter, Option, OrderValueAdapter, Pair, PatientIdentifierAdapter, PersonAttributeAdapter, QuestionBase, QuestionFactory, QuestionGroup, RenderingType, RepeatingQuestion, SelectQuestion, TestOrderQuestion, TextAreaInputQuestion, TextInputQuestion, TimePickerComponent, UiSelectQuestion, ValidationFactory, ValidationModel };
|
|
15125
15139
|
//# sourceMappingURL=openmrs-ngx-formentry.mjs.map
|