@neutron.co.id/operasional-modules 1.7.0 → 1.8.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 (27) hide show
  1. package/build/personalia/module.mjs +4 -2
  2. package/build/personalia/resources/attendance/attendance.model.d.ts +6 -0
  3. package/build/personalia/resources/attendance/attendance.model.mjs +42 -0
  4. package/build/personalia/resources/attendance/attendance.resource.d.ts +2 -0
  5. package/build/personalia/resources/attendance/attendance.resource.mjs +47 -0
  6. package/build/personalia/resources/attendance/attendance.views.d.ts +108 -0
  7. package/build/personalia/resources/attendance/attendance.views.mjs +134 -0
  8. package/build/personalia/resources/attendance/index.d.ts +2 -0
  9. package/build/personalia/resources/attendance/index.mjs +2 -0
  10. package/build/personalia/resources/index.d.ts +1 -0
  11. package/build/personalia/resources/index.mjs +1 -0
  12. package/build/personalia/resources/plan/plan.model.d.ts +1 -1
  13. package/build/personalia/resources/plan/plan.model.mjs +2 -2
  14. package/build/personalia/resources/plan/plan.resource.d.ts +1 -1
  15. package/build/personalia/resources/plan/plan.views.mjs +3 -3
  16. package/build/personalia/resources/progress/progress.model.d.ts +1 -1
  17. package/build/personalia/resources/progress/progress.model.mjs +14 -5
  18. package/build/personalia/resources/progress/progress.resource.d.ts +1 -1
  19. package/build/personalia/resources/progress/progress.resource.mjs +7 -2
  20. package/build/personalia/resources/progress/progress.views.d.ts +3 -0
  21. package/build/personalia/resources/progress/progress.views.mjs +21 -15
  22. package/build/personalia/resources/target/target.model.d.ts +1 -1
  23. package/build/personalia/resources/target/target.model.mjs +2 -2
  24. package/build/personalia/resources/target/target.resource.d.ts +1 -1
  25. package/build/personalia/resources/target/target.views.mjs +4 -4
  26. package/build/personalia/views.mjs +2 -2
  27. package/package.json +17 -17
@@ -12,7 +12,8 @@ import {
12
12
  TargetResource,
13
13
  PlanTypeResource,
14
14
  PlanResource,
15
- ProgressResource
15
+ ProgressResource,
16
+ AttendanceResource
16
17
  } from "./resources/index.mjs";
17
18
  export const PersonaliaModule = Module.define({
18
19
  definition: "neu:operasional:personalia",
@@ -32,6 +33,7 @@ export const PersonaliaModule = Module.define({
32
33
  TargetResource,
33
34
  PlanTypeResource,
34
35
  PlanResource,
35
- ProgressResource
36
+ ProgressResource,
37
+ AttendanceResource
36
38
  ]
37
39
  });
@@ -0,0 +1,6 @@
1
+ export declare const AttendanceModel: import("@neon.id/model").Model<"neu:personalia:attendance", "type" | "status" | "nameStaff" | "startedAt" | "endedAt" | "submitStaff" | "decideStaff" | "submittedAt" | "attendanceAt" | "notes" | "homeAt" | "earlyAt" | "comeAt" | "lateAt">;
2
+ export type TAttendanceModel = typeof AttendanceModel;
3
+ export declare const fragments: {
4
+ item: Schema.Attendance;
5
+ detail: Schema.Attendance;
6
+ };
@@ -0,0 +1,42 @@
1
+ import { models } from "@neutron.co.id/personalia-models";
2
+ export const AttendanceModel = models.AttendanceModel;
3
+ const item = {
4
+ id: 1,
5
+ display: 1,
6
+ flag: 1,
7
+ status: 1,
8
+ nameStaff: 1,
9
+ decideStaff: {
10
+ id: 1,
11
+ name: 1,
12
+ display: 1,
13
+ flag: 1
14
+ },
15
+ submitStaff: {
16
+ id: 1,
17
+ name: 1,
18
+ display: 1,
19
+ flag: 1
20
+ },
21
+ attendanceAt: 1,
22
+ type: 1,
23
+ notes: 1,
24
+ submittedAt: 1,
25
+ homeAt: 1,
26
+ earlyAt: 1,
27
+ comeAt: 1,
28
+ lateAt: 1,
29
+ startedAt: 1,
30
+ endedAt: 1,
31
+ updatedAt: 1,
32
+ updatedBy: 1
33
+ };
34
+ const detail = {
35
+ ...item,
36
+ submitStaffId: 1,
37
+ decideStaffId: 1
38
+ };
39
+ export const fragments = {
40
+ item,
41
+ detail
42
+ };
@@ -0,0 +1,2 @@
1
+ import { Resource } from '@neon.id/context';
2
+ export declare const AttendanceResource: Resource<Schema.Attendance, import("@neon.id/model").Model<"neu:personalia:attendance", "type" | "status" | "nameStaff" | "startedAt" | "endedAt" | "submitStaff" | "decideStaff" | "submittedAt" | "attendanceAt" | "notes" | "homeAt" | "earlyAt" | "comeAt" | "lateAt">>;
@@ -0,0 +1,47 @@
1
+ import { Resource } from "@neon.id/context";
2
+ import {
3
+ AttendanceCollectionView,
4
+ AttendanceSingleView,
5
+ AttendanceCollectionStaffView,
6
+ AttendanceSingleStaffView,
7
+ AttendanceCollectionManagerView,
8
+ AttendanceSingleManagerView
9
+ } from "./attendance.views.mjs";
10
+ import {
11
+ fragments,
12
+ AttendanceModel
13
+ } from "./attendance.model.mjs";
14
+ export const AttendanceResource = Resource.define({
15
+ model: AttendanceModel,
16
+ collection: {
17
+ title: "Absensi",
18
+ path: "attendances",
19
+ component: AttendanceCollectionView,
20
+ menu: true,
21
+ displays: ["table"]
22
+ },
23
+ single: {
24
+ path: "attendances/:slug",
25
+ component: AttendanceSingleView
26
+ },
27
+ views: {
28
+ attendanceStaff: {
29
+ path: "/penugasan/staff-attendances",
30
+ component: AttendanceCollectionStaffView
31
+ },
32
+ attendanceStaffSingle: {
33
+ path: "/penugasan/staff-attendances:slug",
34
+ component: AttendanceSingleStaffView
35
+ },
36
+ attendanceManager: {
37
+ path: "/penugasan/manager-attendances",
38
+ component: AttendanceCollectionManagerView
39
+ },
40
+ attendanceManagerSingle: {
41
+ path: "/penugasan/manager-attendances:slug",
42
+ component: AttendanceSingleManagerView
43
+ }
44
+ },
45
+ fragments,
46
+ renders: {}
47
+ });
@@ -0,0 +1,108 @@
1
+ export declare const AttendanceCollectionView: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
2
+ [key: string]: any;
3
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
4
+ export declare const AttendanceSingleView: import("vue").DefineComponent<{
5
+ id: {
6
+ type: StringConstructor;
7
+ default: null;
8
+ };
9
+ isNew: {
10
+ type: BooleanConstructor;
11
+ default: null;
12
+ };
13
+ isMain: {
14
+ type: BooleanConstructor;
15
+ default: boolean;
16
+ };
17
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
18
+ [key: string]: any;
19
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
20
+ id: {
21
+ type: StringConstructor;
22
+ default: null;
23
+ };
24
+ isNew: {
25
+ type: BooleanConstructor;
26
+ default: null;
27
+ };
28
+ isMain: {
29
+ type: BooleanConstructor;
30
+ default: boolean;
31
+ };
32
+ }>>, {
33
+ id: string;
34
+ isNew: boolean;
35
+ isMain: boolean;
36
+ }, {}>;
37
+ export declare const AttendanceCollectionStaffView: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
38
+ [key: string]: any;
39
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
40
+ export declare const AttendanceSingleStaffView: import("vue").DefineComponent<{
41
+ id: {
42
+ type: StringConstructor;
43
+ default: null;
44
+ };
45
+ isNew: {
46
+ type: BooleanConstructor;
47
+ default: null;
48
+ };
49
+ isMain: {
50
+ type: BooleanConstructor;
51
+ default: boolean;
52
+ };
53
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
54
+ [key: string]: any;
55
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
56
+ id: {
57
+ type: StringConstructor;
58
+ default: null;
59
+ };
60
+ isNew: {
61
+ type: BooleanConstructor;
62
+ default: null;
63
+ };
64
+ isMain: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ };
68
+ }>>, {
69
+ id: string;
70
+ isNew: boolean;
71
+ isMain: boolean;
72
+ }, {}>;
73
+ export declare const AttendanceCollectionManagerView: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
74
+ [key: string]: any;
75
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
76
+ export declare const AttendanceSingleManagerView: import("vue").DefineComponent<{
77
+ id: {
78
+ type: StringConstructor;
79
+ default: null;
80
+ };
81
+ isNew: {
82
+ type: BooleanConstructor;
83
+ default: null;
84
+ };
85
+ isMain: {
86
+ type: BooleanConstructor;
87
+ default: boolean;
88
+ };
89
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
90
+ [key: string]: any;
91
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
92
+ id: {
93
+ type: StringConstructor;
94
+ default: null;
95
+ };
96
+ isNew: {
97
+ type: BooleanConstructor;
98
+ default: null;
99
+ };
100
+ isMain: {
101
+ type: BooleanConstructor;
102
+ default: boolean;
103
+ };
104
+ }>>, {
105
+ id: string;
106
+ isNew: boolean;
107
+ isMain: boolean;
108
+ }, {}>;
@@ -0,0 +1,134 @@
1
+ import { useSingle } from "@neon.id/context";
2
+ import { NeonLabel } from "@neon.id/interfaces";
3
+ import { ResourceUtil } from "@neon.id/office";
4
+ import { Query } from "@neon.id/query";
5
+ import { useOperasional } from "@neutron.co.id/operasional-interfaces";
6
+ import { computed, h } from "vue";
7
+ export const AttendanceCollectionView = ResourceUtil.createCollection({
8
+ name: "default",
9
+ definition: "neu:personalia:attendance",
10
+ single: {
11
+ peeks: ["modal"]
12
+ }
13
+ });
14
+ export const AttendanceSingleView = ResourceUtil.createSingle({
15
+ name: "default",
16
+ definition: "neu:personalia:attendance",
17
+ slots: {
18
+ actions: {
19
+ setup: getLabel
20
+ }
21
+ }
22
+ });
23
+ export const AttendanceCollectionStaffView = ResourceUtil.createCollection({
24
+ name: "staff",
25
+ definition: "neu:personalia:attendance",
26
+ title: "Absensi",
27
+ icon: "person-chalkboard",
28
+ scope: "staff",
29
+ path: "/penugasan/staff-attendances",
30
+ single: {
31
+ view: "staff",
32
+ peeks: ["modal"]
33
+ },
34
+ filters: ["status", "type", "submitStaff", "decideStaff"],
35
+ sorts: ["submittedAt", "attendanceAt", "createdAt", "updatedAt"],
36
+ columns: [
37
+ "attendanceAt",
38
+ "submitStaff",
39
+ "type",
40
+ "notes",
41
+ "decideStaff",
42
+ "status"
43
+ ],
44
+ query: () => {
45
+ const { staff } = useOperasional();
46
+ return Query.define({
47
+ filter: {
48
+ handle: "submitStaffId",
49
+ operator: "eq",
50
+ value: staff.value?.id
51
+ },
52
+ sort: [{ handle: "createdAt", direction: "descending" }]
53
+ });
54
+ }
55
+ });
56
+ export const AttendanceSingleStaffView = ResourceUtil.createSingle({
57
+ name: "staff",
58
+ definition: "neu:personalia:attendance",
59
+ slots: {
60
+ default: "staff",
61
+ actions: {
62
+ setup: getLabel
63
+ }
64
+ }
65
+ });
66
+ export const AttendanceCollectionManagerView = ResourceUtil.createCollection({
67
+ name: "manager",
68
+ definition: "neu:personalia:attendance",
69
+ title: "Absensi",
70
+ icon: "person-chalkboard",
71
+ scope: "manager",
72
+ path: "/penugasan/manager-attendances",
73
+ single: {
74
+ view: "manager",
75
+ peeks: ["modal"]
76
+ },
77
+ filters: ["status", "type", "submitStaff", "decideStaff"],
78
+ sorts: ["submittedAt", "attendanceAt", "createdAt", "updatedAt"],
79
+ columns: [
80
+ "attendanceAt",
81
+ "submitStaff",
82
+ "type",
83
+ "notes",
84
+ "decideStaff",
85
+ "status"
86
+ ],
87
+ query: () => {
88
+ return Query.define({
89
+ filter: {
90
+ handle: "status",
91
+ operator: "in",
92
+ value: ["approved", "notApproved"]
93
+ },
94
+ sort: [{ handle: "createdAt", direction: "descending" }]
95
+ });
96
+ },
97
+ excludes: ["create"]
98
+ });
99
+ export const AttendanceSingleManagerView = ResourceUtil.createSingle({
100
+ name: "manager",
101
+ definition: "neu:personalia:attendance",
102
+ slots: {
103
+ default: "manager",
104
+ actions: {
105
+ setup: getLabel
106
+ }
107
+ }
108
+ });
109
+ function getLabel() {
110
+ const { isNew, values, isLoading } = useSingle();
111
+ const actions = {
112
+ approved: {
113
+ label: "Disetujui",
114
+ color: "success"
115
+ },
116
+ notApproved: {
117
+ label: "Belum Disetujui",
118
+ color: "warning"
119
+ }
120
+ };
121
+ const action = computed(() => actions[values.value.status]);
122
+ return () => {
123
+ if (isNew.value || !action.value)
124
+ return null;
125
+ return h("div", { class: "px-1 pt-0.5 pb-1" }, [
126
+ h(NeonLabel, {
127
+ text: action.value?.label,
128
+ size: "md",
129
+ color: action.value?.color,
130
+ isLoading: isLoading.value
131
+ })
132
+ ]);
133
+ };
134
+ }
@@ -0,0 +1,2 @@
1
+ export * from './attendance.views';
2
+ export * from './attendance.resource';
@@ -0,0 +1,2 @@
1
+ export * from "./attendance.views.mjs";
2
+ export * from "./attendance.resource.mjs";
@@ -11,3 +11,4 @@ export * from './target';
11
11
  export * from './planType';
12
12
  export * from './plan';
13
13
  export * from './progress';
14
+ export * from './attendance';
@@ -11,3 +11,4 @@ export * from "./target/index.mjs";
11
11
  export * from "./planType/index.mjs";
12
12
  export * from "./plan/index.mjs";
13
13
  export * from "./progress/index.mjs";
14
+ export * from "./attendance/index.mjs";
@@ -1,4 +1,4 @@
1
- export declare const PlanModel: import("@neon.id/model").Model<"neu:personalia:plan", "name" | "branches" | "staffs" | "detail" | "target" | "stages" | "startedEst" | "endedEst" | "domain" | "planTypes">;
1
+ export declare const PlanModel: import("@neon.id/model").Model<"neu:personalia:plan", "name" | "branches" | "staffs" | "detail" | "target" | "stages" | "startedAt" | "endedAt" | "domain" | "planTypes">;
2
2
  export type TPlanModel = typeof PlanModel;
3
3
  export declare const fragments: {
4
4
  item: Schema.Plan;
@@ -15,8 +15,8 @@ const item = {
15
15
  flag: 1
16
16
  },
17
17
  domain: 1,
18
- startedEst: 1,
19
- endedEst: 1,
18
+ startedAt: 1,
19
+ endedAt: 1,
20
20
  planTypes: {
21
21
  id: 1,
22
22
  name: 1,
@@ -1,2 +1,2 @@
1
1
  import { Resource } from '@neon.id/context';
2
- export declare const PlanResource: Resource<Schema.Plan, import("@neon.id/model").Model<"neu:personalia:plan", "name" | "branches" | "staffs" | "detail" | "target" | "stages" | "startedEst" | "endedEst" | "domain" | "planTypes">>;
2
+ export declare const PlanResource: Resource<Schema.Plan, import("@neon.id/model").Model<"neu:personalia:plan", "name" | "branches" | "staffs" | "detail" | "target" | "stages" | "startedAt" | "endedAt" | "domain" | "planTypes">>;
@@ -24,12 +24,12 @@ export const PlanCollectionStaffView = ResourceUtil.createCollection({
24
24
  peeks: ["modal"]
25
25
  },
26
26
  filters: ["branches", "domain", "planTypes", "stages", "target"],
27
- sorts: ["startedEst", "endedEst", "createdAt", "updatedAt"],
27
+ sorts: ["startedAt", "endedAt", "createdAt", "updatedAt"],
28
28
  columns: [
29
29
  "branches",
30
30
  "name",
31
- "startedEst",
32
- "endedEst",
31
+ "startedAt",
32
+ "endedAt",
33
33
  "domain",
34
34
  "planTypes",
35
35
  "stages",
@@ -1,4 +1,4 @@
1
- export declare const ProgressModel: import("@neon.id/model").Model<"neu:personalia:progress", "staff" | "nameStaff" | "submissions" | "detail" | "responsibilities" | "startedEst" | "endedEst" | "plans">;
1
+ export declare const ProgressModel: import("@neon.id/model").Model<"neu:personalia:progress", "staffs" | "nameStaff" | "submissions" | "detail" | "responsibilities" | "startedAt" | "endedAt" | "plans" | "virtualIsNotes" | "isNotes">;
2
2
  export type TProgressModel = typeof ProgressModel;
3
3
  export declare const fragments: {
4
4
  item: Schema.Progress;
@@ -6,8 +6,8 @@ const item = {
6
6
  flag: 1,
7
7
  updatedAt: 1,
8
8
  updatedBy: 1,
9
- startedEst: 1,
10
- endedEst: 1,
9
+ startedAt: 1,
10
+ endedAt: 1,
11
11
  detail: 1,
12
12
  responsibilities: {
13
13
  id: 1,
@@ -21,7 +21,7 @@ const item = {
21
21
  display: 1,
22
22
  flag: 1
23
23
  },
24
- staff: {
24
+ staffs: {
25
25
  id: 1,
26
26
  name: 1,
27
27
  display: 1,
@@ -33,13 +33,22 @@ const item = {
33
33
  title: 1,
34
34
  display: 1,
35
35
  flag: 1
36
- }
36
+ },
37
+ isNotes: 1,
38
+ createdBy: 1,
39
+ creator: {
40
+ id: 1,
41
+ name: 1,
42
+ display: 1,
43
+ flag: 1
44
+ },
45
+ virtualIsNotes: 1
37
46
  };
38
47
  const detail = {
39
48
  ...item,
40
49
  responsibilityIds: 1,
41
50
  planIds: 1,
42
- staffId: 1,
51
+ staffIds: 1,
43
52
  submissionIds: 1
44
53
  };
45
54
  export const fragments = {
@@ -1,2 +1,2 @@
1
1
  import { Resource } from '@neon.id/context';
2
- export declare const ProgressResource: Resource<Schema.Progress, import("@neon.id/model").Model<"neu:personalia:progress", "staff" | "nameStaff" | "submissions" | "detail" | "responsibilities" | "startedEst" | "endedEst" | "plans">>;
2
+ export declare const ProgressResource: Resource<Schema.Progress, import("@neon.id/model").Model<"neu:personalia:progress", "staffs" | "nameStaff" | "submissions" | "detail" | "responsibilities" | "startedAt" | "endedAt" | "plans" | "virtualIsNotes" | "isNotes">>;
@@ -3,7 +3,8 @@ import {
3
3
  ProgressCollectionView,
4
4
  ProgressSingleView,
5
5
  ProgressSingleTomorrowView,
6
- ProgressSingleYesterdayView
6
+ ProgressSingleYesterdayView,
7
+ ProgressCollectionAdminView
7
8
  } from "./progress.views.mjs";
8
9
  import { fragments, ProgressModel } from "./progress.model.mjs";
9
10
  export const ProgressResource = Resource.define({
@@ -13,13 +14,17 @@ export const ProgressResource = Resource.define({
13
14
  path: "progresses",
14
15
  component: ProgressCollectionView,
15
16
  menu: true,
16
- displays: ["table"]
17
+ displays: ["table", "calendar"]
17
18
  },
18
19
  single: {
19
20
  path: "progresses/:slug",
20
21
  component: ProgressSingleView
21
22
  },
22
23
  views: {
24
+ progressAdmin: {
25
+ path: "/penugasan/admin-progresses",
26
+ component: ProgressCollectionAdminView
27
+ },
23
28
  progressTomorrowSingle: {
24
29
  path: "/penugasan/tomorrow-progresses/:slug",
25
30
  component: ProgressSingleTomorrowView
@@ -1,6 +1,9 @@
1
1
  export declare const ProgressCollectionView: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
2
2
  [key: string]: any;
3
3
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
4
+ export declare const ProgressCollectionAdminView: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5
+ [key: string]: any;
6
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
4
7
  export declare const ProgressSingleView: import("vue").DefineComponent<{
5
8
  id: {
6
9
  type: StringConstructor;
@@ -5,7 +5,6 @@ import {
5
5
  useOperasional
6
6
  } from "@neutron.co.id/operasional-interfaces";
7
7
  import { Query } from "@neon.id/query";
8
- import dayjs from "dayjs";
9
8
  export const ProgressCollectionView = ResourceUtil.createCollection({
10
9
  name: "default",
11
10
  definition: "neu:personalia:progress",
@@ -18,30 +17,37 @@ export const ProgressCollectionView = ResourceUtil.createCollection({
18
17
  excludes: ["create"],
19
18
  query: () => {
20
19
  const { staff } = useOperasional();
21
- const today = dayjs(/* @__PURE__ */ new Date()).hour(0).minute(0).second(0).millisecond(0).toISOString();
22
- const yesterday = dayjs(/* @__PURE__ */ new Date()).add(1, "day").hour(0).minute(0).second(0).millisecond(0).toISOString();
23
20
  return Query.define({
24
21
  filter: [
25
22
  {
26
- handle: "staffId",
23
+ handle: "staffIds",
27
24
  operator: "in",
28
25
  value: staff.value?.id
29
- },
30
- {
31
- startedEst: {
32
- $gte: today
33
- }
34
- },
35
- {
36
- startedEst: {
37
- $lt: yesterday
38
- }
39
26
  }
27
+ // {
28
+ // startedAt: {
29
+ // $gte: today,
30
+ // },
31
+ // },
32
+ // {
33
+ // startedAt: {
34
+ // $lt: yesterday,
35
+ // },
36
+ // },
40
37
  ],
41
- sort: [{ handle: "startedEst", direction: "ascending" }]
38
+ sort: [{ handle: "startedAt", direction: "ascending" }]
42
39
  });
43
40
  }
44
41
  });
42
+ export const ProgressCollectionAdminView = ResourceUtil.createCollection({
43
+ name: "admin",
44
+ definition: "neu:personalia:progress",
45
+ scope: "admin",
46
+ path: "/penugasan/admin-progresses",
47
+ single: {
48
+ peeks: ["modal"]
49
+ }
50
+ });
45
51
  export const ProgressSingleView = ResourceUtil.createSingle({
46
52
  name: "default",
47
53
  definition: "neu:personalia:progress"
@@ -1,4 +1,4 @@
1
- export declare const TargetModel: import("@neon.id/model").Model<"neu:personalia:target", "name" | "branches" | "condition" | "targetEst" | "stages" | "startedEst" | "endedEst" | "actualInvoice" | "school">;
1
+ export declare const TargetModel: import("@neon.id/model").Model<"neu:personalia:target", "name" | "branches" | "condition" | "targetEst" | "stages" | "startedAt" | "endedAt" | "actualInvoice" | "school">;
2
2
  export type TTargetModel = typeof TargetModel;
3
3
  export declare const fragments: {
4
4
  item: Schema.Target;
@@ -20,8 +20,8 @@ const item = {
20
20
  display: 1,
21
21
  flag: 1
22
22
  },
23
- startedEst: 1,
24
- endedEst: 1,
23
+ startedAt: 1,
24
+ endedAt: 1,
25
25
  targetEst: 1,
26
26
  actualInvoice: 1,
27
27
  school: {
@@ -1,2 +1,2 @@
1
1
  import { Resource } from '@neon.id/context';
2
- export declare const TargetResource: Resource<Schema.Target, import("@neon.id/model").Model<"neu:personalia:target", "name" | "branches" | "condition" | "targetEst" | "stages" | "startedEst" | "endedEst" | "actualInvoice" | "school">>;
2
+ export declare const TargetResource: Resource<Schema.Target, import("@neon.id/model").Model<"neu:personalia:target", "name" | "branches" | "condition" | "targetEst" | "stages" | "startedAt" | "endedAt" | "actualInvoice" | "school">>;
@@ -35,16 +35,16 @@ export const TargetCollectionBranchView = ResourceUtil.createCollection({
35
35
  "branches",
36
36
  "name",
37
37
  "stages",
38
- "startedEst",
39
- "endedEst",
38
+ "startedAt",
39
+ "endedAt",
40
40
  "targetEst",
41
41
  "actualInvoice",
42
42
  "condition"
43
43
  ],
44
44
  filters: ["branches", "stages", "condition"],
45
45
  sorts: [
46
- "startedEst",
47
- "endedEst",
46
+ "startedAt",
47
+ "endedAt",
48
48
  "targetEst",
49
49
  "actualInvoice",
50
50
  "createdAt",
@@ -1,2 +1,2 @@
1
- import { CheckInCollectionView, CheckInSingleView, CheckInCollectionExternalView, CheckInSingleExternalView, PlanCollectionView, PlanSingleView, PlanCollectionStaffView, PlanSingleStaffView, PlanTypeCollectionView, PlanTypeSingleView, ProgressCollectionView, ProgressSingleView, ProgressSingleYesterdayView, ProgressSingleTomorrowView, ResponsibilityCollectionView, ResponsibilitySingleView, ResponsibilityCollectionStaffView, ResponsibilitySingleStaffView, ResponsibilityTypeCollectionView, ResponsibilityTypeSingleView, SituationCollectionView, SituationSingleView, SituationCollectionWorkView, SituationSingleWorkView, SituationCollectionSupportiveView, SituationSingleSupportiveView, SituationTypeCollectionView, SituationTypeSingleView, StaffCollectionView, StaffSingleView, StaffCollectionOperasionalView, StaffSingleOperasionalView, SubmissionCollectionView, SubmissionSingleView, SubmissionCollectionStaffView, SubmissionSingleStaffView, SubmissionCollectionFollowUpView, SubmissionSingleFollowUpView, SubmissionCollectionAuditView, SubmissionSingleAuditView, SubmissionCollectionDecisionView, SubmissionSingleDecisionView, SubmissionCollectionWaitingDecisionView, SubmissionSingleWaitingDecisionView, SubmissionTypeCollectionView, SubmissionTypeSingleView, TargetCollectionView, TargetSingleView, TargetCollectionBranchView, TargetSingleBranchView, TaskCollectionView, TaskSingleView, TaskCollectionPlanView, TaskSinglePlanView, TaskCollectionWorkView, TaskSingleWorkView } from './resources'
2
- export { CheckInCollectionView, CheckInSingleView, CheckInCollectionExternalView, CheckInSingleExternalView, PlanCollectionView, PlanSingleView, PlanCollectionStaffView, PlanSingleStaffView, PlanTypeCollectionView, PlanTypeSingleView, ProgressCollectionView, ProgressSingleView, ProgressSingleYesterdayView, ProgressSingleTomorrowView, ResponsibilityCollectionView, ResponsibilitySingleView, ResponsibilityCollectionStaffView, ResponsibilitySingleStaffView, ResponsibilityTypeCollectionView, ResponsibilityTypeSingleView, SituationCollectionView, SituationSingleView, SituationCollectionWorkView, SituationSingleWorkView, SituationCollectionSupportiveView, SituationSingleSupportiveView, SituationTypeCollectionView, SituationTypeSingleView, StaffCollectionView, StaffSingleView, StaffCollectionOperasionalView, StaffSingleOperasionalView, SubmissionCollectionView, SubmissionSingleView, SubmissionCollectionStaffView, SubmissionSingleStaffView, SubmissionCollectionFollowUpView, SubmissionSingleFollowUpView, SubmissionCollectionAuditView, SubmissionSingleAuditView, SubmissionCollectionDecisionView, SubmissionSingleDecisionView, SubmissionCollectionWaitingDecisionView, SubmissionSingleWaitingDecisionView, SubmissionTypeCollectionView, SubmissionTypeSingleView, TargetCollectionView, TargetSingleView, TargetCollectionBranchView, TargetSingleBranchView, TaskCollectionView, TaskSingleView, TaskCollectionPlanView, TaskSinglePlanView, TaskCollectionWorkView, TaskSingleWorkView }
1
+ import { CheckInCollectionView, CheckInSingleView, CheckInCollectionExternalView, CheckInSingleExternalView, AttendanceCollectionView, AttendanceSingleView, AttendanceCollectionStaffView, AttendanceSingleStaffView, AttendanceCollectionManagerView, AttendanceSingleManagerView, PlanCollectionView, PlanSingleView, PlanCollectionStaffView, PlanSingleStaffView, PlanTypeCollectionView, PlanTypeSingleView, ProgressCollectionView, ProgressCollectionAdminView, ProgressSingleView, ProgressSingleYesterdayView, ProgressSingleTomorrowView, ResponsibilityCollectionView, ResponsibilitySingleView, ResponsibilityCollectionStaffView, ResponsibilitySingleStaffView, ResponsibilityTypeCollectionView, ResponsibilityTypeSingleView, SituationCollectionView, SituationSingleView, SituationCollectionWorkView, SituationSingleWorkView, SituationCollectionSupportiveView, SituationSingleSupportiveView, SituationTypeCollectionView, SituationTypeSingleView, StaffCollectionView, StaffSingleView, StaffCollectionOperasionalView, StaffSingleOperasionalView, SubmissionCollectionView, SubmissionSingleView, SubmissionCollectionStaffView, SubmissionSingleStaffView, SubmissionCollectionFollowUpView, SubmissionSingleFollowUpView, SubmissionCollectionAuditView, SubmissionSingleAuditView, SubmissionCollectionDecisionView, SubmissionSingleDecisionView, SubmissionCollectionWaitingDecisionView, SubmissionSingleWaitingDecisionView, SubmissionTypeCollectionView, SubmissionTypeSingleView, TargetCollectionView, TargetSingleView, TargetCollectionBranchView, TargetSingleBranchView, TaskCollectionView, TaskSingleView, TaskCollectionPlanView, TaskSinglePlanView, TaskCollectionWorkView, TaskSingleWorkView } from './resources'
2
+ export { CheckInCollectionView, CheckInSingleView, CheckInCollectionExternalView, CheckInSingleExternalView, AttendanceCollectionView, AttendanceSingleView, AttendanceCollectionStaffView, AttendanceSingleStaffView, AttendanceCollectionManagerView, AttendanceSingleManagerView, PlanCollectionView, PlanSingleView, PlanCollectionStaffView, PlanSingleStaffView, PlanTypeCollectionView, PlanTypeSingleView, ProgressCollectionView, ProgressCollectionAdminView, ProgressSingleView, ProgressSingleYesterdayView, ProgressSingleTomorrowView, ResponsibilityCollectionView, ResponsibilitySingleView, ResponsibilityCollectionStaffView, ResponsibilitySingleStaffView, ResponsibilityTypeCollectionView, ResponsibilityTypeSingleView, SituationCollectionView, SituationSingleView, SituationCollectionWorkView, SituationSingleWorkView, SituationCollectionSupportiveView, SituationSingleSupportiveView, SituationTypeCollectionView, SituationTypeSingleView, StaffCollectionView, StaffSingleView, StaffCollectionOperasionalView, StaffSingleOperasionalView, SubmissionCollectionView, SubmissionSingleView, SubmissionCollectionStaffView, SubmissionSingleStaffView, SubmissionCollectionFollowUpView, SubmissionSingleFollowUpView, SubmissionCollectionAuditView, SubmissionSingleAuditView, SubmissionCollectionDecisionView, SubmissionSingleDecisionView, SubmissionCollectionWaitingDecisionView, SubmissionSingleWaitingDecisionView, SubmissionTypeCollectionView, SubmissionTypeSingleView, TargetCollectionView, TargetSingleView, TargetCollectionBranchView, TargetSingleBranchView, TaskCollectionView, TaskSingleView, TaskCollectionPlanView, TaskSinglePlanView, TaskCollectionWorkView, TaskSingleWorkView }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neutron.co.id/operasional-modules",
3
- "version": "1.7.0",
3
+ "version": "1.8.0",
4
4
  "description": "Modules of Neutron Operasional.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "contributors": [
@@ -40,32 +40,32 @@
40
40
  "lint": "eslint src/ --ext .js,.ts"
41
41
  },
42
42
  "dependencies": {
43
- "@neutron.co.id/operasional-interfaces": "^1.6.7",
44
- "@neutron.co.id/personalia-models": "^1.7.0"
43
+ "@neutron.co.id/operasional-interfaces": "^1.7.2",
44
+ "@neutron.co.id/personalia-models": "^1.8.0"
45
45
  },
46
46
  "devDependencies": {
47
- "@graphql-codegen/cli": "4.0.0",
48
- "@graphql-codegen/client-preset": "4.0.0",
47
+ "@graphql-codegen/cli": "4.0.1",
48
+ "@graphql-codegen/client-preset": "4.0.1",
49
49
  "@neon.id/types": "1.45.0",
50
- "@types/eslint": "8.40.0",
51
- "@types/node": "20.2.4",
52
- "@types/prettier": "2.7.2",
50
+ "@types/eslint": "8.40.2",
51
+ "@types/node": "20.3.1",
52
+ "@types/prettier": "2.7.3",
53
53
  "@vortex.so/eslint-plugin": "0.7.0",
54
- "eslint": "8.41.0",
55
- "globby": "13.1.4",
56
- "magicast": "0.2.8",
54
+ "eslint": "8.43.0",
55
+ "globby": "13.2.0",
56
+ "magicast": "0.2.9",
57
57
  "prettier": "2.8.8",
58
- "typescript": "5.0.4",
58
+ "typescript": "5.1.3",
59
59
  "unbuild": "1.2.1",
60
- "vite": "4.3.8",
61
- "vitest": "0.31.1"
60
+ "vite": "4.3.9",
61
+ "vitest": "0.32.2"
62
62
  },
63
63
  "peerDependencies": {
64
- "@neutron.co.id/operasional-interfaces": "^1.6.7",
65
- "@neutron.co.id/personalia-models": "^1.7.0"
64
+ "@neutron.co.id/operasional-interfaces": "^1.7.2",
65
+ "@neutron.co.id/personalia-models": "^1.8.0"
66
66
  },
67
67
  "publishConfig": {
68
68
  "access": "public"
69
69
  },
70
- "build": 58
70
+ "build": 60
71
71
  }