@dosgato/api 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +74 -0
  3. package/dist/access/access.model.d.ts +2 -0
  4. package/dist/access/access.model.js +14 -0
  5. package/dist/access/access.model.js.map +1 -0
  6. package/dist/access/access.resolver.d.ts +15 -0
  7. package/dist/access/access.resolver.js +133 -0
  8. package/dist/access/access.resolver.js.map +1 -0
  9. package/dist/asset/asset.database.d.ts +12 -0
  10. package/dist/asset/asset.database.js +116 -0
  11. package/dist/asset/asset.database.js.map +1 -0
  12. package/dist/asset/asset.model.d.ts +81 -0
  13. package/dist/asset/asset.model.js +271 -0
  14. package/dist/asset/asset.model.js.map +1 -0
  15. package/dist/asset/asset.resolver.d.ts +32 -0
  16. package/dist/asset/asset.resolver.js +325 -0
  17. package/dist/asset/asset.resolver.js.map +1 -0
  18. package/dist/asset/asset.service.d.ts +35 -0
  19. package/dist/asset/asset.service.js +225 -0
  20. package/dist/asset/asset.service.js.map +1 -0
  21. package/dist/assetfolder/assetfolder.database.d.ts +7 -0
  22. package/dist/assetfolder/assetfolder.database.js +85 -0
  23. package/dist/assetfolder/assetfolder.database.js.map +1 -0
  24. package/dist/assetfolder/assetfolder.model.d.ts +56 -0
  25. package/dist/assetfolder/assetfolder.model.js +160 -0
  26. package/dist/assetfolder/assetfolder.model.js.map +1 -0
  27. package/dist/assetfolder/assetfolder.resolver.d.ts +25 -0
  28. package/dist/assetfolder/assetfolder.resolver.js +255 -0
  29. package/dist/assetfolder/assetfolder.resolver.js.map +1 -0
  30. package/dist/assetfolder/assetfolder.service.d.ts +39 -0
  31. package/dist/assetfolder/assetfolder.service.js +355 -0
  32. package/dist/assetfolder/assetfolder.service.js.map +1 -0
  33. package/dist/assetrule/assetrule.database.d.ts +5 -0
  34. package/dist/assetrule/assetrule.database.js +161 -0
  35. package/dist/assetrule/assetrule.database.js.map +1 -0
  36. package/dist/assetrule/assetrule.model.d.ts +71 -0
  37. package/dist/assetrule/assetrule.model.js +221 -0
  38. package/dist/assetrule/assetrule.model.js.map +1 -0
  39. package/dist/assetrule/assetrule.resolver.d.ts +12 -0
  40. package/dist/assetrule/assetrule.resolver.js +100 -0
  41. package/dist/assetrule/assetrule.resolver.js.map +1 -0
  42. package/dist/assetrule/assetrule.service.d.ts +26 -0
  43. package/dist/assetrule/assetrule.service.js +184 -0
  44. package/dist/assetrule/assetrule.service.js.map +1 -0
  45. package/dist/createdb.d.ts +2 -0
  46. package/dist/createdb.js +541 -0
  47. package/dist/createdb.js.map +1 -0
  48. package/dist/data/data.database.d.ts +7 -0
  49. package/dist/data/data.database.js +265 -0
  50. package/dist/data/data.database.js.map +1 -0
  51. package/dist/data/data.indexing.d.ts +2 -0
  52. package/dist/data/data.indexing.js +23 -0
  53. package/dist/data/data.indexing.js.map +1 -0
  54. package/dist/data/data.model.d.ts +69 -0
  55. package/dist/data/data.model.js +206 -0
  56. package/dist/data/data.model.js.map +1 -0
  57. package/dist/data/data.resolver.d.ts +36 -0
  58. package/dist/data/data.resolver.js +384 -0
  59. package/dist/data/data.resolver.js.map +1 -0
  60. package/dist/data/data.service.d.ts +41 -0
  61. package/dist/data/data.service.js +374 -0
  62. package/dist/data/data.service.js.map +1 -0
  63. package/dist/datafolder/datafolder.database.d.ts +7 -0
  64. package/dist/datafolder/datafolder.database.js +72 -0
  65. package/dist/datafolder/datafolder.database.js.map +1 -0
  66. package/dist/datafolder/datafolder.model.d.ts +48 -0
  67. package/dist/datafolder/datafolder.model.js +139 -0
  68. package/dist/datafolder/datafolder.model.js.map +1 -0
  69. package/dist/datafolder/datafolder.resolver.d.ts +24 -0
  70. package/dist/datafolder/datafolder.resolver.js +243 -0
  71. package/dist/datafolder/datafolder.resolver.js.map +1 -0
  72. package/dist/datafolder/datafolder.service.d.ts +32 -0
  73. package/dist/datafolder/datafolder.service.js +223 -0
  74. package/dist/datafolder/datafolder.service.js.map +1 -0
  75. package/dist/dataroot/dataroot.model.d.ts +19 -0
  76. package/dist/dataroot/dataroot.model.js +72 -0
  77. package/dist/dataroot/dataroot.model.js.map +1 -0
  78. package/dist/dataroot/dataroot.resolver.d.ts +11 -0
  79. package/dist/dataroot/dataroot.resolver.js +87 -0
  80. package/dist/dataroot/dataroot.resolver.js.map +1 -0
  81. package/dist/dataroot/dataroot.service.d.ts +12 -0
  82. package/dist/dataroot/dataroot.service.js +62 -0
  83. package/dist/dataroot/dataroot.service.js.map +1 -0
  84. package/dist/datarule/datarule.database.d.ts +5 -0
  85. package/dist/datarule/datarule.database.js +144 -0
  86. package/dist/datarule/datarule.database.js.map +1 -0
  87. package/dist/datarule/datarule.model.d.ts +55 -0
  88. package/dist/datarule/datarule.model.js +200 -0
  89. package/dist/datarule/datarule.model.js.map +1 -0
  90. package/dist/datarule/datarule.resolver.d.ts +13 -0
  91. package/dist/datarule/datarule.resolver.js +114 -0
  92. package/dist/datarule/datarule.resolver.js.map +1 -0
  93. package/dist/datarule/datarule.service.d.ts +27 -0
  94. package/dist/datarule/datarule.service.js +191 -0
  95. package/dist/datarule/datarule.service.js.map +1 -0
  96. package/dist/fixtures.d.ts +1 -0
  97. package/dist/fixtures.js +697 -0
  98. package/dist/fixtures.js.map +1 -0
  99. package/dist/fixturetemplates.d.ts +110 -0
  100. package/dist/fixturetemplates.js +178 -0
  101. package/dist/fixturetemplates.js.map +1 -0
  102. package/dist/globalrule/globalrule.database.d.ts +5 -0
  103. package/dist/globalrule/globalrule.database.js +65 -0
  104. package/dist/globalrule/globalrule.database.js.map +1 -0
  105. package/dist/globalrule/globalrule.model.d.ts +34 -0
  106. package/dist/globalrule/globalrule.model.js +120 -0
  107. package/dist/globalrule/globalrule.model.js.map +1 -0
  108. package/dist/globalrule/globalrule.resolver.d.ts +11 -0
  109. package/dist/globalrule/globalrule.resolver.js +85 -0
  110. package/dist/globalrule/globalrule.resolver.js.map +1 -0
  111. package/dist/globalrule/globalrule.service.d.ts +18 -0
  112. package/dist/globalrule/globalrule.service.js +111 -0
  113. package/dist/globalrule/globalrule.service.js.map +1 -0
  114. package/dist/group/group.database.d.ts +41 -0
  115. package/dist/group/group.database.js +190 -0
  116. package/dist/group/group.database.js.map +1 -0
  117. package/dist/group/group.model.d.ts +19 -0
  118. package/dist/group/group.model.js +70 -0
  119. package/dist/group/group.model.js.map +1 -0
  120. package/dist/group/group.resolver.d.ts +27 -0
  121. package/dist/group/group.resolver.js +275 -0
  122. package/dist/group/group.resolver.js.map +1 -0
  123. package/dist/group/group.service.d.ts +46 -0
  124. package/dist/group/group.service.js +384 -0
  125. package/dist/group/group.service.js.map +1 -0
  126. package/dist/index.d.ts +18 -0
  127. package/dist/index.js +109 -0
  128. package/dist/index.js.map +1 -0
  129. package/dist/internal.d.ts +88 -0
  130. package/dist/internal.js +89 -0
  131. package/dist/internal.js.map +1 -0
  132. package/dist/migrations.d.ts +2 -0
  133. package/dist/migrations.js +41 -0
  134. package/dist/migrations.js.map +1 -0
  135. package/dist/organization/organization.database.d.ts +2 -0
  136. package/dist/organization/organization.database.js +16 -0
  137. package/dist/organization/organization.database.js.map +1 -0
  138. package/dist/organization/organization.model.d.ts +5 -0
  139. package/dist/organization/organization.model.js +35 -0
  140. package/dist/organization/organization.model.js.map +1 -0
  141. package/dist/organization/organization.resolver.d.ts +6 -0
  142. package/dist/organization/organization.resolver.js +43 -0
  143. package/dist/organization/organization.resolver.js.map +1 -0
  144. package/dist/organization/organization.service.d.ts +12 -0
  145. package/dist/organization/organization.service.js +35 -0
  146. package/dist/organization/organization.service.js.map +1 -0
  147. package/dist/page/page.database.d.ts +10 -0
  148. package/dist/page/page.database.js +269 -0
  149. package/dist/page/page.database.js.map +1 -0
  150. package/dist/page/page.indexing.d.ts +3 -0
  151. package/dist/page/page.indexing.js +26 -0
  152. package/dist/page/page.indexing.js.map +1 -0
  153. package/dist/page/page.migrations.d.ts +13 -0
  154. package/dist/page/page.migrations.js +55 -0
  155. package/dist/page/page.migrations.js.map +1 -0
  156. package/dist/page/page.model.d.ts +88 -0
  157. package/dist/page/page.model.js +272 -0
  158. package/dist/page/page.model.js.map +1 -0
  159. package/dist/page/page.resolver.d.ts +48 -0
  160. package/dist/page/page.resolver.js +542 -0
  161. package/dist/page/page.resolver.js.map +1 -0
  162. package/dist/page/page.service.d.ts +59 -0
  163. package/dist/page/page.service.js +399 -0
  164. package/dist/page/page.service.js.map +1 -0
  165. package/dist/page/page.util.d.ts +3 -0
  166. package/dist/page/page.util.js +16 -0
  167. package/dist/page/page.util.js.map +1 -0
  168. package/dist/page/page.validation.d.ts +2 -0
  169. package/dist/page/page.validation.js +21 -0
  170. package/dist/page/page.validation.js.map +1 -0
  171. package/dist/pagerule/pagerule.database.d.ts +5 -0
  172. package/dist/pagerule/pagerule.database.js +212 -0
  173. package/dist/pagerule/pagerule.database.js.map +1 -0
  174. package/dist/pagerule/pagerule.model.d.ts +71 -0
  175. package/dist/pagerule/pagerule.model.js +272 -0
  176. package/dist/pagerule/pagerule.model.js.map +1 -0
  177. package/dist/pagerule/pagerule.resolver.d.ts +13 -0
  178. package/dist/pagerule/pagerule.resolver.js +114 -0
  179. package/dist/pagerule/pagerule.resolver.js.map +1 -0
  180. package/dist/pagerule/pagerule.service.d.ts +23 -0
  181. package/dist/pagerule/pagerule.service.js +180 -0
  182. package/dist/pagerule/pagerule.service.js.map +1 -0
  183. package/dist/pagetree/pagetree.database.d.ts +13 -0
  184. package/dist/pagetree/pagetree.database.js +84 -0
  185. package/dist/pagetree/pagetree.database.js.map +1 -0
  186. package/dist/pagetree/pagetree.model.d.ts +43 -0
  187. package/dist/pagetree/pagetree.model.js +146 -0
  188. package/dist/pagetree/pagetree.model.js.map +1 -0
  189. package/dist/pagetree/pagetree.resolver.d.ts +23 -0
  190. package/dist/pagetree/pagetree.resolver.js +238 -0
  191. package/dist/pagetree/pagetree.resolver.js.map +1 -0
  192. package/dist/pagetree/pagetree.service.d.ts +25 -0
  193. package/dist/pagetree/pagetree.service.js +221 -0
  194. package/dist/pagetree/pagetree.service.js.map +1 -0
  195. package/dist/role/role.database.d.ts +17 -0
  196. package/dist/role/role.database.js +74 -0
  197. package/dist/role/role.database.js.map +1 -0
  198. package/dist/role/role.model.d.ts +26 -0
  199. package/dist/role/role.model.js +84 -0
  200. package/dist/role/role.model.js.map +1 -0
  201. package/dist/role/role.resolver.d.ts +27 -0
  202. package/dist/role/role.resolver.js +294 -0
  203. package/dist/role/role.resolver.js.map +1 -0
  204. package/dist/role/role.service.d.ts +33 -0
  205. package/dist/role/role.service.js +265 -0
  206. package/dist/role/role.service.js.map +1 -0
  207. package/dist/run.d.ts +1 -0
  208. package/dist/run.js +29 -0
  209. package/dist/run.js.map +1 -0
  210. package/dist/scalars/datetime.d.ts +2 -0
  211. package/dist/scalars/datetime.js +19 -0
  212. package/dist/scalars/datetime.js.map +1 -0
  213. package/dist/scalars/index.d.ts +3 -0
  214. package/dist/scalars/index.js +4 -0
  215. package/dist/scalars/index.js.map +1 -0
  216. package/dist/scalars/jsondata.d.ts +2 -0
  217. package/dist/scalars/jsondata.js +15 -0
  218. package/dist/scalars/jsondata.js.map +1 -0
  219. package/dist/scalars/urlsafestring.d.ts +4 -0
  220. package/dist/scalars/urlsafestring.js +28 -0
  221. package/dist/scalars/urlsafestring.js.map +1 -0
  222. package/dist/site/site.database.d.ts +15 -0
  223. package/dist/site/site.database.js +164 -0
  224. package/dist/site/site.database.js.map +1 -0
  225. package/dist/site/site.model.d.ts +62 -0
  226. package/dist/site/site.model.js +197 -0
  227. package/dist/site/site.model.js.map +1 -0
  228. package/dist/site/site.resolver.d.ts +30 -0
  229. package/dist/site/site.resolver.js +326 -0
  230. package/dist/site/site.resolver.js.map +1 -0
  231. package/dist/site/site.service.d.ts +35 -0
  232. package/dist/site/site.service.js +199 -0
  233. package/dist/site/site.service.js.map +1 -0
  234. package/dist/siterule/siterule.database.d.ts +5 -0
  235. package/dist/siterule/siterule.database.js +139 -0
  236. package/dist/siterule/siterule.database.js.map +1 -0
  237. package/dist/siterule/siterule.model.d.ts +53 -0
  238. package/dist/siterule/siterule.model.js +203 -0
  239. package/dist/siterule/siterule.model.js.map +1 -0
  240. package/dist/siterule/siterule.resolver.d.ts +12 -0
  241. package/dist/siterule/siterule.resolver.js +100 -0
  242. package/dist/siterule/siterule.resolver.js.map +1 -0
  243. package/dist/siterule/siterule.service.d.ts +23 -0
  244. package/dist/siterule/siterule.service.js +148 -0
  245. package/dist/siterule/siterule.service.js.map +1 -0
  246. package/dist/template/template.database.d.ts +15 -0
  247. package/dist/template/template.database.js +61 -0
  248. package/dist/template/template.database.js.map +1 -0
  249. package/dist/template/template.model.d.ts +32 -0
  250. package/dist/template/template.model.js +124 -0
  251. package/dist/template/template.model.js.map +1 -0
  252. package/dist/template/template.resolver.d.ts +22 -0
  253. package/dist/template/template.resolver.js +216 -0
  254. package/dist/template/template.resolver.js.map +1 -0
  255. package/dist/template/template.service.d.ts +27 -0
  256. package/dist/template/template.service.js +192 -0
  257. package/dist/template/template.service.js.map +1 -0
  258. package/dist/templaterule/templaterule.database.d.ts +5 -0
  259. package/dist/templaterule/templaterule.database.js +80 -0
  260. package/dist/templaterule/templaterule.database.js.map +1 -0
  261. package/dist/templaterule/templaterule.model.d.ts +38 -0
  262. package/dist/templaterule/templaterule.model.js +136 -0
  263. package/dist/templaterule/templaterule.model.js.map +1 -0
  264. package/dist/templaterule/templaterule.resolver.d.ts +12 -0
  265. package/dist/templaterule/templaterule.resolver.js +100 -0
  266. package/dist/templaterule/templaterule.resolver.js.map +1 -0
  267. package/dist/templaterule/templaterule.service.d.ts +19 -0
  268. package/dist/templaterule/templaterule.service.js +123 -0
  269. package/dist/templaterule/templaterule.service.js.map +1 -0
  270. package/dist/user/user.database.d.ts +22 -0
  271. package/dist/user/user.database.js +116 -0
  272. package/dist/user/user.database.js.map +1 -0
  273. package/dist/user/user.model.d.ts +42 -0
  274. package/dist/user/user.model.js +122 -0
  275. package/dist/user/user.model.js.map +1 -0
  276. package/dist/user/user.resolver.d.ts +16 -0
  277. package/dist/user/user.resolver.js +140 -0
  278. package/dist/user/user.resolver.js.map +1 -0
  279. package/dist/user/user.service.d.ts +29 -0
  280. package/dist/user/user.service.js +195 -0
  281. package/dist/user/user.service.js.map +1 -0
  282. package/dist/util/authservice.d.ts +28 -0
  283. package/dist/util/authservice.js +131 -0
  284. package/dist/util/authservice.js.map +1 -0
  285. package/dist/util/dates.d.ts +2 -0
  286. package/dist/util/dates.js +4 -0
  287. package/dist/util/dates.js.map +1 -0
  288. package/dist/util/filehandler.d.ts +15 -0
  289. package/dist/util/filehandler.js +48 -0
  290. package/dist/util/filehandler.js.map +1 -0
  291. package/dist/util/index.d.ts +13 -0
  292. package/dist/util/index.js +26 -0
  293. package/dist/util/index.js.map +1 -0
  294. package/dist/util/indexing.d.ts +12 -0
  295. package/dist/util/indexing.js +74 -0
  296. package/dist/util/indexing.js.map +1 -0
  297. package/dist/util/migrations.d.ts +15 -0
  298. package/dist/util/migrations.js +2 -0
  299. package/dist/util/migrations.js.map +1 -0
  300. package/dist/util/mutationlogger.d.ts +1 -0
  301. package/dist/util/mutationlogger.js +9 -0
  302. package/dist/util/mutationlogger.js.map +1 -0
  303. package/dist/util/registry.d.ts +25 -0
  304. package/dist/util/registry.js +66 -0
  305. package/dist/util/registry.js.map +1 -0
  306. package/dist/util/rules.d.ts +6 -0
  307. package/dist/util/rules.js +31 -0
  308. package/dist/util/rules.js.map +1 -0
  309. package/dist/util/sharedtypes.d.ts +3 -0
  310. package/dist/util/sharedtypes.js +2 -0
  311. package/dist/util/sharedtypes.js.map +1 -0
  312. package/dist/util/stopwords.d.ts +1 -0
  313. package/dist/util/stopwords.js +152 -0
  314. package/dist/util/stopwords.js.map +1 -0
  315. package/dist/version/version.model.d.ts +11 -0
  316. package/dist/version/version.model.js +46 -0
  317. package/dist/version/version.model.js.map +1 -0
  318. package/dist/version/version.resolver.d.ts +6 -0
  319. package/dist/version/version.resolver.js +45 -0
  320. package/dist/version/version.resolver.js.map +1 -0
  321. package/dist/versionedservice/service.d.ts +148 -0
  322. package/dist/versionedservice/service.js +547 -0
  323. package/dist/versionedservice/service.js.map +1 -0
  324. package/dist/versionedservice/types.d.ts +87 -0
  325. package/dist/versionedservice/types.js +11 -0
  326. package/dist/versionedservice/types.js.map +1 -0
  327. package/package.json +50 -0
  328. package/readme/DosGato.mwb +0 -0
  329. package/readme/DosGato.mwb.bak +0 -0
  330. package/readme/upgradeflow2.png +0 -0
@@ -0,0 +1,271 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { DateTime } from 'luxon';
11
+ import { isNotNull } from 'txstate-utils';
12
+ import { Field, ID, InputType, Int, ObjectType, registerEnumType } from 'type-graphql';
13
+ import { ValidatedResponse } from '@txstate-mws/graphql-server';
14
+ import { extension } from 'mime-types';
15
+ import { JsonData, UrlSafeString } from '../internal.js';
16
+ let BoxAttributes = class BoxAttributes {
17
+ constructor(row) {
18
+ this.width = row.width;
19
+ this.height = row.height;
20
+ }
21
+ static hasBox(row) {
22
+ return !!row.width;
23
+ }
24
+ };
25
+ __decorate([
26
+ Field(),
27
+ __metadata("design:type", Number)
28
+ ], BoxAttributes.prototype, "width", void 0);
29
+ __decorate([
30
+ Field(),
31
+ __metadata("design:type", Number)
32
+ ], BoxAttributes.prototype, "height", void 0);
33
+ BoxAttributes = __decorate([
34
+ ObjectType({ description: 'Asset attributes only available for visual inline assets like images, animated GIFS, or videos.' }),
35
+ __metadata("design:paramtypes", [Object])
36
+ ], BoxAttributes);
37
+ export { BoxAttributes };
38
+ let Asset = class Asset {
39
+ constructor(row) {
40
+ this.internalId = row.id;
41
+ this.id = row.dataId;
42
+ this.name = row.name;
43
+ this.size = row.filesize;
44
+ this.mime = row.mime; // should be detected upon upload
45
+ this.extension = extension(this.mime) || ''; // TODO: extension can return false if mime is blank, not a string, or unrecognized. What should the extension be in that case?
46
+ this.box = BoxAttributes.hasBox(row) ? new BoxAttributes(row) : undefined;
47
+ this.folderInternalId = row.folderId;
48
+ this.dataId = row.dataId;
49
+ this.checksum = row.shasum;
50
+ this.lastRawDownload = row.lastDownload;
51
+ this.deleted = isNotNull(row.deletedAt);
52
+ this.deletedAt = DateTime.fromJSDate(row.deletedAt);
53
+ this.deletedBy = row.deletedBy;
54
+ }
55
+ };
56
+ __decorate([
57
+ Field(type => ID, { description: 'A globally unique identifier for this asset. Should be used any time content links to an asset, so that content can migrate to new instances and point at the same asset.' }),
58
+ __metadata("design:type", String)
59
+ ], Asset.prototype, "id", void 0);
60
+ __decorate([
61
+ Field({ description: 'Filename that will be used when downloading the asset. Does not include an extension. May be different than the filename of the original upload.' }),
62
+ __metadata("design:type", UrlSafeString)
63
+ ], Asset.prototype, "name", void 0);
64
+ __decorate([
65
+ Field(type => Int, { description: 'Filesize in bytes.' }),
66
+ __metadata("design:type", Number)
67
+ ], Asset.prototype, "size", void 0);
68
+ __decorate([
69
+ Field({ description: 'The mime type for this asset, e.g. "text/plain".' }),
70
+ __metadata("design:type", String)
71
+ ], Asset.prototype, "mime", void 0);
72
+ __decorate([
73
+ Field({ description: 'The preferred extension for the mime type of the asset. May be different than the extension of the original upload since we use file inspection to identify file types.' }),
74
+ __metadata("design:type", String)
75
+ ], Asset.prototype, "extension", void 0);
76
+ __decorate([
77
+ Field(),
78
+ __metadata("design:type", BoxAttributes)
79
+ ], Asset.prototype, "box", void 0);
80
+ __decorate([
81
+ Field({ description: 'This is only the current checksum, old versions could have another checksum.' }),
82
+ __metadata("design:type", String)
83
+ ], Asset.prototype, "checksum", void 0);
84
+ __decorate([
85
+ Field({ description: 'Asset has been soft-deleted but is still recoverable.' }),
86
+ __metadata("design:type", Boolean)
87
+ ], Asset.prototype, "deleted", void 0);
88
+ __decorate([
89
+ Field({ nullable: true, description: 'Date this asset was soft-deleted, null when not applicable.' }),
90
+ __metadata("design:type", DateTime
91
+ // does not include downloads of resized versions, but the fieldresolver will
92
+ )
93
+ ], Asset.prototype, "deletedAt", void 0);
94
+ Asset = __decorate([
95
+ ObjectType({ description: 'Assets are binary files like images or word documents that will be included or linked on pages. Assets do not get published and unpublished - the latest version is always considered to be the public version and there is no such thing as a private unpublished asset.' }),
96
+ __metadata("design:paramtypes", [Object])
97
+ ], Asset);
98
+ export { Asset };
99
+ let AssetFilter = class AssetFilter {
100
+ };
101
+ __decorate([
102
+ Field(type => [ID], { nullable: true }),
103
+ __metadata("design:type", Array)
104
+ ], AssetFilter.prototype, "ids", void 0);
105
+ __decorate([
106
+ Field(type => [ID], { nullable: true }),
107
+ __metadata("design:type", Array)
108
+ ], AssetFilter.prototype, "siteIds", void 0);
109
+ __decorate([
110
+ Field(type => [AssetLinkInput], { nullable: true, description: 'Resolve asset links preferring id and falling back to path or checksum.' }),
111
+ __metadata("design:type", Array)
112
+ ], AssetFilter.prototype, "links", void 0);
113
+ __decorate([
114
+ Field(type => [String], { nullable: true }),
115
+ __metadata("design:type", Array)
116
+ ], AssetFilter.prototype, "checksums", void 0);
117
+ __decorate([
118
+ Field(type => [ID], { nullable: true }),
119
+ __metadata("design:type", Array)
120
+ ], AssetFilter.prototype, "folderIds", void 0);
121
+ __decorate([
122
+ Field(type => [String], { nullable: true, description: 'Return assets with the given paths.' }),
123
+ __metadata("design:type", Array)
124
+ ], AssetFilter.prototype, "paths", void 0);
125
+ __decorate([
126
+ Field(type => [String], { nullable: true, description: 'Return assets that descend from any of the given paths.' }),
127
+ __metadata("design:type", Array)
128
+ ], AssetFilter.prototype, "beneath", void 0);
129
+ __decorate([
130
+ Field(type => [String], { nullable: true, description: 'Return assets that are direct children of any of the given paths.' }),
131
+ __metadata("design:type", Array)
132
+ ], AssetFilter.prototype, "parentPaths", void 0);
133
+ __decorate([
134
+ Field({ nullable: true, description: 'true -> return assets referenced by any page, false -> return assets not referenced by any page, null -> return all assets' }),
135
+ __metadata("design:type", Boolean)
136
+ ], AssetFilter.prototype, "referenced", void 0);
137
+ __decorate([
138
+ Field(type => Boolean, { nullable: true, description: 'true -> return only deleted assets, false -> return only nondeleted assets, null -> return all assets' }),
139
+ __metadata("design:type", Boolean)
140
+ ], AssetFilter.prototype, "deleted", void 0);
141
+ AssetFilter = __decorate([
142
+ InputType()
143
+ ], AssetFilter);
144
+ export { AssetFilter };
145
+ let CreateAssetInput = class CreateAssetInput {
146
+ };
147
+ __decorate([
148
+ Field(),
149
+ __metadata("design:type", String)
150
+ ], CreateAssetInput.prototype, "name", void 0);
151
+ __decorate([
152
+ Field(type => ID),
153
+ __metadata("design:type", String)
154
+ ], CreateAssetInput.prototype, "folderId", void 0);
155
+ __decorate([
156
+ Field(),
157
+ __metadata("design:type", String)
158
+ ], CreateAssetInput.prototype, "checksum", void 0);
159
+ __decorate([
160
+ Field(),
161
+ __metadata("design:type", String)
162
+ ], CreateAssetInput.prototype, "mime", void 0);
163
+ __decorate([
164
+ Field(),
165
+ __metadata("design:type", Number)
166
+ ], CreateAssetInput.prototype, "size", void 0);
167
+ CreateAssetInput = __decorate([
168
+ InputType()
169
+ ], CreateAssetInput);
170
+ export { CreateAssetInput };
171
+ let UpdateAssetInput = class UpdateAssetInput {
172
+ };
173
+ __decorate([
174
+ Field(),
175
+ __metadata("design:type", String)
176
+ ], UpdateAssetInput.prototype, "name", void 0);
177
+ __decorate([
178
+ Field(),
179
+ __metadata("design:type", String)
180
+ ], UpdateAssetInput.prototype, "checksum", void 0);
181
+ UpdateAssetInput = __decorate([
182
+ InputType()
183
+ ], UpdateAssetInput);
184
+ export { UpdateAssetInput };
185
+ let AssetResponse = class AssetResponse extends ValidatedResponse {
186
+ constructor(config) {
187
+ super(config);
188
+ this.asset = config.asset;
189
+ }
190
+ };
191
+ __decorate([
192
+ Field({ nullable: true }),
193
+ __metadata("design:type", Asset)
194
+ ], AssetResponse.prototype, "asset", void 0);
195
+ AssetResponse = __decorate([
196
+ ObjectType(),
197
+ __metadata("design:paramtypes", [Object])
198
+ ], AssetResponse);
199
+ export { AssetResponse };
200
+ let AssetPermissions = class AssetPermissions {
201
+ };
202
+ AssetPermissions = __decorate([
203
+ ObjectType()
204
+ ], AssetPermissions);
205
+ export { AssetPermissions };
206
+ export var AssetPermission;
207
+ (function (AssetPermission) {
208
+ AssetPermission["UPDATE"] = "update";
209
+ AssetPermission["MOVE"] = "move";
210
+ AssetPermission["DELETE"] = "delete";
211
+ AssetPermission["UNDELETE"] = "undelete";
212
+ })(AssetPermission || (AssetPermission = {}));
213
+ registerEnumType(AssetPermission, {
214
+ name: 'AssetPermission',
215
+ description: 'All the action types that can be individually permissioned on an asset.'
216
+ });
217
+ let AssetResize = class AssetResize {
218
+ constructor(row) {
219
+ this.width = row.width;
220
+ this.height = row.height;
221
+ this.quality = row.quality;
222
+ this.settings = row.settings;
223
+ this.lastDownload = DateTime.fromJSDate(row.lastdownload);
224
+ this.binaryId = row.binaryId;
225
+ this.originalBinaryId = row.originalBinaryId;
226
+ }
227
+ };
228
+ __decorate([
229
+ Field(),
230
+ __metadata("design:type", Number)
231
+ ], AssetResize.prototype, "width", void 0);
232
+ __decorate([
233
+ Field(),
234
+ __metadata("design:type", Number)
235
+ ], AssetResize.prototype, "height", void 0);
236
+ __decorate([
237
+ Field(),
238
+ __metadata("design:type", Number)
239
+ ], AssetResize.prototype, "quality", void 0);
240
+ __decorate([
241
+ Field(type => JsonData),
242
+ __metadata("design:type", Object)
243
+ ], AssetResize.prototype, "settings", void 0);
244
+ __decorate([
245
+ Field(),
246
+ __metadata("design:type", DateTime)
247
+ ], AssetResize.prototype, "lastDownload", void 0);
248
+ AssetResize = __decorate([
249
+ ObjectType(),
250
+ __metadata("design:paramtypes", [Object])
251
+ ], AssetResize);
252
+ export { AssetResize };
253
+ let AssetLinkInput = class AssetLinkInput {
254
+ };
255
+ __decorate([
256
+ Field(type => ID),
257
+ __metadata("design:type", String)
258
+ ], AssetLinkInput.prototype, "id", void 0);
259
+ __decorate([
260
+ Field(),
261
+ __metadata("design:type", String)
262
+ ], AssetLinkInput.prototype, "path", void 0);
263
+ __decorate([
264
+ Field(),
265
+ __metadata("design:type", String)
266
+ ], AssetLinkInput.prototype, "checksum", void 0);
267
+ AssetLinkInput = __decorate([
268
+ InputType()
269
+ ], AssetLinkInput);
270
+ export { AssetLinkInput };
271
+ //# sourceMappingURL=asset.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset.model.js","sourceRoot":"","sources":["../../src/asset/asset.model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { Context } from '@txstate-mws/graphql-server';
2
+ import { DateTime } from 'luxon';
3
+ import { AssetFolder, Role, User, ObjectVersion, Asset, AssetFilter, AssetPermission, AssetResize, AssetResponse, CreateAssetInput, UpdateAssetInput } from '../internal.js';
4
+ export declare class AssetResolver {
5
+ assets(ctx: Context, filter: AssetFilter): Promise<Asset[]>;
6
+ deletedBy(ctx: Context, asset: Asset): Promise<import("../internal.js").RedactedUser | null | undefined>;
7
+ folder(ctx: Context, asset: Asset): Promise<AssetFolder | undefined>;
8
+ ancestors(ctx: Context, asset: Asset): Promise<AssetFolder[]>;
9
+ path(ctx: Context, asset: Asset): Promise<string>;
10
+ data(ctx: Context, asset: Asset, version?: number): Promise<any>;
11
+ resizes(ctx: Context, asset: Asset): Promise<AssetResize[]>;
12
+ createdAt(ctx: Context, asset: Asset): Promise<DateTime>;
13
+ createdBy(ctx: Context, asset: Asset): Promise<User | import("../internal.js").RedactedUser | undefined>;
14
+ modifiedAt(ctx: Context, asset: Asset): Promise<DateTime>;
15
+ modifiedBy(ctx: Context, asset: Asset): Promise<User | import("../internal.js").RedactedUser | undefined>;
16
+ downloadedAt(ctx: Context, asset: Asset): Promise<DateTime>;
17
+ roles(ctx: Context, asset: Asset, withPermission?: AssetPermission[]): Promise<Role[]>;
18
+ versions(ctx: Context, asset: Asset): Promise<ObjectVersion[]>;
19
+ permissions(asset: Asset): Asset;
20
+ createAsset(ctx: Context, args: CreateAssetInput): Promise<AssetResponse>;
21
+ updateAsset(ctx: Context, args: UpdateAssetInput): Promise<void>;
22
+ moveAsset(ctx: Context, assetId: string, targetFolderId: string): Promise<AssetResponse>;
23
+ deleteAsset(ctx: Context, assetId: string): Promise<AssetResponse>;
24
+ undeleteAsset(ctx: Context, assetId: string): Promise<AssetResponse>;
25
+ }
26
+ export declare class AssetPermissionsResolver {
27
+ viewForEdit(ctx: Context, asset: Asset): Promise<boolean>;
28
+ update(ctx: Context, asset: Asset): Promise<boolean>;
29
+ move(ctx: Context, asset: Asset): Promise<boolean>;
30
+ delete(ctx: Context, asset: Asset): Promise<boolean>;
31
+ undelete(ctx: Context, asset: Asset): Promise<boolean>;
32
+ }
@@ -0,0 +1,325 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Context, UnimplementedError } from '@txstate-mws/graphql-server';
14
+ import { DateTime } from 'luxon';
15
+ import { Resolver, Query, Arg, Ctx, FieldResolver, Root, Int, Mutation, ID } from 'type-graphql';
16
+ import { isNull } from 'txstate-utils';
17
+ import { AssetFolder, AssetFolderService, Role, JsonData, User, UserService, ObjectVersion, VersionedService, Asset, AssetFilter, AssetPermission, AssetPermissions, AssetResize, AssetService, AssetRuleService, RoleService, AssetResponse, CreateAssetInput, UpdateAssetInput } from '../internal.js';
18
+ let AssetResolver = class AssetResolver {
19
+ async assets(ctx, filter) {
20
+ return await ctx.svc(AssetService).find(filter);
21
+ }
22
+ async deletedBy(ctx, asset) {
23
+ if (isNull(asset.deletedBy))
24
+ return null;
25
+ else
26
+ return await ctx.svc(UserService).findByInternalId(asset.deletedBy);
27
+ }
28
+ async folder(ctx, asset) {
29
+ return await ctx.svc(AssetFolderService).findByInternalId(asset.folderInternalId);
30
+ }
31
+ async ancestors(ctx, asset) {
32
+ return await ctx.svc(AssetService).getAncestors(asset);
33
+ }
34
+ async path(ctx, asset) {
35
+ return await ctx.svc(AssetService).getPath(asset);
36
+ }
37
+ async data(ctx, asset, version) {
38
+ const versioned = await ctx.svc(VersionedService).get(asset.dataId, { version });
39
+ return versioned.data;
40
+ }
41
+ async resizes(ctx, asset) {
42
+ return await ctx.svc(AssetService).getResizes(asset);
43
+ }
44
+ async createdAt(ctx, asset) {
45
+ const data = await ctx.svc(VersionedService).get(asset.dataId);
46
+ return DateTime.fromJSDate(data.created);
47
+ }
48
+ async createdBy(ctx, asset) {
49
+ const data = await ctx.svc(VersionedService).get(asset.dataId);
50
+ return await ctx.svc(UserService).findById(data.createdBy);
51
+ }
52
+ async modifiedAt(ctx, asset) {
53
+ const data = await ctx.svc(VersionedService).get(asset.dataId);
54
+ return DateTime.fromJSDate(data.modified);
55
+ }
56
+ async modifiedBy(ctx, asset) {
57
+ const data = await ctx.svc(VersionedService).get(asset.dataId);
58
+ return await ctx.svc(UserService).findById(data.modifiedBy);
59
+ }
60
+ async downloadedAt(ctx, asset) {
61
+ return await ctx.svc(AssetService).getLatestDownload(asset);
62
+ }
63
+ async roles(ctx, asset, withPermission) {
64
+ let rules = await ctx.svc(AssetRuleService).findByAsset(asset);
65
+ if (withPermission)
66
+ rules = rules.filter(r => withPermission.some(p => r.grants[p]));
67
+ return await ctx.svc(RoleService).findByIds(rules.map(r => r.roleId));
68
+ }
69
+ async versions(ctx, asset) {
70
+ const versions = await ctx.svc(VersionedService).listVersions(asset.dataId);
71
+ return versions.map(v => new ObjectVersion(v));
72
+ }
73
+ permissions(asset) {
74
+ return asset;
75
+ }
76
+ async createAsset(ctx, args) {
77
+ return await ctx.svc(AssetService).create(args);
78
+ }
79
+ async updateAsset(ctx, args) {
80
+ throw new UnimplementedError();
81
+ }
82
+ async moveAsset(ctx, assetId, targetFolderId) {
83
+ return await ctx.svc(AssetService).move(assetId, targetFolderId);
84
+ }
85
+ async deleteAsset(ctx, assetId) {
86
+ return await ctx.svc(AssetService).delete(assetId);
87
+ }
88
+ async undeleteAsset(ctx, assetId) {
89
+ return await ctx.svc(AssetService).undelete(assetId);
90
+ }
91
+ };
92
+ __decorate([
93
+ Query(returns => [Asset]),
94
+ __param(0, Ctx()),
95
+ __param(1, Arg('filter')),
96
+ __metadata("design:type", Function),
97
+ __metadata("design:paramtypes", [Context, AssetFilter]),
98
+ __metadata("design:returntype", Promise)
99
+ ], AssetResolver.prototype, "assets", null);
100
+ __decorate([
101
+ FieldResolver(returns => User, { nullable: true, description: 'Null when the asset is not in the soft-deleted state.' }),
102
+ __param(0, Ctx()),
103
+ __param(1, Root()),
104
+ __metadata("design:type", Function),
105
+ __metadata("design:paramtypes", [Context, Asset]),
106
+ __metadata("design:returntype", Promise)
107
+ ], AssetResolver.prototype, "deletedBy", null);
108
+ __decorate([
109
+ FieldResolver(returns => AssetFolder, { description: 'Returns parent folder.' }),
110
+ __param(0, Ctx()),
111
+ __param(1, Root()),
112
+ __metadata("design:type", Function),
113
+ __metadata("design:paramtypes", [Context, Asset]),
114
+ __metadata("design:returntype", Promise)
115
+ ], AssetResolver.prototype, "folder", null);
116
+ __decorate([
117
+ FieldResolver(returns => [AssetFolder], { description: 'Starts with the parent folder and proceeds upward. Last element will be the site\'s root folder.' }),
118
+ __param(0, Ctx()),
119
+ __param(1, Root()),
120
+ __metadata("design:type", Function),
121
+ __metadata("design:paramtypes", [Context, Asset]),
122
+ __metadata("design:returntype", Promise)
123
+ ], AssetResolver.prototype, "ancestors", null);
124
+ __decorate([
125
+ FieldResolver(returns => String),
126
+ __param(0, Ctx()),
127
+ __param(1, Root()),
128
+ __metadata("design:type", Function),
129
+ __metadata("design:paramtypes", [Context, Asset]),
130
+ __metadata("design:returntype", Promise)
131
+ ], AssetResolver.prototype, "path", null);
132
+ __decorate([
133
+ FieldResolver(returns => JsonData),
134
+ __param(0, Ctx()),
135
+ __param(1, Root()),
136
+ __param(2, Arg('version', type => Int, { nullable: true })),
137
+ __metadata("design:type", Function),
138
+ __metadata("design:paramtypes", [Context, Asset, Number]),
139
+ __metadata("design:returntype", Promise)
140
+ ], AssetResolver.prototype, "data", null);
141
+ __decorate([
142
+ FieldResolver(returns => [AssetResize], { nullable: true, description: 'List of available resized versions of this asset.' }),
143
+ __param(0, Ctx()),
144
+ __param(1, Root()),
145
+ __metadata("design:type", Function),
146
+ __metadata("design:paramtypes", [Context, Asset]),
147
+ __metadata("design:returntype", Promise)
148
+ ], AssetResolver.prototype, "resizes", null);
149
+ __decorate([
150
+ FieldResolver(returns => DateTime),
151
+ __param(0, Ctx()),
152
+ __param(1, Root()),
153
+ __metadata("design:type", Function),
154
+ __metadata("design:paramtypes", [Context, Asset]),
155
+ __metadata("design:returntype", Promise)
156
+ ], AssetResolver.prototype, "createdAt", null);
157
+ __decorate([
158
+ FieldResolver(returns => User),
159
+ __param(0, Ctx()),
160
+ __param(1, Root()),
161
+ __metadata("design:type", Function),
162
+ __metadata("design:paramtypes", [Context, Asset]),
163
+ __metadata("design:returntype", Promise)
164
+ ], AssetResolver.prototype, "createdBy", null);
165
+ __decorate([
166
+ FieldResolver(returns => DateTime),
167
+ __param(0, Ctx()),
168
+ __param(1, Root()),
169
+ __metadata("design:type", Function),
170
+ __metadata("design:paramtypes", [Context, Asset]),
171
+ __metadata("design:returntype", Promise)
172
+ ], AssetResolver.prototype, "modifiedAt", null);
173
+ __decorate([
174
+ FieldResolver(returns => User),
175
+ __param(0, Ctx()),
176
+ __param(1, Root()),
177
+ __metadata("design:type", Function),
178
+ __metadata("design:paramtypes", [Context, Asset]),
179
+ __metadata("design:returntype", Promise)
180
+ ], AssetResolver.prototype, "modifiedBy", null);
181
+ __decorate([
182
+ FieldResolver(returns => DateTime, {
183
+ nullable: true,
184
+ description: 'The last time this asset or one of its resizes was downloaded by an anonymous user.'
185
+ }),
186
+ __param(0, Ctx()),
187
+ __param(1, Root()),
188
+ __metadata("design:type", Function),
189
+ __metadata("design:paramtypes", [Context, Asset]),
190
+ __metadata("design:returntype", Promise)
191
+ ], AssetResolver.prototype, "downloadedAt", null);
192
+ __decorate([
193
+ FieldResolver(returns => [Role], { description: 'Returns a list of all roles with at least one of the specified permissions on this asset, or any permission if null.' }),
194
+ __param(0, Ctx()),
195
+ __param(1, Root()),
196
+ __param(2, Arg('withPermission', type => [AssetPermission], { nullable: true })),
197
+ __metadata("design:type", Function),
198
+ __metadata("design:paramtypes", [Context, Asset, Array]),
199
+ __metadata("design:returntype", Promise)
200
+ ], AssetResolver.prototype, "roles", null);
201
+ __decorate([
202
+ FieldResolver(returns => [ObjectVersion], { description: 'Returns a list of all versions of this asset. One of the version numbers can be passed to the data property in order to retrieve that version of the data.' }),
203
+ __param(0, Ctx()),
204
+ __param(1, Root()),
205
+ __metadata("design:type", Function),
206
+ __metadata("design:paramtypes", [Context, Asset]),
207
+ __metadata("design:returntype", Promise)
208
+ ], AssetResolver.prototype, "versions", null);
209
+ __decorate([
210
+ FieldResolver(returns => AssetPermissions, {
211
+ description: `Reveal the simplified results after all authorization rules are taken into account
212
+ for the current user. Makes it easy to light up, disable, or hide buttons in the UI.`
213
+ }),
214
+ __param(0, Root()),
215
+ __metadata("design:type", Function),
216
+ __metadata("design:paramtypes", [Asset]),
217
+ __metadata("design:returntype", void 0)
218
+ ], AssetResolver.prototype, "permissions", null);
219
+ __decorate([
220
+ Mutation(returns => AssetResponse, { description: 'Create a new asset asset in an asset folder.' }),
221
+ __param(0, Ctx()),
222
+ __param(1, Arg('args', type => CreateAssetInput)),
223
+ __metadata("design:type", Function),
224
+ __metadata("design:paramtypes", [Context, CreateAssetInput]),
225
+ __metadata("design:returntype", Promise)
226
+ ], AssetResolver.prototype, "createAsset", null);
227
+ __decorate([
228
+ Mutation(returns => AssetResponse, { description: 'Update an asset' }),
229
+ __param(0, Ctx()),
230
+ __param(1, Arg('args', type => UpdateAssetInput)),
231
+ __metadata("design:type", Function),
232
+ __metadata("design:paramtypes", [Context, UpdateAssetInput]),
233
+ __metadata("design:returntype", Promise)
234
+ ], AssetResolver.prototype, "updateAsset", null);
235
+ __decorate([
236
+ Mutation(returns => AssetResponse),
237
+ __param(0, Ctx()),
238
+ __param(1, Arg('assetId', type => ID)),
239
+ __param(2, Arg('targetFolderId', type => ID)),
240
+ __metadata("design:type", Function),
241
+ __metadata("design:paramtypes", [Context, String, String]),
242
+ __metadata("design:returntype", Promise)
243
+ ], AssetResolver.prototype, "moveAsset", null);
244
+ __decorate([
245
+ Mutation(returns => AssetResponse),
246
+ __param(0, Ctx()),
247
+ __param(1, Arg('assetId', type => ID)),
248
+ __metadata("design:type", Function),
249
+ __metadata("design:paramtypes", [Context, String]),
250
+ __metadata("design:returntype", Promise)
251
+ ], AssetResolver.prototype, "deleteAsset", null);
252
+ __decorate([
253
+ Mutation(returns => AssetResponse),
254
+ __param(0, Ctx()),
255
+ __param(1, Arg('assetId', type => ID)),
256
+ __metadata("design:type", Function),
257
+ __metadata("design:paramtypes", [Context, String]),
258
+ __metadata("design:returntype", Promise)
259
+ ], AssetResolver.prototype, "undeleteAsset", null);
260
+ AssetResolver = __decorate([
261
+ Resolver(of => Asset)
262
+ ], AssetResolver);
263
+ export { AssetResolver };
264
+ let AssetPermissionsResolver = class AssetPermissionsResolver {
265
+ async viewForEdit(ctx, asset) {
266
+ return await ctx.svc(AssetService).mayViewForEdit(asset);
267
+ }
268
+ async update(ctx, asset) {
269
+ return await ctx.svc(AssetService).mayUpdate(asset);
270
+ }
271
+ async move(ctx, asset) {
272
+ return await ctx.svc(AssetService).mayMove(asset);
273
+ }
274
+ async delete(ctx, asset) {
275
+ return await ctx.svc(AssetService).mayDelete(asset);
276
+ }
277
+ async undelete(ctx, asset) {
278
+ return await ctx.svc(AssetService).mayUndelete(asset);
279
+ }
280
+ };
281
+ __decorate([
282
+ FieldResolver(returns => Boolean, { description: 'User may view this asset in the asset manager UI.' }),
283
+ __param(0, Ctx()),
284
+ __param(1, Root()),
285
+ __metadata("design:type", Function),
286
+ __metadata("design:paramtypes", [Context, Asset]),
287
+ __metadata("design:returntype", Promise)
288
+ ], AssetPermissionsResolver.prototype, "viewForEdit", null);
289
+ __decorate([
290
+ FieldResolver(returns => Boolean, { description: 'User may update this asset but not necessarily move it.' }),
291
+ __param(0, Ctx()),
292
+ __param(1, Root()),
293
+ __metadata("design:type", Function),
294
+ __metadata("design:paramtypes", [Context, Asset]),
295
+ __metadata("design:returntype", Promise)
296
+ ], AssetPermissionsResolver.prototype, "update", null);
297
+ __decorate([
298
+ FieldResolver(returns => Boolean, { description: 'User may move this asset beneath a folder for which they have the `create` permission.' }),
299
+ __param(0, Ctx()),
300
+ __param(1, Root()),
301
+ __metadata("design:type", Function),
302
+ __metadata("design:paramtypes", [Context, Asset]),
303
+ __metadata("design:returntype", Promise)
304
+ ], AssetPermissionsResolver.prototype, "move", null);
305
+ __decorate([
306
+ FieldResolver(returns => Boolean, { description: 'User may soft-delete this asset.' }),
307
+ __param(0, Ctx()),
308
+ __param(1, Root()),
309
+ __metadata("design:type", Function),
310
+ __metadata("design:paramtypes", [Context, Asset]),
311
+ __metadata("design:returntype", Promise)
312
+ ], AssetPermissionsResolver.prototype, "delete", null);
313
+ __decorate([
314
+ FieldResolver(returns => Boolean, { description: 'User may undelete this asset. Returns false when the asset is not deleted.' }),
315
+ __param(0, Ctx()),
316
+ __param(1, Root()),
317
+ __metadata("design:type", Function),
318
+ __metadata("design:paramtypes", [Context, Asset]),
319
+ __metadata("design:returntype", Promise)
320
+ ], AssetPermissionsResolver.prototype, "undelete", null);
321
+ AssetPermissionsResolver = __decorate([
322
+ Resolver(of => AssetPermissions)
323
+ ], AssetPermissionsResolver);
324
+ export { AssetPermissionsResolver };
325
+ //# sourceMappingURL=asset.resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset.resolver.js","sourceRoot":"","sources":["../../src/asset/asset.resolver.ts"],"names":[],"mappings":"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"}