rapida-partner 1.6.2 → 1.7.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/rapidaObject.json CHANGED
@@ -1 +1,3456 @@
1
- {"id":"movieBackoffice","title":"Movie Backoffice","description":"Sistema de gerenciamento para filmes e personagens.","flow":"permeson","businessPlan":{"businessValue":"Gerenciar e otimizar as operações do Movie.","targetMarket":"Empresas que utilizam o Movie para gerenciar sugestões e feedbacks.","benchmarkings":"Análise de sistemas de gerenciamento de feedbacks.","legalIssues":"Conformidade com leis de proteção de dados.","ethicalIssues":"Garantir a privacidade dos usuários.","afterSales":"Suporte contínuo e atualizações regulares.","monetization":"Assinaturas mensais para acesso ao sistema."},"frontend":{"framework":"react","uiKit":"flowbite"},"backend":{"framework":"nest","jwtSecret":"Kunl4t3kw1llN3v3rD13","database":{"provider":"mongodb","connectionString":"mongodb+srv://kunlatek:Kunlatek751@cluster0.b0pfr.mongodb.net/movie-v1","credentials":{"databaseName":"movie-v1","username":"kunlatek","password":"Kunlatek751","host":"cluster0.b0pfr.mongodb.net"}},"storage":{"provider":"gcs","credentials":{"clientEmail":"rapida-personal@rapida-personal-projects.iam.gserviceaccount.com","privateKey":"-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDCDEQRUfKKxYUj\nVorX+aiEHhPRrrcNHVw40qq517wP7IgIp2UlA5uf0rV2cdn1njA9RMQxp6l7Qt+0\nBZg1JZM8l9Uv1SckRlkKST4k2B3MDOEl1riAPxIE/jBCUT9l2DCbir0Nu+CqGhGD\nUXOMpF0XWYL9GIBRo8Paf//yU0b86VBDfQGgnFkMKFq3bVDkPd8hQTBgTFT5F1Rh\nDcoUpAp/n3SYxkAK1V7Je+fnChF1DQPj8Nd5CLm4DsCM1B+HtaegsaE1ulXwhi1J\nlIFFGv49g0f2qOs3hytTPt0d8UpxFd9/Oq0tmcjuzK4bYzJdVZZPf+4xflHz+6R8\n2o7grTeDAgMBAAECggEABHdsz6s/tnMCdARHcN41w0i/8wke/IXK/CHZPSrakNFE\ndlKIEPiKyfx7Ic1QE4e/G4HsNCpkS8qHxKiGTt7dCz2BcjbpTjvyS7rQ298/nFVF\nj23oVEdfXk8NhFFDcNAvmjzwyhKjgrbT5V5oFvonjGSKj9HTDk4DMZHVrdm93g9k\nZ9XJBVeLh14/rkZLMDZ9DVjUMiQ6xElMH3IQD4MwEcul9eqM8bs2APgZlzzfO76m\nAuq20l4JqOcJJl8wzC7z12eNDNJrQNh2sHsT9zV5PabfNoQhnU6fDvKr0PG0PGRR\nS5PTDeiMY47rJVPgwxthSke3abtdgA9SNie8OqZl6QKBgQD+yFT+ndFYKvHg2WNi\ns0jK0QqFQB84LQtOX2YhQ0137mtSv0z7wO90e28dfUqsjax4DxPMp+AW0cC3SBEv\n2T8/rJrgzGucPt4Jzml5HYl2NgCkNAtHIJ1vtXJdX5d3WmYhH7cUTPmV6nMS8OlF\nheSyfudCiOo89phQf0pI6lhQKwKBgQDC+aOU2cxMVA5VH0txX0G9tPQjBvzY09ev\nVLGrxlmdAcQVXYCWdoESEfTv3E4JPklAz5B2/XnALxM5ewJgjoP6buOCJrQcgJNC\nSsG9Ll3zF4c+opFmaYTzcAY9HWHa4Pc+GAxFrrcPGzVBLjSrl7FPdykkPiBNxNJa\nnOzzrL4yCQKBgQC7b/pHjycx6/YiawuY0zjcLMnGmhPdqhXFRJ3IHtFhR/+g0qf6\nFkiTszNdyI0lQNz/PmhciaxsXUegDt7GCtdjKsKOWxVXz1BeeoJR3g8A7l2ub7NU\nUoRAaIaIdwjhf5nfCIwR3UdIqUCbUKzsvsIvJvlPk5Zv3yLTJbIqzmzGHQKBgBiQ\nnUSGwE+pk3i0DaxGBSFiqBO1sKuc3SLQ9+WdgvLeIxdSBX5vhcmCC6sgxZAykcYh\noKDtRKarB7AJSH5j1kr6J53hRHYG2QbUJl6wddPH1hlVIB6YEtEc/xw6FHcgOuZO\n31T0M0oq8mW47Zfk78kESWGwlh9WOe6CsPPugrQJAoGBAP3o8DqH1Pb7vlowsz78\n8fsCuydEJgsPSwHHqBveeUHBQLGSiGIIKRXWR1a13mWXQTqQkROZCwvVCMX6FHZZ\nKv3rzgsTkaaoqM0RVLcQSSDoyu2yP/JJv+VYsvMf2S3dUkDAeYDZFizPeFF42t92\n+MSId41OkBvJ/JvqsBWlWFYK\n-----END PRIVATE KEY-----\n","projectId":"rapida-personal-projects"},"publicBucketName":"rapida-public-files","privateBucketName":"rapida-private-files"},"logging":{"discordWebhookUrl":"https://discord.com/api/webhooks/1370095507959054429/Ay8pIM-sinbjsLMAAWGrRDFT-oyBD3xu7yB2Ke0Bx6RxpKN882taB4_tkD2xsdk8MirZ"},"email":{"smtpUser":"noreply.rapida@gmail.com","smtpPass":"ekgwxlazvjjllfxf","smtpFrom":"noreply@kunlatek.com"},"baseUrl":"http://localhost:5173"},"modules":[{"title":"Cliente","id":"customerModule","icon":"UserIcon","components":[{"title":"Gerenciar cliente","id":"customerForm","componentType":"form","contracts":[{"id":"customerPeople","endpoint":"/customers/people","actions":["create","update","get","getById","delete"],"request":{"entity":"Customers","relatedEntity":{"entity":"People","connectionAttribute":"_id","fieldsFromEntity":[{"fields":{"title":"Gerenciamento de cliente pessoa","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de pessoa para inserir e editar informações de clientes, incluindo dados principais (como nome, nacionalidade, CPF, data de nascimento, gênero, foto, telefones e e-mails), contatos e redes sociais (como telefones secundários, e-mails e links de sites), e endereços, para que eu possa manter um registro completo e atualizado das pessoas no sistema.","componentType":"form","id":"personForm","contracts":[{"id":"people","endpoint":"/people","actions":["create","get","getById","update","delete"],"request":{"entity":"People","description":"Represents an individual person with personal details and contact information.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"country","dataType":"nvarchar","isRequired":true,"maxSize":100},{"name":"cpf","dataType":"nvarchar","isRequired":false,"maxSize":14},{"name":"passport","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"passportIssueDate","dataType":"datetime2","isRequired":false},{"name":"passportExpiryDate","dataType":"datetime2","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true,"maxSize":200},{"name":"gender","dataType":"nvarchar","isRequired":false,"maxSize":10,"enum":["male","female","other"]},{"name":"birthday","dataType":"datetime2","isRequired":false},{"name":"picture","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"phoneOne","dataType":"nvarchar","isRequired":true,"maxSize":20},{"name":"emailOne","dataType":"nvarchar","isRequired":true,"maxSize":100},{"name":"addressOneZipCode","dataType":"nvarchar","isRequired":false,"maxSize":10},{"name":"addressOneStreet","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"addressOneDistrict","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneNumber","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"addressOneComplement","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneCity","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneState","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneLatitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressOneLongitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressTwoZipCode","dataType":"nvarchar","isRequired":false,"maxSize":10},{"name":"addressTwoStreet","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"addressTwoDistrict","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoNumber","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"addressTwoComplement","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoCity","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoState","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoLatitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressTwoLongitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"phoneTwo","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"emailTwo","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"siteOne","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"siteTwo","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"linkedin","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"instagram","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"facebook","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"nickname","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"personDescription","dataType":"longtext","isRequired":false},{"name":"personMaritalStatus","dataType":"nvarchar","isRequired":false,"maxSize":20,"enum":["single","married","divorced","widower","engaged","stableUnion"]}]}}],"guards":"isAuthorized","elements":[{"id":"personTab","type":"tab","tabs":[{"id":"personMainDataTab","title":"Dados principais","elements":[{"label":"Nacionalidade","type":"select","name":"country","dataType":"text","options":[{"label":"Afghanistan","value":"afghanistan"},{"label":"Aland Islands","value":"alandIslands"},{"label":"Albania","value":"albania"},{"label":"Algeria","value":"algeria"},{"label":"American Samoa","value":"americanSamoa"},{"label":"Andorra","value":"andorra"},{"label":"Angola","value":"angola"},{"label":"Anguilla","value":"anguilla"},{"label":"Antarctica","value":"antarctica"},{"label":"Antigua and Barbuda","value":"antiguaAndBarbuda"},{"label":"Argentina","value":"argentina"},{"label":"Armenia","value":"armenia"},{"label":"Aruba","value":"aruba"},{"label":"Australia","value":"australia"},{"label":"Austria","value":"austria"},{"label":"Azerbaijan","value":"azerbaijan"},{"label":"Bahrain","value":"bahrain"},{"label":"Bangladesh","value":"bangladesh"},{"label":"Barbados","value":"barbados"},{"label":"Belarus","value":"belarus"},{"label":"Belgium","value":"belgium"},{"label":"Belize","value":"belize"},{"label":"Benin","value":"benin"},{"label":"Bermuda","value":"bermuda"},{"label":"Bhutan","value":"bhutan"},{"label":"Bolivia","value":"bolivia"},{"label":"Bonaire, Sint Eustatius and Saba","value":"bonaireSintEustatiusAndSaba"},{"label":"Bosnia and Herzegovina","value":"bosniaAndHerzegovina"},{"label":"Botswana","value":"botswana"},{"label":"Bouvet Island","value":"bouvetIsland"},{"label":"Brazil","value":"brazil"},{"label":"British Indian Ocean Territory","value":"britishIndianOceanTerritory"},{"label":"Brunei","value":"brunei"},{"label":"Bulgaria","value":"bulgaria"},{"label":"Burkina Faso","value":"burkinaFaso"},{"label":"Burundi","value":"burundi"},{"label":"Cambodia","value":"cambodia"},{"label":"Cameroon","value":"cameroon"},{"label":"Canada","value":"canada"},{"label":"Cape Verde","value":"capeVerde"},{"label":"Cayman Islands","value":"caymanIslands"},{"label":"Central African Republic","value":"centralAfricanRepublic"},{"label":"Chad","value":"chad"},{"label":"Chile","value":"chile"},{"label":"China","value":"china"},{"label":"Christmas Island","value":"christmasIsland"},{"label":"Cocos (Keeling) Islands","value":"cocosKeelingIslands"},{"label":"Colombia","value":"colombia"},{"label":"Comoros","value":"comoros"},{"label":"Congo","value":"congo"},{"label":"Cook Islands","value":"cookIslands"},{"label":"Costa Rica","value":"costaRica"},{"label":"Cote D'Ivoire (Ivory Coast)","value":"coteDIvoireIvoryCoast"},{"label":"Croatia","value":"croatia"},{"label":"Cuba","value":"cuba"},{"label":"Curaçao","value":"curaçao"},{"label":"Cyprus","value":"cyprus"},{"label":"Czech Republic","value":"czechRepublic"},{"label":"Democratic Republic of the Congo","value":"democraticRepublicOfTheCongo"},{"label":"Denmark","value":"denmark"},{"label":"Djibouti","value":"djibouti"},{"label":"Dominica","value":"dominica"},{"label":"Dominican Republic","value":"dominicanRepublic"},{"label":"Ecuador","value":"ecuador"},{"label":"Egypt","value":"egypt"},{"label":"El Salvador","value":"elSalvador"},{"label":"Equatorial Guinea","value":"equatorialGuinea"},{"label":"Eritrea","value":"eritrea"},{"label":"Estonia","value":"estonia"},{"label":"Eswatini","value":"eswatini"},{"label":"Ethiopia","value":"ethiopia"},{"label":"Falkland Islands","value":"falklandIslands"},{"label":"Faroe Islands","value":"faroeIslands"},{"label":"Fiji Islands","value":"fijiIslands"},{"label":"Finland","value":"finland"},{"label":"France","value":"france"},{"label":"French Guiana","value":"frenchGuiana"},{"label":"French Polynesia","value":"frenchPolynesia"},{"label":"French Southern Territories","value":"frenchSouthernTerritories"},{"label":"Gabon","value":"gabon"},{"label":"Georgia","value":"georgia"},{"label":"Germany","value":"germany"},{"label":"Ghana","value":"ghana"},{"label":"Gibraltar","value":"gibraltar"},{"label":"Greece","value":"greece"},{"label":"Greenland","value":"greenland"},{"label":"Grenada","value":"grenada"},{"label":"Guadeloupe","value":"guadeloupe"},{"label":"Guam","value":"guam"},{"label":"Guatemala","value":"guatemala"},{"label":"Guernsey and Alderney","value":"guernseyAndAlderney"},{"label":"Guinea","value":"guinea"},{"label":"Guinea-Bissau","value":"guineaBissau"},{"label":"Guyana","value":"guyana"},{"label":"Haiti","value":"haiti"},{"label":"Heard Island and McDonald Islands","value":"heardIslandAndMcdonaldIslands"},{"label":"Honduras","value":"honduras"},{"label":"Hong Kong S.A.R.","value":"hongKongS.a.r."},{"label":"Hungary","value":"hungary"},{"label":"Iceland","value":"iceland"},{"label":"India","value":"india"},{"label":"Indonesia","value":"indonesia"},{"label":"Iran","value":"iran"},{"label":"Iraq","value":"iraq"},{"label":"Ireland","value":"ireland"},{"label":"Israel","value":"israel"},{"label":"Italy","value":"italy"},{"label":"Jamaica","value":"jamaica"},{"label":"Japan","value":"japan"},{"label":"Jersey","value":"jersey"},{"label":"Jordan","value":"jordan"},{"label":"Kazakhstan","value":"kazakhstan"},{"label":"Kenya","value":"kenya"},{"label":"Kiribati","value":"kiribati"},{"label":"Kosovo","value":"kosovo"},{"label":"Kuwait","value":"kuwait"},{"label":"Kyrgyzstan","value":"kyrgyzstan"},{"label":"Laos","value":"laos"},{"label":"Latvia","value":"latvia"},{"label":"Lebanon","value":"lebanon"},{"label":"Lesotho","value":"lesotho"},{"label":"Liberia","value":"liberia"},{"label":"Libya","value":"libya"},{"label":"Liechtenstein","value":"liechtenstein"},{"label":"Lithuania","value":"lithuania"},{"label":"Luxembourg","value":"luxembourg"},{"label":"Macau S.A.R.","value":"macauS.a.r."},{"label":"Madagascar","value":"madagascar"},{"label":"Malawi","value":"malawi"},{"label":"Malaysia","value":"malaysia"},{"label":"Maldives","value":"maldives"},{"label":"Mali","value":"mali"},{"label":"Malta","value":"malta"},{"label":"Man (Isle of)","value":"manIsleOf"},{"label":"Marshall Islands","value":"marshallIslands"},{"label":"Martinique","value":"martinique"},{"label":"Mauritania","value":"mauritania"},{"label":"Mauritius","value":"mauritius"},{"label":"Mayotte","value":"mayotte"},{"label":"Mexico","value":"mexico"},{"label":"Micronesia","value":"micronesia"},{"label":"Moldova","value":"moldova"},{"label":"Monaco","value":"monaco"},{"label":"Mongolia","value":"mongolia"},{"label":"Montenegro","value":"montenegro"},{"label":"Montserrat","value":"montserrat"},{"label":"Morocco","value":"morocco"},{"label":"Mozambique","value":"mozambique"},{"label":"Myanmar","value":"myanmar"},{"label":"Namibia","value":"namibia"},{"label":"Nauru","value":"nauru"},{"label":"Nepal","value":"nepal"},{"label":"Netherlands","value":"netherlands"},{"label":"New Caledonia","value":"newCaledonia"},{"label":"New Zealand","value":"newZealand"},{"label":"Nicaragua","value":"nicaragua"},{"label":"Niger","value":"niger"},{"label":"Nigeria","value":"nigeria"},{"label":"Niue","value":"niue"},{"label":"Norfolk Island","value":"norfolkIsland"},{"label":"North Korea","value":"northKorea"},{"label":"North Macedonia","value":"northMacedonia"},{"label":"Northern Mariana Islands","value":"northernMarianaIslands"},{"label":"Norway","value":"norway"},{"label":"Oman","value":"oman"},{"label":"Pakistan","value":"pakistan"},{"label":"Palau","value":"palau"},{"label":"Palestinian Territory Occupied","value":"palestinianTerritoryOccupied"},{"label":"Panama","value":"panama"},{"label":"Papua New Guinea","value":"papuaNewGuinea"},{"label":"Paraguay","value":"paraguay"},{"label":"Peru","value":"peru"},{"label":"Philippines","value":"philippines"},{"label":"Pitcairn Island","value":"pitcairnIsland"},{"label":"Poland","value":"poland"},{"label":"Portugal","value":"portugal"},{"label":"Puerto Rico","value":"puertoRico"},{"label":"Qatar","value":"qatar"},{"label":"Reunion","value":"reunion"},{"label":"Romania","value":"romania"},{"label":"Russia","value":"russia"},{"label":"Rwanda","value":"rwanda"},{"label":"Saint Helena","value":"saintHelena"},{"label":"Saint Kitts and Nevis","value":"saintKittsAndNevis"},{"label":"Saint Lucia","value":"saintLucia"},{"label":"Saint Pierre and Miquelon","value":"saintPierreAndMiquelon"},{"label":"Saint Vincent and the Grenadines","value":"saintVincentAndTheGrenadines"},{"label":"Saint-Barthelemy","value":"saintBarthelemy"},{"label":"Saint-Martin (French part)","value":"saintMartinFrenchPart"},{"label":"Samoa","value":"samoa"},{"label":"San Marino","value":"sanMarino"},{"label":"Sao Tome and Principe","value":"saoTomeAndPrincipe"},{"label":"Saudi Arabia","value":"saudiArabia"},{"label":"Senegal","value":"senegal"},{"label":"Serbia","value":"serbia"},{"label":"Seychelles","value":"seychelles"},{"label":"Sierra Leone","value":"sierraLeone"},{"label":"Singapore","value":"singapore"},{"label":"Sint Maarten (Dutch part)","value":"sintMaartenDutchPart"},{"label":"Slovakia","value":"slovakia"},{"label":"Slovenia","value":"slovenia"},{"label":"Solomon Islands","value":"solomonIslands"},{"label":"Somalia","value":"somalia"},{"label":"South Africa","value":"southAfrica"},{"label":"South Georgia","value":"southGeorgia"},{"label":"South Korea","value":"southKorea"},{"label":"South Sudan","value":"southSudan"},{"label":"Spain","value":"spain"},{"label":"Sri Lanka","value":"sriLanka"},{"label":"Sudan","value":"sudan"},{"label":"Suriname","value":"suriname"},{"label":"Svalbard and Jan Mayen Islands","value":"svalbardAndJanMayenIslands"},{"label":"Sweden","value":"sweden"},{"label":"Switzerland","value":"switzerland"},{"label":"Syria","value":"syria"},{"label":"Taiwan","value":"taiwan"},{"label":"Tajikistan","value":"tajikistan"},{"label":"Tanzania","value":"tanzania"},{"label":"Thailand","value":"thailand"},{"label":"The Bahamas","value":"theBahamas"},{"label":"The Gambia ","value":"theGambia"},{"label":"Timor-Leste","value":"timorLeste"},{"label":"Togo","value":"togo"},{"label":"Tokelau","value":"tokelau"},{"label":"Tonga","value":"tonga"},{"label":"Trinidad and Tobago","value":"trinidadAndTobago"},{"label":"Tunisia","value":"tunisia"},{"label":"Turkey","value":"turkey"},{"label":"Turkmenistan","value":"turkmenistan"},{"label":"Turks and Caicos Islands","value":"turksAndCaicosIslands"},{"label":"Tuvalu","value":"tuvalu"},{"label":"Uganda","value":"uganda"},{"label":"Ukraine","value":"ukraine"},{"label":"United Arab Emirates","value":"unitedArabEmirates"},{"label":"United Kingdom","value":"unitedKingdom"},{"label":"United States","value":"unitedStates"},{"label":"United States Minor Outlying Islands","value":"unitedStatesMinorOutlyingIslands"},{"label":"Uruguay","value":"uruguay"},{"label":"Uzbekistan","value":"uzbekistan"},{"label":"Vanuatu","value":"vanuatu"},{"label":"Vatican City State (Holy See)","value":"vaticanCityStateHolySee"},{"label":"Venezuela","value":"venezuela"},{"label":"Vietnam","value":"vietnam"},{"label":"Virgin Islands (British)","value":"virginIslandsBritish"},{"label":"Virgin Islands (US)","value":"virginIslandsUs"},{"label":"Wallis and Futuna Islands","value":"wallisAndFutunaIslands"},{"label":"Western Sahara","value":"westernSahara"},{"label":"Yemen","value":"yemen"},{"label":"Zambia","value":"zambia"},{"label":"Zimbabwe","value":"zimbabwe"}],"isRequired":true},{"label":"CPF","type":"input","dataType":"text","name":"cpf","validators":["cpf"],"isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Passaporte","type":"input","dataType":"text","name":"passport","isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Data de emissão do passaporte","type":"input","dataType":"date","name":"passportIssueDate","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Data de validade do passaporte","type":"input","dataType":"date","name":"passportExpiryDate","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Nome completo","type":"input","dataType":"text","name":"name","isRequired":true},{"label":"Gênero","type":"select","dataType":"text","name":"gender","options":[{"label":"Masculino","value":"m"},{"label":"Feminino","value":"f"},{"label":"Outro","value":"o"}]},{"label":"Data de nascimento","type":"input","dataType":"date","name":"birthday"},{"label":"Foto da pessoa","type":"file","dataType":"text","storageConfig":{"fileNameStrategy":"uuid","path":"person/pictures","visibility":"public"},"name":"picture"},{"label":"Telefone principal","type":"input","dataType":"text","name":"phoneOne","validators":["phone"],"isRequired":true},{"label":"E-mail principal","type":"input","dataType":"email","name":"emailOne","isRequired":true}]},{"id":"personAddressTab","title":"Endereços","elements":[{"type":"fieldset","id":"addressOne","title":"Endereço 1","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressOneZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressOneStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressOneDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressOneCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressOneState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressOneStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressOneDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressOneNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressOneComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressOneCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressOneState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressOneLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressOneLongitude"}]},{"title":"Endereço 2","type":"fieldset","id":"addressTwo","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressTwoZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressTwoStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressTwoDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressTwoCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressTwoState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressTwoStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressTwoDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressTwoNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressTwoComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressTwoCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressTwoState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressTwoLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressTwoLongitude"}]}]},{"id":"personContactTab","title":"Contatos e redes","elements":[{"label":"Telefone secundário","type":"input","dataType":"text","name":"phoneTwo","validators":["phone"]},{"label":"E-mail secundário","type":"input","dataType":"email","name":"emailTwo"},{"label":"Site 1","type":"input","dataType":"text","name":"siteOne"},{"label":"Site 2","type":"input","dataType":"text","name":"siteTwo"},{"label":"Linkedin","type":"input","dataType":"text","name":"linkedin"},{"label":"Instagram","type":"input","dataType":"text","name":"instagram"},{"label":"Facebook","type":"input","dataType":"text","name":"facebook"}]},{"id":"moreDetailsTab","title":"Outros dados","elements":[{"label":"Nome social","type":"input","dataType":"text","name":"nickname"},{"label":"Descrição da pessoa","type":"input","dataType":"wysiwyg","name":"personDescription"},{"label":"Estado civil","type":"select","dataType":"text","name":"personMaritalStatus","options":[{"label":"Solteiro","value":"single"},{"label":"Casado","value":"married"},{"label":"Divorciado","value":"divorced"},{"label":"Viúvo","value":"widower"},{"label":"Noivo","value":"engaged"},{"label":"União estável","value":"stableUnion"}]}]}]}]},"contractId":"people"}]},"fields":[]},"conditions":[{"type":"form","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"People"}]}]},{"id":"customerCompanies","endpoint":"/customers/companies","actions":["create","update","get","getById","delete"],"request":{"entity":"Customers","relatedEntity":{"entity":"Companies","connectionAttribute":"_id","fieldsFromEntity":[{"fields":{"title":"Gerenciamento de empresa","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de empresas para criar e editar registros de empresas, incluindo dados principais como razão social, nome fantasia, CNPJ, nacionalidade, data de abertura, natureza legal e descrição. Eu também quero gerenciar informações de contato e redes sociais, como telefones e e-mails, e até dois endereços completos, para que eu possa manter um cadastro detalhado e atualizado das empresas. Além disso, quero poder associar sócios cadastrados no gerenciamento de pessoas à empresa, para manter um registro de quem são os responsáveis.","componentType":"form","id":"companyForm","contracts":[{"id":"companies","endpoint":"/companies","actions":["create","get","getById","update","delete"],"request":{"entity":"Companies","description":"Represents a company or business entity.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"country","dataType":"nvarchar","isRequired":true},{"name":"cnpj","dataType":"nvarchar","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true},{"name":"businessName","dataType":"nvarchar","isRequired":false},{"name":"birthday","dataType":"date","isRequired":false},{"name":"legalNature","dataType":"nvarchar","isRequired":false},{"name":"stateRegistration","dataType":"nvarchar","isRequired":false},{"name":"municipalRegistration","dataType":"nvarchar","isRequired":false},{"name":"description","dataType":"longtext","isRequired":false},{"name":"logo","dataType":"nvarchar","isRequired":false},{"name":"partners","dataType":"uniqueidentifier","isRequired":false,"foreignKey":{"entity":"People","connectionAttribute":"_id","relationship":"many-to-many"}},{"name":"phoneOne","dataType":"nvarchar","isRequired":true},{"name":"emailOne","dataType":"nvarchar","isRequired":true},{"name":"addressOneZipCode","dataType":"nvarchar","isRequired":false},{"name":"addressOneStreet","dataType":"nvarchar","isRequired":false},{"name":"addressOneDistrict","dataType":"nvarchar","isRequired":false},{"name":"addressOneNumber","dataType":"nvarchar","isRequired":false},{"name":"addressOneComplement","dataType":"nvarchar","isRequired":false},{"name":"addressOneCity","dataType":"nvarchar","isRequired":false},{"name":"addressOneState","dataType":"nvarchar","isRequired":false},{"name":"addressOneLatitude","dataType":"nvarchar","isRequired":false},{"name":"addressOneLongitude","dataType":"nvarchar","isRequired":false},{"name":"addressTwoZipCode","dataType":"nvarchar","isRequired":false},{"name":"addressTwoStreet","dataType":"nvarchar","isRequired":false},{"name":"addressTwoDistrict","dataType":"nvarchar","isRequired":false},{"name":"addressTwoNumber","dataType":"nvarchar","isRequired":false},{"name":"addressTwoComplement","dataType":"nvarchar","isRequired":false},{"name":"addressTwoCity","dataType":"nvarchar","isRequired":false},{"name":"addressTwoState","dataType":"nvarchar","isRequired":false},{"name":"addressTwoLatitude","dataType":"nvarchar","isRequired":false},{"name":"addressTwoLongitude","dataType":"nvarchar","isRequired":false},{"name":"phoneTwo","dataType":"nvarchar","isRequired":false},{"name":"emailTwo","dataType":"nvarchar","isRequired":false},{"name":"siteOne","dataType":"nvarchar","isRequired":false},{"name":"siteTwo","dataType":"nvarchar","isRequired":false},{"name":"linkedin","dataType":"nvarchar","isRequired":false},{"name":"instagram","dataType":"nvarchar","isRequired":false},{"name":"facebook","dataType":"nvarchar","isRequired":false}]}}],"guards":"isAuthorized","elements":[{"type":"tab","id":"companyTab","tabs":[{"id":"companyMainDataTab","title":"Dados principais","elements":[{"label":"Nacionalidade","type":"select","name":"country","dataType":"text","options":[{"label":"Afghanistan","value":"afghanistan"},{"label":"Aland Islands","value":"alandIslands"},{"label":"Albania","value":"albania"},{"label":"Algeria","value":"algeria"},{"label":"American Samoa","value":"americanSamoa"},{"label":"Andorra","value":"andorra"},{"label":"Angola","value":"angola"},{"label":"Anguilla","value":"anguilla"},{"label":"Antarctica","value":"antarctica"},{"label":"Antigua and Barbuda","value":"antiguaAndBarbuda"},{"label":"Argentina","value":"argentina"},{"label":"Armenia","value":"armenia"},{"label":"Aruba","value":"aruba"},{"label":"Australia","value":"australia"},{"label":"Austria","value":"austria"},{"label":"Azerbaijan","value":"azerbaijan"},{"label":"Bahrain","value":"bahrain"},{"label":"Bangladesh","value":"bangladesh"},{"label":"Barbados","value":"barbados"},{"label":"Belarus","value":"belarus"},{"label":"Belgium","value":"belgium"},{"label":"Belize","value":"belize"},{"label":"Benin","value":"benin"},{"label":"Bermuda","value":"bermuda"},{"label":"Bhutan","value":"bhutan"},{"label":"Bolivia","value":"bolivia"},{"label":"Bonaire, Sint Eustatius and Saba","value":"bonaireSintEustatiusAndSaba"},{"label":"Bosnia and Herzegovina","value":"bosniaAndHerzegovina"},{"label":"Botswana","value":"botswana"},{"label":"Bouvet Island","value":"bouvetIsland"},{"label":"Brazil","value":"brazil"},{"label":"British Indian Ocean Territory","value":"britishIndianOceanTerritory"},{"label":"Brunei","value":"brunei"},{"label":"Bulgaria","value":"bulgaria"},{"label":"Burkina Faso","value":"burkinaFaso"},{"label":"Burundi","value":"burundi"},{"label":"Cambodia","value":"cambodia"},{"label":"Cameroon","value":"cameroon"},{"label":"Canada","value":"canada"},{"label":"Cape Verde","value":"capeVerde"},{"label":"Cayman Islands","value":"caymanIslands"},{"label":"Central African Republic","value":"centralAfricanRepublic"},{"label":"Chad","value":"chad"},{"label":"Chile","value":"chile"},{"label":"China","value":"china"},{"label":"Christmas Island","value":"christmasIsland"},{"label":"Cocos (Keeling) Islands","value":"cocosKeelingIslands"},{"label":"Colombia","value":"colombia"},{"label":"Comoros","value":"comoros"},{"label":"Congo","value":"congo"},{"label":"Cook Islands","value":"cookIslands"},{"label":"Costa Rica","value":"costaRica"},{"label":"Cote D'Ivoire (Ivory Coast)","value":"coteDIvoireIvoryCoast"},{"label":"Croatia","value":"croatia"},{"label":"Cuba","value":"cuba"},{"label":"Curaçao","value":"curaçao"},{"label":"Cyprus","value":"cyprus"},{"label":"Czech Republic","value":"czechRepublic"},{"label":"Democratic Republic of the Congo","value":"democraticRepublicOfTheCongo"},{"label":"Denmark","value":"denmark"},{"label":"Djibouti","value":"djibouti"},{"label":"Dominica","value":"dominica"},{"label":"Dominican Republic","value":"dominicanRepublic"},{"label":"Ecuador","value":"ecuador"},{"label":"Egypt","value":"egypt"},{"label":"El Salvador","value":"elSalvador"},{"label":"Equatorial Guinea","value":"equatorialGuinea"},{"label":"Eritrea","value":"eritrea"},{"label":"Estonia","value":"estonia"},{"label":"Eswatini","value":"eswatini"},{"label":"Ethiopia","value":"ethiopia"},{"label":"Falkland Islands","value":"falklandIslands"},{"label":"Faroe Islands","value":"faroeIslands"},{"label":"Fiji Islands","value":"fijiIslands"},{"label":"Finland","value":"finland"},{"label":"France","value":"france"},{"label":"French Guiana","value":"frenchGuiana"},{"label":"French Polynesia","value":"frenchPolynesia"},{"label":"French Southern Territories","value":"frenchSouthernTerritories"},{"label":"Gabon","value":"gabon"},{"label":"Georgia","value":"georgia"},{"label":"Germany","value":"germany"},{"label":"Ghana","value":"ghana"},{"label":"Gibraltar","value":"gibraltar"},{"label":"Greece","value":"greece"},{"label":"Greenland","value":"greenland"},{"label":"Grenada","value":"grenada"},{"label":"Guadeloupe","value":"guadeloupe"},{"label":"Guam","value":"guam"},{"label":"Guatemala","value":"guatemala"},{"label":"Guernsey and Alderney","value":"guernseyAndAlderney"},{"label":"Guinea","value":"guinea"},{"label":"Guinea-Bissau","value":"guineaBissau"},{"label":"Guyana","value":"guyana"},{"label":"Haiti","value":"haiti"},{"label":"Heard Island and McDonald Islands","value":"heardIslandAndMcdonaldIslands"},{"label":"Honduras","value":"honduras"},{"label":"Hong Kong S.A.R.","value":"hongKongS.a.r."},{"label":"Hungary","value":"hungary"},{"label":"Iceland","value":"iceland"},{"label":"India","value":"india"},{"label":"Indonesia","value":"indonesia"},{"label":"Iran","value":"iran"},{"label":"Iraq","value":"iraq"},{"label":"Ireland","value":"ireland"},{"label":"Israel","value":"israel"},{"label":"Italy","value":"italy"},{"label":"Jamaica","value":"jamaica"},{"label":"Japan","value":"japan"},{"label":"Jersey","value":"jersey"},{"label":"Jordan","value":"jordan"},{"label":"Kazakhstan","value":"kazakhstan"},{"label":"Kenya","value":"kenya"},{"label":"Kiribati","value":"kiribati"},{"label":"Kosovo","value":"kosovo"},{"label":"Kuwait","value":"kuwait"},{"label":"Kyrgyzstan","value":"kyrgyzstan"},{"label":"Laos","value":"laos"},{"label":"Latvia","value":"latvia"},{"label":"Lebanon","value":"lebanon"},{"label":"Lesotho","value":"lesotho"},{"label":"Liberia","value":"liberia"},{"label":"Libya","value":"libya"},{"label":"Liechtenstein","value":"liechtenstein"},{"label":"Lithuania","value":"lithuania"},{"label":"Luxembourg","value":"luxembourg"},{"label":"Macau S.A.R.","value":"macauS.a.r."},{"label":"Madagascar","value":"madagascar"},{"label":"Malawi","value":"malawi"},{"label":"Malaysia","value":"malaysia"},{"label":"Maldives","value":"maldives"},{"label":"Mali","value":"mali"},{"label":"Malta","value":"malta"},{"label":"Man (Isle of)","value":"manIsleOf"},{"label":"Marshall Islands","value":"marshallIslands"},{"label":"Martinique","value":"martinique"},{"label":"Mauritania","value":"mauritania"},{"label":"Mauritius","value":"mauritius"},{"label":"Mayotte","value":"mayotte"},{"label":"Mexico","value":"mexico"},{"label":"Micronesia","value":"micronesia"},{"label":"Moldova","value":"moldova"},{"label":"Monaco","value":"monaco"},{"label":"Mongolia","value":"mongolia"},{"label":"Montenegro","value":"montenegro"},{"label":"Montserrat","value":"montserrat"},{"label":"Morocco","value":"morocco"},{"label":"Mozambique","value":"mozambique"},{"label":"Myanmar","value":"myanmar"},{"label":"Namibia","value":"namibia"},{"label":"Nauru","value":"nauru"},{"label":"Nepal","value":"nepal"},{"label":"Netherlands","value":"netherlands"},{"label":"New Caledonia","value":"newCaledonia"},{"label":"New Zealand","value":"newZealand"},{"label":"Nicaragua","value":"nicaragua"},{"label":"Niger","value":"niger"},{"label":"Nigeria","value":"nigeria"},{"label":"Niue","value":"niue"},{"label":"Norfolk Island","value":"norfolkIsland"},{"label":"North Korea","value":"northKorea"},{"label":"North Macedonia","value":"northMacedonia"},{"label":"Northern Mariana Islands","value":"northernMarianaIslands"},{"label":"Norway","value":"norway"},{"label":"Oman","value":"oman"},{"label":"Pakistan","value":"pakistan"},{"label":"Palau","value":"palau"},{"label":"Palestinian Territory Occupied","value":"palestinianTerritoryOccupied"},{"label":"Panama","value":"panama"},{"label":"Papua New Guinea","value":"papuaNewGuinea"},{"label":"Paraguay","value":"paraguay"},{"label":"Peru","value":"peru"},{"label":"Philippines","value":"philippines"},{"label":"Pitcairn Island","value":"pitcairnIsland"},{"label":"Poland","value":"poland"},{"label":"Portugal","value":"portugal"},{"label":"Puerto Rico","value":"puertoRico"},{"label":"Qatar","value":"qatar"},{"label":"Reunion","value":"reunion"},{"label":"Romania","value":"romania"},{"label":"Russia","value":"russia"},{"label":"Rwanda","value":"rwanda"},{"label":"Saint Helena","value":"saintHelena"},{"label":"Saint Kitts and Nevis","value":"saintKittsAndNevis"},{"label":"Saint Lucia","value":"saintLucia"},{"label":"Saint Pierre and Miquelon","value":"saintPierreAndMiquelon"},{"label":"Saint Vincent and the Grenadines","value":"saintVincentAndTheGrenadines"},{"label":"Saint-Barthelemy","value":"saintBarthelemy"},{"label":"Saint-Martin (French part)","value":"saintMartinFrenchPart"},{"label":"Samoa","value":"samoa"},{"label":"San Marino","value":"sanMarino"},{"label":"Sao Tome and Principe","value":"saoTomeAndPrincipe"},{"label":"Saudi Arabia","value":"saudiArabia"},{"label":"Senegal","value":"senegal"},{"label":"Serbia","value":"serbia"},{"label":"Seychelles","value":"seychelles"},{"label":"Sierra Leone","value":"sierraLeone"},{"label":"Singapore","value":"singapore"},{"label":"Sint Maarten (Dutch part)","value":"sintMaartenDutchPart"},{"label":"Slovakia","value":"slovakia"},{"label":"Slovenia","value":"slovenia"},{"label":"Solomon Islands","value":"solomonIslands"},{"label":"Somalia","value":"somalia"},{"label":"South Africa","value":"southAfrica"},{"label":"South Georgia","value":"southGeorgia"},{"label":"South Korea","value":"southKorea"},{"label":"South Sudan","value":"southSudan"},{"label":"Spain","value":"spain"},{"label":"Sri Lanka","value":"sriLanka"},{"label":"Sudan","value":"sudan"},{"label":"Suriname","value":"suriname"},{"label":"Svalbard and Jan Mayen Islands","value":"svalbardAndJanMayenIslands"},{"label":"Sweden","value":"sweden"},{"label":"Switzerland","value":"switzerland"},{"label":"Syria","value":"syria"},{"label":"Taiwan","value":"taiwan"},{"label":"Tajikistan","value":"tajikistan"},{"label":"Tanzania","value":"tanzania"},{"label":"Thailand","value":"thailand"},{"label":"The Bahamas","value":"theBahamas"},{"label":"The Gambia ","value":"theGambia"},{"label":"Timor-Leste","value":"timorLeste"},{"label":"Togo","value":"togo"},{"label":"Tokelau","value":"tokelau"},{"label":"Tonga","value":"tonga"},{"label":"Trinidad and Tobago","value":"trinidadAndTobago"},{"label":"Tunisia","value":"tunisia"},{"label":"Turkey","value":"turkey"},{"label":"Turkmenistan","value":"turkmenistan"},{"label":"Turks and Caicos Islands","value":"turksAndCaicosIslands"},{"label":"Tuvalu","value":"tuvalu"},{"label":"Uganda","value":"uganda"},{"label":"Ukraine","value":"ukraine"},{"label":"United Arab Emirates","value":"unitedArabEmirates"},{"label":"United Kingdom","value":"unitedKingdom"},{"label":"United States","value":"unitedStates"},{"label":"United States Minor Outlying Islands","value":"unitedStatesMinorOutlyingIslands"},{"label":"Uruguay","value":"uruguay"},{"label":"Uzbekistan","value":"uzbekistan"},{"label":"Vanuatu","value":"vanuatu"},{"label":"Vatican City State (Holy See)","value":"vaticanCityStateHolySee"},{"label":"Venezuela","value":"venezuela"},{"label":"Vietnam","value":"vietnam"},{"label":"Virgin Islands (British)","value":"virginIslandsBritish"},{"label":"Virgin Islands (US)","value":"virginIslandsUs"},{"label":"Wallis and Futuna Islands","value":"wallisAndFutunaIslands"},{"label":"Western Sahara","value":"westernSahara"},{"label":"Yemen","value":"yemen"},{"label":"Zambia","value":"zambia"},{"label":"Zimbabwe","value":"zimbabwe"}],"isRequired":true},{"label":"CNPJ","type":"input","dataType":"text","name":"cnpj","maskRegex":"^\\d{2}\\.\\d{3}\\.\\d{3}/\\d{4}-\\d{2}$","isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Razão social","type":"input","dataType":"text","name":"name","isRequired":true},{"label":"Nome fantasia","type":"input","dataType":"text","name":"businessName"},{"type":"input","dataType":"date","label":"Data de abertura","name":"birthday"},{"label":"Natureza legal","type":"select","dataType":"text","name":"legalNature","options":[{"label":"Empresa Pública","value":"201-1"},{"label":"Sociedade de Economia Mista","value":"203-8"},{"label":"Sociedade Anônima Aberta","value":"204-6"},{"label":"Sociedade Anônima Fechada","value":"205-4"},{"label":"Sociedade Empresária Limitada","value":"206-2"},{"label":"Sociedade Empresária em Nome Coletivo","value":"207-0"},{"label":"Sociedade Empresária em Comandita Simples","value":"208-9"},{"label":"Sociedade Empresária em Comandita por Ações","value":"209-7"},{"label":"Sociedade em Conta de Participação","value":"212-7"},{"label":"Empresário(Individual)","value":"213-5"},{"label":"Cooperativa","value":"214-3"},{"label":"Consórcio de Sociedades","value":"215-1"},{"label":"Grupo de Sociedades","value":"216-0"},{"label":"Estabelecimento, no Brasil, de Sociedade Estrangeira","value":"217-8"},{"label":"Estabelecimento, no Brasil, de Empresa Binacional Argentino - Brasileira","value":"219-4"},{"label":"Empresa Domiciliada no Exterior","value":"221-6"},{"label":"Clube / Fundo de Investimento","value":"222-4"},{"label":"Sociedade Simples Pura","value":"223-2"},{"label":"Sociedade Simples Limitada","value":"224-0"},{"label":"Sociedade Simples em Nome Coletivo","value":"225-9"},{"label":"Sociedade Simples em Comandita Simples","value":"226-7"},{"label":"Empresa Binacional","value":"227-5"},{"label":"Consórcio de Empregadores","value":"228-3"},{"label":"Consórcio Simples","value":"229-1"},{"label":"Empresa Individual de Responsabilidade Limitada(de Natureza Empresária)","value":"230-5"},{"label":"Empresa Individual de Responsabilidade Limitada(de Natureza Simples)","value":"231-3"},{"label":"Sociedade Unipessoal de Advogados","value":"232-1"},{"label":"Cooperativas de Consumo","value":"233-0"},{"label":"Serviço Notarial e Registral(Cartório)","value":"303-4"},{"label":"Fundação Privada","value":"306-9"},{"label":"Serviço Social Autônomo","value":"307-7"},{"label":"Condomínio Edilício","value":"308-5"},{"label":"Comissão de Conciliação Prévia","value":"310-7"},{"label":"Entidade de Mediação e Arbitragem","value":"311-5"},{"label":"Entidade Sindical","value":"313-1"},{"label":"Estabelecimento, no Brasil, de Fundação ou Associação Estrangeiras","value":"320-4"},{"label":"Fundação ou Associação Domiciliada no Exterior","value":"321-2"},{"label":"Organização Religiosa","value":"322-0"},{"label":"Comunidade Indígena","value":"323-9"},{"label":"Fundo Privado","value":"324-7"},{"label":"Órgão de Direção Nacional de Partido Político","value":"325-5"},{"label":"Órgão de Direção Regional de Partido Político","value":"326-3"},{"label":"Órgão de Direção Local de Partido Político","value":"327-1"},{"label":"Comitê Financeiro de Partido Político","value":"328-0"},{"label":"Frente Plebiscitária ou Referendária","value":"329-8"},{"label":"Organização Social(OS)","value":"330-1"},{"label":"Demais Condomínios","value":"331-0"},{"label":"Associação Privada","value":"399-9"},{"label":"Empresa Individual Imobiliária","value":"401-4"},{"label":"Segurado Especial","value":"402-2"},{"label":"Contribuinte individual","value":"408-1"},{"label":"Candidato a Cargo Político Eletivo","value":"409-0"},{"label":"Leiloeiro","value":"411-1"},{"label":"Produtor Rural(Pessoa Física)","value":"412-0"},{"label":"Organização Internacional","value":"501-0"},{"label":"Representação Diplomática Estrangeira","value":"502-9"},{"label":"Outras Instituições Extraterritoriais","value":"503-7"},{"label":"Órgão Público do Poder Executivo Federal","value":"101-5"},{"label":"Órgão Público do Poder Executivo Estadual ou do Distrito Federal","value":"102-3"},{"label":"Órgão Público do Poder Executivo Municipal","value":"103-1"},{"label":"Órgão Público do Poder Legislativo Federal","value":"104-0"},{"label":"Órgão Público do Poder Legislativo Estadual ou do Distrito Federal","value":"105-8"},{"label":"Órgão Público do Poder Legislativo Municipal","value":"106-6"},{"label":"Órgão Público do Poder Judiciário Federal","value":"107-4"},{"label":"Órgão Público do Poder Judiciário Estadual","value":"108-2"},{"label":"Autarquia Federal","value":"110-4"},{"label":"Autarquia Estadual ou do Distrito Federal","value":"111-2"},{"label":"Autarquia Municipal","value":"112-0"},{"label":"Fundação Pública de Direito Público Federal","value":"113-9"},{"label":"Fundação Pública de Direito Público Estadual ou do Distrito Federal","value":"114-7"},{"label":"Fundação Pública de Direito Público Municipal","value":"115-5"},{"label":"Órgão Público Autônomo Federal","value":"116-3"},{"label":"Órgão Público Autônomo Estadual ou do Distrito Federal","value":"117-1"},{"label":"Órgão Público Autônomo Municipal","value":"118-0"},{"label":"Comissão Polinacional","value":"119-8"},{"label":"Fundo Público","value":"120-1"},{"label":"Consórcio Público de Direito Público(Associação Pública)","value":"121-0"},{"label":"Consórcio Público de Direito Privado","value":"122-8"},{"label":"Estado ou Distrito Federal","value":"123-6"},{"label":"Município","value":"124-4"},{"label":"Fundação Pública de Direito Privado Federal","value":"125-2"},{"label":"Fundação Pública de Direito Privado Estadual ou do Distrito Federal","value":"126-0"},{"label":"Fundação Pública de Direito Privado Municipal","value":"127-9"}],"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Inscrição estadual","type":"input","dataType":"text","name":"stateRegistration","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}],"validators":["onlyNumbers"]},{"type":"input","label":"Inscrição municipal","dataType":"text","name":"municipalRegistration","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"type":"input","dataType":"wysiwyg","label":"Descrição da empresa","name":"description"},{"label":"Logo da empresa","type":"file","dataType":"text","name":"logo","storageConfig":{"fileNameStrategy":"uuid","path":"company/logos","visibility":"public"}},{"label":"Sócios","type":"autocomplete","dataType":"text","tooltip":"O(s) sócio(s) deve(m) estar cadastrado(s) no gerenciamento de pessoas.","name":"partners","optionsApi":{"endpoint":"/people","labelField":["cpf","name"],"valueField":"_id","paramsToFilter":["cpf","name"],"paramType":"query","relatedEntity":"People"},"isMultiple":true},{"label":"Telefone principal","type":"input","dataType":"text","name":"phoneOne","maskRegex":"^\\(\\d{2}\\) \\d{4,5}-\\d{4}$","isRequired":true},{"label":"E-mail principal","type":"input","dataType":"email","name":"emailOne","isRequired":true}]},{"id":"companyAddressTab","title":"Endereços","elements":[{"type":"fieldset","id":"addressOne","title":"Endereço 1","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressOneZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressOneStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressOneDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressOneCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressOneState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressOneStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressOneDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressOneNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressOneComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressOneCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressOneState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressOneLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressOneLongitude"}]},{"type":"fieldset","id":"addressTwo","title":"Endereço 2","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressTwoZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressTwoStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressTwoDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressTwoCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressTwoState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressTwoStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressTwoDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressTwoNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressTwoComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressTwoCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressTwoState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressTwoLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressTwoLongitude"}]}]},{"id":"companyContactTab","title":"Contatos e redes","elements":[{"label":"Telefone secundário","type":"input","dataType":"text","name":"phoneTwo","validators":["phone"]},{"label":"E-mail secundário","type":"input","dataType":"email","name":"emailTwo"},{"label":"Site 1","type":"input","dataType":"text","name":"siteOne"},{"label":"Site 2","type":"input","dataType":"text","name":"siteTwo"},{"label":"Linkedin","type":"input","dataType":"text","name":"linkedin"},{"label":"Instagram","type":"input","dataType":"text","name":"instagram"},{"label":"Facebook","type":"input","dataType":"text","name":"facebook"}]}]}]},"contractId":"companies"}]},"fields":[{"name":"entityId","dataType":"uniqueidentifier"},{"name":"entityRelated","dataType":"nvarchar"}]},"conditions":[{"type":"form","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"Companies"}]}]}],"elements":[{"type":"select","dataType":"nvarchar","label":"Tipo de cliente","name":"entityRelated","options":[{"label":"Pessoa","value":"People"},{"label":"Empresa","value":"Companies"}],"isDisabledOnUpdate":true},{"type":"inheritance","form":{"title":"Gerenciamento de cliente pessoa","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de pessoa para inserir e editar informações de clientes, incluindo dados principais (como nome, nacionalidade, CPF, data de nascimento, gênero, foto, telefones e e-mails), contatos e redes sociais (como telefones secundários, e-mails e links de sites), e endereços, para que eu possa manter um registro completo e atualizado das pessoas no sistema.","componentType":"form","id":"personForm","contracts":[{"id":"people","endpoint":"/people","actions":["create","get","getById","update","delete"],"request":{"entity":"People","description":"Represents an individual person with personal details and contact information.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"country","dataType":"nvarchar","isRequired":true,"maxSize":100},{"name":"cpf","dataType":"nvarchar","isRequired":false,"maxSize":14},{"name":"passport","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"passportIssueDate","dataType":"datetime2","isRequired":false},{"name":"passportExpiryDate","dataType":"datetime2","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true,"maxSize":200},{"name":"gender","dataType":"nvarchar","isRequired":false,"maxSize":10,"enum":["male","female","other"]},{"name":"birthday","dataType":"datetime2","isRequired":false},{"name":"picture","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"phoneOne","dataType":"nvarchar","isRequired":true,"maxSize":20},{"name":"emailOne","dataType":"nvarchar","isRequired":true,"maxSize":100},{"name":"addressOneZipCode","dataType":"nvarchar","isRequired":false,"maxSize":10},{"name":"addressOneStreet","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"addressOneDistrict","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneNumber","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"addressOneComplement","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneCity","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneState","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneLatitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressOneLongitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressTwoZipCode","dataType":"nvarchar","isRequired":false,"maxSize":10},{"name":"addressTwoStreet","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"addressTwoDistrict","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoNumber","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"addressTwoComplement","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoCity","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoState","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoLatitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressTwoLongitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"phoneTwo","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"emailTwo","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"siteOne","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"siteTwo","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"linkedin","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"instagram","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"facebook","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"nickname","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"personDescription","dataType":"longtext","isRequired":false},{"name":"personMaritalStatus","dataType":"nvarchar","isRequired":false,"maxSize":20,"enum":["single","married","divorced","widower","engaged","stableUnion"]}]}}],"guards":"isAuthorized","elements":[{"id":"personTab","type":"tab","tabs":[{"id":"personMainDataTab","title":"Dados principais","elements":[{"label":"Nacionalidade","type":"select","name":"country","dataType":"text","options":[{"label":"Afghanistan","value":"afghanistan"},{"label":"Aland Islands","value":"alandIslands"},{"label":"Albania","value":"albania"},{"label":"Algeria","value":"algeria"},{"label":"American Samoa","value":"americanSamoa"},{"label":"Andorra","value":"andorra"},{"label":"Angola","value":"angola"},{"label":"Anguilla","value":"anguilla"},{"label":"Antarctica","value":"antarctica"},{"label":"Antigua and Barbuda","value":"antiguaAndBarbuda"},{"label":"Argentina","value":"argentina"},{"label":"Armenia","value":"armenia"},{"label":"Aruba","value":"aruba"},{"label":"Australia","value":"australia"},{"label":"Austria","value":"austria"},{"label":"Azerbaijan","value":"azerbaijan"},{"label":"Bahrain","value":"bahrain"},{"label":"Bangladesh","value":"bangladesh"},{"label":"Barbados","value":"barbados"},{"label":"Belarus","value":"belarus"},{"label":"Belgium","value":"belgium"},{"label":"Belize","value":"belize"},{"label":"Benin","value":"benin"},{"label":"Bermuda","value":"bermuda"},{"label":"Bhutan","value":"bhutan"},{"label":"Bolivia","value":"bolivia"},{"label":"Bonaire, Sint Eustatius and Saba","value":"bonaireSintEustatiusAndSaba"},{"label":"Bosnia and Herzegovina","value":"bosniaAndHerzegovina"},{"label":"Botswana","value":"botswana"},{"label":"Bouvet Island","value":"bouvetIsland"},{"label":"Brazil","value":"brazil"},{"label":"British Indian Ocean Territory","value":"britishIndianOceanTerritory"},{"label":"Brunei","value":"brunei"},{"label":"Bulgaria","value":"bulgaria"},{"label":"Burkina Faso","value":"burkinaFaso"},{"label":"Burundi","value":"burundi"},{"label":"Cambodia","value":"cambodia"},{"label":"Cameroon","value":"cameroon"},{"label":"Canada","value":"canada"},{"label":"Cape Verde","value":"capeVerde"},{"label":"Cayman Islands","value":"caymanIslands"},{"label":"Central African Republic","value":"centralAfricanRepublic"},{"label":"Chad","value":"chad"},{"label":"Chile","value":"chile"},{"label":"China","value":"china"},{"label":"Christmas Island","value":"christmasIsland"},{"label":"Cocos (Keeling) Islands","value":"cocosKeelingIslands"},{"label":"Colombia","value":"colombia"},{"label":"Comoros","value":"comoros"},{"label":"Congo","value":"congo"},{"label":"Cook Islands","value":"cookIslands"},{"label":"Costa Rica","value":"costaRica"},{"label":"Cote D'Ivoire (Ivory Coast)","value":"coteDIvoireIvoryCoast"},{"label":"Croatia","value":"croatia"},{"label":"Cuba","value":"cuba"},{"label":"Curaçao","value":"curaçao"},{"label":"Cyprus","value":"cyprus"},{"label":"Czech Republic","value":"czechRepublic"},{"label":"Democratic Republic of the Congo","value":"democraticRepublicOfTheCongo"},{"label":"Denmark","value":"denmark"},{"label":"Djibouti","value":"djibouti"},{"label":"Dominica","value":"dominica"},{"label":"Dominican Republic","value":"dominicanRepublic"},{"label":"Ecuador","value":"ecuador"},{"label":"Egypt","value":"egypt"},{"label":"El Salvador","value":"elSalvador"},{"label":"Equatorial Guinea","value":"equatorialGuinea"},{"label":"Eritrea","value":"eritrea"},{"label":"Estonia","value":"estonia"},{"label":"Eswatini","value":"eswatini"},{"label":"Ethiopia","value":"ethiopia"},{"label":"Falkland Islands","value":"falklandIslands"},{"label":"Faroe Islands","value":"faroeIslands"},{"label":"Fiji Islands","value":"fijiIslands"},{"label":"Finland","value":"finland"},{"label":"France","value":"france"},{"label":"French Guiana","value":"frenchGuiana"},{"label":"French Polynesia","value":"frenchPolynesia"},{"label":"French Southern Territories","value":"frenchSouthernTerritories"},{"label":"Gabon","value":"gabon"},{"label":"Georgia","value":"georgia"},{"label":"Germany","value":"germany"},{"label":"Ghana","value":"ghana"},{"label":"Gibraltar","value":"gibraltar"},{"label":"Greece","value":"greece"},{"label":"Greenland","value":"greenland"},{"label":"Grenada","value":"grenada"},{"label":"Guadeloupe","value":"guadeloupe"},{"label":"Guam","value":"guam"},{"label":"Guatemala","value":"guatemala"},{"label":"Guernsey and Alderney","value":"guernseyAndAlderney"},{"label":"Guinea","value":"guinea"},{"label":"Guinea-Bissau","value":"guineaBissau"},{"label":"Guyana","value":"guyana"},{"label":"Haiti","value":"haiti"},{"label":"Heard Island and McDonald Islands","value":"heardIslandAndMcdonaldIslands"},{"label":"Honduras","value":"honduras"},{"label":"Hong Kong S.A.R.","value":"hongKongS.a.r."},{"label":"Hungary","value":"hungary"},{"label":"Iceland","value":"iceland"},{"label":"India","value":"india"},{"label":"Indonesia","value":"indonesia"},{"label":"Iran","value":"iran"},{"label":"Iraq","value":"iraq"},{"label":"Ireland","value":"ireland"},{"label":"Israel","value":"israel"},{"label":"Italy","value":"italy"},{"label":"Jamaica","value":"jamaica"},{"label":"Japan","value":"japan"},{"label":"Jersey","value":"jersey"},{"label":"Jordan","value":"jordan"},{"label":"Kazakhstan","value":"kazakhstan"},{"label":"Kenya","value":"kenya"},{"label":"Kiribati","value":"kiribati"},{"label":"Kosovo","value":"kosovo"},{"label":"Kuwait","value":"kuwait"},{"label":"Kyrgyzstan","value":"kyrgyzstan"},{"label":"Laos","value":"laos"},{"label":"Latvia","value":"latvia"},{"label":"Lebanon","value":"lebanon"},{"label":"Lesotho","value":"lesotho"},{"label":"Liberia","value":"liberia"},{"label":"Libya","value":"libya"},{"label":"Liechtenstein","value":"liechtenstein"},{"label":"Lithuania","value":"lithuania"},{"label":"Luxembourg","value":"luxembourg"},{"label":"Macau S.A.R.","value":"macauS.a.r."},{"label":"Madagascar","value":"madagascar"},{"label":"Malawi","value":"malawi"},{"label":"Malaysia","value":"malaysia"},{"label":"Maldives","value":"maldives"},{"label":"Mali","value":"mali"},{"label":"Malta","value":"malta"},{"label":"Man (Isle of)","value":"manIsleOf"},{"label":"Marshall Islands","value":"marshallIslands"},{"label":"Martinique","value":"martinique"},{"label":"Mauritania","value":"mauritania"},{"label":"Mauritius","value":"mauritius"},{"label":"Mayotte","value":"mayotte"},{"label":"Mexico","value":"mexico"},{"label":"Micronesia","value":"micronesia"},{"label":"Moldova","value":"moldova"},{"label":"Monaco","value":"monaco"},{"label":"Mongolia","value":"mongolia"},{"label":"Montenegro","value":"montenegro"},{"label":"Montserrat","value":"montserrat"},{"label":"Morocco","value":"morocco"},{"label":"Mozambique","value":"mozambique"},{"label":"Myanmar","value":"myanmar"},{"label":"Namibia","value":"namibia"},{"label":"Nauru","value":"nauru"},{"label":"Nepal","value":"nepal"},{"label":"Netherlands","value":"netherlands"},{"label":"New Caledonia","value":"newCaledonia"},{"label":"New Zealand","value":"newZealand"},{"label":"Nicaragua","value":"nicaragua"},{"label":"Niger","value":"niger"},{"label":"Nigeria","value":"nigeria"},{"label":"Niue","value":"niue"},{"label":"Norfolk Island","value":"norfolkIsland"},{"label":"North Korea","value":"northKorea"},{"label":"North Macedonia","value":"northMacedonia"},{"label":"Northern Mariana Islands","value":"northernMarianaIslands"},{"label":"Norway","value":"norway"},{"label":"Oman","value":"oman"},{"label":"Pakistan","value":"pakistan"},{"label":"Palau","value":"palau"},{"label":"Palestinian Territory Occupied","value":"palestinianTerritoryOccupied"},{"label":"Panama","value":"panama"},{"label":"Papua New Guinea","value":"papuaNewGuinea"},{"label":"Paraguay","value":"paraguay"},{"label":"Peru","value":"peru"},{"label":"Philippines","value":"philippines"},{"label":"Pitcairn Island","value":"pitcairnIsland"},{"label":"Poland","value":"poland"},{"label":"Portugal","value":"portugal"},{"label":"Puerto Rico","value":"puertoRico"},{"label":"Qatar","value":"qatar"},{"label":"Reunion","value":"reunion"},{"label":"Romania","value":"romania"},{"label":"Russia","value":"russia"},{"label":"Rwanda","value":"rwanda"},{"label":"Saint Helena","value":"saintHelena"},{"label":"Saint Kitts and Nevis","value":"saintKittsAndNevis"},{"label":"Saint Lucia","value":"saintLucia"},{"label":"Saint Pierre and Miquelon","value":"saintPierreAndMiquelon"},{"label":"Saint Vincent and the Grenadines","value":"saintVincentAndTheGrenadines"},{"label":"Saint-Barthelemy","value":"saintBarthelemy"},{"label":"Saint-Martin (French part)","value":"saintMartinFrenchPart"},{"label":"Samoa","value":"samoa"},{"label":"San Marino","value":"sanMarino"},{"label":"Sao Tome and Principe","value":"saoTomeAndPrincipe"},{"label":"Saudi Arabia","value":"saudiArabia"},{"label":"Senegal","value":"senegal"},{"label":"Serbia","value":"serbia"},{"label":"Seychelles","value":"seychelles"},{"label":"Sierra Leone","value":"sierraLeone"},{"label":"Singapore","value":"singapore"},{"label":"Sint Maarten (Dutch part)","value":"sintMaartenDutchPart"},{"label":"Slovakia","value":"slovakia"},{"label":"Slovenia","value":"slovenia"},{"label":"Solomon Islands","value":"solomonIslands"},{"label":"Somalia","value":"somalia"},{"label":"South Africa","value":"southAfrica"},{"label":"South Georgia","value":"southGeorgia"},{"label":"South Korea","value":"southKorea"},{"label":"South Sudan","value":"southSudan"},{"label":"Spain","value":"spain"},{"label":"Sri Lanka","value":"sriLanka"},{"label":"Sudan","value":"sudan"},{"label":"Suriname","value":"suriname"},{"label":"Svalbard and Jan Mayen Islands","value":"svalbardAndJanMayenIslands"},{"label":"Sweden","value":"sweden"},{"label":"Switzerland","value":"switzerland"},{"label":"Syria","value":"syria"},{"label":"Taiwan","value":"taiwan"},{"label":"Tajikistan","value":"tajikistan"},{"label":"Tanzania","value":"tanzania"},{"label":"Thailand","value":"thailand"},{"label":"The Bahamas","value":"theBahamas"},{"label":"The Gambia ","value":"theGambia"},{"label":"Timor-Leste","value":"timorLeste"},{"label":"Togo","value":"togo"},{"label":"Tokelau","value":"tokelau"},{"label":"Tonga","value":"tonga"},{"label":"Trinidad and Tobago","value":"trinidadAndTobago"},{"label":"Tunisia","value":"tunisia"},{"label":"Turkey","value":"turkey"},{"label":"Turkmenistan","value":"turkmenistan"},{"label":"Turks and Caicos Islands","value":"turksAndCaicosIslands"},{"label":"Tuvalu","value":"tuvalu"},{"label":"Uganda","value":"uganda"},{"label":"Ukraine","value":"ukraine"},{"label":"United Arab Emirates","value":"unitedArabEmirates"},{"label":"United Kingdom","value":"unitedKingdom"},{"label":"United States","value":"unitedStates"},{"label":"United States Minor Outlying Islands","value":"unitedStatesMinorOutlyingIslands"},{"label":"Uruguay","value":"uruguay"},{"label":"Uzbekistan","value":"uzbekistan"},{"label":"Vanuatu","value":"vanuatu"},{"label":"Vatican City State (Holy See)","value":"vaticanCityStateHolySee"},{"label":"Venezuela","value":"venezuela"},{"label":"Vietnam","value":"vietnam"},{"label":"Virgin Islands (British)","value":"virginIslandsBritish"},{"label":"Virgin Islands (US)","value":"virginIslandsUs"},{"label":"Wallis and Futuna Islands","value":"wallisAndFutunaIslands"},{"label":"Western Sahara","value":"westernSahara"},{"label":"Yemen","value":"yemen"},{"label":"Zambia","value":"zambia"},{"label":"Zimbabwe","value":"zimbabwe"}],"isRequired":true},{"label":"CPF","type":"input","dataType":"text","name":"cpf","validators":["cpf"],"isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Passaporte","type":"input","dataType":"text","name":"passport","isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Data de emissão do passaporte","type":"input","dataType":"date","name":"passportIssueDate","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Data de validade do passaporte","type":"input","dataType":"date","name":"passportExpiryDate","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Nome completo","type":"input","dataType":"text","name":"name","isRequired":true},{"label":"Gênero","type":"select","dataType":"text","name":"gender","options":[{"label":"Masculino","value":"m"},{"label":"Feminino","value":"f"},{"label":"Outro","value":"o"}]},{"label":"Data de nascimento","type":"input","dataType":"date","name":"birthday"},{"label":"Foto da pessoa","type":"file","dataType":"text","storageConfig":{"fileNameStrategy":"uuid","path":"person/pictures","visibility":"public"},"name":"picture"},{"label":"Telefone principal","type":"input","dataType":"text","name":"phoneOne","validators":["phone"],"isRequired":true},{"label":"E-mail principal","type":"input","dataType":"email","name":"emailOne","isRequired":true}]},{"id":"personAddressTab","title":"Endereços","elements":[{"type":"fieldset","id":"addressOne","title":"Endereço 1","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressOneZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressOneStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressOneDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressOneCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressOneState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressOneStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressOneDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressOneNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressOneComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressOneCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressOneState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressOneLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressOneLongitude"}]},{"title":"Endereço 2","type":"fieldset","id":"addressTwo","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressTwoZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressTwoStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressTwoDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressTwoCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressTwoState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressTwoStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressTwoDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressTwoNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressTwoComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressTwoCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressTwoState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressTwoLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressTwoLongitude"}]}]},{"id":"personContactTab","title":"Contatos e redes","elements":[{"label":"Telefone secundário","type":"input","dataType":"text","name":"phoneTwo","validators":["phone"]},{"label":"E-mail secundário","type":"input","dataType":"email","name":"emailTwo"},{"label":"Site 1","type":"input","dataType":"text","name":"siteOne"},{"label":"Site 2","type":"input","dataType":"text","name":"siteTwo"},{"label":"Linkedin","type":"input","dataType":"text","name":"linkedin"},{"label":"Instagram","type":"input","dataType":"text","name":"instagram"},{"label":"Facebook","type":"input","dataType":"text","name":"facebook"}]},{"id":"moreDetailsTab","title":"Outros dados","elements":[{"label":"Nome social","type":"input","dataType":"text","name":"nickname"},{"label":"Descrição da pessoa","type":"input","dataType":"wysiwyg","name":"personDescription"},{"label":"Estado civil","type":"select","dataType":"text","name":"personMaritalStatus","options":[{"label":"Solteiro","value":"single"},{"label":"Casado","value":"married"},{"label":"Divorciado","value":"divorced"},{"label":"Viúvo","value":"widower"},{"label":"Noivo","value":"engaged"},{"label":"União estável","value":"stableUnion"}]}]}]}]},"conditions":[{"type":"form","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"People"}]}]},{"type":"inheritance","form":{"title":"Gerenciamento de empresa","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de empresas para criar e editar registros de empresas, incluindo dados principais como razão social, nome fantasia, CNPJ, nacionalidade, data de abertura, natureza legal e descrição. Eu também quero gerenciar informações de contato e redes sociais, como telefones e e-mails, e até dois endereços completos, para que eu possa manter um cadastro detalhado e atualizado das empresas. Além disso, quero poder associar sócios cadastrados no gerenciamento de pessoas à empresa, para manter um registro de quem são os responsáveis.","componentType":"form","id":"companyForm","contracts":[{"id":"companies","endpoint":"/companies","actions":["create","get","getById","update","delete"],"request":{"entity":"Companies","description":"Represents a company or business entity.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"country","dataType":"nvarchar","isRequired":true},{"name":"cnpj","dataType":"nvarchar","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true},{"name":"businessName","dataType":"nvarchar","isRequired":false},{"name":"birthday","dataType":"date","isRequired":false},{"name":"legalNature","dataType":"nvarchar","isRequired":false},{"name":"stateRegistration","dataType":"nvarchar","isRequired":false},{"name":"municipalRegistration","dataType":"nvarchar","isRequired":false},{"name":"description","dataType":"longtext","isRequired":false},{"name":"logo","dataType":"nvarchar","isRequired":false},{"name":"partners","dataType":"uniqueidentifier","isRequired":false,"foreignKey":{"entity":"People","connectionAttribute":"_id","relationship":"many-to-many"}},{"name":"phoneOne","dataType":"nvarchar","isRequired":true},{"name":"emailOne","dataType":"nvarchar","isRequired":true},{"name":"addressOneZipCode","dataType":"nvarchar","isRequired":false},{"name":"addressOneStreet","dataType":"nvarchar","isRequired":false},{"name":"addressOneDistrict","dataType":"nvarchar","isRequired":false},{"name":"addressOneNumber","dataType":"nvarchar","isRequired":false},{"name":"addressOneComplement","dataType":"nvarchar","isRequired":false},{"name":"addressOneCity","dataType":"nvarchar","isRequired":false},{"name":"addressOneState","dataType":"nvarchar","isRequired":false},{"name":"addressOneLatitude","dataType":"nvarchar","isRequired":false},{"name":"addressOneLongitude","dataType":"nvarchar","isRequired":false},{"name":"addressTwoZipCode","dataType":"nvarchar","isRequired":false},{"name":"addressTwoStreet","dataType":"nvarchar","isRequired":false},{"name":"addressTwoDistrict","dataType":"nvarchar","isRequired":false},{"name":"addressTwoNumber","dataType":"nvarchar","isRequired":false},{"name":"addressTwoComplement","dataType":"nvarchar","isRequired":false},{"name":"addressTwoCity","dataType":"nvarchar","isRequired":false},{"name":"addressTwoState","dataType":"nvarchar","isRequired":false},{"name":"addressTwoLatitude","dataType":"nvarchar","isRequired":false},{"name":"addressTwoLongitude","dataType":"nvarchar","isRequired":false},{"name":"phoneTwo","dataType":"nvarchar","isRequired":false},{"name":"emailTwo","dataType":"nvarchar","isRequired":false},{"name":"siteOne","dataType":"nvarchar","isRequired":false},{"name":"siteTwo","dataType":"nvarchar","isRequired":false},{"name":"linkedin","dataType":"nvarchar","isRequired":false},{"name":"instagram","dataType":"nvarchar","isRequired":false},{"name":"facebook","dataType":"nvarchar","isRequired":false}]}}],"guards":"isAuthorized","elements":[{"type":"tab","id":"companyTab","tabs":[{"id":"companyMainDataTab","title":"Dados principais","elements":[{"label":"Nacionalidade","type":"select","name":"country","dataType":"text","options":[{"label":"Afghanistan","value":"afghanistan"},{"label":"Aland Islands","value":"alandIslands"},{"label":"Albania","value":"albania"},{"label":"Algeria","value":"algeria"},{"label":"American Samoa","value":"americanSamoa"},{"label":"Andorra","value":"andorra"},{"label":"Angola","value":"angola"},{"label":"Anguilla","value":"anguilla"},{"label":"Antarctica","value":"antarctica"},{"label":"Antigua and Barbuda","value":"antiguaAndBarbuda"},{"label":"Argentina","value":"argentina"},{"label":"Armenia","value":"armenia"},{"label":"Aruba","value":"aruba"},{"label":"Australia","value":"australia"},{"label":"Austria","value":"austria"},{"label":"Azerbaijan","value":"azerbaijan"},{"label":"Bahrain","value":"bahrain"},{"label":"Bangladesh","value":"bangladesh"},{"label":"Barbados","value":"barbados"},{"label":"Belarus","value":"belarus"},{"label":"Belgium","value":"belgium"},{"label":"Belize","value":"belize"},{"label":"Benin","value":"benin"},{"label":"Bermuda","value":"bermuda"},{"label":"Bhutan","value":"bhutan"},{"label":"Bolivia","value":"bolivia"},{"label":"Bonaire, Sint Eustatius and Saba","value":"bonaireSintEustatiusAndSaba"},{"label":"Bosnia and Herzegovina","value":"bosniaAndHerzegovina"},{"label":"Botswana","value":"botswana"},{"label":"Bouvet Island","value":"bouvetIsland"},{"label":"Brazil","value":"brazil"},{"label":"British Indian Ocean Territory","value":"britishIndianOceanTerritory"},{"label":"Brunei","value":"brunei"},{"label":"Bulgaria","value":"bulgaria"},{"label":"Burkina Faso","value":"burkinaFaso"},{"label":"Burundi","value":"burundi"},{"label":"Cambodia","value":"cambodia"},{"label":"Cameroon","value":"cameroon"},{"label":"Canada","value":"canada"},{"label":"Cape Verde","value":"capeVerde"},{"label":"Cayman Islands","value":"caymanIslands"},{"label":"Central African Republic","value":"centralAfricanRepublic"},{"label":"Chad","value":"chad"},{"label":"Chile","value":"chile"},{"label":"China","value":"china"},{"label":"Christmas Island","value":"christmasIsland"},{"label":"Cocos (Keeling) Islands","value":"cocosKeelingIslands"},{"label":"Colombia","value":"colombia"},{"label":"Comoros","value":"comoros"},{"label":"Congo","value":"congo"},{"label":"Cook Islands","value":"cookIslands"},{"label":"Costa Rica","value":"costaRica"},{"label":"Cote D'Ivoire (Ivory Coast)","value":"coteDIvoireIvoryCoast"},{"label":"Croatia","value":"croatia"},{"label":"Cuba","value":"cuba"},{"label":"Curaçao","value":"curaçao"},{"label":"Cyprus","value":"cyprus"},{"label":"Czech Republic","value":"czechRepublic"},{"label":"Democratic Republic of the Congo","value":"democraticRepublicOfTheCongo"},{"label":"Denmark","value":"denmark"},{"label":"Djibouti","value":"djibouti"},{"label":"Dominica","value":"dominica"},{"label":"Dominican Republic","value":"dominicanRepublic"},{"label":"Ecuador","value":"ecuador"},{"label":"Egypt","value":"egypt"},{"label":"El Salvador","value":"elSalvador"},{"label":"Equatorial Guinea","value":"equatorialGuinea"},{"label":"Eritrea","value":"eritrea"},{"label":"Estonia","value":"estonia"},{"label":"Eswatini","value":"eswatini"},{"label":"Ethiopia","value":"ethiopia"},{"label":"Falkland Islands","value":"falklandIslands"},{"label":"Faroe Islands","value":"faroeIslands"},{"label":"Fiji Islands","value":"fijiIslands"},{"label":"Finland","value":"finland"},{"label":"France","value":"france"},{"label":"French Guiana","value":"frenchGuiana"},{"label":"French Polynesia","value":"frenchPolynesia"},{"label":"French Southern Territories","value":"frenchSouthernTerritories"},{"label":"Gabon","value":"gabon"},{"label":"Georgia","value":"georgia"},{"label":"Germany","value":"germany"},{"label":"Ghana","value":"ghana"},{"label":"Gibraltar","value":"gibraltar"},{"label":"Greece","value":"greece"},{"label":"Greenland","value":"greenland"},{"label":"Grenada","value":"grenada"},{"label":"Guadeloupe","value":"guadeloupe"},{"label":"Guam","value":"guam"},{"label":"Guatemala","value":"guatemala"},{"label":"Guernsey and Alderney","value":"guernseyAndAlderney"},{"label":"Guinea","value":"guinea"},{"label":"Guinea-Bissau","value":"guineaBissau"},{"label":"Guyana","value":"guyana"},{"label":"Haiti","value":"haiti"},{"label":"Heard Island and McDonald Islands","value":"heardIslandAndMcdonaldIslands"},{"label":"Honduras","value":"honduras"},{"label":"Hong Kong S.A.R.","value":"hongKongS.a.r."},{"label":"Hungary","value":"hungary"},{"label":"Iceland","value":"iceland"},{"label":"India","value":"india"},{"label":"Indonesia","value":"indonesia"},{"label":"Iran","value":"iran"},{"label":"Iraq","value":"iraq"},{"label":"Ireland","value":"ireland"},{"label":"Israel","value":"israel"},{"label":"Italy","value":"italy"},{"label":"Jamaica","value":"jamaica"},{"label":"Japan","value":"japan"},{"label":"Jersey","value":"jersey"},{"label":"Jordan","value":"jordan"},{"label":"Kazakhstan","value":"kazakhstan"},{"label":"Kenya","value":"kenya"},{"label":"Kiribati","value":"kiribati"},{"label":"Kosovo","value":"kosovo"},{"label":"Kuwait","value":"kuwait"},{"label":"Kyrgyzstan","value":"kyrgyzstan"},{"label":"Laos","value":"laos"},{"label":"Latvia","value":"latvia"},{"label":"Lebanon","value":"lebanon"},{"label":"Lesotho","value":"lesotho"},{"label":"Liberia","value":"liberia"},{"label":"Libya","value":"libya"},{"label":"Liechtenstein","value":"liechtenstein"},{"label":"Lithuania","value":"lithuania"},{"label":"Luxembourg","value":"luxembourg"},{"label":"Macau S.A.R.","value":"macauS.a.r."},{"label":"Madagascar","value":"madagascar"},{"label":"Malawi","value":"malawi"},{"label":"Malaysia","value":"malaysia"},{"label":"Maldives","value":"maldives"},{"label":"Mali","value":"mali"},{"label":"Malta","value":"malta"},{"label":"Man (Isle of)","value":"manIsleOf"},{"label":"Marshall Islands","value":"marshallIslands"},{"label":"Martinique","value":"martinique"},{"label":"Mauritania","value":"mauritania"},{"label":"Mauritius","value":"mauritius"},{"label":"Mayotte","value":"mayotte"},{"label":"Mexico","value":"mexico"},{"label":"Micronesia","value":"micronesia"},{"label":"Moldova","value":"moldova"},{"label":"Monaco","value":"monaco"},{"label":"Mongolia","value":"mongolia"},{"label":"Montenegro","value":"montenegro"},{"label":"Montserrat","value":"montserrat"},{"label":"Morocco","value":"morocco"},{"label":"Mozambique","value":"mozambique"},{"label":"Myanmar","value":"myanmar"},{"label":"Namibia","value":"namibia"},{"label":"Nauru","value":"nauru"},{"label":"Nepal","value":"nepal"},{"label":"Netherlands","value":"netherlands"},{"label":"New Caledonia","value":"newCaledonia"},{"label":"New Zealand","value":"newZealand"},{"label":"Nicaragua","value":"nicaragua"},{"label":"Niger","value":"niger"},{"label":"Nigeria","value":"nigeria"},{"label":"Niue","value":"niue"},{"label":"Norfolk Island","value":"norfolkIsland"},{"label":"North Korea","value":"northKorea"},{"label":"North Macedonia","value":"northMacedonia"},{"label":"Northern Mariana Islands","value":"northernMarianaIslands"},{"label":"Norway","value":"norway"},{"label":"Oman","value":"oman"},{"label":"Pakistan","value":"pakistan"},{"label":"Palau","value":"palau"},{"label":"Palestinian Territory Occupied","value":"palestinianTerritoryOccupied"},{"label":"Panama","value":"panama"},{"label":"Papua New Guinea","value":"papuaNewGuinea"},{"label":"Paraguay","value":"paraguay"},{"label":"Peru","value":"peru"},{"label":"Philippines","value":"philippines"},{"label":"Pitcairn Island","value":"pitcairnIsland"},{"label":"Poland","value":"poland"},{"label":"Portugal","value":"portugal"},{"label":"Puerto Rico","value":"puertoRico"},{"label":"Qatar","value":"qatar"},{"label":"Reunion","value":"reunion"},{"label":"Romania","value":"romania"},{"label":"Russia","value":"russia"},{"label":"Rwanda","value":"rwanda"},{"label":"Saint Helena","value":"saintHelena"},{"label":"Saint Kitts and Nevis","value":"saintKittsAndNevis"},{"label":"Saint Lucia","value":"saintLucia"},{"label":"Saint Pierre and Miquelon","value":"saintPierreAndMiquelon"},{"label":"Saint Vincent and the Grenadines","value":"saintVincentAndTheGrenadines"},{"label":"Saint-Barthelemy","value":"saintBarthelemy"},{"label":"Saint-Martin (French part)","value":"saintMartinFrenchPart"},{"label":"Samoa","value":"samoa"},{"label":"San Marino","value":"sanMarino"},{"label":"Sao Tome and Principe","value":"saoTomeAndPrincipe"},{"label":"Saudi Arabia","value":"saudiArabia"},{"label":"Senegal","value":"senegal"},{"label":"Serbia","value":"serbia"},{"label":"Seychelles","value":"seychelles"},{"label":"Sierra Leone","value":"sierraLeone"},{"label":"Singapore","value":"singapore"},{"label":"Sint Maarten (Dutch part)","value":"sintMaartenDutchPart"},{"label":"Slovakia","value":"slovakia"},{"label":"Slovenia","value":"slovenia"},{"label":"Solomon Islands","value":"solomonIslands"},{"label":"Somalia","value":"somalia"},{"label":"South Africa","value":"southAfrica"},{"label":"South Georgia","value":"southGeorgia"},{"label":"South Korea","value":"southKorea"},{"label":"South Sudan","value":"southSudan"},{"label":"Spain","value":"spain"},{"label":"Sri Lanka","value":"sriLanka"},{"label":"Sudan","value":"sudan"},{"label":"Suriname","value":"suriname"},{"label":"Svalbard and Jan Mayen Islands","value":"svalbardAndJanMayenIslands"},{"label":"Sweden","value":"sweden"},{"label":"Switzerland","value":"switzerland"},{"label":"Syria","value":"syria"},{"label":"Taiwan","value":"taiwan"},{"label":"Tajikistan","value":"tajikistan"},{"label":"Tanzania","value":"tanzania"},{"label":"Thailand","value":"thailand"},{"label":"The Bahamas","value":"theBahamas"},{"label":"The Gambia ","value":"theGambia"},{"label":"Timor-Leste","value":"timorLeste"},{"label":"Togo","value":"togo"},{"label":"Tokelau","value":"tokelau"},{"label":"Tonga","value":"tonga"},{"label":"Trinidad and Tobago","value":"trinidadAndTobago"},{"label":"Tunisia","value":"tunisia"},{"label":"Turkey","value":"turkey"},{"label":"Turkmenistan","value":"turkmenistan"},{"label":"Turks and Caicos Islands","value":"turksAndCaicosIslands"},{"label":"Tuvalu","value":"tuvalu"},{"label":"Uganda","value":"uganda"},{"label":"Ukraine","value":"ukraine"},{"label":"United Arab Emirates","value":"unitedArabEmirates"},{"label":"United Kingdom","value":"unitedKingdom"},{"label":"United States","value":"unitedStates"},{"label":"United States Minor Outlying Islands","value":"unitedStatesMinorOutlyingIslands"},{"label":"Uruguay","value":"uruguay"},{"label":"Uzbekistan","value":"uzbekistan"},{"label":"Vanuatu","value":"vanuatu"},{"label":"Vatican City State (Holy See)","value":"vaticanCityStateHolySee"},{"label":"Venezuela","value":"venezuela"},{"label":"Vietnam","value":"vietnam"},{"label":"Virgin Islands (British)","value":"virginIslandsBritish"},{"label":"Virgin Islands (US)","value":"virginIslandsUs"},{"label":"Wallis and Futuna Islands","value":"wallisAndFutunaIslands"},{"label":"Western Sahara","value":"westernSahara"},{"label":"Yemen","value":"yemen"},{"label":"Zambia","value":"zambia"},{"label":"Zimbabwe","value":"zimbabwe"}],"isRequired":true},{"label":"CNPJ","type":"input","dataType":"text","name":"cnpj","maskRegex":"^\\d{2}\\.\\d{3}\\.\\d{3}/\\d{4}-\\d{2}$","isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Razão social","type":"input","dataType":"text","name":"name","isRequired":true},{"label":"Nome fantasia","type":"input","dataType":"text","name":"businessName"},{"type":"input","dataType":"date","label":"Data de abertura","name":"birthday"},{"label":"Natureza legal","type":"select","dataType":"text","name":"legalNature","options":[{"label":"Empresa Pública","value":"201-1"},{"label":"Sociedade de Economia Mista","value":"203-8"},{"label":"Sociedade Anônima Aberta","value":"204-6"},{"label":"Sociedade Anônima Fechada","value":"205-4"},{"label":"Sociedade Empresária Limitada","value":"206-2"},{"label":"Sociedade Empresária em Nome Coletivo","value":"207-0"},{"label":"Sociedade Empresária em Comandita Simples","value":"208-9"},{"label":"Sociedade Empresária em Comandita por Ações","value":"209-7"},{"label":"Sociedade em Conta de Participação","value":"212-7"},{"label":"Empresário(Individual)","value":"213-5"},{"label":"Cooperativa","value":"214-3"},{"label":"Consórcio de Sociedades","value":"215-1"},{"label":"Grupo de Sociedades","value":"216-0"},{"label":"Estabelecimento, no Brasil, de Sociedade Estrangeira","value":"217-8"},{"label":"Estabelecimento, no Brasil, de Empresa Binacional Argentino - Brasileira","value":"219-4"},{"label":"Empresa Domiciliada no Exterior","value":"221-6"},{"label":"Clube / Fundo de Investimento","value":"222-4"},{"label":"Sociedade Simples Pura","value":"223-2"},{"label":"Sociedade Simples Limitada","value":"224-0"},{"label":"Sociedade Simples em Nome Coletivo","value":"225-9"},{"label":"Sociedade Simples em Comandita Simples","value":"226-7"},{"label":"Empresa Binacional","value":"227-5"},{"label":"Consórcio de Empregadores","value":"228-3"},{"label":"Consórcio Simples","value":"229-1"},{"label":"Empresa Individual de Responsabilidade Limitada(de Natureza Empresária)","value":"230-5"},{"label":"Empresa Individual de Responsabilidade Limitada(de Natureza Simples)","value":"231-3"},{"label":"Sociedade Unipessoal de Advogados","value":"232-1"},{"label":"Cooperativas de Consumo","value":"233-0"},{"label":"Serviço Notarial e Registral(Cartório)","value":"303-4"},{"label":"Fundação Privada","value":"306-9"},{"label":"Serviço Social Autônomo","value":"307-7"},{"label":"Condomínio Edilício","value":"308-5"},{"label":"Comissão de Conciliação Prévia","value":"310-7"},{"label":"Entidade de Mediação e Arbitragem","value":"311-5"},{"label":"Entidade Sindical","value":"313-1"},{"label":"Estabelecimento, no Brasil, de Fundação ou Associação Estrangeiras","value":"320-4"},{"label":"Fundação ou Associação Domiciliada no Exterior","value":"321-2"},{"label":"Organização Religiosa","value":"322-0"},{"label":"Comunidade Indígena","value":"323-9"},{"label":"Fundo Privado","value":"324-7"},{"label":"Órgão de Direção Nacional de Partido Político","value":"325-5"},{"label":"Órgão de Direção Regional de Partido Político","value":"326-3"},{"label":"Órgão de Direção Local de Partido Político","value":"327-1"},{"label":"Comitê Financeiro de Partido Político","value":"328-0"},{"label":"Frente Plebiscitária ou Referendária","value":"329-8"},{"label":"Organização Social(OS)","value":"330-1"},{"label":"Demais Condomínios","value":"331-0"},{"label":"Associação Privada","value":"399-9"},{"label":"Empresa Individual Imobiliária","value":"401-4"},{"label":"Segurado Especial","value":"402-2"},{"label":"Contribuinte individual","value":"408-1"},{"label":"Candidato a Cargo Político Eletivo","value":"409-0"},{"label":"Leiloeiro","value":"411-1"},{"label":"Produtor Rural(Pessoa Física)","value":"412-0"},{"label":"Organização Internacional","value":"501-0"},{"label":"Representação Diplomática Estrangeira","value":"502-9"},{"label":"Outras Instituições Extraterritoriais","value":"503-7"},{"label":"Órgão Público do Poder Executivo Federal","value":"101-5"},{"label":"Órgão Público do Poder Executivo Estadual ou do Distrito Federal","value":"102-3"},{"label":"Órgão Público do Poder Executivo Municipal","value":"103-1"},{"label":"Órgão Público do Poder Legislativo Federal","value":"104-0"},{"label":"Órgão Público do Poder Legislativo Estadual ou do Distrito Federal","value":"105-8"},{"label":"Órgão Público do Poder Legislativo Municipal","value":"106-6"},{"label":"Órgão Público do Poder Judiciário Federal","value":"107-4"},{"label":"Órgão Público do Poder Judiciário Estadual","value":"108-2"},{"label":"Autarquia Federal","value":"110-4"},{"label":"Autarquia Estadual ou do Distrito Federal","value":"111-2"},{"label":"Autarquia Municipal","value":"112-0"},{"label":"Fundação Pública de Direito Público Federal","value":"113-9"},{"label":"Fundação Pública de Direito Público Estadual ou do Distrito Federal","value":"114-7"},{"label":"Fundação Pública de Direito Público Municipal","value":"115-5"},{"label":"Órgão Público Autônomo Federal","value":"116-3"},{"label":"Órgão Público Autônomo Estadual ou do Distrito Federal","value":"117-1"},{"label":"Órgão Público Autônomo Municipal","value":"118-0"},{"label":"Comissão Polinacional","value":"119-8"},{"label":"Fundo Público","value":"120-1"},{"label":"Consórcio Público de Direito Público(Associação Pública)","value":"121-0"},{"label":"Consórcio Público de Direito Privado","value":"122-8"},{"label":"Estado ou Distrito Federal","value":"123-6"},{"label":"Município","value":"124-4"},{"label":"Fundação Pública de Direito Privado Federal","value":"125-2"},{"label":"Fundação Pública de Direito Privado Estadual ou do Distrito Federal","value":"126-0"},{"label":"Fundação Pública de Direito Privado Municipal","value":"127-9"}],"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Inscrição estadual","type":"input","dataType":"text","name":"stateRegistration","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}],"validators":["onlyNumbers"]},{"type":"input","label":"Inscrição municipal","dataType":"text","name":"municipalRegistration","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"type":"input","dataType":"wysiwyg","label":"Descrição da empresa","name":"description"},{"label":"Logo da empresa","type":"file","dataType":"text","name":"logo","storageConfig":{"fileNameStrategy":"uuid","path":"company/logos","visibility":"public"}},{"label":"Sócios","type":"autocomplete","dataType":"text","tooltip":"O(s) sócio(s) deve(m) estar cadastrado(s) no gerenciamento de pessoas.","name":"partners","optionsApi":{"endpoint":"/people","labelField":["cpf","name"],"valueField":"_id","paramsToFilter":["cpf","name"],"paramType":"query","relatedEntity":"People"},"isMultiple":true},{"label":"Telefone principal","type":"input","dataType":"text","name":"phoneOne","maskRegex":"^\\(\\d{2}\\) \\d{4,5}-\\d{4}$","isRequired":true},{"label":"E-mail principal","type":"input","dataType":"email","name":"emailOne","isRequired":true}]},{"id":"companyAddressTab","title":"Endereços","elements":[{"type":"fieldset","id":"addressOne","title":"Endereço 1","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressOneZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressOneStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressOneDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressOneCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressOneState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressOneStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressOneDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressOneNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressOneComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressOneCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressOneState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressOneLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressOneLongitude"}]},{"type":"fieldset","id":"addressTwo","title":"Endereço 2","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressTwoZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressTwoStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressTwoDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressTwoCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressTwoState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressTwoStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressTwoDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressTwoNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressTwoComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressTwoCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressTwoState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressTwoLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressTwoLongitude"}]}]},{"id":"companyContactTab","title":"Contatos e redes","elements":[{"label":"Telefone secundário","type":"input","dataType":"text","name":"phoneTwo","validators":["phone"]},{"label":"E-mail secundário","type":"input","dataType":"email","name":"emailTwo"},{"label":"Site 1","type":"input","dataType":"text","name":"siteOne"},{"label":"Site 2","type":"input","dataType":"text","name":"siteTwo"},{"label":"Linkedin","type":"input","dataType":"text","name":"linkedin"},{"label":"Instagram","type":"input","dataType":"text","name":"instagram"},{"label":"Facebook","type":"input","dataType":"text","name":"facebook"}]}]}]},"conditions":[{"type":"form","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"Companies"}]}]}]},{"title":"Lista de clientes","id":"customerList","componentType":"list","dataSource":{"endpoint":"/customers","paramType":"query"},"properties":[{"label":"Tipo","property":"entityRelated","type":"title"},{"label":"Nome","property":"People.name","type":"subtitle","conditions":[{"type":"property","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"People"}]}]},{"label":"Telefone","property":"People.phoneOne","type":"subtitle","conditions":[{"type":"property","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"People"}]}]},{"label":"E-mail","property":"People.emailOne","type":"subtitle","conditions":[{"type":"property","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"People"}]}]},{"label":"Nome","property":"Companies.companyName","type":"subtitle","conditions":[{"type":"property","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"Companies"}]}]},{"label":"Telefone","property":"Companies.phoneOne","type":"subtitle","conditions":[{"type":"property","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"Companies"}]}]},{"label":"E-mail","property":"Companies.emailOne","type":"subtitle","conditions":[{"type":"property","elements":[{"key":"entityRelated","comparisonOperator":"===","value":"Companies"}]}]}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/customer-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/customer-list"},"request":{"endpoint":"/customers","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir conteúdo","message":"Deseja realmente excluir esse conteúdo?"}}}}]}]},{"title":"Pessoa","id":"personModule","icon":"person","components":[{"title":"Gerenciamento de cliente pessoa","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de pessoa para inserir e editar informações de clientes, incluindo dados principais (como nome, nacionalidade, CPF, data de nascimento, gênero, foto, telefones e e-mails), contatos e redes sociais (como telefones secundários, e-mails e links de sites), e endereços, para que eu possa manter um registro completo e atualizado das pessoas no sistema.","componentType":"form","id":"personForm","contracts":[{"id":"people","endpoint":"/people","actions":["create","get","getById","update","delete"],"request":{"entity":"People","description":"Represents an individual person with personal details and contact information.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"country","dataType":"nvarchar","isRequired":true,"maxSize":100},{"name":"cpf","dataType":"nvarchar","isRequired":false,"maxSize":14},{"name":"passport","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"passportIssueDate","dataType":"datetime2","isRequired":false},{"name":"passportExpiryDate","dataType":"datetime2","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true,"maxSize":200},{"name":"gender","dataType":"nvarchar","isRequired":false,"maxSize":10,"enum":["male","female","other"]},{"name":"birthday","dataType":"datetime2","isRequired":false},{"name":"picture","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"phoneOne","dataType":"nvarchar","isRequired":true,"maxSize":20},{"name":"emailOne","dataType":"nvarchar","isRequired":true,"maxSize":100},{"name":"addressOneZipCode","dataType":"nvarchar","isRequired":false,"maxSize":10},{"name":"addressOneStreet","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"addressOneDistrict","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneNumber","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"addressOneComplement","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneCity","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneState","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressOneLatitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressOneLongitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressTwoZipCode","dataType":"nvarchar","isRequired":false,"maxSize":10},{"name":"addressTwoStreet","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"addressTwoDistrict","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoNumber","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"addressTwoComplement","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoCity","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoState","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"addressTwoLatitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"addressTwoLongitude","dataType":"nvarchar","isRequired":false,"maxSize":50},{"name":"phoneTwo","dataType":"nvarchar","isRequired":false,"maxSize":20},{"name":"emailTwo","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"siteOne","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"siteTwo","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"linkedin","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"instagram","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"facebook","dataType":"nvarchar","isRequired":false,"maxSize":200},{"name":"nickname","dataType":"nvarchar","isRequired":false,"maxSize":100},{"name":"personDescription","dataType":"longtext","isRequired":false},{"name":"personMaritalStatus","dataType":"nvarchar","isRequired":false,"maxSize":20,"enum":["single","married","divorced","widower","engaged","stableUnion"]}]}}],"guards":"isAuthorized","elements":[{"id":"personTab","type":"tab","tabs":[{"id":"personMainDataTab","title":"Dados principais","elements":[{"label":"Nacionalidade","type":"select","name":"country","dataType":"text","options":[{"label":"Afghanistan","value":"afghanistan"},{"label":"Aland Islands","value":"alandIslands"},{"label":"Albania","value":"albania"},{"label":"Algeria","value":"algeria"},{"label":"American Samoa","value":"americanSamoa"},{"label":"Andorra","value":"andorra"},{"label":"Angola","value":"angola"},{"label":"Anguilla","value":"anguilla"},{"label":"Antarctica","value":"antarctica"},{"label":"Antigua and Barbuda","value":"antiguaAndBarbuda"},{"label":"Argentina","value":"argentina"},{"label":"Armenia","value":"armenia"},{"label":"Aruba","value":"aruba"},{"label":"Australia","value":"australia"},{"label":"Austria","value":"austria"},{"label":"Azerbaijan","value":"azerbaijan"},{"label":"Bahrain","value":"bahrain"},{"label":"Bangladesh","value":"bangladesh"},{"label":"Barbados","value":"barbados"},{"label":"Belarus","value":"belarus"},{"label":"Belgium","value":"belgium"},{"label":"Belize","value":"belize"},{"label":"Benin","value":"benin"},{"label":"Bermuda","value":"bermuda"},{"label":"Bhutan","value":"bhutan"},{"label":"Bolivia","value":"bolivia"},{"label":"Bonaire, Sint Eustatius and Saba","value":"bonaireSintEustatiusAndSaba"},{"label":"Bosnia and Herzegovina","value":"bosniaAndHerzegovina"},{"label":"Botswana","value":"botswana"},{"label":"Bouvet Island","value":"bouvetIsland"},{"label":"Brazil","value":"brazil"},{"label":"British Indian Ocean Territory","value":"britishIndianOceanTerritory"},{"label":"Brunei","value":"brunei"},{"label":"Bulgaria","value":"bulgaria"},{"label":"Burkina Faso","value":"burkinaFaso"},{"label":"Burundi","value":"burundi"},{"label":"Cambodia","value":"cambodia"},{"label":"Cameroon","value":"cameroon"},{"label":"Canada","value":"canada"},{"label":"Cape Verde","value":"capeVerde"},{"label":"Cayman Islands","value":"caymanIslands"},{"label":"Central African Republic","value":"centralAfricanRepublic"},{"label":"Chad","value":"chad"},{"label":"Chile","value":"chile"},{"label":"China","value":"china"},{"label":"Christmas Island","value":"christmasIsland"},{"label":"Cocos (Keeling) Islands","value":"cocosKeelingIslands"},{"label":"Colombia","value":"colombia"},{"label":"Comoros","value":"comoros"},{"label":"Congo","value":"congo"},{"label":"Cook Islands","value":"cookIslands"},{"label":"Costa Rica","value":"costaRica"},{"label":"Cote D'Ivoire (Ivory Coast)","value":"coteDIvoireIvoryCoast"},{"label":"Croatia","value":"croatia"},{"label":"Cuba","value":"cuba"},{"label":"Curaçao","value":"curaçao"},{"label":"Cyprus","value":"cyprus"},{"label":"Czech Republic","value":"czechRepublic"},{"label":"Democratic Republic of the Congo","value":"democraticRepublicOfTheCongo"},{"label":"Denmark","value":"denmark"},{"label":"Djibouti","value":"djibouti"},{"label":"Dominica","value":"dominica"},{"label":"Dominican Republic","value":"dominicanRepublic"},{"label":"Ecuador","value":"ecuador"},{"label":"Egypt","value":"egypt"},{"label":"El Salvador","value":"elSalvador"},{"label":"Equatorial Guinea","value":"equatorialGuinea"},{"label":"Eritrea","value":"eritrea"},{"label":"Estonia","value":"estonia"},{"label":"Eswatini","value":"eswatini"},{"label":"Ethiopia","value":"ethiopia"},{"label":"Falkland Islands","value":"falklandIslands"},{"label":"Faroe Islands","value":"faroeIslands"},{"label":"Fiji Islands","value":"fijiIslands"},{"label":"Finland","value":"finland"},{"label":"France","value":"france"},{"label":"French Guiana","value":"frenchGuiana"},{"label":"French Polynesia","value":"frenchPolynesia"},{"label":"French Southern Territories","value":"frenchSouthernTerritories"},{"label":"Gabon","value":"gabon"},{"label":"Georgia","value":"georgia"},{"label":"Germany","value":"germany"},{"label":"Ghana","value":"ghana"},{"label":"Gibraltar","value":"gibraltar"},{"label":"Greece","value":"greece"},{"label":"Greenland","value":"greenland"},{"label":"Grenada","value":"grenada"},{"label":"Guadeloupe","value":"guadeloupe"},{"label":"Guam","value":"guam"},{"label":"Guatemala","value":"guatemala"},{"label":"Guernsey and Alderney","value":"guernseyAndAlderney"},{"label":"Guinea","value":"guinea"},{"label":"Guinea-Bissau","value":"guineaBissau"},{"label":"Guyana","value":"guyana"},{"label":"Haiti","value":"haiti"},{"label":"Heard Island and McDonald Islands","value":"heardIslandAndMcdonaldIslands"},{"label":"Honduras","value":"honduras"},{"label":"Hong Kong S.A.R.","value":"hongKongS.a.r."},{"label":"Hungary","value":"hungary"},{"label":"Iceland","value":"iceland"},{"label":"India","value":"india"},{"label":"Indonesia","value":"indonesia"},{"label":"Iran","value":"iran"},{"label":"Iraq","value":"iraq"},{"label":"Ireland","value":"ireland"},{"label":"Israel","value":"israel"},{"label":"Italy","value":"italy"},{"label":"Jamaica","value":"jamaica"},{"label":"Japan","value":"japan"},{"label":"Jersey","value":"jersey"},{"label":"Jordan","value":"jordan"},{"label":"Kazakhstan","value":"kazakhstan"},{"label":"Kenya","value":"kenya"},{"label":"Kiribati","value":"kiribati"},{"label":"Kosovo","value":"kosovo"},{"label":"Kuwait","value":"kuwait"},{"label":"Kyrgyzstan","value":"kyrgyzstan"},{"label":"Laos","value":"laos"},{"label":"Latvia","value":"latvia"},{"label":"Lebanon","value":"lebanon"},{"label":"Lesotho","value":"lesotho"},{"label":"Liberia","value":"liberia"},{"label":"Libya","value":"libya"},{"label":"Liechtenstein","value":"liechtenstein"},{"label":"Lithuania","value":"lithuania"},{"label":"Luxembourg","value":"luxembourg"},{"label":"Macau S.A.R.","value":"macauS.a.r."},{"label":"Madagascar","value":"madagascar"},{"label":"Malawi","value":"malawi"},{"label":"Malaysia","value":"malaysia"},{"label":"Maldives","value":"maldives"},{"label":"Mali","value":"mali"},{"label":"Malta","value":"malta"},{"label":"Man (Isle of)","value":"manIsleOf"},{"label":"Marshall Islands","value":"marshallIslands"},{"label":"Martinique","value":"martinique"},{"label":"Mauritania","value":"mauritania"},{"label":"Mauritius","value":"mauritius"},{"label":"Mayotte","value":"mayotte"},{"label":"Mexico","value":"mexico"},{"label":"Micronesia","value":"micronesia"},{"label":"Moldova","value":"moldova"},{"label":"Monaco","value":"monaco"},{"label":"Mongolia","value":"mongolia"},{"label":"Montenegro","value":"montenegro"},{"label":"Montserrat","value":"montserrat"},{"label":"Morocco","value":"morocco"},{"label":"Mozambique","value":"mozambique"},{"label":"Myanmar","value":"myanmar"},{"label":"Namibia","value":"namibia"},{"label":"Nauru","value":"nauru"},{"label":"Nepal","value":"nepal"},{"label":"Netherlands","value":"netherlands"},{"label":"New Caledonia","value":"newCaledonia"},{"label":"New Zealand","value":"newZealand"},{"label":"Nicaragua","value":"nicaragua"},{"label":"Niger","value":"niger"},{"label":"Nigeria","value":"nigeria"},{"label":"Niue","value":"niue"},{"label":"Norfolk Island","value":"norfolkIsland"},{"label":"North Korea","value":"northKorea"},{"label":"North Macedonia","value":"northMacedonia"},{"label":"Northern Mariana Islands","value":"northernMarianaIslands"},{"label":"Norway","value":"norway"},{"label":"Oman","value":"oman"},{"label":"Pakistan","value":"pakistan"},{"label":"Palau","value":"palau"},{"label":"Palestinian Territory Occupied","value":"palestinianTerritoryOccupied"},{"label":"Panama","value":"panama"},{"label":"Papua New Guinea","value":"papuaNewGuinea"},{"label":"Paraguay","value":"paraguay"},{"label":"Peru","value":"peru"},{"label":"Philippines","value":"philippines"},{"label":"Pitcairn Island","value":"pitcairnIsland"},{"label":"Poland","value":"poland"},{"label":"Portugal","value":"portugal"},{"label":"Puerto Rico","value":"puertoRico"},{"label":"Qatar","value":"qatar"},{"label":"Reunion","value":"reunion"},{"label":"Romania","value":"romania"},{"label":"Russia","value":"russia"},{"label":"Rwanda","value":"rwanda"},{"label":"Saint Helena","value":"saintHelena"},{"label":"Saint Kitts and Nevis","value":"saintKittsAndNevis"},{"label":"Saint Lucia","value":"saintLucia"},{"label":"Saint Pierre and Miquelon","value":"saintPierreAndMiquelon"},{"label":"Saint Vincent and the Grenadines","value":"saintVincentAndTheGrenadines"},{"label":"Saint-Barthelemy","value":"saintBarthelemy"},{"label":"Saint-Martin (French part)","value":"saintMartinFrenchPart"},{"label":"Samoa","value":"samoa"},{"label":"San Marino","value":"sanMarino"},{"label":"Sao Tome and Principe","value":"saoTomeAndPrincipe"},{"label":"Saudi Arabia","value":"saudiArabia"},{"label":"Senegal","value":"senegal"},{"label":"Serbia","value":"serbia"},{"label":"Seychelles","value":"seychelles"},{"label":"Sierra Leone","value":"sierraLeone"},{"label":"Singapore","value":"singapore"},{"label":"Sint Maarten (Dutch part)","value":"sintMaartenDutchPart"},{"label":"Slovakia","value":"slovakia"},{"label":"Slovenia","value":"slovenia"},{"label":"Solomon Islands","value":"solomonIslands"},{"label":"Somalia","value":"somalia"},{"label":"South Africa","value":"southAfrica"},{"label":"South Georgia","value":"southGeorgia"},{"label":"South Korea","value":"southKorea"},{"label":"South Sudan","value":"southSudan"},{"label":"Spain","value":"spain"},{"label":"Sri Lanka","value":"sriLanka"},{"label":"Sudan","value":"sudan"},{"label":"Suriname","value":"suriname"},{"label":"Svalbard and Jan Mayen Islands","value":"svalbardAndJanMayenIslands"},{"label":"Sweden","value":"sweden"},{"label":"Switzerland","value":"switzerland"},{"label":"Syria","value":"syria"},{"label":"Taiwan","value":"taiwan"},{"label":"Tajikistan","value":"tajikistan"},{"label":"Tanzania","value":"tanzania"},{"label":"Thailand","value":"thailand"},{"label":"The Bahamas","value":"theBahamas"},{"label":"The Gambia ","value":"theGambia"},{"label":"Timor-Leste","value":"timorLeste"},{"label":"Togo","value":"togo"},{"label":"Tokelau","value":"tokelau"},{"label":"Tonga","value":"tonga"},{"label":"Trinidad and Tobago","value":"trinidadAndTobago"},{"label":"Tunisia","value":"tunisia"},{"label":"Turkey","value":"turkey"},{"label":"Turkmenistan","value":"turkmenistan"},{"label":"Turks and Caicos Islands","value":"turksAndCaicosIslands"},{"label":"Tuvalu","value":"tuvalu"},{"label":"Uganda","value":"uganda"},{"label":"Ukraine","value":"ukraine"},{"label":"United Arab Emirates","value":"unitedArabEmirates"},{"label":"United Kingdom","value":"unitedKingdom"},{"label":"United States","value":"unitedStates"},{"label":"United States Minor Outlying Islands","value":"unitedStatesMinorOutlyingIslands"},{"label":"Uruguay","value":"uruguay"},{"label":"Uzbekistan","value":"uzbekistan"},{"label":"Vanuatu","value":"vanuatu"},{"label":"Vatican City State (Holy See)","value":"vaticanCityStateHolySee"},{"label":"Venezuela","value":"venezuela"},{"label":"Vietnam","value":"vietnam"},{"label":"Virgin Islands (British)","value":"virginIslandsBritish"},{"label":"Virgin Islands (US)","value":"virginIslandsUs"},{"label":"Wallis and Futuna Islands","value":"wallisAndFutunaIslands"},{"label":"Western Sahara","value":"westernSahara"},{"label":"Yemen","value":"yemen"},{"label":"Zambia","value":"zambia"},{"label":"Zimbabwe","value":"zimbabwe"}],"isRequired":true},{"label":"CPF","type":"input","dataType":"text","name":"cpf","validators":["cpf"],"isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Passaporte","type":"input","dataType":"text","name":"passport","isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Data de emissão do passaporte","type":"input","dataType":"date","name":"passportIssueDate","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Data de validade do passaporte","type":"input","dataType":"date","name":"passportExpiryDate","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"!=="}]}]},{"label":"Nome completo","type":"input","dataType":"text","name":"name","isRequired":true},{"label":"Gênero","type":"select","dataType":"text","name":"gender","options":[{"label":"Masculino","value":"m"},{"label":"Feminino","value":"f"},{"label":"Outro","value":"o"}]},{"label":"Data de nascimento","type":"input","dataType":"date","name":"birthday"},{"label":"Foto da pessoa","type":"file","dataType":"text","storageConfig":{"fileNameStrategy":"uuid","path":"person/pictures","visibility":"public"},"name":"picture"},{"label":"Telefone principal","type":"input","dataType":"text","name":"phoneOne","validators":["phone"],"isRequired":true},{"label":"E-mail principal","type":"input","dataType":"email","name":"emailOne","isRequired":true}]},{"id":"personAddressTab","title":"Endereços","elements":[{"type":"fieldset","id":"addressOne","title":"Endereço 1","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressOneZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressOneStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressOneDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressOneCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressOneState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressOneStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressOneDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressOneNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressOneComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressOneCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressOneState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressOneLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressOneLongitude"}]},{"title":"Endereço 2","type":"fieldset","id":"addressTwo","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressTwoZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressTwoStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressTwoDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressTwoCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressTwoState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressTwoStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressTwoDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressTwoNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressTwoComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressTwoCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressTwoState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressTwoLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressTwoLongitude"}]}]},{"id":"personContactTab","title":"Contatos e redes","elements":[{"label":"Telefone secundário","type":"input","dataType":"text","name":"phoneTwo","validators":["phone"]},{"label":"E-mail secundário","type":"input","dataType":"email","name":"emailTwo"},{"label":"Site 1","type":"input","dataType":"text","name":"siteOne"},{"label":"Site 2","type":"input","dataType":"text","name":"siteTwo"},{"label":"Linkedin","type":"input","dataType":"text","name":"linkedin"},{"label":"Instagram","type":"input","dataType":"text","name":"instagram"},{"label":"Facebook","type":"input","dataType":"text","name":"facebook"}]},{"id":"moreDetailsTab","title":"Outros dados","elements":[{"label":"Nome social","type":"input","dataType":"text","name":"nickname"},{"label":"Descrição da pessoa","type":"input","dataType":"wysiwyg","name":"personDescription"},{"label":"Estado civil","type":"select","dataType":"text","name":"personMaritalStatus","options":[{"label":"Solteiro","value":"single"},{"label":"Casado","value":"married"},{"label":"Divorciado","value":"divorced"},{"label":"Viúvo","value":"widower"},{"label":"Noivo","value":"engaged"},{"label":"União estável","value":"stableUnion"}]}]}]}]},{"componentType":"list","id":"personList","title":"Lista de pessoas","guards":["isAuthorized"],"dataSource":{"endpoint":"/people","paramType":"query","hasAuthentication":true},"properties":[{"label":"Foto","property":"personPicture","type":"image"},{"label":"CPF","property":"personCpf","type":"title"},{"label":"Nome","property":"personName","type":"title"},{"label":"Telefone","property":"personPhoneOne","type":"subtitle"},{"label":"E-mail","property":"personEmailOne","type":"subtitle"}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/person-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/person-list"},"request":{"endpoint":"/people","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir pessoa","message":"Deseja realmente excluir essa pessoa?"}}}}]}]},{"title":"Empresa","id":"companyModule","icon":"store","components":[{"title":"Gerenciamento de empresa","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de empresas para criar e editar registros de empresas, incluindo dados principais como razão social, nome fantasia, CNPJ, nacionalidade, data de abertura, natureza legal e descrição. Eu também quero gerenciar informações de contato e redes sociais, como telefones e e-mails, e até dois endereços completos, para que eu possa manter um cadastro detalhado e atualizado das empresas. Além disso, quero poder associar sócios cadastrados no gerenciamento de pessoas à empresa, para manter um registro de quem são os responsáveis.","componentType":"form","id":"companyForm","contracts":[{"id":"companies","endpoint":"/companies","actions":["create","get","getById","update","delete"],"request":{"entity":"Companies","description":"Represents a company or business entity.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"country","dataType":"nvarchar","isRequired":true},{"name":"cnpj","dataType":"nvarchar","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true},{"name":"businessName","dataType":"nvarchar","isRequired":false},{"name":"birthday","dataType":"date","isRequired":false},{"name":"legalNature","dataType":"nvarchar","isRequired":false},{"name":"stateRegistration","dataType":"nvarchar","isRequired":false},{"name":"municipalRegistration","dataType":"nvarchar","isRequired":false},{"name":"description","dataType":"longtext","isRequired":false},{"name":"logo","dataType":"nvarchar","isRequired":false},{"name":"partners","dataType":"uniqueidentifier","isRequired":false,"foreignKey":{"entity":"People","connectionAttribute":"_id","relationship":"many-to-many"}},{"name":"phoneOne","dataType":"nvarchar","isRequired":true},{"name":"emailOne","dataType":"nvarchar","isRequired":true},{"name":"addressOneZipCode","dataType":"nvarchar","isRequired":false},{"name":"addressOneStreet","dataType":"nvarchar","isRequired":false},{"name":"addressOneDistrict","dataType":"nvarchar","isRequired":false},{"name":"addressOneNumber","dataType":"nvarchar","isRequired":false},{"name":"addressOneComplement","dataType":"nvarchar","isRequired":false},{"name":"addressOneCity","dataType":"nvarchar","isRequired":false},{"name":"addressOneState","dataType":"nvarchar","isRequired":false},{"name":"addressOneLatitude","dataType":"nvarchar","isRequired":false},{"name":"addressOneLongitude","dataType":"nvarchar","isRequired":false},{"name":"addressTwoZipCode","dataType":"nvarchar","isRequired":false},{"name":"addressTwoStreet","dataType":"nvarchar","isRequired":false},{"name":"addressTwoDistrict","dataType":"nvarchar","isRequired":false},{"name":"addressTwoNumber","dataType":"nvarchar","isRequired":false},{"name":"addressTwoComplement","dataType":"nvarchar","isRequired":false},{"name":"addressTwoCity","dataType":"nvarchar","isRequired":false},{"name":"addressTwoState","dataType":"nvarchar","isRequired":false},{"name":"addressTwoLatitude","dataType":"nvarchar","isRequired":false},{"name":"addressTwoLongitude","dataType":"nvarchar","isRequired":false},{"name":"phoneTwo","dataType":"nvarchar","isRequired":false},{"name":"emailTwo","dataType":"nvarchar","isRequired":false},{"name":"siteOne","dataType":"nvarchar","isRequired":false},{"name":"siteTwo","dataType":"nvarchar","isRequired":false},{"name":"linkedin","dataType":"nvarchar","isRequired":false},{"name":"instagram","dataType":"nvarchar","isRequired":false},{"name":"facebook","dataType":"nvarchar","isRequired":false}]}}],"guards":"isAuthorized","elements":[{"type":"tab","id":"companyTab","tabs":[{"id":"companyMainDataTab","title":"Dados principais","elements":[{"label":"Nacionalidade","type":"select","name":"country","dataType":"text","options":[{"label":"Afghanistan","value":"afghanistan"},{"label":"Aland Islands","value":"alandIslands"},{"label":"Albania","value":"albania"},{"label":"Algeria","value":"algeria"},{"label":"American Samoa","value":"americanSamoa"},{"label":"Andorra","value":"andorra"},{"label":"Angola","value":"angola"},{"label":"Anguilla","value":"anguilla"},{"label":"Antarctica","value":"antarctica"},{"label":"Antigua and Barbuda","value":"antiguaAndBarbuda"},{"label":"Argentina","value":"argentina"},{"label":"Armenia","value":"armenia"},{"label":"Aruba","value":"aruba"},{"label":"Australia","value":"australia"},{"label":"Austria","value":"austria"},{"label":"Azerbaijan","value":"azerbaijan"},{"label":"Bahrain","value":"bahrain"},{"label":"Bangladesh","value":"bangladesh"},{"label":"Barbados","value":"barbados"},{"label":"Belarus","value":"belarus"},{"label":"Belgium","value":"belgium"},{"label":"Belize","value":"belize"},{"label":"Benin","value":"benin"},{"label":"Bermuda","value":"bermuda"},{"label":"Bhutan","value":"bhutan"},{"label":"Bolivia","value":"bolivia"},{"label":"Bonaire, Sint Eustatius and Saba","value":"bonaireSintEustatiusAndSaba"},{"label":"Bosnia and Herzegovina","value":"bosniaAndHerzegovina"},{"label":"Botswana","value":"botswana"},{"label":"Bouvet Island","value":"bouvetIsland"},{"label":"Brazil","value":"brazil"},{"label":"British Indian Ocean Territory","value":"britishIndianOceanTerritory"},{"label":"Brunei","value":"brunei"},{"label":"Bulgaria","value":"bulgaria"},{"label":"Burkina Faso","value":"burkinaFaso"},{"label":"Burundi","value":"burundi"},{"label":"Cambodia","value":"cambodia"},{"label":"Cameroon","value":"cameroon"},{"label":"Canada","value":"canada"},{"label":"Cape Verde","value":"capeVerde"},{"label":"Cayman Islands","value":"caymanIslands"},{"label":"Central African Republic","value":"centralAfricanRepublic"},{"label":"Chad","value":"chad"},{"label":"Chile","value":"chile"},{"label":"China","value":"china"},{"label":"Christmas Island","value":"christmasIsland"},{"label":"Cocos (Keeling) Islands","value":"cocosKeelingIslands"},{"label":"Colombia","value":"colombia"},{"label":"Comoros","value":"comoros"},{"label":"Congo","value":"congo"},{"label":"Cook Islands","value":"cookIslands"},{"label":"Costa Rica","value":"costaRica"},{"label":"Cote D'Ivoire (Ivory Coast)","value":"coteDIvoireIvoryCoast"},{"label":"Croatia","value":"croatia"},{"label":"Cuba","value":"cuba"},{"label":"Curaçao","value":"curaçao"},{"label":"Cyprus","value":"cyprus"},{"label":"Czech Republic","value":"czechRepublic"},{"label":"Democratic Republic of the Congo","value":"democraticRepublicOfTheCongo"},{"label":"Denmark","value":"denmark"},{"label":"Djibouti","value":"djibouti"},{"label":"Dominica","value":"dominica"},{"label":"Dominican Republic","value":"dominicanRepublic"},{"label":"Ecuador","value":"ecuador"},{"label":"Egypt","value":"egypt"},{"label":"El Salvador","value":"elSalvador"},{"label":"Equatorial Guinea","value":"equatorialGuinea"},{"label":"Eritrea","value":"eritrea"},{"label":"Estonia","value":"estonia"},{"label":"Eswatini","value":"eswatini"},{"label":"Ethiopia","value":"ethiopia"},{"label":"Falkland Islands","value":"falklandIslands"},{"label":"Faroe Islands","value":"faroeIslands"},{"label":"Fiji Islands","value":"fijiIslands"},{"label":"Finland","value":"finland"},{"label":"France","value":"france"},{"label":"French Guiana","value":"frenchGuiana"},{"label":"French Polynesia","value":"frenchPolynesia"},{"label":"French Southern Territories","value":"frenchSouthernTerritories"},{"label":"Gabon","value":"gabon"},{"label":"Georgia","value":"georgia"},{"label":"Germany","value":"germany"},{"label":"Ghana","value":"ghana"},{"label":"Gibraltar","value":"gibraltar"},{"label":"Greece","value":"greece"},{"label":"Greenland","value":"greenland"},{"label":"Grenada","value":"grenada"},{"label":"Guadeloupe","value":"guadeloupe"},{"label":"Guam","value":"guam"},{"label":"Guatemala","value":"guatemala"},{"label":"Guernsey and Alderney","value":"guernseyAndAlderney"},{"label":"Guinea","value":"guinea"},{"label":"Guinea-Bissau","value":"guineaBissau"},{"label":"Guyana","value":"guyana"},{"label":"Haiti","value":"haiti"},{"label":"Heard Island and McDonald Islands","value":"heardIslandAndMcdonaldIslands"},{"label":"Honduras","value":"honduras"},{"label":"Hong Kong S.A.R.","value":"hongKongS.a.r."},{"label":"Hungary","value":"hungary"},{"label":"Iceland","value":"iceland"},{"label":"India","value":"india"},{"label":"Indonesia","value":"indonesia"},{"label":"Iran","value":"iran"},{"label":"Iraq","value":"iraq"},{"label":"Ireland","value":"ireland"},{"label":"Israel","value":"israel"},{"label":"Italy","value":"italy"},{"label":"Jamaica","value":"jamaica"},{"label":"Japan","value":"japan"},{"label":"Jersey","value":"jersey"},{"label":"Jordan","value":"jordan"},{"label":"Kazakhstan","value":"kazakhstan"},{"label":"Kenya","value":"kenya"},{"label":"Kiribati","value":"kiribati"},{"label":"Kosovo","value":"kosovo"},{"label":"Kuwait","value":"kuwait"},{"label":"Kyrgyzstan","value":"kyrgyzstan"},{"label":"Laos","value":"laos"},{"label":"Latvia","value":"latvia"},{"label":"Lebanon","value":"lebanon"},{"label":"Lesotho","value":"lesotho"},{"label":"Liberia","value":"liberia"},{"label":"Libya","value":"libya"},{"label":"Liechtenstein","value":"liechtenstein"},{"label":"Lithuania","value":"lithuania"},{"label":"Luxembourg","value":"luxembourg"},{"label":"Macau S.A.R.","value":"macauS.a.r."},{"label":"Madagascar","value":"madagascar"},{"label":"Malawi","value":"malawi"},{"label":"Malaysia","value":"malaysia"},{"label":"Maldives","value":"maldives"},{"label":"Mali","value":"mali"},{"label":"Malta","value":"malta"},{"label":"Man (Isle of)","value":"manIsleOf"},{"label":"Marshall Islands","value":"marshallIslands"},{"label":"Martinique","value":"martinique"},{"label":"Mauritania","value":"mauritania"},{"label":"Mauritius","value":"mauritius"},{"label":"Mayotte","value":"mayotte"},{"label":"Mexico","value":"mexico"},{"label":"Micronesia","value":"micronesia"},{"label":"Moldova","value":"moldova"},{"label":"Monaco","value":"monaco"},{"label":"Mongolia","value":"mongolia"},{"label":"Montenegro","value":"montenegro"},{"label":"Montserrat","value":"montserrat"},{"label":"Morocco","value":"morocco"},{"label":"Mozambique","value":"mozambique"},{"label":"Myanmar","value":"myanmar"},{"label":"Namibia","value":"namibia"},{"label":"Nauru","value":"nauru"},{"label":"Nepal","value":"nepal"},{"label":"Netherlands","value":"netherlands"},{"label":"New Caledonia","value":"newCaledonia"},{"label":"New Zealand","value":"newZealand"},{"label":"Nicaragua","value":"nicaragua"},{"label":"Niger","value":"niger"},{"label":"Nigeria","value":"nigeria"},{"label":"Niue","value":"niue"},{"label":"Norfolk Island","value":"norfolkIsland"},{"label":"North Korea","value":"northKorea"},{"label":"North Macedonia","value":"northMacedonia"},{"label":"Northern Mariana Islands","value":"northernMarianaIslands"},{"label":"Norway","value":"norway"},{"label":"Oman","value":"oman"},{"label":"Pakistan","value":"pakistan"},{"label":"Palau","value":"palau"},{"label":"Palestinian Territory Occupied","value":"palestinianTerritoryOccupied"},{"label":"Panama","value":"panama"},{"label":"Papua New Guinea","value":"papuaNewGuinea"},{"label":"Paraguay","value":"paraguay"},{"label":"Peru","value":"peru"},{"label":"Philippines","value":"philippines"},{"label":"Pitcairn Island","value":"pitcairnIsland"},{"label":"Poland","value":"poland"},{"label":"Portugal","value":"portugal"},{"label":"Puerto Rico","value":"puertoRico"},{"label":"Qatar","value":"qatar"},{"label":"Reunion","value":"reunion"},{"label":"Romania","value":"romania"},{"label":"Russia","value":"russia"},{"label":"Rwanda","value":"rwanda"},{"label":"Saint Helena","value":"saintHelena"},{"label":"Saint Kitts and Nevis","value":"saintKittsAndNevis"},{"label":"Saint Lucia","value":"saintLucia"},{"label":"Saint Pierre and Miquelon","value":"saintPierreAndMiquelon"},{"label":"Saint Vincent and the Grenadines","value":"saintVincentAndTheGrenadines"},{"label":"Saint-Barthelemy","value":"saintBarthelemy"},{"label":"Saint-Martin (French part)","value":"saintMartinFrenchPart"},{"label":"Samoa","value":"samoa"},{"label":"San Marino","value":"sanMarino"},{"label":"Sao Tome and Principe","value":"saoTomeAndPrincipe"},{"label":"Saudi Arabia","value":"saudiArabia"},{"label":"Senegal","value":"senegal"},{"label":"Serbia","value":"serbia"},{"label":"Seychelles","value":"seychelles"},{"label":"Sierra Leone","value":"sierraLeone"},{"label":"Singapore","value":"singapore"},{"label":"Sint Maarten (Dutch part)","value":"sintMaartenDutchPart"},{"label":"Slovakia","value":"slovakia"},{"label":"Slovenia","value":"slovenia"},{"label":"Solomon Islands","value":"solomonIslands"},{"label":"Somalia","value":"somalia"},{"label":"South Africa","value":"southAfrica"},{"label":"South Georgia","value":"southGeorgia"},{"label":"South Korea","value":"southKorea"},{"label":"South Sudan","value":"southSudan"},{"label":"Spain","value":"spain"},{"label":"Sri Lanka","value":"sriLanka"},{"label":"Sudan","value":"sudan"},{"label":"Suriname","value":"suriname"},{"label":"Svalbard and Jan Mayen Islands","value":"svalbardAndJanMayenIslands"},{"label":"Sweden","value":"sweden"},{"label":"Switzerland","value":"switzerland"},{"label":"Syria","value":"syria"},{"label":"Taiwan","value":"taiwan"},{"label":"Tajikistan","value":"tajikistan"},{"label":"Tanzania","value":"tanzania"},{"label":"Thailand","value":"thailand"},{"label":"The Bahamas","value":"theBahamas"},{"label":"The Gambia ","value":"theGambia"},{"label":"Timor-Leste","value":"timorLeste"},{"label":"Togo","value":"togo"},{"label":"Tokelau","value":"tokelau"},{"label":"Tonga","value":"tonga"},{"label":"Trinidad and Tobago","value":"trinidadAndTobago"},{"label":"Tunisia","value":"tunisia"},{"label":"Turkey","value":"turkey"},{"label":"Turkmenistan","value":"turkmenistan"},{"label":"Turks and Caicos Islands","value":"turksAndCaicosIslands"},{"label":"Tuvalu","value":"tuvalu"},{"label":"Uganda","value":"uganda"},{"label":"Ukraine","value":"ukraine"},{"label":"United Arab Emirates","value":"unitedArabEmirates"},{"label":"United Kingdom","value":"unitedKingdom"},{"label":"United States","value":"unitedStates"},{"label":"United States Minor Outlying Islands","value":"unitedStatesMinorOutlyingIslands"},{"label":"Uruguay","value":"uruguay"},{"label":"Uzbekistan","value":"uzbekistan"},{"label":"Vanuatu","value":"vanuatu"},{"label":"Vatican City State (Holy See)","value":"vaticanCityStateHolySee"},{"label":"Venezuela","value":"venezuela"},{"label":"Vietnam","value":"vietnam"},{"label":"Virgin Islands (British)","value":"virginIslandsBritish"},{"label":"Virgin Islands (US)","value":"virginIslandsUs"},{"label":"Wallis and Futuna Islands","value":"wallisAndFutunaIslands"},{"label":"Western Sahara","value":"westernSahara"},{"label":"Yemen","value":"yemen"},{"label":"Zambia","value":"zambia"},{"label":"Zimbabwe","value":"zimbabwe"}],"isRequired":true},{"label":"CNPJ","type":"input","dataType":"text","name":"cnpj","maskRegex":"^\\d{2}\\.\\d{3}\\.\\d{3}/\\d{4}-\\d{2}$","isUnique":true,"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Razão social","type":"input","dataType":"text","name":"name","isRequired":true},{"label":"Nome fantasia","type":"input","dataType":"text","name":"businessName"},{"type":"input","dataType":"date","label":"Data de abertura","name":"birthday"},{"label":"Natureza legal","type":"select","dataType":"text","name":"legalNature","options":[{"label":"Empresa Pública","value":"201-1"},{"label":"Sociedade de Economia Mista","value":"203-8"},{"label":"Sociedade Anônima Aberta","value":"204-6"},{"label":"Sociedade Anônima Fechada","value":"205-4"},{"label":"Sociedade Empresária Limitada","value":"206-2"},{"label":"Sociedade Empresária em Nome Coletivo","value":"207-0"},{"label":"Sociedade Empresária em Comandita Simples","value":"208-9"},{"label":"Sociedade Empresária em Comandita por Ações","value":"209-7"},{"label":"Sociedade em Conta de Participação","value":"212-7"},{"label":"Empresário(Individual)","value":"213-5"},{"label":"Cooperativa","value":"214-3"},{"label":"Consórcio de Sociedades","value":"215-1"},{"label":"Grupo de Sociedades","value":"216-0"},{"label":"Estabelecimento, no Brasil, de Sociedade Estrangeira","value":"217-8"},{"label":"Estabelecimento, no Brasil, de Empresa Binacional Argentino - Brasileira","value":"219-4"},{"label":"Empresa Domiciliada no Exterior","value":"221-6"},{"label":"Clube / Fundo de Investimento","value":"222-4"},{"label":"Sociedade Simples Pura","value":"223-2"},{"label":"Sociedade Simples Limitada","value":"224-0"},{"label":"Sociedade Simples em Nome Coletivo","value":"225-9"},{"label":"Sociedade Simples em Comandita Simples","value":"226-7"},{"label":"Empresa Binacional","value":"227-5"},{"label":"Consórcio de Empregadores","value":"228-3"},{"label":"Consórcio Simples","value":"229-1"},{"label":"Empresa Individual de Responsabilidade Limitada(de Natureza Empresária)","value":"230-5"},{"label":"Empresa Individual de Responsabilidade Limitada(de Natureza Simples)","value":"231-3"},{"label":"Sociedade Unipessoal de Advogados","value":"232-1"},{"label":"Cooperativas de Consumo","value":"233-0"},{"label":"Serviço Notarial e Registral(Cartório)","value":"303-4"},{"label":"Fundação Privada","value":"306-9"},{"label":"Serviço Social Autônomo","value":"307-7"},{"label":"Condomínio Edilício","value":"308-5"},{"label":"Comissão de Conciliação Prévia","value":"310-7"},{"label":"Entidade de Mediação e Arbitragem","value":"311-5"},{"label":"Entidade Sindical","value":"313-1"},{"label":"Estabelecimento, no Brasil, de Fundação ou Associação Estrangeiras","value":"320-4"},{"label":"Fundação ou Associação Domiciliada no Exterior","value":"321-2"},{"label":"Organização Religiosa","value":"322-0"},{"label":"Comunidade Indígena","value":"323-9"},{"label":"Fundo Privado","value":"324-7"},{"label":"Órgão de Direção Nacional de Partido Político","value":"325-5"},{"label":"Órgão de Direção Regional de Partido Político","value":"326-3"},{"label":"Órgão de Direção Local de Partido Político","value":"327-1"},{"label":"Comitê Financeiro de Partido Político","value":"328-0"},{"label":"Frente Plebiscitária ou Referendária","value":"329-8"},{"label":"Organização Social(OS)","value":"330-1"},{"label":"Demais Condomínios","value":"331-0"},{"label":"Associação Privada","value":"399-9"},{"label":"Empresa Individual Imobiliária","value":"401-4"},{"label":"Segurado Especial","value":"402-2"},{"label":"Contribuinte individual","value":"408-1"},{"label":"Candidato a Cargo Político Eletivo","value":"409-0"},{"label":"Leiloeiro","value":"411-1"},{"label":"Produtor Rural(Pessoa Física)","value":"412-0"},{"label":"Organização Internacional","value":"501-0"},{"label":"Representação Diplomática Estrangeira","value":"502-9"},{"label":"Outras Instituições Extraterritoriais","value":"503-7"},{"label":"Órgão Público do Poder Executivo Federal","value":"101-5"},{"label":"Órgão Público do Poder Executivo Estadual ou do Distrito Federal","value":"102-3"},{"label":"Órgão Público do Poder Executivo Municipal","value":"103-1"},{"label":"Órgão Público do Poder Legislativo Federal","value":"104-0"},{"label":"Órgão Público do Poder Legislativo Estadual ou do Distrito Federal","value":"105-8"},{"label":"Órgão Público do Poder Legislativo Municipal","value":"106-6"},{"label":"Órgão Público do Poder Judiciário Federal","value":"107-4"},{"label":"Órgão Público do Poder Judiciário Estadual","value":"108-2"},{"label":"Autarquia Federal","value":"110-4"},{"label":"Autarquia Estadual ou do Distrito Federal","value":"111-2"},{"label":"Autarquia Municipal","value":"112-0"},{"label":"Fundação Pública de Direito Público Federal","value":"113-9"},{"label":"Fundação Pública de Direito Público Estadual ou do Distrito Federal","value":"114-7"},{"label":"Fundação Pública de Direito Público Municipal","value":"115-5"},{"label":"Órgão Público Autônomo Federal","value":"116-3"},{"label":"Órgão Público Autônomo Estadual ou do Distrito Federal","value":"117-1"},{"label":"Órgão Público Autônomo Municipal","value":"118-0"},{"label":"Comissão Polinacional","value":"119-8"},{"label":"Fundo Público","value":"120-1"},{"label":"Consórcio Público de Direito Público(Associação Pública)","value":"121-0"},{"label":"Consórcio Público de Direito Privado","value":"122-8"},{"label":"Estado ou Distrito Federal","value":"123-6"},{"label":"Município","value":"124-4"},{"label":"Fundação Pública de Direito Privado Federal","value":"125-2"},{"label":"Fundação Pública de Direito Privado Estadual ou do Distrito Federal","value":"126-0"},{"label":"Fundação Pública de Direito Privado Municipal","value":"127-9"}],"conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"label":"Inscrição estadual","type":"input","dataType":"text","name":"stateRegistration","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}],"validators":["onlyNumbers"]},{"type":"input","label":"Inscrição municipal","dataType":"text","name":"municipalRegistration","conditions":[{"type":"form","elements":[{"key":"country","value":"brazilian","comparisonOperator":"==="}]}]},{"type":"input","dataType":"wysiwyg","label":"Descrição da empresa","name":"description"},{"label":"Logo da empresa","type":"file","dataType":"text","name":"logo","storageConfig":{"fileNameStrategy":"uuid","path":"company/logos","visibility":"public"}},{"label":"Sócios","type":"autocomplete","dataType":"text","tooltip":"O(s) sócio(s) deve(m) estar cadastrado(s) no gerenciamento de pessoas.","name":"partners","optionsApi":{"endpoint":"/people","labelField":["cpf","name"],"valueField":"_id","paramsToFilter":["cpf","name"],"paramType":"query","relatedEntity":"People"},"isMultiple":true},{"label":"Telefone principal","type":"input","dataType":"text","name":"phoneOne","maskRegex":"^\\(\\d{2}\\) \\d{4,5}-\\d{4}$","isRequired":true},{"label":"E-mail principal","type":"input","dataType":"email","name":"emailOne","isRequired":true}]},{"id":"companyAddressTab","title":"Endereços","elements":[{"type":"fieldset","id":"addressOne","title":"Endereço 1","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressOneZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressOneStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressOneDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressOneCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressOneState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressOneStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressOneDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressOneNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressOneComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressOneCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressOneState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressOneLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressOneLongitude"}]},{"type":"fieldset","id":"addressTwo","title":"Endereço 2","elements":[{"label":"CEP","type":"input","dataType":"text","name":"addressTwoZipCode","apiRequest":{"endpoint":"https://brasilapi.com.br/api/cep/v1/","paramType":"path","formFieldsFilledByApiResponse":[{"formFieldName":"addressTwoStreet","propertiesFromApiToFillFormField":["street"]},{"formFieldName":"addressTwoDistrict","propertiesFromApiToFillFormField":["neighborhood"]},{"formFieldName":"addressTwoCity","propertiesFromApiToFillFormField":["city"]},{"formFieldName":"addressTwoState","propertiesFromApiToFillFormField":["state"]}]},"validators":["cep"]},{"label":"Logradouro","type":"input","dataType":"text","name":"addressTwoStreet"},{"label":"Bairro","type":"input","dataType":"text","name":"addressTwoDistrict"},{"label":"Número","type":"input","dataType":"text","name":"addressTwoNumber"},{"label":"Complemento","type":"input","dataType":"text","name":"addressTwoComplement"},{"label":"Cidade","type":"input","dataType":"text","name":"addressTwoCity"},{"label":"Estado","type":"input","dataType":"text","name":"addressTwoState"},{"label":"Latitude","type":"input","dataType":"text","name":"addressTwoLatitude"},{"label":"Longitude","type":"input","dataType":"text","name":"addressTwoLongitude"}]}]},{"id":"companyContactTab","title":"Contatos e redes","elements":[{"label":"Telefone secundário","type":"input","dataType":"text","name":"phoneTwo","validators":["phone"]},{"label":"E-mail secundário","type":"input","dataType":"email","name":"emailTwo"},{"label":"Site 1","type":"input","dataType":"text","name":"siteOne"},{"label":"Site 2","type":"input","dataType":"text","name":"siteTwo"},{"label":"Linkedin","type":"input","dataType":"text","name":"linkedin"},{"label":"Instagram","type":"input","dataType":"text","name":"instagram"},{"label":"Facebook","type":"input","dataType":"text","name":"facebook"}]}]}]},{"componentType":"list","id":"companyList","title":"Lista de empresas","guards":["isAuthorized"],"dataSource":{"endpoint":"/companies","paramType":"query","hasAuthentication":true},"properties":[{"label":"CNPJ","property":"companyCnpj","type":"title"},{"label":"Nome","property":"companyName","type":"title"},{"label":"Telefone","property":"companyPhoneOne","type":"subtitle"},{"label":"E-mail","property":"companyEmailOne","type":"subtitle"}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/company-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/company-list"},"request":{"endpoint":"/companies","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir empresa","message":"Deseja realmente excluir essa empresa?"}}}}]}]},{"id":"movieModule","title":"Episódio","icon":"movie","components":[{"title":"Gerenciar filme","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de filmes para cadastrar e editar filmes, incluindo a foto, o nome, a descrição, a data de lançamento, a pontuação no IMDb e os gêneros associados. Quero também ter a opção de adicionar e gerenciar episódios, incluindo seus títulos, descrições, datas de lançamento e personagens relacionados. Isso me permite manter um registro completo e detalhado do conteúdo audiovisual no sistema.","componentType":"form","contracts":[{"id":"movies","endpoint":"/movies","actions":["create","update","getById","get","delete"],"request":{"entity":"Movie","description":"Represents a movie or TV series in the system.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"pictureFile","dataType":"nvarchar","isRequired":false},{"name":"name","dataType":"nvarchar","isRequired":true},{"name":"description","dataType":"longtext","isRequired":true},{"name":"releaseDate","dataType":"date","isRequired":true},{"name":"imdbRating","dataType":"decimal","isRequired":true},{"name":"movieGenres","dataType":"uniqueidentifier","isRequired":true,"foreignKey":{"entity":"MovieGenre","connectionAttribute":"_id","relationship":"many-to-many"}},{"name":"link1","dataType":"nvarchar","isRequired":true},{"name":"link2","dataType":"nvarchar","isRequired":false},{"name":"link3","dataType":"nvarchar","isRequired":false}]}}],"id":"movieForm","guards":"isAuthorized","elements":[{"type":"tab","id":"movieTab","tabs":[{"id":"mainTab","title":"Principal","elements":[{"label":"Foto","type":"file","dataType":"text","name":"pictureFile","storageConfig":{"fileNameStrategy":"uuid","path":"movies","visibility":"public"}},{"type":"input","dataType":"text","label":"Nome","name":"name","isRequired":true},{"type":"input","dataType":"wysiwyg","label":"Descrição","name":"description","isRequired":true},{"type":"input","dataType":"date","label":"Data de lançamento","name":"releaseDate","isRequired":true},{"type":"input","name":"imdbRating","label":"Pontuação do IMDb","dataType":"number","isRequired":true},{"type":"autocomplete","dataType":"text","label":"Gêneros","name":"movieGenres","optionsApi":{"endpoint":"/api/movies-genres","labelField":["name"],"valueField":"_id","paramsToFilter":["name"],"paramType":"query","relatedEntity":"MovieGenres"},"isMultiple":true,"isRequired":true},{"type":"input","name":"link1","label":"Link 1","dataType":"text","isRequired":true},{"type":"input","name":"link2","label":"Link 2","dataType":"text"},{"type":"input","name":"link3","label":"Link 3","dataType":"text"}]}]}]},{"componentType":"list","id":"movieList","title":"Lista de filmes","guards":["isAuthorized"],"dataSource":{"endpoint":"/movies","paramType":"query","hasAuthentication":true},"properties":[{"property":"pictureFile","type":"image","label":"Cartaz"},{"property":"name","type":"title","label":"Nome"},{"property":"releaseDate","type":"subtitle","label":"Data de lançamento"},{"property":"movieGenres.name","type":"subtitle","label":"Gênero"},{"property":"description","type":"description","label":"Descrição","isHtml":true}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/movie-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/movie-list"},"request":{"endpoint":"/movies","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir conteúdo","message":"Deseja realmente excluir esse conteúdo?"}}}}]},{"title":"Gerenciar gênero de filme","userStory":"Como um usuário autorizado, eu quero usar o formulário de gerenciamento de gênero de filme para criar e editar gêneros de filmes, fornecendo um nome e uma descrição para cada um. Isso me permite organizar e categorizar filmes de forma precisa no sistema.","componentType":"form","contracts":[{"id":"moviesGenres","endpoint":"/movie-genres","actions":["create","get","getById","update","delete"],"request":{"entity":"moviesGenres","description":"","fields":[{"name":"name","dataType":"text","isRequired":true,"maxSize":255},{"name":"description","dataType":"text","isRequired":true,"maxSize":255}]}}],"id":"movieGenreForm","guards":"isAuthorized","elements":[{"type":"input","dataType":"text","label":"Nome","name":"name","isRequired":true},{"type":"input","dataType":"wysiwyg","label":"Descrição","name":"description","isRequired":true}]},{"componentType":"list","id":"movieGenreList","title":"Lista de gêneros de filmes","guards":["isAuthorized"],"dataSource":{"endpoint":"/movies-genres","paramType":"query","hasAuthentication":true},"properties":[{"property":"name","type":"title","label":"Nome"},{"property":"description","type":"description","label":"Descrição"}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/movie-genre-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/movie-genre-list"},"request":{"endpoint":"/movies-genres","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir conteúdo","message":"Deseja realmente excluir esse conteúdo?"}}}}]},{"title":"Gerenciar episódio","componentType":"form","id":"movieEpisodeForm","contracts":[{"id":"moviesEpisodes","endpoint":"/movies-episodes","actions":["create","get","getById","update","delete"],"request":{"entity":"MovieEpisode","description":"Represents an episode of a TV series or show.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"movieId","dataType":"uniqueidentifier","isRequired":true,"foreignKey":{"entity":"Movie","connectionAttribute":"_id","relationship":"one-to-many"}},{"name":"title","dataType":"nvarchar","isRequired":true},{"name":"description","dataType":"longtext","isRequired":true},{"name":"releaseDate","dataType":"datetime2","isRequired":true},{"name":"characters","dataType":"uniqueidentifier","isRequired":false,"foreignKey":{"entity":"Character","connectionAttribute":"_id","relationship":"many-to-many"}}]}}],"elements":[{"type":"array","id":"episodes","name":"episodes","title":"Episódio","elements":[{"type":"input","dataType":"text","label":"Título do episódio","name":"episodeTitle","isRequired":true},{"type":"input","dataType":"wysiwyg","label":"Descrição do episódio","name":"episodeDescription"},{"type":"input","dataType":"date","label":"Data de lançamento do episódio","name":"episodeReleaseDate"},{"type":"autocomplete","dataType":"text","name":"charactersId","label":"Personagens no episódio","optionsApi":{"endpoint":"/characters","labelField":["characterName"],"valueField":"_id","paramsToFilter":["characterName"],"paramType":"query","relatedEntity":"Character"}}]}]},{"componentType":"list","id":"movieEpisodeList","title":"Lista de episódios de filmes","guards":["isAuthorized"],"dataSource":{"endpoint":"/movies-episodes","paramType":"query","hasAuthentication":true},"properties":[{"property":"episodeTitle","type":"title","label":"Título"},{"property":"episodeDescription","type":"description","label":"Descrição"}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/movie-episode-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/movie-episode-list"},"request":{"endpoint":"/movies-episodes","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir conteúdo","message":"Deseja realmente excluir esse conteúdo?"}}}}]}]},{"id":"characterModule","title":"Peronsagem","icon":"character","components":[{"title":"Personagem","userStory":"Como um usuário autorizado, quero usar o formulário de personagem para criar e editar personagens, fornecendo um nome, uma descrição, um tipo (como \"protagonista\" ou \"antagonista\") e um gênero para cada um. Isso me permite manter um registro detalhado e organizado dos personagens no sistema.","componentType":"form","id":"characterForm","contracts":[{"id":"characters","endpoint":"/characters","actions":["create","get","getById","update","delete"],"request":{"entity":"Character","description":"Represents a character in a story or narrative.","fields":[{"name":"_id","dataType":"uniqueidentifier","isRequired":true,"isPrimaryKey":true},{"name":"characterName","dataType":"nvarchar","isRequired":true},{"name":"characterImage","dataType":"nvarchar","isRequired":false},{"name":"characterDescription","dataType":"longtext","isRequired":false},{"name":"characterType","dataType":"nvarchar","enum":["protagonist","antagonist","hero","villain","sidekick","supporting"],"isRequired":false},{"name":"characterGender","dataType":"nvarchar","enum":["male","female","other"],"isRequired":false}]}}],"guards":"isAuthorized","elements":[{"type":"input","dataType":"text","label":"Nome do personagem","name":"characterName","isRequired":true},{"label":"Foto do personagem","type":"file","dataType":"text","name":"characterImage","storageConfig":{"fileNameStrategy":"uuid","path":"characters","visibility":"public"}},{"type":"input","dataType":"wysiwyg","label":"Descrição do personagem","name":"characterDescription"},{"type":"select","label":"Tipo de personagem","name":"characterType","dataType":"text","options":[{"value":"protagonist","label":"Protagonista"},{"value":"antagonist","label":"Antagonista"},{"value":"hero","label":"Herói"},{"value":"villain","label":"Vilão"},{"value":"sidekick","label":"Ajudante"},{"value":"supporting","label":"Secundário"}]},{"type":"select","label":"Gênero do personagem","name":"characterGender","dataType":"text","options":[{"value":"male","label":"Masculino"},{"value":"female","label":"Feminino"},{"value":"other","label":"Outro"}]}]},{"title":"Lista de personagens","componentType":"list","id":"characterList","guards":["isAuthorized"],"dataSource":{"endpoint":"/characters","paramType":"query","hasAuthentication":true},"properties":[{"label":"Nome","property":"characterName","type":"title"},{"label":"Descrição","property":"characterDescription","type":"description","isHtml":true}],"callsToActionMenu":[{"label":"Editar","icon":"pencil","action":{"link":{"endpoint":"/character-form","propertiesAsQueryParam":["_id"]}}},{"label":"Excluir","icon":"delete","action":{"link":{"endpoint":"/character-list"},"request":{"endpoint":"/characters","verb":"delete","propertiesAsPathParam":["_id"],"dialog":{"title":"Excluir projeto","message":"Deseja realmente excluir essa projeto?"}}}}]}]}],"styles":[{"themeName":"light","main":{"headerHeight":"60px","typography":{"fontFamily":"Arial, sans-serif","fontSize":"16px"},"colors":{"primary":"#4F46E5","primaryContrast":"#FFFFFF","secondary":"#6B7280","secondaryContrast":"#FFFFFF","background":"#FFFFFF","error":"#DC2626","success":"#16A34A","warning":"#D97706"},"shadows":{"boxShadow":"0 1px 3px rgba(0, 0, 0, 0.1)"},"borders":{"radius":"4px"},"components":{"input":{"text":"#111827","background":"#F9FAFB","border":"#D1D5DB","borderRadius":"4px","focusBorder":"#4F46E5","placeholder":"#9CA3AF","width":"248px"}},"spacing":"8px","maxWidth":"1200px","footerHeight":"60px"}}]}
1
+ {
2
+ "id": "simplea",
3
+ "title": "Simplea",
4
+ "description": "Simplea - Logística para importação e exportação",
5
+ "flow": "permeson",
6
+ "businessPlan": {
7
+ "businessValue": "",
8
+ "targetMarket": "",
9
+ "benchmarkings": "",
10
+ "legalIssues": "",
11
+ "ethicalIssues": "",
12
+ "afterSales": ""
13
+ },
14
+ "frontend": { "framework": "react", "uiKit": "material" },
15
+ "backend": {
16
+ "framework": "dotnet",
17
+ "jwtSecret": "",
18
+ "database": {
19
+ "provider": "sqlserver",
20
+ "credentials": {
21
+ "databaseName": "dev-simplea",
22
+ "username": "macroex-adm",
23
+ "password": "x4Fs1^T7%qNpGW$mjN$#",
24
+ "host": "tcp:dev-macroex-mssql-srv.database.windows.net",
25
+ "port": 1433
26
+ },
27
+ "connectionString": "Server=tcp:dev-macroex-mssql-srv.database.windows.net,1433;Initial Catalog=dev-simplea;Persist Security Info=False;User ID=macroex-adm;Password=x4Fs1^T7%qNpGW$mjN$#;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
28
+ },
29
+ "storage": {
30
+ "provider": "azure",
31
+ "credentials": {
32
+ "clientEmail": "devsimpleastg",
33
+ "privateKey": "DefaultEndpointsProtocol=https;AccountName=devsimpleastg;AccountKey=qJkTWPOKwEX70m6vZhaNGegsvR5/uxPMRjBcXf0eeXdGluiOkwT7XtdxHeTM0LSw1RZaYXrcQo94+ASthIxnsw==;EndpointSuffix=core.windows.net",
34
+ "projectId": "simplea-storage"
35
+ },
36
+ "publicBucketName": "simplea-public-files",
37
+ "privateBucketName": "simplea-private-files"
38
+ }
39
+ },
40
+ "modules": [
41
+ {
42
+ "title": "Clientes",
43
+ "id": "clienteModule",
44
+ "icon": "user",
45
+ "components": [
46
+ {
47
+ "componentType": "form",
48
+ "id": "clienteForm",
49
+ "contracts": [
50
+ {
51
+ "id": "",
52
+ "endpoint": "/clientes",
53
+ "actions": ["create", "update", "delete", "get", "getById"]
54
+ }
55
+ ],
56
+ "title": "Gerenciamento de clientes",
57
+ "icon": "user",
58
+ "elements": [
59
+ {
60
+ "type": "tab",
61
+ "id": "clienteTab",
62
+ "tabs": [
63
+ {
64
+ "title": "Dados básicos",
65
+ "id": "clienteTabMain",
66
+ "elements": [
67
+ {
68
+ "type": "inheritance",
69
+ "form": {
70
+ "id": "clienteDadosBasicosForm",
71
+ "title": "Gerenciamento de dados basicos do cliente",
72
+ "componentType": "form",
73
+ "contracts": [
74
+ {
75
+ "id": "clienteDadosBasicos",
76
+ "endpoint": "/clientes",
77
+ "actions": [
78
+ "create",
79
+ "delete",
80
+ "get",
81
+ "getById",
82
+ "update"
83
+ ],
84
+ "request": {
85
+ "entity": "CLIENTE",
86
+ "fields": [
87
+ {
88
+ "name": "TIPO_PESSOA",
89
+ "dataType": "integer",
90
+ "enum": [1, 2]
91
+ },
92
+ { "name": "MATRIZ", "dataType": "integer" },
93
+ {
94
+ "name": "NUMERO_CADASTRO",
95
+ "dataType": "nvarchar"
96
+ },
97
+ {
98
+ "name": "NUMERO_CADASTRO_PROTHEUS",
99
+ "dataType": "nvarchar"
100
+ },
101
+ { "name": "CPF_CNPJ", "dataType": "nvarchar" },
102
+ {
103
+ "name": "NOME_RAZAO_SOCIAL",
104
+ "dataType": "nvarchar"
105
+ },
106
+ {
107
+ "name": "NOME_FANTASIA",
108
+ "dataType": "nvarchar"
109
+ },
110
+ {
111
+ "name": "CONTRIBUINTE_SUBSTITUTO",
112
+ "dataType": "nvarchar"
113
+ },
114
+ {
115
+ "name": "SITUACAO_INSCRICAO_ESTADUAL",
116
+ "dataType": "integer",
117
+ "enum": [1, 2, 3, 4, 5, 6]
118
+ },
119
+ {
120
+ "name": "INSCRICAO_ESTADUAL",
121
+ "dataType": "nvarchar"
122
+ },
123
+ {
124
+ "name": "BANDEIRA",
125
+ "dataType": "integer",
126
+ "enum": [1, 2, 3, 4]
127
+ },
128
+ {
129
+ "name": "CENTRO_RESULTADOS",
130
+ "dataType": "integer",
131
+ "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
132
+ },
133
+ {
134
+ "name": "COMERCIAL_RESPONSAVEL_ID",
135
+ "dataType": "uniqueidentifier",
136
+ "foreignKey": {
137
+ "entity": "COLABORADOR",
138
+ "connectionAttribute": "ID",
139
+ "relationship": "one-to-one"
140
+ }
141
+ },
142
+ {
143
+ "name": "GRAU_PARTICULARIDADE",
144
+ "dataType": "integer",
145
+ "enum": [0, 1, 2, 3, 4, 5]
146
+ },
147
+ {
148
+ "name": "CODIGO_DUIMP",
149
+ "dataType": "nvarchar"
150
+ },
151
+ {
152
+ "name": "CODIGO_TIN",
153
+ "dataType": "nvarchar"
154
+ },
155
+ {
156
+ "name": "CODIGO_CNAE",
157
+ "dataType": "nvarchar"
158
+ },
159
+ {
160
+ "name": "DESCRICAO_CNAE",
161
+ "dataType": "nvarchar"
162
+ },
163
+ {
164
+ "name": "REGIME_FISCAL",
165
+ "dataType": "integer",
166
+ "enum": [1, 2, 3]
167
+ },
168
+ {
169
+ "name": "CONTRIBUINTE_ICMS",
170
+ "dataType": "boolean"
171
+ },
172
+ {
173
+ "name": "BANCO_ID",
174
+ "dataType": "uniqueidentifier",
175
+ "foreignKey": {
176
+ "entity": "BANCO",
177
+ "connectionAttribute": "ID",
178
+ "relationship": "one-to-one"
179
+ }
180
+ },
181
+ { "name": "AGENCIA", "dataType": "nvarchar" },
182
+ { "name": "CONTA", "dataType": "nvarchar" },
183
+ { "name": "CHAVE_PIX", "dataType": "nvarchar" }
184
+ ]
185
+ }
186
+ },
187
+ {
188
+ "id": "clienteUnidadeDeNegocio",
189
+ "endpoint": "/clientes/{clienteId}/unidades-negocios",
190
+ "actions": ["create", "update", "get"],
191
+ "request": {
192
+ "entity": "CLIENTE_UNIDADE_NEGOCIO",
193
+ "fields": [
194
+ {
195
+ "name": "UNIDADE_NEGOCIO",
196
+ "dataType": "uniqueidentifier",
197
+ "isRequired": true,
198
+ "foreignKey": {
199
+ "entity": "Empresa",
200
+ "connectionAttribute": "ID",
201
+ "relationship": "many-to-many"
202
+ }
203
+ }
204
+ ]
205
+ }
206
+ },
207
+ {
208
+ "id": "clienteTipos",
209
+ "endpoint": "/clientes/{clienteId}/tipos",
210
+ "actions": ["create", "update", "get"],
211
+ "request": {
212
+ "entity": "CLIENTE_TIPO",
213
+ "fields": [
214
+ {
215
+ "name": "TIPO",
216
+ "dataType": "uniqueidentifier",
217
+ "isRequired": true,
218
+ "enum": [1, 2, 3],
219
+ "foreignKey": {
220
+ "entity": "CLIENTE_TIPO",
221
+ "connectionAttribute": "ID",
222
+ "relationship": "many-to-many"
223
+ }
224
+ }
225
+ ]
226
+ }
227
+ }
228
+ ],
229
+ "elements": [
230
+ {
231
+ "type": "select",
232
+ "dataType": "integer",
233
+ "label": "Tipo de Cliente",
234
+ "name": "TIPO_CLIENTE",
235
+ "isRequired": true,
236
+ "isMultiple": true,
237
+ "options": [
238
+ { "label": "DISTRIBUIDOR", "value": 1 },
239
+ { "label": "IMPORTADOR", "value": 2 },
240
+ { "label": "PROSPECÇÃO", "value": 3 }
241
+ ]
242
+ },
243
+ {
244
+ "type": "select",
245
+ "dataType": "integer",
246
+ "label": "Pessoa ou Empresa",
247
+ "name": "TIPO_PESSOA",
248
+ "isRequired": true,
249
+ "options": [
250
+ { "label": "FISICA", "value": 1 },
251
+ { "label": "JURIDICA", "value": 0 }
252
+ ]
253
+ },
254
+ {
255
+ "type": "select",
256
+ "dataType": "integer",
257
+ "label": "Matriz",
258
+ "name": "MATRIZ",
259
+ "isRequired": true,
260
+ "options": [
261
+ { "label": "SIM", "value": 1 },
262
+ { "label": "NÃO", "value": 0 }
263
+ ],
264
+ "conditions": [
265
+ {
266
+ "type": "form",
267
+ "elements": [
268
+ {
269
+ "key": "ePessoa",
270
+ "value": 0,
271
+ "comparisonOperator": "==="
272
+ }
273
+ ]
274
+ }
275
+ ]
276
+ },
277
+ {
278
+ "type": "input",
279
+ "dataType": "nvarchar",
280
+ "label": "Número de Cadastro",
281
+ "name": "NUMERO_CADASTRO",
282
+ "isDisabled": true,
283
+ "tooltip": "Corresponde ao ID do cliente na base de dados"
284
+ },
285
+ {
286
+ "type": "autocomplete",
287
+ "dataType": "nvarchar",
288
+ "label": "Número de Cadastro Protheus",
289
+ "name": "NUMERO_CADASTRO_PROTHEUS",
290
+ "isDisabled": true,
291
+ "optionsApi": {
292
+ "endpoint": "/api/v1/cliente",
293
+ "paramType": "query",
294
+ "paramsToFilter": ["cpfCnpj", "nome"],
295
+ "labelField": ["numeroCadastro", "nome"],
296
+ "valueField": "_id",
297
+ "relatedEntity": "CLIENTE",
298
+ "filtersFromOtherFormFields": [
299
+ {
300
+ "formFieldName": "cpfCnpj",
301
+ "filterPropertyName": "cpfCnpj"
302
+ }
303
+ ]
304
+ },
305
+ "conditions": [
306
+ {
307
+ "type": "form",
308
+ "elements": [
309
+ {
310
+ "key": "PROSPECCAO",
311
+ "value": 0,
312
+ "comparisonOperator": "==="
313
+ }
314
+ ]
315
+ }
316
+ ]
317
+ },
318
+ {
319
+ "type": "input",
320
+ "dataType": "nvarchar",
321
+ "label": "CPF/CNPJ",
322
+ "name": "CPF_CNPJ",
323
+ "isRequired": true,
324
+ "isUnique": true,
325
+ "validators": ["cnpj", "cpf"],
326
+ "businessRules": [
327
+ {
328
+ "rule": {
329
+ "description": "SE o campo TIPO_PESSOA = 0 ENTAO realizar consulta de CNPJ na API externa"
330
+ }
331
+ },
332
+ {
333
+ "rule": {
334
+ "description": "SE o campo TIPO_PESSOA = 0 E o campo MATRIZ = 0 ENTAO o campo CPF_CNPJ deve ser validado se já existe matriz."
335
+ }
336
+ }
337
+ ],
338
+ "apiRequest": {
339
+ "endpoint": "/consumo-itegracao/consultar-cnpj",
340
+ "paramType": "query",
341
+ "hasAuthentication": true,
342
+ "filtersFromOtherFormFields": [
343
+ {
344
+ "formFieldName": "CPF_CNPJ",
345
+ "filterPropertyName": "cpfCnpj"
346
+ }
347
+ ],
348
+ "formFieldsFilledByApiResponse": [
349
+ {
350
+ "formFieldName": "NOME_RAZAO_SOCIAL",
351
+ "propertiesFromApiToFillFormField": [
352
+ "razaoSocial"
353
+ ]
354
+ },
355
+ {
356
+ "formFieldName": "NOME_FANTASIA",
357
+ "propertiesFromApiToFillFormField": [
358
+ "nomeFantasia"
359
+ ]
360
+ },
361
+ {
362
+ "formFieldName": "INSCRICAO_ESTADUAL",
363
+ "propertiesFromApiToFillFormField": [
364
+ "inscricaoEstadual"
365
+ ]
366
+ },
367
+ {
368
+ "formFieldName": "SITUACAO_INSCRICAO_ESTADUAL",
369
+ "propertiesFromApiToFillFormField": [
370
+ "situacaoInscricaoEstadual"
371
+ ]
372
+ },
373
+ {
374
+ "formFieldName": "CODIGO_CNAE",
375
+ "propertiesFromApiToFillFormField": [
376
+ "cnaePrincipal.codigo"
377
+ ]
378
+ },
379
+ {
380
+ "formFieldName": "DESCRICAO_CNAE",
381
+ "propertiesFromApiToFillFormField": [
382
+ "cnaePrincipal.descricao"
383
+ ]
384
+ }
385
+ ]
386
+ }
387
+ },
388
+ {
389
+ "type": "input",
390
+ "dataType": "nvarchar",
391
+ "label": "Nome/Razão Social",
392
+ "name": "NOME_RAZAO_SOCIAL",
393
+ "isRequired": true
394
+ },
395
+ {
396
+ "type": "input",
397
+ "dataType": "nvarchar",
398
+ "label": "Nome Fantasia",
399
+ "name": "NOME_FANTASIA",
400
+ "conditions": [
401
+ {
402
+ "type": "form",
403
+ "elements": [
404
+ {
405
+ "key": "TIPO_PESSOA",
406
+ "value": 0,
407
+ "comparisonOperator": "==="
408
+ }
409
+ ]
410
+ }
411
+ ]
412
+ },
413
+ {
414
+ "type": "input",
415
+ "dataType": "nvarchar",
416
+ "label": "Contribuinte Substituto",
417
+ "name": "CONTRIBUINTE_SUBSTITUTO",
418
+ "conditions": [
419
+ {
420
+ "type": "form",
421
+ "elements": [
422
+ {
423
+ "key": "TIPO_PESSOA",
424
+ "value": 0,
425
+ "comparisonOperator": "==="
426
+ }
427
+ ]
428
+ }
429
+ ]
430
+ },
431
+ {
432
+ "type": "select",
433
+ "dataType": "integer",
434
+ "label": "Situação da Inscrição Estadual",
435
+ "name": "SITUACAO_INSCRICAO_ESTADUAL",
436
+ "options": [
437
+ { "label": "ATIVA", "value": 1 },
438
+ { "label": "INATIVA", "value": 2 },
439
+ { "label": "ISENTO", "value": 3 },
440
+ { "label": "NÃO HABILITADO", "value": 4 },
441
+ { "label": "SUSPENSA", "value": 5 },
442
+ { "label": "BAIXADA", "value": 6 }
443
+ ],
444
+ "conditions": [
445
+ {
446
+ "type": "form",
447
+ "elements": [
448
+ {
449
+ "key": "ePessoa",
450
+ "value": 0,
451
+ "comparisonOperator": "==="
452
+ }
453
+ ]
454
+ }
455
+ ]
456
+ },
457
+ {
458
+ "type": "input",
459
+ "dataType": "nvarchar",
460
+ "label": "Inscrição Estadual",
461
+ "name": "INSCRICAO_ESTADUAL",
462
+ "conditions": [
463
+ {
464
+ "type": "form",
465
+ "elements": [
466
+ {
467
+ "key": "ePessoa",
468
+ "value": 0,
469
+ "comparisonOperator": "==="
470
+ }
471
+ ]
472
+ }
473
+ ]
474
+ },
475
+ {
476
+ "type": "select",
477
+ "dataType": "integer",
478
+ "label": "Bandeira",
479
+ "name": "BANDEIRA",
480
+ "options": [
481
+ { "label": "OURO", "value": 1 },
482
+ { "label": "PRATA", "value": 2 },
483
+ { "label": "BRONZE", "value": 3 },
484
+ { "label": "SUSPENSO", "value": 4 }
485
+ ]
486
+ },
487
+ {
488
+ "type": "select",
489
+ "dataType": "integer",
490
+ "label": "Centro de Resultados",
491
+ "name": "CENTRO_RESULTADOS",
492
+ "options": [
493
+ { "label": "DISTRIBUIÇÃO 1", "value": 1 },
494
+ { "label": "DISTRIBUIÇÃO 2", "value": 2 },
495
+ { "label": "DISTRIBUIÇÃO 3", "value": 3 },
496
+ { "label": "ENC. PNEUS", "value": 4 },
497
+ { "label": "TERCEIRIZADO", "value": 5 },
498
+ { "label": "CONTA E ORDEM", "value": 6 },
499
+ { "label": "ENCOMENDA", "value": 7 },
500
+ { "label": "EXPORT", "value": 8 },
501
+ { "label": "DIST. PNEUS", "value": 9 },
502
+ { "label": "DIST. QUIM./OUTROS", "value": 10 }
503
+ ]
504
+ },
505
+ {
506
+ "type": "autocomplete",
507
+ "dataType": "uniqueidentifier",
508
+ "label": "Unidade de Negócio",
509
+ "name": "UNIDADE_NEGOCIO_ID",
510
+ "isMultiple": true,
511
+ "optionsApi": {
512
+ "endpoint": "/empresas",
513
+ "labelField": ["nome"],
514
+ "valueField": "ID",
515
+ "paramsToFilter": ["nome"],
516
+ "paramType": "query",
517
+ "relatedEntity": "EMPRESA"
518
+ }
519
+ },
520
+ {
521
+ "type": "autocomplete",
522
+ "dataType": "uniqueidentifier",
523
+ "label": "Comercial Responsável",
524
+ "name": "COMERCIAL_RESPONSAVEL_ID",
525
+ "optionsApi": {
526
+ "endpoint": "/colaboradores-por-setor",
527
+ "labelField": ["nome", "cargo"],
528
+ "valueField": "_id",
529
+ "paramsToFilter": ["nome", "setor"],
530
+ "paramType": "query",
531
+ "relatedEntity": "COLABORADOR"
532
+ }
533
+ },
534
+ {
535
+ "type": "select",
536
+ "dataType": "integer",
537
+ "label": "Grau de Particularidade",
538
+ "name": "GRAU_PARTICULARIDADE",
539
+ "options": [
540
+ { "label": "0", "value": 0 },
541
+ { "label": "1", "value": 1 },
542
+ { "label": "2", "value": 2 },
543
+ { "label": "3", "value": 3 },
544
+ { "label": "4", "value": 4 },
545
+ { "label": "5", "value": 5 }
546
+ ]
547
+ },
548
+ {
549
+ "type": "input",
550
+ "dataType": "nvarchar",
551
+ "label": "Código DUIMP",
552
+ "name": "CODIGO_DUIMP"
553
+ },
554
+ {
555
+ "type": "input",
556
+ "dataType": "nvarchar",
557
+ "label": "Código TIN",
558
+ "name": "CODIGO_TIN"
559
+ },
560
+ {
561
+ "type": "input",
562
+ "dataType": "nvarchar",
563
+ "label": "Código CNAE Principal",
564
+ "name": "CODIGO_CNAE",
565
+ "conditions": [
566
+ {
567
+ "type": "form",
568
+ "elements": [
569
+ {
570
+ "key": "ePessoa",
571
+ "value": 0,
572
+ "comparisonOperator": "==="
573
+ }
574
+ ]
575
+ }
576
+ ]
577
+ },
578
+ {
579
+ "type": "input",
580
+ "dataType": "nvarchar",
581
+ "label": "Descrição CNAE Principal",
582
+ "name": "DESCRICAO_CNAE",
583
+ "conditions": [
584
+ {
585
+ "type": "form",
586
+ "elements": [
587
+ {
588
+ "key": "ePessoa",
589
+ "value": 0,
590
+ "comparisonOperator": "==="
591
+ }
592
+ ]
593
+ }
594
+ ]
595
+ },
596
+ {
597
+ "type": "select",
598
+ "dataType": "integer",
599
+ "label": "Regime Fiscal",
600
+ "name": "REGIME_FISCAL",
601
+ "options": [
602
+ { "label": "SIMPLES NACIONAL", "value": 1 },
603
+ { "label": "LUCRO PRESUMIDO", "value": 2 },
604
+ { "label": "LUCRO REAL", "value": 3 }
605
+ ],
606
+ "conditions": [
607
+ {
608
+ "type": "form",
609
+ "elements": [
610
+ {
611
+ "key": "ePessoa",
612
+ "value": 0,
613
+ "comparisonOperator": "==="
614
+ }
615
+ ]
616
+ }
617
+ ]
618
+ },
619
+ {
620
+ "type": "select",
621
+ "dataType": "integer",
622
+ "label": "Contribuinte de ICMS",
623
+ "name": "CONTRIBUINTE_ICMS",
624
+ "isRequired": true,
625
+ "options": [
626
+ { "label": "SIM", "value": 1 },
627
+ { "label": "NÃO", "value": 0, "isSelected": true }
628
+ ],
629
+ "conditions": [
630
+ {
631
+ "type": "form",
632
+ "elements": [
633
+ {
634
+ "key": "ePessoa",
635
+ "value": 0,
636
+ "comparisonOperator": "==="
637
+ }
638
+ ]
639
+ }
640
+ ]
641
+ },
642
+ {
643
+ "type": "fieldset",
644
+ "title": "Informações bancárias",
645
+ "id": "informacoesBancariasFieldset",
646
+ "elements": [
647
+ {
648
+ "type": "autocomplete",
649
+ "dataType": "nvarchar",
650
+ "label": "Banco",
651
+ "name": "BANCO_ID",
652
+ "optionsApi": {
653
+ "endpoint": "/bancos",
654
+ "labelField": ["nome", "codigo"],
655
+ "valueField": "_id",
656
+ "paramsToFilter": ["nome", "codigo"],
657
+ "paramType": "query",
658
+ "relatedEntity": "BANCO"
659
+ }
660
+ },
661
+ {
662
+ "type": "input",
663
+ "dataType": "nvarchar",
664
+ "label": "Agência",
665
+ "name": "AGENCIA",
666
+ "conditions": [
667
+ {
668
+ "type": "form",
669
+ "elements": [
670
+ {
671
+ "key": "BANCO_ID",
672
+ "value": { "$ne": null },
673
+ "comparisonOperator": "!=="
674
+ }
675
+ ]
676
+ }
677
+ ]
678
+ },
679
+ {
680
+ "type": "input",
681
+ "dataType": "nvarchar",
682
+ "label": "Conta",
683
+ "name": "CONTA",
684
+ "conditions": [
685
+ {
686
+ "type": "form",
687
+ "elements": [
688
+ {
689
+ "key": "BANCO_ID",
690
+ "value": { "$ne": null },
691
+ "comparisonOperator": "!=="
692
+ }
693
+ ]
694
+ }
695
+ ]
696
+ },
697
+ {
698
+ "type": "input",
699
+ "dataType": "nvarchar",
700
+ "label": "Chave PIX",
701
+ "name": "CHAVE_PIX",
702
+ "conditions": [
703
+ {
704
+ "type": "form",
705
+ "elements": [
706
+ {
707
+ "key": "BANCO_ID",
708
+ "value": { "$ne": null },
709
+ "comparisonOperator": "!=="
710
+ }
711
+ ]
712
+ }
713
+ ]
714
+ }
715
+ ]
716
+ }
717
+ ]
718
+ }
719
+ }
720
+ ]
721
+ },
722
+ {
723
+ "title": "Endereços",
724
+ "id": "clienteTabEnderecos",
725
+ "elements": [
726
+ {
727
+ "type": "inheritance",
728
+ "form": {
729
+ "id": "clienteEnderecoForm",
730
+ "title": "Gerenciamento de Enderecos do cliente",
731
+ "componentType": "form",
732
+ "contracts": [
733
+ {
734
+ "id": "clienteEndereco",
735
+ "endpoint": "/clientes/{clienteId}/enderecos",
736
+ "actions": [
737
+ "create",
738
+ "delete",
739
+ "get",
740
+ "getById",
741
+ "update"
742
+ ],
743
+ "request": {
744
+ "entity": "CLIENTE_ENDERECO",
745
+ "fields": [
746
+ {
747
+ "name": "TIPO",
748
+ "dataType": "integer",
749
+ "isRequired": true,
750
+ "enum": [1, 2, 3, 4, 5, 6, 7, 8]
751
+ },
752
+ {
753
+ "name": "CEP",
754
+ "dataType": "nvarchar",
755
+ "isRequired": true
756
+ },
757
+ {
758
+ "name": "CIDADE_ID",
759
+ "dataType": "uniqueidentifier",
760
+ "isRequired": true,
761
+ "foreignKey": {
762
+ "entity": "Cidade",
763
+ "connectionAttribute": "Id",
764
+ "relationship": "one-to-many"
765
+ }
766
+ },
767
+ {
768
+ "name": "LOGRADOURO",
769
+ "dataType": "nvarchar",
770
+ "isRequired": true
771
+ },
772
+ {
773
+ "name": "NUMERO",
774
+ "dataType": "nvarchar",
775
+ "isRequired": true
776
+ },
777
+ {
778
+ "name": "BAIRRO",
779
+ "dataType": "nvarchar",
780
+ "isRequired": true
781
+ },
782
+ {
783
+ "name": "COMPLEMENTO",
784
+ "dataType": "longtext"
785
+ },
786
+ {
787
+ "name": "PRINCIPAL",
788
+ "dataType": "boolean",
789
+ "isRequired": true
790
+ }
791
+ ]
792
+ }
793
+ }
794
+ ],
795
+ "elements": [
796
+ {
797
+ "title": "Endereços",
798
+ "id": "enderecos",
799
+ "type": "array",
800
+ "name": "ENDERECO",
801
+ "businessRules": [
802
+ {
803
+ "rule": {
804
+ "description": "SE inserir um endereço com mesmo LOGRADOURO, NUMERO E CEP ENTAO não deve permitir a inserção duplicada"
805
+ }
806
+ },
807
+ {
808
+ "rule": {
809
+ "description": "SE inserir um endereço com PRINCIPAL = 1 ENTAO todos os outros endereços devem ser PRINCIPAL = 0"
810
+ }
811
+ },
812
+ {
813
+ "rule": {
814
+ "description": "SE não existir nenhum endereço PRINCIPAL = 1 ENTAO deve ter algum PRINCIPAL = 1"
815
+ }
816
+ },
817
+ {
818
+ "rule": {
819
+ "description": "SE existir endereco TIPO = 1 ENTAO não deve permitir inserir outro endereço TIPO = 1"
820
+ }
821
+ }
822
+ ],
823
+ "elements": [
824
+ {
825
+ "type": "select",
826
+ "dataType": "integer",
827
+ "label": "Tipo",
828
+ "name": "TIPO",
829
+ "isRequired": true,
830
+ "options": [
831
+ { "label": "MATRIZ", "value": 1 },
832
+ { "label": "FILIAL", "value": 2 },
833
+ { "label": "SUCURSAL", "value": 3 },
834
+ { "label": "ARMAZÉM", "value": 4 },
835
+ {
836
+ "label": "UNIDADE DE PRODUÇÃO",
837
+ "value": 5
838
+ },
839
+ { "label": "LOCAL DE ENTREGA", "value": 6 },
840
+ { "label": "FATURAMENTO", "value": 7 },
841
+ { "label": "LOCAL DE COLETA", "value": 8 }
842
+ ]
843
+ },
844
+ {
845
+ "type": "input",
846
+ "dataType": "nvarchar",
847
+ "label": "CEP",
848
+ "name": "CEP",
849
+ "isRequired": true,
850
+ "validators": ["cep"],
851
+ "apiRequest": {
852
+ "endpoint": "viacep.com.br/ws/{{CEP}}/json/",
853
+ "paramType": "query",
854
+ "filtersFromOtherFormFields": [
855
+ {
856
+ "formFieldName": "CEP",
857
+ "filterPropertyName": "CEP"
858
+ }
859
+ ],
860
+ "formFieldsFilledByApiResponse": [
861
+ {
862
+ "formFieldName": "ENDERECO",
863
+ "propertiesFromApiToFillFormField": [
864
+ "logradouro"
865
+ ]
866
+ },
867
+ {
868
+ "formFieldName": "COMPLEMENTO",
869
+ "propertiesFromApiToFillFormField": [
870
+ "complemento"
871
+ ]
872
+ },
873
+ {
874
+ "formFieldName": "BAIRRO",
875
+ "propertiesFromApiToFillFormField": [
876
+ "bairro"
877
+ ]
878
+ },
879
+ {
880
+ "formFieldName": "CIDADE",
881
+ "propertiesFromApiToFillFormField": [
882
+ "localidade"
883
+ ]
884
+ },
885
+ {
886
+ "formFieldName": "ESTADO",
887
+ "propertiesFromApiToFillFormField": ["uf"]
888
+ }
889
+ ],
890
+ "conditions": [
891
+ {
892
+ "type": "form",
893
+ "conditionResponse": "fillFields",
894
+ "fillFields": [
895
+ {
896
+ "fieldKey": "PAIS",
897
+ "value": "BRASIL"
898
+ }
899
+ ]
900
+ }
901
+ ]
902
+ }
903
+ },
904
+ {
905
+ "type": "autocomplete",
906
+ "dataType": "nvarchar",
907
+ "label": "País",
908
+ "name": "PAIS_ID",
909
+ "isRequired": true,
910
+ "optionsApi": {
911
+ "endpoint": "/paises",
912
+ "labelField": ["nome", "codigo"],
913
+ "valueField": "_id",
914
+ "paramsToFilter": ["nome", "codigo"],
915
+ "paramType": "query",
916
+ "relatedEntity": "Paises"
917
+ }
918
+ },
919
+ {
920
+ "type": "autocomplete",
921
+ "dataType": "nvarchar",
922
+ "label": "Estado",
923
+ "name": "SUBDIVISAO_ID",
924
+ "isRequired": true,
925
+ "optionsApi": {
926
+ "endpoint": "/subdivisao",
927
+ "labelField": ["nome", "codigo"],
928
+ "valueField": "_id",
929
+ "paramsToFilter": [
930
+ "nome",
931
+ "codigo",
932
+ "paisId",
933
+ "uf"
934
+ ],
935
+ "paramType": "query",
936
+ "relatedEntity": "SUBDIVISAO",
937
+ "filtersFromOtherFormFields": [
938
+ {
939
+ "formFieldName": "paisId",
940
+ "filterPropertyName": "PAIS_ID"
941
+ }
942
+ ]
943
+ }
944
+ },
945
+ {
946
+ "type": "autocomplete",
947
+ "dataType": "nvarchar",
948
+ "label": "Cidade",
949
+ "name": "CIDADE_ID",
950
+ "isRequired": true,
951
+ "optionsApi": {
952
+ "endpoint": "/cidades",
953
+ "labelField": ["nome", "codigo"],
954
+ "valueField": "_id",
955
+ "paramsToFilter": [
956
+ "nome",
957
+ "codigo",
958
+ "subdivisaoId"
959
+ ],
960
+ "paramType": "query",
961
+ "relatedEntity": "Cidades",
962
+ "filtersFromOtherFormFields": [
963
+ {
964
+ "formFieldName": "subdivisaoId",
965
+ "filterPropertyName": "SUBDIVISAO_ID"
966
+ }
967
+ ]
968
+ }
969
+ },
970
+ {
971
+ "type": "input",
972
+ "dataType": "nvarchar",
973
+ "label": "Endereço",
974
+ "name": "LOGRADOURO",
975
+ "isRequired": true
976
+ },
977
+ {
978
+ "type": "input",
979
+ "dataType": "nvarchar",
980
+ "label": "Número",
981
+ "name": "NUMERO",
982
+ "isRequired": true
983
+ },
984
+ {
985
+ "type": "input",
986
+ "dataType": "nvarchar",
987
+ "label": "Bairro",
988
+ "name": "BAIRRO",
989
+ "isRequired": true
990
+ },
991
+ {
992
+ "type": "input",
993
+ "dataType": "nvarchar",
994
+ "label": "Complemento",
995
+ "name": "COMPLEMENTO"
996
+ },
997
+ {
998
+ "type": "select",
999
+ "dataType": "integer",
1000
+ "label": "Principal",
1001
+ "name": "PRINCIPAL",
1002
+ "isRequired": true,
1003
+ "options": [
1004
+ { "label": "SIM", "value": 1 },
1005
+ { "label": "NÃO", "value": 0 }
1006
+ ]
1007
+ }
1008
+ ]
1009
+ }
1010
+ ]
1011
+ }
1012
+ }
1013
+ ]
1014
+ },
1015
+ {
1016
+ "title": "Contatos",
1017
+ "id": "clienteTabContatos",
1018
+ "elements": [
1019
+ {
1020
+ "type": "inheritance",
1021
+ "form": {
1022
+ "id": "clienteContatosForm",
1023
+ "title": "Gerenciamento de Contatos do cliente",
1024
+ "componentType": "form",
1025
+ "contracts": [
1026
+ {
1027
+ "id": "clienteContatos",
1028
+ "endpoint": "/clientes/{clienteId}/contatos",
1029
+ "actions": [
1030
+ "create",
1031
+ "delete",
1032
+ "get",
1033
+ "getById",
1034
+ "update"
1035
+ ],
1036
+ "request": {
1037
+ "entity": "CLIENTE_CONTATO",
1038
+ "fields": [
1039
+ {
1040
+ "name": "NOME",
1041
+ "dataType": "nvarchar",
1042
+ "isRequired": true
1043
+ },
1044
+ {
1045
+ "name": "EMAIL",
1046
+ "dataType": "nvarchar",
1047
+ "isRequired": true
1048
+ },
1049
+ {
1050
+ "name": "TELEFONE",
1051
+ "dataType": "nvarchar",
1052
+ "isRequired": true
1053
+ },
1054
+ {
1055
+ "name": "AREA",
1056
+ "dataType": "integer",
1057
+ "isRequired": true,
1058
+ "enum": [
1059
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
1060
+ ]
1061
+ },
1062
+ {
1063
+ "name": "PRINCIPAL",
1064
+ "dataType": "boolean",
1065
+ "isRequired": true
1066
+ },
1067
+ {
1068
+ "name": "RECEBER_XML_NFE",
1069
+ "dataType": "boolean",
1070
+ "isRequired": true
1071
+ },
1072
+ {
1073
+ "name": "FOLLOW_UP",
1074
+ "dataType": "boolean",
1075
+ "isRequired": true
1076
+ },
1077
+ {
1078
+ "name": "NOTIFICACAO_WHATSAPP",
1079
+ "dataType": "boolean",
1080
+ "isRequired": true
1081
+ }
1082
+ ]
1083
+ }
1084
+ }
1085
+ ],
1086
+ "elements": [
1087
+ {
1088
+ "type": "array",
1089
+ "id": "contatos",
1090
+ "title": "Contatos",
1091
+ "name": "CONTATO",
1092
+ "businessRules": [
1093
+ {
1094
+ "rule": {
1095
+ "description": "SE não existir nenhum contato PRINCIPAL = 1 ENTAO deve ter algum PRINCIPAL = 1"
1096
+ }
1097
+ },
1098
+ {
1099
+ "rule": {
1100
+ "description": "SE existir contato TIPO = 1 ENTAO não deve permitir inserir outro contato TIPO = 1"
1101
+ }
1102
+ }
1103
+ ],
1104
+ "elements": [
1105
+ {
1106
+ "type": "input",
1107
+ "dataType": "nvarchar",
1108
+ "label": "Nome do Contato",
1109
+ "name": "NOME",
1110
+ "isRequired": true
1111
+ },
1112
+ {
1113
+ "type": "input",
1114
+ "dataType": "nvarchar",
1115
+ "label": "Email",
1116
+ "name": "EMAIL",
1117
+ "isRequired": true,
1118
+ "isUnique": true,
1119
+ "validators": ["email"],
1120
+ "maskRegex": "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$"
1121
+ },
1122
+ {
1123
+ "type": "input",
1124
+ "dataType": "nvarchar",
1125
+ "label": "Telefone",
1126
+ "name": "TELEFONE",
1127
+ "isRequired": true,
1128
+ "validators": ["phone"]
1129
+ },
1130
+ {
1131
+ "type": "select",
1132
+ "dataType": "integer",
1133
+ "label": "Área",
1134
+ "name": "AREA",
1135
+ "options": [
1136
+ { "label": "ADMINISTRATIVO", "value": 1 },
1137
+ { "label": "COMERCIAL", "value": 2 },
1138
+ { "label": "FINANCEIRO", "value": 3 },
1139
+ { "label": "LOGÍSTICA", "value": 4 },
1140
+ { "label": "EXPORTAÇÃO", "value": 5 },
1141
+ { "label": "IMPORTAÇÃO", "value": 6 },
1142
+ { "label": "RECURSOS HUMANOS", "value": 7 },
1143
+ { "label": "MARKETING", "value": 8 },
1144
+ { "label": "SUPORTE", "value": 9 },
1145
+ { "label": "CONTÁBIL", "value": 10 },
1146
+ { "label": "FISCAL", "value": 11 },
1147
+ { "label": "DIRETORIA", "value": 12 },
1148
+ { "label": "GERÊNCIA", "value": 13 }
1149
+ ]
1150
+ },
1151
+ {
1152
+ "type": "select",
1153
+ "dataType": "integer",
1154
+ "label": "Principal",
1155
+ "name": "PRINCIPAL",
1156
+ "isRequired": true,
1157
+ "options": [
1158
+ { "label": "SIM", "value": 1 },
1159
+ { "label": "NÃO", "value": 0 }
1160
+ ]
1161
+ },
1162
+ {
1163
+ "type": "select",
1164
+ "dataType": "integer",
1165
+ "label": "Receber XML/NFe",
1166
+ "name": "RECEBER_XML_NFE",
1167
+ "isRequired": true,
1168
+ "options": [
1169
+ { "label": "SIM", "value": 1 },
1170
+ {
1171
+ "label": "NÃO",
1172
+ "value": 0,
1173
+ "isSelected": true
1174
+ }
1175
+ ]
1176
+ },
1177
+ {
1178
+ "type": "select",
1179
+ "dataType": "integer",
1180
+ "label": "Follow-up",
1181
+ "name": "FOLLOW_UP",
1182
+ "isRequired": true,
1183
+ "options": [
1184
+ { "label": "SIM", "value": 1 },
1185
+ {
1186
+ "label": "NÃO",
1187
+ "value": 0,
1188
+ "isSelected": true
1189
+ }
1190
+ ]
1191
+ },
1192
+ {
1193
+ "type": "select",
1194
+ "dataType": "integer",
1195
+ "label": "Notificação WhatsApp",
1196
+ "name": "NOTIFICACAO_WHATSAPP",
1197
+ "isRequired": true,
1198
+ "options": [
1199
+ { "label": "SIM", "value": 1 },
1200
+ {
1201
+ "label": "NÃO",
1202
+ "value": 0,
1203
+ "isSelected": true
1204
+ }
1205
+ ]
1206
+ }
1207
+ ]
1208
+ }
1209
+ ]
1210
+ }
1211
+ }
1212
+ ]
1213
+ },
1214
+ {
1215
+ "title": "Operação",
1216
+ "id": "clienteTabOperacao",
1217
+ "elements": [
1218
+ {
1219
+ "type": "inheritance",
1220
+ "form": {
1221
+ "id": "clienteOperacaoForm",
1222
+ "componentType": "form",
1223
+ "title": "Gerenciamento de operacoes do cliente",
1224
+ "contracts": [
1225
+ {
1226
+ "id": "clienteOperacaoClienteRelacionamento",
1227
+ "endpoint": "/clientes/{clienteId}/relacionamentos",
1228
+ "actions": [
1229
+ "create",
1230
+ "delete",
1231
+ "get",
1232
+ "getById",
1233
+ "update"
1234
+ ],
1235
+ "request": {
1236
+ "entity": "CLIENTE_OPERACAO_RELACIONAMENTO",
1237
+ "fields": [
1238
+ {
1239
+ "name": "USUARIO_ID",
1240
+ "dataType": "uniqueidentifier",
1241
+ "isRequired": true,
1242
+ "foreignKey": {
1243
+ "entity": "COLABORADOR",
1244
+ "connectionAttribute": "ID",
1245
+ "relationship": "one-to-many"
1246
+ }
1247
+ },
1248
+ {
1249
+ "name": "RELACIONAMENTO",
1250
+ "dataType": "integer",
1251
+ "isRequired": true,
1252
+ "enum": [1, 2, 3]
1253
+ }
1254
+ ]
1255
+ }
1256
+ },
1257
+ {
1258
+ "id": "clienteModalidadesOperacoes",
1259
+ "endpoint": "/clientes/{clienteId}/modalidades-operacoes",
1260
+ "actions": ["create", "update", "get"],
1261
+ "request": {
1262
+ "entity": "CLIENTE_OPERACAO_MODALIDADE_OPERACAO",
1263
+ "fields": [
1264
+ {
1265
+ "name": "MODALIDADE_OPERACAO",
1266
+ "dataType": "uniqueidentifier",
1267
+ "isRequired": true,
1268
+ "enum": [1, 2, 3, 4],
1269
+ "foreignKey": {
1270
+ "entity": "CLIENTE_OPERACAO_MODALIDADE_OPERACAO",
1271
+ "connectionAttribute": "ID",
1272
+ "relationship": "many-to-many"
1273
+ }
1274
+ }
1275
+ ]
1276
+ }
1277
+ },
1278
+ {
1279
+ "id": "clienteRegimesAduaneiros",
1280
+ "endpoint": "/clientes/{clienteId}/regimes-aduaneiros",
1281
+ "actions": ["create", "update", "get"],
1282
+ "request": {
1283
+ "entity": "CLIENTE_OPERACAO_REGIME_ADUANEIRO",
1284
+ "fields": [
1285
+ {
1286
+ "name": "REGIME_ADUANEIRO",
1287
+ "dataType": "uniqueidentifier",
1288
+ "isRequired": true,
1289
+ "enum": [1, 2, 3, 4, 5, 6, 7, 8],
1290
+ "foreignKey": {
1291
+ "entity": "CLIENTE_OPERACAO_REGIME_ADUANEIRO",
1292
+ "connectionAttribute": "ID",
1293
+ "relationship": "many-to-many"
1294
+ }
1295
+ }
1296
+ ]
1297
+ }
1298
+ },
1299
+ {
1300
+ "id": "clienteBeneficios",
1301
+ "endpoint": "/clientes/{clienteId}/beneficios",
1302
+ "actions": ["create", "update", "get"],
1303
+ "request": {
1304
+ "entity": "CLIENTE_OPERACAO_BENEFICIO",
1305
+ "fields": [
1306
+ {
1307
+ "name": "BENEFICIO",
1308
+ "dataType": "uniqueidentifier",
1309
+ "isRequired": true,
1310
+ "enum": [1, 2, 3, 4, 5],
1311
+ "foreignKey": {
1312
+ "entity": "CLIENTE_OPERACAO_BENEFICIO",
1313
+ "connectionAttribute": "ID",
1314
+ "relationship": "many-to-many"
1315
+ }
1316
+ }
1317
+ ]
1318
+ }
1319
+ },
1320
+ {
1321
+ "id": "clienteParticularidades",
1322
+ "endpoint": "/clientes/{clienteId}/particularidades",
1323
+ "actions": ["create", "update", "get"],
1324
+ "request": {
1325
+ "entity": "CLIENTE_OPERACAO_PARTICULARIDADE",
1326
+ "fields": [
1327
+ {
1328
+ "name": "PARTICULARIDADE",
1329
+ "dataType": "uniqueidentifier",
1330
+ "isRequired": true,
1331
+ "enum": [
1332
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1333
+ 14, 15, 16, 17, 18
1334
+ ],
1335
+ "foreignKey": {
1336
+ "entity": "CLIENTE_OPERACAO_PARTICULARIDADE",
1337
+ "connectionAttribute": "ID",
1338
+ "relationship": "many-to-many"
1339
+ }
1340
+ }
1341
+ ]
1342
+ }
1343
+ }
1344
+ ],
1345
+ "elements": [
1346
+ {
1347
+ "title": "Usuários da operação",
1348
+ "id": "usuariosOperacaoFieldset",
1349
+ "type": "fieldset",
1350
+ "elements": [
1351
+ {
1352
+ "title": "Relacionamento",
1353
+ "id": "relacionamentos",
1354
+ "type": "array",
1355
+ "name": "CLIENTE_RELACIONAMENTO",
1356
+ "elements": [
1357
+ {
1358
+ "type": "autocomplete",
1359
+ "dataType": "uniqueidentifier",
1360
+ "label": "Usuário",
1361
+ "name": "USUARIO_ID",
1362
+ "isUnique": true,
1363
+ "optionsApi": {
1364
+ "endpoint": "/colaboradores-por-setor",
1365
+ "labelField": ["nome", "cargo"],
1366
+ "valueField": "_id",
1367
+ "paramsToFilter": ["nome", "setor"],
1368
+ "paramType": "query",
1369
+ "relatedEntity": "Colaborador"
1370
+ }
1371
+ },
1372
+ {
1373
+ "type": "select",
1374
+ "dataType": "integer",
1375
+ "label": "Relacionamento",
1376
+ "name": "RELACIONAMENTO",
1377
+ "options": [
1378
+ {
1379
+ "label": "SUPERVISOR OPERACIONAL",
1380
+ "value": 1
1381
+ },
1382
+ {
1383
+ "label": "GESTOR RESPONSÁVEL",
1384
+ "value": 2
1385
+ },
1386
+ {
1387
+ "label": "SUPORTE OPERACIONAL",
1388
+ "value": 3
1389
+ }
1390
+ ]
1391
+ }
1392
+ ]
1393
+ }
1394
+ ]
1395
+ },
1396
+ {
1397
+ "title": "Dados da Operação",
1398
+ "id": "dadosOperacaoFieldset",
1399
+ "type": "fieldset",
1400
+ "elements": [
1401
+ {
1402
+ "type": "select",
1403
+ "dataType": "integer",
1404
+ "label": "Modalidade de Operação",
1405
+ "name": "MODALIDADE_OPERACAO",
1406
+ "isMultiple": true,
1407
+ "options": [
1408
+ { "label": "CONTA E ORDEM", "value": 1 },
1409
+ { "label": "CONTA PRÓPRIA", "value": 2 },
1410
+ { "label": "ENCOMENDA", "value": 3 },
1411
+ { "label": "DISTRIBUIÇÃO", "value": 4 }
1412
+ ],
1413
+ "conditions": [
1414
+ {
1415
+ "type": "form",
1416
+ "conditionResponse": "fillFields",
1417
+ "fillFields": [
1418
+ {
1419
+ "fieldKey": "MODALIDADE_OPERACAO_VINCULACAO",
1420
+ "value": "MODALIDADE_OPERACAO"
1421
+ },
1422
+ {
1423
+ "fieldKey": "MODALIDADE_OPERACAO_NEGOCIACAO",
1424
+ "value": "MODALIDADE_OPERACAO"
1425
+ }
1426
+ ]
1427
+ }
1428
+ ]
1429
+ },
1430
+ {
1431
+ "type": "select",
1432
+ "dataType": "integer",
1433
+ "label": "Regime Aduaneiro",
1434
+ "name": "REGIME_ADUANEIRO",
1435
+ "isMultiple": true,
1436
+ "options": [
1437
+ { "label": "IMPORTAÇÃO", "value": 1 },
1438
+ { "label": "EXPORTAÇÃO", "value": 2 },
1439
+ { "label": "DRAWBACK", "value": 3 },
1440
+ {
1441
+ "label": "ADMISSÃO TEMPORÁRIA",
1442
+ "value": 4
1443
+ },
1444
+ {
1445
+ "label": "EXPORTAÇÃO TEMPORÁRIA",
1446
+ "value": 5
1447
+ },
1448
+ { "label": "RECOF-SPED", "value": 6 },
1449
+ { "label": "REPETRO", "value": 7 },
1450
+ {
1451
+ "label": "ENTREPOSTO ADUANEIRO",
1452
+ "value": 8
1453
+ }
1454
+ ]
1455
+ },
1456
+ {
1457
+ "type": "select",
1458
+ "dataType": "integer",
1459
+ "label": "Tipo de Benefício",
1460
+ "name": "TIPO_BENEFICIO",
1461
+ "isMultiple": true,
1462
+ "options": [
1463
+ { "label": "PRODERO", "value": 1 },
1464
+ { "label": "ALAGOAS", "value": 2 },
1465
+ { "label": "INVEST", "value": 3 },
1466
+ { "label": "COMPET", "value": 4 },
1467
+ { "label": "FUNDAP", "value": 5 }
1468
+ ]
1469
+ },
1470
+ {
1471
+ "type": "select",
1472
+ "dataType": "integer",
1473
+ "label": "Particularidade",
1474
+ "name": "PARTICULARIDADES",
1475
+ "isMultiple": true,
1476
+ "options": [
1477
+ {
1478
+ "label": "ACEITA A TRANSFERENCIA DE SALDO",
1479
+ "value": 1
1480
+ },
1481
+ {
1482
+ "label": "AUTORIZAÇÃO DO CLIENTE PARA COBRANÇA / DEVOLUÇÃO DE VALORES",
1483
+ "value": 2
1484
+ },
1485
+ {
1486
+ "label": "CODIGO DO CLIENTE NA NOTA FISCAL",
1487
+ "value": 3
1488
+ },
1489
+ { "label": "COMPPETE", "value": 4 },
1490
+ { "label": "CONSTRUÇÃO CIVIL", "value": 5 },
1491
+ { "label": "CONTA CORRENTE", "value": 6 },
1492
+ {
1493
+ "label": "CONTRATO DE ARMAZENAGEM DEVERÁ ACOMPANHAR O TRANSPORTE",
1494
+ "value": 7
1495
+ },
1496
+ { "label": "CUSTO FINANCEIRO", "value": 8 },
1497
+ {
1498
+ "label": "DISPENSA DE ANTECIPAÇÃO DE IMPOSTO",
1499
+ "value": 9
1500
+ },
1501
+ {
1502
+ "label": "ENVIAR FOLLOW EM EXCEL",
1503
+ "value": 10
1504
+ },
1505
+ {
1506
+ "label": "FRETE INTERNO NA NFE ",
1507
+ "value": 11
1508
+ },
1509
+ {
1510
+ "label": "NOTA FISCAL DE TRANSFERÊNCIA EMITIDA PELO CLIENTE DEVERÁ ACOMPANHAR O TRANSPORTE",
1511
+ "value": 12
1512
+ },
1513
+ {
1514
+ "label": "NOTA FISCAL DE VENDA EMITIDA PELO CLIENTE DEVERÁ ACOMPANHAR O TRANSPORTE",
1515
+ "value": 13
1516
+ },
1517
+ {
1518
+ "label": "PRAZO PARA PAGAMENTO DA NFE - 90 DIAS",
1519
+ "value": 14
1520
+ },
1521
+ {
1522
+ "label": "PRAZO PARA PAGAMENTO DO ICMS - 20 DIAS DO MÊS SUBSEQUENTE AO FATURAMENTO",
1523
+ "value": 15
1524
+ },
1525
+ {
1526
+ "label": "SUBSTITUTO TRIBUTÁRIO",
1527
+ "value": 16
1528
+ },
1529
+ {
1530
+ "label": "TAXA DE CONSULTORIA",
1531
+ "value": 17
1532
+ },
1533
+ {
1534
+ "label": "PRAZO PARA PAGAMENTO TOTAL DA IMPORTAÇÃO DE 20 DIAS",
1535
+ "value": 18
1536
+ }
1537
+ ]
1538
+ }
1539
+ ]
1540
+ }
1541
+ ]
1542
+ }
1543
+ }
1544
+ ]
1545
+ },
1546
+ {
1547
+ "title": "Comissão",
1548
+ "id": "clienteTabComissao",
1549
+ "elements": [
1550
+ {
1551
+ "type": "inheritance",
1552
+ "form": {
1553
+ "id": "clienteComissaoForm",
1554
+ "title": "Gerenciamento de Comissões do cliente",
1555
+ "componentType": "form",
1556
+ "contracts": [
1557
+ {
1558
+ "id": "clienteComissao",
1559
+ "endpoint": "/clientes/{clienteId}/comissoes",
1560
+ "actions": [
1561
+ "create",
1562
+ "delete",
1563
+ "get",
1564
+ "getById",
1565
+ "update"
1566
+ ],
1567
+ "request": {
1568
+ "entity": "CLIENTE_COMISSAO",
1569
+ "fields": [
1570
+ {
1571
+ "name": "COMISSIONADO",
1572
+ "dataType": "integer",
1573
+ "enum": [1, 2, 3, 4, 5, 6, 7],
1574
+ "isRequired": true
1575
+ },
1576
+ {
1577
+ "name": "TIPO_COMISSAO",
1578
+ "dataType": "integer",
1579
+ "enum": [1, 2],
1580
+ "isRequired": true
1581
+ },
1582
+ {
1583
+ "name": "COMISSAO_NEGOCIADA",
1584
+ "dataType": "decimal",
1585
+ "isRequired": true
1586
+ },
1587
+ {
1588
+ "name": "FATOR_INCIDENCIA",
1589
+ "dataType": "integer",
1590
+ "enum": [1, 2, 3, 4],
1591
+ "isRequired": true
1592
+ }
1593
+ ]
1594
+ }
1595
+ }
1596
+ ],
1597
+ "elements": [
1598
+ {
1599
+ "title": "Comissionado",
1600
+ "id": "comissoes",
1601
+ "type": "array",
1602
+ "name": "COMISSAO",
1603
+ "businessRules": [
1604
+ {
1605
+ "rule": {
1606
+ "description": "SE COMISSIONADO e FATOR_INCIDENCIA ja existirem ENTAO não pode duplicar."
1607
+ }
1608
+ }
1609
+ ],
1610
+ "elements": [
1611
+ {
1612
+ "type": "select",
1613
+ "dataType": "integer",
1614
+ "label": "Comissionado",
1615
+ "name": "COMISSIONADO",
1616
+ "options": [
1617
+ { "label": "COMISSIONADO A", "value": 1 },
1618
+ { "label": "COMISSIONADO B", "value": 2 },
1619
+ { "label": "COMISSIONADO C", "value": 3 },
1620
+ { "label": "COMISSIONADO D", "value": 4 },
1621
+ { "label": "COMISSIONADO E", "value": 5 },
1622
+ { "label": "COMISSIONADO F", "value": 6 },
1623
+ { "label": "COMISSIONADO G", "value": 7 }
1624
+ ]
1625
+ },
1626
+ {
1627
+ "type": "select",
1628
+ "dataType": "integer",
1629
+ "label": "Tipo de Comissão",
1630
+ "name": "TIPO_COMISSAO",
1631
+ "options": [
1632
+ { "label": "VALOR", "value": 1 },
1633
+ { "label": "PERCENTUAL", "value": 2 }
1634
+ ]
1635
+ },
1636
+ {
1637
+ "type": "input",
1638
+ "dataType": "decimal",
1639
+ "label": "Comissão Negociada",
1640
+ "name": "COMISSAO_NEGOCIADA",
1641
+ "isRequired": true,
1642
+ "minLength": 0
1643
+ },
1644
+ {
1645
+ "type": "select",
1646
+ "dataType": "integer",
1647
+ "label": "Fator de Incidência",
1648
+ "name": "FATOR_INCIDENCIA",
1649
+ "options": [
1650
+ { "label": "VALOR FIXO", "value": 1 },
1651
+ {
1652
+ "label": "REPASSE DO ICMS - DESCONTO FINANCEIRO",
1653
+ "value": 2
1654
+ },
1655
+ {
1656
+ "label": "REPASSE DO ICMS - DESCONTO INCONDICIONAL",
1657
+ "value": 3
1658
+ },
1659
+ { "label": "VALOR POR PROCESSO", "value": 4 }
1660
+ ]
1661
+ }
1662
+ ]
1663
+ }
1664
+ ]
1665
+ }
1666
+ }
1667
+ ]
1668
+ },
1669
+ {
1670
+ "title": "Especialidade",
1671
+ "id": "clienteTabEspecialidade",
1672
+ "elements": [
1673
+ {
1674
+ "type": "inheritance",
1675
+ "form": {
1676
+ "id": "clienteEspecialidadeForm",
1677
+ "componentType": "form",
1678
+ "title": "Gerenciamento de especialidades do cliente",
1679
+ "contracts": [
1680
+ {
1681
+ "id": "clienteEspecialidade",
1682
+ "endpoint": "/clientes/{clienteId}/especialidades",
1683
+ "actions": ["create", "delete", "get", "getById"],
1684
+ "request": {
1685
+ "entity": "CLIENTE_ESPECIALIDADE",
1686
+ "fields": [
1687
+ {
1688
+ "name": "ESPECIALIDADE_ID",
1689
+ "dataType": "uniqueidentifier",
1690
+ "isRequired": true,
1691
+ "foreignKey": {
1692
+ "connectionAttribute": "ID",
1693
+ "entity": "NcmEspecialidade",
1694
+ "relationship": "many-to-many"
1695
+ }
1696
+ }
1697
+ ]
1698
+ }
1699
+ }
1700
+ ],
1701
+ "elements": [
1702
+ {
1703
+ "title": "Especialidade",
1704
+ "id": "especialidades",
1705
+ "type": "array",
1706
+ "name": "ESPECIALIDADE",
1707
+ "elements": [
1708
+ {
1709
+ "type": "autocomplete",
1710
+ "dataType": "nvarchar",
1711
+ "label": "Especialidade",
1712
+ "name": "ESPECIALIDADE_ID",
1713
+ "isUnique": true,
1714
+ "optionsApi": {
1715
+ "endpoint": "/grupo-produto",
1716
+ "labelField": ["nome"],
1717
+ "valueField": "_id",
1718
+ "paramsToFilter": ["nome"],
1719
+ "paramType": "query",
1720
+ "relatedEntity": "ESPECIALIDADE"
1721
+ }
1722
+ }
1723
+ ]
1724
+ }
1725
+ ]
1726
+ }
1727
+ }
1728
+ ]
1729
+ },
1730
+ {
1731
+ "title": "Vinculação",
1732
+ "id": "clienteTabVinculacao",
1733
+ "elements": [
1734
+ {
1735
+ "type": "inheritance",
1736
+ "form": {
1737
+ "title": "Vinculação",
1738
+ "id": "clienteVinculacaoForm",
1739
+ "componentType": "form",
1740
+ "contracts": [
1741
+ {
1742
+ "id": "",
1743
+ "endpoint": "/clientes/{clienteId}/vinculacao",
1744
+ "actions": [
1745
+ "create",
1746
+ "update",
1747
+ "delete",
1748
+ "get",
1749
+ "getById"
1750
+ ],
1751
+ "request": {
1752
+ "entity": "CLIENTE_VINCULACAO",
1753
+ "fields": [
1754
+ {
1755
+ "name": "DATA_VINCULACAO",
1756
+ "dataType": "datetime2",
1757
+ "isRequired": true
1758
+ },
1759
+ {
1760
+ "name": "PRAZO_CONTRATO_DIAS",
1761
+ "dataType": "integer",
1762
+ "isRequired": true
1763
+ },
1764
+ {
1765
+ "name": "DATA_VENCIMENTO",
1766
+ "dataType": "datetime2",
1767
+ "isRequired": true
1768
+ },
1769
+ {
1770
+ "name": "NUMERO_DOSSIE",
1771
+ "dataType": "nvarchar",
1772
+ "isRequired": true
1773
+ },
1774
+ {
1775
+ "name": "NUMERO_CONTRATO_VINCULADO",
1776
+ "dataType": "nvarchar",
1777
+ "isRequired": true
1778
+ },
1779
+ {
1780
+ "name": "MODALIDADE_OPERACAO_VINCULACAO",
1781
+ "dataType": "integer"
1782
+ }
1783
+ ]
1784
+ }
1785
+ }
1786
+ ],
1787
+ "elements": [
1788
+ {
1789
+ "title": "Cliente Vinculado",
1790
+ "id": "clientesVinculados",
1791
+ "type": "array",
1792
+ "name": "VINCULACAO",
1793
+ "businessRules": [
1794
+ {
1795
+ "rule": {
1796
+ "description": "SE a vinculação estiver sendo manipulada por uma filial e não na matriz ENTAO deve negar informando para alterar na matriz"
1797
+ }
1798
+ }
1799
+ ],
1800
+ "elements": [
1801
+ {
1802
+ "type": "input",
1803
+ "dataType": "datetime2",
1804
+ "label": "Data de Vinculação",
1805
+ "name": "DATA_VINCULACAO",
1806
+ "isRequired": true
1807
+ },
1808
+ {
1809
+ "type": "input",
1810
+ "dataType": "integer",
1811
+ "label": "Prazo descrito no contrato (em dias)",
1812
+ "name": "PRAZO_CONTRATO_DIAS",
1813
+ "isRequired": true,
1814
+ "minLength": 0
1815
+ },
1816
+ {
1817
+ "type": "input",
1818
+ "dataType": "datetime2",
1819
+ "label": "Data de Vencimento",
1820
+ "name": "DATA_VENCIMENTO",
1821
+ "isRequired": true
1822
+ },
1823
+ {
1824
+ "type": "input",
1825
+ "dataType": "nvarchar",
1826
+ "label": "Número do Dossiê",
1827
+ "name": "NUMERO_DOSSIE",
1828
+ "isRequired": true
1829
+ },
1830
+ {
1831
+ "type": "input",
1832
+ "dataType": "nvarchar",
1833
+ "label": "Número do Contrato Vinculado",
1834
+ "name": "NUMERO_CONTRATO_VINCULADO",
1835
+ "isRequired": true
1836
+ },
1837
+ {
1838
+ "type": "select",
1839
+ "dataType": "integer",
1840
+ "label": "Modalidade de Operação",
1841
+ "name": "MODALIDADE_OPERACAO_VINCULACAO",
1842
+ "isRequired": true,
1843
+ "options": [
1844
+ { "label": "CONTA E ORDEM", "value": 1 },
1845
+ { "label": "CONTA PRÓPRIA", "value": 2 },
1846
+ { "label": "ENCOMENDA", "value": 3 },
1847
+ { "label": "DISTRIBUIÇÃO", "value": 4 }
1848
+ ]
1849
+ }
1850
+ ]
1851
+ }
1852
+ ]
1853
+ }
1854
+ }
1855
+ ]
1856
+ },
1857
+ {
1858
+ "title": "Seguros",
1859
+ "id": "clienteTabSeguros",
1860
+ "elements": [
1861
+ {
1862
+ "type": "inheritance",
1863
+ "form": {
1864
+ "title": "Seguros",
1865
+ "componentType": "form",
1866
+ "id": "clienteSegurosForm",
1867
+ "contracts": [
1868
+ {
1869
+ "endpoint": "/clientes/{clienteId}/seguros",
1870
+ "id": "clienteSeguros",
1871
+ "actions": [
1872
+ "create",
1873
+ "delete",
1874
+ "get",
1875
+ "getById",
1876
+ "update"
1877
+ ],
1878
+ "request": {
1879
+ "entity": "CLIENTE_SEGURO",
1880
+ "fields": [
1881
+ {
1882
+ "name": "POSSUI_SEGURO_MERCADORIA",
1883
+ "dataType": "boolean",
1884
+ "isRequired": true
1885
+ },
1886
+ {
1887
+ "name": "PERCENTUAL_SEGURO_DI",
1888
+ "dataType": "float"
1889
+ },
1890
+ {
1891
+ "name": "FATOR_INCIDENCIA_DI",
1892
+ "dataType": "integer",
1893
+ "enum": [1, 2, 3]
1894
+ },
1895
+ {
1896
+ "name": "PERCENTUAL_SEGURO_NF",
1897
+ "dataType": "float"
1898
+ },
1899
+ {
1900
+ "name": "FATOR_INCIDENCIA_NF",
1901
+ "dataType": "integer",
1902
+ "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
1903
+ },
1904
+ {
1905
+ "name": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
1906
+ "dataType": "boolean"
1907
+ },
1908
+ {
1909
+ "name": "SEGURADORA_CREDITO_INTERNACIONAL",
1910
+ "dataType": "nvarchar"
1911
+ },
1912
+ {
1913
+ "name": "PERCENTUAL_CREDITO_INTERNACIONAL",
1914
+ "dataType": "float"
1915
+ },
1916
+ {
1917
+ "name": "LIMITE_CREDITO_INTERNACIONAL",
1918
+ "dataType": "float"
1919
+ },
1920
+ {
1921
+ "name": "SALDO_CREDITO_INTERNACIONAL",
1922
+ "dataType": "float"
1923
+ },
1924
+ {
1925
+ "name": "POSSUI_LIMITE_CREDITO_INTERNO",
1926
+ "dataType": "boolean"
1927
+ },
1928
+ {
1929
+ "name": "LIMITE_CREDITO_INTERNO",
1930
+ "dataType": "float"
1931
+ },
1932
+ {
1933
+ "name": "SALDO_CREDITO_INTERNO",
1934
+ "dataType": "float"
1935
+ },
1936
+ {
1937
+ "name": "WAIVER_LETTER",
1938
+ "dataType": "boolean"
1939
+ },
1940
+ {
1941
+ "name": "CLIENTE_SEGURO_FORNECEDOR",
1942
+ "dataType": "uniqueidentifier",
1943
+ "foreignKey": {
1944
+ "entity": "PrestadorDeServico",
1945
+ "connectionAttribute": "ID",
1946
+ "relationship": "many-to-many"
1947
+ }
1948
+ }
1949
+ ]
1950
+ }
1951
+ },
1952
+ {
1953
+ "id": "clientesSegurosExportadores",
1954
+ "endpoint": "/clientes/{clienteId}/seguros-exportadores",
1955
+ "actions": ["get"],
1956
+ "request": {
1957
+ "entity": "CLIENTE_SEGURO_FORNECEDOR",
1958
+ "fields": [
1959
+ {
1960
+ "name": "FORNECEDOR_ID",
1961
+ "dataType": "uniqueidentifier",
1962
+ "foreignKey": {
1963
+ "entity": "PrestadorDeServico",
1964
+ "connectionAttribute": "Id",
1965
+ "relationship": "one-to-many"
1966
+ }
1967
+ },
1968
+ {
1969
+ "name": "CLIENTE_SEGURO_ID",
1970
+ "dataType": "uniqueidentifier",
1971
+ "foreignKey": {
1972
+ "entity": "CLIENTE_SEGURO",
1973
+ "connectionAttribute": "ID",
1974
+ "relationship": "one-to-many"
1975
+ }
1976
+ }
1977
+ ],
1978
+ "uniqueConstraints": [
1979
+ {
1980
+ "identificator": "UQ_CLIENTE_SEGURO_FORNECEDOR",
1981
+ "fields": [
1982
+ "CLIENTE_SEGURO_ID",
1983
+ "EXPORTADOR_ID"
1984
+ ]
1985
+ }
1986
+ ]
1987
+ }
1988
+ }
1989
+ ],
1990
+ "elements": [
1991
+ {
1992
+ "title": "Seguro de Mercadoria",
1993
+ "id": "seguroMercadoriaFieldset",
1994
+ "type": "fieldset",
1995
+ "elements": [
1996
+ {
1997
+ "type": "select",
1998
+ "dataType": "integer",
1999
+ "label": "Seguro de Mercadoria",
2000
+ "name": "POSSUI_SEGURO_MERCADORIA",
2001
+ "isRequired": true,
2002
+ "options": [
2003
+ { "label": "SIM", "value": 1 },
2004
+ {
2005
+ "label": "NÃO",
2006
+ "value": 0,
2007
+ "isSelected": true
2008
+ }
2009
+ ]
2010
+ },
2011
+ {
2012
+ "type": "input",
2013
+ "dataType": "float",
2014
+ "label": "Percentual Seguro DI",
2015
+ "name": "PERCENTUAL_SEGURO_DI",
2016
+ "conditions": [
2017
+ {
2018
+ "type": "form",
2019
+ "elements": [
2020
+ {
2021
+ "key": "POSSUI_SEGURO_MERCADORIA",
2022
+ "value": 1,
2023
+ "comparisonOperator": "==="
2024
+ }
2025
+ ]
2026
+ }
2027
+ ]
2028
+ },
2029
+ {
2030
+ "type": "select",
2031
+ "dataType": "integer",
2032
+ "label": "Fator Incidência DI",
2033
+ "name": "FATOR_INCIDENCIA_DI",
2034
+ "options": [
2035
+ { "label": "C&F", "value": 1 },
2036
+ { "label": "CIF", "value": 2 },
2037
+ { "label": "FOB", "value": 3 }
2038
+ ],
2039
+ "conditions": [
2040
+ {
2041
+ "type": "form",
2042
+ "elements": [
2043
+ {
2044
+ "key": "POSSUI_SEGURO_MERCADORIA",
2045
+ "value": 1,
2046
+ "comparisonOperator": "==="
2047
+ }
2048
+ ]
2049
+ }
2050
+ ]
2051
+ },
2052
+ {
2053
+ "type": "input",
2054
+ "dataType": "float",
2055
+ "label": "Percentual Seguro NF",
2056
+ "name": "PERCENTUAL_SEGURO_NF",
2057
+ "minLength": 0,
2058
+ "conditions": [
2059
+ {
2060
+ "type": "form",
2061
+ "elements": [
2062
+ {
2063
+ "key": "POSSUI_SEGURO_MERCADORIA",
2064
+ "value": 1,
2065
+ "comparisonOperator": "==="
2066
+ }
2067
+ ]
2068
+ }
2069
+ ]
2070
+ },
2071
+ {
2072
+ "type": "select",
2073
+ "dataType": "integer",
2074
+ "label": "Fator Incidência NF",
2075
+ "name": "FATOR_INCIDENCIA_NF",
2076
+ "options": [
2077
+ {
2078
+ "label": "BASE DE CÁLCULO DO ICMS",
2079
+ "value": 1
2080
+ },
2081
+ { "label": "ICMS", "value": 2 },
2082
+ { "label": "REPASSE DO ICMS", "value": 3 },
2083
+ {
2084
+ "label": "VALOR DA NOTA FISCAL",
2085
+ "value": 4
2086
+ },
2087
+ { "label": "CIF", "value": 5 },
2088
+ { "label": "SALÁRIO MÍNIMO", "value": 6 },
2089
+ { "label": "FRETE", "value": 7 },
2090
+ { "label": "UNIDADE", "value": 8 },
2091
+ { "label": "SPREAD", "value": 9 },
2092
+ { "label": "IR", "value": 10 }
2093
+ ],
2094
+ "conditions": [
2095
+ {
2096
+ "type": "form",
2097
+ "elements": [
2098
+ {
2099
+ "key": "POSSUI_SEGURO_MERCADORIA",
2100
+ "value": 1,
2101
+ "comparisonOperator": "==="
2102
+ }
2103
+ ]
2104
+ }
2105
+ ]
2106
+ }
2107
+ ]
2108
+ },
2109
+ {
2110
+ "title": "Seguro de Crédito Internacional",
2111
+ "id": "seguroCreditoInternacionalFieldset",
2112
+ "type": "fieldset",
2113
+ "elements": [
2114
+ {
2115
+ "type": "select",
2116
+ "dataType": "integer",
2117
+ "label": "Seguro de Crédito Internacional",
2118
+ "name": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2119
+ "isRequired": true,
2120
+ "options": [
2121
+ { "label": "SIM", "value": 1 },
2122
+ {
2123
+ "label": "NÃO",
2124
+ "value": 0,
2125
+ "isSelected": true
2126
+ }
2127
+ ]
2128
+ },
2129
+ {
2130
+ "type": "input",
2131
+ "dataType": "nvarchar",
2132
+ "label": "Seguradora",
2133
+ "name": "SEGURADORA_CREDITO_INTERNACIONAL",
2134
+ "conditions": [
2135
+ {
2136
+ "type": "form",
2137
+ "elements": [
2138
+ {
2139
+ "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2140
+ "value": 1,
2141
+ "comparisonOperator": "==="
2142
+ }
2143
+ ]
2144
+ }
2145
+ ]
2146
+ },
2147
+ {
2148
+ "type": "input",
2149
+ "dataType": "float",
2150
+ "label": "Percentual",
2151
+ "name": "PERCENTUAL_CREDITO_INTERNACIONAL",
2152
+ "conditions": [
2153
+ {
2154
+ "type": "form",
2155
+ "elements": [
2156
+ {
2157
+ "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2158
+ "value": 1,
2159
+ "comparisonOperator": "==="
2160
+ }
2161
+ ]
2162
+ }
2163
+ ]
2164
+ },
2165
+ {
2166
+ "type": "input",
2167
+ "dataType": "float",
2168
+ "label": "Limite",
2169
+ "name": "LIMITE_CREDITO_INTERNACIONAL",
2170
+ "conditions": [
2171
+ {
2172
+ "type": "form",
2173
+ "elements": [
2174
+ {
2175
+ "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2176
+ "value": 1,
2177
+ "comparisonOperator": "==="
2178
+ }
2179
+ ]
2180
+ }
2181
+ ]
2182
+ },
2183
+ {
2184
+ "type": "input",
2185
+ "dataType": "float",
2186
+ "label": "Saldo",
2187
+ "name": "SALDO_CREDITO_INTERNACIONAL",
2188
+ "conditions": [
2189
+ {
2190
+ "type": "form",
2191
+ "elements": [
2192
+ {
2193
+ "key": "POSSUI_SEGURO_CREDITO_INTERNACIONAL",
2194
+ "value": 1,
2195
+ "comparisonOperator": "==="
2196
+ }
2197
+ ]
2198
+ }
2199
+ ]
2200
+ }
2201
+ ]
2202
+ },
2203
+ {
2204
+ "title": "Limite de Crédito Interno",
2205
+ "id": "limiteCreditoInternoFieldset",
2206
+ "type": "fieldset",
2207
+ "elements": [
2208
+ {
2209
+ "type": "select",
2210
+ "dataType": "integer",
2211
+ "label": "Limite de Crédito Interno",
2212
+ "name": "POSSUI_LIMITE_CREDITO_INTERNO",
2213
+ "isRequired": true,
2214
+ "options": [
2215
+ { "label": "Sim", "value": 1 },
2216
+ {
2217
+ "label": "Não",
2218
+ "value": 0,
2219
+ "isSelected": true
2220
+ }
2221
+ ]
2222
+ },
2223
+ {
2224
+ "type": "input",
2225
+ "dataType": "float",
2226
+ "label": "Limite",
2227
+ "name": "LIMITE_CREDITO_INTERNO",
2228
+ "conditions": [
2229
+ {
2230
+ "type": "form",
2231
+ "elements": [
2232
+ {
2233
+ "key": "POSSUI_LIMITE_CREDITO_INTERNO",
2234
+ "value": 1,
2235
+ "comparisonOperator": "==="
2236
+ }
2237
+ ]
2238
+ }
2239
+ ]
2240
+ },
2241
+ {
2242
+ "type": "input",
2243
+ "dataType": "float",
2244
+ "label": "Saldo",
2245
+ "name": "SALDO_CREDITO_INTERNO",
2246
+ "conditions": [
2247
+ {
2248
+ "type": "form",
2249
+ "elements": [
2250
+ {
2251
+ "key": "POSSUI_LIMITE_CREDITO_INTERNO",
2252
+ "value": 1,
2253
+ "comparisonOperator": "==="
2254
+ }
2255
+ ]
2256
+ }
2257
+ ]
2258
+ }
2259
+ ]
2260
+ },
2261
+ {
2262
+ "title": "Limite de Crédito Internacional",
2263
+ "id": "waiverLetterFieldset",
2264
+ "type": "fieldset",
2265
+ "elements": [
2266
+ {
2267
+ "type": "select",
2268
+ "dataType": "integer",
2269
+ "label": "Waiver Letter",
2270
+ "name": "WAIVER_LETTER",
2271
+ "options": [
2272
+ { "label": "SIM", "value": 1 },
2273
+ { "label": "NÃO", "value": 0 }
2274
+ ],
2275
+ "conditions": [
2276
+ {
2277
+ "type": "form",
2278
+ "elements": [
2279
+ {
2280
+ "key": "POSSUI_LIMITE_CREDITO_INTERNACIONAL",
2281
+ "value": 1,
2282
+ "comparisonOperator": "==="
2283
+ }
2284
+ ]
2285
+ }
2286
+ ]
2287
+ },
2288
+ {
2289
+ "type": "autocomplete",
2290
+ "dataType": "uniqueidentifier",
2291
+ "label": "Exportadores",
2292
+ "name": "EXPORTADORES_IDS",
2293
+ "isMultiple": true,
2294
+ "optionsApi": {
2295
+ "endpoint": "/fornecedores",
2296
+ "labelField": ["RAZAO_SOCIAL"],
2297
+ "valueField": "ID",
2298
+ "paramsToFilter": ["RAZAO_SOCIAL"],
2299
+ "paramType": "query",
2300
+ "relatedEntity": "PrestadorDeServico"
2301
+ },
2302
+ "conditions": [
2303
+ {
2304
+ "type": "form",
2305
+ "elements": [
2306
+ {
2307
+ "key": "POSSUI_LIMITE_CREDITO_INTERNACIONAL",
2308
+ "value": 1,
2309
+ "comparisonOperator": "==="
2310
+ }
2311
+ ]
2312
+ }
2313
+ ]
2314
+ }
2315
+ ]
2316
+ }
2317
+ ]
2318
+ }
2319
+ }
2320
+ ]
2321
+ },
2322
+ {
2323
+ "title": "Negociação",
2324
+ "id": "clienteTabNegociacao",
2325
+ "elements": [
2326
+ {
2327
+ "type": "inheritance",
2328
+ "form": {
2329
+ "id": "clienteNegociacaoForm",
2330
+ "componentType": "form",
2331
+ "title": "Gerenciamento de negociacoes do cliente",
2332
+ "contracts": [
2333
+ {
2334
+ "id": "clienteNegociacao",
2335
+ "endpoint": "/clientes/{clienteId}/negociacoes",
2336
+ "actions": [
2337
+ "create",
2338
+ "delete",
2339
+ "get",
2340
+ "getById",
2341
+ "update"
2342
+ ],
2343
+ "request": {
2344
+ "entity": "CLIENTE_NEGOCIACAO",
2345
+ "fields": [
2346
+ {
2347
+ "name": "MODALIDADE_OPERACAO_NEGOCIACAO",
2348
+ "dataType": "integer",
2349
+ "isRequired": true,
2350
+ "enum": [1, 2, 3, 4]
2351
+ },
2352
+ {
2353
+ "name": "VALOR_MINIMO_FATURAMENTO_MENSAL",
2354
+ "dataType": "decimal",
2355
+ "isRequired": true
2356
+ },
2357
+ {
2358
+ "name": "VALOR_MAXIMO_FATURAMENTO_MENSAL",
2359
+ "dataType": "decimal",
2360
+ "isRequired": true
2361
+ },
2362
+ {
2363
+ "name": "ESPECIALIDADE_ID",
2364
+ "dataType": "uniqueidentifier",
2365
+ "foreignKey": {
2366
+ "entity": "NcmEspecialidade",
2367
+ "connectionAttribute": "Id",
2368
+ "relationship": "one-to-many"
2369
+ }
2370
+ },
2371
+ {
2372
+ "name": "SUBDIVISAO_ID",
2373
+ "dataType": "uniqueidentifier",
2374
+ "foreignKey": {
2375
+ "entity": "Subdivisao",
2376
+ "connectionAttribute": "Id",
2377
+ "relationship": "one-to-many"
2378
+ }
2379
+ },
2380
+ {
2381
+ "name": "FATOR_INCIDENCIA_NEGOCIACAO",
2382
+ "dataType": "integer",
2383
+ "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
2384
+ },
2385
+ {
2386
+ "name": "TAXA_ADMINISTRATIVA_INTERNA",
2387
+ "dataType": "decimal"
2388
+ },
2389
+ {
2390
+ "name": "PARAMETRO_CALCULO_NEGOCIACAO",
2391
+ "dataType": "integer",
2392
+ "enum": [1, 2]
2393
+ },
2394
+ {
2395
+ "name": "VALOR_CALCULO_NEGOCIACAO",
2396
+ "dataType": "decimal"
2397
+ },
2398
+ { "name": "IR", "dataType": "decimal" },
2399
+ { "name": "SPREAD", "dataType": "decimal" },
2400
+ {
2401
+ "name": "POSSUI_DESCONTO_NEGOCIACAO",
2402
+ "dataType": "boolean"
2403
+ },
2404
+ {
2405
+ "name": "TIPO_DESCONTO_NEGOCIACAO",
2406
+ "dataType": "integer",
2407
+ "enum": [1, 2]
2408
+ },
2409
+ {
2410
+ "name": "VALOR_DESCONTO_NEGOCIACAO",
2411
+ "dataType": "decimal"
2412
+ },
2413
+ {
2414
+ "name": "FATOR_INCIDENCIA_DESCONTO_NEGOCIACAO",
2415
+ "dataType": "integer",
2416
+ "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
2417
+ },
2418
+ {
2419
+ "name": "NATUREZA_DESCONTO_NEGOCIACAO",
2420
+ "dataType": "integer",
2421
+ "enum": [1, 2]
2422
+ }
2423
+ ]
2424
+ }
2425
+ }
2426
+ ],
2427
+ "elements": [
2428
+ {
2429
+ "title": "Negociação",
2430
+ "id": "negociacoes",
2431
+ "type": "array",
2432
+ "name": "negociacoes",
2433
+ "businessRules": [
2434
+ {
2435
+ "rule": {
2436
+ "description": "SE os dados da negociacao ja existir ENTAO deve evitar inserção"
2437
+ }
2438
+ },
2439
+ {
2440
+ "rule": {
2441
+ "description": "SE o valor máximo de uma negociação for menor que o valor mínimo de outra negociação, com mesma modalidade de operação e especialidade e uf ENTAO deve evitar inserção"
2442
+ }
2443
+ },
2444
+ {
2445
+ "rule": {
2446
+ "description": "SE o valor mínimo de uma negociação for maior que o valor máximo de outra negociação, com mesma modalidade de operação e especialidade e uf ENTAO deve evitar inserção"
2447
+ }
2448
+ }
2449
+ ],
2450
+ "elements": [
2451
+ {
2452
+ "title": "Dados da Negociação",
2453
+ "id": "dadosNegociacaoFieldset",
2454
+ "type": "fieldset",
2455
+ "elements": [
2456
+ {
2457
+ "type": "select",
2458
+ "dataType": "integer",
2459
+ "label": "Modalidade de Operação",
2460
+ "name": "MODALIDADE_OPERACAO_NEGOCIACAO",
2461
+ "options": [
2462
+ { "label": "CONTA E ORDEM", "value": 1 },
2463
+ { "label": "CONTA PRÓPRIA", "value": 2 },
2464
+ { "label": "ENCOMENDA", "value": 3 },
2465
+ { "label": "DISTRIBUIÇÃO", "value": 4 }
2466
+ ]
2467
+ },
2468
+ {
2469
+ "type": "input",
2470
+ "dataType": "decimal",
2471
+ "label": "De (R$)",
2472
+ "name": "VALOR_MINIMO_FATURAMENTO_MENSAL",
2473
+ "todo": "Validar que o valor mínimo não seja maior que o valor máximo"
2474
+ },
2475
+ {
2476
+ "type": "input",
2477
+ "dataType": "decimal",
2478
+ "label": "Até (R$)",
2479
+ "name": "VALOR_MAXIMO_FATURAMENTO_MENSAL",
2480
+ "todo": "Validar que o valor máximo não seja menor que o valor mínimo"
2481
+ },
2482
+ {
2483
+ "type": "autocomplete",
2484
+ "dataType": "uniqueidentifier",
2485
+ "label": "Especialidade",
2486
+ "name": "ESPECIALIDADE_ID",
2487
+ "optionsApi": {
2488
+ "endpoint": "/grupo-produto",
2489
+ "labelField": ["nome"],
2490
+ "valueField": "_id",
2491
+ "paramsToFilter": ["nome"],
2492
+ "paramType": "query",
2493
+ "relatedEntity": "NcmEspecialidade"
2494
+ },
2495
+ "businessRules": [
2496
+ {
2497
+ "rule": {
2498
+ "description": "SE tiver especialidade na tela ESPECIALIDADE ENTAO deve aparecer somente as que foram selecionadas la."
2499
+ }
2500
+ }
2501
+ ]
2502
+ },
2503
+ {
2504
+ "type": "autocomplete",
2505
+ "dataType": "uniqueidentifier",
2506
+ "label": "UF Desembaraço",
2507
+ "name": "SUBDIVISAO_ID",
2508
+ "optionsApi": {
2509
+ "endpoint": "/subdivisao",
2510
+ "labelField": ["nome", "codigo"],
2511
+ "valueField": "_id",
2512
+ "paramsToFilter": [
2513
+ "nome",
2514
+ "codigo",
2515
+ "uf"
2516
+ ],
2517
+ "paramType": "query",
2518
+ "relatedEntity": "Subdivisao"
2519
+ }
2520
+ },
2521
+ {
2522
+ "type": "select",
2523
+ "dataType": "integer",
2524
+ "label": "Fator Incidência Negociação",
2525
+ "name": "FATOR_INCIDENCIA_NEGOCIACAO",
2526
+ "options": [
2527
+ {
2528
+ "label": "BASE DE CALCULO DO ICMS",
2529
+ "value": 1
2530
+ },
2531
+ { "label": "ICMS", "value": 2 },
2532
+ {
2533
+ "label": "REPASSE DO ICMS",
2534
+ "value": 3
2535
+ },
2536
+ {
2537
+ "label": "VALOR DA NOTA FISCAL",
2538
+ "value": 4
2539
+ },
2540
+ {
2541
+ "label": "INDICE DA NOTA FISCAL",
2542
+ "value": 5
2543
+ },
2544
+ { "label": "CIF", "value": 6 },
2545
+ { "label": "SALARIO MINIMO", "value": 7 },
2546
+ { "label": "FRETE", "value": 8 },
2547
+ { "label": "UNIDADE", "value": 9 },
2548
+ { "label": "SPREAD", "value": 10 },
2549
+ { "label": "IR", "value": 11 }
2550
+ ]
2551
+ },
2552
+ {
2553
+ "type": "input",
2554
+ "dataType": "decimal",
2555
+ "label": "Taxa Administrativa Interna",
2556
+ "name": "TAXA_ADMINISTRATIVA_INTERNA",
2557
+ "conditions": [
2558
+ {
2559
+ "type": "form",
2560
+ "elements": [
2561
+ {
2562
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2563
+ "comparisonOperator": "===",
2564
+ "value": 1
2565
+ },
2566
+ {
2567
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2568
+ "comparisonOperator": "===",
2569
+ "value": 2
2570
+ }
2571
+ ]
2572
+ }
2573
+ ]
2574
+ },
2575
+ {
2576
+ "type": "select",
2577
+ "dataType": "integer",
2578
+ "label": "Parâmetro de Cálculo",
2579
+ "name": "PARAMETRO_CALCULO_NEGOCIACAO",
2580
+ "conditions": [
2581
+ {
2582
+ "type": "form",
2583
+ "elements": [
2584
+ {
2585
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2586
+ "comparisonOperator": "===",
2587
+ "value": 1
2588
+ },
2589
+ {
2590
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2591
+ "comparisonOperator": "===",
2592
+ "value": 2
2593
+ }
2594
+ ]
2595
+ }
2596
+ ],
2597
+ "options": [
2598
+ { "label": "VALOR", "value": 1 },
2599
+ { "label": "PERCENTUAL", "value": 2 }
2600
+ ]
2601
+ },
2602
+ {
2603
+ "type": "input",
2604
+ "dataType": "decimal",
2605
+ "label": "Valor",
2606
+ "minLength": 0,
2607
+ "name": "VALOR_CALCULO_NEGOCIACAO",
2608
+ "conditions": [
2609
+ {
2610
+ "type": "form",
2611
+ "elements": [
2612
+ {
2613
+ "key": "PARAMETRO_CALCULO_NEGOCIACAO",
2614
+ "comparisonOperator": "!==",
2615
+ "value": null
2616
+ }
2617
+ ]
2618
+ }
2619
+ ]
2620
+ },
2621
+ {
2622
+ "type": "input",
2623
+ "dataType": "decimal",
2624
+ "label": "IR",
2625
+ "minLength": 0,
2626
+ "name": "IR",
2627
+ "conditions": [
2628
+ {
2629
+ "type": "form",
2630
+ "elements": [
2631
+ {
2632
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2633
+ "comparisonOperator": "===",
2634
+ "value": 3
2635
+ },
2636
+ {
2637
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2638
+ "comparisonOperator": "===",
2639
+ "value": 4
2640
+ }
2641
+ ]
2642
+ }
2643
+ ]
2644
+ },
2645
+ {
2646
+ "type": "input",
2647
+ "dataType": "decimal",
2648
+ "label": "Spread",
2649
+ "minLength": 0,
2650
+ "name": "SPREAD",
2651
+ "conditions": [
2652
+ {
2653
+ "type": "form",
2654
+ "elements": [
2655
+ {
2656
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2657
+ "comparisonOperator": "===",
2658
+ "value": 3
2659
+ },
2660
+ {
2661
+ "key": "MODALIDADE_OPERACAO_NEGOCIACAO",
2662
+ "comparisonOperator": "===",
2663
+ "value": 4
2664
+ }
2665
+ ]
2666
+ }
2667
+ ]
2668
+ }
2669
+ ]
2670
+ },
2671
+ {
2672
+ "title": "Dados de desconto",
2673
+ "id": "dadosDescontoFieldset",
2674
+ "type": "fieldset",
2675
+ "elements": [
2676
+ {
2677
+ "type": "select",
2678
+ "dataType": "integer",
2679
+ "label": "Desconto",
2680
+ "name": "POSSUI_DESCONTO",
2681
+ "isRequired": true,
2682
+ "options": [
2683
+ { "label": "SIM", "value": 1 },
2684
+ {
2685
+ "label": "NÃO",
2686
+ "value": 0,
2687
+ "isSelected": true
2688
+ }
2689
+ ]
2690
+ },
2691
+ {
2692
+ "type": "select",
2693
+ "dataType": "integer",
2694
+ "label": "Tipo de Desconto",
2695
+ "name": "TIPO_DESCONTO",
2696
+ "options": [
2697
+ { "label": "VALOR", "value": 1 },
2698
+ { "label": "PERCENTUAL", "value": 2 }
2699
+ ],
2700
+ "conditions": [
2701
+ {
2702
+ "type": "form",
2703
+ "elements": [
2704
+ {
2705
+ "key": "POSSUI_DESCONTO",
2706
+ "value": 1,
2707
+ "comparisonOperator": "==="
2708
+ }
2709
+ ]
2710
+ }
2711
+ ]
2712
+ },
2713
+ {
2714
+ "type": "input",
2715
+ "dataType": "decimal",
2716
+ "label": "Valor",
2717
+ "name": "VALOR_DESCONTO",
2718
+ "conditions": [
2719
+ {
2720
+ "type": "form",
2721
+ "elements": [
2722
+ {
2723
+ "key": "POSSUI_DESCONTO",
2724
+ "value": 1,
2725
+ "comparisonOperator": "==="
2726
+ }
2727
+ ]
2728
+ }
2729
+ ]
2730
+ },
2731
+ {
2732
+ "type": "select",
2733
+ "dataType": "integer",
2734
+ "label": "Fator de Incidência",
2735
+ "name": "FATOR_INCIDENCIA_DESCONTO",
2736
+ "options": [
2737
+ {
2738
+ "label": "BASE DE CALCULO DO ICMS",
2739
+ "value": 1
2740
+ },
2741
+ { "label": "ICMS", "value": 2 },
2742
+ {
2743
+ "label": "REPASSE DO ICMS",
2744
+ "value": 3
2745
+ },
2746
+ {
2747
+ "label": "VALOR DA NOTA FISCAL",
2748
+ "value": 4
2749
+ },
2750
+ {
2751
+ "label": "INDICE DA NOTA FISCAL",
2752
+ "value": 5
2753
+ },
2754
+ { "label": "CIF", "value": 6 },
2755
+ { "label": "SALARIO MINIMO", "value": 7 },
2756
+ { "label": "FRETE", "value": 8 },
2757
+ { "label": "UNIDADE", "value": 9 },
2758
+ { "label": "SPREAD", "value": 10 },
2759
+ { "label": "IR", "value": 11 }
2760
+ ],
2761
+ "conditions": [
2762
+ {
2763
+ "type": "form",
2764
+ "elements": [
2765
+ {
2766
+ "key": "POSSUI_DESCONTO",
2767
+ "value": 1,
2768
+ "comparisonOperator": "==="
2769
+ }
2770
+ ]
2771
+ }
2772
+ ]
2773
+ },
2774
+ {
2775
+ "type": "select",
2776
+ "dataType": "integer",
2777
+ "label": "Natureza de Desconto",
2778
+ "name": "NATUREZA_DESCONTO",
2779
+ "options": [
2780
+ {
2781
+ "label": "DESCONTO INCONDICIONAL",
2782
+ "value": 1
2783
+ },
2784
+ {
2785
+ "label": "DESCONTO FINANCEIRO",
2786
+ "value": 2
2787
+ }
2788
+ ],
2789
+ "conditions": [
2790
+ {
2791
+ "type": "form",
2792
+ "elements": [
2793
+ {
2794
+ "key": "POSSUI_DESCONTO_NEGOCIACAO",
2795
+ "value": 1,
2796
+ "comparisonOperator": "==="
2797
+ }
2798
+ ]
2799
+ }
2800
+ ]
2801
+ }
2802
+ ]
2803
+ }
2804
+ ]
2805
+ }
2806
+ ]
2807
+ }
2808
+ }
2809
+ ]
2810
+ },
2811
+ {
2812
+ "title": "Radar",
2813
+ "id": "clienteTabRadar",
2814
+ "elements": [
2815
+ {
2816
+ "type": "inheritance",
2817
+ "form": {
2818
+ "title": "Radar",
2819
+ "componentType": "form",
2820
+ "id": "clienteRadarForm",
2821
+ "contracts": [
2822
+ {
2823
+ "id": "clienteRadar",
2824
+ "endpoint": "/clientes/{clienteId}/radar",
2825
+ "actions": [
2826
+ "create",
2827
+ "update",
2828
+ "delete",
2829
+ "get",
2830
+ "getById"
2831
+ ],
2832
+ "request": {
2833
+ "entity": "CLIENTE_RADAR",
2834
+ "fields": [
2835
+ {
2836
+ "name": "MODALIDADE",
2837
+ "dataType": "integer",
2838
+ "isRequired": true
2839
+ },
2840
+ {
2841
+ "name": "LIMITE_RADAR",
2842
+ "dataType": "float",
2843
+ "isRequired": false
2844
+ },
2845
+ {
2846
+ "name": "DATA_OBTENCAO",
2847
+ "dataType": "datetime2",
2848
+ "isRequired": true
2849
+ },
2850
+ {
2851
+ "name": "DATA_VENCIMENTO",
2852
+ "dataType": "datetime2",
2853
+ "isRequired": false
2854
+ },
2855
+ {
2856
+ "name": "SALDO_RADAR",
2857
+ "dataType": "float",
2858
+ "isRequired": false
2859
+ }
2860
+ ]
2861
+ }
2862
+ },
2863
+ {
2864
+ "id": "processosVinculadosRadar",
2865
+ "endpoint": "/clientes/{clienteId}/radar/{radarId}/processos",
2866
+ "actions": [
2867
+ "create",
2868
+ "update",
2869
+ "delete",
2870
+ "get",
2871
+ "getById"
2872
+ ],
2873
+ "request": {
2874
+ "entity": "CLIENTE_RADAR_PROCESSO",
2875
+ "fields": [
2876
+ {
2877
+ "name": "PROCESSO_ID",
2878
+ "dataType": "nvarchar",
2879
+ "isRequired": true
2880
+ },
2881
+ {
2882
+ "name": "VMLD",
2883
+ "dataType": "float",
2884
+ "isRequired": true
2885
+ },
2886
+ {
2887
+ "name": "DATA_LIBERACAO",
2888
+ "dataType": "datetime2"
2889
+ }
2890
+ ]
2891
+ }
2892
+ }
2893
+ ],
2894
+ "elements": [
2895
+ {
2896
+ "type": "select",
2897
+ "dataType": "integer",
2898
+ "label": "Modalidade",
2899
+ "name": "MODALIDADE",
2900
+ "isRequired": true,
2901
+ "options": [
2902
+ { "label": "RADAR EXPRESSO", "value": 1 },
2903
+ { "label": "RADAR LIMITADO", "value": 2 },
2904
+ { "label": "RADAR ILIMITADO", "value": 3 }
2905
+ ]
2906
+ },
2907
+ {
2908
+ "type": "input",
2909
+ "dataType": "float",
2910
+ "label": "Limite",
2911
+ "name": "LIMITE_RADAR",
2912
+ "isRequired": true,
2913
+ "isDisabled": true,
2914
+ "businessRules": [
2915
+ {
2916
+ "rule": {
2917
+ "description": "SE MODALIDADE == 1 ENTAO deve ser preenchido com USD 50.000,00"
2918
+ }
2919
+ },
2920
+ {
2921
+ "rule": {
2922
+ "description": "SE MODALIDADE == 2 ENTAO deve ser preenchido com USD 150.000,00"
2923
+ }
2924
+ }
2925
+ ],
2926
+ "conditions": [
2927
+ {
2928
+ "type": "form",
2929
+ "elements": [
2930
+ {
2931
+ "key": "modalidadeRadar",
2932
+ "comparisonOperator": "!==",
2933
+ "value": 3
2934
+ }
2935
+ ]
2936
+ }
2937
+ ]
2938
+ },
2939
+ {
2940
+ "type": "input",
2941
+ "dataType": "datetime2",
2942
+ "label": "Obtenção",
2943
+ "name": "DATA_OBTENCAO",
2944
+ "isRequired": true
2945
+ },
2946
+ {
2947
+ "type": "input",
2948
+ "dataType": "datetime2",
2949
+ "label": "Vencimento",
2950
+ "name": "DATA_VENCIMENTO"
2951
+ },
2952
+ {
2953
+ "type": "input",
2954
+ "dataType": "float",
2955
+ "label": "Saldo do Radar (em dólares)",
2956
+ "name": "SALDO_RADAR",
2957
+ "isDisabled": true
2958
+ },
2959
+ {
2960
+ "title": "Processo",
2961
+ "id": "processosVinculadosRadarFieldset",
2962
+ "type": "fieldset",
2963
+ "elements": [
2964
+ {
2965
+ "title": "Processo",
2966
+ "id": "processos",
2967
+ "type": "array",
2968
+ "name": "processos",
2969
+ "elements": [
2970
+ {
2971
+ "type": "autocomplete",
2972
+ "dataType": "nvarchar",
2973
+ "label": "Processo",
2974
+ "name": "PROCESSO_ID",
2975
+ "isRequired": true,
2976
+ "optionsApi": {
2977
+ "endpoint": "/clientes/{id}/radar/processos/autocomplete",
2978
+ "labelField": ["numero", "cliente.nome"],
2979
+ "valueField": "_id",
2980
+ "paramsToFilter": [
2981
+ "numero",
2982
+ "cliente.nome",
2983
+ "clienteId"
2984
+ ],
2985
+ "paramType": "query",
2986
+ "relatedEntity": "PROCESSOS",
2987
+ "filtersFromOtherFormFields": [
2988
+ {
2989
+ "formFieldName": "_id",
2990
+ "filterPropertyName": "clienteId"
2991
+ }
2992
+ ]
2993
+ }
2994
+ },
2995
+ {
2996
+ "type": "input",
2997
+ "dataType": "float",
2998
+ "label": "VMLD",
2999
+ "name": "VMLD",
3000
+ "isRequired": true
3001
+ },
3002
+ {
3003
+ "type": "input",
3004
+ "dataType": "datetime2",
3005
+ "label": "Data de Liberação",
3006
+ "name": "DATA_LIBERACAO"
3007
+ }
3008
+ ]
3009
+ }
3010
+ ]
3011
+ }
3012
+ ]
3013
+ }
3014
+ }
3015
+ ]
3016
+ },
3017
+ {
3018
+ "title": "Despachante",
3019
+ "id": "clienteTabDespachante",
3020
+ "elements": [
3021
+ {
3022
+ "type": "inheritance",
3023
+ "form": {
3024
+ "id": "clienteDespachanteForm",
3025
+ "title": "Gerenciamento de despachante do cliente",
3026
+ "componentType": "form",
3027
+ "contracts": [
3028
+ {
3029
+ "id": "clienteDespachante",
3030
+ "endpoint": "/clientes/{clienteId}/despachantes",
3031
+ "actions": [
3032
+ "create",
3033
+ "delete",
3034
+ "get",
3035
+ "getById",
3036
+ "update"
3037
+ ],
3038
+ "request": {
3039
+ "entity": "CLIENTE_DESPACHANTE",
3040
+ "fields": [
3041
+ {
3042
+ "name": "DESPACHANTE_ID",
3043
+ "dataType": "uniqueidentifier",
3044
+ "isRequired": true,
3045
+ "foreignKey": {
3046
+ "entity": "PrestadorDeServico",
3047
+ "connectionAttribute": "Id",
3048
+ "relationship": "one-to-many"
3049
+ }
3050
+ },
3051
+ {
3052
+ "name": "DESPESA_ID",
3053
+ "dataType": "uniqueidentifier",
3054
+ "isRequired": true,
3055
+ "foreignKey": {
3056
+ "entity": "Despesa",
3057
+ "connectionAttribute": "Id",
3058
+ "relationship": "one-to-many"
3059
+ }
3060
+ },
3061
+ {
3062
+ "name": "PARAMETRO_CALCULO",
3063
+ "dataType": "integer",
3064
+ "isRequired": true
3065
+ },
3066
+ {
3067
+ "name": "FATOR_INCIDENCIA",
3068
+ "dataType": "integer",
3069
+ "isRequired": true
3070
+ },
3071
+ { "name": "VALOR", "dataType": "integer" },
3072
+ {
3073
+ "name": "FATOR_INCIDENCIA_LI",
3074
+ "dataType": "integer"
3075
+ },
3076
+ { "name": "LI", "dataType": "integer" },
3077
+ { "name": "MAPA", "dataType": "integer" },
3078
+ { "name": "SDA", "dataType": "integer" },
3079
+ {
3080
+ "name": "ESPECIALIDADE_ID",
3081
+ "dataType": "uniqueidentifier",
3082
+ "foreignKey": {
3083
+ "entity": "NcmEspecialidade",
3084
+ "connectionAttribute": "Id",
3085
+ "relationship": "one-to-many"
3086
+ }
3087
+ },
3088
+ {
3089
+ "name": "SUBDIVISAO_ID",
3090
+ "dataType": "uniqueidentifier",
3091
+ "foreignKey": {
3092
+ "entity": "Subdivisao",
3093
+ "connectionAttribute": "Id",
3094
+ "relationship": "one-to-many"
3095
+ }
3096
+ },
3097
+ {
3098
+ "name": "TIPO_CARGA",
3099
+ "dataType": "integer",
3100
+ "enum": [1, 2, 3]
3101
+ },
3102
+ {
3103
+ "name": "ENTREPOSTO_ADUANEIRO",
3104
+ "dataType": "integer"
3105
+ }
3106
+ ]
3107
+ }
3108
+ }
3109
+ ],
3110
+ "elements": [
3111
+ {
3112
+ "title": "Despachante Vinculado",
3113
+ "id": "despachantesVinculados",
3114
+ "type": "array",
3115
+ "name": "despachantesVinculados",
3116
+ "businessRules": [
3117
+ {
3118
+ "rule": {
3119
+ "description": "SE os campos DESPACHANTE_ID, DESPESA_ID, PARAMETRO_CALCULO, FATOR_INCIDENCIA, ESPECIALIDADE_ID, ESTADO_ID, TIPO_CARGA e ENTREPOSTO_ADUANEIRO estiverem duplicados para o mesmo cliente ENTÃO deve evitar inserção"
3120
+ }
3121
+ }
3122
+ ],
3123
+ "elements": [
3124
+ {
3125
+ "type": "autocomplete",
3126
+ "dataType": "uniqueidentifier",
3127
+ "label": "Despachante",
3128
+ "name": "DESPACHANTE_ID",
3129
+ "isRequired": true,
3130
+ "optionsApi": {
3131
+ "endpoint": "/despachantes",
3132
+ "labelField": ["termo"],
3133
+ "valueField": "_id",
3134
+ "paramsToFilter": ["termo"],
3135
+ "paramType": "query",
3136
+ "relatedEntity": "PRESTADOR_SERVICO"
3137
+ }
3138
+ },
3139
+ {
3140
+ "type": "autocomplete",
3141
+ "dataType": "uniqueidentifier",
3142
+ "label": "Despesa",
3143
+ "name": "DESPESA_ID",
3144
+ "isRequired": true,
3145
+ "optionsApi": {
3146
+ "endpoint": "/despesas",
3147
+ "labelField": ["termo"],
3148
+ "valueField": "_id",
3149
+ "paramsToFilter": ["termo"],
3150
+ "paramType": "query",
3151
+ "relatedEntity": "DESPESA"
3152
+ }
3153
+ },
3154
+ {
3155
+ "type": "select",
3156
+ "dataType": "integer",
3157
+ "label": "Parâmetro de Cálculo",
3158
+ "name": "PARAMETRO_CALCULO",
3159
+ "isRequired": true,
3160
+ "options": [
3161
+ { "label": "VALOR", "value": 1 },
3162
+ { "label": "PERCENTUAL", "value": 2 }
3163
+ ]
3164
+ },
3165
+ {
3166
+ "type": "select",
3167
+ "dataType": "integer",
3168
+ "label": "Fator de Incidência",
3169
+ "name": "FATOR_INCIDENCIA",
3170
+ "isRequired": true,
3171
+ "options": [
3172
+ { "label": "SALÁRIO MÍNIMO", "value": 1 },
3173
+ { "label": "VALOR FIXO", "value": 2 },
3174
+ { "label": "PERCENTUAL", "value": 3 },
3175
+ { "label": "GARRAFAS", "value": 4 },
3176
+ { "label": "UNIDADE", "value": 5 }
3177
+ ],
3178
+ "conditions": [
3179
+ {
3180
+ "type": "form",
3181
+ "elements": [
3182
+ {
3183
+ "key": "FATOR_INCIDENCIA",
3184
+ "comparisonOperator": "===",
3185
+ "value": 2
3186
+ }
3187
+ ],
3188
+ "conditionResponse": "fillFields",
3189
+ "fillFields": [
3190
+ {
3191
+ "fieldKey": "VALOR",
3192
+ "value": "TODO: ADICIONAR SALARIO MINIMO ANUAL"
3193
+ }
3194
+ ]
3195
+ }
3196
+ ]
3197
+ },
3198
+ {
3199
+ "type": "input",
3200
+ "dataType": "integer",
3201
+ "label": "Valor",
3202
+ "name": "VALOR",
3203
+ "isRequired": true,
3204
+ "conditions": [
3205
+ {
3206
+ "type": "form",
3207
+ "elements": [
3208
+ {
3209
+ "key": "FATOR_INCIDENCIA",
3210
+ "comparisonOperator": "===",
3211
+ "value": 2
3212
+ }
3213
+ ],
3214
+ "conditionResponse": "fillFields",
3215
+ "fillFields": [
3216
+ {
3217
+ "fieldKey": "VALOR",
3218
+ "value": "TODO: ADICIONAR SALARIO MINIMO ANUAL"
3219
+ }
3220
+ ]
3221
+ }
3222
+ ]
3223
+ },
3224
+ {
3225
+ "type": "select",
3226
+ "dataType": "integer",
3227
+ "label": "Fator de Incidência LI",
3228
+ "name": "FATOR_INCIDENCIA_LI",
3229
+ "options": [
3230
+ { "label": "1 A 3 LIS", "value": 1 },
3231
+ { "label": "3 A 5 LIS", "value": 2 }
3232
+ ]
3233
+ },
3234
+ {
3235
+ "type": "input",
3236
+ "dataType": "integer",
3237
+ "label": "LI",
3238
+ "name": "LI"
3239
+ },
3240
+ {
3241
+ "type": "input",
3242
+ "dataType": "integer",
3243
+ "label": "MAPA",
3244
+ "name": "MAPA"
3245
+ },
3246
+ {
3247
+ "type": "input",
3248
+ "dataType": "integer",
3249
+ "label": "SDA",
3250
+ "name": "SDA"
3251
+ },
3252
+ {
3253
+ "type": "autocomplete",
3254
+ "dataType": "uniqueidentifier",
3255
+ "label": "Especialidade",
3256
+ "name": "ESPECIALIDADE_ID",
3257
+ "optionsApi": {
3258
+ "endpoint": "/grupo-produto",
3259
+ "labelField": ["nome"],
3260
+ "valueField": "_id",
3261
+ "paramsToFilter": ["nome"],
3262
+ "paramType": "query",
3263
+ "relatedEntity": "GRUPO_PRODUTO"
3264
+ },
3265
+ "businessRules": [
3266
+ {
3267
+ "rule": {
3268
+ "description": "SE tiver especialidade na tela ESPECIALIDADE ENTAO deve aparecer somente as que foram selecionadas la."
3269
+ }
3270
+ }
3271
+ ]
3272
+ },
3273
+ {
3274
+ "type": "autocomplete",
3275
+ "dataType": "uniqueidentifier",
3276
+ "label": "UF Desembaraço",
3277
+ "name": "SUBDIVISAO_ID",
3278
+ "optionsApi": {
3279
+ "endpoint": "/subdivisao",
3280
+ "labelField": ["nome", "codigo"],
3281
+ "valueField": "_id",
3282
+ "paramsToFilter": ["nome", "codigo", "uf"],
3283
+ "paramType": "query",
3284
+ "relatedEntity": "SUBDIVISAO"
3285
+ }
3286
+ },
3287
+ {
3288
+ "type": "select",
3289
+ "dataType": "integer",
3290
+ "label": "Tipo de Carga",
3291
+ "name": "TIPO_CARGA",
3292
+ "options": [
3293
+ { "label": "COMPLETA - FTL", "value": 1 },
3294
+ { "label": "FRACIONADA - LTL", "value": 2 },
3295
+ { "label": "PARCIAL - PTL", "value": 3 }
3296
+ ]
3297
+ },
3298
+ {
3299
+ "type": "select",
3300
+ "dataType": "integer",
3301
+ "label": "Entreposto Aduaneiro",
3302
+ "name": "ENTREPOSTO_ADUANEIRO",
3303
+ "options": [
3304
+ { "label": "SIM", "value": 1 },
3305
+ {
3306
+ "label": "NÃO",
3307
+ "value": 0,
3308
+ "isSelected": true
3309
+ }
3310
+ ]
3311
+ }
3312
+ ]
3313
+ }
3314
+ ]
3315
+ }
3316
+ }
3317
+ ]
3318
+ },
3319
+ {
3320
+ "title": "Documentos",
3321
+ "id": "clienteTabDocumentos",
3322
+ "elements": [
3323
+ {
3324
+ "type": "inheritance",
3325
+ "form": {
3326
+ "id": "clienteDocumentosForm",
3327
+ "title": "Gerenciamento de documentos do cliente",
3328
+ "componentType": "form",
3329
+ "contracts": [
3330
+ {
3331
+ "id": "clienteDocumentos",
3332
+ "endpoint": "/clientes/{clienteId}/documentos",
3333
+ "actions": [
3334
+ "create",
3335
+ "delete",
3336
+ "get",
3337
+ "getById",
3338
+ "update"
3339
+ ],
3340
+ "request": {
3341
+ "entity": "CLIENTE_DOCUMENTO",
3342
+ "fields": [
3343
+ {
3344
+ "name": "ESPECIE_DOCUMENTO_ID",
3345
+ "dataType": "uniqueidentifier",
3346
+ "isRequired": true,
3347
+ "foreignKey": {
3348
+ "entity": "EspecieDeDocumento",
3349
+ "connectionAttribute": "Id",
3350
+ "relationship": "one-to-many"
3351
+ }
3352
+ },
3353
+ {
3354
+ "name": "APELIDO",
3355
+ "dataType": "nvarchar",
3356
+ "isRequired": true
3357
+ },
3358
+ {
3359
+ "name": "TIPO_DOCUMENTO",
3360
+ "dataType": "integer",
3361
+ "isRequired": true,
3362
+ "enum": [1, 2, 3]
3363
+ },
3364
+ {
3365
+ "name": "DATA_VALIDADE",
3366
+ "dataType": "datetime2"
3367
+ },
3368
+ {
3369
+ "name": "ARQUIVO",
3370
+ "dataType": "nvarchar",
3371
+ "isRequired": true
3372
+ }
3373
+ ]
3374
+ }
3375
+ }
3376
+ ],
3377
+ "elements": [
3378
+ {
3379
+ "type": "array",
3380
+ "id": "documentos",
3381
+ "title": "Documento",
3382
+ "name": "DOCUMENTOS",
3383
+ "elements": [
3384
+ {
3385
+ "type": "autocomplete",
3386
+ "dataType": "uniqueidentifier",
3387
+ "label": "Nome",
3388
+ "name": "ESPECIE_DOCUMENTO_ID",
3389
+ "isRequired": true,
3390
+ "optionsApi": {
3391
+ "endpoint": "/especies-de-documento",
3392
+ "labelField": ["termo"],
3393
+ "valueField": "_id",
3394
+ "paramsToFilter": ["termo"],
3395
+ "paramType": "query",
3396
+ "relatedEntity": "ESPECIE_DOCUMENTO"
3397
+ }
3398
+ },
3399
+ {
3400
+ "type": "input",
3401
+ "dataType": "nvarchar",
3402
+ "label": "Apelido",
3403
+ "name": "APELIDO",
3404
+ "isRequired": true
3405
+ },
3406
+ {
3407
+ "type": "select",
3408
+ "dataType": "integer",
3409
+ "label": "Tipo de Documento",
3410
+ "name": "TIPO_DOCUMENTO",
3411
+ "isRequired": true,
3412
+ "options": [
3413
+ { "label": "CÓPIA", "value": 1 },
3414
+ { "label": "ORIGINAL", "value": 2 },
3415
+ { "label": "CÓPIA ASSINADA", "value": 3 }
3416
+ ]
3417
+ },
3418
+ {
3419
+ "type": "input",
3420
+ "dataType": "datetime2",
3421
+ "label": "Data de Validade",
3422
+ "name": "DATA_VALIDADE"
3423
+ },
3424
+ {
3425
+ "type": "file",
3426
+ "dataType": "nvarchar",
3427
+ "label": "Selecionar Arquivo",
3428
+ "name": "ARQUIVO",
3429
+ "storageConfig": {
3430
+ "fileNameStrategy": "uuid",
3431
+ "path": "",
3432
+ "visibility": "private"
3433
+ },
3434
+ "isRequired": true
3435
+ }
3436
+ ]
3437
+ }
3438
+ ]
3439
+ }
3440
+ }
3441
+ ]
3442
+ },
3443
+ {
3444
+ "title": "Relatório",
3445
+ "id": "clienteTabRelatorio",
3446
+ "elements": []
3447
+ }
3448
+ ]
3449
+ }
3450
+ ]
3451
+ }
3452
+ ]
3453
+ }
3454
+ ],
3455
+ "styles": []
3456
+ }