on master help sign in
Made fields optional
commit8c18759d850bc45313382bb4653b26e8cf370340 authoriko <ilyakooo0@gmail.com> dateSat 30 Jul 2022, 10:17 (4 years ago) parent3d89e8b
7 files changed+890−243
backend/BW/Types.purs+6−2 backend/Bridge.purs+312−26 backend/Main.purs+26−26 bridge.yaml+52−26 frontend/Bridge.elm+364−78 frontend/Pages/Cipher.elm+125−85 frontend/Utils.elm+5
backend/BW/Types.purs+6−2
@@ -552,11 +552,15 @@ type IdentityApi
552552 , licenseNumber :: JNullable EncryptedString
553553 }
554554
555−secureNoteApiGeneric = 0 :: SecureNoteApi
555+secureNoteTypeGeneric = 0 :: SecureNoteType
556556
557−type SecureNoteApi
557+type SecureNoteType
558558 = Int
559559
560+type SecureNoteApi = {
561+ type :: SecureNoteType
562+}
563+
560564type AttachmentResponse
561565 = { id :: String
562566 , url :: String
backend/Bridge.purs+312−26
@@ -43,14 +43,80 @@ derive instance genericCmd :: Generic Cmd _
4343derive instance eqCmd :: Eq Cmd
4444derive instance ordCmd :: Ord Cmd
4545
46+newtype Sub_LoadCipher_cipherType_CardCipher_brand_Maybe =
47+ Sub_LoadCipher_cipherType_CardCipher_brand_Maybe (Maybe String)
48+
49+instance encodeJsonSub_LoadCipher_cipherType_CardCipher_brand_Maybe :: EncodeJson Sub_LoadCipher_cipherType_CardCipher_brand_Maybe where
50+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
51+instance decodeJsonSub_LoadCipher_cipherType_CardCipher_brand_Maybe :: DecodeJson Sub_LoadCipher_cipherType_CardCipher_brand_Maybe where
52+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
53+derive instance genericSub_LoadCipher_cipherType_CardCipher_brand_Maybe :: Generic Sub_LoadCipher_cipherType_CardCipher_brand_Maybe _
54+derive instance eqSub_LoadCipher_cipherType_CardCipher_brand_Maybe :: Eq Sub_LoadCipher_cipherType_CardCipher_brand_Maybe
55+derive instance ordSub_LoadCipher_cipherType_CardCipher_brand_Maybe :: Ord Sub_LoadCipher_cipherType_CardCipher_brand_Maybe
56+
57+newtype Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe =
58+ Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe (Maybe String)
59+
60+instance encodeJsonSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe :: EncodeJson Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe where
61+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
62+instance decodeJsonSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe :: DecodeJson Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe where
63+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
64+derive instance genericSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe :: Generic Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe _
65+derive instance eqSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe :: Eq Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe
66+derive instance ordSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe :: Ord Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe
67+
68+newtype Sub_LoadCipher_cipherType_CardCipher_code_Maybe =
69+ Sub_LoadCipher_cipherType_CardCipher_code_Maybe (Maybe String)
70+
71+instance encodeJsonSub_LoadCipher_cipherType_CardCipher_code_Maybe :: EncodeJson Sub_LoadCipher_cipherType_CardCipher_code_Maybe where
72+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
73+instance decodeJsonSub_LoadCipher_cipherType_CardCipher_code_Maybe :: DecodeJson Sub_LoadCipher_cipherType_CardCipher_code_Maybe where
74+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
75+derive instance genericSub_LoadCipher_cipherType_CardCipher_code_Maybe :: Generic Sub_LoadCipher_cipherType_CardCipher_code_Maybe _
76+derive instance eqSub_LoadCipher_cipherType_CardCipher_code_Maybe :: Eq Sub_LoadCipher_cipherType_CardCipher_code_Maybe
77+derive instance ordSub_LoadCipher_cipherType_CardCipher_code_Maybe :: Ord Sub_LoadCipher_cipherType_CardCipher_code_Maybe
78+
79+newtype Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe =
80+ Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe (Maybe String)
81+
82+instance encodeJsonSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe :: EncodeJson Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe where
83+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
84+instance decodeJsonSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe :: DecodeJson Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe where
85+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
86+derive instance genericSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe :: Generic Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe _
87+derive instance eqSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe :: Eq Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe
88+derive instance ordSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe :: Ord Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe
89+
90+newtype Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe =
91+ Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe (Maybe String)
92+
93+instance encodeJsonSub_LoadCipher_cipherType_CardCipher_expYear_Maybe :: EncodeJson Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe where
94+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
95+instance decodeJsonSub_LoadCipher_cipherType_CardCipher_expYear_Maybe :: DecodeJson Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe where
96+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
97+derive instance genericSub_LoadCipher_cipherType_CardCipher_expYear_Maybe :: Generic Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe _
98+derive instance eqSub_LoadCipher_cipherType_CardCipher_expYear_Maybe :: Eq Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe
99+derive instance ordSub_LoadCipher_cipherType_CardCipher_expYear_Maybe :: Ord Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe
100+
101+newtype Sub_LoadCipher_cipherType_CardCipher_number_Maybe =
102+ Sub_LoadCipher_cipherType_CardCipher_number_Maybe (Maybe String)
103+
104+instance encodeJsonSub_LoadCipher_cipherType_CardCipher_number_Maybe :: EncodeJson Sub_LoadCipher_cipherType_CardCipher_number_Maybe where
105+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
106+instance decodeJsonSub_LoadCipher_cipherType_CardCipher_number_Maybe :: DecodeJson Sub_LoadCipher_cipherType_CardCipher_number_Maybe where
107+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
108+derive instance genericSub_LoadCipher_cipherType_CardCipher_number_Maybe :: Generic Sub_LoadCipher_cipherType_CardCipher_number_Maybe _
109+derive instance eqSub_LoadCipher_cipherType_CardCipher_number_Maybe :: Eq Sub_LoadCipher_cipherType_CardCipher_number_Maybe
110+derive instance ordSub_LoadCipher_cipherType_CardCipher_number_Maybe :: Ord Sub_LoadCipher_cipherType_CardCipher_number_Maybe
111+
46112newtype Sub_LoadCipher_cipherType_CardCipher =
47113 Sub_LoadCipher_cipherType_CardCipher {
48− brand :: String
49− , cardholderName :: String
50− , code :: String
51− , expMonth :: String
52− , expYear :: String
53− , number :: String
114+ brand :: Sub_LoadCipher_cipherType_CardCipher_brand_Maybe
115+ , cardholderName :: Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe
116+ , code :: Sub_LoadCipher_cipherType_CardCipher_code_Maybe
117+ , expMonth :: Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe
118+ , expYear :: Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe
119+ , number :: Sub_LoadCipher_cipherType_CardCipher_number_Maybe
54120 }
55121
56122instance encodeJsonSub_LoadCipher_cipherType_CardCipher :: EncodeJson Sub_LoadCipher_cipherType_CardCipher where
@@ -61,26 +127,224 @@ derive instance genericSub_LoadCipher_cipherType_CardCipher :: Generic Sub_LoadC
61127derive instance eqSub_LoadCipher_cipherType_CardCipher :: Eq Sub_LoadCipher_cipherType_CardCipher
62128derive instance ordSub_LoadCipher_cipherType_CardCipher :: Ord Sub_LoadCipher_cipherType_CardCipher
63129
130+newtype Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe =
131+ Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe (Maybe String)
132+
133+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe where
134+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
135+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe where
136+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
137+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe _
138+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe
139+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe
140+
141+newtype Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe =
142+ Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe (Maybe String)
143+
144+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe where
145+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
146+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe where
147+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
148+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe _
149+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe
150+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe
151+
152+newtype Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe =
153+ Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe (Maybe String)
154+
155+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe where
156+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
157+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe where
158+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
159+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe _
160+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe
161+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe
162+
163+newtype Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe =
164+ Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe (Maybe String)
165+
166+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_city_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe where
167+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
168+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_city_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe where
169+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
170+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_city_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe _
171+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_city_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe
172+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_city_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe
173+
174+newtype Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe =
175+ Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe (Maybe String)
176+
177+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_company_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe where
178+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
179+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_company_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe where
180+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
181+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_company_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe _
182+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_company_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe
183+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_company_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe
184+
185+newtype Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe =
186+ Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe (Maybe String)
187+
188+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_country_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe where
189+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
190+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_country_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe where
191+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
192+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_country_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe _
193+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_country_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe
194+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_country_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe
195+
196+newtype Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe =
197+ Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe (Maybe String)
198+
199+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_email_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe where
200+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
201+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_email_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe where
202+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
203+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_email_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe _
204+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_email_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe
205+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_email_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe
206+
207+newtype Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe =
208+ Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe (Maybe String)
209+
210+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe where
211+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
212+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe where
213+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
214+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe _
215+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe
216+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe
217+
218+newtype Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe =
219+ Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe (Maybe String)
220+
221+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe where
222+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
223+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe where
224+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
225+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe _
226+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe
227+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe
228+
229+newtype Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe =
230+ Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe (Maybe String)
231+
232+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe where
233+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
234+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe where
235+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
236+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe _
237+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe
238+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe
239+
240+newtype Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe =
241+ Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe (Maybe String)
242+
243+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe where
244+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
245+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe where
246+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
247+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe _
248+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe
249+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe
250+
251+newtype Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe =
252+ Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe (Maybe String)
253+
254+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe where
255+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
256+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe where
257+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
258+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe _
259+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe
260+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe
261+
262+newtype Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe =
263+ Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe (Maybe String)
264+
265+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe where
266+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
267+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe where
268+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
269+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe _
270+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe
271+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe
272+
273+newtype Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe =
274+ Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe (Maybe String)
275+
276+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe where
277+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
278+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe where
279+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
280+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe _
281+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe
282+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe
283+
284+newtype Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe =
285+ Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe (Maybe String)
286+
287+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe where
288+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
289+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe where
290+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
291+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe _
292+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe
293+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe
294+
295+newtype Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe =
296+ Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe (Maybe String)
297+
298+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_state_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe where
299+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
300+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_state_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe where
301+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
302+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_state_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe _
303+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_state_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe
304+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_state_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe
305+
306+newtype Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe =
307+ Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe (Maybe String)
308+
309+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_title_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe where
310+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
311+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_title_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe where
312+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
313+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_title_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe _
314+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_title_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe
315+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_title_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe
316+
317+newtype Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe =
318+ Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe (Maybe String)
319+
320+instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher_username_Maybe :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe where
321+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
322+instance decodeJsonSub_LoadCipher_cipherType_IdentityCipher_username_Maybe :: DecodeJson Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe where
323+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
324+derive instance genericSub_LoadCipher_cipherType_IdentityCipher_username_Maybe :: Generic Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe _
325+derive instance eqSub_LoadCipher_cipherType_IdentityCipher_username_Maybe :: Eq Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe
326+derive instance ordSub_LoadCipher_cipherType_IdentityCipher_username_Maybe :: Ord Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe
327+
64328newtype Sub_LoadCipher_cipherType_IdentityCipher =
65329 Sub_LoadCipher_cipherType_IdentityCipher {
66− address1 :: String
67− , address2 :: String
68− , address3 :: String
69− , city :: String
70− , company :: String
71− , country :: String
72− , email :: String
73− , firstName :: String
74− , lastName :: String
75− , licenseNumber :: String
76− , middleName :: String
77− , passportNumber :: String
78− , phone :: String
79− , postalCode :: String
80− , ssn :: String
81− , state :: String
82− , title :: String
83− , username :: String
330+ address1 :: Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe
331+ , address2 :: Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe
332+ , address3 :: Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe
333+ , city :: Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe
334+ , company :: Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe
335+ , country :: Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe
336+ , email :: Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe
337+ , firstName :: Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe
338+ , lastName :: Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe
339+ , licenseNumber :: Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe
340+ , middleName :: Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe
341+ , passportNumber :: Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe
342+ , phone :: Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe
343+ , postalCode :: Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe
344+ , ssn :: Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe
345+ , state :: Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe
346+ , title :: Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe
347+ , username :: Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe
84348 }
85349
86350instance encodeJsonSub_LoadCipher_cipherType_IdentityCipher :: EncodeJson Sub_LoadCipher_cipherType_IdentityCipher where
@@ -91,6 +355,17 @@ derive instance genericSub_LoadCipher_cipherType_IdentityCipher :: Generic Sub_L
91355derive instance eqSub_LoadCipher_cipherType_IdentityCipher :: Eq Sub_LoadCipher_cipherType_IdentityCipher
92356derive instance ordSub_LoadCipher_cipherType_IdentityCipher :: Ord Sub_LoadCipher_cipherType_IdentityCipher
93357
358+newtype Sub_LoadCipher_cipherType_LoginCipher_password_Maybe =
359+ Sub_LoadCipher_cipherType_LoginCipher_password_Maybe (Maybe String)
360+
361+instance encodeJsonSub_LoadCipher_cipherType_LoginCipher_password_Maybe :: EncodeJson Sub_LoadCipher_cipherType_LoginCipher_password_Maybe where
362+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
363+instance decodeJsonSub_LoadCipher_cipherType_LoginCipher_password_Maybe :: DecodeJson Sub_LoadCipher_cipherType_LoginCipher_password_Maybe where
364+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
365+derive instance genericSub_LoadCipher_cipherType_LoginCipher_password_Maybe :: Generic Sub_LoadCipher_cipherType_LoginCipher_password_Maybe _
366+derive instance eqSub_LoadCipher_cipherType_LoginCipher_password_Maybe :: Eq Sub_LoadCipher_cipherType_LoginCipher_password_Maybe
367+derive instance ordSub_LoadCipher_cipherType_LoginCipher_password_Maybe :: Ord Sub_LoadCipher_cipherType_LoginCipher_password_Maybe
368+
94369newtype Sub_LoadCipher_cipherType_LoginCipher_uris_List =
95370 Sub_LoadCipher_cipherType_LoginCipher_uris_List (Array String)
96371
@@ -102,11 +377,22 @@ derive instance genericSub_LoadCipher_cipherType_LoginCipher_uris_List :: Generi
102377derive instance eqSub_LoadCipher_cipherType_LoginCipher_uris_List :: Eq Sub_LoadCipher_cipherType_LoginCipher_uris_List
103378derive instance ordSub_LoadCipher_cipherType_LoginCipher_uris_List :: Ord Sub_LoadCipher_cipherType_LoginCipher_uris_List
104379
380+newtype Sub_LoadCipher_cipherType_LoginCipher_username_Maybe =
381+ Sub_LoadCipher_cipherType_LoginCipher_username_Maybe (Maybe String)
382+
383+instance encodeJsonSub_LoadCipher_cipherType_LoginCipher_username_Maybe :: EncodeJson Sub_LoadCipher_cipherType_LoginCipher_username_Maybe where
384+ encodeJson = genericEncodeAeson Argonaut.defaultOptions
385+instance decodeJsonSub_LoadCipher_cipherType_LoginCipher_username_Maybe :: DecodeJson Sub_LoadCipher_cipherType_LoginCipher_username_Maybe where
386+ decodeJson = genericDecodeAeson Argonaut.defaultOptions
387+derive instance genericSub_LoadCipher_cipherType_LoginCipher_username_Maybe :: Generic Sub_LoadCipher_cipherType_LoginCipher_username_Maybe _
388+derive instance eqSub_LoadCipher_cipherType_LoginCipher_username_Maybe :: Eq Sub_LoadCipher_cipherType_LoginCipher_username_Maybe
389+derive instance ordSub_LoadCipher_cipherType_LoginCipher_username_Maybe :: Ord Sub_LoadCipher_cipherType_LoginCipher_username_Maybe
390+
105391newtype Sub_LoadCipher_cipherType_LoginCipher =
106392 Sub_LoadCipher_cipherType_LoginCipher {
107− password :: String
393+ password :: Sub_LoadCipher_cipherType_LoginCipher_password_Maybe
108394 , uris :: Sub_LoadCipher_cipherType_LoginCipher_uris_List
109− , username :: String
395+ , username :: Sub_LoadCipher_cipherType_LoginCipher_username_Maybe
110396 }
111397
112398instance encodeJsonSub_LoadCipher_cipherType_LoginCipher :: EncodeJson Sub_LoadCipher_cipherType_LoginCipher where
backend/Main.purs+26−26
@@ -133,8 +133,8 @@ main = do
133133 case JNullable.toMaybe cipher.login of
134134 Nothing -> throwError $ error "Login data is missing"
135135 Just login -> do
136− username <- fromJNullable "" <$> (traverse decrypt login.username)
137− password <- fromJNullable "" <$> (traverse decrypt login.password)
136+ username <- Bridge.Sub_LoadCipher_cipherType_LoginCipher_username_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt login.username)
137+ password <- Bridge.Sub_LoadCipher_cipherType_LoginCipher_password_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt login.password)
138138 uris <- fromJOpt [] <$> ((traverse >>> traverse) (_.uri >>> decrypt) login.uris)
139139 pure $ Bridge.LoginCipher $ Bridge.Sub_LoadCipher_cipherType_LoginCipher
140140 { username
@@ -145,36 +145,36 @@ main = do
145145 case JNullable.toMaybe cipher.card of
146146 Nothing -> throwError $ error "Card data is missing"
147147 Just card -> do
148− cardholderName <- fromJNullable "" <$> (traverse decrypt card.cardholderName)
149− number <- fromJNullable "" <$> (traverse decrypt card.number)
150− code <- fromJNullable "" <$> (traverse decrypt card.code)
151− brand <- fromJNullable "" <$> (traverse decrypt card.brand)
152− expMonth <- fromJNullable "" <$> (traverse decrypt card.expMonth)
153− expYear <- fromJNullable "" <$> (traverse decrypt card.expYear)
148+ cardholderName <- Bridge.Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt card.cardholderName)
149+ number <- Bridge.Sub_LoadCipher_cipherType_CardCipher_number_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt card.number)
150+ code <- Bridge.Sub_LoadCipher_cipherType_CardCipher_code_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt card.code)
151+ brand <- Bridge.Sub_LoadCipher_cipherType_CardCipher_brand_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt card.brand)
152+ expMonth <- Bridge.Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt card.expMonth)
153+ expYear <- Bridge.Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt card.expYear)
154154 pure $ Bridge.CardCipher $ Bridge.Sub_LoadCipher_cipherType_CardCipher
155155 { brand, cardholderName, code, expMonth, expYear, number }
156156 n | cipherTypeIdentity == n -> do
157157 case JNullable.toMaybe cipher.identity of
158158 Nothing -> throwError $ error "Identity data is missing"
159159 Just identity -> do
160− firstName <- fromJNullable "" <$> (traverse decrypt identity.firstName)
161− middleName <- fromJNullable "" <$> (traverse decrypt identity.middleName)
162− lastName <- fromJNullable "" <$> (traverse decrypt identity.lastName)
163− address1 <- fromJNullable "" <$> (traverse decrypt identity.address1)
164− address2 <- fromJNullable "" <$> (traverse decrypt identity.address2)
165− address3 <- fromJNullable "" <$> (traverse decrypt identity.address3)
166− city <- fromJNullable "" <$> (traverse decrypt identity.city)
167− company <- fromJNullable "" <$> (traverse decrypt identity.company)
168− country <- fromJNullable "" <$> (traverse decrypt identity.country)
169− email <- fromJNullable "" <$> (traverse decrypt identity.email)
170− licenseNumber <- fromJNullable "" <$> (traverse decrypt identity.licenseNumber)
171− passportNumber <- fromJNullable "" <$> (traverse decrypt identity.passportNumber)
172− phone <- fromJNullable "" <$> (traverse decrypt identity.phone)
173− postalCode <- fromJNullable "" <$> (traverse decrypt identity.postalCode)
174− ssn <- fromJNullable "" <$> (traverse decrypt identity.ssn)
175− state <- fromJNullable "" <$> (traverse decrypt identity.state)
176− title <- fromJNullable "" <$> (traverse decrypt identity.title)
177− username <- fromJNullable "" <$> (traverse decrypt identity.username)
160+ firstName <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.firstName)
161+ middleName <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.middleName)
162+ lastName <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.lastName)
163+ address1 <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.address1)
164+ address2 <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.address2)
165+ address3 <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.address3)
166+ city <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.city)
167+ company <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.company)
168+ country <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.country)
169+ email <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.email)
170+ licenseNumber <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.licenseNumber)
171+ passportNumber <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.passportNumber)
172+ phone <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.phone)
173+ postalCode <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.postalCode)
174+ ssn <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.ssn)
175+ state <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.state)
176+ title <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.title)
177+ username <- Bridge.Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe <<< fromJNullable Nothing <<< map Just <$> (traverse decrypt identity.username)
178178 pure $ Bridge.IdentityCipher $ Bridge.Sub_LoadCipher_cipherType_IdentityCipher
179179 { firstName,
180180 middleName,
bridge.yaml+52−26
@@ -22,35 +22,61 @@ Sub:
2222 cipherType:
2323 - LoginCipher:
2424 uris: {List: String}
25− username: String
26− password: String
25+ username:
26+ Maybe: String
27+ password:
28+ Maybe: String
2729 - NoteCipher: String
2830 - CardCipher:
29− cardholderName: String
30− brand: String
31− number: String
32− expMonth: String
33− expYear: String
34− code: String
31+ cardholderName:
32+ Maybe: String
33+ brand:
34+ Maybe: String
35+ number:
36+ Maybe: String
37+ expMonth:
38+ Maybe: String
39+ expYear:
40+ Maybe: String
41+ code:
42+ Maybe: String
3543 - IdentityCipher:
36− title: String
37− firstName: String
38− middleName: String
39− lastName: String
40− address1: String
41− address2: String
42− address3: String
43− city: String
44− state: String
45− postalCode: String
46− country: String
47− company: String
48− email: String
49− phone: String
50− ssn: String
51− username: String
52− passportNumber: String
53− licenseNumber: String
44+ title:
45+ Maybe: String
46+ firstName:
47+ Maybe: String
48+ middleName:
49+ Maybe: String
50+ lastName:
51+ Maybe: String
52+ address1:
53+ Maybe: String
54+ address2:
55+ Maybe: String
56+ address3:
57+ Maybe: String
58+ city:
59+ Maybe: String
60+ state:
61+ Maybe: String
62+ postalCode:
63+ Maybe: String
64+ country:
65+ Maybe: String
66+ company:
67+ Maybe: String
68+ email:
69+ Maybe: String
70+ phone:
71+ Maybe: String
72+ ssn:
73+ Maybe: String
74+ username:
75+ Maybe: String
76+ passportNumber:
77+ Maybe: String
78+ licenseNumber:
79+ Maybe: String
5480
5581Cmd:
5682- Init
frontend/Bridge.elm+364−78
@@ -65,106 +65,381 @@ jsonEncCmd val =
6565
6666
6767
68+type alias Sub_LoadCipher_cipherType_CardCipher_brand_Maybe = (Maybe String)
69+
70+jsonDecSub_LoadCipher_cipherType_CardCipher_brand_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher_brand_Maybe )
71+jsonDecSub_LoadCipher_cipherType_CardCipher_brand_Maybe =
72+ Json.Decode.maybe (Json.Decode.string)
73+
74+jsonEncSub_LoadCipher_cipherType_CardCipher_brand_Maybe : Sub_LoadCipher_cipherType_CardCipher_brand_Maybe -> Value
75+jsonEncSub_LoadCipher_cipherType_CardCipher_brand_Maybe val = (maybeEncode (Json.Encode.string)) val
76+
77+
78+
79+type alias Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe = (Maybe String)
80+
81+jsonDecSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe )
82+jsonDecSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe =
83+ Json.Decode.maybe (Json.Decode.string)
84+
85+jsonEncSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe : Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe -> Value
86+jsonEncSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe val = (maybeEncode (Json.Encode.string)) val
87+
88+
89+
90+type alias Sub_LoadCipher_cipherType_CardCipher_code_Maybe = (Maybe String)
91+
92+jsonDecSub_LoadCipher_cipherType_CardCipher_code_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher_code_Maybe )
93+jsonDecSub_LoadCipher_cipherType_CardCipher_code_Maybe =
94+ Json.Decode.maybe (Json.Decode.string)
95+
96+jsonEncSub_LoadCipher_cipherType_CardCipher_code_Maybe : Sub_LoadCipher_cipherType_CardCipher_code_Maybe -> Value
97+jsonEncSub_LoadCipher_cipherType_CardCipher_code_Maybe val = (maybeEncode (Json.Encode.string)) val
98+
99+
100+
101+type alias Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe = (Maybe String)
102+
103+jsonDecSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe )
104+jsonDecSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe =
105+ Json.Decode.maybe (Json.Decode.string)
106+
107+jsonEncSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe : Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe -> Value
108+jsonEncSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe val = (maybeEncode (Json.Encode.string)) val
109+
110+
111+
112+type alias Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe = (Maybe String)
113+
114+jsonDecSub_LoadCipher_cipherType_CardCipher_expYear_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe )
115+jsonDecSub_LoadCipher_cipherType_CardCipher_expYear_Maybe =
116+ Json.Decode.maybe (Json.Decode.string)
117+
118+jsonEncSub_LoadCipher_cipherType_CardCipher_expYear_Maybe : Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe -> Value
119+jsonEncSub_LoadCipher_cipherType_CardCipher_expYear_Maybe val = (maybeEncode (Json.Encode.string)) val
120+
121+
122+
123+type alias Sub_LoadCipher_cipherType_CardCipher_number_Maybe = (Maybe String)
124+
125+jsonDecSub_LoadCipher_cipherType_CardCipher_number_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher_number_Maybe )
126+jsonDecSub_LoadCipher_cipherType_CardCipher_number_Maybe =
127+ Json.Decode.maybe (Json.Decode.string)
128+
129+jsonEncSub_LoadCipher_cipherType_CardCipher_number_Maybe : Sub_LoadCipher_cipherType_CardCipher_number_Maybe -> Value
130+jsonEncSub_LoadCipher_cipherType_CardCipher_number_Maybe val = (maybeEncode (Json.Encode.string)) val
131+
132+
133+
68134type alias Sub_LoadCipher_cipherType_CardCipher =
69− { brand: String
70− , cardholderName: String
71− , code: String
72− , expMonth: String
73− , expYear: String
74− , number: String
135+ { brand: Sub_LoadCipher_cipherType_CardCipher_brand_Maybe
136+ , cardholderName: Sub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe
137+ , code: Sub_LoadCipher_cipherType_CardCipher_code_Maybe
138+ , expMonth: Sub_LoadCipher_cipherType_CardCipher_expMonth_Maybe
139+ , expYear: Sub_LoadCipher_cipherType_CardCipher_expYear_Maybe
140+ , number: Sub_LoadCipher_cipherType_CardCipher_number_Maybe
75141 }
76142
77143jsonDecSub_LoadCipher_cipherType_CardCipher : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_CardCipher )
78144jsonDecSub_LoadCipher_cipherType_CardCipher =
79145 Json.Decode.succeed (\pbrand pcardholderName pcode pexpMonth pexpYear pnumber -> {brand = pbrand, cardholderName = pcardholderName, code = pcode, expMonth = pexpMonth, expYear = pexpYear, number = pnumber})
80− |> required "brand" (Json.Decode.string)
81− |> required "cardholderName" (Json.Decode.string)
82− |> required "code" (Json.Decode.string)
83− |> required "expMonth" (Json.Decode.string)
84− |> required "expYear" (Json.Decode.string)
85− |> required "number" (Json.Decode.string)
146+ |> required "brand" (jsonDecSub_LoadCipher_cipherType_CardCipher_brand_Maybe)
147+ |> required "cardholderName" (jsonDecSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe)
148+ |> required "code" (jsonDecSub_LoadCipher_cipherType_CardCipher_code_Maybe)
149+ |> required "expMonth" (jsonDecSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe)
150+ |> required "expYear" (jsonDecSub_LoadCipher_cipherType_CardCipher_expYear_Maybe)
151+ |> required "number" (jsonDecSub_LoadCipher_cipherType_CardCipher_number_Maybe)
86152
87153jsonEncSub_LoadCipher_cipherType_CardCipher : Sub_LoadCipher_cipherType_CardCipher -> Value
88154jsonEncSub_LoadCipher_cipherType_CardCipher val =
89155 Json.Encode.object
90− [ ("brand", Json.Encode.string val.brand)
91− , ("cardholderName", Json.Encode.string val.cardholderName)
92− , ("code", Json.Encode.string val.code)
93− , ("expMonth", Json.Encode.string val.expMonth)
94− , ("expYear", Json.Encode.string val.expYear)
95− , ("number", Json.Encode.string val.number)
156+ [ ("brand", jsonEncSub_LoadCipher_cipherType_CardCipher_brand_Maybe val.brand)
157+ , ("cardholderName", jsonEncSub_LoadCipher_cipherType_CardCipher_cardholderName_Maybe val.cardholderName)
158+ , ("code", jsonEncSub_LoadCipher_cipherType_CardCipher_code_Maybe val.code)
159+ , ("expMonth", jsonEncSub_LoadCipher_cipherType_CardCipher_expMonth_Maybe val.expMonth)
160+ , ("expYear", jsonEncSub_LoadCipher_cipherType_CardCipher_expYear_Maybe val.expYear)
161+ , ("number", jsonEncSub_LoadCipher_cipherType_CardCipher_number_Maybe val.number)
96162 ]
97163
98164
99165
166+type alias Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe = (Maybe String)
167+
168+jsonDecSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe )
169+jsonDecSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe =
170+ Json.Decode.maybe (Json.Decode.string)
171+
172+jsonEncSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe -> Value
173+jsonEncSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe val = (maybeEncode (Json.Encode.string)) val
174+
175+
176+
177+type alias Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe = (Maybe String)
178+
179+jsonDecSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe )
180+jsonDecSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe =
181+ Json.Decode.maybe (Json.Decode.string)
182+
183+jsonEncSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe -> Value
184+jsonEncSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe val = (maybeEncode (Json.Encode.string)) val
185+
186+
187+
188+type alias Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe = (Maybe String)
189+
190+jsonDecSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe )
191+jsonDecSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe =
192+ Json.Decode.maybe (Json.Decode.string)
193+
194+jsonEncSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe -> Value
195+jsonEncSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe val = (maybeEncode (Json.Encode.string)) val
196+
197+
198+
199+type alias Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe = (Maybe String)
200+
201+jsonDecSub_LoadCipher_cipherType_IdentityCipher_city_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe )
202+jsonDecSub_LoadCipher_cipherType_IdentityCipher_city_Maybe =
203+ Json.Decode.maybe (Json.Decode.string)
204+
205+jsonEncSub_LoadCipher_cipherType_IdentityCipher_city_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe -> Value
206+jsonEncSub_LoadCipher_cipherType_IdentityCipher_city_Maybe val = (maybeEncode (Json.Encode.string)) val
207+
208+
209+
210+type alias Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe = (Maybe String)
211+
212+jsonDecSub_LoadCipher_cipherType_IdentityCipher_company_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe )
213+jsonDecSub_LoadCipher_cipherType_IdentityCipher_company_Maybe =
214+ Json.Decode.maybe (Json.Decode.string)
215+
216+jsonEncSub_LoadCipher_cipherType_IdentityCipher_company_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe -> Value
217+jsonEncSub_LoadCipher_cipherType_IdentityCipher_company_Maybe val = (maybeEncode (Json.Encode.string)) val
218+
219+
220+
221+type alias Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe = (Maybe String)
222+
223+jsonDecSub_LoadCipher_cipherType_IdentityCipher_country_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe )
224+jsonDecSub_LoadCipher_cipherType_IdentityCipher_country_Maybe =
225+ Json.Decode.maybe (Json.Decode.string)
226+
227+jsonEncSub_LoadCipher_cipherType_IdentityCipher_country_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe -> Value
228+jsonEncSub_LoadCipher_cipherType_IdentityCipher_country_Maybe val = (maybeEncode (Json.Encode.string)) val
229+
230+
231+
232+type alias Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe = (Maybe String)
233+
234+jsonDecSub_LoadCipher_cipherType_IdentityCipher_email_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe )
235+jsonDecSub_LoadCipher_cipherType_IdentityCipher_email_Maybe =
236+ Json.Decode.maybe (Json.Decode.string)
237+
238+jsonEncSub_LoadCipher_cipherType_IdentityCipher_email_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe -> Value
239+jsonEncSub_LoadCipher_cipherType_IdentityCipher_email_Maybe val = (maybeEncode (Json.Encode.string)) val
240+
241+
242+
243+type alias Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe = (Maybe String)
244+
245+jsonDecSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe )
246+jsonDecSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe =
247+ Json.Decode.maybe (Json.Decode.string)
248+
249+jsonEncSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe -> Value
250+jsonEncSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe val = (maybeEncode (Json.Encode.string)) val
251+
252+
253+
254+type alias Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe = (Maybe String)
255+
256+jsonDecSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe )
257+jsonDecSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe =
258+ Json.Decode.maybe (Json.Decode.string)
259+
260+jsonEncSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe -> Value
261+jsonEncSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe val = (maybeEncode (Json.Encode.string)) val
262+
263+
264+
265+type alias Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe = (Maybe String)
266+
267+jsonDecSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe )
268+jsonDecSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe =
269+ Json.Decode.maybe (Json.Decode.string)
270+
271+jsonEncSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe -> Value
272+jsonEncSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe val = (maybeEncode (Json.Encode.string)) val
273+
274+
275+
276+type alias Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe = (Maybe String)
277+
278+jsonDecSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe )
279+jsonDecSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe =
280+ Json.Decode.maybe (Json.Decode.string)
281+
282+jsonEncSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe -> Value
283+jsonEncSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe val = (maybeEncode (Json.Encode.string)) val
284+
285+
286+
287+type alias Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe = (Maybe String)
288+
289+jsonDecSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe )
290+jsonDecSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe =
291+ Json.Decode.maybe (Json.Decode.string)
292+
293+jsonEncSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe -> Value
294+jsonEncSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe val = (maybeEncode (Json.Encode.string)) val
295+
296+
297+
298+type alias Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe = (Maybe String)
299+
300+jsonDecSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe )
301+jsonDecSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe =
302+ Json.Decode.maybe (Json.Decode.string)
303+
304+jsonEncSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe -> Value
305+jsonEncSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe val = (maybeEncode (Json.Encode.string)) val
306+
307+
308+
309+type alias Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe = (Maybe String)
310+
311+jsonDecSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe )
312+jsonDecSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe =
313+ Json.Decode.maybe (Json.Decode.string)
314+
315+jsonEncSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe -> Value
316+jsonEncSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe val = (maybeEncode (Json.Encode.string)) val
317+
318+
319+
320+type alias Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe = (Maybe String)
321+
322+jsonDecSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe )
323+jsonDecSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe =
324+ Json.Decode.maybe (Json.Decode.string)
325+
326+jsonEncSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe -> Value
327+jsonEncSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe val = (maybeEncode (Json.Encode.string)) val
328+
329+
330+
331+type alias Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe = (Maybe String)
332+
333+jsonDecSub_LoadCipher_cipherType_IdentityCipher_state_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe )
334+jsonDecSub_LoadCipher_cipherType_IdentityCipher_state_Maybe =
335+ Json.Decode.maybe (Json.Decode.string)
336+
337+jsonEncSub_LoadCipher_cipherType_IdentityCipher_state_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe -> Value
338+jsonEncSub_LoadCipher_cipherType_IdentityCipher_state_Maybe val = (maybeEncode (Json.Encode.string)) val
339+
340+
341+
342+type alias Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe = (Maybe String)
343+
344+jsonDecSub_LoadCipher_cipherType_IdentityCipher_title_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe )
345+jsonDecSub_LoadCipher_cipherType_IdentityCipher_title_Maybe =
346+ Json.Decode.maybe (Json.Decode.string)
347+
348+jsonEncSub_LoadCipher_cipherType_IdentityCipher_title_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe -> Value
349+jsonEncSub_LoadCipher_cipherType_IdentityCipher_title_Maybe val = (maybeEncode (Json.Encode.string)) val
350+
351+
352+
353+type alias Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe = (Maybe String)
354+
355+jsonDecSub_LoadCipher_cipherType_IdentityCipher_username_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe )
356+jsonDecSub_LoadCipher_cipherType_IdentityCipher_username_Maybe =
357+ Json.Decode.maybe (Json.Decode.string)
358+
359+jsonEncSub_LoadCipher_cipherType_IdentityCipher_username_Maybe : Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe -> Value
360+jsonEncSub_LoadCipher_cipherType_IdentityCipher_username_Maybe val = (maybeEncode (Json.Encode.string)) val
361+
362+
363+
100364type alias Sub_LoadCipher_cipherType_IdentityCipher =
101− { address1: String
102− , address2: String
103− , address3: String
104− , city: String
105− , company: String
106− , country: String
107− , email: String
108− , firstName: String
109− , lastName: String
110− , licenseNumber: String
111− , middleName: String
112− , passportNumber: String
113− , phone: String
114− , postalCode: String
115− , ssn: String
116− , state: String
117− , title: String
118− , username: String
365+ { address1: Sub_LoadCipher_cipherType_IdentityCipher_address1_Maybe
366+ , address2: Sub_LoadCipher_cipherType_IdentityCipher_address2_Maybe
367+ , address3: Sub_LoadCipher_cipherType_IdentityCipher_address3_Maybe
368+ , city: Sub_LoadCipher_cipherType_IdentityCipher_city_Maybe
369+ , company: Sub_LoadCipher_cipherType_IdentityCipher_company_Maybe
370+ , country: Sub_LoadCipher_cipherType_IdentityCipher_country_Maybe
371+ , email: Sub_LoadCipher_cipherType_IdentityCipher_email_Maybe
372+ , firstName: Sub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe
373+ , lastName: Sub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe
374+ , licenseNumber: Sub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe
375+ , middleName: Sub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe
376+ , passportNumber: Sub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe
377+ , phone: Sub_LoadCipher_cipherType_IdentityCipher_phone_Maybe
378+ , postalCode: Sub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe
379+ , ssn: Sub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe
380+ , state: Sub_LoadCipher_cipherType_IdentityCipher_state_Maybe
381+ , title: Sub_LoadCipher_cipherType_IdentityCipher_title_Maybe
382+ , username: Sub_LoadCipher_cipherType_IdentityCipher_username_Maybe
119383 }
120384
121385jsonDecSub_LoadCipher_cipherType_IdentityCipher : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_IdentityCipher )
122386jsonDecSub_LoadCipher_cipherType_IdentityCipher =
123387 Json.Decode.succeed (\paddress1 paddress2 paddress3 pcity pcompany pcountry pemail pfirstName plastName plicenseNumber pmiddleName ppassportNumber pphone ppostalCode pssn pstate ptitle pusername -> {address1 = paddress1, address2 = paddress2, address3 = paddress3, city = pcity, company = pcompany, country = pcountry, email = pemail, firstName = pfirstName, lastName = plastName, licenseNumber = plicenseNumber, middleName = pmiddleName, passportNumber = ppassportNumber, phone = pphone, postalCode = ppostalCode, ssn = pssn, state = pstate, title = ptitle, username = pusername})
124− |> required "address1" (Json.Decode.string)
125− |> required "address2" (Json.Decode.string)
126− |> required "address3" (Json.Decode.string)
127− |> required "city" (Json.Decode.string)
128− |> required "company" (Json.Decode.string)
129− |> required "country" (Json.Decode.string)
130− |> required "email" (Json.Decode.string)
131− |> required "firstName" (Json.Decode.string)
132− |> required "lastName" (Json.Decode.string)
133− |> required "licenseNumber" (Json.Decode.string)
134− |> required "middleName" (Json.Decode.string)
135− |> required "passportNumber" (Json.Decode.string)
136− |> required "phone" (Json.Decode.string)
137− |> required "postalCode" (Json.Decode.string)
138− |> required "ssn" (Json.Decode.string)
139− |> required "state" (Json.Decode.string)
140− |> required "title" (Json.Decode.string)
141− |> required "username" (Json.Decode.string)
388+ |> required "address1" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe)
389+ |> required "address2" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe)
390+ |> required "address3" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe)
391+ |> required "city" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_city_Maybe)
392+ |> required "company" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_company_Maybe)
393+ |> required "country" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_country_Maybe)
394+ |> required "email" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_email_Maybe)
395+ |> required "firstName" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe)
396+ |> required "lastName" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe)
397+ |> required "licenseNumber" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe)
398+ |> required "middleName" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe)
399+ |> required "passportNumber" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe)
400+ |> required "phone" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe)
401+ |> required "postalCode" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe)
402+ |> required "ssn" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe)
403+ |> required "state" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_state_Maybe)
404+ |> required "title" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_title_Maybe)
405+ |> required "username" (jsonDecSub_LoadCipher_cipherType_IdentityCipher_username_Maybe)
142406
143407jsonEncSub_LoadCipher_cipherType_IdentityCipher : Sub_LoadCipher_cipherType_IdentityCipher -> Value
144408jsonEncSub_LoadCipher_cipherType_IdentityCipher val =
145409 Json.Encode.object
146− [ ("address1", Json.Encode.string val.address1)
147− , ("address2", Json.Encode.string val.address2)
148− , ("address3", Json.Encode.string val.address3)
149− , ("city", Json.Encode.string val.city)
150− , ("company", Json.Encode.string val.company)
151− , ("country", Json.Encode.string val.country)
152− , ("email", Json.Encode.string val.email)
153− , ("firstName", Json.Encode.string val.firstName)
154− , ("lastName", Json.Encode.string val.lastName)
155− , ("licenseNumber", Json.Encode.string val.licenseNumber)
156− , ("middleName", Json.Encode.string val.middleName)
157− , ("passportNumber", Json.Encode.string val.passportNumber)
158− , ("phone", Json.Encode.string val.phone)
159− , ("postalCode", Json.Encode.string val.postalCode)
160− , ("ssn", Json.Encode.string val.ssn)
161− , ("state", Json.Encode.string val.state)
162− , ("title", Json.Encode.string val.title)
163− , ("username", Json.Encode.string val.username)
410+ [ ("address1", jsonEncSub_LoadCipher_cipherType_IdentityCipher_address1_Maybe val.address1)
411+ , ("address2", jsonEncSub_LoadCipher_cipherType_IdentityCipher_address2_Maybe val.address2)
412+ , ("address3", jsonEncSub_LoadCipher_cipherType_IdentityCipher_address3_Maybe val.address3)
413+ , ("city", jsonEncSub_LoadCipher_cipherType_IdentityCipher_city_Maybe val.city)
414+ , ("company", jsonEncSub_LoadCipher_cipherType_IdentityCipher_company_Maybe val.company)
415+ , ("country", jsonEncSub_LoadCipher_cipherType_IdentityCipher_country_Maybe val.country)
416+ , ("email", jsonEncSub_LoadCipher_cipherType_IdentityCipher_email_Maybe val.email)
417+ , ("firstName", jsonEncSub_LoadCipher_cipherType_IdentityCipher_firstName_Maybe val.firstName)
418+ , ("lastName", jsonEncSub_LoadCipher_cipherType_IdentityCipher_lastName_Maybe val.lastName)
419+ , ("licenseNumber", jsonEncSub_LoadCipher_cipherType_IdentityCipher_licenseNumber_Maybe val.licenseNumber)
420+ , ("middleName", jsonEncSub_LoadCipher_cipherType_IdentityCipher_middleName_Maybe val.middleName)
421+ , ("passportNumber", jsonEncSub_LoadCipher_cipherType_IdentityCipher_passportNumber_Maybe val.passportNumber)
422+ , ("phone", jsonEncSub_LoadCipher_cipherType_IdentityCipher_phone_Maybe val.phone)
423+ , ("postalCode", jsonEncSub_LoadCipher_cipherType_IdentityCipher_postalCode_Maybe val.postalCode)
424+ , ("ssn", jsonEncSub_LoadCipher_cipherType_IdentityCipher_ssn_Maybe val.ssn)
425+ , ("state", jsonEncSub_LoadCipher_cipherType_IdentityCipher_state_Maybe val.state)
426+ , ("title", jsonEncSub_LoadCipher_cipherType_IdentityCipher_title_Maybe val.title)
427+ , ("username", jsonEncSub_LoadCipher_cipherType_IdentityCipher_username_Maybe val.username)
164428 ]
165429
166430
167431
432+type alias Sub_LoadCipher_cipherType_LoginCipher_password_Maybe = (Maybe String)
433+
434+jsonDecSub_LoadCipher_cipherType_LoginCipher_password_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_LoginCipher_password_Maybe )
435+jsonDecSub_LoadCipher_cipherType_LoginCipher_password_Maybe =
436+ Json.Decode.maybe (Json.Decode.string)
437+
438+jsonEncSub_LoadCipher_cipherType_LoginCipher_password_Maybe : Sub_LoadCipher_cipherType_LoginCipher_password_Maybe -> Value
439+jsonEncSub_LoadCipher_cipherType_LoginCipher_password_Maybe val = (maybeEncode (Json.Encode.string)) val
440+
441+
442+
168443type alias Sub_LoadCipher_cipherType_LoginCipher_uris_List = (List String)
169444
170445jsonDecSub_LoadCipher_cipherType_LoginCipher_uris_List : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_LoginCipher_uris_List )
@@ -176,25 +451,36 @@ jsonEncSub_LoadCipher_cipherType_LoginCipher_uris_List val = (Json.Encode.list
176451
177452
178453
454+type alias Sub_LoadCipher_cipherType_LoginCipher_username_Maybe = (Maybe String)
455+
456+jsonDecSub_LoadCipher_cipherType_LoginCipher_username_Maybe : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_LoginCipher_username_Maybe )
457+jsonDecSub_LoadCipher_cipherType_LoginCipher_username_Maybe =
458+ Json.Decode.maybe (Json.Decode.string)
459+
460+jsonEncSub_LoadCipher_cipherType_LoginCipher_username_Maybe : Sub_LoadCipher_cipherType_LoginCipher_username_Maybe -> Value
461+jsonEncSub_LoadCipher_cipherType_LoginCipher_username_Maybe val = (maybeEncode (Json.Encode.string)) val
462+
463+
464+
179465type alias Sub_LoadCipher_cipherType_LoginCipher =
180− { password: String
466+ { password: Sub_LoadCipher_cipherType_LoginCipher_password_Maybe
181467 , uris: Sub_LoadCipher_cipherType_LoginCipher_uris_List
182− , username: String
468+ , username: Sub_LoadCipher_cipherType_LoginCipher_username_Maybe
183469 }
184470
185471jsonDecSub_LoadCipher_cipherType_LoginCipher : Json.Decode.Decoder ( Sub_LoadCipher_cipherType_LoginCipher )
186472jsonDecSub_LoadCipher_cipherType_LoginCipher =
187473 Json.Decode.succeed (\ppassword puris pusername -> {password = ppassword, uris = puris, username = pusername})
188− |> required "password" (Json.Decode.string)
474+ |> required "password" (jsonDecSub_LoadCipher_cipherType_LoginCipher_password_Maybe)
189475 |> required "uris" (jsonDecSub_LoadCipher_cipherType_LoginCipher_uris_List)
190− |> required "username" (Json.Decode.string)
476+ |> required "username" (jsonDecSub_LoadCipher_cipherType_LoginCipher_username_Maybe)
191477
192478jsonEncSub_LoadCipher_cipherType_LoginCipher : Sub_LoadCipher_cipherType_LoginCipher -> Value
193479jsonEncSub_LoadCipher_cipherType_LoginCipher val =
194480 Json.Encode.object
195− [ ("password", Json.Encode.string val.password)
481+ [ ("password", jsonEncSub_LoadCipher_cipherType_LoginCipher_password_Maybe val.password)
196482 , ("uris", jsonEncSub_LoadCipher_cipherType_LoginCipher_uris_List val.uris)
197− , ("username", Json.Encode.string val.username)
483+ , ("username", jsonEncSub_LoadCipher_cipherType_LoginCipher_username_Maybe val.username)
198484 ]
199485
200486
frontend/Pages/Cipher.elm+125−85
@@ -77,19 +77,25 @@ view : Model -> List (Html Msg)
7777view { passwordHidden, cipher, cvvHidden } =
7878 (case cipher.cipherType of
7979 Bridge.LoginCipher { username, password, uris } ->
80− [ row { name = "Username", value = username, nameIcon = "user", icons = [ ( "copy", Noop ) ] }
81− , row
82− { name = "Password"
83− , value =
84− if passwordHidden then
85− hiddenPassword
86−
87− else
88− password
89− , nameIcon = "security"
90− , icons = [ ( hiddenButtonIcon passwordHidden, TogglePasswordVisiblity ), ( "copy", Noop ) ]
91− }
92− ]
80+ maybeList username
81+ (\x ->
82+ row
83+ { name = "Username", value = x, nameIcon = "user", icons = [ ( "copy", Noop ) ] }
84+ )
85+ ++ maybeList password
86+ (\x ->
87+ row
88+ { name = "Password"
89+ , value =
90+ if passwordHidden then
91+ hiddenPassword
92+
93+ else
94+ x
95+ , nameIcon = "security"
96+ , icons = [ ( hiddenButtonIcon passwordHidden, TogglePasswordVisiblity ), ( "copy", Noop ) ]
97+ }
98+ )
9399 ++ (uris
94100 |> List.map
95101 (\uri ->
@@ -103,78 +109,112 @@ view { passwordHidden, cipher, cvvHidden } =
103109 ]
104110
105111 Bridge.CardCipher { number, code, cardholderName, expMonth, expYear } ->
106− [ row { name = "Card number", value = number, nameIcon = "containers", icons = [ ( "copy", Noop ) ] }
107− , row { name = "Expiration date", value = expMonth ++ "/" ++ expYear, nameIcon = "timed-out", icons = [ ( "copy", Noop ) ] }
108− , row
109− { name = "CVV"
110− , value =
111− if cvvHidden then
112− cvvPassword
113−
114− else
115− code
116− , nameIcon = "security"
117− , icons = [ ( hiddenButtonIcon cvvHidden, ToggleCVVVisiblity ), ( "copy", Noop ) ]
118− }
119− , row { name = "Cardholder name", value = cardholderName, nameIcon = "user", icons = [ ( "copy", Noop ) ] }
120− ]
112+ maybeList number (\x -> row { name = "Card number", value = x, nameIcon = "containers", icons = [ ( "copy", Noop ) ] })
113+ ++ optional (expMonth /= Nothing || expYear /= Nothing)
114+ (row
115+ { name = "Expiration date"
116+ , value = [ expMonth, expYear ] |> List.concatMap (flip maybeList identity) |> String.join "/"
117+ , nameIcon = "timed-out"
118+ , icons = [ ( "copy", Noop ) ]
119+ }
120+ )
121+ ++ maybeList code
122+ (\x ->
123+ row
124+ { name = "CVV"
125+ , value =
126+ if cvvHidden then
127+ hiddenCvv
128+
129+ else
130+ x
131+ , nameIcon = "security"
132+ , icons = [ ( hiddenButtonIcon cvvHidden, ToggleCVVVisiblity ), ( "copy", Noop ) ]
133+ }
134+ )
135+ ++ maybeList cardholderName
136+ (\x -> row { name = "Cardholder name", value = x, nameIcon = "user", icons = [ ( "copy", Noop ) ] })
121137
122138 Bridge.IdentityCipher { address1, address2, address3, city, company, country, email, firstName, lastName, licenseNumber, middleName, passportNumber, phone, postalCode, ssn, state, title, username } ->
123− [ row
124− { name = "Name"
125− , value = firstName ++ " " ++ middleName ++ " " ++ lastName
126− , nameIcon = ""
127− , icons = [ ( "copy", Noop ) ]
128− }
129− , row
130− { name = "Username"
131− , value = username
132− , nameIcon = ""
133− , icons = [ ( "copy", Noop ) ]
134− }
135− , row
136− { name = "Company"
137− , value = company
138− , nameIcon = ""
139− , icons = [ ( "copy", Noop ) ]
140− }
141− , row
142− { name = "Socia security number"
143− , value = ssn
144− , nameIcon = ""
145− , icons = [ ( "copy", Noop ) ]
146− }
147− , row
148− { name = "Passport number"
149− , value = passportNumber
150− , nameIcon = ""
151− , icons = [ ( "copy", Noop ) ]
152− }
153− , row
154− { name = "License Number"
155− , value = licenseNumber
156− , nameIcon = ""
157− , icons = [ ( "copy", Noop ) ]
158− }
159− , row
160− { name = "Email"
161− , value = email
162− , nameIcon = ""
163− , icons = [ ( "copy", Noop ) ]
164− }
165− , row
166− { name = "Phone number"
167− , value = phone
168− , nameIcon = ""
169− , icons = [ ( "copy", Noop ) ]
170− }
171− , row
172− { name = "Address"
173− , value = address1 ++ "\n" ++ address2 ++ "\n" ++ address3
174− , nameIcon = ""
175− , icons = [ ( "copy", Noop ) ]
176− }
177− ]
139+ optional (firstName /= Nothing || middleName /= Nothing || lastName /= Nothing)
140+ (row
141+ { name = "Name"
142+ , value = [ firstName, middleName, lastName ] |> List.concatMap (flip maybeList identity) |> unwords
143+ , nameIcon = ""
144+ , icons = [ ( "copy", Noop ) ]
145+ }
146+ )
147+ ++ maybeList username
148+ (\x ->
149+ row
150+ { name = "Username"
151+ , value = x
152+ , nameIcon = ""
153+ , icons = [ ( "copy", Noop ) ]
154+ }
155+ )
156+ ++ maybeList company
157+ (\x ->
158+ row
159+ { name = "Company"
160+ , value = x
161+ , nameIcon = ""
162+ , icons = [ ( "copy", Noop ) ]
163+ }
164+ )
165+ ++ maybeList ssn
166+ (\x ->
167+ row
168+ { name = "Socia security number"
169+ , value = x
170+ , nameIcon = ""
171+ , icons = [ ( "copy", Noop ) ]
172+ }
173+ )
174+ ++ maybeList passportNumber
175+ (\x ->
176+ row
177+ { name = "Passport number"
178+ , value = x
179+ , nameIcon = ""
180+ , icons = [ ( "copy", Noop ) ]
181+ }
182+ )
183+ ++ maybeList licenseNumber
184+ (\x ->
185+ row
186+ { name = "License Number"
187+ , value = x
188+ , nameIcon = ""
189+ , icons = [ ( "copy", Noop ) ]
190+ }
191+ )
192+ ++ maybeList email
193+ (\x ->
194+ row
195+ { name = "Email"
196+ , value = x
197+ , nameIcon = ""
198+ , icons = [ ( "copy", Noop ) ]
199+ }
200+ )
201+ ++ maybeList phone
202+ (\x ->
203+ row
204+ { name = "Phone number"
205+ , value = x
206+ , nameIcon = ""
207+ , icons = [ ( "copy", Noop ) ]
208+ }
209+ )
210+ ++ optional (address1 /= Nothing || address2 /= Nothing || address3 /= Nothing)
211+ (row
212+ { name = "Address"
213+ , value = [ address1, address2, address3 ] |> List.concatMap (flip maybeList identity) |> unwords
214+ , nameIcon = ""
215+ , icons = [ ( "copy", Noop ) ]
216+ }
217+ )
178218 )
179219 |> List.intersperse (hr [] [])
180220
@@ -184,8 +224,8 @@ hiddenPassword =
184224 String.repeat 12 "●"
185225
186226
187−cvvPassword : String
188−cvvPassword =
227+hiddenCvv : String
228+hiddenCvv =
189229 String.repeat 3 "●"
190230
191231
frontend/Utils.elm+5
@@ -81,3 +81,8 @@ tailEmpty x =
8181
8282 _ :: xs ->
8383 xs
84+
85+
86+unwords : List String -> String
87+unwords =
88+ String.join " "