Variables available to be used:
- fundingInstructionsStatus
- usdcEnabled
Best practices:
Use panels to contain different sections, and hide/show depending on previous values.
Use a container inside panels to use the items. Example:
if you are looking for Suitability questions, add a panel, then a container with id: "suitability". So each question inside that panel will be used like suitability.badActor.
That field will no longer repeat in other parts of the form.
Adding a repeated object
To add a repeated object we have to do this:
1) From Layout > Add Fieldset
2) From Data > Add Data Grid
3) Add elements inside the Data Grid
Then, in your agreement, display the value like this:
{{#each taxResidencyList}}
<tr>
<td class="text-center">{{country}}</td>
<td class="text-center">{{taxRefType}}</td>
<td class="text-center">{{taxRefNumber}}</td>
</tr>
{{/each}}
Basic structure:
- InvestorType
- BlockchainType
- BlockchainName
- Payment Method (USD / USDC)
- distributionsWalletAddress
- List of wallets from the investor will be sending funds
This is the formio component to copy
{
"components": [
{
"title": "System Variables",
"collapsible": false,
"hidden": true,
"key": "systemVariables",
"type": "panel",
"label": "Panel",
"input": false,
"tableView": false,
"components": [
{
"label": "investor Type",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"defaultValue": "entity",
"clearOnHide": false,
"validateWhenHidden": false,
"key": "investorType",
"type": "textfield",
"input": true
},
{
"label": "blockchainType",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"clearOnHide": false,
"validateWhenHidden": false,
"key": "blockchainType",
"type": "textfield",
"input": true,
"defaultValue": "EVM"
},
{
"label": "blockchain Name",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"defaultValue": "Mantle",
"clearOnHide": false,
"validateWhenHidden": false,
"key": "blockchainName",
"type": "textfield",
"input": true
},
{
"label": "Securitize Id",
"hidden": true,
"tableView": false,
"clearOnHide": false,
"validateWhenHidden": false,
"key": "sid",
"type": "container",
"input": true,
"components": [
{
"label": "sid.birthday",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"clearOnHide": false,
"validateWhenHidden": false,
"key": "birthDay",
"type": "textfield",
"input": true
},
{
"label": "sid.incorporationDate",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"clearOnHide": false,
"validateWhenHidden": false,
"key": "incorporationDate",
"type": "textfield",
"input": true
}
]
},
{
"label": "BirthDay",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"clearOnHide": false,
"calculateValue": "if(data.sid.birthDay && data.sid.birthDay.includes(\"T\"))\n{\n value=data.sid.birthDay.split(\"T\")[0]\n}",
"validate": {
"custom": "if(data.sid.birthday && data.sid.birthday.indexOf(\"T\")>0){\n value=data.sid.birthday.split(\"T\")[0];\n console.log(value)\n}"
},
"validateWhenHidden": false,
"key": "birthDay",
"type": "textfield",
"input": true
},
{
"label": "Company incorporation date",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"clearOnHide": false,
"calculateValue": "if(data.sid.incorporationDate && data.sid.incorporationDate.includes(\"T\"))\n{\n value=data.sid.incorporationDate.split(\"T\")[0]\n}",
"validateWhenHidden": false,
"key": "incorporationDate",
"type": "textfield",
"input": true
}
]
},
{
"title": "Payment Information",
"collapsible": false,
"key": "paymentInformation",
"type": "panel",
"label": "Panel",
"input": false,
"tableView": false,
"components": [
{
"label": "Payment Method",
"optionsLabelPosition": "right",
"inline": false,
"tableView": false,
"values": [
{
"label": "USD",
"value": "usd",
"shortcut": ""
},
{
"label": "USDC",
"value": "usdc",
"shortcut": ""
}
],
"validateWhenHidden": false,
"key": "paymentMethod",
"type": "radio",
"input": true
}
]
},
{
"title": "List of wallets",
"collapsible": false,
"key": "listOfWallets",
"conditional": {
"show": true,
"when": "paymentMethod",
"eq": "usdc"
},
"type": "panel",
"label": "Panel",
"input": false,
"tableView": false,
"components": [
{
"label": "Wallet List",
"description": "Provide the list of wallets from where you are going to be funding",
"reorder": false,
"addAnotherPosition": "bottom",
"layoutFixed": false,
"enableRowGroups": false,
"initEmpty": false,
"tableView": false,
"defaultValue": [
{
"wallet": ""
}
],
"validate": {
"required": true,
"minLength": "1",
"maxLength": "5"
},
"validateWhenHidden": false,
"key": "walletList",
"type": "datagrid",
"input": true,
"components": [
{
"label": "Funding wallet address",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"customMessage": "Please provide a valid wallet address for the selected blockchain type.",
"custom": "valid = (data.blockchainType === 'EVM') ? /^0x[a-fA-F0-9]{40}$/.test(input) : (data.blockchainType === 'APTOS') ? /^0x[a-fA-F0-9]{1,64}$/.test(input) : true;"
},
"validateWhenHidden": false,
"key": "wallet",
"type": "textfield",
"input": true
}
]
},
{
"label": "Inject CSS",
"attrs": [
{
"attr": "",
"value": ""
}
],
"content": " <style>.formio-button-remove-row {background-color: #0283a8 !important;border: 1px solid #000000;color: #ffffff;padding: 6px 14px;border-radius: 6px;display: inline-flex;align-items: center; justify-content: center;}.fa-times-circle-o{color:#FFF;}.fa-times-circle-o:before{color:#FFF;}.fa-plus:before{color:#FFF;}</style>",
"refreshOnChange": false,
"key": "injectCss",
"type": "htmlelement",
"input": false,
"tableView": false
}
]
},
{
"title": "Bank information",
"collapsible": false,
"key": "bankInformation",
"conditional": {
"show": true,
"when": "paymentMethod",
"eq": "usd"
},
"type": "panel",
"label": "Panel",
"input": false,
"tableView": false,
"components": [
{
"label": "Payment Preferences",
"tableView": false,
"validateWhenHidden": false,
"key": "paymentPreferences",
"type": "container",
"input": true,
"components": [
{
"label": "Bank name",
"placeholder": "Sample Bank Name",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"required": true
},
"validateWhenHidden": false,
"key": "bankName",
"logic": [
{
"name": "disableOnAgreementBankName",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
},
{
"label": "Country",
"widget": "html5",
"tableView": true,
"defaultValue": "US",
"data": {
"values": [
{
"label": "United States",
"value": "US"
},
{
"label": "Afghanistan",
"value": "AF"
},
{
"label": "Ãland Islands",
"value": "AX"
},
{
"label": "Albania",
"value": "AL"
},
{
"label": "American Samoa",
"value": "AS"
},
{
"label": "Andorra",
"value": "AD"
},
{
"label": "Angola",
"value": "AO"
},
{
"label": "Anguilla",
"value": "AI"
},
{
"label": "Antarctica",
"value": "AQ"
},
{
"label": "Antigua and Barbuda",
"value": "AG"
},
{
"label": "Argentina",
"value": "AR"
},
{
"label": "Armenia",
"value": "AM"
},
{
"label": "Aruba",
"value": "AW"
},
{
"label": "Australia",
"value": "AU"
},
{
"label": "Austria",
"value": "AT"
},
{
"label": "Azerbaijan",
"value": "AZ"
},
{
"label": "Bahamas",
"value": "BS"
},
{
"label": "Bahrain",
"value": "BH"
},
{
"label": "Bangladesh",
"value": "BD"
},
{
"label": "Barbados",
"value": "BB"
},
{
"label": "Belgium",
"value": "BE"
},
{
"label": "Belize",
"value": "BZ"
},
{
"label": "Benin",
"value": "BJ"
},
{
"label": "Bermuda",
"value": "BM"
},
{
"label": "Bhutan",
"value": "BT"
},
{
"label": "Bolivia, Plurinational State of",
"value": "BO"
},
{
"label": "Bonaire, Sint Eustatius and Saba",
"value": "BQ"
},
{
"label": "Bosnia and Herzegovina",
"value": "BA"
},
{
"label": "Botswana",
"value": "BW"
},
{
"label": "Bouvet Island",
"value": "BV"
},
{
"label": "Brazil",
"value": "BR"
},
{
"label": "British Indian Ocean Territory",
"value": "IO"
},
{
"label": "Brunei Darussalam",
"value": "BN"
},
{
"label": "Bulgaria",
"value": "BG"
},
{
"label": "Burkina Faso",
"value": "BF"
},
{
"label": "Burundi",
"value": "BI"
},
{
"label": "Cambodia",
"value": "KH"
},
{
"label": "Cameroon",
"value": "CM"
},
{
"label": "Canada",
"value": "CA"
},
{
"label": "Cape Verde",
"value": "CV"
},
{
"label": "Cayman Islands",
"value": "KY"
},
{
"label": "Central African Republic",
"value": "CF"
},
{
"label": "Chad",
"value": "TD"
},
{
"label": "Chile",
"value": "CL"
},
{
"label": "China",
"value": "CN"
},
{
"label": "Christmas Island",
"value": "CX"
},
{
"label": "Cocos",
"value": "Keeling Islands"
},
{
"label": "Colombia",
"value": "CO"
},
{
"label": "Comoros",
"value": "KM"
},
{
"label": "Cook Islands",
"value": "CK"
},
{
"label": "Costa Rica",
"value": "CR"
},
{
"label": "Croatia",
"value": "HR"
},
{
"label": "Curaçao",
"value": "CW"
},
{
"label": "Cyprus",
"value": "CY"
},
{
"label": "Czech Republic",
"value": "CZ"
},
{
"label": "Denmark",
"value": "DK"
},
{
"label": "Djibouti",
"value": "DJ"
},
{
"label": "Dominica",
"value": "DM"
},
{
"label": "Dominican Republic",
"value": "DO"
},
{
"label": "Ecuador",
"value": "EC"
},
{
"label": "Egypt",
"value": "EG"
},
{
"label": "El Salvador",
"value": "SV"
},
{
"label": "Equatorial Guinea",
"value": "GQ"
},
{
"label": "Eritrea",
"value": "ER"
},
{
"label": "Estonia",
"value": "EE"
},
{
"label": "Ethiopia",
"value": "ET"
},
{
"label": "Falkland Islands",
"value": "Malvinas"
},
{
"label": "Faroe Islands",
"value": "FO"
},
{
"label": "Fiji",
"value": "FJ"
},
{
"label": "Finland",
"value": "FI"
},
{
"label": "France",
"value": "FR"
},
{
"label": "French Guiana",
"value": "GF"
},
{
"label": "French Polynesia",
"value": "PF"
},
{
"label": "French Southern Territories",
"value": "TF"
},
{
"label": "Gabon",
"value": "GA"
},
{
"label": "Gambia",
"value": "GM"
},
{
"label": "Georgia",
"value": "GE"
},
{
"label": "Germany",
"value": "DE"
},
{
"label": "Gibraltar",
"value": "GI"
},
{
"label": "Greece",
"value": "GR"
},
{
"label": "Greenland",
"value": "GL"
},
{
"label": "Grenada",
"value": "GD"
},
{
"label": "Guadeloupe",
"value": "GP"
},
{
"label": "Guam",
"value": "GU"
},
{
"label": "Guatemala",
"value": "GT"
},
{
"label": "Guernsey",
"value": "GG"
},
{
"label": "Guinea",
"value": "GN"
},
{
"label": "Guinea-Bissau",
"value": "GW"
},
{
"label": "Guyana",
"value": "GY"
},
{
"label": "Haiti",
"value": "HT"
},
{
"label": "Heard Island and McDonald Islands",
"value": "HM"
},
{
"label": "Holy See",
"value": "Vatican City State"
},
{
"label": "Honduras",
"value": "HN"
},
{
"label": "Hong Kong",
"value": "HK"
},
{
"label": "Hungary",
"value": "HU"
},
{
"label": "Iceland",
"value": "IS"
},
{
"label": "India",
"value": "IN"
},
{
"label": "Indonesia",
"value": "ID"
},
{
"label": "Iraq",
"value": "IQ"
},
{
"label": "Ireland",
"value": "IE"
},
{
"label": "Isle of Man",
"value": "IM"
},
{
"label": "Israel",
"value": "IL"
},
{
"label": "Italy",
"value": "IT"
},
{
"label": "Jamaica",
"value": "JM"
},
{
"label": "Japan",
"value": "JP"
},
{
"label": "Jersey",
"value": "JE"
},
{
"label": "Jordan",
"value": "JO"
},
{
"label": "Kazakhstan",
"value": "KZ"
},
{
"label": "Kenya",
"value": "KE"
},
{
"label": "Kiribati",
"value": "KI"
},
{
"label": "Korea, Republic of",
"value": "KR"
},
{
"label": "Kuwait",
"value": "KW"
},
{
"label": "Kyrgyzstan",
"value": "KG"
},
{
"label": "Lao People's Democratic Republic",
"value": "LA"
},
{
"label": "Latvia",
"value": "LV"
},
{
"label": "Lebanon",
"value": "LB"
},
{
"label": "Lesotho",
"value": "LS"
},
{
"label": "Liberia",
"value": "LR"
},
{
"label": "Libya",
"value": "LY"
},
{
"label": "Liechtenstein",
"value": "LI"
},
{
"label": "Lithuania",
"value": "LT"
},
{
"label": "Luxembourg",
"value": "LU"
},
{
"label": "Macao",
"value": "MO"
},
{
"label": "Macedonia, the Former Yugoslav Republic of",
"value": "MK"
},
{
"label": "Madagascar",
"value": "MG"
},
{
"label": "Malawi",
"value": "MW"
},
{
"label": "Malaysia",
"value": "MY"
},
{
"label": "Maldives",
"value": "MV"
},
{
"label": "Mali",
"value": "ML"
},
{
"label": "Malta",
"value": "MT"
},
{
"label": "Marshall Islands",
"value": "MH"
},
{
"label": "Martinique",
"value": "MQ"
},
{
"label": "Mauritania",
"value": "MR"
},
{
"label": "Mauritius",
"value": "MU"
},
{
"label": "Mayotte",
"value": "YT"
},
{
"label": "Mexico",
"value": "MX"
},
{
"label": "Micronesia, Federated States of",
"value": "FM"
},
{
"label": "Moldova, Republic of",
"value": "MD"
},
{
"label": "Monaco",
"value": "MC"
},
{
"label": "Mongolia",
"value": "MN"
},
{
"label": "Montenegro",
"value": "ME"
},
{
"label": "Montserrat",
"value": "MS"
},
{
"label": "Morocco",
"value": "MA"
},
{
"label": "Mozambique",
"value": "MZ"
},
{
"label": "Myanmar",
"value": "MM"
},
{
"label": "Nauru",
"value": "NR"
},
{
"label": "Nepal",
"value": "NP"
},
{
"label": "Netherlands",
"value": "NL"
},
{
"label": "New Caledonia",
"value": "NC"
},
{
"label": "New Zealand",
"value": "NZ"
},
{
"label": "Nicaragua",
"value": "NI"
},
{
"label": "Niger",
"value": "NE"
},
{
"label": "Nigeria",
"value": "NG"
},
{
"label": "Niue",
"value": "NU"
},
{
"label": "Norfolk Island",
"value": "NF"
},
{
"label": "Northern Mariana Islands",
"value": "MP"
},
{
"label": "Norway",
"value": "NO"
},
{
"label": "Oman",
"value": "OM"
},
{
"label": "Pakistan",
"value": "PK"
},
{
"label": "Palau",
"value": "PW"
},
{
"label": "Palestine, State of",
"value": "PS"
},
{
"label": "Panama",
"value": "PA"
},
{
"label": "Papua New Guinea",
"value": "PG"
},
{
"label": "Paraguay",
"value": "PY"
},
{
"label": "Peru",
"value": "PE"
},
{
"label": "Philippines",
"value": "PH"
},
{
"label": "Pitcairn",
"value": "PN"
},
{
"label": "Poland",
"value": "PL"
},
{
"label": "Portugal",
"value": "PT"
},
{
"label": "Puerto Rico",
"value": "PR"
},
{
"label": "Qatar",
"value": "QA"
},
{
"label": "Réunion",
"value": "RE"
},
{
"label": "Romania",
"value": "RO"
},
{
"label": "Rwanda",
"value": "RW"
},
{
"label": "Saint Barthélemy",
"value": "BL"
},
{
"label": "Saint Helena, Ascension and Tristan da Cunha",
"value": "SH"
},
{
"label": "Saint Kitts and Nevis",
"value": "KN"
},
{
"label": "Saint Lucia",
"value": "LC"
},
{
"label": "Saint Martin",
"value": "French part"
},
{
"label": "Saint Pierre and Miquelon",
"value": "PM"
},
{
"label": "Saint Vincent and the Grenadines",
"value": "VC"
},
{
"label": "Samoa",
"value": "WS"
},
{
"label": "San Marino",
"value": "SM"
},
{
"label": "Sao Tome and Principe",
"value": "ST"
},
{
"label": "Saudi Arabia",
"value": "SA"
},
{
"label": "Senegal",
"value": "SN"
},
{
"label": "Serbia",
"value": "RS"
},
{
"label": "Seychelles",
"value": "SC"
},
{
"label": "Sierra Leone",
"value": "SL"
},
{
"label": "Singapore",
"value": "SG"
},
{
"label": "Sint Maarten",
"value": "Dutch part"
},
{
"label": "Slovakia",
"value": "SK"
},
{
"label": "Slovenia",
"value": "SI"
},
{
"label": "Solomon Islands",
"value": "SB"
},
{
"label": "Somalia",
"value": "SO"
},
{
"label": "South Africa",
"value": "ZA"
},
{
"label": "South Georgia and the South Sandwich Islands",
"value": "GS"
},
{
"label": "Spain",
"value": "ES"
},
{
"label": "Sri Lanka",
"value": "LK"
},
{
"label": "Suriname",
"value": "SR"
},
{
"label": "Svalbard and Jan Mayen",
"value": "SJ"
},
{
"label": "Swaziland",
"value": "SZ"
},
{
"label": "Sweden",
"value": "SE"
},
{
"label": "Switzerland",
"value": "CH"
},
{
"label": "Syrian Arab Republic",
"value": "SY"
},
{
"label": "Taiwan, Province of China",
"value": "TW"
},
{
"label": "Tajikistan",
"value": "TJ"
},
{
"label": "Tanzania, United Republic of",
"value": "TZ"
},
{
"label": "Thailand",
"value": "TH"
},
{
"label": "Timor-Leste",
"value": "TL"
},
{
"label": "Togo",
"value": "TG"
},
{
"label": "Tokelau",
"value": "TK"
},
{
"label": "Tonga",
"value": "TO"
},
{
"label": "Trinidad and Tobago",
"value": "TT"
},
{
"label": "Tunisia",
"value": "TN"
},
{
"label": "Turkey",
"value": "TR"
},
{
"label": "Turkmenistan",
"value": "TM"
},
{
"label": "Turks and Caicos Islands",
"value": "TC"
},
{
"label": "Tuvalu",
"value": "TV"
},
{
"label": "Uganda",
"value": "UG"
},
{
"label": "United Arab Emirates",
"value": "AE"
},
{
"label": "United Kingdom",
"value": "GB"
},
{
"label": "United States Minor Outlying Islands",
"value": "UM"
},
{
"label": "Uruguay",
"value": "UY"
},
{
"label": "Uzbekistan",
"value": "UZ"
},
{
"label": "Vanuatu",
"value": "VU"
},
{
"label": "Viet Nam",
"value": "VN"
},
{
"label": "Virgin Islands, British",
"value": "VG"
},
{
"label": "Virgin Islands, U.S.",
"value": "VI"
},
{
"label": "Wallis and Futuna",
"value": "WF"
},
{
"label": "Western Sahara",
"value": "EH"
},
{
"label": "Yemen",
"value": "YE"
},
{
"label": "Zambia",
"value": "ZM"
},
{
"label": "Zimbabwe",
"value": "ZW"
}
]
},
"validate": {
"required": true,
"custom": "if(value && value.contains('AL,AD,AT,AZ,BH,BY,BE,BA,BG,CR,HR,CY,CZ,DK,DO,EE,FO,FI,FR,GE,DE,GI,GR,GL,VA,HU,IS,IQ,IE,IL,IT,JO,KZ,KW,LV,LB,LI,LT,LU,MT,MR,MU,MD,MC,ME,NL,MK,NO,PS,PL,PT,QA,RO,SM,SA,RS,SC,SK,SI,ES,SE,CH,TN,TR,UA,AE'))\n{\ndata.paymentPreferences.ibanRaw.show=true;\n}\nelse\n{\ndata.paymentPreferences.ibanRaw.show=false;\n}\nif(value && value.contains('AL,AD,AT,AZ,BH,BY,BE,BA,BG,CR,HR,CY,CZ,DK,DO,EE,FO,FI,FR,GE,DE,GI,GR,GL,VA,HU,IS,IQ,IE,IL,IT,JO,KZ,KW,LV,LB,LI,LT,LU,MT,MR,MU,MD,MC,ME,NL,MK,NO,PS,PL,PT,QA,RO,SM,SA,RS,SC,SK,SI,ES,SE,CH,TN,TR,UA,AE'))\n{\n data.paymentPreferences.accountNum.show=false;\n}\nelse\n{\n data.paymentPreferences.accountNum.show=true; \n}\nif(value && value.contains('US,PR,GU,VI,MP,UM')){\n data.paymentPreferences.accountNum.show=true;\n}\nelse\n{\ndata.paymentPreferences.accountNum.show=false;\n}"
},
"validateWhenHidden": false,
"key": "country",
"logic": [
{
"name": "disableOnAgreementCountry",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "select",
"input": true
},
{
"label": "Bank Address",
"placeholder": "500 Madison Avenue, NYC, NY 10011",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"required": true
},
"validateWhenHidden": false,
"key": "branchAddress",
"logic": [
{
"name": "disableOnAgreementBranchAddress",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
},
{
"label": "SWIFT Code",
"placeholder": "DEGRESBBXXX",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"required": true
},
"validateWhenHidden": false,
"key": "swift",
"conditional": {
"show": false,
"when": "country",
"eq": "US"
},
"logic": [
{
"name": "disableOnAgreementSwiftCode",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
},
{
"label": "Routing Number",
"placeholder": "011103093",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"required": true
},
"validateWhenHidden": false,
"key": "branchId",
"customConditional": "if(data.paymentPreferences && data.paymentPreferences.country)\n{\n show = [\"US\", \"PR\",\"GU\",\"MP\",\"VI\",\"AS\",\"UM\"].includes(data.paymentPreferences.country)\n}",
"logic": [
{
"name": "disableOnAgreementRoutingNumber",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
},
{
"label": "Account Holder",
"placeholder": "Sample Company LLC",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"required": true
},
"validateWhenHidden": false,
"key": "accountHolderName",
"logic": [
{
"name": "disableOnAgreementAccountHolder",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
},
{
"label": "Bank Account Number",
"placeholder": "13719713158835300",
"applyMaskOn": "change",
"tableView": true,
"validate": {
"required": true
},
"validateWhenHidden": false,
"key": "accountNum",
"customConditional": "if(data.paymentPreferences && data.paymentPreferences.country){\n show=(![\"AL\",\"AD\",\"AT\",\"AZ\",\"BH\",\"BY\",\"BE\",\"BA\",\"BG\",\"CR\",\"HR\",\"CY\",\"CZ\",\"DK\",\"DO\",\"EE\",\"FO\",\"FI\",\"FR\",\"GE\",\"DE\",\"GI\",\"GR\",\"GL\",\"VA\",\"HU\",\"IS\",\"IQ\",\"IE\",\"IL\",\"IT\",\"JO\",\"KZ\",\"KW\",\"LV\",\"LB\",\"LI\",\"LT\",\"LU\",\"MT\",\"MR\",\"MU\",\"MD\",\"MC\",\"ME\",\"NL\",\"MK\",\"NO\",\"PS\",\"PL\",\"PT\",\"QA\",\"RO\",\"SM\",\"SA\",\"RS\",\"SC\",\"SK\",\"SI\",\"ES\",\"SE\",\"CH\",\"TN\",\"TR\",\"UA\",\"AE\"].includes(data.paymentPreferences.country))\n}",
"logic": [
{
"name": "disableOnAgreementAccountNumber",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
},
{
"label": "IBAN",
"placeholder": "IE12BOFI90000112345678",
"applyMaskOn": "change",
"spellcheck": false,
"tableView": true,
"case": "uppercase",
"validate": {
"required": true,
"custom": "if(data.paymentPreferences && data.paymentPreferences.ibanRaw){\n let v = data.paymentPreferences.ibanRaw;\n v = v.replace(/[^A-Za-z0-9]/g, \"\");\n let match = v.match(/^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$/)\n if (v.length==0) {\n valid = \"\"\n } else if (v.length < 15) {\n valid = \"The IBAN should be at least 15 characters.\"\n } else if (v.length > 34) {\n valid = \"The IBAN should be at most 34 characters.\"\n } else if (!match) {\n valid = \"Please check your IBAN. It should start with a 2 letter country code and 2 numbers. Examples: IE12, CY 43, LU 28\"\n } else {\n valid = true\n }\n}"
},
"validateWhenHidden": false,
"key": "ibanRaw",
"customConditional": "if(data.paymentPreferences && data.paymentPreferences.country){\n show=(([\"AL\",\"AD\",\"AT\",\"AZ\",\"BH\",\"BY\",\"BE\",\"BA\",\"BG\",\"CR\",\"HR\",\"CY\",\"CZ\",\"DK\",\"DO\",\"EE\",\"FO\",\"FI\",\"FR\",\"GE\",\"DE\",\"GI\",\"GR\",\"GL\",\"VA\",\"HU\",\"IS\",\"IQ\",\"IE\",\"IL\",\"IT\",\"JO\",\"KZ\",\"KW\",\"LV\",\"LB\",\"LI\",\"LT\",\"LU\",\"MT\",\"MR\",\"MU\",\"MD\",\"MC\",\"ME\",\"NL\",\"MK\",\"NO\",\"PS\",\"PL\",\"PT\",\"QA\",\"RO\",\"SM\",\"SA\",\"RS\",\"SC\",\"SK\",\"SI\",\"ES\",\"SE\",\"CH\",\"TN\",\"TR\",\"UA\",\"AE\"].includes(data.paymentPreferences.country)) & (data.agreementState != \"submitted\"))\n}",
"type": "textfield",
"input": true
},
{
"label": "IBAN",
"applyMaskOn": "change",
"hidden": true,
"tableView": true,
"redrawOn": "paymentPreferences.ibanRaw",
"clearOnHide": false,
"calculateValue": "if(data.paymentPreferences && data.paymentPreferences.ibanRaw){\n value = data.paymentPreferences.ibanRaw.replace(/[^a-zA-Z0-9]/g,\"\")\n}",
"validateWhenHidden": false,
"key": "iban",
"customConditional": "if(data.paymentPreferences && data.paymentPreferences.country){\n show=(([\"AL\",\"AD\",\"AT\",\"AZ\",\"BH\",\"BY\",\"BE\",\"BA\",\"BG\",\"CR\",\"HR\",\"CY\",\"CZ\",\"DK\",\"DO\",\"EE\",\"FO\",\"FI\",\"FR\",\"GE\",\"DE\",\"GI\",\"GR\",\"GL\",\"VA\",\"HU\",\"IS\",\"IQ\",\"IE\",\"IL\",\"IT\",\"JO\",\"KZ\",\"KW\",\"LV\",\"LB\",\"LI\",\"LT\",\"LU\",\"MT\",\"MR\",\"MU\",\"MD\",\"MC\",\"ME\",\"NL\",\"MK\",\"NO\",\"PS\",\"PL\",\"PT\",\"QA\",\"RO\",\"SM\",\"SA\",\"RS\",\"SC\",\"SK\",\"SI\",\"ES\",\"SE\",\"CH\",\"TN\",\"TR\",\"UA\",\"AE\"].includes(data.paymentPreferences.country)) & (data.agreementState == \"submitted\"))\n}",
"logic": [
{
"name": "disableOnAgreementIBAN",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
}
]
}
]
},
{
"title": "Subscriber Information",
"collapsible": false,
"key": "partASubscriberInformationPage",
"type": "panel",
"label": "Panel",
"input": false,
"tableView": false,
"components": [
{
"label": "<p><b>Investor Wallet Detail</b><br>Please provide the wallet address to which tokens should be minted.</p>",
"placeholder": "0x0000000000000000000000000000000000000000",
"description": "Only wallets that have been authorized may hold the tokens from this offering. After this wallet has been screened, the tokens will be issued to this wallet by default. Additional wallets can be added via the <a href=\"https://id.securitize.io/wallets\">platform</a>.",
"applyMaskOn": "change",
"tableView": true,
"clearOnHide": false,
"validate": {
"customMessage": "Please provide a valid wallet address for the selected blockchain type.",
"custom": "valid = (data.blockchainType === 'EVM') ? /^0x[a-fA-F0-9]{40}$/.test(input) : (data.blockchainType === 'APTOS') ? /^0x[a-fA-F0-9]{1,64}$/.test(input) : true;"
},
"validateWhenHidden": false,
"key": "distributionsWalletAddress",
"logic": [
{
"name": "disableOnAgreementWallet",
"trigger": {
"type": "simple",
"simple": {
"show": true,
"when": "fundingInstructionsStatus",
"eq": "submitted"
}
},
"actions": [
{
"name": "disableInput",
"type": "property",
"property": {
"label": "Disabled",
"value": "disabled",
"type": "boolean"
},
"state": true
}
]
}
],
"type": "textfield",
"input": true
}
]
}
]
}
How to change the format of the buttons on a repeated object:
Section Wallet List:
{ "title": "List of wallets", "collapsible": false, "key": "listOfWallets", "conditional": { "show": true, "when": "usdcLogicComponent", "eq": "true" }, "type": "panel", "label": "Panel", "input": false, "tableView": false, "components": [ { "label": "Wallet List", "description": "USDC Wallet DetailsPlease provide the relevant address(es) of the account(s) that will be funding with USDC. This information will be used to process subscriptions.", "reorder": false, "addAnotherPosition": "bottom", "layoutFixed": false, "enableRowGroups": false, "initEmpty": false, "tableView": false, "defaultValue": [ { "wallet": "" } ], "validate": { "required": true, "minLength": "1", "maxLength": "5" }, "validateWhenHidden": false, "key": "walletList", "type": "datagrid", "input": true, "components": [ { "label": "Funding wallet address", "applyMaskOn": "change", "tableView": true, "validate": { "customMessage": "Please provide a valid wallet address for the selected blockchain type.", "custom": "var formatValid = (data.blockchainType === 'EVM') ? /^0x[a-fA-F0-9]{40}$/.test(input) : (data.blockchainType === 'APTOS') ? /^0x[a-fA-F0-9]{1,64}$/.test(input) : true; if (!formatValid) { valid = false; } else if (input && data.walletList && data.walletList.length 1) { var normalized = String(input).toLowerCase().trim(); var count = 0; data.walletList.forEach(function(r) { if (r && r.wallet && String(r.wallet).toLowerCase().trim() === normalized) { count++; } }); valid = count 1 ? 'This wallet address is already in the list. Please enter a unique address.' : true; } else { valid = true; }" }, "validateWhenHidden": false, "key": "wallet", "type": "textfield", "input": true } ] }, { "label": "Inject CSS", "attrs": [ { "attr": "", "value": "" } ], "content": " ", "refreshOnChange": false, "key": "injectCss", "type": "htmlelement", "input": false, "tableView": false } ] }