@neutron.co.id/operasional-interfaces 1.14.0 → 1.14.2

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 (449) hide show
  1. package/build/@mock/index.d.ts +3 -0
  2. package/build/@mock/mock.interfaces.d.ts +15 -0
  3. package/build/@mock/mock.office.d.ts +29 -0
  4. package/build/@mock/mock.operasional.d.ts +3 -0
  5. package/build/@office/common/NeonTime/NeonTime.vue +123 -0
  6. package/build/@office/common/NeonTime/index.d.ts +1 -0
  7. package/build/@office/common/NeonTime/index.mjs +1 -0
  8. package/build/@office/common/OperasionalIdentitas/OperasionalIdentitas.vue +405 -0
  9. package/build/@office/common/OperasionalIdentitas/index.d.ts +1 -0
  10. package/build/@office/common/OperasionalIdentitas/index.mjs +1 -0
  11. package/build/@office/common/index.d.ts +3 -0
  12. package/build/@office/common/index.mjs +3 -0
  13. package/build/@office/common/providers/index.d.ts +1 -0
  14. package/build/@office/common/providers/index.mjs +1 -0
  15. package/build/@office/common/providers/operasional/attendance.store.d.ts +15 -0
  16. package/build/@office/common/providers/operasional/attendance.store.mjs +55 -0
  17. package/build/@office/common/providers/operasional/bus.d.ts +7 -0
  18. package/build/@office/common/providers/operasional/bus.mjs +3 -0
  19. package/build/@office/common/providers/operasional/index.d.ts +6 -0
  20. package/build/@office/common/providers/operasional/index.mjs +6 -0
  21. package/build/@office/common/providers/operasional/operasional.store.d.ts +2 -0
  22. package/build/@office/common/providers/operasional/operasional.store.mjs +43 -0
  23. package/build/@office/common/providers/operasional/operasional.types.d.ts +13 -0
  24. package/build/@office/common/providers/operasional/operasional.types.mjs +0 -0
  25. package/build/@office/common/providers/operasional/useOperasional.d.ts +9 -0
  26. package/build/@office/common/providers/operasional/useOperasional.mjs +7 -0
  27. package/build/@office/common/providers/operasional/withOperasional.d.ts +2 -0
  28. package/build/@office/common/providers/operasional/withOperasional.mjs +72 -0
  29. package/build/@office/common/types/index.d.ts +3 -0
  30. package/build/@office/common/types/index.mjs +0 -0
  31. package/build/@office/common/types/type.utils.d.ts +7 -0
  32. package/build/@office/common/types/type.utils.mjs +0 -0
  33. package/build/@office/common/utils/date/index.d.ts +14 -0
  34. package/build/@office/common/utils/date/index.mjs +39 -0
  35. package/build/@office/common/utils/date/util.date.d.ts +20 -0
  36. package/build/@office/common/utils/date/util.date.mjs +39 -0
  37. package/build/@office/common/utils/index.d.ts +1 -0
  38. package/build/@office/common/utils/index.mjs +1 -0
  39. package/build/@office/common/utils/util.date.d.ts +5 -0
  40. package/build/@office/common/utils/util.date.mjs +17 -0
  41. package/build/@office/common/views/index.d.ts +1 -0
  42. package/build/@office/common/views/index.mjs +1 -0
  43. package/build/@office/config.d.ts +6 -0
  44. package/build/@office/config.mjs +99 -0
  45. package/build/@office/constant.d.ts +1 -0
  46. package/build/@office/constant.mjs +1 -0
  47. package/build/@office/exports.d.ts +3 -0
  48. package/build/@office/exports.mjs +3 -0
  49. package/build/@office/features/index.d.ts +1 -0
  50. package/build/@office/features/index.mjs +1 -0
  51. package/build/@office/index.d.ts +2 -0
  52. package/build/@office/index.mjs +2 -0
  53. package/build/@office/models/index.d.ts +1 -0
  54. package/build/@office/models/index.mjs +1 -0
  55. package/build/@office/models/personalia/attendance/AttendanceCollection/AttendanceCollection.stories.d.ts +7 -0
  56. package/build/@office/models/personalia/attendance/AttendanceCollection/AttendanceCollection.stories.mjs +40 -0
  57. package/build/@office/models/personalia/attendance/AttendanceCollection/AttendanceCollection.vue +75 -0
  58. package/build/@office/models/personalia/attendance/AttendanceCollection/index.d.ts +1 -0
  59. package/build/@office/models/personalia/attendance/AttendanceCollection/index.mjs +1 -0
  60. package/build/@office/models/personalia/attendance/AttendanceManager.vue +381 -0
  61. package/build/@office/models/personalia/attendance/AttendanceSingle/AttendanceSingle.stories.d.ts +8 -0
  62. package/build/@office/models/personalia/attendance/AttendanceSingle/AttendanceSingle.stories.mjs +47 -0
  63. package/build/@office/models/personalia/attendance/AttendanceSingle/AttendanceSingle.vue +166 -0
  64. package/build/@office/models/personalia/attendance/AttendanceSingle/index.d.ts +1 -0
  65. package/build/@office/models/personalia/attendance/AttendanceSingle/index.mjs +1 -0
  66. package/build/@office/models/personalia/attendance/AttendanceStaff.vue +540 -0
  67. package/build/@office/models/personalia/attendance/AttendanceSupervisor.vue +472 -0
  68. package/build/@office/models/personalia/attendance/index.d.ts +5 -0
  69. package/build/@office/models/personalia/attendance/index.mjs +5 -0
  70. package/build/@office/models/personalia/checkIn/CheckInAccess.vue +47 -0
  71. package/build/@office/models/personalia/checkIn/CheckInCollection/CheckInCollection.stories.d.ts +7 -0
  72. package/build/@office/models/personalia/checkIn/CheckInCollection/CheckInCollection.stories.mjs +36 -0
  73. package/build/@office/models/personalia/checkIn/CheckInCollection/CheckInCollection.vue +20 -0
  74. package/build/@office/models/personalia/checkIn/CheckInCollection/index.d.ts +1 -0
  75. package/build/@office/models/personalia/checkIn/CheckInCollection/index.mjs +1 -0
  76. package/build/@office/models/personalia/checkIn/CheckInExternal.vue +120 -0
  77. package/build/@office/models/personalia/checkIn/CheckInPresenceCollection.vue +393 -0
  78. package/build/@office/models/personalia/checkIn/CheckInScanError.vue +43 -0
  79. package/build/@office/models/personalia/checkIn/CheckInScanSuccess.vue +21 -0
  80. package/build/@office/models/personalia/checkIn/CheckInScanner.vue +219 -0
  81. package/build/@office/models/personalia/checkIn/CheckInSingle/CheckInSingle.stories.d.ts +8 -0
  82. package/build/@office/models/personalia/checkIn/CheckInSingle/CheckInSingle.stories.mjs +47 -0
  83. package/build/@office/models/personalia/checkIn/CheckInSingle/CheckInSingle.vue +79 -0
  84. package/build/@office/models/personalia/checkIn/CheckInSingle/index.d.ts +1 -0
  85. package/build/@office/models/personalia/checkIn/CheckInSingle/index.mjs +1 -0
  86. package/build/@office/models/personalia/checkIn/CheckInSupervisor.vue +122 -0
  87. package/build/@office/models/personalia/checkIn/index.d.ts +9 -0
  88. package/build/@office/models/personalia/checkIn/index.mjs +9 -0
  89. package/build/@office/models/personalia/index.d.ts +15 -0
  90. package/build/@office/models/personalia/index.mjs +15 -0
  91. package/build/@office/models/personalia/plan/PlanCollection/PlanCollection.stories.d.ts +7 -0
  92. package/build/@office/models/personalia/plan/PlanCollection/PlanCollection.stories.mjs +36 -0
  93. package/build/@office/models/personalia/plan/PlanCollection/PlanCollection.vue +22 -0
  94. package/build/@office/models/personalia/plan/PlanCollection/index.d.ts +1 -0
  95. package/build/@office/models/personalia/plan/PlanCollection/index.mjs +1 -0
  96. package/build/@office/models/personalia/plan/PlanSingle/PlanSingle.stories.d.ts +8 -0
  97. package/build/@office/models/personalia/plan/PlanSingle/PlanSingle.stories.mjs +47 -0
  98. package/build/@office/models/personalia/plan/PlanSingle/PlanSingle.vue +158 -0
  99. package/build/@office/models/personalia/plan/PlanSingle/index.d.ts +1 -0
  100. package/build/@office/models/personalia/plan/PlanSingle/index.mjs +1 -0
  101. package/build/@office/models/personalia/plan/PlanStaff.vue +138 -0
  102. package/build/@office/models/personalia/plan/index.d.ts +3 -0
  103. package/build/@office/models/personalia/plan/index.mjs +3 -0
  104. package/build/@office/models/personalia/planType/PlanTypeCollection/PlanTypeCollection.stories.d.ts +7 -0
  105. package/build/@office/models/personalia/planType/PlanTypeCollection/PlanTypeCollection.stories.mjs +36 -0
  106. package/build/@office/models/personalia/planType/PlanTypeCollection/PlanTypeCollection.vue +22 -0
  107. package/build/@office/models/personalia/planType/PlanTypeCollection/index.d.ts +1 -0
  108. package/build/@office/models/personalia/planType/PlanTypeCollection/index.mjs +1 -0
  109. package/build/@office/models/personalia/planType/PlanTypeSingle/PlanTypeSingle.stories.d.ts +8 -0
  110. package/build/@office/models/personalia/planType/PlanTypeSingle/PlanTypeSingle.stories.mjs +47 -0
  111. package/build/@office/models/personalia/planType/PlanTypeSingle/PlanTypeSingle.vue +111 -0
  112. package/build/@office/models/personalia/planType/PlanTypeSingle/index.d.ts +1 -0
  113. package/build/@office/models/personalia/planType/PlanTypeSingle/index.mjs +1 -0
  114. package/build/@office/models/personalia/planType/index.d.ts +2 -0
  115. package/build/@office/models/personalia/planType/index.mjs +2 -0
  116. package/build/@office/models/personalia/progress/ProgressCollection/ProgressCollection.stories.d.ts +7 -0
  117. package/build/@office/models/personalia/progress/ProgressCollection/ProgressCollection.stories.mjs +36 -0
  118. package/build/@office/models/personalia/progress/ProgressCollection/ProgressCollection.vue +74 -0
  119. package/build/@office/models/personalia/progress/ProgressCollection/index.d.ts +1 -0
  120. package/build/@office/models/personalia/progress/ProgressCollection/index.mjs +1 -0
  121. package/build/@office/models/personalia/progress/ProgressNote.vue +108 -0
  122. package/build/@office/models/personalia/progress/ProgressSingle/ProgressSingle.stories.d.ts +8 -0
  123. package/build/@office/models/personalia/progress/ProgressSingle/ProgressSingle.stories.mjs +47 -0
  124. package/build/@office/models/personalia/progress/ProgressSingle/ProgressSingle.vue +339 -0
  125. package/build/@office/models/personalia/progress/ProgressSingle/index.d.ts +1 -0
  126. package/build/@office/models/personalia/progress/ProgressSingle/index.mjs +1 -0
  127. package/build/@office/models/personalia/progress/ProgressTomorrow.vue +276 -0
  128. package/build/@office/models/personalia/progress/ProgressYesterday.vue +268 -0
  129. package/build/@office/models/personalia/progress/elements/ProgressButton.vue +51 -0
  130. package/build/@office/models/personalia/progress/elements/ProgressNoteButton.vue +27 -0
  131. package/build/@office/models/personalia/progress/elements/index.d.ts +2 -0
  132. package/build/@office/models/personalia/progress/elements/index.mjs +2 -0
  133. package/build/@office/models/personalia/progress/index.d.ts +6 -0
  134. package/build/@office/models/personalia/progress/index.mjs +6 -0
  135. package/build/@office/models/personalia/progress/sections/ProgressNoteTab/ProgressNoteTab.vue +43 -0
  136. package/build/@office/models/personalia/progress/sections/ProgressNoteTab/index.d.ts +1 -0
  137. package/build/@office/models/personalia/progress/sections/ProgressNoteTab/index.mjs +1 -0
  138. package/build/@office/models/personalia/progress/sections/index.d.ts +1 -0
  139. package/build/@office/models/personalia/progress/sections/index.mjs +1 -0
  140. package/build/@office/models/personalia/progressAccess/ProgressAccessCollection/ProgressAccessCollection.stories.d.ts +7 -0
  141. package/build/@office/models/personalia/progressAccess/ProgressAccessCollection/ProgressAccessCollection.stories.mjs +36 -0
  142. package/build/@office/models/personalia/progressAccess/ProgressAccessCollection/ProgressAccessCollection.vue +25 -0
  143. package/build/@office/models/personalia/progressAccess/ProgressAccessCollection/index.d.ts +1 -0
  144. package/build/@office/models/personalia/progressAccess/ProgressAccessCollection/index.mjs +1 -0
  145. package/build/@office/models/personalia/progressAccess/ProgressAccessSingle/ProgressAccessSingle.stories.d.ts +8 -0
  146. package/build/@office/models/personalia/progressAccess/ProgressAccessSingle/ProgressAccessSingle.stories.mjs +47 -0
  147. package/build/@office/models/personalia/progressAccess/ProgressAccessSingle/ProgressAccessSingle.vue +47 -0
  148. package/build/@office/models/personalia/progressAccess/ProgressAccessSingle/index.d.ts +1 -0
  149. package/build/@office/models/personalia/progressAccess/ProgressAccessSingle/index.mjs +1 -0
  150. package/build/@office/models/personalia/progressAccess/ProgressAccessSupervisor.vue +47 -0
  151. package/build/@office/models/personalia/progressAccess/index.d.ts +3 -0
  152. package/build/@office/models/personalia/progressAccess/index.mjs +3 -0
  153. package/build/@office/models/personalia/responsibility/ResponsibilityCollection/ResponsibilityCollection.stories.d.ts +7 -0
  154. package/build/@office/models/personalia/responsibility/ResponsibilityCollection/ResponsibilityCollection.stories.mjs +36 -0
  155. package/build/@office/models/personalia/responsibility/ResponsibilityCollection/ResponsibilityCollection.vue +25 -0
  156. package/build/@office/models/personalia/responsibility/ResponsibilityCollection/index.d.ts +1 -0
  157. package/build/@office/models/personalia/responsibility/ResponsibilityCollection/index.mjs +1 -0
  158. package/build/@office/models/personalia/responsibility/ResponsibilitySingle/ResponsibilitySingle.stories.d.ts +8 -0
  159. package/build/@office/models/personalia/responsibility/ResponsibilitySingle/ResponsibilitySingle.stories.mjs +47 -0
  160. package/build/@office/models/personalia/responsibility/ResponsibilitySingle/ResponsibilitySingle.vue +217 -0
  161. package/build/@office/models/personalia/responsibility/ResponsibilitySingle/index.d.ts +1 -0
  162. package/build/@office/models/personalia/responsibility/ResponsibilitySingle/index.mjs +1 -0
  163. package/build/@office/models/personalia/responsibility/ResponsibilityStaff.vue +173 -0
  164. package/build/@office/models/personalia/responsibility/ResponsibilitySupervisor.vue +173 -0
  165. package/build/@office/models/personalia/responsibility/index.d.ts +4 -0
  166. package/build/@office/models/personalia/responsibility/index.mjs +4 -0
  167. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/ResponsibilityTypeCollection.stories.d.ts +7 -0
  168. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/ResponsibilityTypeCollection.stories.mjs +36 -0
  169. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/ResponsibilityTypeCollection.vue +25 -0
  170. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/index.d.ts +1 -0
  171. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/index.mjs +1 -0
  172. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/ResponsibilityTypeSingle.stories.d.ts +8 -0
  173. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/ResponsibilityTypeSingle.stories.mjs +47 -0
  174. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/ResponsibilityTypeSingle.vue +51 -0
  175. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/index.d.ts +1 -0
  176. package/build/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/index.mjs +1 -0
  177. package/build/@office/models/personalia/responsibilityType/index.d.ts +2 -0
  178. package/build/@office/models/personalia/responsibilityType/index.mjs +2 -0
  179. package/build/@office/models/personalia/situation/SituationCollection/SituationCollection.stories.d.ts +7 -0
  180. package/build/@office/models/personalia/situation/SituationCollection/SituationCollection.stories.mjs +36 -0
  181. package/build/@office/models/personalia/situation/SituationCollection/SituationCollection.vue +23 -0
  182. package/build/@office/models/personalia/situation/SituationCollection/index.d.ts +1 -0
  183. package/build/@office/models/personalia/situation/SituationCollection/index.mjs +1 -0
  184. package/build/@office/models/personalia/situation/SituationSingle/SituationSingle.stories.d.ts +8 -0
  185. package/build/@office/models/personalia/situation/SituationSingle/SituationSingle.stories.mjs +47 -0
  186. package/build/@office/models/personalia/situation/SituationSingle/SituationSingle.vue +82 -0
  187. package/build/@office/models/personalia/situation/SituationSingle/index.d.ts +1 -0
  188. package/build/@office/models/personalia/situation/SituationSingle/index.mjs +1 -0
  189. package/build/@office/models/personalia/situation/SituationSupportive.vue +98 -0
  190. package/build/@office/models/personalia/situation/SituationWork.vue +137 -0
  191. package/build/@office/models/personalia/situation/index.d.ts +4 -0
  192. package/build/@office/models/personalia/situation/index.mjs +4 -0
  193. package/build/@office/models/personalia/situationType/SituationTypeCollection/SituationTypeCollection.stories.d.ts +7 -0
  194. package/build/@office/models/personalia/situationType/SituationTypeCollection/SituationTypeCollection.stories.mjs +36 -0
  195. package/build/@office/models/personalia/situationType/SituationTypeCollection/SituationTypeCollection.vue +23 -0
  196. package/build/@office/models/personalia/situationType/SituationTypeCollection/index.d.ts +1 -0
  197. package/build/@office/models/personalia/situationType/SituationTypeCollection/index.mjs +1 -0
  198. package/build/@office/models/personalia/situationType/SituationTypeSingle/SituationSingle.stories.d.ts +8 -0
  199. package/build/@office/models/personalia/situationType/SituationTypeSingle/SituationSingle.stories.mjs +47 -0
  200. package/build/@office/models/personalia/situationType/SituationTypeSingle/SituationTypeSingle.vue +48 -0
  201. package/build/@office/models/personalia/situationType/SituationTypeSingle/index.d.ts +1 -0
  202. package/build/@office/models/personalia/situationType/SituationTypeSingle/index.mjs +1 -0
  203. package/build/@office/models/personalia/situationType/index.d.ts +2 -0
  204. package/build/@office/models/personalia/situationType/index.mjs +2 -0
  205. package/build/@office/models/personalia/staff/StaffAccess.vue +195 -0
  206. package/build/@office/models/personalia/staff/StaffCollection/StaffCollection.stories.d.ts +7 -0
  207. package/build/@office/models/personalia/staff/StaffCollection/StaffCollection.stories.mjs +36 -0
  208. package/build/@office/models/personalia/staff/StaffCollection/StaffCollection.vue +22 -0
  209. package/build/@office/models/personalia/staff/StaffCollection/index.d.ts +1 -0
  210. package/build/@office/models/personalia/staff/StaffCollection/index.mjs +1 -0
  211. package/build/@office/models/personalia/staff/StaffIdentity.vue +253 -0
  212. package/build/@office/models/personalia/staff/StaffOperasional.vue +187 -0
  213. package/build/@office/models/personalia/staff/StaffSingle/StaffSingle.stories.d.ts +8 -0
  214. package/build/@office/models/personalia/staff/StaffSingle/StaffSingle.stories.mjs +47 -0
  215. package/build/@office/models/personalia/staff/StaffSingle/StaffSingle.vue +188 -0
  216. package/build/@office/models/personalia/staff/StaffSingle/index.d.ts +1 -0
  217. package/build/@office/models/personalia/staff/StaffSingle/index.mjs +1 -0
  218. package/build/@office/models/personalia/staff/index.d.ts +5 -0
  219. package/build/@office/models/personalia/staff/index.mjs +5 -0
  220. package/build/@office/models/personalia/submission/SubmissionAudit.vue +624 -0
  221. package/build/@office/models/personalia/submission/SubmissionCollection/SubmissionCollection.stories.d.ts +7 -0
  222. package/build/@office/models/personalia/submission/SubmissionCollection/SubmissionCollection.stories.mjs +36 -0
  223. package/build/@office/models/personalia/submission/SubmissionCollection/SubmissionCollection.vue +25 -0
  224. package/build/@office/models/personalia/submission/SubmissionCollection/index.d.ts +1 -0
  225. package/build/@office/models/personalia/submission/SubmissionCollection/index.mjs +1 -0
  226. package/build/@office/models/personalia/submission/SubmissionDecision.vue +554 -0
  227. package/build/@office/models/personalia/submission/SubmissionFollowUp.vue +241 -0
  228. package/build/@office/models/personalia/submission/SubmissionSingle/SubmissionSingle.stories.d.ts +8 -0
  229. package/build/@office/models/personalia/submission/SubmissionSingle/SubmissionSingle.stories.mjs +47 -0
  230. package/build/@office/models/personalia/submission/SubmissionSingle/SubmissionSingle.vue +218 -0
  231. package/build/@office/models/personalia/submission/SubmissionSingle/index.d.ts +1 -0
  232. package/build/@office/models/personalia/submission/SubmissionSingle/index.mjs +1 -0
  233. package/build/@office/models/personalia/submission/SubmissionStaff.vue +495 -0
  234. package/build/@office/models/personalia/submission/SubmissionSupervisor.vue +241 -0
  235. package/build/@office/models/personalia/submission/SubmissionWaitingDecision.vue +505 -0
  236. package/build/@office/models/personalia/submission/index.d.ts +8 -0
  237. package/build/@office/models/personalia/submission/index.mjs +8 -0
  238. package/build/@office/models/personalia/submission/sections/SubmissionDetailTab/SubmissionDetailTab.vue +53 -0
  239. package/build/@office/models/personalia/submission/sections/SubmissionDetailTab/index.d.ts +1 -0
  240. package/build/@office/models/personalia/submission/sections/SubmissionDetailTab/index.mjs +1 -0
  241. package/build/@office/models/personalia/submission/sections/SubmissionDocumentTab/SubmissionDocumentTab.vue +57 -0
  242. package/build/@office/models/personalia/submission/sections/SubmissionDocumentTab/index.d.ts +1 -0
  243. package/build/@office/models/personalia/submission/sections/SubmissionDocumentTab/index.mjs +1 -0
  244. package/build/@office/models/personalia/submission/sections/index.d.ts +2 -0
  245. package/build/@office/models/personalia/submission/sections/index.mjs +2 -0
  246. package/build/@office/models/personalia/submissionType/SubmissionTypeCollection/SubmissionTypeCollection.stories.d.ts +7 -0
  247. package/build/@office/models/personalia/submissionType/SubmissionTypeCollection/SubmissionTypeCollection.stories.mjs +36 -0
  248. package/build/@office/models/personalia/submissionType/SubmissionTypeCollection/SubmissionTypeCollection.vue +25 -0
  249. package/build/@office/models/personalia/submissionType/SubmissionTypeCollection/index.d.ts +1 -0
  250. package/build/@office/models/personalia/submissionType/SubmissionTypeCollection/index.mjs +1 -0
  251. package/build/@office/models/personalia/submissionType/SubmissionTypeSingle/SubmissionTypeSingle.stories.d.ts +8 -0
  252. package/build/@office/models/personalia/submissionType/SubmissionTypeSingle/SubmissionTypeSingle.stories.mjs +47 -0
  253. package/build/@office/models/personalia/submissionType/SubmissionTypeSingle/SubmissionTypeSingle.vue +48 -0
  254. package/build/@office/models/personalia/submissionType/SubmissionTypeSingle/index.d.ts +1 -0
  255. package/build/@office/models/personalia/submissionType/SubmissionTypeSingle/index.mjs +1 -0
  256. package/build/@office/models/personalia/submissionType/index.d.ts +2 -0
  257. package/build/@office/models/personalia/submissionType/index.mjs +2 -0
  258. package/build/@office/models/personalia/target/TargetBranch.vue +131 -0
  259. package/build/@office/models/personalia/target/TargetCollection/TargetCollection.stories.d.ts +7 -0
  260. package/build/@office/models/personalia/target/TargetCollection/TargetCollection.stories.mjs +36 -0
  261. package/build/@office/models/personalia/target/TargetCollection/TargetCollection.vue +22 -0
  262. package/build/@office/models/personalia/target/TargetCollection/index.d.ts +1 -0
  263. package/build/@office/models/personalia/target/TargetCollection/index.mjs +1 -0
  264. package/build/@office/models/personalia/target/TargetSingle/TargetSingle.stories.d.ts +8 -0
  265. package/build/@office/models/personalia/target/TargetSingle/TargetSingle.stories.mjs +47 -0
  266. package/build/@office/models/personalia/target/TargetSingle/TargetSingle.vue +131 -0
  267. package/build/@office/models/personalia/target/TargetSingle/index.d.ts +1 -0
  268. package/build/@office/models/personalia/target/TargetSingle/index.mjs +1 -0
  269. package/build/@office/models/personalia/target/index.d.ts +3 -0
  270. package/build/@office/models/personalia/target/index.mjs +3 -0
  271. package/build/@office/models/personalia/task/TaskCollection/TaskCollection.stories.d.ts +7 -0
  272. package/build/@office/models/personalia/task/TaskCollection/TaskCollection.stories.mjs +36 -0
  273. package/build/@office/models/personalia/task/TaskCollection/TaskCollection.vue +20 -0
  274. package/build/@office/models/personalia/task/TaskCollection/index.d.ts +1 -0
  275. package/build/@office/models/personalia/task/TaskCollection/index.mjs +1 -0
  276. package/build/@office/models/personalia/task/TaskSingle/TaskSingle.stories.d.ts +8 -0
  277. package/build/@office/models/personalia/task/TaskSingle/TaskSingle.stories.mjs +47 -0
  278. package/build/@office/models/personalia/task/TaskSingle/TaskSingle.vue +337 -0
  279. package/build/@office/models/personalia/task/TaskSingle/index.d.ts +1 -0
  280. package/build/@office/models/personalia/task/TaskSingle/index.mjs +1 -0
  281. package/build/@office/models/personalia/task/TaskWork.vue +186 -0
  282. package/build/@office/models/personalia/task/elements/TaskWorkButton.vue +157 -0
  283. package/build/@office/models/personalia/task/elements/index.d.ts +1 -0
  284. package/build/@office/models/personalia/task/elements/index.mjs +1 -0
  285. package/build/@office/models/personalia/task/index.d.ts +4 -0
  286. package/build/@office/models/personalia/task/index.mjs +4 -0
  287. package/build/@office/plugin.d.ts +3 -0
  288. package/build/@office/plugin.mjs +12 -0
  289. package/build/@package/@office/common/NeonTime/NeonTime.vue.d.ts +37 -0
  290. package/build/@package/@office/common/NeonTime/index.d.ts +1 -0
  291. package/build/@package/@office/common/OperasionalIdentitas/OperasionalIdentitas.vue.d.ts +106 -0
  292. package/build/@package/@office/common/OperasionalIdentitas/index.d.ts +1 -0
  293. package/build/@package/@office/common/index.d.ts +3 -0
  294. package/build/@package/@office/common/providers/index.d.ts +1 -0
  295. package/build/@package/@office/common/providers/operasional/attendance.store.d.ts +15 -0
  296. package/build/@package/@office/common/providers/operasional/bus.d.ts +7 -0
  297. package/build/@package/@office/common/providers/operasional/index.d.ts +6 -0
  298. package/build/@package/@office/common/providers/operasional/operasional.store.d.ts +2 -0
  299. package/build/@package/@office/common/providers/operasional/operasional.types.d.ts +13 -0
  300. package/build/@package/@office/common/providers/operasional/useOperasional.d.ts +9 -0
  301. package/build/@package/@office/common/providers/operasional/withOperasional.d.ts +2 -0
  302. package/build/@package/@office/common/types/type.utils.d.ts +7 -0
  303. package/build/@package/@office/common/utils/index.d.ts +1 -0
  304. package/build/@package/@office/common/utils/util.date.d.ts +6 -0
  305. package/build/@package/@office/config.d.ts +6 -0
  306. package/build/@package/@office/exports.d.ts +3 -0
  307. package/build/@package/@office/features/index.d.ts +1 -0
  308. package/build/@package/@office/index.d.ts +2 -0
  309. package/build/@package/@office/models/index.d.ts +1 -0
  310. package/build/@package/@office/models/personalia/attendance/AttendanceCollection/AttendanceCollection.vue.d.ts +43 -0
  311. package/build/@package/@office/models/personalia/attendance/AttendanceCollection/index.d.ts +1 -0
  312. package/build/@package/@office/models/personalia/attendance/AttendanceManager.vue.d.ts +2 -0
  313. package/build/@package/@office/models/personalia/attendance/AttendanceSingle/AttendanceSingle.vue.d.ts +2 -0
  314. package/build/@package/@office/models/personalia/attendance/AttendanceSingle/index.d.ts +1 -0
  315. package/build/@package/@office/models/personalia/attendance/AttendanceStaff.vue.d.ts +2 -0
  316. package/build/@package/@office/models/personalia/attendance/AttendanceSupervisor.vue.d.ts +2 -0
  317. package/build/@package/@office/models/personalia/attendance/index.d.ts +5 -0
  318. package/build/@package/@office/models/personalia/checkIn/CheckInAccess.vue.d.ts +6 -0
  319. package/build/@package/@office/models/personalia/checkIn/CheckInCollection/CheckInCollection.vue.d.ts +2 -0
  320. package/build/@package/@office/models/personalia/checkIn/CheckInCollection/index.d.ts +1 -0
  321. package/build/@package/@office/models/personalia/checkIn/CheckInExternal.vue.d.ts +2 -0
  322. package/build/@package/@office/models/personalia/checkIn/CheckInPresenceCollection.vue.d.ts +2 -0
  323. package/build/@package/@office/models/personalia/checkIn/CheckInScanError.vue.d.ts +2 -0
  324. package/build/@package/@office/models/personalia/checkIn/CheckInScanSuccess.vue.d.ts +6 -0
  325. package/build/@package/@office/models/personalia/checkIn/CheckInScanner.vue.d.ts +12 -0
  326. package/build/@package/@office/models/personalia/checkIn/CheckInSingle/CheckInSingle.vue.d.ts +2 -0
  327. package/build/@package/@office/models/personalia/checkIn/CheckInSingle/index.d.ts +1 -0
  328. package/build/@package/@office/models/personalia/checkIn/CheckInSupervisor.vue.d.ts +2 -0
  329. package/build/@package/@office/models/personalia/checkIn/index.d.ts +9 -0
  330. package/build/@package/@office/models/personalia/index.d.ts +15 -0
  331. package/build/@package/@office/models/personalia/plan/PlanCollection/PlanCollection.vue.d.ts +2 -0
  332. package/build/@package/@office/models/personalia/plan/PlanCollection/index.d.ts +1 -0
  333. package/build/@package/@office/models/personalia/plan/PlanSingle/PlanSingle.vue.d.ts +2 -0
  334. package/build/@package/@office/models/personalia/plan/PlanSingle/index.d.ts +1 -0
  335. package/build/@package/@office/models/personalia/plan/PlanStaff.vue.d.ts +2 -0
  336. package/build/@package/@office/models/personalia/plan/index.d.ts +3 -0
  337. package/build/@package/@office/models/personalia/planType/PlanTypeCollection/PlanTypeCollection.vue.d.ts +2 -0
  338. package/build/@package/@office/models/personalia/planType/PlanTypeCollection/index.d.ts +1 -0
  339. package/build/@package/@office/models/personalia/planType/PlanTypeSingle/PlanTypeSingle.vue.d.ts +2 -0
  340. package/build/@package/@office/models/personalia/planType/PlanTypeSingle/index.d.ts +1 -0
  341. package/build/@package/@office/models/personalia/planType/index.d.ts +2 -0
  342. package/build/@package/@office/models/personalia/progress/ProgressCollection/ProgressCollection.vue.d.ts +43 -0
  343. package/build/@package/@office/models/personalia/progress/ProgressCollection/index.d.ts +1 -0
  344. package/build/@package/@office/models/personalia/progress/ProgressNote.vue.d.ts +2 -0
  345. package/build/@package/@office/models/personalia/progress/ProgressSingle/ProgressSingle.vue.d.ts +2 -0
  346. package/build/@package/@office/models/personalia/progress/ProgressSingle/index.d.ts +1 -0
  347. package/build/@package/@office/models/personalia/progress/ProgressTomorrow.vue.d.ts +2 -0
  348. package/build/@package/@office/models/personalia/progress/ProgressYesterday.vue.d.ts +2 -0
  349. package/build/@package/@office/models/personalia/progress/elements/ProgressButton.vue.d.ts +2 -0
  350. package/build/@package/@office/models/personalia/progress/elements/ProgressNoteButton.vue.d.ts +2 -0
  351. package/build/@package/@office/models/personalia/progress/elements/index.d.ts +2 -0
  352. package/build/@package/@office/models/personalia/progress/index.d.ts +6 -0
  353. package/build/@package/@office/models/personalia/progress/sections/ProgressNoteTab/ProgressNoteTab.vue.d.ts +2 -0
  354. package/build/@package/@office/models/personalia/progress/sections/ProgressNoteTab/index.d.ts +1 -0
  355. package/build/@package/@office/models/personalia/progress/sections/index.d.ts +1 -0
  356. package/build/@package/@office/models/personalia/progressAccess/ProgressAccessCollection/ProgressAccessCollection.vue.d.ts +2 -0
  357. package/build/@package/@office/models/personalia/progressAccess/ProgressAccessCollection/index.d.ts +1 -0
  358. package/build/@package/@office/models/personalia/progressAccess/ProgressAccessSingle/ProgressAccessSingle.vue.d.ts +2 -0
  359. package/build/@package/@office/models/personalia/progressAccess/ProgressAccessSingle/index.d.ts +1 -0
  360. package/build/@package/@office/models/personalia/progressAccess/ProgressAccessSupervisor.vue.d.ts +2 -0
  361. package/build/@package/@office/models/personalia/progressAccess/index.d.ts +3 -0
  362. package/build/@package/@office/models/personalia/responsibility/ResponsibilityCollection/ResponsibilityCollection.vue.d.ts +2 -0
  363. package/build/@package/@office/models/personalia/responsibility/ResponsibilityCollection/index.d.ts +1 -0
  364. package/build/@package/@office/models/personalia/responsibility/ResponsibilitySingle/ResponsibilitySingle.vue.d.ts +2 -0
  365. package/build/@package/@office/models/personalia/responsibility/ResponsibilitySingle/index.d.ts +1 -0
  366. package/build/@package/@office/models/personalia/responsibility/ResponsibilityStaff.vue.d.ts +2 -0
  367. package/build/@package/@office/models/personalia/responsibility/ResponsibilitySupervisor.vue.d.ts +2 -0
  368. package/build/@package/@office/models/personalia/responsibility/index.d.ts +4 -0
  369. package/build/@package/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/ResponsibilityTypeCollection.vue.d.ts +2 -0
  370. package/build/@package/@office/models/personalia/responsibilityType/ResponsibilityTypeCollection/index.d.ts +1 -0
  371. package/build/@package/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/ResponsibilityTypeSingle.vue.d.ts +2 -0
  372. package/build/@package/@office/models/personalia/responsibilityType/ResponsibilityTypeSingle/index.d.ts +1 -0
  373. package/build/@package/@office/models/personalia/responsibilityType/index.d.ts +2 -0
  374. package/build/@package/@office/models/personalia/situation/SituationCollection/SituationCollection.vue.d.ts +2 -0
  375. package/build/@package/@office/models/personalia/situation/SituationCollection/index.d.ts +1 -0
  376. package/build/@package/@office/models/personalia/situation/SituationSingle/SituationSingle.vue.d.ts +2 -0
  377. package/build/@package/@office/models/personalia/situation/SituationSingle/index.d.ts +1 -0
  378. package/build/@package/@office/models/personalia/situation/SituationSupportive.vue.d.ts +2 -0
  379. package/build/@package/@office/models/personalia/situation/SituationWork.vue.d.ts +2 -0
  380. package/build/@package/@office/models/personalia/situation/index.d.ts +4 -0
  381. package/build/@package/@office/models/personalia/situationType/SituationTypeCollection/SituationTypeCollection.vue.d.ts +2 -0
  382. package/build/@package/@office/models/personalia/situationType/SituationTypeCollection/index.d.ts +1 -0
  383. package/build/@package/@office/models/personalia/situationType/SituationTypeSingle/SituationTypeSingle.vue.d.ts +2 -0
  384. package/build/@package/@office/models/personalia/situationType/SituationTypeSingle/index.d.ts +1 -0
  385. package/build/@package/@office/models/personalia/situationType/index.d.ts +2 -0
  386. package/build/@package/@office/models/personalia/staff/StaffAccess.vue.d.ts +2 -0
  387. package/build/@package/@office/models/personalia/staff/StaffCollection/StaffCollection.vue.d.ts +2 -0
  388. package/build/@package/@office/models/personalia/staff/StaffCollection/index.d.ts +1 -0
  389. package/build/@package/@office/models/personalia/staff/StaffIdentity.vue.d.ts +2 -0
  390. package/build/@package/@office/models/personalia/staff/StaffOperasional.vue.d.ts +2 -0
  391. package/build/@package/@office/models/personalia/staff/StaffSingle/StaffSingle.vue.d.ts +2 -0
  392. package/build/@package/@office/models/personalia/staff/StaffSingle/index.d.ts +1 -0
  393. package/build/@package/@office/models/personalia/staff/index.d.ts +5 -0
  394. package/build/@package/@office/models/personalia/submission/SubmissionAudit.vue.d.ts +2 -0
  395. package/build/@package/@office/models/personalia/submission/SubmissionCollection/SubmissionCollection.vue.d.ts +2 -0
  396. package/build/@package/@office/models/personalia/submission/SubmissionCollection/index.d.ts +1 -0
  397. package/build/@package/@office/models/personalia/submission/SubmissionDecision.vue.d.ts +2 -0
  398. package/build/@package/@office/models/personalia/submission/SubmissionFollowUp.vue.d.ts +2 -0
  399. package/build/@package/@office/models/personalia/submission/SubmissionSingle/SubmissionSingle.vue.d.ts +2 -0
  400. package/build/@package/@office/models/personalia/submission/SubmissionSingle/index.d.ts +1 -0
  401. package/build/@package/@office/models/personalia/submission/SubmissionStaff.vue.d.ts +2 -0
  402. package/build/@package/@office/models/personalia/submission/SubmissionSupervisor.vue.d.ts +2 -0
  403. package/build/@package/@office/models/personalia/submission/SubmissionWaitingDecision.vue.d.ts +2 -0
  404. package/build/@package/@office/models/personalia/submission/index.d.ts +8 -0
  405. package/build/@package/@office/models/personalia/submission/sections/SubmissionDetailTab/SubmissionDetailTab.vue.d.ts +2 -0
  406. package/build/@package/@office/models/personalia/submission/sections/SubmissionDetailTab/index.d.ts +1 -0
  407. package/build/@package/@office/models/personalia/submission/sections/SubmissionDocumentTab/SubmissionDocumentTab.vue.d.ts +24 -0
  408. package/build/@package/@office/models/personalia/submission/sections/SubmissionDocumentTab/index.d.ts +1 -0
  409. package/build/@package/@office/models/personalia/submission/sections/index.d.ts +2 -0
  410. package/build/@package/@office/models/personalia/submissionType/SubmissionTypeCollection/SubmissionTypeCollection.vue.d.ts +2 -0
  411. package/build/@package/@office/models/personalia/submissionType/SubmissionTypeCollection/index.d.ts +1 -0
  412. package/build/@package/@office/models/personalia/submissionType/SubmissionTypeSingle/SubmissionTypeSingle.vue.d.ts +2 -0
  413. package/build/@package/@office/models/personalia/submissionType/SubmissionTypeSingle/index.d.ts +1 -0
  414. package/build/@package/@office/models/personalia/submissionType/index.d.ts +2 -0
  415. package/build/@package/@office/models/personalia/target/TargetBranch.vue.d.ts +2 -0
  416. package/build/@package/@office/models/personalia/target/TargetCollection/TargetCollection.vue.d.ts +2 -0
  417. package/build/@package/@office/models/personalia/target/TargetCollection/index.d.ts +1 -0
  418. package/build/@package/@office/models/personalia/target/TargetSingle/TargetSingle.vue.d.ts +2 -0
  419. package/build/@package/@office/models/personalia/target/TargetSingle/index.d.ts +1 -0
  420. package/build/@package/@office/models/personalia/target/index.d.ts +3 -0
  421. package/build/@package/@office/models/personalia/task/TaskCollection/TaskCollection.vue.d.ts +2 -0
  422. package/build/@package/@office/models/personalia/task/TaskCollection/index.d.ts +1 -0
  423. package/build/@package/@office/models/personalia/task/TaskSingle/TaskSingle.vue.d.ts +2 -0
  424. package/build/@package/@office/models/personalia/task/TaskSingle/index.d.ts +1 -0
  425. package/build/@package/@office/models/personalia/task/TaskWork.vue.d.ts +2 -0
  426. package/build/@package/@office/models/personalia/task/elements/TaskWorkButton.vue.d.ts +2 -0
  427. package/build/@package/@office/models/personalia/task/elements/index.d.ts +1 -0
  428. package/build/@package/@office/models/personalia/task/index.d.ts +4 -0
  429. package/build/@package/@office/plugin.d.ts +3 -0
  430. package/build/@package/index.d.ts +1 -0
  431. package/build/index.cjs +1 -0
  432. package/build/index.d.ts +1 -0
  433. package/build/index.mjs +1 -0
  434. package/build/mock/index.cjs +23367 -0
  435. package/build/mock/index.mjs +23350 -0
  436. package/build/mock/qr-scanner-worker.min-Bu8FMiXO.mjs +101 -0
  437. package/build/mock/qr-scanner-worker.min-DyvREpyM.js +101 -0
  438. package/build/mock/style.css +378 -0
  439. package/build/module.json +12 -0
  440. package/build/nuxt.cjs +5 -0
  441. package/build/nuxt.d.mts +36 -0
  442. package/build/nuxt.d.ts +36 -0
  443. package/build/nuxt.json +12 -0
  444. package/build/nuxt.mjs +250 -0
  445. package/build/runtime/plugins/plugin.operasional.d.ts +2 -0
  446. package/build/runtime/plugins/plugin.operasional.js +7 -0
  447. package/build/types.d.mts +19 -0
  448. package/build/types.d.ts +19 -0
  449. package/package.json +2 -2
@@ -0,0 +1,472 @@
1
+ <script setup lang="ts">
2
+ import { GraphUtil, NeonSingle, useSingle } from '@neon.id/context'
3
+ import { NeonField, NeonForm } from '@neon.id/form'
4
+ import { NeonButton, NeonDivider, useToastStore } from '@neon.id/interfaces'
5
+ import { OfficeRelation, OfficeTab, OfficeTabs } from '@neon.id/office'
6
+ import { computed, ref, watch } from 'vue'
7
+ import { PromiseUtil } from '@neon.id/utils/promise'
8
+ import {
9
+ AttendanceModel,
10
+ type TPersonaliaAttendanceModel,
11
+ type Schema,
12
+ } from '@neutron.co.id/personalia-models'
13
+ import { DateUtil } from '../../../common/utils'
14
+ import { NeonTime, useOperasional } from '../../../common'
15
+ import { useClientHandle } from '@urql/vue'
16
+
17
+ const {
18
+ fields,
19
+ id,
20
+ initialValues,
21
+ values,
22
+ isLoading,
23
+ isChanged,
24
+ isReady,
25
+ isMain,
26
+ isNew,
27
+ saveOne,
28
+ discardChanges,
29
+ syncOne,
30
+ executeOne,
31
+ } = useSingle<Schema.Attendance, TPersonaliaAttendanceModel>()
32
+
33
+ const key = ref(0)
34
+ const diff = computed(() => {
35
+ return DateUtil.day(values.value.endedAt).diff(values.value.startedAt)
36
+ })
37
+
38
+ const duration = computed(() => {
39
+ if (isNaN(diff.value)) return '-'
40
+ const duration = DateUtil.day.duration(diff.value)
41
+ return duration.format('HH [jam] mm [menit]')
42
+ })
43
+
44
+ const reverseDiff = computed(() => {
45
+ return DateUtil.day(values.value.startedAt).diff(values.value.endedAt)
46
+ })
47
+ const reverseDuration = computed(() => {
48
+ if (isNaN(reverseDiff.value)) return '-'
49
+ const duration = DateUtil.day.duration(reverseDiff.value)
50
+ return duration.format('HH [jam] mm [menit]')
51
+ })
52
+
53
+ function setDefaultSchedule() {
54
+ const today = DateUtil.day()
55
+ const startedAt = today.second(0).millisecond(0)
56
+ const endedAt = startedAt.add(90, 'minute')
57
+
58
+ key.value++
59
+ }
60
+
61
+ function onStartedAtUpdate(date: any) {
62
+ if (!date) return
63
+
64
+ const currentEndedendedAt = DateUtil.day(values.value.endedAt)
65
+ let startedAt = DateUtil.day(date)
66
+ let endedAt = DateUtil.day(date)
67
+
68
+ startedAt = startedAt.second(0).millisecond(0)
69
+ endedAt = endedAt
70
+ .hour(currentEndedendedAt.hour())
71
+ .minute(currentEndedendedAt.minute())
72
+ .second(0)
73
+ .millisecond(0)
74
+
75
+ values.value.startedAt = startedAt.toISOString()
76
+ values.value.endedAt = endedAt.toISOString()
77
+ }
78
+
79
+ // OTHER
80
+ const responseState = ref()
81
+ const toast = useToastStore()
82
+ const { staff } = useOperasional()
83
+ const staffId = staff.value?.id || ''
84
+
85
+ watch(isNew, setDefaultValues, { immediate: true })
86
+
87
+ async function setDefaultValues() {
88
+ if (!isNew.value) return
89
+ await PromiseUtil.wait(500)
90
+
91
+ const defaultValues = {
92
+ submitStaffId: staffId,
93
+ submitStaff: staff.value,
94
+ } satisfies Schema.Attendance
95
+
96
+ values.value.submitStaffId = defaultValues.submitStaffId
97
+ values.value.submitStaff = defaultValues.submitStaff
98
+ }
99
+
100
+ const approvedAbsensi = async () => {
101
+ await executeOne('approvedAttendance', { attendanceId: id.value })
102
+ await syncOne()
103
+ }
104
+
105
+ const deleteAbsensi = async () => {
106
+ await executeOne('deleteAttendance', { attendanceId: id.value })
107
+ await syncOne()
108
+ window.location.href = '/pengawas/attendances'
109
+ }
110
+ const rejectedAbsensi = async () => {
111
+ await executeOne('rejectedAttendance', { attendanceId: id.value })
112
+ await syncOne()
113
+ }
114
+
115
+ //Generate Attendance
116
+ const { client } = useClientHandle()
117
+
118
+ function getNotified() {
119
+ if (responseState.value === 'attendanceGenerated') {
120
+ toast.push({
121
+ id: 'generate:attendance',
122
+ content: 'Successfully generated attendance.',
123
+ color: 'success',
124
+ })
125
+ }
126
+ }
127
+
128
+ async function generateAttendance() {
129
+ const responseGenerateAttendance = await client
130
+ .mutation(GraphUtil.executeOne(AttendanceModel, {}), {
131
+ action: 'generateAttendance',
132
+ input: {
133
+ attendanceId: values.value.id,
134
+ // Attendance input.
135
+ status: values.value.status,
136
+ submitStaffId: values.value.submitStaffId,
137
+ type: values.value.type,
138
+ decideStaffId: values.value.decideStaffId,
139
+ notes: values.value.notes,
140
+ submittedAt: values.value.submittedAt,
141
+ startedAt: values.value.startedAt,
142
+ endedAt: values.value.endedAt,
143
+ },
144
+ })
145
+ .toPromise()
146
+
147
+ const wrapper = responseGenerateAttendance.data?.executeAttendance
148
+ responseState.value = wrapper?.info?.state
149
+ }
150
+
151
+ async function generate() {
152
+ await generateAttendance()
153
+ await getNotified()
154
+ await syncOne()
155
+ }
156
+ </script>
157
+
158
+ <template>
159
+ <NeonSingle class="neu-attendance-single">
160
+ <OfficeTabs :use-url="isMain">
161
+ <OfficeTab handle="info" icon="circle-info" title="Info">
162
+ <NeonForm
163
+ handle="info"
164
+ :initial-values="initialValues"
165
+ :is-loading="isLoading"
166
+ :is-changed="isChanged"
167
+ use-unsaved
168
+ @cancel="discardChanges"
169
+ @submit="saveOne"
170
+ >
171
+ <div class="flex flex-wrap">
172
+ <div class="mt-2">
173
+ <NeonField>
174
+ <template #input>
175
+ <NeonButton
176
+ size="md"
177
+ color="success"
178
+ icon-left="check"
179
+ :is-disabled="
180
+ values.status == 'approved' || values.status == 'rejected'
181
+ "
182
+ @click="approvedAbsensi"
183
+ >Disetujui</NeonButton
184
+ >
185
+ </template>
186
+ </NeonField>
187
+ </div>
188
+ &nbsp;&nbsp;
189
+ <div class="mt-2">
190
+ <NeonField>
191
+ <template #input>
192
+ <NeonButton
193
+ size="md"
194
+ color="danger"
195
+ icon-left="x"
196
+ :is-disabled="
197
+ values.status == 'approved' || values.status == 'rejected'
198
+ "
199
+ @click="rejectedAbsensi"
200
+ >Ditolak</NeonButton
201
+ >
202
+ </template>
203
+ </NeonField>
204
+ </div>
205
+ &nbsp;&nbsp;
206
+ <div class="mt-2">
207
+ <NeonField>
208
+ <template #input>
209
+ <NeonButton
210
+ size="md"
211
+ color="warning"
212
+ icon-left="trash-can"
213
+ @click="deleteAbsensi"
214
+ >Dihapus</NeonButton
215
+ >
216
+ </template>
217
+ </NeonField>
218
+ </div>
219
+ </div>
220
+
221
+ <OfficeRelation
222
+ v-model="values"
223
+ :field="fields.submitStaff"
224
+ is-disabled
225
+ />
226
+
227
+ <NeonField
228
+ :key="key"
229
+ :model-value="values.startedAt"
230
+ v-bind="{
231
+ handle: 'startedAt',
232
+ name: 'Tanggal',
233
+ type: 'date',
234
+ input: 'date2',
235
+ options: {
236
+ note: 'Tanggal absensi.',
237
+ },
238
+ }"
239
+ :is-disabled="
240
+ values.status == 'approved' || values.status == 'rejected'
241
+ "
242
+ @update:model-value="onStartedAtUpdate"
243
+ />
244
+ <NeonDivider
245
+ label="Tanggal ini digunakan hanya untuk Generate Absensi"
246
+ class="divider"
247
+ />
248
+ <NeonFields md="grid-cols-3">
249
+ <NeonField
250
+ v-model="values.startedAt"
251
+ v-bind="fields.startedAt"
252
+ :is-disabled="values.isGenerate === true"
253
+ />
254
+ <NeonField
255
+ v-model="values.endedAt"
256
+ v-bind="fields.endedAt"
257
+ :is-disabled="values.isGenerate === true"
258
+ />
259
+ <NeonButton
260
+ icon-left="bolt"
261
+ label="Generate"
262
+ color="success"
263
+ class="mt-12"
264
+ size="xs"
265
+ :is-loading="isLoading"
266
+ :is-disabled="
267
+ values.status !== 'approved' || values.isGenerate === true
268
+ "
269
+ is-rounded
270
+ @click="generate"
271
+ />
272
+ </NeonFields>
273
+
274
+ <NeonField
275
+ v-model="values.type"
276
+ v-bind="fields.type"
277
+ :is-disabled="
278
+ values.status == 'approved' || values.status == 'rejected'
279
+ "
280
+ />
281
+
282
+ <!-- <OfficeRelation
283
+ v-model="values"
284
+ :field="fields.decideStaff"
285
+ :is-disabled="
286
+ values.status == 'approved' || values.status == 'rejected'
287
+ "
288
+ /> -->
289
+
290
+ <OfficeRelation
291
+ v-if="values.type == 'leave'"
292
+ v-model="values"
293
+ :field="fields.delegateStaffs"
294
+ :is-disabled="
295
+ values.status == 'approved' || values.status == 'rejected'
296
+ "
297
+ />
298
+
299
+ <NeonField
300
+ v-if="isNew || isReady"
301
+ v-model="values.notes"
302
+ v-bind="fields.notes"
303
+ />
304
+
305
+ <NeonDivider v-if="values.type" is-dashed label="Keterangan" />
306
+
307
+ <NeonField
308
+ v-if="
309
+ values.type == 'dayOff' ||
310
+ values.type == 'sick' ||
311
+ values.type == 'permission' ||
312
+ values.type == 'leave'
313
+ "
314
+ v-model="values.submittedAt"
315
+ v-bind="fields.submittedAt"
316
+ is-disabled
317
+ />
318
+
319
+ <!-- EARLY GO HOME -->
320
+ <div
321
+ v-if="values.type == 'homeEarly'"
322
+ class="grid gap-2 sm:grid-cols-2"
323
+ >
324
+ <NeonField
325
+ v-model="values.startedAt"
326
+ v-bind="{
327
+ handle: 'startedAt',
328
+ name: 'Jam Pulang Kerja',
329
+ options: {
330
+ note: 'Jam pulang kerja.',
331
+ },
332
+ }"
333
+ >
334
+ <template #input>
335
+ <NeonTime
336
+ v-model="values.startedAt"
337
+ :is-loading="isLoading"
338
+ class="mt-2"
339
+ />
340
+ </template>
341
+ </NeonField>
342
+
343
+ <NeonField
344
+ v-model="values.endedAt"
345
+ v-bind="{
346
+ handle: 'endedAt',
347
+ name: 'Jam Pulang Lebih Awal',
348
+ options: {
349
+ note: 'Jam pulang lebih awal.',
350
+ },
351
+ }"
352
+ >
353
+ <template #input>
354
+ <NeonTime
355
+ v-model="values.endedAt"
356
+ :is-loading="isLoading"
357
+ class="mt-2"
358
+ />
359
+
360
+ <div class="text-right text-fg-subdued text-sm">
361
+ {{ reverseDuration }}
362
+ </div>
363
+ </template>
364
+ </NeonField>
365
+ </div>
366
+
367
+ <!-- COME TOO LATE -->
368
+ <div
369
+ v-if="values.type == 'comeLate'"
370
+ class="grid gap-2 sm:grid-cols-2"
371
+ >
372
+ <NeonField
373
+ v-model="values.startedAt"
374
+ v-bind="{
375
+ handle: 'startedAt',
376
+ name: 'Jam Datang',
377
+ options: {
378
+ note: 'Jam Datang kerja.',
379
+ },
380
+ }"
381
+ >
382
+ <template #input>
383
+ <NeonTime
384
+ v-model="values.startedAt"
385
+ :is-loading="isLoading"
386
+ class="mt-2"
387
+ />
388
+ </template>
389
+ </NeonField>
390
+
391
+ <NeonField
392
+ v-model="values.endedAt"
393
+ v-bind="{
394
+ handle: 'endedAt',
395
+ name: 'Jam Datang Terlambat',
396
+ options: {
397
+ note: 'Jam datang terlambat.',
398
+ },
399
+ }"
400
+ >
401
+ <template #input>
402
+ <NeonTime
403
+ v-model="values.endedAt"
404
+ :is-loading="isLoading"
405
+ class="mt-2"
406
+ />
407
+
408
+ <div class="text-right text-fg-subdued text-sm">
409
+ {{ duration }}
410
+ </div>
411
+ </template>
412
+ </NeonField>
413
+ </div>
414
+
415
+ <!-- TIMEOUT -->
416
+ <div
417
+ v-if="values.type == 'timeout'"
418
+ class="grid gap-2 sm:grid-cols-2"
419
+ >
420
+ <NeonField
421
+ v-model="values.startedAt"
422
+ v-bind="{
423
+ handle: 'startedAt',
424
+ name: 'Mulai',
425
+ options: {
426
+ note: 'Jam mulai.',
427
+ },
428
+ }"
429
+ >
430
+ <template #input>
431
+ <NeonTime
432
+ v-model="values.startedAt"
433
+ :is-loading="isLoading"
434
+ class="mt-2"
435
+ />
436
+ </template>
437
+ </NeonField>
438
+
439
+ <NeonField
440
+ v-model="values.endedAt"
441
+ v-bind="{
442
+ handle: 'endedAt',
443
+ name: 'Selesai',
444
+ options: {
445
+ note: 'Jam selesai.',
446
+ },
447
+ }"
448
+ >
449
+ <template #input>
450
+ <NeonTime
451
+ v-model="values.endedAt"
452
+ :is-loading="isLoading"
453
+ class="mt-2"
454
+ />
455
+
456
+ <div class="text-right text-fg-subdued text-sm">
457
+ {{ duration }}
458
+ </div>
459
+ </template>
460
+ </NeonField>
461
+ </div>
462
+ </NeonForm>
463
+ </OfficeTab>
464
+ </OfficeTabs>
465
+ </NeonSingle>
466
+ </template>
467
+
468
+ <style scoped>
469
+ .neu-attendance-single {
470
+ @apply block;
471
+ }
472
+ </style>
@@ -0,0 +1,5 @@
1
+ export * from './AttendanceCollection';
2
+ export * from './AttendanceSingle';
3
+ export { default as AttendanceManager } from './AttendanceManager.vue';
4
+ export { default as AttendanceStaff } from './AttendanceStaff.vue';
5
+ export { default as AttendanceSupervisor } from './AttendanceSupervisor.vue';
@@ -0,0 +1,5 @@
1
+ export * from "./AttendanceCollection/index.mjs";
2
+ export * from "./AttendanceSingle/index.mjs";
3
+ export { default as AttendanceManager } from "./AttendanceManager.vue";
4
+ export { default as AttendanceStaff } from "./AttendanceStaff.vue";
5
+ export { default as AttendanceSupervisor } from "./AttendanceSupervisor.vue";
@@ -0,0 +1,47 @@
1
+ <script setup lang="ts">
2
+ import { storeToRefs } from 'pinia'
3
+ import { NeonModal, NeonSheet, NeonButton } from '@neon.id/interfaces'
4
+ import { useAttendanceStore } from '../../../common'
5
+
6
+ const attendanceStore = useAttendanceStore()
7
+ const { isAsking, isScanError, isScanning } = storeToRefs(attendanceStore)
8
+
9
+ defineEmits<{
10
+ (e: 'close'): void
11
+ }>()
12
+
13
+ function ok() {
14
+ isAsking.value = false
15
+ isScanError.value = false
16
+ isScanning.value = true
17
+ }
18
+ </script>
19
+
20
+ <template>
21
+ <NeonModal v-model:is-active="isAsking" size="lg" @close="$emit('close')">
22
+ <NeonSheet title="Aktifkan Kamera" icon="camera" @close="$emit('close')">
23
+ <h4 align="center">Aktifkan kamera untuk scan QR Code</h4>
24
+ <p align="center">
25
+ Neutron Kantor membutuhkan akses ke kamera. Dengan klik "<b
26
+ >Saya Setuju</b
27
+ >", kamu telah menyetujui syarat dan ketentuan yang berlaku.
28
+ </p>
29
+ <NeonButton
30
+ is-full
31
+ size="md"
32
+ color="success"
33
+ icon-left="check"
34
+ class="buttons"
35
+ @click="ok"
36
+ >Saya Setuju</NeonButton
37
+ >
38
+ </NeonSheet>
39
+ </NeonModal>
40
+ </template>
41
+
42
+ <style scoped>
43
+ .buttons {
44
+ @apply grid items-center gap-2 px-4;
45
+ height: 56px;
46
+ }
47
+ </style>
@@ -0,0 +1,7 @@
1
+ import type { Meta } from '@storybook/vue3';
2
+ import CheckInCollection from './CheckInCollection.vue';
3
+ declare const _default: Meta<typeof CheckInCollection>;
4
+ export default _default;
5
+ export declare const Main: import("@storybook/csf").StoryAnnotations<import("@storybook/vue3").VueRenderer, {}, {}>;
6
+ export declare const InsideContent: import("@storybook/csf").StoryAnnotations<import("@storybook/vue3").VueRenderer, {}, {}>;
7
+ export declare const $DefaultView: any;
@@ -0,0 +1,36 @@
1
+ import { decorateCollection, viewCollection, wrapCollection } from "@mock";
2
+ import { StoryUtil } from "@neon.id/story/helpers";
3
+ import { CheckInCollectionView } from "@neutron.co.id/operasional-modules";
4
+ import { CheckInModel } from "@neutron.co.id/tempat-models";
5
+ import CheckInCollection from "./CheckInCollection.vue";
6
+ export default {
7
+ title: "Office/CheckIn/Collection",
8
+ tags: [],
9
+ component: CheckInCollection,
10
+ parameters: StoryUtil.parameters({
11
+ description: "`CheckInCollection`",
12
+ layout: "fullscreen",
13
+ controls: { exclude: ["colors"] },
14
+ backgrounds: { default: "light" }
15
+ })
16
+ };
17
+ export const Main = StoryUtil.story({
18
+ description: "Main.",
19
+ decorators: decorateCollection({
20
+ model: CheckInModel
21
+ })
22
+ });
23
+ export const InsideContent = StoryUtil.story({
24
+ description: "Inside content.",
25
+ render: wrapCollection(CheckInCollection),
26
+ decorators: decorateCollection({
27
+ model: CheckInModel
28
+ })
29
+ });
30
+ export const $DefaultView = viewCollection({
31
+ description: "Default view.",
32
+ component: CheckInCollectionView,
33
+ props: {
34
+ overrides: {}
35
+ }
36
+ });
@@ -0,0 +1,20 @@
1
+ <script setup lang="ts">
2
+ import { NeonCollection, useCollection } from '@neon.id/context'
3
+ import { OfficeCollectionTable } from '@neon.id/office'
4
+ import type { TTempatCheckInModel } from '@neutron.co.id/tempat-models'
5
+ import type { Schema } from '@neutron.co.id/personalia-models'
6
+
7
+ defineOptions({
8
+ name: 'CheckInCollection',
9
+ })
10
+
11
+ const { resource } = useCollection<Schema.CheckIn, TTempatCheckInModel>()
12
+ </script>
13
+
14
+ <template>
15
+ <NeonCollection class="neu-checkIn-collection">
16
+ <OfficeCollectionTable />
17
+ </NeonCollection>
18
+ </template>
19
+
20
+ <style scoped></style>
@@ -0,0 +1 @@
1
+ export { default as CheckInCollection } from './CheckInCollection.vue';
@@ -0,0 +1 @@
1
+ export { default as CheckInCollection } from "./CheckInCollection.vue";