@stssocialst-stp/fe-policyholder 1.0.0

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/LICENSE.md ADDED
@@ -0,0 +1,13 @@
1
+ The program users must agree to the following terms:
2
+
3
+ License notices
4
+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU AGPL v3 License as published by the Free Software Foundation, version 3 of the License.
5
+ This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU AGPL v3 License for more details www.gnu.org.
6
+
7
+ Disclaimer of Warranty
8
+ There is no warranty for the program, to the extent permitted by applicable law; except when otherwise stated in writing the copyright holders and/or other parties provide the program "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. Should the program prove defective, you assume the cost of all necessary servicing, repair or correction.
9
+
10
+ Limitation of Liability
11
+ In no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who modifies and/or conveys the program as permitted above, be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if such holder or other party has been advised of the possibility of such damages.
12
+
13
+ In case of dispute arising out or in relation to the use of the program, it is subject to the public law of Switzerland. The place of jurisdiction is Berne.
package/README.md ADDED
@@ -0,0 +1,178 @@
1
+ # openIMIS Frontend Policy Holder reference module
2
+ This repository holds the files of the openIMIS Frontend Policy Holder reference module.
3
+ It is dedicated to be deployed as a module of [openimis-fe_js](https://github.com/openimis/openimis-fe_js).
4
+
5
+ [![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
6
+
7
+ ## Main Menu Contributions
8
+ None
9
+
10
+ ## Other Contributions
11
+ * `core.Router`: registering `policyHolders`, `policyHolders/policyHolder` routes in openIMIS client-side router
12
+ * `insuree.MainMenu`:
13
+
14
+ **Policy Holders** (`menu.policyHolders` translation key)
15
+ * `invoice.SubjectAndThirdpartyPicker`: providing Policy Holder picker for Invoice module
16
+
17
+ ## Available Contribution Points
18
+ * `policyHolder.TabPanel.label` ability to extend Policy Holder tab panel with a label
19
+ * `policyHolder.TabPanel.panel` ability to extend Policy Holder tab panel with a panel displayed on click on an appropriate label
20
+ * `policyHolder.PolicyHolderInsuree.calculation` placeholder for `Calculation` module contributions
21
+
22
+ ## Published Components
23
+ * `policyHolder.ConfigBasedPicker`, generic picker, which can display options from JSON object
24
+ * `policyHolder.LegalFormPicker`, picker for Legal Form (from JSON stored in the module configuration)
25
+ * `policyHolder.ActivityCodePicker`, picker for Activity Code (from JSON stored in the module configuration)
26
+ * `policyHolder.PolicyHolderPicker`, picker for Policy Holder
27
+ * `policyHolder.PolicyHolderInsureePicker`, picker for Policy Holder Insuree
28
+ * `policyHolder.PolicyHolderContributionPlanBundlePicker`, picker for Policy Holder Contribution Plan Bundle
29
+
30
+ ## Dispatched Redux Actions
31
+ * `POLICYHOLDER_POLICYHOLDERS_{REQ|RESP|ERR}`, fetching Policy Holders (as triggered by the searcher)
32
+ * `POLICYHOLDER_POLICYHOLDER_{REQ|RESP|ERR}`, fetching Policy Holder
33
+ * `POLICYHOLDER_POLICYHOLDER_CLEAR`, clearing Policy Holder when unmounting form
34
+ * `POLICYHOLDER_POLICYHOLDERINSUREES_{REQ|RESP|ERR}`, fetching Policy Holder Insurees (as triggered by the searcher)
35
+ * `POLICYHOLDER_PICKERPOLICYHOLDERINSUREES_{REQ|RESP|ERR}`, fetching Policy Holder Insurees for Policy Holder Insurees Picker
36
+ * `POLICYHOLDER_POLICYHOLDERCONTRIBUTIONPLANBUNDLES_{REQ|RESP|ERR}`, fetching Policy Holder Contribution Plan Bundles (as triggered by the searcher)
37
+ * `POLICYHOLDER_PICKERPOLICYHOLDERCONTRIBUTIONPLANBUNDLES_{REQ|RESP|ERR}`, fetching Policy Holder Contribution Plan Bundles for Policy Holder Contribution Plan Bundle Picker
38
+ * `POLICYHOLDER_CODE_FIELDS_VALIDATION_{REQ|RESP|ERR}`, validating Policy Holder code field
39
+ * `POLICYHOLDER_CODE_FIELDS_VALIDATION_CLEAR`, clearing validation state of Policy Holder code
40
+ * `POLICYHOLDER_CODE_FIELDS_VALIDATION_SET_VALID`, setting Policy Holder code as a valid one
41
+ * `POLICYHOLDER_MUTATION_{REQ|ERR}`, sending a mutation
42
+ * `POLICYHOLDER_CREATE_POLICYHOLDER_RESP`, receiving a result of create Policy Holder mutation
43
+ * `POLICYHOLDER_UPDATE_POLICYHOLDER_RESP`, receiving a result of update Policy Holder mutation
44
+ * `POLICYHOLDER_DELETE_POLICYHOLDER_RESP`, receiving a result of delete Policy Holder mutation
45
+ * `POLICYHOLDER_CREATE_POLICYHOLDERINSUREE_RESP`, receiving a result of create Policy Holder Insuree mutation
46
+ * `POLICYHOLDER_UPDATE_POLICYHOLDERINSUREE_RESP`, receiving a result of update Policy Holder Insuree mutation
47
+ * `POLICYHOLDER_DELETE_POLICYHOLDERINSUREE_RESP`, receiving a result of delete Policy Holder Insuree mutation
48
+ * `POLICYHOLDER_REPLACE_POLICYHOLDERINSUREE_RESP`, receiving a result of replace Policy Holder Insuree mutation
49
+ * `POLICYHOLDER_CREATE_POLICYHOLDERCONTRIBUTIONPLANBUNDLE_RESP`, receiving a result of create Policy Holder Contribution Plan Bundle mutation
50
+ * `POLICYHOLDER_UPDATE_POLICYHOLDERCONTRIBUTIONPLANBUNDLE_RESP`, receiving a result of update Policy Holder Contribution Plan Bundle mutation
51
+ * `POLICYHOLDER_DELETE_POLICYHOLDERCONTRIBUTIONPLANBUNDLE_RESP`, receiving a result of delete Policy Holder Contribution Plan Bundle mutation
52
+ * `POLICYHOLDER_REPLACE_POLICYHOLDERCONTRIBUTIONPLANBUNDLE_RESP`, receiving a result of replace Policy Holder Contribution Plan Bundle mutation
53
+
54
+ ## Other Modules Listened Redux Actions
55
+ None
56
+
57
+ ## Other Modules Redux State Bindings
58
+ * `state.core.user`, to access user info (rights,...)
59
+ * `state.insuree`, retrieving Insurees when creating Policy Holder Insuree
60
+ * `state.contributionPlan`, retrieving Contribution Plan Bundles when creating Policy Holder Contribution Plan Bundle
61
+
62
+ ## Configurations Options
63
+ * `policyHolderFilter.rowsPerPageOptions`: pagination page size options in PolicyHolderSearcher component (Default: `[10, 20, 50, 100]`)
64
+ * `policyHolderFilter.defaultPageSize`: pagination pre-selected page size options in PolicyHolderSearcher component (Default: `10`)
65
+ * `policyHolderFilter.legalFormOptions`: options for LegalFormPicker component (Default:
66
+ ```json
67
+ [{
68
+ "value": "1",
69
+ "label": {
70
+ "en": "Personal Company",
71
+ "fr": "Persone physique"
72
+ }
73
+ }, {
74
+ "value": "2",
75
+ "label": {
76
+ "en": "Limited Risk Company",
77
+ "fr": "Société à risque limité"
78
+ }
79
+ }, {
80
+ "value": "3",
81
+ "label": {
82
+ "en": "Association",
83
+ "fr": "Association"
84
+ }
85
+ }, {
86
+ "value": "4",
87
+ "label": {
88
+ "en": "Government",
89
+ "fr": "Gouvernement"
90
+ }
91
+ }, {
92
+ "value": "5",
93
+ "label": {
94
+ "en": "Union",
95
+ "fr":"Syndicat"
96
+ }
97
+ }]
98
+ ```
99
+ )
100
+ * `policyHolderFilter.activityCodeOptions`: options for ActivityCodePicker component (Default:
101
+ ```json
102
+ [{
103
+ "value": "1",
104
+ "label": {
105
+ "en": "Retail",
106
+ "fr": "Vente au détails"
107
+ }
108
+ }, {
109
+ "value": "2",
110
+ "label": {
111
+ "en": "Industry",
112
+ "fr": "Industrie"
113
+ }
114
+ }, {
115
+ "value": "3",
116
+ "label": {
117
+ "en": "Building",
118
+ "fr": "Construction"
119
+ }
120
+ }, {
121
+ "value": "4",
122
+ "label": {
123
+ "en": "Sailing",
124
+ "fr": "Maritime"
125
+ }
126
+ }, {
127
+ "value": "5",
128
+ "label": {
129
+ "en": "Services",
130
+ "fr":"Services"
131
+ }
132
+ }]
133
+ ```
134
+ )
135
+ * `policyHolderForm.phoneValidation`: Phone field validation (regex + error message when regex does not match) (Default:
136
+ ```json
137
+ "phoneValidation": {
138
+ "regex": /^[0-9]*$/,
139
+ "regexMsg": {
140
+ "en": "Invalid phone number",
141
+ "fr": "Numéro de téléphone invalide"
142
+ }
143
+ }
144
+ ```
145
+ )
146
+ * `policyHolderForm.faxValidation`: Fax field validation (regex + error message when regex does not match) (Default:
147
+ ```json
148
+ "faxValidation", {
149
+ "regex": /^[0-9]{8,9}$/,
150
+ "regexMsg": {
151
+ "en": "Invalid fax number",
152
+ "fr": "Numéro de fax invalide"
153
+ }
154
+ }
155
+ ```
156
+ )
157
+ * `policyHolderForm.paymentReferenceValidation`: PaymentReference field validation (regex + error message when regex does not match) (Default:
158
+ ```json
159
+ "paymentReferenceValidation", {
160
+ "regex": /.+/,
161
+ "regexMsg": {
162
+ "en": "Invalid payment reference",
163
+ "fr": "Référence de payement invalide"
164
+ }
165
+ }
166
+ ```
167
+ )
168
+ * `policyHolderForm.accountancyAccountValidation`: AccountancyAccount field validation (regex + error message when regex does not match) (Default:
169
+ ```json
170
+ "accountancyAccountValidation", {
171
+ "regex": /.+/,
172
+ "regexMsg": {
173
+ "en": "Invalid accountancy account",
174
+ "fr": "Numéro de compte comptable invalide"
175
+ }
176
+ }
177
+ ```
178
+ )