@abyss-project/tools 1.1.1 → 1.3.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 (186) hide show
  1. package/dist/api/beam.api.d.ts +2 -1
  2. package/dist/api/beam.api.js +10 -4
  3. package/dist/api/beam.api.js.map +1 -1
  4. package/dist/api/extraction-plan-preset.api.js +1 -1
  5. package/dist/api/extraction-plan-preset.api.js.map +1 -1
  6. package/dist/api/extraction-settings.api.js +1 -1
  7. package/dist/api/extraction-settings.api.js.map +1 -1
  8. package/dist/api/extraction.api.d.ts +5 -5
  9. package/dist/api/extraction.api.js +22 -5
  10. package/dist/api/extraction.api.js.map +1 -1
  11. package/dist/index.d.ts +4 -1
  12. package/dist/index.js +4 -1
  13. package/dist/index.js.map +1 -1
  14. package/dist/types/enum/beam.enum.d.ts +4 -0
  15. package/dist/types/enum/beam.enum.js +6 -1
  16. package/dist/types/enum/beam.enum.js.map +1 -1
  17. package/dist/types/interface/api/requests/beam.request.d.ts +16 -0
  18. package/dist/types/interface/api/requests/extraction.request.d.ts +8 -0
  19. package/dist/types/interface/api/responses/beam.response.d.ts +23 -1
  20. package/dist/types/interface/api/responses/extraction.response.d.ts +6 -0
  21. package/dist/types/interface/models/beam.dto.d.ts +13 -1
  22. package/dist/types/interface/models/extraction.dto.d.ts +8 -1
  23. package/dist/types/interface/models/extraction.dto.js.map +1 -1
  24. package/dist/utils/shape.utils.js +18 -18
  25. package/package.json +14 -9
  26. package/src/api/abyss.admin.api.ts +54 -54
  27. package/src/api/atlas-document.api.ts +68 -68
  28. package/src/api/atlas-group.api.ts +69 -69
  29. package/src/api/atlas-page.api.ts +124 -124
  30. package/src/api/atlas.api.ts +103 -103
  31. package/src/api/atlas.public.api.ts +42 -42
  32. package/src/api/beam.api.ts +29 -4
  33. package/src/api/board-card-checklist.api.ts +99 -99
  34. package/src/api/board-card-comment.api.ts +57 -57
  35. package/src/api/board-card-document.api.ts +57 -57
  36. package/src/api/board-card.api.ts +137 -137
  37. package/src/api/board-column.api.ts +54 -54
  38. package/src/api/board-label.api.ts +87 -87
  39. package/src/api/board.api.ts +122 -122
  40. package/src/api/draw.api.ts +97 -97
  41. package/src/api/draw.public.api.ts +48 -48
  42. package/src/api/extraction-plan-preset.api.ts +1 -1
  43. package/src/api/extraction-settings.api.ts +1 -1
  44. package/src/api/extraction.api.ts +58 -18
  45. package/src/api/memo.api.ts +97 -97
  46. package/src/api/metrics.api.ts +27 -27
  47. package/src/api/monitor.api.ts +6 -6
  48. package/src/api/organization.api.ts +14 -14
  49. package/src/api/retrospective-card.api.ts +74 -74
  50. package/src/api/retrospective-member.api.ts +54 -54
  51. package/src/api/retrospective-section.api.ts +74 -74
  52. package/src/api/retrospective.api.ts +124 -124
  53. package/src/api/retrospective.public.api.ts +147 -147
  54. package/src/api/short-link.admin.api.ts +39 -39
  55. package/src/api/short-link.api.ts +125 -125
  56. package/src/api/short-link.public.api.ts +60 -60
  57. package/src/api/tag.api.ts +72 -72
  58. package/src/api/tests/beam.api.spec.ts +64 -0
  59. package/src/constants/atlas.constants.ts +2 -2
  60. package/src/constants/board.constants.ts +7 -7
  61. package/src/constants/memo.constants.ts +3 -3
  62. package/src/constants/short-link.constants.ts +11 -11
  63. package/src/constants/tag.constants.ts +3 -3
  64. package/src/index.ts +10 -1
  65. package/src/server-sent-events/index.ts +13 -13
  66. package/src/server-sent-events/protocols/atlas/atlas.sse-protocol.ts +90 -90
  67. package/src/server-sent-events/protocols/atlas/index.ts +1 -1
  68. package/src/server-sent-events/protocols/board/board.sse-protocol.ts +115 -115
  69. package/src/server-sent-events/protocols/board/index.ts +1 -1
  70. package/src/server-sent-events/protocols/board-card/board-card.sse-protocol.ts +26 -26
  71. package/src/server-sent-events/protocols/board-card/index.ts +1 -1
  72. package/src/server-sent-events/protocols/index.ts +26 -26
  73. package/src/server-sent-events/protocols/retrospective/index.ts +1 -1
  74. package/src/server-sent-events/protocols/retrospective/retrospective.sse-protocol.ts +92 -92
  75. package/src/server-sent-events/server-sent-events.manager.ts +73 -73
  76. package/src/types/draw.type.ts +173 -173
  77. package/src/types/enum/api-error.enum.ts +23 -23
  78. package/src/types/enum/beam.enum.ts +8 -0
  79. package/src/types/enum/board-activity.enum.ts +189 -189
  80. package/src/types/enum/board-column-type.enum.ts +6 -6
  81. package/src/types/enum/pdf-operation.enum.ts +98 -98
  82. package/src/types/enum/rcb-bank.enum.ts +137 -137
  83. package/src/types/index.ts +5 -5
  84. package/src/types/interface/api/index.ts +5 -5
  85. package/src/types/interface/api/requests/abyss.admin.request.ts +20 -20
  86. package/src/types/interface/api/requests/atlas-document.request.ts +32 -32
  87. package/src/types/interface/api/requests/atlas-group.request.ts +45 -45
  88. package/src/types/interface/api/requests/atlas-page.request.ts +84 -84
  89. package/src/types/interface/api/requests/atlas.public.request.ts +21 -21
  90. package/src/types/interface/api/requests/atlas.request.ts +52 -52
  91. package/src/types/interface/api/requests/beam.request.ts +27 -2
  92. package/src/types/interface/api/requests/board-card-checklist.request.ts +61 -61
  93. package/src/types/interface/api/requests/board-card-comment.request.ts +28 -28
  94. package/src/types/interface/api/requests/board-card-document.request.ts +29 -29
  95. package/src/types/interface/api/requests/board-card.request.ts +86 -86
  96. package/src/types/interface/api/requests/board-column.request.ts +30 -30
  97. package/src/types/interface/api/requests/board-label.request.ts +42 -42
  98. package/src/types/interface/api/requests/board.request.ts +61 -61
  99. package/src/types/interface/api/requests/draw.public.request.ts +20 -20
  100. package/src/types/interface/api/requests/draw.request.ts +49 -49
  101. package/src/types/interface/api/requests/extraction.request.ts +22 -0
  102. package/src/types/interface/api/requests/memo.request.ts +49 -49
  103. package/src/types/interface/api/requests/metrics.request.ts +7 -7
  104. package/src/types/interface/api/requests/retrospective-card.request.ts +38 -38
  105. package/src/types/interface/api/requests/retrospective-member.request.ts +20 -20
  106. package/src/types/interface/api/requests/retrospective-section.request.ts +43 -43
  107. package/src/types/interface/api/requests/retrospective.public.request.ts +84 -84
  108. package/src/types/interface/api/requests/retrospective.request.ts +59 -59
  109. package/src/types/interface/api/requests/short-link.admin.request.ts +35 -35
  110. package/src/types/interface/api/requests/short-link.public.request.ts +40 -40
  111. package/src/types/interface/api/requests/short-link.request.ts +71 -71
  112. package/src/types/interface/api/requests/tag.request.ts +54 -54
  113. package/src/types/interface/api/requests/transfer.request.ts +3 -3
  114. package/src/types/interface/api/responses/abyss.admin.response.ts +28 -28
  115. package/src/types/interface/api/responses/atlas-document.response.ts +24 -24
  116. package/src/types/interface/api/responses/atlas-group.response.ts +23 -23
  117. package/src/types/interface/api/responses/atlas-page.response.ts +53 -53
  118. package/src/types/interface/api/responses/atlas.public.response.ts +21 -21
  119. package/src/types/interface/api/responses/atlas.response.ts +32 -32
  120. package/src/types/interface/api/responses/beam.response.ts +30 -1
  121. package/src/types/interface/api/responses/board-card-checklist.response.ts +31 -31
  122. package/src/types/interface/api/responses/board-card-comment.response.ts +20 -20
  123. package/src/types/interface/api/responses/board-card-document.response.ts +21 -21
  124. package/src/types/interface/api/responses/board-card.response.ts +55 -55
  125. package/src/types/interface/api/responses/board-column.response.ts +20 -20
  126. package/src/types/interface/api/responses/board-label.response.ts +31 -31
  127. package/src/types/interface/api/responses/board.response.ts +81 -81
  128. package/src/types/interface/api/responses/count.response.ts +9 -9
  129. package/src/types/interface/api/responses/draw.public.response.ts +22 -22
  130. package/src/types/interface/api/responses/draw.response.ts +32 -32
  131. package/src/types/interface/api/responses/enriched-paginate.response.ts +11 -11
  132. package/src/types/interface/api/responses/extraction.response.ts +19 -2
  133. package/src/types/interface/api/responses/memo.response.ts +32 -32
  134. package/src/types/interface/api/responses/metrics.response.ts +22 -22
  135. package/src/types/interface/api/responses/monitor.response.ts +8 -8
  136. package/src/types/interface/api/responses/recent.response.ts +18 -18
  137. package/src/types/interface/api/responses/retrospective-card.response.ts +23 -23
  138. package/src/types/interface/api/responses/retrospective-member.response.ts +22 -22
  139. package/src/types/interface/api/responses/retrospective-section.response.ts +23 -23
  140. package/src/types/interface/api/responses/retrospective.public.response.ts +57 -57
  141. package/src/types/interface/api/responses/retrospective.response.ts +32 -32
  142. package/src/types/interface/api/responses/short-link.admin.response.ts +21 -21
  143. package/src/types/interface/api/responses/short-link.public.response.ts +26 -26
  144. package/src/types/interface/api/responses/short-link.response.ts +38 -38
  145. package/src/types/interface/api/responses/tag.response.ts +38 -38
  146. package/src/types/interface/api/responses/transfer.response.ts +14 -14
  147. package/src/types/interface/api/type-message/api-error.ts +7 -7
  148. package/src/types/interface/api/type-message/base-paginate.ts +11 -11
  149. package/src/types/interface/api/type-message/response.ts +6 -6
  150. package/src/types/interface/index.ts +2 -2
  151. package/src/types/interface/models/atlas-document.dto.ts +22 -22
  152. package/src/types/interface/models/atlas-group.dto.ts +21 -21
  153. package/src/types/interface/models/atlas-page-content.dto.ts +17 -17
  154. package/src/types/interface/models/atlas-page.dto.ts +26 -26
  155. package/src/types/interface/models/atlas.dto.ts +34 -34
  156. package/src/types/interface/models/beam.dto.ts +20 -1
  157. package/src/types/interface/models/board-activity.dto.ts +20 -20
  158. package/src/types/interface/models/board-card-checklist-row.dto.ts +14 -14
  159. package/src/types/interface/models/board-card-checklist.dto.ts +16 -16
  160. package/src/types/interface/models/board-card-comment.dto.ts +15 -15
  161. package/src/types/interface/models/board-card-document.dto.ts +22 -22
  162. package/src/types/interface/models/board-card-label.dto.ts +14 -14
  163. package/src/types/interface/models/board-card-member.dto.ts +14 -14
  164. package/src/types/interface/models/board-card.dto.ts +37 -37
  165. package/src/types/interface/models/board-column.dto.ts +17 -17
  166. package/src/types/interface/models/board-label.dto.ts +13 -13
  167. package/src/types/interface/models/board.dto.ts +33 -33
  168. package/src/types/interface/models/content-share.dto.ts +16 -16
  169. package/src/types/interface/models/draw.dto.ts +30 -30
  170. package/src/types/interface/models/extraction.dto.ts +24 -6
  171. package/src/types/interface/models/memo.dto.ts +23 -23
  172. package/src/types/interface/models/project.dto.ts +25 -25
  173. package/src/types/interface/models/retrospective-card.dto.ts +17 -17
  174. package/src/types/interface/models/retrospective-member.dto.ts +15 -15
  175. package/src/types/interface/models/retrospective-section.dto.ts +16 -16
  176. package/src/types/interface/models/retrospective.dto.ts +32 -32
  177. package/src/types/interface/models/short-link-click.dto.ts +33 -33
  178. package/src/types/interface/models/short-link.dto.ts +49 -49
  179. package/src/types/interface/models/tag.dto.ts +26 -26
  180. package/src/types/interface/models/team.dto.ts +12 -12
  181. package/src/types/interface/models/user.dto.ts +26 -26
  182. package/src/utils/board.utils.ts +57 -57
  183. package/src/utils/enum.utils.ts +5 -5
  184. package/src/utils/error.utils.ts +30 -30
  185. package/src/utils/icons.utils.ts +96 -96
  186. package/src/utils/shape.utils.ts +292 -292
@@ -1,23 +1,23 @@
1
- import { IOrganization } from './organization.dto';
2
- import { IProject } from './project.dto';
3
- import { IEntityTag } from './tag.dto';
4
- import { IUser } from './user.dto';
5
-
6
- export interface IMemo {
7
- id: string;
8
- title: string;
9
- content: string;
10
- userId: string | null;
11
- projectId: string | null;
12
- organizationId: string | null;
13
- createdByUserId: string | null;
14
- archivedAt?: Date | null;
15
- updatedAt?: Date;
16
- createdAt?: Date;
17
-
18
- // Association
19
- user?: IUser | null;
20
- project?: IProject | null;
21
- organization?: IOrganization | null;
22
- entityTags?: IEntityTag[];
23
- }
1
+ import { IOrganization } from './organization.dto';
2
+ import { IProject } from './project.dto';
3
+ import { IEntityTag } from './tag.dto';
4
+ import { IUser } from './user.dto';
5
+
6
+ export interface IMemo {
7
+ id: string;
8
+ title: string;
9
+ content: string;
10
+ userId: string | null;
11
+ projectId: string | null;
12
+ organizationId: string | null;
13
+ createdByUserId: string | null;
14
+ archivedAt?: Date | null;
15
+ updatedAt?: Date;
16
+ createdAt?: Date;
17
+
18
+ // Association
19
+ user?: IUser | null;
20
+ project?: IProject | null;
21
+ organization?: IOrganization | null;
22
+ entityTags?: IEntityTag[];
23
+ }
@@ -1,25 +1,25 @@
1
- import { IAtlas } from './atlas.dto';
2
- import { IDraw } from './draw.dto';
3
- import { IMemo } from './memo.dto';
4
- import { IOrganization } from './organization.dto';
5
- import { IRetrospective } from './retrospective.dto';
6
- import { IShortLink } from './short-link.dto';
7
- import { IUser } from './user.dto';
8
-
9
- export interface IProject {
10
- id?: string;
11
- name: string;
12
- createdByUserId: string; // Historical creator of the project. NOT used for access control.
13
- organizationId: string;
14
- updatedAt?: Date;
15
- createdAt?: Date;
16
-
17
- // Associations
18
- organization?: IOrganization;
19
- user?: IUser;
20
- draws?: IDraw[];
21
- retrospectives?: IRetrospective[];
22
- atlases?: IAtlas[];
23
- memos?: IMemo[];
24
- shortLinks?: IShortLink[];
25
- }
1
+ import { IAtlas } from './atlas.dto';
2
+ import { IDraw } from './draw.dto';
3
+ import { IMemo } from './memo.dto';
4
+ import { IOrganization } from './organization.dto';
5
+ import { IRetrospective } from './retrospective.dto';
6
+ import { IShortLink } from './short-link.dto';
7
+ import { IUser } from './user.dto';
8
+
9
+ export interface IProject {
10
+ id?: string;
11
+ name: string;
12
+ createdByUserId: string; // Historical creator of the project. NOT used for access control.
13
+ organizationId: string;
14
+ updatedAt?: Date;
15
+ createdAt?: Date;
16
+
17
+ // Associations
18
+ organization?: IOrganization;
19
+ user?: IUser;
20
+ draws?: IDraw[];
21
+ retrospectives?: IRetrospective[];
22
+ atlases?: IAtlas[];
23
+ memos?: IMemo[];
24
+ shortLinks?: IShortLink[];
25
+ }
@@ -1,17 +1,17 @@
1
- import { IRetrospectiveMember } from './retrospective-member.dto';
2
- import { IRetrospective } from './retrospective.dto';
3
-
4
- export interface IRetrospectiveCard {
5
- id: string;
6
- content: string;
7
- positionX: number;
8
- positionY: number;
9
- retrospectiveId: string;
10
- retrospectiveMemberId?: string;
11
- updatedAt?: Date;
12
- createdAt?: Date;
13
-
14
- // Association
15
- retrospective?: IRetrospective;
16
- retrospectiveMember?: IRetrospectiveMember;
17
- }
1
+ import { IRetrospectiveMember } from './retrospective-member.dto';
2
+ import { IRetrospective } from './retrospective.dto';
3
+
4
+ export interface IRetrospectiveCard {
5
+ id: string;
6
+ content: string;
7
+ positionX: number;
8
+ positionY: number;
9
+ retrospectiveId: string;
10
+ retrospectiveMemberId?: string;
11
+ updatedAt?: Date;
12
+ createdAt?: Date;
13
+
14
+ // Association
15
+ retrospective?: IRetrospective;
16
+ retrospectiveMember?: IRetrospectiveMember;
17
+ }
@@ -1,15 +1,15 @@
1
- import { IRetrospective } from './retrospective.dto';
2
-
3
- export interface IRetrospectiveMember {
4
- id: string;
5
- alias: string | null;
6
- userId: string | null;
7
- externalUserId: string | null;
8
- unmaskedAt: Date | null;
9
- retrospectiveId: string;
10
- updatedAt?: Date;
11
- createdAt?: Date;
12
-
13
- // Association
14
- retrospective?: IRetrospective;
15
- }
1
+ import { IRetrospective } from './retrospective.dto';
2
+
3
+ export interface IRetrospectiveMember {
4
+ id: string;
5
+ alias: string | null;
6
+ userId: string | null;
7
+ externalUserId: string | null;
8
+ unmaskedAt: Date | null;
9
+ retrospectiveId: string;
10
+ updatedAt?: Date;
11
+ createdAt?: Date;
12
+
13
+ // Association
14
+ retrospective?: IRetrospective;
15
+ }
@@ -1,16 +1,16 @@
1
- import { IRetrospective } from './retrospective.dto';
2
-
3
- export interface IRetrospectiveSection {
4
- id: string;
5
- title: string;
6
- description: string;
7
- color: string;
8
- positionX: number;
9
- positionY: number;
10
- retrospectiveId: string;
11
- updatedAt?: Date;
12
- createdAt?: Date;
13
-
14
- // Association
15
- retrospective?: IRetrospective;
16
- }
1
+ import { IRetrospective } from './retrospective.dto';
2
+
3
+ export interface IRetrospectiveSection {
4
+ id: string;
5
+ title: string;
6
+ description: string;
7
+ color: string;
8
+ positionX: number;
9
+ positionY: number;
10
+ retrospectiveId: string;
11
+ updatedAt?: Date;
12
+ createdAt?: Date;
13
+
14
+ // Association
15
+ retrospective?: IRetrospective;
16
+ }
@@ -1,32 +1,32 @@
1
- import { IOrganization } from './organization.dto';
2
- import { IProject } from './project.dto';
3
- import { IRetrospectiveCard } from './retrospective-card.dto';
4
- import { IRetrospectiveMember } from './retrospective-member.dto';
5
- import { IRetrospectiveSection } from './retrospective-section.dto';
6
- import { IEntityTag } from './tag.dto';
7
- import { IUser } from './user.dto';
8
-
9
- export interface IRetrospective {
10
- id: string;
11
- title: string;
12
- description: string;
13
- startDate: Date | null;
14
- endDate: Date | null;
15
- completedAt: Date | null;
16
- userId: string | null;
17
- projectId: string | null;
18
- organizationId: string | null;
19
- createdByUserId: string | null;
20
- archivedAt: Date | null;
21
- updatedAt?: Date;
22
- createdAt?: Date;
23
-
24
- // Association
25
- user?: IUser | null;
26
- project?: IProject | null;
27
- organization?: IOrganization | null;
28
- retrospectiveSections?: IRetrospectiveSection[];
29
- retrospectiveCards?: IRetrospectiveCard[];
30
- retrospectiveMembers?: IRetrospectiveMember[];
31
- entityTags?: IEntityTag[];
32
- }
1
+ import { IOrganization } from './organization.dto';
2
+ import { IProject } from './project.dto';
3
+ import { IRetrospectiveCard } from './retrospective-card.dto';
4
+ import { IRetrospectiveMember } from './retrospective-member.dto';
5
+ import { IRetrospectiveSection } from './retrospective-section.dto';
6
+ import { IEntityTag } from './tag.dto';
7
+ import { IUser } from './user.dto';
8
+
9
+ export interface IRetrospective {
10
+ id: string;
11
+ title: string;
12
+ description: string;
13
+ startDate: Date | null;
14
+ endDate: Date | null;
15
+ completedAt: Date | null;
16
+ userId: string | null;
17
+ projectId: string | null;
18
+ organizationId: string | null;
19
+ createdByUserId: string | null;
20
+ archivedAt: Date | null;
21
+ updatedAt?: Date;
22
+ createdAt?: Date;
23
+
24
+ // Association
25
+ user?: IUser | null;
26
+ project?: IProject | null;
27
+ organization?: IOrganization | null;
28
+ retrospectiveSections?: IRetrospectiveSection[];
29
+ retrospectiveCards?: IRetrospectiveCard[];
30
+ retrospectiveMembers?: IRetrospectiveMember[];
31
+ entityTags?: IEntityTag[];
32
+ }
@@ -1,33 +1,33 @@
1
- import { IShortLink } from './short-link.dto';
2
-
3
- export interface IShortLinkClick {
4
- id: string;
5
- shortLinkId: string;
6
- ipAddress: string | null;
7
- ipHash: string;
8
- userAgent: string | null;
9
- referer: string | null;
10
- refererDomain: string | null;
11
- /** Code pays ISO-3 (ex: "FRA", "USA", "DEU") */
12
- countryCodeIso: string | null;
13
- countryCode: string | null;
14
- countryName: string | null;
15
- continentCode: string | null;
16
- city: string | null;
17
- device: string | null;
18
- browser: string | null;
19
- os: string | null;
20
- language: string | null;
21
- utmSource: string | null;
22
- utmMedium: string | null;
23
- utmCampaign: string | null;
24
- utmTerm: string | null;
25
- utmContent: string | null;
26
- isBotLikely: boolean;
27
- isReturningVisitor: boolean;
28
- clickedAt: Date;
29
- createdAt?: Date;
30
- updatedAt?: Date;
31
-
32
- shortLink?: IShortLink;
33
- }
1
+ import { IShortLink } from './short-link.dto';
2
+
3
+ export interface IShortLinkClick {
4
+ id: string;
5
+ shortLinkId: string;
6
+ ipAddress: string | null;
7
+ ipHash: string;
8
+ userAgent: string | null;
9
+ referer: string | null;
10
+ refererDomain: string | null;
11
+ /** Code pays ISO-3 (ex: "FRA", "USA", "DEU") */
12
+ countryCodeIso: string | null;
13
+ countryCode: string | null;
14
+ countryName: string | null;
15
+ continentCode: string | null;
16
+ city: string | null;
17
+ device: string | null;
18
+ browser: string | null;
19
+ os: string | null;
20
+ language: string | null;
21
+ utmSource: string | null;
22
+ utmMedium: string | null;
23
+ utmCampaign: string | null;
24
+ utmTerm: string | null;
25
+ utmContent: string | null;
26
+ isBotLikely: boolean;
27
+ isReturningVisitor: boolean;
28
+ clickedAt: Date;
29
+ createdAt?: Date;
30
+ updatedAt?: Date;
31
+
32
+ shortLink?: IShortLink;
33
+ }
@@ -1,49 +1,49 @@
1
- import { IOrganization } from './organization.dto';
2
- import { IUser } from './user.dto';
3
- import { IProject } from './project.dto';
4
- import { IShortLinkClick } from './short-link-click.dto';
5
- import { IEntityTag } from './tag.dto';
6
-
7
- export interface IShortLink {
8
- id: string;
9
- slug: string;
10
- originalUrl: string;
11
- title: string | null;
12
- description: string | null;
13
- userId: string | null;
14
- projectId: string | null;
15
- organizationId: string | null;
16
- createdByUserId: string | null;
17
- isActive: boolean;
18
- clickCount: number;
19
- uniqueClickCount: number;
20
- lastClickedAt: Date | null;
21
- expiresAt: Date | null;
22
- maxClicks: number | null;
23
- password: string | null;
24
- createdAt?: Date;
25
- updatedAt?: Date;
26
- deletedAt?: Date | null;
27
-
28
- user?: IUser | null;
29
- project?: IProject | null;
30
- organization?: IOrganization | null;
31
- shortLinkClicks?: IShortLinkClick[];
32
- entityTags?: IEntityTag[];
33
- }
34
-
35
- export interface IShortLinkWithStats extends IShortLink {
36
- stats?: {
37
- clicksByDay: { date: string; clicks: number; uniqueClicks: number }[];
38
- clicksByCountry: { country: string; clicks: number; countryName: string }[];
39
- clicksByDevice: { device: string; clicks: number }[];
40
- clicksByBrowser: { browser: string; clicks: number }[];
41
- clicksByReferer: { referer: string; clicks: number }[];
42
- clicksByUtmSource: { utmSource: string; clicks: number }[];
43
- clicksByLanguage: { language: string; clicks: number }[];
44
- clicksByRefererDomain: { refererDomain: string; clicks: number }[];
45
- clicksLast24h: number;
46
- returningVisitorsCount: number;
47
- botClicksCount: number;
48
- };
49
- }
1
+ import { IOrganization } from './organization.dto';
2
+ import { IUser } from './user.dto';
3
+ import { IProject } from './project.dto';
4
+ import { IShortLinkClick } from './short-link-click.dto';
5
+ import { IEntityTag } from './tag.dto';
6
+
7
+ export interface IShortLink {
8
+ id: string;
9
+ slug: string;
10
+ originalUrl: string;
11
+ title: string | null;
12
+ description: string | null;
13
+ userId: string | null;
14
+ projectId: string | null;
15
+ organizationId: string | null;
16
+ createdByUserId: string | null;
17
+ isActive: boolean;
18
+ clickCount: number;
19
+ uniqueClickCount: number;
20
+ lastClickedAt: Date | null;
21
+ expiresAt: Date | null;
22
+ maxClicks: number | null;
23
+ password: string | null;
24
+ createdAt?: Date;
25
+ updatedAt?: Date;
26
+ deletedAt?: Date | null;
27
+
28
+ user?: IUser | null;
29
+ project?: IProject | null;
30
+ organization?: IOrganization | null;
31
+ shortLinkClicks?: IShortLinkClick[];
32
+ entityTags?: IEntityTag[];
33
+ }
34
+
35
+ export interface IShortLinkWithStats extends IShortLink {
36
+ stats?: {
37
+ clicksByDay: { date: string; clicks: number; uniqueClicks: number }[];
38
+ clicksByCountry: { country: string; clicks: number; countryName: string }[];
39
+ clicksByDevice: { device: string; clicks: number }[];
40
+ clicksByBrowser: { browser: string; clicks: number }[];
41
+ clicksByReferer: { referer: string; clicks: number }[];
42
+ clicksByUtmSource: { utmSource: string; clicks: number }[];
43
+ clicksByLanguage: { language: string; clicks: number }[];
44
+ clicksByRefererDomain: { refererDomain: string; clicks: number }[];
45
+ clicksLast24h: number;
46
+ returningVisitorsCount: number;
47
+ botClicksCount: number;
48
+ };
49
+ }
@@ -1,26 +1,26 @@
1
- export interface ITag {
2
- id: string;
3
- name: string;
4
- color: string;
5
- userId: string;
6
- organizationId: string | null;
7
- createdAt?: Date;
8
- updatedAt?: Date;
9
- }
10
-
11
- // Junction type for entity-tag relationships
12
- export interface IEntityTag {
13
- id: string;
14
- entityId: string;
15
- entityType: string;
16
- tagId: string;
17
- createdAt?: Date;
18
- tag?: ITag | null;
19
- }
20
-
21
- // Stats entry for tag usage counts
22
- export interface ITagStatEntry {
23
- tagId: string;
24
- entityType: string;
25
- count: number;
26
- }
1
+ export interface ITag {
2
+ id: string;
3
+ name: string;
4
+ color: string;
5
+ userId: string;
6
+ organizationId: string | null;
7
+ createdAt?: Date;
8
+ updatedAt?: Date;
9
+ }
10
+
11
+ // Junction type for entity-tag relationships
12
+ export interface IEntityTag {
13
+ id: string;
14
+ entityId: string;
15
+ entityType: string;
16
+ tagId: string;
17
+ createdAt?: Date;
18
+ tag?: ITag | null;
19
+ }
20
+
21
+ // Stats entry for tag usage counts
22
+ export interface ITagStatEntry {
23
+ tagId: string;
24
+ entityType: string;
25
+ count: number;
26
+ }
@@ -1,12 +1,12 @@
1
- import { IOrganization } from './organization.dto';
2
-
3
- export interface ITeam {
4
- id?: string;
5
- organizationId: string;
6
- name: string;
7
- updatedAt?: Date;
8
- createdAt?: Date;
9
-
10
- // Associations
11
- organization?: IOrganization;
12
- }
1
+ import { IOrganization } from './organization.dto';
2
+
3
+ export interface ITeam {
4
+ id?: string;
5
+ organizationId: string;
6
+ name: string;
7
+ updatedAt?: Date;
8
+ createdAt?: Date;
9
+
10
+ // Associations
11
+ organization?: IOrganization;
12
+ }
@@ -1,26 +1,26 @@
1
- import { IAtlas } from './atlas.dto';
2
- import { IBoard } from './board.dto';
3
- import { IBoardCardComment } from './board-card-comment.dto';
4
- import { IDraw } from './draw.dto';
5
- import { IMemo } from './memo.dto';
6
- import { IProject } from './project.dto';
7
- import { IRetrospective } from './retrospective.dto';
8
- import { IShortLink } from './short-link.dto';
9
-
10
- export interface IUser {
11
- id?: string;
12
- apiKey: string;
13
- isAdmin: boolean;
14
- updatedAt?: Date;
15
- createdAt?: Date;
16
-
17
- // Associations
18
- projects?: IProject[];
19
- boards?: IBoard[];
20
- draws?: IDraw[];
21
- retrospectives?: IRetrospective[];
22
- atlases?: IAtlas[];
23
- memos?: IMemo[];
24
- shortLinks?: IShortLink[];
25
- boardCardComments?: IBoardCardComment[];
26
- }
1
+ import { IAtlas } from './atlas.dto';
2
+ import { IBoard } from './board.dto';
3
+ import { IBoardCardComment } from './board-card-comment.dto';
4
+ import { IDraw } from './draw.dto';
5
+ import { IMemo } from './memo.dto';
6
+ import { IProject } from './project.dto';
7
+ import { IRetrospective } from './retrospective.dto';
8
+ import { IShortLink } from './short-link.dto';
9
+
10
+ export interface IUser {
11
+ id?: string;
12
+ apiKey: string;
13
+ isAdmin: boolean;
14
+ updatedAt?: Date;
15
+ createdAt?: Date;
16
+
17
+ // Associations
18
+ projects?: IProject[];
19
+ boards?: IBoard[];
20
+ draws?: IDraw[];
21
+ retrospectives?: IRetrospective[];
22
+ atlases?: IAtlas[];
23
+ memos?: IMemo[];
24
+ shortLinks?: IShortLink[];
25
+ boardCardComments?: IBoardCardComment[];
26
+ }