@nixweb/nixloc-ui 1.17.0 → 1.19.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 (288) hide show
  1. package/.github/workflows/publish-npm.yml +32 -32
  2. package/@nixweb/nixloc-ui/.github/workflows/publish-npm.yml +32 -32
  3. package/@nixweb/nixloc-ui/README.md +24 -24
  4. package/@nixweb/nixloc-ui/babel.config.js +5 -5
  5. package/@nixweb/nixloc-ui/config/dev.env.js +8 -8
  6. package/@nixweb/nixloc-ui/config/index.js +69 -69
  7. package/@nixweb/nixloc-ui/config/prod.env.js +5 -5
  8. package/@nixweb/nixloc-ui/docs/src/component/template/ViewTemplateReportPreview.drawio +209 -209
  9. package/@nixweb/nixloc-ui/docs/src/store/modulos/relatorio.drawio +36 -36
  10. package/@nixweb/nixloc-ui/package.json +88 -88
  11. package/@nixweb/nixloc-ui/public/index.html +19 -19
  12. package/@nixweb/nixloc-ui/public/styles/app.css +52 -52
  13. package/@nixweb/nixloc-ui/src/App.vue +13 -13
  14. package/@nixweb/nixloc-ui/src/component/forms/Button.vue +163 -163
  15. package/@nixweb/nixloc-ui/src/component/forms/ButtonFilter.vue +74 -74
  16. package/@nixweb/nixloc-ui/src/component/forms/ButtonGroup.vue +66 -66
  17. package/@nixweb/nixloc-ui/src/component/forms/ButtonSub.vue +97 -97
  18. package/@nixweb/nixloc-ui/src/component/forms/ButtonToggle.vue +76 -76
  19. package/@nixweb/nixloc-ui/src/component/forms/CheckboxGroup.vue +69 -69
  20. package/@nixweb/nixloc-ui/src/component/forms/CheckboxServer.vue +192 -192
  21. package/@nixweb/nixloc-ui/src/component/forms/CheckboxSimple.vue +60 -60
  22. package/@nixweb/nixloc-ui/src/component/forms/Color.vue +38 -38
  23. package/@nixweb/nixloc-ui/src/component/forms/DateTime.vue +170 -170
  24. package/@nixweb/nixloc-ui/src/component/forms/DateYearMonth.vue +193 -193
  25. package/@nixweb/nixloc-ui/src/component/forms/Dropdown.vue +236 -236
  26. package/@nixweb/nixloc-ui/src/component/forms/EditorHtml.vue +132 -132
  27. package/@nixweb/nixloc-ui/src/component/forms/FileUpload.vue +170 -170
  28. package/@nixweb/nixloc-ui/src/component/forms/ImageUpload.vue +214 -214
  29. package/@nixweb/nixloc-ui/src/component/forms/IncrementDecrement.vue +148 -148
  30. package/@nixweb/nixloc-ui/src/component/forms/InputAddressGoogle.vue +171 -171
  31. package/@nixweb/nixloc-ui/src/component/forms/InputCallToAction.vue +135 -135
  32. package/@nixweb/nixloc-ui/src/component/forms/InputDecimal.vue +153 -153
  33. package/@nixweb/nixloc-ui/src/component/forms/InputDecimalDiscount.vue +77 -77
  34. package/@nixweb/nixloc-ui/src/component/forms/InputNumber.vue +160 -160
  35. package/@nixweb/nixloc-ui/src/component/forms/InputPassword.vue +148 -148
  36. package/@nixweb/nixloc-ui/src/component/forms/InputTag.vue +124 -124
  37. package/@nixweb/nixloc-ui/src/component/forms/InputText.vue +174 -174
  38. package/@nixweb/nixloc-ui/src/component/forms/InputTextEdit.vue +69 -69
  39. package/@nixweb/nixloc-ui/src/component/forms/InputWhatsApp.vue +47 -47
  40. package/@nixweb/nixloc-ui/src/component/forms/Modal.vue +57 -57
  41. package/@nixweb/nixloc-ui/src/component/forms/RadioGroup.vue +91 -91
  42. package/@nixweb/nixloc-ui/src/component/forms/Select.vue +378 -378
  43. package/@nixweb/nixloc-ui/src/component/forms/SelectStatic.vue +198 -198
  44. package/@nixweb/nixloc-ui/src/component/forms/SideBar.vue +99 -99
  45. package/@nixweb/nixloc-ui/src/component/forms/Slider.vue +18 -18
  46. package/@nixweb/nixloc-ui/src/component/forms/TextArea.vue +138 -138
  47. package/@nixweb/nixloc-ui/src/component/forms/Toggle.vue +72 -72
  48. package/@nixweb/nixloc-ui/src/component/layout/Account.vue +131 -131
  49. package/@nixweb/nixloc-ui/src/component/layout/Alert.vue +88 -88
  50. package/@nixweb/nixloc-ui/src/component/layout/Badge.vue +111 -111
  51. package/@nixweb/nixloc-ui/src/component/layout/BarFloating.vue +67 -67
  52. package/@nixweb/nixloc-ui/src/component/layout/FixedBar.vue +103 -103
  53. package/@nixweb/nixloc-ui/src/component/layout/Gantt.vue +128 -128
  54. package/@nixweb/nixloc-ui/src/component/layout/Header.vue +56 -56
  55. package/@nixweb/nixloc-ui/src/component/layout/HideShow.vue +61 -61
  56. package/@nixweb/nixloc-ui/src/component/layout/IconMolded.vue +58 -58
  57. package/@nixweb/nixloc-ui/src/component/layout/LoadingFullPage.vue +27 -27
  58. package/@nixweb/nixloc-ui/src/component/layout/Menu.vue +287 -287
  59. package/@nixweb/nixloc-ui/src/component/layout/Molded.vue +30 -30
  60. package/@nixweb/nixloc-ui/src/component/layout/NewAccount.vue +136 -136
  61. package/@nixweb/nixloc-ui/src/component/layout/NewHeader.vue +59 -59
  62. package/@nixweb/nixloc-ui/src/component/layout/NewIconMolded.vue +70 -70
  63. package/@nixweb/nixloc-ui/src/component/layout/NewMenu.vue +455 -455
  64. package/@nixweb/nixloc-ui/src/component/layout/Panel.vue +185 -185
  65. package/@nixweb/nixloc-ui/src/component/layout/Popover.vue +126 -126
  66. package/@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue +57 -57
  67. package/@nixweb/nixloc-ui/src/component/layout/Tab.vue +135 -135
  68. package/@nixweb/nixloc-ui/src/component/layout/Tag.vue +97 -97
  69. package/@nixweb/nixloc-ui/src/component/layout/Wizard.vue +211 -211
  70. package/@nixweb/nixloc-ui/src/component/rental/DisplayCalculatePeriod.vue +48 -48
  71. package/@nixweb/nixloc-ui/src/component/rental/DisplayPeriodRent.vue +55 -55
  72. package/@nixweb/nixloc-ui/src/component/rental/DisplayTotalization.vue +86 -86
  73. package/@nixweb/nixloc-ui/src/component/report/Fields.vue +108 -108
  74. package/@nixweb/nixloc-ui/src/component/report/Report.vue +313 -313
  75. package/@nixweb/nixloc-ui/src/component/report/ReportTable.vue +111 -111
  76. package/@nixweb/nixloc-ui/src/component/report/Totalization.vue +33 -33
  77. package/@nixweb/nixloc-ui/src/component/shared/CodeEditor.vue +128 -128
  78. package/@nixweb/nixloc-ui/src/component/shared/Collapse.vue +131 -131
  79. package/@nixweb/nixloc-ui/src/component/shared/Confirmation.vue +74 -74
  80. package/@nixweb/nixloc-ui/src/component/shared/DocumentEditor.vue +99 -99
  81. package/@nixweb/nixloc-ui/src/component/shared/DocumentPreview.vue +81 -81
  82. package/@nixweb/nixloc-ui/src/component/shared/DocumentPublic.vue +33 -33
  83. package/@nixweb/nixloc-ui/src/component/shared/ExportExcel.vue +56 -56
  84. package/@nixweb/nixloc-ui/src/component/shared/ExportPDF.vue +116 -116
  85. package/@nixweb/nixloc-ui/src/component/shared/FullCalendar.vue +173 -173
  86. package/@nixweb/nixloc-ui/src/component/shared/HeaderReport.vue +47 -47
  87. package/@nixweb/nixloc-ui/src/component/shared/HorizontalFilter.vue +64 -64
  88. package/@nixweb/nixloc-ui/src/component/shared/ListNotifications.vue +70 -70
  89. package/@nixweb/nixloc-ui/src/component/shared/Loading.vue +107 -107
  90. package/@nixweb/nixloc-ui/src/component/shared/LoadingCard.vue +64 -64
  91. package/@nixweb/nixloc-ui/src/component/shared/LoadingMoreButton.vue +23 -23
  92. package/@nixweb/nixloc-ui/src/component/shared/Messages.vue +109 -109
  93. package/@nixweb/nixloc-ui/src/component/shared/PDFViewer.vue +24 -24
  94. package/@nixweb/nixloc-ui/src/component/shared/Pagination.vue +108 -108
  95. package/@nixweb/nixloc-ui/src/component/shared/ParameterLegend.vue +169 -169
  96. package/@nixweb/nixloc-ui/src/component/shared/ProgressBar.vue +25 -25
  97. package/@nixweb/nixloc-ui/src/component/shared/QueryButton.vue +66 -66
  98. package/@nixweb/nixloc-ui/src/component/shared/Report.vue +200 -200
  99. package/@nixweb/nixloc-ui/src/component/shared/SaveCancel.vue +99 -99
  100. package/@nixweb/nixloc-ui/src/component/shared/Search.vue +174 -174
  101. package/@nixweb/nixloc-ui/src/component/shared/SelectOption.vue +162 -162
  102. package/@nixweb/nixloc-ui/src/component/shared/Table.vue +174 -174
  103. package/@nixweb/nixloc-ui/src/component/shared/TableButton.vue +36 -36
  104. package/@nixweb/nixloc-ui/src/component/shared/TableDraggable.vue +117 -117
  105. package/@nixweb/nixloc-ui/src/component/shared/TableImport.vue +93 -93
  106. package/@nixweb/nixloc-ui/src/component/shared/TableItem.vue +214 -214
  107. package/@nixweb/nixloc-ui/src/component/shared/TableTotalPerPage.vue +77 -77
  108. package/@nixweb/nixloc-ui/src/component/shared/TableTotalRecords.vue +44 -44
  109. package/@nixweb/nixloc-ui/src/component/shared/TableTotalization.vue +47 -47
  110. package/@nixweb/nixloc-ui/src/component/shared/TimeLine.vue +41 -41
  111. package/@nixweb/nixloc-ui/src/component/shared/Timer.vue +77 -77
  112. package/@nixweb/nixloc-ui/src/component/shared/Tip.vue +42 -42
  113. package/@nixweb/nixloc-ui/src/component/shared/Toast.vue +69 -69
  114. package/@nixweb/nixloc-ui/src/component/shared/ToggleTheme.vue +127 -127
  115. package/@nixweb/nixloc-ui/src/component/shared/TotalizationReport.vue +86 -86
  116. package/@nixweb/nixloc-ui/src/component/shared/VerticalFilter.vue +97 -97
  117. package/@nixweb/nixloc-ui/src/component/shared/automation/ActivitiesList.vue +43 -43
  118. package/@nixweb/nixloc-ui/src/component/shared/automation/AddRule.vue +60 -60
  119. package/@nixweb/nixloc-ui/src/component/shared/automation/AutomationBuilder.vue +26 -26
  120. package/@nixweb/nixloc-ui/src/component/shared/automation/DynamicComponentList.vue +85 -85
  121. package/@nixweb/nixloc-ui/src/component/shared/automation/SelectRule.vue +97 -97
  122. package/@nixweb/nixloc-ui/src/component/shared/automation/components/BillingByRent.vue +97 -97
  123. package/@nixweb/nixloc-ui/src/component/shared/automation/components/SendEmail.vue +93 -93
  124. package/@nixweb/nixloc-ui/src/component/shared/file-manager/FileManager.vue +390 -390
  125. package/@nixweb/nixloc-ui/src/component/shared/filter-builder/FilterBuilder.vue +220 -220
  126. package/@nixweb/nixloc-ui/src/component/shared/filter-builder/FilterQuery.vue +94 -94
  127. package/@nixweb/nixloc-ui/src/component/shared/query-builder/AddRule.vue +203 -203
  128. package/@nixweb/nixloc-ui/src/component/shared/query-builder/ConvertToOdata.js +86 -86
  129. package/@nixweb/nixloc-ui/src/component/shared/query-builder/DynamicComponent.vue +161 -161
  130. package/@nixweb/nixloc-ui/src/component/shared/query-builder/DynamicComponentList.vue +70 -70
  131. package/@nixweb/nixloc-ui/src/component/shared/query-builder/Fields.vue +93 -93
  132. package/@nixweb/nixloc-ui/src/component/shared/query-builder/QueryBuilder.vue +69 -69
  133. package/@nixweb/nixloc-ui/src/component/shared/query-builder/Rules.vue +68 -68
  134. package/@nixweb/nixloc-ui/src/component/shared/query-builder/SelectRule.vue +97 -97
  135. package/@nixweb/nixloc-ui/src/component/shared/query-builder/Tags.vue +59 -59
  136. package/@nixweb/nixloc-ui/src/component/shared/query-builder/utilities.js +21 -21
  137. package/@nixweb/nixloc-ui/src/component/signature/Payment.vue +160 -160
  138. package/@nixweb/nixloc-ui/src/component/signature/Warning.vue +75 -75
  139. package/@nixweb/nixloc-ui/src/component/template/ListViewWithDataHandler.vue +429 -429
  140. package/@nixweb/nixloc-ui/src/component/template/ReportCreateUpdate.vue +110 -110
  141. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateConfiguration.vue +64 -64
  142. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateDocumentView.vue +213 -213
  143. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateImportFile.vue +347 -347
  144. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateReportList.vue +217 -217
  145. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateReportPreview.vue +432 -432
  146. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateSelectOption.vue +46 -46
  147. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateWithSalveCancel.vue +32 -32
  148. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateWithTable.vue +62 -62
  149. package/@nixweb/nixloc-ui/src/component/template/model/Report.js +5 -5
  150. package/@nixweb/nixloc-ui/src/component/training/Course.vue +343 -343
  151. package/@nixweb/nixloc-ui/src/component/training/CourseView.vue +189 -189
  152. package/@nixweb/nixloc-ui/src/component/value-objects/Address.js +10 -10
  153. package/@nixweb/nixloc-ui/src/component/value-objects/Address.vue +157 -157
  154. package/@nixweb/nixloc-ui/src/component/value-objects/Contact.js +6 -6
  155. package/@nixweb/nixloc-ui/src/component/value-objects/Contact.vue +106 -106
  156. package/@nixweb/nixloc-ui/src/component/value-objects/Person.js +10 -10
  157. package/@nixweb/nixloc-ui/src/component/value-objects/Person.vue +129 -129
  158. package/@nixweb/nixloc-ui/src/config/axios.js +9 -9
  159. package/@nixweb/nixloc-ui/src/config/dicas.js +14 -14
  160. package/@nixweb/nixloc-ui/src/config/router.js +13 -13
  161. package/@nixweb/nixloc-ui/src/config/token.js +14 -14
  162. package/@nixweb/nixloc-ui/src/main.js +23 -23
  163. package/@nixweb/nixloc-ui/src/store/modules/automation.js +30 -30
  164. package/@nixweb/nixloc-ui/src/store/modules/generic.js +815 -815
  165. package/@nixweb/nixloc-ui/src/store/modules/report.js +277 -277
  166. package/@nixweb/nixloc-ui/src/store/modules/user.js +66 -66
  167. package/@nixweb/nixloc-ui/src/store/modules/util.js +25 -25
  168. package/@nixweb/nixloc-ui/src/store/modules/validation.js +38 -38
  169. package/@nixweb/nixloc-ui/src/store/store.js +13 -13
  170. package/README.md +24 -24
  171. package/babel.config.js +5 -5
  172. package/config/dev.env.js +8 -8
  173. package/config/index.js +69 -69
  174. package/config/prod.env.js +5 -5
  175. package/docs/src/component/template/ViewTemplateReportPreview.drawio +209 -209
  176. package/docs/src/store/modulos/relatorio.drawio +36 -36
  177. package/package.json +88 -88
  178. package/public/index.html +19 -19
  179. package/public/styles/app.css +52 -52
  180. package/src/component/forms/ButtonFilter.vue +104 -104
  181. package/src/component/forms/ButtonGroup.vue +66 -66
  182. package/src/component/forms/ButtonGroupInline.vue +210 -210
  183. package/src/component/forms/ButtonSub.vue +97 -97
  184. package/src/component/forms/ButtonToggle.vue +76 -76
  185. package/src/component/forms/DateYearMonth.vue +192 -192
  186. package/src/component/forms/ImageUpload.vue +214 -214
  187. package/src/component/forms/IncrementDecrement.vue +151 -151
  188. package/src/component/forms/InputAddressGoogle.vue +171 -171
  189. package/src/component/forms/InputCallToAction.vue +135 -135
  190. package/src/component/forms/InputDecimalDiscount.vue +146 -146
  191. package/src/component/forms/InputTag.vue +124 -124
  192. package/src/component/forms/InputTextEdit.vue +69 -69
  193. package/src/component/forms/InputWhatsApp.vue +47 -47
  194. package/src/component/forms/SideBar.vue +99 -99
  195. package/src/component/forms/Toggle.vue +72 -72
  196. package/src/component/layout/Account.vue +131 -131
  197. package/src/component/layout/AnimatedPhrase.vue +68 -68
  198. package/src/component/layout/BarFloating.vue +67 -67
  199. package/src/component/layout/BottomActionsBar.vue +205 -205
  200. package/src/component/layout/ColorPicker.vue +175 -175
  201. package/src/component/layout/Gantt.vue +128 -128
  202. package/src/component/layout/HideShow.vue +61 -61
  203. package/src/component/layout/IconMolded.vue +58 -58
  204. package/src/component/layout/IconPicker.vue +161 -161
  205. package/src/component/layout/NewAccount.vue +136 -136
  206. package/src/component/layout/NewHeader.vue +59 -59
  207. package/src/component/layout/NewIconMolded.vue +70 -70
  208. package/src/component/layout/NewMenu.vue +472 -472
  209. package/src/component/layout/ScrollBar.vue +21 -8
  210. package/src/component/layout/Tab.vue +259 -259
  211. package/src/component/layout/Tag.vue +97 -97
  212. package/src/component/layout/Tooltip.vue +155 -155
  213. package/src/component/layout/Zoom.vue +111 -111
  214. package/src/component/rental/DisplayCalculatePeriod.vue +48 -48
  215. package/src/component/rental/DisplayPeriodRent.vue +55 -55
  216. package/src/component/rental/DisplayTotalization.vue +86 -86
  217. package/src/component/report/Fields.vue +108 -108
  218. package/src/component/report/Report.vue +377 -377
  219. package/src/component/report/ReportTable.vue +111 -111
  220. package/src/component/report/Totalization.vue +33 -33
  221. package/src/component/shared/CodeEditor.vue +128 -128
  222. package/src/component/shared/Confirmation.vue +74 -74
  223. package/src/component/shared/DocumentEditor.vue +99 -99
  224. package/src/component/shared/DocumentPreview.vue +105 -105
  225. package/src/component/shared/DocumentPublic.vue +33 -33
  226. package/src/component/shared/ExportExcel.vue +56 -56
  227. package/src/component/shared/FullCalendar.vue +175 -175
  228. package/src/component/shared/HeaderReport.vue +47 -47
  229. package/src/component/shared/ListNotifications.vue +70 -70
  230. package/src/component/shared/Loading.vue +4 -1
  231. package/src/component/shared/LoadingCard.vue +64 -64
  232. package/src/component/shared/ParameterLegend.vue +169 -169
  233. package/src/component/shared/Report.vue +250 -250
  234. package/src/component/shared/SaveCancel.vue +117 -99
  235. package/src/component/shared/SelectOption.vue +162 -162
  236. package/src/component/shared/TableDraggable.vue +117 -117
  237. package/src/component/shared/TableImport.vue +93 -93
  238. package/src/component/shared/TableItem.vue +228 -228
  239. package/src/component/shared/TableTotalPerPage.vue +114 -114
  240. package/src/component/shared/TableTotalRecords.vue +44 -44
  241. package/src/component/shared/TimeLine.vue +41 -41
  242. package/src/component/shared/Timer.vue +77 -77
  243. package/src/component/shared/ToggleTheme.vue +127 -127
  244. package/src/component/shared/TotalizationReport.vue +86 -86
  245. package/src/component/shared/actions/ActionButtons.vue +53 -53
  246. package/src/component/shared/actions/ActionErrorContent.vue +103 -103
  247. package/src/component/shared/actions/ActionFooter.vue +99 -93
  248. package/src/component/shared/actions/ActionHeader.vue +110 -110
  249. package/src/component/shared/actions/ActionItemList.vue +143 -143
  250. package/src/component/shared/actions/ActionsOptions.vue +209 -209
  251. package/src/component/shared/actions/ActionsSelected.vue +262 -262
  252. package/src/component/shared/automation/ActivitiesList.vue +43 -43
  253. package/src/component/shared/automation/AddRule.vue +60 -60
  254. package/src/component/shared/automation/AutomationBuilder.vue +26 -26
  255. package/src/component/shared/automation/DynamicComponentList.vue +85 -85
  256. package/src/component/shared/automation/SelectRule.vue +97 -97
  257. package/src/component/shared/automation/components/BillingByRent.vue +97 -97
  258. package/src/component/shared/automation/components/SendEmail.vue +93 -93
  259. package/src/component/shared/file-manager/FileManager.vue +390 -390
  260. package/src/component/shared/filter-builder/FilterBuilder.vue +220 -220
  261. package/src/component/shared/filter-builder/FilterQuery.vue +95 -95
  262. package/src/component/shared/query-builder/ConvertToOdata.js +86 -86
  263. package/src/component/shared/query-builder/DynamicComponent.vue +161 -161
  264. package/src/component/shared/query-builder/Fields.vue +93 -93
  265. package/src/component/shared/query-builder/Rules.vue +68 -68
  266. package/src/component/shared/query-builder/SelectRule.vue +97 -97
  267. package/src/component/shared/query-builder/Tags.vue +59 -59
  268. package/src/component/signature/Payment.vue +160 -160
  269. package/src/component/signature/Warning.vue +75 -75
  270. package/src/component/template/ReportCreateUpdate.vue +110 -110
  271. package/src/component/template/ViewTemplateDocumentView.vue +213 -213
  272. package/src/component/template/ViewTemplateImportFile.vue +347 -347
  273. package/src/component/template/ViewTemplateReportList.vue +240 -240
  274. package/src/component/template/ViewTemplateReportPreview.vue +521 -521
  275. package/src/component/template/ViewTemplateSelectOption.vue +46 -46
  276. package/src/component/template/model/Report.js +5 -5
  277. package/src/component/training/Course.vue +343 -343
  278. package/src/component/training/CourseView.vue +198 -198
  279. package/src/component/value-objects/Address.js +10 -10
  280. package/src/component/value-objects/Address.vue +173 -173
  281. package/src/component/value-objects/Contact.js +6 -6
  282. package/src/component/value-objects/Contact.vue +106 -106
  283. package/src/component/value-objects/Person.js +10 -10
  284. package/src/component/value-objects/Person.vue +130 -130
  285. package/src/store/modules/automation.js +30 -30
  286. package/src/store/modules/report.js +277 -277
  287. package/src/store/modules/user.js +69 -69
  288. package/src/store/modules/util.js +25 -25
@@ -1,62 +1,62 @@
1
- <template>
2
- <div>
3
- <div class="div-icon" :class="classCss" :style="'font-size:' + iconSize + 'px'" v-if="!show">
4
- <div class="icon-eye" @click="show = true">
5
- <i class="icon-separate fa-solid fa-circle-small"></i>
6
- <i class="icon-separate fa-solid fa-circle-small"></i>
7
- <i class="icon-separate fa-solid fa-circle-small"></i>
8
- </div>
9
- </div>
10
- <div class="div-icon" v-if="show" @click="show = false">
11
- <slot></slot>
12
- </div>
13
- </div>
14
- </template>
15
- <script>
16
- import { mapGetters } from "vuex";
17
-
18
- export default {
19
- name: "HideShow",
20
- props: {
21
- iconSize: {
22
- type: Number,
23
- default: 50,
24
- },
25
- classCss: String
26
- },
27
- data() {
28
- return {
29
- show: false,
30
- };
31
- },
32
- computed: {
33
- ...mapGetters("generic", ["event"]),
34
- },
35
- watch: {
36
- event: {
37
- handler(event) {
38
- if (event.name == "hideShow") {
39
- this.show = event.data;
40
- }
41
- },
42
- deep: true,
43
- },
44
- },
45
- };
46
- </script>
47
- <style scoped>
48
- .div-icon {
49
- display: flex;
50
- justify-content: center;
51
- align-items: center;
52
- cursor: pointer;
53
- }
54
-
55
- .icon-eye {
56
- color: #dce3e9;
57
- }
58
-
59
- .icon-separate {
60
- padding: 3px;
61
- }
1
+ <template>
2
+ <div>
3
+ <div class="div-icon" :class="classCss" :style="'font-size:' + iconSize + 'px'" v-if="!show">
4
+ <div class="icon-eye" @click="show = true">
5
+ <i class="icon-separate fa-solid fa-circle-small"></i>
6
+ <i class="icon-separate fa-solid fa-circle-small"></i>
7
+ <i class="icon-separate fa-solid fa-circle-small"></i>
8
+ </div>
9
+ </div>
10
+ <div class="div-icon" v-if="show" @click="show = false">
11
+ <slot></slot>
12
+ </div>
13
+ </div>
14
+ </template>
15
+ <script>
16
+ import { mapGetters } from "vuex";
17
+
18
+ export default {
19
+ name: "HideShow",
20
+ props: {
21
+ iconSize: {
22
+ type: Number,
23
+ default: 50,
24
+ },
25
+ classCss: String
26
+ },
27
+ data() {
28
+ return {
29
+ show: false,
30
+ };
31
+ },
32
+ computed: {
33
+ ...mapGetters("generic", ["event"]),
34
+ },
35
+ watch: {
36
+ event: {
37
+ handler(event) {
38
+ if (event.name == "hideShow") {
39
+ this.show = event.data;
40
+ }
41
+ },
42
+ deep: true,
43
+ },
44
+ },
45
+ };
46
+ </script>
47
+ <style scoped>
48
+ .div-icon {
49
+ display: flex;
50
+ justify-content: center;
51
+ align-items: center;
52
+ cursor: pointer;
53
+ }
54
+
55
+ .icon-eye {
56
+ color: #dce3e9;
57
+ }
58
+
59
+ .icon-separate {
60
+ padding: 3px;
61
+ }
62
62
  </style>
@@ -1,59 +1,59 @@
1
- <template>
2
- <div>
3
- <div v-for="icon in icons" class="molded-icon side-by-side" @click="executeEvent(icon.eventName)" v-b-tooltip.hover
4
- :title="icon.tooltip">
5
- <div class="icon-molded-icon" :class="{
6
- 'icon-active-top': menuActive == icon.module,
7
- 'icon-normal-top': menuActive != icon.module,
8
- }">
9
- <i :class="icon.icon"></i>
10
- </div>
11
- </div>
12
- </div>
13
- </template>
14
-
15
- <script>
16
- import { mapMutations } from "vuex";
17
-
18
- export default {
19
- name: "IconMolded",
20
- props: {
21
- icons: Array,
22
- },
23
- data() {
24
- return { menuActive: "" };
25
- },
26
- methods: {
27
- ...mapMutations("generic", ["addEvent"]),
28
- executeEvent(eventName) {
29
- this.addEvent({
30
- name: eventName,
31
- });
32
- },
33
- },
34
- watch: {
35
- $route: {
36
- handler: function (router) {
37
- this.menuActive = router.matched[0].props.default.module;
38
- },
39
- deep: true,
40
- },
41
- },
42
- };
43
- </script>
44
-
45
- <style scoped>
46
- .molded-icon {
47
- height: 38px;
48
- width: 38px;
49
- margin-left: 10px;
50
- margin-top: 4px;
51
- cursor: pointer;
52
- }
53
-
54
- .icon-molded-icon {
55
- font-size: 20px;
56
- margin-left: 10px;
57
- color: white;
58
- }
1
+ <template>
2
+ <div>
3
+ <div v-for="icon in icons" class="molded-icon side-by-side" @click="executeEvent(icon.eventName)" v-b-tooltip.hover
4
+ :title="icon.tooltip">
5
+ <div class="icon-molded-icon" :class="{
6
+ 'icon-active-top': menuActive == icon.module,
7
+ 'icon-normal-top': menuActive != icon.module,
8
+ }">
9
+ <i :class="icon.icon"></i>
10
+ </div>
11
+ </div>
12
+ </div>
13
+ </template>
14
+
15
+ <script>
16
+ import { mapMutations } from "vuex";
17
+
18
+ export default {
19
+ name: "IconMolded",
20
+ props: {
21
+ icons: Array,
22
+ },
23
+ data() {
24
+ return { menuActive: "" };
25
+ },
26
+ methods: {
27
+ ...mapMutations("generic", ["addEvent"]),
28
+ executeEvent(eventName) {
29
+ this.addEvent({
30
+ name: eventName,
31
+ });
32
+ },
33
+ },
34
+ watch: {
35
+ $route: {
36
+ handler: function (router) {
37
+ this.menuActive = router.matched[0].props.default.module;
38
+ },
39
+ deep: true,
40
+ },
41
+ },
42
+ };
43
+ </script>
44
+
45
+ <style scoped>
46
+ .molded-icon {
47
+ height: 38px;
48
+ width: 38px;
49
+ margin-left: 10px;
50
+ margin-top: 4px;
51
+ cursor: pointer;
52
+ }
53
+
54
+ .icon-molded-icon {
55
+ font-size: 20px;
56
+ margin-left: 10px;
57
+ color: white;
58
+ }
59
59
  </style>
@@ -1,161 +1,161 @@
1
- <template>
2
- <div class="icon-picker" ref="root">
3
- <div v-if="title" class="icon-picker__title">{{ title }}</div>
4
-
5
- <div class="icon-picker__trigger" :style="{ backgroundColor: color }" role="button" tabindex="0"
6
- @click="toggle()" @keydown.enter.prevent="toggle()" @keydown.space.prevent="toggle()"
7
- aria-haspopup="listbox" :aria-expanded="open ? 'true' : 'false'">
8
- <i :class="innerValue || 'far fa-square'"></i>
9
- </div>
10
-
11
- <transition name="icon-picker--fade">
12
- <div v-show="open" class="icon-picker__menu" role="listbox" :aria-label="title || 'Escolher ícone'">
13
- <div class="icon-picker__grid">
14
- <div v-for="ic in icons" :key="ic" class="icon-picker__item"
15
- :class="{ 'icon-picker__item--selected': ic === innerValue }" role="option"
16
- :aria-selected="ic === innerValue ? 'true' : 'false'" tabindex="0" @click="choose(ic)"
17
- @keydown.enter.prevent="choose(ic)" @keydown.space.prevent="choose(ic)"
18
- :style="ic === innerValue ? { backgroundColor: color } : {}">
19
- <i :class="ic"></i>
20
- </div>
21
- </div>
22
- </div>
23
- </transition>
24
- </div>
25
- </template>
26
-
27
- <script>
28
- export default {
29
- name: "IconPicker",
30
- model: { prop: "value", event: "input" },
31
- props: {
32
- value: { type: String, default: "fas fa-wallet" },
33
- title: { type: String, default: "" },
34
- color: { type: String, default: "#64B5F6" },
35
- icons: {
36
- type: Array,
37
- default: function () {
38
- return [
39
- "fas fa-wallet", "fas fa-cash-register", "fas fa-shopping-cart", "fas fa-receipt", "fas fa-credit-card", "fas fa-money-bill", "fas fa-coins", "fas fa-percentage", "fas fa-dollar-sign", "fas fa-file-invoice", "fas fa-chart-line",
40
- "fas fa-box-open", "fas fa-box", "fas fa-truck", "fas fa-warehouse", "fas fa-shipping-fast", "fas fa-dolly", "fas fa-pallet", "fas fa-trailer", "fas fa-clipboard-list",
41
- "fas fa-building", "fas fa-city", "fas fa-home", "fas fa-briefcase", "fas fa-sitemap", "fas fa-industry", "fas fa-store", "fas fa-store-alt", "fas fa-landmark", "fas fa-hotel",
42
- "fas fa-users", "fas fa-user-tie", "fas fa-user", "fas fa-user-friends", "fas fa-user-cog", "fas fa-user-shield", "fas fa-user-circle", "fas fa-id-badge", "fas fa-id-card",
43
- "fas fa-cogs", "fas fa-tools", "fas fa-desktop", "fas fa-laptop", "fas fa-server", "fas fa-database", "fas fa-cloud", "fas fa-network-wired", "fas fa-microchip", "fas fa-robot",
44
- "fas fa-shield-alt", "fas fa-lock", "fas fa-balance-scale", "fas fa-file-contract", "fas fa-gavel", "fas fa-passport", "fas fa-clipboard-check",
45
- "fas fa-bullhorn", "fas fa-ad", "fas fa-mail-bulk", "fas fa-envelope", "fas fa-comments", "fas fa-headset", "fas fa-phone-alt", "fas fa-share-alt", "fas fa-at",
46
- "fas fa-graduation-cap", "fas fa-book", "fas fa-book-open", "fas fa-chalkboard-teacher", "fas fa-lightbulb", "fas fa-brain", "fas fa-project-diagram",
47
- "fas fa-car", "fas fa-gas-pump", "fas fa-utensils", "fas fa-coffee", "fas fa-gift", "fas fa-tag", "fas fa-leaf", "fas fa-seedling", "fas fa-heart", "fas fa-music", "fas fa-paw", "fas fa-plane"
48
- ];
49
- },
50
- },
51
- },
52
- data() {
53
- return {
54
- innerValue: this.value || "",
55
- open: false,
56
- };
57
- },
58
- watch: {
59
- value(v) { this.innerValue = v; }
60
- },
61
- mounted() {
62
- document.addEventListener("click", this.onClickOutside, { passive: true });
63
- },
64
- beforeDestroy() {
65
- document.removeEventListener("click", this.onClickOutside);
66
- },
67
- methods: {
68
- toggle() { this.open = !this.open; },
69
- close() { this.open = false; },
70
- choose(ic) {
71
- this.innerValue = ic;
72
- this.$emit("input", ic);
73
- this.close();
74
- },
75
- onClickOutside(e) {
76
- const root = this.$refs.root;
77
- if (this.open && root && !root.contains(e.target)) this.close();
78
- }
79
- }
80
- };
81
- </script>
82
-
83
- <style scoped>
84
- .icon-picker {
85
- position: relative;
86
- display: inline-grid;
87
- gap: .375rem;
88
- margin-bottom: 10px;
89
- }
90
-
91
- .icon-picker__title {
92
- font-weight: 500;
93
- }
94
-
95
- .icon-picker__trigger {
96
- width: 56px;
97
- height: 56px;
98
- border-radius: 50%;
99
- display: grid;
100
- place-items: center;
101
- cursor: pointer;
102
- user-select: none;
103
- }
104
-
105
- .icon-picker__trigger i {
106
- font-size: 22px;
107
- color: #fff;
108
- }
109
-
110
- .icon-picker__menu {
111
- position: absolute;
112
- z-index: 40;
113
- top: calc(100% + 8px);
114
- left: 0;
115
- width: 540px;
116
- height: 320px;
117
- overflow-y: auto;
118
- background: #fff;
119
- border: 1px solid #e5e7eb;
120
- border-radius: 10px;
121
- box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
122
- padding: .5rem .5rem .6rem;
123
- }
124
-
125
- .icon-picker__grid {
126
- display: grid;
127
- grid-template-columns: repeat(12, 36px);
128
- gap: .5rem;
129
- justify-content: start;
130
- }
131
-
132
- .icon-picker__item {
133
- width: 36px;
134
- height: 36px;
135
- border-radius: 50%;
136
- background: #f3f4f6;
137
- display: grid;
138
- place-items: center;
139
- cursor: pointer;
140
- }
141
-
142
- .icon-picker__item i {
143
- font-size: 14px;
144
- color: #6b7280;
145
- }
146
-
147
- .icon-picker__item--selected i {
148
- color: #fff;
149
- }
150
-
151
- .icon-picker--fade-enter-active,
152
- .icon-picker--fade-leave-active {
153
- transition: all .14s ease;
154
- }
155
-
156
- .icon-picker--fade-enter,
157
- .icon-picker--fade-leave-to {
158
- opacity: 0;
159
- transform: translateY(-4px) scale(.98);
160
- }
161
- </style>
1
+ <template>
2
+ <div class="icon-picker" ref="root">
3
+ <div v-if="title" class="icon-picker__title">{{ title }}</div>
4
+
5
+ <div class="icon-picker__trigger" :style="{ backgroundColor: color }" role="button" tabindex="0"
6
+ @click="toggle()" @keydown.enter.prevent="toggle()" @keydown.space.prevent="toggle()"
7
+ aria-haspopup="listbox" :aria-expanded="open ? 'true' : 'false'">
8
+ <i :class="innerValue || 'far fa-square'"></i>
9
+ </div>
10
+
11
+ <transition name="icon-picker--fade">
12
+ <div v-show="open" class="icon-picker__menu" role="listbox" :aria-label="title || 'Escolher ícone'">
13
+ <div class="icon-picker__grid">
14
+ <div v-for="ic in icons" :key="ic" class="icon-picker__item"
15
+ :class="{ 'icon-picker__item--selected': ic === innerValue }" role="option"
16
+ :aria-selected="ic === innerValue ? 'true' : 'false'" tabindex="0" @click="choose(ic)"
17
+ @keydown.enter.prevent="choose(ic)" @keydown.space.prevent="choose(ic)"
18
+ :style="ic === innerValue ? { backgroundColor: color } : {}">
19
+ <i :class="ic"></i>
20
+ </div>
21
+ </div>
22
+ </div>
23
+ </transition>
24
+ </div>
25
+ </template>
26
+
27
+ <script>
28
+ export default {
29
+ name: "IconPicker",
30
+ model: { prop: "value", event: "input" },
31
+ props: {
32
+ value: { type: String, default: "fas fa-wallet" },
33
+ title: { type: String, default: "" },
34
+ color: { type: String, default: "#64B5F6" },
35
+ icons: {
36
+ type: Array,
37
+ default: function () {
38
+ return [
39
+ "fas fa-wallet", "fas fa-cash-register", "fas fa-shopping-cart", "fas fa-receipt", "fas fa-credit-card", "fas fa-money-bill", "fas fa-coins", "fas fa-percentage", "fas fa-dollar-sign", "fas fa-file-invoice", "fas fa-chart-line",
40
+ "fas fa-box-open", "fas fa-box", "fas fa-truck", "fas fa-warehouse", "fas fa-shipping-fast", "fas fa-dolly", "fas fa-pallet", "fas fa-trailer", "fas fa-clipboard-list",
41
+ "fas fa-building", "fas fa-city", "fas fa-home", "fas fa-briefcase", "fas fa-sitemap", "fas fa-industry", "fas fa-store", "fas fa-store-alt", "fas fa-landmark", "fas fa-hotel",
42
+ "fas fa-users", "fas fa-user-tie", "fas fa-user", "fas fa-user-friends", "fas fa-user-cog", "fas fa-user-shield", "fas fa-user-circle", "fas fa-id-badge", "fas fa-id-card",
43
+ "fas fa-cogs", "fas fa-tools", "fas fa-desktop", "fas fa-laptop", "fas fa-server", "fas fa-database", "fas fa-cloud", "fas fa-network-wired", "fas fa-microchip", "fas fa-robot",
44
+ "fas fa-shield-alt", "fas fa-lock", "fas fa-balance-scale", "fas fa-file-contract", "fas fa-gavel", "fas fa-passport", "fas fa-clipboard-check",
45
+ "fas fa-bullhorn", "fas fa-ad", "fas fa-mail-bulk", "fas fa-envelope", "fas fa-comments", "fas fa-headset", "fas fa-phone-alt", "fas fa-share-alt", "fas fa-at",
46
+ "fas fa-graduation-cap", "fas fa-book", "fas fa-book-open", "fas fa-chalkboard-teacher", "fas fa-lightbulb", "fas fa-brain", "fas fa-project-diagram",
47
+ "fas fa-car", "fas fa-gas-pump", "fas fa-utensils", "fas fa-coffee", "fas fa-gift", "fas fa-tag", "fas fa-leaf", "fas fa-seedling", "fas fa-heart", "fas fa-music", "fas fa-paw", "fas fa-plane"
48
+ ];
49
+ },
50
+ },
51
+ },
52
+ data() {
53
+ return {
54
+ innerValue: this.value || "",
55
+ open: false,
56
+ };
57
+ },
58
+ watch: {
59
+ value(v) { this.innerValue = v; }
60
+ },
61
+ mounted() {
62
+ document.addEventListener("click", this.onClickOutside, { passive: true });
63
+ },
64
+ beforeDestroy() {
65
+ document.removeEventListener("click", this.onClickOutside);
66
+ },
67
+ methods: {
68
+ toggle() { this.open = !this.open; },
69
+ close() { this.open = false; },
70
+ choose(ic) {
71
+ this.innerValue = ic;
72
+ this.$emit("input", ic);
73
+ this.close();
74
+ },
75
+ onClickOutside(e) {
76
+ const root = this.$refs.root;
77
+ if (this.open && root && !root.contains(e.target)) this.close();
78
+ }
79
+ }
80
+ };
81
+ </script>
82
+
83
+ <style scoped>
84
+ .icon-picker {
85
+ position: relative;
86
+ display: inline-grid;
87
+ gap: .375rem;
88
+ margin-bottom: 10px;
89
+ }
90
+
91
+ .icon-picker__title {
92
+ font-weight: 500;
93
+ }
94
+
95
+ .icon-picker__trigger {
96
+ width: 56px;
97
+ height: 56px;
98
+ border-radius: 50%;
99
+ display: grid;
100
+ place-items: center;
101
+ cursor: pointer;
102
+ user-select: none;
103
+ }
104
+
105
+ .icon-picker__trigger i {
106
+ font-size: 22px;
107
+ color: #fff;
108
+ }
109
+
110
+ .icon-picker__menu {
111
+ position: absolute;
112
+ z-index: 40;
113
+ top: calc(100% + 8px);
114
+ left: 0;
115
+ width: 540px;
116
+ height: 320px;
117
+ overflow-y: auto;
118
+ background: #fff;
119
+ border: 1px solid #e5e7eb;
120
+ border-radius: 10px;
121
+ box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
122
+ padding: .5rem .5rem .6rem;
123
+ }
124
+
125
+ .icon-picker__grid {
126
+ display: grid;
127
+ grid-template-columns: repeat(12, 36px);
128
+ gap: .5rem;
129
+ justify-content: start;
130
+ }
131
+
132
+ .icon-picker__item {
133
+ width: 36px;
134
+ height: 36px;
135
+ border-radius: 50%;
136
+ background: #f3f4f6;
137
+ display: grid;
138
+ place-items: center;
139
+ cursor: pointer;
140
+ }
141
+
142
+ .icon-picker__item i {
143
+ font-size: 14px;
144
+ color: #6b7280;
145
+ }
146
+
147
+ .icon-picker__item--selected i {
148
+ color: #fff;
149
+ }
150
+
151
+ .icon-picker--fade-enter-active,
152
+ .icon-picker--fade-leave-active {
153
+ transition: all .14s ease;
154
+ }
155
+
156
+ .icon-picker--fade-enter,
157
+ .icon-picker--fade-leave-to {
158
+ opacity: 0;
159
+ transform: translateY(-4px) scale(.98);
160
+ }
161
+ </style>