@kernhq/module-inventory 0.3.0 → 0.4.1

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 (42) hide show
  1. package/README.md +7 -5
  2. package/dist/contract/models.d.ts +24 -1
  3. package/dist/contract/models.d.ts.map +1 -1
  4. package/dist/contract/models.js +35 -3
  5. package/dist/contract/models.js.map +1 -1
  6. package/dist/contract/router.d.ts +58 -2
  7. package/dist/contract/router.d.ts.map +1 -1
  8. package/dist/contract/router.js +29 -1
  9. package/dist/contract/router.js.map +1 -1
  10. package/dist/server/router.d.ts +64 -393
  11. package/dist/server/router.d.ts.map +1 -1
  12. package/dist/server/router.js +23 -1
  13. package/dist/server/router.js.map +1 -1
  14. package/dist/server/schema.d.ts.map +1 -1
  15. package/dist/server/schema.js +11 -0
  16. package/dist/server/schema.js.map +1 -1
  17. package/dist/server/services/categories.d.ts +110 -10
  18. package/dist/server/services/categories.d.ts.map +1 -1
  19. package/dist/server/services/categories.js +198 -13
  20. package/dist/server/services/categories.js.map +1 -1
  21. package/migrations/0008_category_order_unique.sql +71 -0
  22. package/migrations/meta/_journal.json +7 -0
  23. package/package.json +4 -3
  24. package/src/client/errors.test.ts +30 -0
  25. package/src/client/errors.ts +31 -3
  26. package/src/client/messages.ts +82 -19
  27. package/src/client/mock.test.ts +71 -1
  28. package/src/client/mock.ts +51 -12
  29. package/src/client/module.ts +19 -1
  30. package/src/client/reorder.test.ts +100 -0
  31. package/src/client/reorder.ts +79 -0
  32. package/src/client/sequence.test.ts +248 -0
  33. package/src/client/sequence.ts +185 -0
  34. package/src/client/settings/CategoriesSettings.svelte +430 -105
  35. package/src/contract/models.ts +36 -3
  36. package/src/contract/router.ts +29 -0
  37. package/src/module.test.ts +23 -0
  38. package/src/server/inventory.int.test.ts +545 -10
  39. package/src/server/migrations.test.ts +140 -2
  40. package/src/server/router.ts +25 -1
  41. package/src/server/schema.ts +11 -0
  42. package/src/server/services/categories.ts +221 -20
@@ -16,23 +16,7 @@ export declare function inventoryRouter(kernel: Kernel): {
16
16
  list: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
17
17
  workspaceId: string;
18
18
  kernel: Kernel;
19
- principal: {
20
- kind: "service" | "user" | "api_key" | "anonymous";
21
- userId: (string & import("zod").$brand<"UserId">) | null;
22
- email: string | null;
23
- name: string | null;
24
- locale: "en" | "fa" | "ar" | "de";
25
- instanceAdmin: boolean;
26
- service: string | null;
27
- memberships: {
28
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
29
- role: "owner" | "admin" | "member" | "guest";
30
- roleIds: string[];
31
- groupIds: string[];
32
- status: "active" | "invited" | "suspended";
33
- }[];
34
- permissionVersion: number;
35
- };
19
+ principal: import("@kernhq/contracts").Principal;
36
20
  requestId: string;
37
21
  ip: string;
38
22
  headers: Record<string, string | string[] | undefined>;
@@ -116,23 +100,7 @@ export declare function inventoryRouter(kernel: Kernel): {
116
100
  get: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
117
101
  workspaceId: string;
118
102
  kernel: Kernel;
119
- principal: {
120
- kind: "service" | "user" | "api_key" | "anonymous";
121
- userId: (string & import("zod").$brand<"UserId">) | null;
122
- email: string | null;
123
- name: string | null;
124
- locale: "en" | "fa" | "ar" | "de";
125
- instanceAdmin: boolean;
126
- service: string | null;
127
- memberships: {
128
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
129
- role: "owner" | "admin" | "member" | "guest";
130
- roleIds: string[];
131
- groupIds: string[];
132
- status: "active" | "invited" | "suspended";
133
- }[];
134
- permissionVersion: number;
135
- };
103
+ principal: import("@kernhq/contracts").Principal;
136
104
  requestId: string;
137
105
  ip: string;
138
106
  headers: Record<string, string | string[] | undefined>;
@@ -194,23 +162,7 @@ export declare function inventoryRouter(kernel: Kernel): {
194
162
  history: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
195
163
  workspaceId: string;
196
164
  kernel: Kernel;
197
- principal: {
198
- kind: "service" | "user" | "api_key" | "anonymous";
199
- userId: (string & import("zod").$brand<"UserId">) | null;
200
- email: string | null;
201
- name: string | null;
202
- locale: "en" | "fa" | "ar" | "de";
203
- instanceAdmin: boolean;
204
- service: string | null;
205
- memberships: {
206
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
207
- role: "owner" | "admin" | "member" | "guest";
208
- roleIds: string[];
209
- groupIds: string[];
210
- status: "active" | "invited" | "suspended";
211
- }[];
212
- permissionVersion: number;
213
- };
165
+ principal: import("@kernhq/contracts").Principal;
214
166
  requestId: string;
215
167
  ip: string;
216
168
  headers: Record<string, string | string[] | undefined>;
@@ -261,23 +213,7 @@ export declare function inventoryRouter(kernel: Kernel): {
261
213
  create: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
262
214
  workspaceId: string;
263
215
  kernel: Kernel;
264
- principal: {
265
- kind: "service" | "user" | "api_key" | "anonymous";
266
- userId: (string & import("zod").$brand<"UserId">) | null;
267
- email: string | null;
268
- name: string | null;
269
- locale: "en" | "fa" | "ar" | "de";
270
- instanceAdmin: boolean;
271
- service: string | null;
272
- memberships: {
273
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
274
- role: "owner" | "admin" | "member" | "guest";
275
- roleIds: string[];
276
- groupIds: string[];
277
- status: "active" | "invited" | "suspended";
278
- }[];
279
- permissionVersion: number;
280
- };
216
+ principal: import("@kernhq/contracts").Principal;
281
217
  requestId: string;
282
218
  ip: string;
283
219
  headers: Record<string, string | string[] | undefined>;
@@ -349,23 +285,7 @@ export declare function inventoryRouter(kernel: Kernel): {
349
285
  update: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
350
286
  workspaceId: string;
351
287
  kernel: Kernel;
352
- principal: {
353
- kind: "service" | "user" | "api_key" | "anonymous";
354
- userId: (string & import("zod").$brand<"UserId">) | null;
355
- email: string | null;
356
- name: string | null;
357
- locale: "en" | "fa" | "ar" | "de";
358
- instanceAdmin: boolean;
359
- service: string | null;
360
- memberships: {
361
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
362
- role: "owner" | "admin" | "member" | "guest";
363
- roleIds: string[];
364
- groupIds: string[];
365
- status: "active" | "invited" | "suspended";
366
- }[];
367
- permissionVersion: number;
368
- };
288
+ principal: import("@kernhq/contracts").Principal;
369
289
  requestId: string;
370
290
  ip: string;
371
291
  headers: Record<string, string | string[] | undefined>;
@@ -438,23 +358,7 @@ export declare function inventoryRouter(kernel: Kernel): {
438
358
  archive: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
439
359
  workspaceId: string;
440
360
  kernel: Kernel;
441
- principal: {
442
- kind: "service" | "user" | "api_key" | "anonymous";
443
- userId: (string & import("zod").$brand<"UserId">) | null;
444
- email: string | null;
445
- name: string | null;
446
- locale: "en" | "fa" | "ar" | "de";
447
- instanceAdmin: boolean;
448
- service: string | null;
449
- memberships: {
450
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
451
- role: "owner" | "admin" | "member" | "guest";
452
- roleIds: string[];
453
- groupIds: string[];
454
- status: "active" | "invited" | "suspended";
455
- }[];
456
- permissionVersion: number;
457
- };
361
+ principal: import("@kernhq/contracts").Principal;
458
362
  requestId: string;
459
363
  ip: string;
460
364
  headers: Record<string, string | string[] | undefined>;
@@ -519,23 +423,7 @@ export declare function inventoryRouter(kernel: Kernel): {
519
423
  history: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
520
424
  workspaceId: string;
521
425
  kernel: Kernel;
522
- principal: {
523
- kind: "service" | "user" | "api_key" | "anonymous";
524
- userId: (string & import("zod").$brand<"UserId">) | null;
525
- email: string | null;
526
- name: string | null;
527
- locale: "en" | "fa" | "ar" | "de";
528
- instanceAdmin: boolean;
529
- service: string | null;
530
- memberships: {
531
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
532
- role: "owner" | "admin" | "member" | "guest";
533
- roleIds: string[];
534
- groupIds: string[];
535
- status: "active" | "invited" | "suspended";
536
- }[];
537
- permissionVersion: number;
538
- };
426
+ principal: import("@kernhq/contracts").Principal;
539
427
  requestId: string;
540
428
  ip: string;
541
429
  headers: Record<string, string | string[] | undefined>;
@@ -579,23 +467,7 @@ export declare function inventoryRouter(kernel: Kernel): {
579
467
  byUser: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
580
468
  workspaceId: string;
581
469
  kernel: Kernel;
582
- principal: {
583
- kind: "service" | "user" | "api_key" | "anonymous";
584
- userId: (string & import("zod").$brand<"UserId">) | null;
585
- email: string | null;
586
- name: string | null;
587
- locale: "en" | "fa" | "ar" | "de";
588
- instanceAdmin: boolean;
589
- service: string | null;
590
- memberships: {
591
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
592
- role: "owner" | "admin" | "member" | "guest";
593
- roleIds: string[];
594
- groupIds: string[];
595
- status: "active" | "invited" | "suspended";
596
- }[];
597
- permissionVersion: number;
598
- };
470
+ principal: import("@kernhq/contracts").Principal;
599
471
  requestId: string;
600
472
  ip: string;
601
473
  headers: Record<string, string | string[] | undefined>;
@@ -663,23 +535,7 @@ export declare function inventoryRouter(kernel: Kernel): {
663
535
  assign: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
664
536
  workspaceId: string;
665
537
  kernel: Kernel;
666
- principal: {
667
- kind: "service" | "user" | "api_key" | "anonymous";
668
- userId: (string & import("zod").$brand<"UserId">) | null;
669
- email: string | null;
670
- name: string | null;
671
- locale: "en" | "fa" | "ar" | "de";
672
- instanceAdmin: boolean;
673
- service: string | null;
674
- memberships: {
675
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
676
- role: "owner" | "admin" | "member" | "guest";
677
- roleIds: string[];
678
- groupIds: string[];
679
- status: "active" | "invited" | "suspended";
680
- }[];
681
- permissionVersion: number;
682
- };
538
+ principal: import("@kernhq/contracts").Principal;
683
539
  requestId: string;
684
540
  ip: string;
685
541
  headers: Record<string, string | string[] | undefined>;
@@ -756,23 +612,7 @@ export declare function inventoryRouter(kernel: Kernel): {
756
612
  transfer: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
757
613
  workspaceId: string;
758
614
  kernel: Kernel;
759
- principal: {
760
- kind: "service" | "user" | "api_key" | "anonymous";
761
- userId: (string & import("zod").$brand<"UserId">) | null;
762
- email: string | null;
763
- name: string | null;
764
- locale: "en" | "fa" | "ar" | "de";
765
- instanceAdmin: boolean;
766
- service: string | null;
767
- memberships: {
768
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
769
- role: "owner" | "admin" | "member" | "guest";
770
- roleIds: string[];
771
- groupIds: string[];
772
- status: "active" | "invited" | "suspended";
773
- }[];
774
- permissionVersion: number;
775
- };
615
+ principal: import("@kernhq/contracts").Principal;
776
616
  requestId: string;
777
617
  ip: string;
778
618
  headers: Record<string, string | string[] | undefined>;
@@ -849,23 +689,7 @@ export declare function inventoryRouter(kernel: Kernel): {
849
689
  return: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
850
690
  workspaceId: string;
851
691
  kernel: Kernel;
852
- principal: {
853
- kind: "service" | "user" | "api_key" | "anonymous";
854
- userId: (string & import("zod").$brand<"UserId">) | null;
855
- email: string | null;
856
- name: string | null;
857
- locale: "en" | "fa" | "ar" | "de";
858
- instanceAdmin: boolean;
859
- service: string | null;
860
- memberships: {
861
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
862
- role: "owner" | "admin" | "member" | "guest";
863
- roleIds: string[];
864
- groupIds: string[];
865
- status: "active" | "invited" | "suspended";
866
- }[];
867
- permissionVersion: number;
868
- };
692
+ principal: import("@kernhq/contracts").Principal;
869
693
  requestId: string;
870
694
  ip: string;
871
695
  headers: Record<string, string | string[] | undefined>;
@@ -943,23 +767,7 @@ export declare function inventoryRouter(kernel: Kernel): {
943
767
  list: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
944
768
  workspaceId: string;
945
769
  kernel: Kernel;
946
- principal: {
947
- kind: "service" | "user" | "api_key" | "anonymous";
948
- userId: (string & import("zod").$brand<"UserId">) | null;
949
- email: string | null;
950
- name: string | null;
951
- locale: "en" | "fa" | "ar" | "de";
952
- instanceAdmin: boolean;
953
- service: string | null;
954
- memberships: {
955
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
956
- role: "owner" | "admin" | "member" | "guest";
957
- roleIds: string[];
958
- groupIds: string[];
959
- status: "active" | "invited" | "suspended";
960
- }[];
961
- permissionVersion: number;
962
- };
770
+ principal: import("@kernhq/contracts").Principal;
963
771
  requestId: string;
964
772
  ip: string;
965
773
  headers: Record<string, string | string[] | undefined>;
@@ -1000,30 +808,13 @@ export declare function inventoryRouter(kernel: Kernel): {
1000
808
  create: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
1001
809
  workspaceId: string;
1002
810
  kernel: Kernel;
1003
- principal: {
1004
- kind: "service" | "user" | "api_key" | "anonymous";
1005
- userId: (string & import("zod").$brand<"UserId">) | null;
1006
- email: string | null;
1007
- name: string | null;
1008
- locale: "en" | "fa" | "ar" | "de";
1009
- instanceAdmin: boolean;
1010
- service: string | null;
1011
- memberships: {
1012
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1013
- role: "owner" | "admin" | "member" | "guest";
1014
- roleIds: string[];
1015
- groupIds: string[];
1016
- status: "active" | "invited" | "suspended";
1017
- }[];
1018
- permissionVersion: number;
1019
- };
811
+ principal: import("@kernhq/contracts").Principal;
1020
812
  requestId: string;
1021
813
  ip: string;
1022
814
  headers: Record<string, string | string[] | undefined>;
1023
815
  }>, never> & Record<never, never>, import("zod").ZodObject<{
1024
816
  workspaceId: import("zod/v4/core").$ZodBranded<import("zod").ZodUUID, "WorkspaceId", "out">;
1025
817
  name: import("zod").ZodString;
1026
- order: import("zod").ZodOptional<import("zod").ZodNumber>;
1027
818
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
1028
819
  id: import("zod").ZodUUID;
1029
820
  workspaceId: import("zod/v4/core").$ZodBranded<import("zod").ZodUUID, "WorkspaceId", "out">;
@@ -1058,30 +849,13 @@ export declare function inventoryRouter(kernel: Kernel): {
1058
849
  update: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
1059
850
  workspaceId: string;
1060
851
  kernel: Kernel;
1061
- principal: {
1062
- kind: "service" | "user" | "api_key" | "anonymous";
1063
- userId: (string & import("zod").$brand<"UserId">) | null;
1064
- email: string | null;
1065
- name: string | null;
1066
- locale: "en" | "fa" | "ar" | "de";
1067
- instanceAdmin: boolean;
1068
- service: string | null;
1069
- memberships: {
1070
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1071
- role: "owner" | "admin" | "member" | "guest";
1072
- roleIds: string[];
1073
- groupIds: string[];
1074
- status: "active" | "invited" | "suspended";
1075
- }[];
1076
- permissionVersion: number;
1077
- };
852
+ principal: import("@kernhq/contracts").Principal;
1078
853
  requestId: string;
1079
854
  ip: string;
1080
855
  headers: Record<string, string | string[] | undefined>;
1081
856
  }>, never> & Record<never, never>, import("zod").ZodObject<{
1082
857
  workspaceId: import("zod/v4/core").$ZodBranded<import("zod").ZodUUID, "WorkspaceId", "out">;
1083
858
  name: import("zod").ZodOptional<import("zod").ZodString>;
1084
- order: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNumber>>;
1085
859
  categoryId: import("zod").ZodUUID;
1086
860
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
1087
861
  id: import("zod").ZodUUID;
@@ -1117,23 +891,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1117
891
  archive: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
1118
892
  workspaceId: string;
1119
893
  kernel: Kernel;
1120
- principal: {
1121
- kind: "service" | "user" | "api_key" | "anonymous";
1122
- userId: (string & import("zod").$brand<"UserId">) | null;
1123
- email: string | null;
1124
- name: string | null;
1125
- locale: "en" | "fa" | "ar" | "de";
1126
- instanceAdmin: boolean;
1127
- service: string | null;
1128
- memberships: {
1129
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1130
- role: "owner" | "admin" | "member" | "guest";
1131
- roleIds: string[];
1132
- groupIds: string[];
1133
- status: "active" | "invited" | "suspended";
1134
- }[];
1135
- permissionVersion: number;
1136
- };
894
+ principal: import("@kernhq/contracts").Principal;
1137
895
  requestId: string;
1138
896
  ip: string;
1139
897
  headers: Record<string, string | string[] | undefined>;
@@ -1172,28 +930,53 @@ export declare function inventoryRouter(kernel: Kernel): {
1172
930
  }, import("zod/v4/core").$strip>;
1173
931
  };
1174
932
  }>>, Record<never, never>>;
933
+ reorder: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
934
+ workspaceId: string;
935
+ kernel: Kernel;
936
+ principal: import("@kernhq/contracts").Principal;
937
+ requestId: string;
938
+ ip: string;
939
+ headers: Record<string, string | string[] | undefined>;
940
+ }>, never> & Record<never, never>, import("zod").ZodObject<{
941
+ workspaceId: import("zod/v4/core").$ZodBranded<import("zod").ZodUUID, "WorkspaceId", "out">;
942
+ categoryIds: import("zod").ZodArray<import("zod").ZodUUID>;
943
+ }, import("zod/v4/core").$strip>, import("zod").ZodArray<import("zod").ZodObject<{
944
+ id: import("zod").ZodUUID;
945
+ workspaceId: import("zod/v4/core").$ZodBranded<import("zod").ZodUUID, "WorkspaceId", "out">;
946
+ name: import("zod").ZodString;
947
+ order: import("zod").ZodNumber;
948
+ createdAt: import("zod").ZodString;
949
+ updatedAt: import("zod").ZodString;
950
+ archivedAt: import("zod").ZodNullable<import("zod").ZodString>;
951
+ }, import("zod/v4/core").$strip>>, import("@orpc/server").MergedErrorMap<Record<never, never>, import("@orpc/server").MergedErrorMap<Record<never, never>, {
952
+ BAD_REQUEST: {
953
+ data: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>>;
954
+ };
955
+ UNAUTHORIZED: {};
956
+ FORBIDDEN: {
957
+ data: import("zod").ZodOptional<import("zod").ZodObject<{
958
+ permission: import("zod").ZodOptional<import("zod").ZodString>;
959
+ }, import("zod/v4/core").$strip>>;
960
+ };
961
+ NOT_FOUND: {};
962
+ CONFLICT: {
963
+ data: import("zod").ZodOptional<import("zod").ZodObject<{
964
+ reason: import("zod").ZodOptional<import("zod").ZodString>;
965
+ }, import("zod/v4/core").$strip>>;
966
+ };
967
+ RATE_LIMITED: {};
968
+ MODULE_DISABLED: {
969
+ data: import("zod").ZodObject<{
970
+ module: import("zod").ZodString;
971
+ }, import("zod/v4/core").$strip>;
972
+ };
973
+ }>>, Record<never, never>>;
1175
974
  };
1176
975
  repairs: {
1177
976
  list: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1178
977
  workspaceId: string;
1179
978
  kernel: Kernel;
1180
- principal: {
1181
- kind: "service" | "user" | "api_key" | "anonymous";
1182
- userId: (string & import("zod").$brand<"UserId">) | null;
1183
- email: string | null;
1184
- name: string | null;
1185
- locale: "en" | "fa" | "ar" | "de";
1186
- instanceAdmin: boolean;
1187
- service: string | null;
1188
- memberships: {
1189
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1190
- role: "owner" | "admin" | "member" | "guest";
1191
- roleIds: string[];
1192
- groupIds: string[];
1193
- status: "active" | "invited" | "suspended";
1194
- }[];
1195
- permissionVersion: number;
1196
- };
979
+ principal: import("@kernhq/contracts").Principal;
1197
980
  requestId: string;
1198
981
  ip: string;
1199
982
  headers: Record<string, string | string[] | undefined>;
@@ -1249,23 +1032,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1249
1032
  create: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1250
1033
  workspaceId: string;
1251
1034
  kernel: Kernel;
1252
- principal: {
1253
- kind: "service" | "user" | "api_key" | "anonymous";
1254
- userId: (string & import("zod").$brand<"UserId">) | null;
1255
- email: string | null;
1256
- name: string | null;
1257
- locale: "en" | "fa" | "ar" | "de";
1258
- instanceAdmin: boolean;
1259
- service: string | null;
1260
- memberships: {
1261
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1262
- role: "owner" | "admin" | "member" | "guest";
1263
- roleIds: string[];
1264
- groupIds: string[];
1265
- status: "active" | "invited" | "suspended";
1266
- }[];
1267
- permissionVersion: number;
1268
- };
1035
+ principal: import("@kernhq/contracts").Principal;
1269
1036
  requestId: string;
1270
1037
  ip: string;
1271
1038
  headers: Record<string, string | string[] | undefined>;
@@ -1350,23 +1117,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1350
1117
  update: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1351
1118
  workspaceId: string;
1352
1119
  kernel: Kernel;
1353
- principal: {
1354
- kind: "service" | "user" | "api_key" | "anonymous";
1355
- userId: (string & import("zod").$brand<"UserId">) | null;
1356
- email: string | null;
1357
- name: string | null;
1358
- locale: "en" | "fa" | "ar" | "de";
1359
- instanceAdmin: boolean;
1360
- service: string | null;
1361
- memberships: {
1362
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1363
- role: "owner" | "admin" | "member" | "guest";
1364
- roleIds: string[];
1365
- groupIds: string[];
1366
- status: "active" | "invited" | "suspended";
1367
- }[];
1368
- permissionVersion: number;
1369
- };
1120
+ principal: import("@kernhq/contracts").Principal;
1370
1121
  requestId: string;
1371
1122
  ip: string;
1372
1123
  headers: Record<string, string | string[] | undefined>;
@@ -1451,23 +1202,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1451
1202
  complete: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1452
1203
  workspaceId: string;
1453
1204
  kernel: Kernel;
1454
- principal: {
1455
- kind: "service" | "user" | "api_key" | "anonymous";
1456
- userId: (string & import("zod").$brand<"UserId">) | null;
1457
- email: string | null;
1458
- name: string | null;
1459
- locale: "en" | "fa" | "ar" | "de";
1460
- instanceAdmin: boolean;
1461
- service: string | null;
1462
- memberships: {
1463
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1464
- role: "owner" | "admin" | "member" | "guest";
1465
- roleIds: string[];
1466
- groupIds: string[];
1467
- status: "active" | "invited" | "suspended";
1468
- }[];
1469
- permissionVersion: number;
1470
- };
1205
+ principal: import("@kernhq/contracts").Principal;
1471
1206
  requestId: string;
1472
1207
  ip: string;
1473
1208
  headers: Record<string, string | string[] | undefined>;
@@ -1551,23 +1286,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1551
1286
  list: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1552
1287
  workspaceId: string;
1553
1288
  kernel: Kernel;
1554
- principal: {
1555
- kind: "service" | "user" | "api_key" | "anonymous";
1556
- userId: (string & import("zod").$brand<"UserId">) | null;
1557
- email: string | null;
1558
- name: string | null;
1559
- locale: "en" | "fa" | "ar" | "de";
1560
- instanceAdmin: boolean;
1561
- service: string | null;
1562
- memberships: {
1563
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1564
- role: "owner" | "admin" | "member" | "guest";
1565
- roleIds: string[];
1566
- groupIds: string[];
1567
- status: "active" | "invited" | "suspended";
1568
- }[];
1569
- permissionVersion: number;
1570
- };
1289
+ principal: import("@kernhq/contracts").Principal;
1571
1290
  requestId: string;
1572
1291
  ip: string;
1573
1292
  headers: Record<string, string | string[] | undefined>;
@@ -1611,23 +1330,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1611
1330
  add: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1612
1331
  workspaceId: string;
1613
1332
  kernel: Kernel;
1614
- principal: {
1615
- kind: "service" | "user" | "api_key" | "anonymous";
1616
- userId: (string & import("zod").$brand<"UserId">) | null;
1617
- email: string | null;
1618
- name: string | null;
1619
- locale: "en" | "fa" | "ar" | "de";
1620
- instanceAdmin: boolean;
1621
- service: string | null;
1622
- memberships: {
1623
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1624
- role: "owner" | "admin" | "member" | "guest";
1625
- roleIds: string[];
1626
- groupIds: string[];
1627
- status: "active" | "invited" | "suspended";
1628
- }[];
1629
- permissionVersion: number;
1630
- };
1333
+ principal: import("@kernhq/contracts").Principal;
1631
1334
  requestId: string;
1632
1335
  ip: string;
1633
1336
  headers: Record<string, string | string[] | undefined>;
@@ -1673,23 +1376,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1673
1376
  remove: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<import("@orpc/server").MergedCurrentContext<RequestContext, {
1674
1377
  workspaceId: string;
1675
1378
  kernel: Kernel;
1676
- principal: {
1677
- kind: "service" | "user" | "api_key" | "anonymous";
1678
- userId: (string & import("zod").$brand<"UserId">) | null;
1679
- email: string | null;
1680
- name: string | null;
1681
- locale: "en" | "fa" | "ar" | "de";
1682
- instanceAdmin: boolean;
1683
- service: string | null;
1684
- memberships: {
1685
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1686
- role: "owner" | "admin" | "member" | "guest";
1687
- roleIds: string[];
1688
- groupIds: string[];
1689
- status: "active" | "invited" | "suspended";
1690
- }[];
1691
- permissionVersion: number;
1692
- };
1379
+ principal: import("@kernhq/contracts").Principal;
1693
1380
  requestId: string;
1694
1381
  ip: string;
1695
1382
  headers: Record<string, string | string[] | undefined>;
@@ -1726,23 +1413,7 @@ export declare function inventoryRouter(kernel: Kernel): {
1726
1413
  summary: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<RequestContext & Record<never, never>, RequestContext & Record<never, never> & Omit<RequestContext & Record<never, never>, keyof RequestContext> & Omit<RequestContext & Record<never, never>, "workspaceId" | "kernel" | "principal" | "requestId" | "ip" | "headers">, RequestContext>, Omit<import("@orpc/server").MergedCurrentContext<RequestContext, {
1727
1414
  workspaceId: string;
1728
1415
  kernel: Kernel;
1729
- principal: {
1730
- kind: "service" | "user" | "api_key" | "anonymous";
1731
- userId: (string & import("zod").$brand<"UserId">) | null;
1732
- email: string | null;
1733
- name: string | null;
1734
- locale: "en" | "fa" | "ar" | "de";
1735
- instanceAdmin: boolean;
1736
- service: string | null;
1737
- memberships: {
1738
- workspaceId: string & import("zod").$brand<"WorkspaceId">;
1739
- role: "owner" | "admin" | "member" | "guest";
1740
- roleIds: string[];
1741
- groupIds: string[];
1742
- status: "active" | "invited" | "suspended";
1743
- }[];
1744
- permissionVersion: number;
1745
- };
1416
+ principal: import("@kernhq/contracts").Principal;
1746
1417
  requestId: string;
1747
1418
  ip: string;
1748
1419
  headers: Record<string, string | string[] | undefined>;