@pi-spi/app 2.0.0 → 2.2.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.
Files changed (389) hide show
  1. package/lib/module/core/api.js +14 -5
  2. package/lib/module/core/api.js.map +1 -1
  3. package/lib/module/l10n/app_localizations.js.map +1 -1
  4. package/lib/module/l10n/app_localizations_en.js +40 -8
  5. package/lib/module/l10n/app_localizations_en.js.map +1 -1
  6. package/lib/module/l10n/app_localizations_fr.js +49 -14
  7. package/lib/module/l10n/app_localizations_fr.js.map +1 -1
  8. package/lib/module/l10n/app_localizations_pt.js +41 -7
  9. package/lib/module/l10n/app_localizations_pt.js.map +1 -1
  10. package/lib/module/modules/alias/domain/models/alias_revendication.js +4 -2
  11. package/lib/module/modules/alias/domain/models/alias_revendication.js.map +1 -1
  12. package/lib/module/modules/alias/infra/alias_output_local.js +11 -0
  13. package/lib/module/modules/alias/infra/alias_output_local.js.map +1 -1
  14. package/lib/module/modules/alias/infra/alias_output_repository.js +9 -8
  15. package/lib/module/modules/alias/infra/alias_output_repository.js.map +1 -1
  16. package/lib/module/modules/alias/presentation/pages/alias_delete_btn_widget.js +14 -18
  17. package/lib/module/modules/alias/presentation/pages/alias_delete_btn_widget.js.map +1 -1
  18. package/lib/module/modules/alias/presentation/pages/alias_page_claim.js +113 -60
  19. package/lib/module/modules/alias/presentation/pages/alias_page_claim.js.map +1 -1
  20. package/lib/module/modules/alias/presentation/pages/alias_page_create_mbno_form.js +151 -76
  21. package/lib/module/modules/alias/presentation/pages/alias_page_create_mbno_form.js.map +1 -1
  22. package/lib/module/modules/alias/presentation/pages/alias_page_create_mbno_timer.js +38 -24
  23. package/lib/module/modules/alias/presentation/pages/alias_page_create_mbno_timer.js.map +1 -1
  24. package/lib/module/modules/alias/presentation/pages/alias_page_create_options.js +28 -26
  25. package/lib/module/modules/alias/presentation/pages/alias_page_create_options.js.map +1 -1
  26. package/lib/module/modules/alias/presentation/pages/alias_page_otp.js +27 -110
  27. package/lib/module/modules/alias/presentation/pages/alias_page_otp.js.map +1 -1
  28. package/lib/module/modules/categorie/domain/services/categorie_service.js +2 -1
  29. package/lib/module/modules/categorie/domain/services/categorie_service.js.map +1 -1
  30. package/lib/module/modules/categorie/presentation/pages/categorie_edit_icon_btn.js +58 -72
  31. package/lib/module/modules/categorie/presentation/pages/categorie_edit_icon_btn.js.map +1 -1
  32. package/lib/module/modules/categorie/presentation/pages/categorie_form_pages.js +88 -80
  33. package/lib/module/modules/categorie/presentation/pages/categorie_form_pages.js.map +1 -1
  34. package/lib/module/modules/categorie/presentation/pages/categorie_icon.js +39 -0
  35. package/lib/module/modules/categorie/presentation/pages/categorie_icon.js.map +1 -1
  36. package/lib/module/modules/categorie/presentation/pages/categorie_liste_widget.js +55 -27
  37. package/lib/module/modules/categorie/presentation/pages/categorie_liste_widget.js.map +1 -1
  38. package/lib/module/modules/categorie/presentation/pages/categorie_select_page.js +21 -81
  39. package/lib/module/modules/categorie/presentation/pages/categorie_select_page.js.map +1 -1
  40. package/lib/module/modules/categorie/presentation/pages/categorie_select_widget.js +53 -16
  41. package/lib/module/modules/categorie/presentation/pages/categorie_select_widget.js.map +1 -1
  42. package/lib/module/modules/config/domain/models/config_keys.js +2 -0
  43. package/lib/module/modules/config/domain/models/config_keys.js.map +1 -1
  44. package/lib/module/modules/contacts/domain/contact_pi.js +3 -5
  45. package/lib/module/modules/contacts/domain/contact_pi.js.map +1 -1
  46. package/lib/module/modules/contacts/presentation/bloc/contact_bloc.js +30 -14
  47. package/lib/module/modules/contacts/presentation/bloc/contact_bloc.js.map +1 -1
  48. package/lib/module/modules/contacts/presentation/pages/contact_actions_sheet.js +106 -0
  49. package/lib/module/modules/contacts/presentation/pages/contact_actions_sheet.js.map +1 -0
  50. package/lib/module/modules/contacts/presentation/pages/contact_list_alias_widget.js +17 -7
  51. package/lib/module/modules/contacts/presentation/pages/contact_list_alias_widget.js.map +1 -1
  52. package/lib/module/modules/contacts/presentation/pages/contact_list_phone_widget.js +5 -4
  53. package/lib/module/modules/contacts/presentation/pages/contact_list_phone_widget.js.map +1 -1
  54. package/lib/module/modules/contacts/presentation/pages/contact_list_widget_item.js +76 -67
  55. package/lib/module/modules/contacts/presentation/pages/contact_list_widget_item.js.map +1 -1
  56. package/lib/module/modules/contacts/presentation/pages/contact_section.js +14 -4
  57. package/lib/module/modules/contacts/presentation/pages/contact_section.js.map +1 -1
  58. package/lib/module/modules/contacts/presentation/pages/contact_select_page.js +131 -110
  59. package/lib/module/modules/contacts/presentation/pages/contact_select_page.js.map +1 -1
  60. package/lib/module/modules/contacts/presentation/pages/create/contact_create_page.js +118 -59
  61. package/lib/module/modules/contacts/presentation/pages/create/contact_create_page.js.map +1 -1
  62. package/lib/module/modules/home/presentation/pages/home_page.js +3 -13
  63. package/lib/module/modules/home/presentation/pages/home_page.js.map +1 -1
  64. package/lib/module/modules/introduction/presentation/pages/introduction.js +17 -4
  65. package/lib/module/modules/introduction/presentation/pages/introduction.js.map +1 -1
  66. package/lib/module/modules/introduction/presentation/pages/introduction_footer.js +15 -53
  67. package/lib/module/modules/introduction/presentation/pages/introduction_footer.js.map +1 -1
  68. package/lib/module/modules/introduction/presentation/pages/introduction_page.js +22 -4
  69. package/lib/module/modules/introduction/presentation/pages/introduction_page.js.map +1 -1
  70. package/lib/module/modules/profile/presentation/pages/parametre/profile_parametre_page_notifications.js +2 -2
  71. package/lib/module/modules/profile/presentation/pages/parametre/profile_parametre_page_notifications.js.map +1 -1
  72. package/lib/module/modules/profile/presentation/pages/parametre/profile_parametre_page_notifications_son.js +1 -1
  73. package/lib/module/modules/profile/presentation/pages/parametre/profile_parametre_page_notifications_son.js.map +1 -1
  74. package/lib/module/modules/profile/presentation/pages/profile_page_avatar.js +6 -28
  75. package/lib/module/modules/profile/presentation/pages/profile_page_avatar.js.map +1 -1
  76. package/lib/module/modules/profile/presentation/pages/profile_page_contacts.js +14 -53
  77. package/lib/module/modules/profile/presentation/pages/profile_page_contacts.js.map +1 -1
  78. package/lib/module/modules/profile/presentation/pages/profile_page_contacts_actions.js +131 -161
  79. package/lib/module/modules/profile/presentation/pages/profile_page_contacts_actions.js.map +1 -1
  80. package/lib/module/modules/qrcode/presentation/pages/qrcode_alias_page.js +0 -1
  81. package/lib/module/modules/qrcode/presentation/pages/qrcode_alias_page.js.map +1 -1
  82. package/lib/module/modules/qrcode/presentation/pages/qrcode_alias_page_share.js +26 -38
  83. package/lib/module/modules/qrcode/presentation/pages/qrcode_alias_page_share.js.map +1 -1
  84. package/lib/module/modules/search/domain/models/fonctionnalite.js +51 -0
  85. package/lib/module/modules/search/domain/models/fonctionnalite.js.map +1 -1
  86. package/lib/module/modules/search/presentation/pages/search_btn_widget.js +136 -0
  87. package/lib/module/modules/search/presentation/pages/search_btn_widget.js.map +1 -0
  88. package/lib/module/modules/search/presentation/pages/search_fonctionnalites.js +21 -1
  89. package/lib/module/modules/search/presentation/pages/search_fonctionnalites.js.map +1 -1
  90. package/lib/module/modules/search/presentation/pages/search_page.js +266 -97
  91. package/lib/module/modules/search/presentation/pages/search_page.js.map +1 -1
  92. package/lib/module/modules/subscription/presentation/pages/subscription_create/subscription_create_page.js +5 -3
  93. package/lib/module/modules/subscription/presentation/pages/subscription_create/subscription_create_page.js.map +1 -1
  94. package/lib/module/modules/subscription/presentation/pages/subscription_create/subscription_create_page_list.js +5 -6
  95. package/lib/module/modules/subscription/presentation/pages/subscription_create/subscription_create_page_list.js.map +1 -1
  96. package/lib/module/modules/subscription/presentation/pages/subscription_details/subscription_details_page.js +0 -1
  97. package/lib/module/modules/subscription/presentation/pages/subscription_details/subscription_details_page.js.map +1 -1
  98. package/lib/module/modules/subscription/presentation/pages/subscription_details/subscription_details_page_actions.js +0 -1
  99. package/lib/module/modules/subscription/presentation/pages/subscription_details/subscription_details_page_actions.js.map +1 -1
  100. package/lib/module/modules/subscription/presentation/pages/subscription_details/subscription_details_page_note_sheet.js +38 -93
  101. package/lib/module/modules/subscription/presentation/pages/subscription_details/subscription_details_page_note_sheet.js.map +1 -1
  102. package/lib/module/modules/subscription/presentation/pages/subscription_list/subscription_list_empty_widget.js +0 -1
  103. package/lib/module/modules/subscription/presentation/pages/subscription_list/subscription_list_empty_widget.js.map +1 -1
  104. package/lib/module/modules/subscription/presentation/pages/subscription_list/subscription_list_widget.js +0 -1
  105. package/lib/module/modules/subscription/presentation/pages/subscription_list/subscription_list_widget.js.map +1 -1
  106. package/lib/module/modules/subscription/presentation/pages/subscription_menu_widget.js +23 -42
  107. package/lib/module/modules/subscription/presentation/pages/subscription_menu_widget.js.map +1 -1
  108. package/lib/module/modules/transactions/domain/models/transaction_send/transaction_send_command_othr.js +1 -2
  109. package/lib/module/modules/transactions/domain/models/transaction_send/transaction_send_command_othr.js.map +1 -1
  110. package/lib/module/modules/transactions/infra/transaction_output_remote.js +2 -1
  111. package/lib/module/modules/transactions/infra/transaction_output_remote.js.map +1 -1
  112. package/lib/module/modules/transactions/presentation/bloc/transaction_send/transaction_send_bloc.js +17 -0
  113. package/lib/module/modules/transactions/presentation/bloc/transaction_send/transaction_send_bloc.js.map +1 -1
  114. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions.js +0 -1
  115. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions.js.map +1 -1
  116. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_cancel.js +34 -61
  117. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_cancel.js.map +1 -1
  118. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_return.js +49 -62
  119. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_return.js.map +1 -1
  120. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_ticket.js +68 -88
  121. package/lib/module/modules/transactions/presentation/pages/transaction_details/transaction_details_page_ticket.js.map +1 -1
  122. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_input_date.js +30 -23
  123. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_input_date.js.map +1 -1
  124. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_input_pays.js +77 -0
  125. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_input_pays.js.map +1 -0
  126. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_input_psp.js +49 -155
  127. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_input_psp.js.map +1 -1
  128. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page.js +16 -4
  129. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page.js.map +1 -1
  130. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_alias.js +11 -9
  131. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_alias.js.map +1 -1
  132. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_othr.js +17 -35
  133. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_othr.js.map +1 -1
  134. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_schedule.js +8 -10
  135. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_schedule.js.map +1 -1
  136. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_verification.js +127 -106
  137. package/lib/module/modules/transactions/presentation/pages/transaction_form/transaction_form_page_verification.js.map +1 -1
  138. package/lib/module/modules/transactions/presentation/pages/transaction_recents/transaction_recents_nombre_widget.js +50 -42
  139. package/lib/module/modules/transactions/presentation/pages/transaction_recents/transaction_recents_nombre_widget.js.map +1 -1
  140. package/lib/module/modules/transactions/presentation/pages/transaction_recents/transaction_recents_widget.js +0 -1
  141. package/lib/module/modules/transactions/presentation/pages/transaction_recents/transaction_recents_widget.js.map +1 -1
  142. package/lib/module/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions.js +0 -1
  143. package/lib/module/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions.js.map +1 -1
  144. package/lib/module/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions_reject.js +37 -67
  145. package/lib/module/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions_reject.js.map +1 -1
  146. package/lib/module/modules/transactions/presentation/pages/transaction_search/transaction_search_page.js +9 -15
  147. package/lib/module/modules/transactions/presentation/pages/transaction_search/transaction_search_page.js.map +1 -1
  148. package/lib/module/modules/transactions/presentation/pages/transaction_split/transaction_split_page_repartition.js +5 -11
  149. package/lib/module/modules/transactions/presentation/pages/transaction_split/transaction_split_page_repartition.js.map +1 -1
  150. package/lib/module/modules/transactions/presentation/pages/transaction_split/transaction_split_page_tx.js +9 -9
  151. package/lib/module/modules/transactions/presentation/pages/transaction_split/transaction_split_page_tx.js.map +1 -1
  152. package/lib/module/shared/widgets/alias_widget.js +33 -12
  153. package/lib/module/shared/widgets/alias_widget.js.map +1 -1
  154. package/lib/module/shared/widgets/auth_code_field.js +89 -0
  155. package/lib/module/shared/widgets/auth_code_field.js.map +1 -0
  156. package/lib/module/shared/widgets/calendar_date_picker.js +21 -16
  157. package/lib/module/shared/widgets/calendar_date_picker.js.map +1 -1
  158. package/lib/module/shared/widgets/confirm_action_sheet_widget.js +53 -67
  159. package/lib/module/shared/widgets/confirm_action_sheet_widget.js.map +1 -1
  160. package/lib/module/shared/widgets/emoji_select_widget.js +34 -39
  161. package/lib/module/shared/widgets/emoji_select_widget.js.map +1 -1
  162. package/lib/module/shared/widgets/frequence_input_widget.js +18 -29
  163. package/lib/module/shared/widgets/frequence_input_widget.js.map +1 -1
  164. package/lib/module/shared/widgets/frequence_select_widget.js +233 -140
  165. package/lib/module/shared/widgets/frequence_select_widget.js.map +1 -1
  166. package/lib/module/shared/widgets/image_select_widget.js +43 -107
  167. package/lib/module/shared/widgets/image_select_widget.js.map +1 -1
  168. package/lib/module/shared/widgets/input_text.js +1 -1
  169. package/lib/module/shared/widgets/input_text.js.map +1 -1
  170. package/lib/module/shared/widgets/notification_dialog.js +28 -37
  171. package/lib/module/shared/widgets/notification_dialog.js.map +1 -1
  172. package/lib/module/shared/widgets/pin_entete.js +114 -0
  173. package/lib/module/shared/widgets/pin_entete.js.map +1 -0
  174. package/lib/module/shared/widgets/select_date_widget.js +74 -59
  175. package/lib/module/shared/widgets/select_date_widget.js.map +1 -1
  176. package/lib/module/shared/widgets/selection.js +387 -6
  177. package/lib/module/shared/widgets/selection.js.map +1 -1
  178. package/lib/typescript/src/core/api.d.ts +6 -0
  179. package/lib/typescript/src/core/api.d.ts.map +1 -1
  180. package/lib/typescript/src/l10n/app_localizations.d.ts +75 -11
  181. package/lib/typescript/src/l10n/app_localizations.d.ts.map +1 -1
  182. package/lib/typescript/src/l10n/app_localizations_en.d.ts.map +1 -1
  183. package/lib/typescript/src/l10n/app_localizations_fr.d.ts.map +1 -1
  184. package/lib/typescript/src/l10n/app_localizations_pt.d.ts.map +1 -1
  185. package/lib/typescript/src/modules/alias/domain/models/alias_revendication.d.ts.map +1 -1
  186. package/lib/typescript/src/modules/alias/infra/alias_output_local.d.ts +5 -0
  187. package/lib/typescript/src/modules/alias/infra/alias_output_local.d.ts.map +1 -1
  188. package/lib/typescript/src/modules/alias/infra/alias_output_repository.d.ts.map +1 -1
  189. package/lib/typescript/src/modules/alias/presentation/pages/alias_delete_btn_widget.d.ts.map +1 -1
  190. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_claim.d.ts.map +1 -1
  191. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_create_mbno_form.d.ts.map +1 -1
  192. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_create_mbno_timer.d.ts +1 -1
  193. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_create_mbno_timer.d.ts.map +1 -1
  194. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_create_options.d.ts +4 -1
  195. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_create_options.d.ts.map +1 -1
  196. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_otp.d.ts +9 -5
  197. package/lib/typescript/src/modules/alias/presentation/pages/alias_page_otp.d.ts.map +1 -1
  198. package/lib/typescript/src/modules/categorie/domain/services/categorie_service.d.ts.map +1 -1
  199. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_edit_icon_btn.d.ts +3 -0
  200. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_edit_icon_btn.d.ts.map +1 -1
  201. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_form_pages.d.ts.map +1 -1
  202. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_icon.d.ts +9 -0
  203. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_icon.d.ts.map +1 -1
  204. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_liste_widget.d.ts +7 -2
  205. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_liste_widget.d.ts.map +1 -1
  206. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_select_page.d.ts.map +1 -1
  207. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_select_widget.d.ts +10 -2
  208. package/lib/typescript/src/modules/categorie/presentation/pages/categorie_select_widget.d.ts.map +1 -1
  209. package/lib/typescript/src/modules/config/domain/models/config_keys.d.ts +3 -1
  210. package/lib/typescript/src/modules/config/domain/models/config_keys.d.ts.map +1 -1
  211. package/lib/typescript/src/modules/contacts/domain/contact_pi.d.ts +0 -2
  212. package/lib/typescript/src/modules/contacts/domain/contact_pi.d.ts.map +1 -1
  213. package/lib/typescript/src/modules/contacts/presentation/bloc/contact_bloc.d.ts +7 -0
  214. package/lib/typescript/src/modules/contacts/presentation/bloc/contact_bloc.d.ts.map +1 -1
  215. package/lib/typescript/src/modules/contacts/presentation/pages/contact_actions_sheet.d.ts +14 -0
  216. package/lib/typescript/src/modules/contacts/presentation/pages/contact_actions_sheet.d.ts.map +1 -0
  217. package/lib/typescript/src/modules/contacts/presentation/pages/contact_list_alias_widget.d.ts +4 -2
  218. package/lib/typescript/src/modules/contacts/presentation/pages/contact_list_alias_widget.d.ts.map +1 -1
  219. package/lib/typescript/src/modules/contacts/presentation/pages/contact_list_phone_widget.d.ts.map +1 -1
  220. package/lib/typescript/src/modules/contacts/presentation/pages/contact_list_widget_item.d.ts +6 -4
  221. package/lib/typescript/src/modules/contacts/presentation/pages/contact_list_widget_item.d.ts.map +1 -1
  222. package/lib/typescript/src/modules/contacts/presentation/pages/contact_section.d.ts +3 -1
  223. package/lib/typescript/src/modules/contacts/presentation/pages/contact_section.d.ts.map +1 -1
  224. package/lib/typescript/src/modules/contacts/presentation/pages/contact_select_page.d.ts.map +1 -1
  225. package/lib/typescript/src/modules/contacts/presentation/pages/create/contact_create_page.d.ts.map +1 -1
  226. package/lib/typescript/src/modules/home/presentation/pages/home_page.d.ts.map +1 -1
  227. package/lib/typescript/src/modules/introduction/presentation/pages/introduction.d.ts.map +1 -1
  228. package/lib/typescript/src/modules/introduction/presentation/pages/introduction_footer.d.ts +5 -1
  229. package/lib/typescript/src/modules/introduction/presentation/pages/introduction_footer.d.ts.map +1 -1
  230. package/lib/typescript/src/modules/introduction/presentation/pages/introduction_page.d.ts.map +1 -1
  231. package/lib/typescript/src/modules/profile/presentation/pages/profile_page_avatar.d.ts.map +1 -1
  232. package/lib/typescript/src/modules/profile/presentation/pages/profile_page_contacts.d.ts.map +1 -1
  233. package/lib/typescript/src/modules/profile/presentation/pages/profile_page_contacts_actions.d.ts.map +1 -1
  234. package/lib/typescript/src/modules/qrcode/presentation/pages/qrcode_alias_page.d.ts.map +1 -1
  235. package/lib/typescript/src/modules/qrcode/presentation/pages/qrcode_alias_page_share.d.ts.map +1 -1
  236. package/lib/typescript/src/modules/search/domain/models/fonctionnalite.d.ts +20 -0
  237. package/lib/typescript/src/modules/search/domain/models/fonctionnalite.d.ts.map +1 -1
  238. package/lib/typescript/src/modules/search/presentation/pages/search_btn_widget.d.ts +11 -0
  239. package/lib/typescript/src/modules/search/presentation/pages/search_btn_widget.d.ts.map +1 -0
  240. package/lib/typescript/src/modules/search/presentation/pages/search_fonctionnalites.d.ts.map +1 -1
  241. package/lib/typescript/src/modules/search/presentation/pages/search_page.d.ts.map +1 -1
  242. package/lib/typescript/src/modules/subscription/presentation/pages/subscription_create/subscription_create_page.d.ts.map +1 -1
  243. package/lib/typescript/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page.d.ts.map +1 -1
  244. package/lib/typescript/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page_actions.d.ts.map +1 -1
  245. package/lib/typescript/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page_note_sheet.d.ts +2 -2
  246. package/lib/typescript/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page_note_sheet.d.ts.map +1 -1
  247. package/lib/typescript/src/modules/subscription/presentation/pages/subscription_menu_widget.d.ts.map +1 -1
  248. package/lib/typescript/src/modules/transactions/domain/models/transaction_send/transaction_send_command_othr.d.ts.map +1 -1
  249. package/lib/typescript/src/modules/transactions/infra/transaction_output_remote.d.ts.map +1 -1
  250. package/lib/typescript/src/modules/transactions/presentation/bloc/transaction_send/transaction_send_bloc.d.ts.map +1 -1
  251. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions.d.ts.map +1 -1
  252. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_cancel.d.ts.map +1 -1
  253. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_return.d.ts.map +1 -1
  254. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_date.d.ts +4 -1
  255. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_date.d.ts.map +1 -1
  256. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_pays.d.ts +17 -0
  257. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_pays.d.ts.map +1 -0
  258. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_psp.d.ts +6 -2
  259. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_psp.d.ts.map +1 -1
  260. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_alias.d.ts +4 -0
  261. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_alias.d.ts.map +1 -1
  262. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_othr.d.ts.map +1 -1
  263. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_schedule.d.ts.map +1 -1
  264. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_verification.d.ts.map +1 -1
  265. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_recents/transaction_recents_nombre_widget.d.ts.map +1 -1
  266. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions.d.ts.map +1 -1
  267. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions_reject.d.ts.map +1 -1
  268. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_search/transaction_search_page.d.ts.map +1 -1
  269. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_split/transaction_split_page_repartition.d.ts.map +1 -1
  270. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_split/transaction_split_page_tx.d.ts.map +1 -1
  271. package/lib/typescript/src/shared/widgets/alias_widget.d.ts +2 -2
  272. package/lib/typescript/src/shared/widgets/alias_widget.d.ts.map +1 -1
  273. package/lib/typescript/src/shared/widgets/auth_code_field.d.ts +17 -0
  274. package/lib/typescript/src/shared/widgets/auth_code_field.d.ts.map +1 -0
  275. package/lib/typescript/src/shared/widgets/calendar_date_picker.d.ts.map +1 -1
  276. package/lib/typescript/src/shared/widgets/confirm_action_sheet_widget.d.ts +16 -2
  277. package/lib/typescript/src/shared/widgets/confirm_action_sheet_widget.d.ts.map +1 -1
  278. package/lib/typescript/src/shared/widgets/emoji_select_widget.d.ts.map +1 -1
  279. package/lib/typescript/src/shared/widgets/frequence_input_widget.d.ts +6 -3
  280. package/lib/typescript/src/shared/widgets/frequence_input_widget.d.ts.map +1 -1
  281. package/lib/typescript/src/shared/widgets/frequence_select_widget.d.ts +23 -5
  282. package/lib/typescript/src/shared/widgets/frequence_select_widget.d.ts.map +1 -1
  283. package/lib/typescript/src/shared/widgets/image_select_widget.d.ts +6 -4
  284. package/lib/typescript/src/shared/widgets/image_select_widget.d.ts.map +1 -1
  285. package/lib/typescript/src/shared/widgets/input_text.d.ts +2 -0
  286. package/lib/typescript/src/shared/widgets/input_text.d.ts.map +1 -1
  287. package/lib/typescript/src/shared/widgets/notification_dialog.d.ts +5 -3
  288. package/lib/typescript/src/shared/widgets/notification_dialog.d.ts.map +1 -1
  289. package/lib/typescript/src/shared/widgets/pin_entete.d.ts +15 -0
  290. package/lib/typescript/src/shared/widgets/pin_entete.d.ts.map +1 -0
  291. package/lib/typescript/src/shared/widgets/select_date_widget.d.ts +4 -0
  292. package/lib/typescript/src/shared/widgets/select_date_widget.d.ts.map +1 -1
  293. package/lib/typescript/src/shared/widgets/selection.d.ts +74 -3
  294. package/lib/typescript/src/shared/widgets/selection.d.ts.map +1 -1
  295. package/package.json +1 -1
  296. package/src/core/api.ts +11 -2
  297. package/src/l10n/app_localizations.ts +75 -11
  298. package/src/l10n/app_localizations_en.ts +40 -8
  299. package/src/l10n/app_localizations_fr.ts +46 -14
  300. package/src/l10n/app_localizations_pt.ts +39 -7
  301. package/src/modules/alias/domain/models/alias_revendication.ts +4 -2
  302. package/src/modules/alias/infra/alias_output_local.ts +11 -0
  303. package/src/modules/alias/infra/alias_output_repository.ts +9 -8
  304. package/src/modules/alias/presentation/pages/alias_delete_btn_widget.tsx +17 -24
  305. package/src/modules/alias/presentation/pages/alias_page_claim.tsx +76 -48
  306. package/src/modules/alias/presentation/pages/alias_page_create_mbno_form.tsx +113 -65
  307. package/src/modules/alias/presentation/pages/alias_page_create_mbno_timer.tsx +34 -25
  308. package/src/modules/alias/presentation/pages/alias_page_create_options.tsx +29 -36
  309. package/src/modules/alias/presentation/pages/alias_page_otp.tsx +24 -88
  310. package/src/modules/categorie/domain/services/categorie_service.ts +2 -1
  311. package/src/modules/categorie/presentation/pages/categorie_edit_icon_btn.tsx +58 -50
  312. package/src/modules/categorie/presentation/pages/categorie_form_pages.tsx +71 -41
  313. package/src/modules/categorie/presentation/pages/categorie_icon.tsx +26 -0
  314. package/src/modules/categorie/presentation/pages/categorie_liste_widget.tsx +45 -24
  315. package/src/modules/categorie/presentation/pages/categorie_select_page.tsx +10 -46
  316. package/src/modules/categorie/presentation/pages/categorie_select_widget.tsx +54 -13
  317. package/src/modules/config/domain/models/config_keys.ts +3 -0
  318. package/src/modules/contacts/domain/contact_pi.ts +3 -6
  319. package/src/modules/contacts/presentation/bloc/contact_bloc.ts +37 -20
  320. package/src/modules/contacts/presentation/pages/contact_actions_sheet.tsx +69 -0
  321. package/src/modules/contacts/presentation/pages/contact_list_alias_widget.tsx +26 -4
  322. package/src/modules/contacts/presentation/pages/contact_list_phone_widget.tsx +3 -0
  323. package/src/modules/contacts/presentation/pages/contact_list_widget_item.tsx +54 -65
  324. package/src/modules/contacts/presentation/pages/contact_section.tsx +13 -3
  325. package/src/modules/contacts/presentation/pages/contact_select_page.tsx +106 -74
  326. package/src/modules/contacts/presentation/pages/create/contact_create_page.tsx +86 -47
  327. package/src/modules/home/presentation/pages/home_page.tsx +2 -9
  328. package/src/modules/introduction/presentation/pages/introduction.tsx +8 -0
  329. package/src/modules/introduction/presentation/pages/introduction_footer.tsx +16 -36
  330. package/src/modules/introduction/presentation/pages/introduction_page.tsx +17 -5
  331. package/src/modules/profile/presentation/pages/parametre/profile_parametre_page_notifications.tsx +2 -2
  332. package/src/modules/profile/presentation/pages/parametre/profile_parametre_page_notifications_son.tsx +1 -1
  333. package/src/modules/profile/presentation/pages/profile_page_avatar.tsx +6 -12
  334. package/src/modules/profile/presentation/pages/profile_page_contacts.tsx +12 -20
  335. package/src/modules/profile/presentation/pages/profile_page_contacts_actions.tsx +120 -117
  336. package/src/modules/qrcode/presentation/pages/qrcode_alias_page.tsx +0 -1
  337. package/src/modules/qrcode/presentation/pages/qrcode_alias_page_share.tsx +32 -40
  338. package/src/modules/search/domain/models/fonctionnalite.ts +56 -0
  339. package/src/modules/search/presentation/pages/search_btn_widget.tsx +91 -0
  340. package/src/modules/search/presentation/pages/search_fonctionnalites.ts +21 -1
  341. package/src/modules/search/presentation/pages/search_page.tsx +166 -57
  342. package/src/modules/subscription/presentation/pages/subscription_create/subscription_create_page.tsx +4 -2
  343. package/src/modules/subscription/presentation/pages/subscription_create/subscription_create_page_list.tsx +5 -5
  344. package/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page.tsx +0 -1
  345. package/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page_actions.tsx +0 -1
  346. package/src/modules/subscription/presentation/pages/subscription_details/subscription_details_page_note_sheet.tsx +20 -59
  347. package/src/modules/subscription/presentation/pages/subscription_list/subscription_list_empty_widget.tsx +1 -1
  348. package/src/modules/subscription/presentation/pages/subscription_list/subscription_list_widget.tsx +1 -1
  349. package/src/modules/subscription/presentation/pages/subscription_menu_widget.tsx +25 -39
  350. package/src/modules/transactions/domain/models/transaction_send/transaction_send_command_othr.ts +1 -2
  351. package/src/modules/transactions/infra/transaction_output_remote.ts +6 -1
  352. package/src/modules/transactions/presentation/bloc/transaction_send/transaction_send_bloc.ts +17 -0
  353. package/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions.tsx +0 -1
  354. package/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_cancel.tsx +39 -41
  355. package/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_actions_return.tsx +41 -46
  356. package/src/modules/transactions/presentation/pages/transaction_details/transaction_details_page_ticket.tsx +46 -40
  357. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_date.tsx +26 -17
  358. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_pays.tsx +92 -0
  359. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_input_psp.tsx +48 -94
  360. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page.tsx +20 -2
  361. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_alias.tsx +6 -8
  362. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_othr.tsx +9 -22
  363. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_schedule.tsx +5 -7
  364. package/src/modules/transactions/presentation/pages/transaction_form/transaction_form_page_verification.tsx +112 -104
  365. package/src/modules/transactions/presentation/pages/transaction_recents/transaction_recents_nombre_widget.tsx +49 -42
  366. package/src/modules/transactions/presentation/pages/transaction_recents/transaction_recents_widget.tsx +1 -1
  367. package/src/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions.tsx +0 -1
  368. package/src/modules/transactions/presentation/pages/transaction_rtp/transaction_rtp_page_actions_reject.tsx +47 -48
  369. package/src/modules/transactions/presentation/pages/transaction_search/transaction_search_page.tsx +6 -10
  370. package/src/modules/transactions/presentation/pages/transaction_split/transaction_split_page_repartition.tsx +3 -6
  371. package/src/modules/transactions/presentation/pages/transaction_split/transaction_split_page_tx.tsx +5 -5
  372. package/src/shared/widgets/alias_widget.tsx +45 -18
  373. package/src/shared/widgets/auth_code_field.tsx +89 -0
  374. package/src/shared/widgets/calendar_date_picker.tsx +12 -11
  375. package/src/shared/widgets/confirm_action_sheet_widget.tsx +49 -35
  376. package/src/shared/widgets/emoji_select_widget.tsx +31 -29
  377. package/src/shared/widgets/frequence_input_widget.tsx +18 -24
  378. package/src/shared/widgets/frequence_select_widget.tsx +237 -117
  379. package/src/shared/widgets/image_select_widget.tsx +46 -61
  380. package/src/shared/widgets/input_text.tsx +3 -0
  381. package/src/shared/widgets/notification_dialog.tsx +70 -71
  382. package/src/shared/widgets/pin_entete.tsx +74 -0
  383. package/src/shared/widgets/select_date_widget.tsx +66 -34
  384. package/src/shared/widgets/selection.tsx +304 -5
  385. package/lib/module/modules/transactions/presentation/pages/transaction_details/sheet_box.js +0 -47
  386. package/lib/module/modules/transactions/presentation/pages/transaction_details/sheet_box.js.map +0 -1
  387. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_details/sheet_box.d.ts +0 -10
  388. package/lib/typescript/src/modules/transactions/presentation/pages/transaction_details/sheet_box.d.ts.map +0 -1
  389. package/src/modules/transactions/presentation/pages/transaction_details/sheet_box.tsx +0 -30
@@ -2,6 +2,8 @@
2
2
 
3
3
  import { Image } from 'expo-image';
4
4
  import { StyleSheet, Text, View } from 'react-native';
5
+ import { Images } from "../../../../core/assets.js";
6
+ import { useTheme } from "../../../../core/theme.js";
5
7
  import { argbToCss, categorieIconSource, isAssetIcon } from "../../domain/models/categorie_icons.js";
6
8
 
7
9
  /** Icône d'une catégorie (image ou emoji), éventuellement dans un cercle coloré. */
@@ -50,7 +52,44 @@ export function CategorieIconCircle({
50
52
  })
51
53
  });
52
54
  }
55
+
56
+ /**
57
+ * Pastille ronde d'une catégorie : [icon] (image ou emoji) sur sa
58
+ * [bgColor]. Sans [icon], l'illustration par défaut des catégories.
59
+ */
60
+ export function CategoriePastille({
61
+ icon,
62
+ bgColor,
63
+ taille = 44
64
+ }) {
65
+ const theme = useTheme();
66
+ return /*#__PURE__*/_jsx(View, {
67
+ style: [styles.pastille, {
68
+ width: taille,
69
+ height: taille,
70
+ borderRadius: taille / 2
71
+ }, {
72
+ backgroundColor: bgColor != null ? argbToCss(bgColor) : theme.colorScheme.surface
73
+ }],
74
+ children: icon == null ? /*#__PURE__*/_jsx(Image, {
75
+ source: Images.categorie,
76
+ style: {
77
+ width: taille * 0.7,
78
+ height: taille * 0.7
79
+ },
80
+ contentFit: "contain"
81
+ }) : /*#__PURE__*/_jsx(CategorieIcon, {
82
+ icon: icon,
83
+ size: taille * 0.5,
84
+ emojiSize: taille * 0.48
85
+ })
86
+ });
87
+ }
53
88
  const styles = StyleSheet.create({
89
+ pastille: {
90
+ alignItems: 'center',
91
+ justifyContent: 'center'
92
+ },
54
93
  circle: {
55
94
  width: 45,
56
95
  height: 45,
@@ -1 +1 @@
1
- {"version":3,"names":["Image","StyleSheet","Text","View","argbToCss","categorieIconSource","isAssetIcon","jsx","_jsx","CategorieIcon","icon","size","emojiSize","tintColor","source","style","width","height","contentFit","fontSize","children","CategorieIconCircle","bgColor","styles","circle","backgroundColor","create","borderRadius","alignItems","justifyContent"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_icon.tsx"],"mappings":";;AAAA,SAASA,KAAK,QAAQ,YAAY;AAClC,SAASC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AAErD,SAASC,SAAS,EAAEC,mBAAmB,EAAEC,WAAW,QAAQ,wCAAqC;;AAEjG;AAAA,SAAAC,GAAA,IAAAC,IAAA;AACA,OAAO,SAASC,aAAaA,CAAC;EAC5BC,IAAI;EACJC,IAAI;EACJC,SAAS;EACTC;AAMF,CAAC,EAAE;EACD,IAAIP,WAAW,CAACI,IAAI,CAAC,EAAE;IACrB,MAAMI,MAAM,GAAGT,mBAAmB,CAACK,IAAI,CAAC;IACxC,IAAII,MAAM,IAAI,IAAI,EAAE;MAClB,oBAAON,IAAA,CAACR,KAAK;QAACc,MAAM,EAAEA,MAAO;QAACC,KAAK,EAAE;UAAEC,KAAK,EAAEL,IAAI;UAAEM,MAAM,EAAEN;QAAK,CAAE;QAACE,SAAS,EAAEA,SAAU;QAACK,UAAU,EAAC;MAAS,CAAE,CAAC;IACnH;EACF;EACA,oBAAOV,IAAA,CAACN,IAAI;IAACa,KAAK,EAAE;MAAEI,QAAQ,EAAEP,SAAS,IAAID,IAAI,GAAG;IAAI,CAAE;IAAAS,QAAA,EAAEV;EAAI,CAAO,CAAC;AAC1E;;AAEA;AACA,OAAO,SAASW,mBAAmBA,CAAC;EAAEX,IAAI;EAAEY;AAA4C,CAAC,EAAE;EACzF,oBACEd,IAAA,CAACL,IAAI;IAACY,KAAK,EAAE,CAACQ,MAAM,CAACC,MAAM,EAAE;MAAEC,eAAe,EAAErB,SAAS,CAACkB,OAAO;IAAE,CAAC,CAAE;IAAAF,QAAA,eACpEZ,IAAA,CAACC,aAAa;MAACC,IAAI,EAAEA,IAAK;MAACC,IAAI,EAAE,EAAG;MAACC,SAAS,EAAE;IAAG,CAAE;EAAC,CAClD,CAAC;AAEX;AAEA,MAAMW,MAAM,GAAGtB,UAAU,CAACyB,MAAM,CAAC;EAC/BF,MAAM,EAAE;IAAER,KAAK,EAAE,EAAE;IAAEC,MAAM,EAAE,EAAE;IAAEU,YAAY,EAAE,IAAI;IAAEC,UAAU,EAAE,QAAQ;IAAEC,cAAc,EAAE;EAAS;AACtG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Image","StyleSheet","Text","View","Images","useTheme","argbToCss","categorieIconSource","isAssetIcon","jsx","_jsx","CategorieIcon","icon","size","emojiSize","tintColor","source","style","width","height","contentFit","fontSize","children","CategorieIconCircle","bgColor","styles","circle","backgroundColor","CategoriePastille","taille","theme","pastille","borderRadius","colorScheme","surface","categorie","create","alignItems","justifyContent"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_icon.tsx"],"mappings":";;AAAA,SAASA,KAAK,QAAQ,YAAY;AAClC,SAASC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AAErD,SAASC,MAAM,QAAQ,4BAAyB;AAChD,SAASC,QAAQ,QAAQ,2BAAwB;AACjD,SAASC,SAAS,EAAEC,mBAAmB,EAAEC,WAAW,QAAQ,wCAAqC;;AAEjG;AAAA,SAAAC,GAAA,IAAAC,IAAA;AACA,OAAO,SAASC,aAAaA,CAAC;EAC5BC,IAAI;EACJC,IAAI;EACJC,SAAS;EACTC;AAMF,CAAC,EAAE;EACD,IAAIP,WAAW,CAACI,IAAI,CAAC,EAAE;IACrB,MAAMI,MAAM,GAAGT,mBAAmB,CAACK,IAAI,CAAC;IACxC,IAAII,MAAM,IAAI,IAAI,EAAE;MAClB,oBAAON,IAAA,CAACV,KAAK;QAACgB,MAAM,EAAEA,MAAO;QAACC,KAAK,EAAE;UAAEC,KAAK,EAAEL,IAAI;UAAEM,MAAM,EAAEN;QAAK,CAAE;QAACE,SAAS,EAAEA,SAAU;QAACK,UAAU,EAAC;MAAS,CAAE,CAAC;IACnH;EACF;EACA,oBAAOV,IAAA,CAACR,IAAI;IAACe,KAAK,EAAE;MAAEI,QAAQ,EAAEP,SAAS,IAAID,IAAI,GAAG;IAAI,CAAE;IAAAS,QAAA,EAAEV;EAAI,CAAO,CAAC;AAC1E;;AAEA;AACA,OAAO,SAASW,mBAAmBA,CAAC;EAAEX,IAAI;EAAEY;AAA4C,CAAC,EAAE;EACzF,oBACEd,IAAA,CAACP,IAAI;IAACc,KAAK,EAAE,CAACQ,MAAM,CAACC,MAAM,EAAE;MAAEC,eAAe,EAAErB,SAAS,CAACkB,OAAO;IAAE,CAAC,CAAE;IAAAF,QAAA,eACpEZ,IAAA,CAACC,aAAa;MAACC,IAAI,EAAEA,IAAK;MAACC,IAAI,EAAE,EAAG;MAACC,SAAS,EAAE;IAAG,CAAE;EAAC,CAClD,CAAC;AAEX;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASc,iBAAiBA,CAAC;EAAEhB,IAAI;EAAEY,OAAO;EAAEK,MAAM,GAAG;AAAuE,CAAC,EAAE;EACpI,MAAMC,KAAK,GAAGzB,QAAQ,CAAC,CAAC;EACxB,oBACEK,IAAA,CAACP,IAAI;IACHc,KAAK,EAAE,CACLQ,MAAM,CAACM,QAAQ,EACf;MAAEb,KAAK,EAAEW,MAAM;MAAEV,MAAM,EAAEU,MAAM;MAAEG,YAAY,EAAEH,MAAM,GAAG;IAAE,CAAC,EAC3D;MAAEF,eAAe,EAAEH,OAAO,IAAI,IAAI,GAAGlB,SAAS,CAACkB,OAAO,CAAC,GAAGM,KAAK,CAACG,WAAW,CAACC;IAAQ,CAAC,CACrF;IAAAZ,QAAA,EAEDV,IAAI,IAAI,IAAI,gBACXF,IAAA,CAACV,KAAK;MAACgB,MAAM,EAAEZ,MAAM,CAAC+B,SAAU;MAAClB,KAAK,EAAE;QAAEC,KAAK,EAAEW,MAAM,GAAG,GAAG;QAAEV,MAAM,EAAEU,MAAM,GAAG;MAAI,CAAE;MAACT,UAAU,EAAC;IAAS,CAAE,CAAC,gBAE9GV,IAAA,CAACC,aAAa;MAACC,IAAI,EAAEA,IAAK;MAACC,IAAI,EAAEgB,MAAM,GAAG,GAAI;MAACf,SAAS,EAAEe,MAAM,GAAG;IAAK,CAAE;EAC3E,CACG,CAAC;AAEX;AAEA,MAAMJ,MAAM,GAAGxB,UAAU,CAACmC,MAAM,CAAC;EAC/BL,QAAQ,EAAE;IAAEM,UAAU,EAAE,QAAQ;IAAEC,cAAc,EAAE;EAAS,CAAC;EAC5DZ,MAAM,EAAE;IAAER,KAAK,EAAE,EAAE;IAAEC,MAAM,EAAE,EAAE;IAAEa,YAAY,EAAE,IAAI;IAAEK,UAAU,EAAE,QAAQ;IAAEC,cAAc,EAAE;EAAS;AACtG,CAAC,CAAC","ignoreList":[]}
@@ -6,59 +6,78 @@ import { Pressable, StyleSheet, Text, View } from 'react-native';
6
6
  import { useBloc } from "../../../../core/bloc_react.js";
7
7
  import { Themer, useTheme } from "../../../../core/theme.js";
8
8
  import { useAppLocalizations } from "../../../../l10n/localizations.js";
9
- import { TextButton } from "../../../../shared/material/buttons.js";
10
9
  import { Card } from "../../../../shared/material/card.js";
10
+ import { withAlpha } from "../../../../shared/utils/color.js";
11
11
  import { CategorieBloc } from "../bloc/categorie_bloc.js";
12
12
  import { CategorieEditEvent } from "../bloc/categorie_event.js";
13
- import { CategorieIconCircle } from "./categorie_icon.js";
13
+ import { CategoriePastille } from "./categorie_icon.js";
14
14
 
15
- /** Liste de catégories à cocher (avec bouton « Modifier » si [editable]). */
15
+ /**
16
+ * Liste de catégories dans une carte : pastille, nom, bouton de
17
+ * modification si [editable] et, en sélection multiple, rond coché. En
18
+ * [selectionUnique], toucher une ligne la choisit (sans rond).
19
+ */
16
20
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
21
  export function CategorieListeWidget({
18
22
  liste,
19
23
  defaultSelectedCategories,
20
24
  onSelectionChanged,
21
- editable
25
+ editable,
26
+ selectionUnique = false
22
27
  }) {
23
28
  const traductions = useAppLocalizations();
24
29
  const theme = useTheme();
30
+ const primaire = theme.colorScheme.primary;
25
31
  const categorieBloc = useBloc(CategorieBloc);
26
32
  // Catégories sélectionnées
27
33
  const [selected, setSelected] = useState(() => liste.filter(c => defaultSelectedCategories.includes(c.id)).map(c => c.id));
28
34
  return /*#__PURE__*/_jsx(Card, {
35
+ style: styles.carte,
29
36
  children: /*#__PURE__*/_jsx(View, {
30
37
  style: styles.list,
31
38
  children: liste.map(categorie => {
32
39
  const checked = selected.includes(categorie.id);
40
+ const marquee = checked && !selectionUnique;
33
41
  return /*#__PURE__*/_jsxs(Pressable, {
34
- accessibilityRole: "checkbox",
42
+ accessibilityRole: selectionUnique ? 'button' : 'checkbox',
35
43
  accessibilityState: {
36
44
  checked
37
45
  },
38
46
  onPress: () => {
39
- const value = !checked;
47
+ const value = selectionUnique ? true : !checked;
40
48
  setSelected(s => value ? [...s, categorie.id] : s.filter(id => id !== categorie.id));
41
49
  onSelectionChanged(categorie, value);
42
50
  },
43
- style: styles.row,
44
- children: [/*#__PURE__*/_jsx(MaterialIcons, {
45
- name: checked ? 'check-box' : 'check-box-outline-blank',
46
- size: 24,
47
- color: checked ? theme.colorScheme.primary : Themer.neural02Color
48
- }), /*#__PURE__*/_jsx(View, {
49
- style: styles.gap12
50
- }), /*#__PURE__*/_jsx(CategorieIconCircle, {
51
+ style: ({
52
+ pressed
53
+ }) => [styles.row, {
54
+ backgroundColor: marquee ? withAlpha(primaire, 0.08) : pressed ? theme.colorScheme.secondary : 'transparent'
55
+ }],
56
+ children: [/*#__PURE__*/_jsx(CategoriePastille, {
51
57
  icon: categorie.icon,
52
58
  bgColor: categorie.bgColor
53
- }), /*#__PURE__*/_jsx(View, {
54
- style: styles.gap12
55
59
  }), /*#__PURE__*/_jsx(Text, {
56
60
  numberOfLines: 1,
57
- style: [theme.textTheme.headlineSmall, styles.flex],
58
- children: ` ${categorie.label}`
59
- }), editable === true && /*#__PURE__*/_jsx(TextButton, {
61
+ style: [theme.textTheme.displayLarge, styles.label, {
62
+ fontWeight: marquee ? '700' : '500'
63
+ }],
64
+ children: categorie.label
65
+ }), editable === true && /*#__PURE__*/_jsx(Pressable, {
66
+ accessibilityRole: "button",
67
+ accessibilityLabel: traductions.categorieEditBtn,
68
+ hitSlop: 8,
69
+ style: styles.modifier,
60
70
  onPress: () => categorieBloc.add(new CategorieEditEvent(categorie)),
61
- children: traductions.categorieEditBtn
71
+ children: /*#__PURE__*/_jsx(MaterialIcons, {
72
+ name: "edit",
73
+ size: 20,
74
+ color: Themer.neural03Color
75
+ })
76
+ }), !selectionUnique && /*#__PURE__*/_jsx(MaterialIcons, {
77
+ name: checked ? 'check-circle' : 'radio-button-unchecked',
78
+ size: 22,
79
+ color: checked ? primaire : Themer.neural03Color,
80
+ style: styles.coche
62
81
  })]
63
82
  }, categorie.id);
64
83
  })
@@ -66,20 +85,29 @@ export function CategorieListeWidget({
66
85
  });
67
86
  }
68
87
  const styles = StyleSheet.create({
88
+ carte: {
89
+ margin: 0
90
+ },
69
91
  list: {
70
- paddingVertical: 8
92
+ padding: 6
71
93
  },
72
94
  row: {
73
95
  flexDirection: 'row',
74
96
  alignItems: 'center',
75
- paddingHorizontal: 16,
76
- paddingVertical: 8
97
+ marginVertical: 1,
98
+ paddingHorizontal: 8,
99
+ paddingVertical: 8,
100
+ borderRadius: 14
101
+ },
102
+ label: {
103
+ flex: 1,
104
+ marginLeft: 14
77
105
  },
78
- gap12: {
79
- width: 12
106
+ modifier: {
107
+ padding: 8
80
108
  },
81
- flex: {
82
- flex: 1
109
+ coche: {
110
+ marginHorizontal: 4
83
111
  }
84
112
  });
85
113
  //# sourceMappingURL=categorie_liste_widget.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MaterialIcons","useState","Pressable","StyleSheet","Text","View","useBloc","Themer","useTheme","useAppLocalizations","TextButton","Card","CategorieBloc","CategorieEditEvent","CategorieIconCircle","jsx","_jsx","jsxs","_jsxs","CategorieListeWidget","liste","defaultSelectedCategories","onSelectionChanged","editable","traductions","theme","categorieBloc","selected","setSelected","filter","c","includes","id","map","children","style","styles","list","categorie","checked","accessibilityRole","accessibilityState","onPress","value","s","row","name","size","color","colorScheme","primary","neural02Color","gap12","icon","bgColor","numberOfLines","textTheme","headlineSmall","flex","label","add","categorieEditBtn","create","paddingVertical","flexDirection","alignItems","paddingHorizontal","width"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_liste_widget.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MaterialIcons","useState","Pressable","StyleSheet","Text","View","useBloc","Themer","useTheme","useAppLocalizations","Card","withAlpha","CategorieBloc","CategorieEditEvent","CategoriePastille","jsx","_jsx","jsxs","_jsxs","CategorieListeWidget","liste","defaultSelectedCategories","onSelectionChanged","editable","selectionUnique","traductions","theme","primaire","colorScheme","primary","categorieBloc","selected","setSelected","filter","c","includes","id","map","style","styles","carte","children","list","categorie","checked","marquee","accessibilityRole","accessibilityState","onPress","value","s","pressed","row","backgroundColor","secondary","icon","bgColor","numberOfLines","textTheme","displayLarge","label","fontWeight","accessibilityLabel","categorieEditBtn","hitSlop","modifier","add","name","size","color","neural03Color","coche","create","margin","padding","flexDirection","alignItems","marginVertical","paddingHorizontal","paddingVertical","borderRadius","flex","marginLeft","marginHorizontal"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_liste_widget.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,27 +3,23 @@
3
3
  import { MaterialIcons } from '@expo/vector-icons';
4
4
  import { Pressable, ScrollView, StyleSheet, Text, View } from 'react-native';
5
5
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
6
- import { useBloc, useBlocBuilder, useBlocListener } from "../../../../core/bloc_react.js";
6
+ import { useBloc, useBlocListener } from "../../../../core/bloc_react.js";
7
7
  import { AppRouter, useAppRouter } from "../../../../core/router.js";
8
- import { Themer, useTheme } from "../../../../core/theme.js";
8
+ import { useTheme } from "../../../../core/theme.js";
9
9
  import { useAppLocalizations } from "../../../../l10n/localizations.js";
10
- import { Card } from "../../../../shared/material/card.js";
11
- import { Divider } from "../../../../shared/material/divider.js";
12
- import { Categorie } from "../../domain/models/categorie.js";
13
10
  import { CategorieBloc } from "../bloc/categorie_bloc.js";
14
- import { CategorieAddEvent, CategorieListEvent } from "../bloc/categorie_event.js";
11
+ import { CategorieListEvent } from "../bloc/categorie_event.js";
15
12
  import { CategorieCreationState, CategorieEditState, CategorieInitialState } from "../bloc/categorie_state.js";
16
- import { CategorieListeWidget } from "./categorie_liste_widget.js";
13
+ import { CategorieSelectWidget } from "./categorie_select_widget.js";
17
14
 
18
15
  /** Choix d'une catégorie : la catégorie choisie est retournée à l'écran appelant. */
19
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
16
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
20
17
  export function CategorieSelectPage() {
21
18
  const traductions = useAppLocalizations();
22
19
  const theme = useTheme();
23
20
  const router = useAppRouter();
24
21
  const insets = useSafeAreaInsets();
25
22
  const categorieBloc = useBloc(CategorieBloc);
26
- const state = useBlocBuilder(categorieBloc);
27
23
  useBlocListener(categorieBloc, s => {
28
24
  if (s instanceof CategorieCreationState) void AppRouter.push(router, AppRouter.categoriesAdd);else if (s instanceof CategorieEditState) void AppRouter.push(router, AppRouter.categoriesEdit);
29
25
  }, (previous, current) => previous instanceof CategorieInitialState && (current instanceof CategorieCreationState || current instanceof CategorieEditState));
@@ -54,56 +50,19 @@ export function CategorieSelectPage() {
54
50
  color: theme.colorScheme.onSurface
55
51
  })
56
52
  })
57
- }), /*#__PURE__*/_jsxs(ScrollView, {
53
+ }), /*#__PURE__*/_jsx(Text, {
54
+ style: [theme.textTheme.headlineLarge, styles.titre],
55
+ children: traductions.categorieSelectionUniqueTitle
56
+ }), /*#__PURE__*/_jsx(ScrollView, {
58
57
  contentContainerStyle: styles.content,
59
- children: [/*#__PURE__*/_jsx(Text, {
60
- style: theme.textTheme.headlineSmall,
61
- children: traductions.categorieCustomTitle
62
- }), /*#__PURE__*/_jsx(View, {
63
- style: styles.gap14
64
- }), /*#__PURE__*/_jsxs(Card, {
65
- children: [/*#__PURE__*/_jsxs(Pressable, {
66
- accessibilityRole: "button",
67
- onPress: () => categorieBloc.add(new CategorieAddEvent()),
68
- style: styles.addRow,
69
- children: [/*#__PURE__*/_jsx(View, {
70
- style: [styles.addIcon, {
71
- backgroundColor: theme.colorScheme.surface
72
- }],
73
- children: /*#__PURE__*/_jsx(MaterialIcons, {
74
- name: "add",
75
- size: 24,
76
- color: theme.colorScheme.onSurface
77
- })
78
- }), /*#__PURE__*/_jsx(Text, {
79
- style: theme.textTheme.headlineSmall,
80
- children: traductions.categorieCustomAdd
81
- })]
82
- }), state.categories.length > 0 && /*#__PURE__*/_jsxs(_Fragment, {
83
- children: [/*#__PURE__*/_jsx(View, {
84
- style: styles.divider,
85
- children: /*#__PURE__*/_jsx(Divider, {
86
- color: Themer.neural01Color
87
- })
88
- }), /*#__PURE__*/_jsx(CategorieListeWidget, {
89
- liste: state.categories,
90
- editable: true,
91
- defaultSelectedCategories: [],
92
- onSelectionChanged: onSelected
93
- }, state.categories.map(c => c.id + c.label).join())]
94
- })]
95
- }), /*#__PURE__*/_jsx(View, {
96
- style: styles.gap32
97
- }), /*#__PURE__*/_jsx(Text, {
98
- style: theme.textTheme.headlineSmall,
99
- children: traductions.categorieDefaultTitle
100
- }), /*#__PURE__*/_jsx(View, {
101
- style: styles.gap14
102
- }), /*#__PURE__*/_jsx(CategorieListeWidget, {
103
- liste: Categorie.defaultListe,
104
- defaultSelectedCategories: [],
58
+ children: /*#__PURE__*/_jsx(CategorieSelectWidget, {
59
+ canAdd: true,
60
+ editable: true,
61
+ showTitles: true,
62
+ selectionUnique: true,
63
+ selectedCategories: [],
105
64
  onSelectionChanged: onSelected
106
- })]
65
+ })
107
66
  })]
108
67
  });
109
68
  }
@@ -117,32 +76,13 @@ const styles = StyleSheet.create({
117
76
  back: {
118
77
  padding: 12
119
78
  },
120
- content: {
121
- paddingHorizontal: 12,
122
- paddingTop: 12
79
+ titre: {
80
+ paddingHorizontal: 20,
81
+ paddingBottom: 16
123
82
  },
124
- addRow: {
125
- flexDirection: 'row',
126
- alignItems: 'center',
83
+ content: {
127
84
  paddingHorizontal: 16,
128
- paddingVertical: 16,
129
- gap: 16
130
- },
131
- addIcon: {
132
- width: 45,
133
- height: 45,
134
- borderRadius: 14,
135
- alignItems: 'center',
136
- justifyContent: 'center'
137
- },
138
- divider: {
139
- paddingHorizontal: 16
140
- },
141
- gap14: {
142
- height: 14
143
- },
144
- gap32: {
145
- height: 32
85
+ paddingBottom: 20
146
86
  }
147
87
  });
148
88
  //# sourceMappingURL=categorie_select_page.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MaterialIcons","Pressable","ScrollView","StyleSheet","Text","View","useSafeAreaInsets","useBloc","useBlocBuilder","useBlocListener","AppRouter","useAppRouter","Themer","useTheme","useAppLocalizations","Card","Divider","Categorie","CategorieBloc","CategorieAddEvent","CategorieListEvent","CategorieCreationState","CategorieEditState","CategorieInitialState","CategorieListeWidget","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","CategorieSelectPage","traductions","theme","router","insets","categorieBloc","state","s","push","categoriesAdd","categoriesEdit","previous","current","onSelected","categorie","checked","pop","value","style","styles","flex","paddingBottom","bottom","children","backRow","accessibilityRole","hitSlop","back","onPress","add","name","size","color","colorScheme","onSurface","contentContainerStyle","content","textTheme","headlineSmall","categorieCustomTitle","gap14","addRow","addIcon","backgroundColor","surface","categorieCustomAdd","categories","length","divider","neural01Color","liste","editable","defaultSelectedCategories","onSelectionChanged","map","c","id","label","join","gap32","categorieDefaultTitle","defaultListe","create","flexDirection","padding","paddingHorizontal","paddingTop","alignItems","paddingVertical","gap","width","height","borderRadius","justifyContent"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_select_page.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MaterialIcons","Pressable","ScrollView","StyleSheet","Text","View","useSafeAreaInsets","useBloc","useBlocListener","AppRouter","useAppRouter","useTheme","useAppLocalizations","CategorieBloc","CategorieListEvent","CategorieCreationState","CategorieEditState","CategorieInitialState","CategorieSelectWidget","jsx","_jsx","jsxs","_jsxs","CategorieSelectPage","traductions","theme","router","insets","categorieBloc","s","push","categoriesAdd","categoriesEdit","previous","current","onSelected","categorie","checked","pop","value","style","styles","flex","paddingBottom","bottom","children","backRow","accessibilityRole","hitSlop","back","onPress","add","name","size","color","colorScheme","onSurface","textTheme","headlineLarge","titre","categorieSelectionUniqueTitle","contentContainerStyle","content","canAdd","editable","showTitles","selectionUnique","selectedCategories","onSelectionChanged","create","flexDirection","padding","paddingHorizontal"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_select_page.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,39 +1,76 @@
1
1
  "use strict";
2
2
 
3
- import { StyleSheet, View } from 'react-native';
3
+ import { StyleSheet, Text, View } from 'react-native';
4
4
  import { useBloc, useBlocBuilder } from "../../../../core/bloc_react.js";
5
+ import { Themer, useTheme } from "../../../../core/theme.js";
6
+ import { useAppLocalizations } from "../../../../l10n/localizations.js";
7
+ import { SelectionOption } from "../../../../shared/widgets/selection.js";
5
8
  import { Categorie } from "../../domain/models/categorie.js";
6
9
  import { CategorieBloc } from "../bloc/categorie_bloc.js";
10
+ import { CategorieAddEvent } from "../bloc/categorie_event.js";
7
11
  import { CategorieListeWidget } from "./categorie_liste_widget.js";
8
12
 
9
- /** Sélection de catégories (personnalisées puis prédéfinies), utilisée par les filtres. */
10
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
+ /**
14
+ * Catégories personnalisées (avec ajout et modification si demandé) puis
15
+ * catégories par défaut ; utilisée par la page de choix et les filtres.
16
+ */
17
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
18
  export function CategorieSelectWidget({
12
19
  onSelectionChanged,
13
- selectedCategories
20
+ selectedCategories,
21
+ editable = false,
22
+ canAdd = false,
23
+ showTitles = false,
24
+ selectionUnique = false
14
25
  }) {
26
+ const traductions = useAppLocalizations();
27
+ const theme = useTheme();
15
28
  const categorieBloc = useBloc(CategorieBloc);
16
29
  const state = useBlocBuilder(categorieBloc);
30
+ const personnalisees = canAdd || state.categories.length > 0;
31
+ const titre = texte => /*#__PURE__*/_jsx(Text, {
32
+ style: [theme.textTheme.displayMedium, styles.titre, {
33
+ color: Themer.neural03Color
34
+ }],
35
+ children: texte
36
+ });
17
37
  return /*#__PURE__*/_jsxs(View, {
18
- children: [state.categories.length > 0 && /*#__PURE__*/_jsxs(_Fragment, {
19
- children: [/*#__PURE__*/_jsx(CategorieListeWidget, {
20
- liste: state.categories,
21
- editable: false,
22
- defaultSelectedCategories: selectedCategories,
23
- onSelectionChanged: onSelectionChanged
24
- }), /*#__PURE__*/_jsx(View, {
25
- style: styles.gap16
26
- })]
27
- }), /*#__PURE__*/_jsx(CategorieListeWidget, {
38
+ children: [showTitles && personnalisees && titre(traductions.categorieCustomTitle), canAdd && /*#__PURE__*/_jsx(View, {
39
+ style: styles.ajout,
40
+ children: /*#__PURE__*/_jsx(SelectionOption, {
41
+ icone: "add",
42
+ titre: traductions.categorieCustomAdd,
43
+ onPress: () => categorieBloc.add(new CategorieAddEvent())
44
+ })
45
+ }), state.categories.length > 0 && /*#__PURE__*/_jsx(CategorieListeWidget
46
+ // Nouvelle liste quand une catégorie est ajoutée ou renommée
47
+ , {
48
+ liste: state.categories,
49
+ editable: editable,
50
+ selectionUnique: selectionUnique,
51
+ defaultSelectedCategories: selectedCategories,
52
+ onSelectionChanged: onSelectionChanged
53
+ }, state.categories.map(c => c.id + c.label).join()), personnalisees && /*#__PURE__*/_jsx(View, {
54
+ style: styles.gap24
55
+ }), showTitles && titre(traductions.categorieDefaultTitle), /*#__PURE__*/_jsx(CategorieListeWidget, {
28
56
  liste: Categorie.defaultListe,
57
+ selectionUnique: selectionUnique,
29
58
  defaultSelectedCategories: selectedCategories,
30
59
  onSelectionChanged: onSelectionChanged
31
60
  })]
32
61
  });
33
62
  }
34
63
  const styles = StyleSheet.create({
35
- gap16: {
36
- height: 16
64
+ titre: {
65
+ fontWeight: '700',
66
+ paddingHorizontal: 4,
67
+ paddingBottom: 10
68
+ },
69
+ ajout: {
70
+ marginBottom: 10
71
+ },
72
+ gap24: {
73
+ height: 24
37
74
  }
38
75
  });
39
76
  //# sourceMappingURL=categorie_select_widget.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","View","useBloc","useBlocBuilder","Categorie","CategorieBloc","CategorieListeWidget","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CategorieSelectWidget","onSelectionChanged","selectedCategories","categorieBloc","state","children","categories","length","liste","editable","defaultSelectedCategories","style","styles","gap16","defaultListe","create","height"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_select_widget.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAE/C,SAASC,OAAO,EAAEC,cAAc,QAAQ,gCAA6B;AACrE,SAASC,SAAS,QAAQ,kCAA+B;AACzD,SAASC,aAAa,QAAQ,2BAAwB;AACtD,SAASC,oBAAoB,QAAQ,6BAA0B;;AAE/D;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,OAAO,SAASC,qBAAqBA,CAAC;EACpCC,kBAAkB;EAClBC;AAIF,CAAC,EAAE;EACD,MAAMC,aAAa,GAAGd,OAAO,CAACG,aAAa,CAAC;EAC5C,MAAMY,KAAK,GAAGd,cAAc,CAACa,aAAa,CAAC;EAC3C,oBACEJ,KAAA,CAACX,IAAI;IAAAiB,QAAA,GAEFD,KAAK,CAACE,UAAU,CAACC,MAAM,GAAG,CAAC,iBAC1BR,KAAA,CAAAF,SAAA;MAAAQ,QAAA,gBACEV,IAAA,CAACF,oBAAoB;QACnBe,KAAK,EAAEJ,KAAK,CAACE,UAAW;QACxBG,QAAQ,EAAE,KAAM;QAChBC,yBAAyB,EAAER,kBAAmB;QAC9CD,kBAAkB,EAAEA;MAAmB,CACxC,CAAC,eACFN,IAAA,CAACP,IAAI;QAACuB,KAAK,EAAEC,MAAM,CAACC;MAAM,CAAE,CAAC;IAAA,CAC7B,CACH,eAEDlB,IAAA,CAACF,oBAAoB;MACnBe,KAAK,EAAEjB,SAAS,CAACuB,YAAa;MAC9BJ,yBAAyB,EAAER,kBAAmB;MAC9CD,kBAAkB,EAAEA;IAAmB,CACxC,CAAC;EAAA,CACE,CAAC;AAEX;AAEA,MAAMW,MAAM,GAAGzB,UAAU,CAAC4B,MAAM,CAAC;EAAEF,KAAK,EAAE;IAAEG,MAAM,EAAE;EAAG;AAAE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","Text","View","useBloc","useBlocBuilder","Themer","useTheme","useAppLocalizations","SelectionOption","Categorie","CategorieBloc","CategorieAddEvent","CategorieListeWidget","jsx","_jsx","jsxs","_jsxs","CategorieSelectWidget","onSelectionChanged","selectedCategories","editable","canAdd","showTitles","selectionUnique","traductions","theme","categorieBloc","state","personnalisees","categories","length","titre","texte","style","textTheme","displayMedium","styles","color","neural03Color","children","categorieCustomTitle","ajout","icone","categorieCustomAdd","onPress","add","liste","defaultSelectedCategories","map","c","id","label","join","gap24","categorieDefaultTitle","defaultListe","create","fontWeight","paddingHorizontal","paddingBottom","marginBottom","height"],"sourceRoot":"../../../../../../src","sources":["modules/categorie/presentation/pages/categorie_select_widget.tsx"],"mappings":"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","ignoreList":[]}
@@ -32,6 +32,8 @@ export let ConfigKey = /*#__PURE__*/function (ConfigKey) {
32
32
  ConfigKey["transactionsRecentNbItems"] = "TRANSACTIONS_RECENTS_NB";
33
33
  /** L'utilisateur a passé l'introduction du module économie */
34
34
  ConfigKey["economieIntroductionPassed"] = "ECONOMIE_INTRODUCTION_PASSED";
35
+ /** Nombre d'affichages de l'accueil où la recherche a pulsé (3 : terminé) */
36
+ ConfigKey["searchHintCount"] = "SEARCH_HINT_COUNT";
35
37
  return ConfigKey;
36
38
  }({});
37
39
 
@@ -1 +1 @@
1
- {"version":3,"names":["ConfigKey","configKeyValues","Object","values"],"sourceRoot":"../../../../../../src","sources":["modules/config/domain/models/config_keys.ts"],"mappings":";;AAAA;AACA,WAAYA,SAAS,0BAATA,SAAS;EACnB;EADUA,SAAS;EAInB;EAJUA,SAAS;EAOnB;EAPUA,SAAS;EASnB;EATUA,SAAS;EAYnB;EAZUA,SAAS;EAcnB;EAdUA,SAAS;EAgBnB;EAhBUA,SAAS;EAmBnB;EAnBUA,SAAS;EAqBnB;EArBUA,SAAS;EAwBnB;EAxBUA,SAAS;EA2BnB;EA3BUA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAkCnB;EAlCUA,SAAS;EAqCnB;EArCUA,SAAS;EAAA,OAATA,SAAS;AAAA;;AAyCrB;AACA,OAAO,MAAMC,eAAqC,GAAGC,MAAM,CAACC,MAAM,CAACH,SAAS,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["ConfigKey","configKeyValues","Object","values"],"sourceRoot":"../../../../../../src","sources":["modules/config/domain/models/config_keys.ts"],"mappings":";;AAAA;AACA,WAAYA,SAAS,0BAATA,SAAS;EACnB;EADUA,SAAS;EAInB;EAJUA,SAAS;EAOnB;EAPUA,SAAS;EASnB;EATUA,SAAS;EAYnB;EAZUA,SAAS;EAcnB;EAdUA,SAAS;EAgBnB;EAhBUA,SAAS;EAmBnB;EAnBUA,SAAS;EAqBnB;EArBUA,SAAS;EAwBnB;EAxBUA,SAAS;EA2BnB;EA3BUA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAkCnB;EAlCUA,SAAS;EAqCnB;EArCUA,SAAS;EAwCnB;EAxCUA,SAAS;EAAA,OAATA,SAAS;AAAA;;AA4CrB;AACA,OAAO,MAAMC,eAAqC,GAAGC,MAAM,CAACC,MAAM,CAACH,SAAS,CAAC","ignoreList":[]}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
 
3
- import { Logger } from "../../../core/logger.js";
4
3
  import { getAliasValue } from "./phone_contact.js";
5
4
  export class ContactPI {
6
- static logger = new Logger();
7
5
  constructor(params) {
8
6
  this.name = params.name;
9
7
  this.alias = params.alias;
@@ -21,9 +19,9 @@ export class ContactPI {
21
19
 
22
20
  /** Récupère la valeur de l'alias */
23
21
  static getAlias(contact) {
24
- const alias = getAliasValue(contact);
25
- if (alias == null) ContactPI.logger.i(`No alias found for contact ${contact.displayName}`);
26
- return alias;
22
+ // Pas de log : la plupart des contacts n'ont pas d'alias, et cette
23
+ // fonction est appelée pour chaque contact affiché
24
+ return getAliasValue(contact);
27
25
  }
28
26
  }
29
27
  //# sourceMappingURL=contact_pi.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Logger","getAliasValue","ContactPI","logger","constructor","params","name","alias","phoneNumber","fromContact","contact","displayName","phones","number","getAlias","i"],"sourceRoot":"../../../../../src","sources":["modules/contacts/domain/contact_pi.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,yBAAsB;AAC7C,SAASC,aAAa,QAA2B,oBAAiB;AAElE,OAAO,MAAMC,SAAS,CAAC;EACrB,OAAgBC,MAAM,GAAG,IAAIH,MAAM,CAAC,CAAC;EAMrCI,WAAWA,CAACC,MAAqE,EAAE;IACjF,IAAI,CAACC,IAAI,GAAGD,MAAM,CAACC,IAAI;IACvB,IAAI,CAACC,KAAK,GAAGF,MAAM,CAACE,KAAK;IACzB,IAAI,CAACC,WAAW,GAAGH,MAAM,CAACG,WAAW,IAAI,EAAE;EAC7C;;EAEA;EACA,OAAOC,WAAWA,CAACC,OAAqB,EAAa;IACnD,OAAO,IAAIR,SAAS,CAAC;MACnBI,IAAI,EAAEI,OAAO,CAACC,WAAW;MACzBH,WAAW,EAAEE,OAAO,CAACE,MAAM,CAAC,CAAC,CAAC,EAAEC,MAAM,IAAI,EAAE;MAC5CN,KAAK,EAAEL,SAAS,CAACY,QAAQ,CAACJ,OAAO;IACnC,CAAC,CAAC;EACJ;;EAEA;EACA,OAAOI,QAAQA,CAACJ,OAAqB,EAAiB;IACpD,MAAMH,KAAK,GAAGN,aAAa,CAACS,OAAO,CAAC;IACpC,IAAIH,KAAK,IAAI,IAAI,EAAEL,SAAS,CAACC,MAAM,CAACY,CAAC,CAAC,8BAA8BL,OAAO,CAACC,WAAW,EAAE,CAAC;IAC1F,OAAOJ,KAAK;EACd;AACF","ignoreList":[]}
1
+ {"version":3,"names":["getAliasValue","ContactPI","constructor","params","name","alias","phoneNumber","fromContact","contact","displayName","phones","number","getAlias"],"sourceRoot":"../../../../../src","sources":["modules/contacts/domain/contact_pi.ts"],"mappings":";;AAAA,SAASA,aAAa,QAA2B,oBAAiB;AAElE,OAAO,MAAMC,SAAS,CAAC;EAKrBC,WAAWA,CAACC,MAAqE,EAAE;IACjF,IAAI,CAACC,IAAI,GAAGD,MAAM,CAACC,IAAI;IACvB,IAAI,CAACC,KAAK,GAAGF,MAAM,CAACE,KAAK;IACzB,IAAI,CAACC,WAAW,GAAGH,MAAM,CAACG,WAAW,IAAI,EAAE;EAC7C;;EAEA;EACA,OAAOC,WAAWA,CAACC,OAAqB,EAAa;IACnD,OAAO,IAAIP,SAAS,CAAC;MACnBG,IAAI,EAAEI,OAAO,CAACC,WAAW;MACzBH,WAAW,EAAEE,OAAO,CAACE,MAAM,CAAC,CAAC,CAAC,EAAEC,MAAM,IAAI,EAAE;MAC5CN,KAAK,EAAEJ,SAAS,CAACW,QAAQ,CAACJ,OAAO;IACnC,CAAC,CAAC;EACJ;;EAEA;EACA,OAAOI,QAAQA,CAACJ,OAAqB,EAAiB;IACpD;IACA;IACA,OAAOR,aAAa,CAACQ,OAAO,CAAC;EAC/B;AACF","ignoreList":[]}
@@ -101,10 +101,13 @@ export class ContactBloc extends Bloc {
101
101
  /** Contacts dont le nom, l'alias ou un numéro contient [keyword] */
102
102
  filter(contacts, keyword) {
103
103
  const lower = keyword.toLowerCase();
104
- return contacts.filter(contact => {
105
- const alias = getAliasValue(contact);
106
- return contact.displayName.toLowerCase().includes(lower) || alias != null && alias.toLowerCase().includes(lower) || contact.phones.some(phone => phone.number.trim().replace(/ /g, '').includes(lower) || normalizedNumber(phone).includes(lower));
107
- });
104
+ return contacts.filter(contact => this.correspond(contact, lower));
105
+ }
106
+
107
+ /** [contact] correspond-il à [keyword] (en minuscules) : nom, alias ou numéro ? */
108
+ correspond(contact, keyword) {
109
+ const alias = getAliasValue(contact);
110
+ return contact.displayName.toLowerCase().includes(keyword) || alias != null && alias.toLowerCase().includes(keyword) || contact.phones.some(phone => phone.number.trim().replace(/ /g, '').includes(keyword) || normalizedNumber(phone).includes(keyword));
108
111
  }
109
112
 
110
113
  /** Vérifier si un alias existe dans la liste des contacts */
@@ -122,19 +125,32 @@ export class ContactBloc extends Bloc {
122
125
  // (AliasWidget, liste des transactions...).
123
126
  contactsByAliasSource = null;
124
127
  contactsByAliasCache = new Map();
128
+ contactsPiCache = [];
125
129
  get contactsByAlias() {
130
+ this.indexer();
131
+ return this.contactsByAliasCache;
132
+ }
133
+
134
+ /** Contacts qui ont un alias PI-SPI, dans l'ordre de la liste ; calculé avec l'index, une fois par liste */
135
+ get contactsPi() {
136
+ this.indexer();
137
+ return this.contactsPiCache;
138
+ }
139
+ indexer() {
126
140
  const contacts = this.state.contactsAll;
127
- if (contacts !== this.contactsByAliasSource) {
128
- this.contactsByAliasSource = contacts;
129
- const index = new Map();
130
- for (const contact of contacts ?? []) {
131
- const alias = getAliasValue(contact);
132
- // Premier contact trouvé pour un alias
133
- if (alias != null && !index.has(alias)) index.set(alias, contact);
134
- }
135
- this.contactsByAliasCache = index;
141
+ if (contacts === this.contactsByAliasSource) return;
142
+ this.contactsByAliasSource = contacts;
143
+ const index = new Map();
144
+ const pis = [];
145
+ for (const contact of contacts ?? []) {
146
+ const alias = getAliasValue(contact);
147
+ if (alias == null) continue;
148
+ pis.push(contact);
149
+ // Premier contact trouvé pour un alias
150
+ if (!index.has(alias)) index.set(alias, contact);
136
151
  }
137
- return this.contactsByAliasCache;
152
+ this.contactsByAliasCache = index;
153
+ this.contactsPiCache = pis;
138
154
  }
139
155
  }
140
156
  //# sourceMappingURL=contact_bloc.js.map