@things-factory/figure-service 10.1.3 → 10.1.6

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 (67) hide show
  1. package/coverage/clover.xml +6 -0
  2. package/coverage/coverage-final.json +1 -0
  3. package/coverage/lcov-report/base.css +224 -0
  4. package/coverage/lcov-report/block-navigation.js +87 -0
  5. package/coverage/lcov-report/favicon.png +0 -0
  6. package/coverage/lcov-report/index.html +101 -0
  7. package/coverage/lcov-report/prettify.css +1 -0
  8. package/coverage/lcov-report/prettify.js +2 -0
  9. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  10. package/coverage/lcov-report/sorter.js +210 -0
  11. package/coverage/lcov.info +0 -0
  12. package/dist-server/index.d.ts +2 -0
  13. package/dist-server/index.js +13 -0
  14. package/dist-server/index.js.map +1 -1
  15. package/dist-server/routers/figure-thumbnail-router.d.ts +24 -0
  16. package/dist-server/routers/figure-thumbnail-router.js +93 -0
  17. package/dist-server/routers/figure-thumbnail-router.js.map +1 -0
  18. package/dist-server/routes.d.ts +1 -0
  19. package/dist-server/routes.js +21 -0
  20. package/dist-server/routes.js.map +1 -0
  21. package/dist-server/service/figure/event-subscriber.d.ts +21 -0
  22. package/dist-server/service/figure/event-subscriber.js +51 -0
  23. package/dist-server/service/figure/event-subscriber.js.map +1 -0
  24. package/dist-server/service/figure/figure-gate.d.ts +55 -0
  25. package/dist-server/service/figure/figure-gate.js +64 -0
  26. package/dist-server/service/figure/figure-gate.js.map +1 -0
  27. package/dist-server/service/figure/figure-history.d.ts +43 -0
  28. package/dist-server/service/figure/figure-history.js +155 -0
  29. package/dist-server/service/figure/figure-history.js.map +1 -0
  30. package/dist-server/service/figure/figure-mutation.d.ts +45 -0
  31. package/dist-server/service/figure/figure-mutation.js +174 -1
  32. package/dist-server/service/figure/figure-mutation.js.map +1 -1
  33. package/dist-server/service/figure/figure-query.d.ts +24 -1
  34. package/dist-server/service/figure/figure-query.js +75 -0
  35. package/dist-server/service/figure/figure-query.js.map +1 -1
  36. package/dist-server/service/figure/figure-tools.d.ts +10 -0
  37. package/dist-server/service/figure/figure-tools.js +304 -0
  38. package/dist-server/service/figure/figure-tools.js.map +1 -0
  39. package/dist-server/service/figure/figure-type.d.ts +25 -1
  40. package/dist-server/service/figure/figure-type.js +58 -5
  41. package/dist-server/service/figure/figure-type.js.map +1 -1
  42. package/dist-server/service/figure/figure.d.ts +9 -0
  43. package/dist-server/service/figure/figure.js +15 -3
  44. package/dist-server/service/figure/figure.js.map +1 -1
  45. package/dist-server/service/figure/index.d.ts +4 -1
  46. package/dist-server/service/figure/index.js +5 -2
  47. package/dist-server/service/figure/index.js.map +1 -1
  48. package/dist-server/service/index.d.ts +6 -2
  49. package/dist-server/service/index.js +17 -2
  50. package/dist-server/service/index.js.map +1 -1
  51. package/dist-server/tsconfig.tsbuildinfo +1 -0
  52. package/package.json +9 -6
  53. package/server/index.ts +13 -0
  54. package/server/routers/figure-thumbnail-router.ts +110 -0
  55. package/server/routes.ts +24 -0
  56. package/server/service/figure/event-subscriber.ts +49 -0
  57. package/server/service/figure/figure-gate.ts +119 -0
  58. package/server/service/figure/figure-history.ts +130 -0
  59. package/server/service/figure/figure-mutation.ts +180 -1
  60. package/server/service/figure/figure-propose.test.ts +136 -4
  61. package/server/service/figure/figure-query.ts +63 -1
  62. package/server/service/figure/figure-tools.test.ts +284 -0
  63. package/server/service/figure/figure-tools.ts +320 -0
  64. package/server/service/figure/figure-type.ts +49 -2
  65. package/server/service/figure/figure.ts +15 -3
  66. package/server/service/figure/index.ts +4 -1
  67. package/server/service/index.ts +23 -2
@@ -45,9 +45,21 @@ export class Figure {
45
45
  @Field(type => ID, { nullable: true, description: 'Unique identifier for the figure.' })
46
46
  readonly id?: string
47
47
 
48
- @Column({ nullable: true, default: 1 })
49
- @Field(type => Int, { nullable: true, description: 'Revision counter, incremented on each save.' })
50
- version?: number = 1
48
+ /**
49
+ * 발행된 판의 번호 — **발행할 때만 올라간다.**
50
+ *
51
+ * 저장 횟수가 아니다. 저작 중에는 몇 번을 고쳐 저장하든 그대로이고, `draft` 가 `released` 가
52
+ * 되는 순간에만 하나 오른다. 소비처가 「몇 번째 판을 쓰고 있나」를 이 값으로 말한다.
53
+ *
54
+ * 한 번도 발행되지 않았으면 **0** 이다. 1 로 시작하면 아직 아무에게도 약속하지 않은 초안이
55
+ * 첫 판인 것처럼 보인다.
56
+ */
57
+ @Column({ nullable: true, default: 0 })
58
+ @Field(type => Int, {
59
+ nullable: true,
60
+ description: 'Published version. Raised when the figure is released, not when it is saved. 0 means never released.'
61
+ })
62
+ version?: number = 0
51
63
 
52
64
  @ManyToOne(type => Domain)
53
65
  @Field(type => Domain, { nullable: true, description: 'The domain this figure belongs to.' })
@@ -1,6 +1,9 @@
1
1
  import { Figure } from './figure.js'
2
+ import { FigureHistory } from './figure-history.js'
2
3
  import { FigureQuery } from './figure-query.js'
3
4
  import { FigureMutation } from './figure-mutation.js'
5
+ import { FigureHistoryEntitySubscriber } from './event-subscriber.js'
4
6
 
5
- export const entities = [Figure]
7
+ export const entities = [Figure, FigureHistory]
6
8
  export const resolvers = [FigureQuery, FigureMutation]
9
+ export const subscribers = [FigureHistoryEntitySubscriber]
@@ -2,9 +2,30 @@
2
2
  export * from './figure/figure.js'
3
3
  export * from './figure/figure-type.js'
4
4
  export * from './figure/figure-source.js'
5
+ export * from './figure/figure-history.js'
5
6
 
6
7
  // Entities, resolvers
7
- import { entities as FigureEntities, resolvers as FigureResolvers } from './figure/index.js'
8
+ import {
9
+ entities as FigureEntities,
10
+ resolvers as FigureResolvers,
11
+ subscribers as FigureSubscribers
12
+ } from './figure/index.js'
8
13
 
9
14
  export const entities = [...FigureEntities]
10
- export const resolvers = [...FigureResolvers]
15
+
16
+ /* 판본 스냅샷을 뜨는 구독자. 셸이 이 이름으로 모아 TypeORM 에 등록한다(board-service 와 같다). */
17
+ export const subscribers = [...FigureSubscribers]
18
+
19
+ /*
20
+ * The shell reads `schema.resolverClasses` from every module — nothing else.
21
+ *
22
+ * shell/dist-server/schema.js orderedModuleNames.map(dep => loader(dep).schema)
23
+ *
24
+ * This module used to export the classes as a bare `resolvers` array, a name the shell never looks
25
+ * at. The table was migrated and the resolver classes were compiled, and still every query failed
26
+ * with `Cannot query field "figures" on type "Query"` — the field was not in the schema at all.
27
+ * board-service, ops-master and font-base all export the shape below.
28
+ */
29
+ export const schema = {
30
+ resolverClasses: [...FigureResolvers]
31
+ }