@things-factory/ops-master 10.1.246 → 10.1.248

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 (429) hide show
  1. package/package.json +5 -5
  2. package/dist-client/bootstrap.d.ts +0 -19
  3. package/dist-client/bootstrap.js +0 -66
  4. package/dist-client/bootstrap.js.map +0 -1
  5. package/dist-client/index.d.ts +0 -17
  6. package/dist-client/index.js +0 -21
  7. package/dist-client/index.js.map +0 -1
  8. package/dist-client/master-change-approval.d.ts +0 -14
  9. package/dist-client/master-change-approval.js +0 -36
  10. package/dist-client/master-change-approval.js.map +0 -1
  11. package/dist-client/master-change-policy-axes.d.ts +0 -37
  12. package/dist-client/master-change-policy-axes.js +0 -29
  13. package/dist-client/master-change-policy-axes.js.map +0 -1
  14. package/dist-client/master-change-policy-panel.d.ts +0 -59
  15. package/dist-client/master-change-policy-panel.js +0 -454
  16. package/dist-client/master-change-policy-panel.js.map +0 -1
  17. package/dist-client/master-change-providers.d.ts +0 -4
  18. package/dist-client/master-change-providers.js +0 -91
  19. package/dist-client/master-change-providers.js.map +0 -1
  20. package/dist-client/pages/master/applied-when-dialog.d.ts +0 -48
  21. package/dist-client/pages/master/applied-when-dialog.js +0 -137
  22. package/dist-client/pages/master/applied-when-dialog.js.map +0 -1
  23. package/dist-client/pages/master/assignment-fields.d.ts +0 -27
  24. package/dist-client/pages/master/assignment-fields.js +0 -62
  25. package/dist-client/pages/master/assignment-fields.js.map +0 -1
  26. package/dist-client/pages/master/equipment-class.d.ts +0 -12
  27. package/dist-client/pages/master/equipment-class.js +0 -42
  28. package/dist-client/pages/master/equipment-class.js.map +0 -1
  29. package/dist-client/pages/master/equipment.d.ts +0 -12
  30. package/dist-client/pages/master/equipment.js +0 -58
  31. package/dist-client/pages/master/equipment.js.map +0 -1
  32. package/dist-client/pages/master/grist-iso-duration.d.ts +0 -20
  33. package/dist-client/pages/master/grist-iso-duration.js +0 -70
  34. package/dist-client/pages/master/grist-iso-duration.js.map +0 -1
  35. package/dist-client/pages/master/grist-reference.d.ts +0 -91
  36. package/dist-client/pages/master/grist-reference.js +0 -419
  37. package/dist-client/pages/master/grist-reference.js.map +0 -1
  38. package/dist-client/pages/master/import-rows.d.ts +0 -35
  39. package/dist-client/pages/master/import-rows.js +0 -66
  40. package/dist-client/pages/master/import-rows.js.map +0 -1
  41. package/dist-client/pages/master/iso-duration.d.ts +0 -34
  42. package/dist-client/pages/master/iso-duration.js +0 -76
  43. package/dist-client/pages/master/iso-duration.js.map +0 -1
  44. package/dist-client/pages/master/master-options.d.ts +0 -40
  45. package/dist-client/pages/master/master-options.js +0 -54
  46. package/dist-client/pages/master/master-options.js.map +0 -1
  47. package/dist-client/pages/master/master-page-base.d.ts +0 -369
  48. package/dist-client/pages/master/master-page-base.js +0 -657
  49. package/dist-client/pages/master/master-page-base.js.map +0 -1
  50. package/dist-client/pages/master/material-class.d.ts +0 -12
  51. package/dist-client/pages/master/material-class.js +0 -42
  52. package/dist-client/pages/master/material-class.js.map +0 -1
  53. package/dist-client/pages/master/material-definition.d.ts +0 -5
  54. package/dist-client/pages/master/material-definition.js +0 -14
  55. package/dist-client/pages/master/material-definition.js.map +0 -1
  56. package/dist-client/pages/master/material-revision-fields.d.ts +0 -2
  57. package/dist-client/pages/master/material-revision-fields.js +0 -43
  58. package/dist-client/pages/master/material-revision-fields.js.map +0 -1
  59. package/dist-client/pages/master/operation-definition.d.ts +0 -12
  60. package/dist-client/pages/master/operation-definition.js +0 -49
  61. package/dist-client/pages/master/operation-definition.js.map +0 -1
  62. package/dist-client/pages/master/operational-location.d.ts +0 -84
  63. package/dist-client/pages/master/operational-location.js +0 -432
  64. package/dist-client/pages/master/operational-location.js.map +0 -1
  65. package/dist-client/pages/master/person.d.ts +0 -12
  66. package/dist-client/pages/master/person.js +0 -41
  67. package/dist-client/pages/master/person.js.map +0 -1
  68. package/dist-client/pages/master/personnel-class.d.ts +0 -12
  69. package/dist-client/pages/master/personnel-class.js +0 -43
  70. package/dist-client/pages/master/personnel-class.js.map +0 -1
  71. package/dist-client/pages/master/physical-asset-class.d.ts +0 -12
  72. package/dist-client/pages/master/physical-asset-class.js +0 -40
  73. package/dist-client/pages/master/physical-asset-class.js.map +0 -1
  74. package/dist-client/pages/master/physical-asset.d.ts +0 -12
  75. package/dist-client/pages/master/physical-asset.js +0 -41
  76. package/dist-client/pages/master/physical-asset.js.map +0 -1
  77. package/dist-client/pages/master/recipe-definition.d.ts +0 -5
  78. package/dist-client/pages/master/recipe-definition.js +0 -14
  79. package/dist-client/pages/master/recipe-definition.js.map +0 -1
  80. package/dist-client/pages/master/reference-targets.d.ts +0 -42
  81. package/dist-client/pages/master/reference-targets.js +0 -82
  82. package/dist-client/pages/master/reference-targets.js.map +0 -1
  83. package/dist-client/pages/master/revision-comparison.d.ts +0 -49
  84. package/dist-client/pages/master/revision-comparison.js +0 -560
  85. package/dist-client/pages/master/revision-comparison.js.map +0 -1
  86. package/dist-client/pages/master/revision-view.d.ts +0 -34
  87. package/dist-client/pages/master/revision-view.js +0 -145
  88. package/dist-client/pages/master/revision-view.js.map +0 -1
  89. package/dist-client/pages/master/revision-workspace.d.ts +0 -50
  90. package/dist-client/pages/master/revision-workspace.js +0 -763
  91. package/dist-client/pages/master/revision-workspace.js.map +0 -1
  92. package/dist-client/pages/master/route-definition.d.ts +0 -19
  93. package/dist-client/pages/master/route-definition.js +0 -40
  94. package/dist-client/pages/master/route-definition.js.map +0 -1
  95. package/dist-client/pages/master/stop-reason.d.ts +0 -12
  96. package/dist-client/pages/master/stop-reason.js +0 -48
  97. package/dist-client/pages/master/stop-reason.js.map +0 -1
  98. package/dist-client/pages/master/test-specification.d.ts +0 -5
  99. package/dist-client/pages/master/test-specification.js +0 -14
  100. package/dist-client/pages/master/test-specification.js.map +0 -1
  101. package/dist-client/pages/master-axes.d.ts +0 -24
  102. package/dist-client/pages/master-axes.js +0 -39
  103. package/dist-client/pages/master-axes.js.map +0 -1
  104. package/dist-client/route.d.ts +0 -1
  105. package/dist-client/route.js +0 -81
  106. package/dist-client/route.js.map +0 -1
  107. package/dist-client/tsconfig.tsbuildinfo +0 -1
  108. package/dist-server/index.d.ts +0 -1
  109. package/dist-server/index.js +0 -19
  110. package/dist-server/index.js.map +0 -1
  111. package/dist-server/service/ai-entry/master-entry-rules.d.ts +0 -175
  112. package/dist-server/service/ai-entry/master-entry-rules.js +0 -302
  113. package/dist-server/service/ai-entry/master-entry-rules.js.map +0 -1
  114. package/dist-server/service/ai-entry/master-entry-targets.d.ts +0 -23
  115. package/dist-server/service/ai-entry/master-entry-targets.js +0 -293
  116. package/dist-server/service/ai-entry/master-entry-targets.js.map +0 -1
  117. package/dist-server/service/approval-route.d.ts +0 -37
  118. package/dist-server/service/approval-route.js +0 -34
  119. package/dist-server/service/approval-route.js.map +0 -1
  120. package/dist-server/service/asset/asset-lifecycle.d.ts +0 -106
  121. package/dist-server/service/asset/asset-lifecycle.js +0 -126
  122. package/dist-server/service/asset/asset-lifecycle.js.map +0 -1
  123. package/dist-server/service/asset/asset-master-resolver.d.ts +0 -53
  124. package/dist-server/service/asset/asset-master-resolver.js +0 -185
  125. package/dist-server/service/asset/asset-master-resolver.js.map +0 -1
  126. package/dist-server/service/asset/asset-master.d.ts +0 -21
  127. package/dist-server/service/asset/asset-master.js +0 -25
  128. package/dist-server/service/asset/asset-master.js.map +0 -1
  129. package/dist-server/service/asset/asset-query.d.ts +0 -16
  130. package/dist-server/service/asset/asset-query.js +0 -72
  131. package/dist-server/service/asset/asset-query.js.map +0 -1
  132. package/dist-server/service/asset/index.d.ts +0 -6
  133. package/dist-server/service/asset/index.js +0 -10
  134. package/dist-server/service/asset/index.js.map +0 -1
  135. package/dist-server/service/asset/physical-asset-class.d.ts +0 -34
  136. package/dist-server/service/asset/physical-asset-class.js +0 -104
  137. package/dist-server/service/asset/physical-asset-class.js.map +0 -1
  138. package/dist-server/service/asset/physical-asset.d.ts +0 -66
  139. package/dist-server/service/asset/physical-asset.js +0 -123
  140. package/dist-server/service/asset/physical-asset.js.map +0 -1
  141. package/dist-server/service/assignment/applied-when.d.ts +0 -24
  142. package/dist-server/service/assignment/applied-when.js +0 -16
  143. package/dist-server/service/assignment/applied-when.js.map +0 -1
  144. package/dist-server/service/assignment/assignment-history.d.ts +0 -92
  145. package/dist-server/service/assignment/assignment-history.js +0 -289
  146. package/dist-server/service/assignment/assignment-history.js.map +0 -1
  147. package/dist-server/service/assignment/assignment-write.d.ts +0 -42
  148. package/dist-server/service/assignment/assignment-write.js +0 -101
  149. package/dist-server/service/assignment/assignment-write.js.map +0 -1
  150. package/dist-server/service/assignment/master-value-claim.d.ts +0 -135
  151. package/dist-server/service/assignment/master-value-claim.js +0 -174
  152. package/dist-server/service/assignment/master-value-claim.js.map +0 -1
  153. package/dist-server/service/equipment/equipment-class.d.ts +0 -34
  154. package/dist-server/service/equipment/equipment-class.js +0 -104
  155. package/dist-server/service/equipment/equipment-class.js.map +0 -1
  156. package/dist-server/service/equipment/equipment-master-resolver.d.ts +0 -77
  157. package/dist-server/service/equipment/equipment-master-resolver.js +0 -266
  158. package/dist-server/service/equipment/equipment-master-resolver.js.map +0 -1
  159. package/dist-server/service/equipment/equipment-master.d.ts +0 -30
  160. package/dist-server/service/equipment/equipment-master.js +0 -53
  161. package/dist-server/service/equipment/equipment-master.js.map +0 -1
  162. package/dist-server/service/equipment/equipment-query.d.ts +0 -16
  163. package/dist-server/service/equipment/equipment-query.js +0 -72
  164. package/dist-server/service/equipment/equipment-query.js.map +0 -1
  165. package/dist-server/service/equipment/equipment.d.ts +0 -71
  166. package/dist-server/service/equipment/equipment.js +0 -138
  167. package/dist-server/service/equipment/equipment.js.map +0 -1
  168. package/dist-server/service/equipment/index.d.ts +0 -8
  169. package/dist-server/service/equipment/index.js +0 -12
  170. package/dist-server/service/equipment/index.js.map +0 -1
  171. package/dist-server/service/equipment/state-period-rules.d.ts +0 -95
  172. package/dist-server/service/equipment/state-period-rules.js +0 -122
  173. package/dist-server/service/equipment/state-period-rules.js.map +0 -1
  174. package/dist-server/service/equipment/stop-reason-query.d.ts +0 -11
  175. package/dist-server/service/equipment/stop-reason-query.js +0 -39
  176. package/dist-server/service/equipment/stop-reason-query.js.map +0 -1
  177. package/dist-server/service/equipment/stop-reason.d.ts +0 -58
  178. package/dist-server/service/equipment/stop-reason.js +0 -114
  179. package/dist-server/service/equipment/stop-reason.js.map +0 -1
  180. package/dist-server/service/index.d.ts +0 -82
  181. package/dist-server/service/index.js +0 -145
  182. package/dist-server/service/index.js.map +0 -1
  183. package/dist-server/service/location/index.d.ts +0 -5
  184. package/dist-server/service/location/index.js +0 -9
  185. package/dist-server/service/location/index.js.map +0 -1
  186. package/dist-server/service/location/location-master-resolver.d.ts +0 -60
  187. package/dist-server/service/location/location-master-resolver.js +0 -313
  188. package/dist-server/service/location/location-master-resolver.js.map +0 -1
  189. package/dist-server/service/location/location-master.d.ts +0 -26
  190. package/dist-server/service/location/location-master.js +0 -28
  191. package/dist-server/service/location/location-master.js.map +0 -1
  192. package/dist-server/service/location/location-query.d.ts +0 -15
  193. package/dist-server/service/location/location-query.js +0 -56
  194. package/dist-server/service/location/location-query.js.map +0 -1
  195. package/dist-server/service/location/operational-location.d.ts +0 -116
  196. package/dist-server/service/location/operational-location.js +0 -157
  197. package/dist-server/service/location/operational-location.js.map +0 -1
  198. package/dist-server/service/master-axis.d.ts +0 -40
  199. package/dist-server/service/master-axis.js +0 -57
  200. package/dist-server/service/master-axis.js.map +0 -1
  201. package/dist-server/service/master-change-approval/approval-input.d.ts +0 -17
  202. package/dist-server/service/master-change-approval/approval-input.js +0 -35
  203. package/dist-server/service/master-change-approval/approval-input.js.map +0 -1
  204. package/dist-server/service/master-change-approval/builtin-axes.d.ts +0 -4
  205. package/dist-server/service/master-change-approval/builtin-axes.js +0 -96
  206. package/dist-server/service/master-change-approval/builtin-axes.js.map +0 -1
  207. package/dist-server/service/master-change-approval/index.d.ts +0 -14
  208. package/dist-server/service/master-change-approval/index.js +0 -37
  209. package/dist-server/service/master-change-approval/index.js.map +0 -1
  210. package/dist-server/service/master-change-approval/master-change-axis.d.ts +0 -54
  211. package/dist-server/service/master-change-approval/master-change-axis.js +0 -17
  212. package/dist-server/service/master-change-approval/master-change-axis.js.map +0 -1
  213. package/dist-server/service/master-change-approval/master-change-flow.d.ts +0 -65
  214. package/dist-server/service/master-change-approval/master-change-flow.js +0 -125
  215. package/dist-server/service/master-change-approval/master-change-flow.js.map +0 -1
  216. package/dist-server/service/master-change-approval/master-change-resolver.d.ts +0 -18
  217. package/dist-server/service/master-change-approval/master-change-resolver.js +0 -58
  218. package/dist-server/service/master-change-approval/master-change-resolver.js.map +0 -1
  219. package/dist-server/service/master-change-policy.d.ts +0 -122
  220. package/dist-server/service/master-change-policy.js +0 -304
  221. package/dist-server/service/master-change-policy.js.map +0 -1
  222. package/dist-server/service/master-conformance-resolver.d.ts +0 -34
  223. package/dist-server/service/master-conformance-resolver.js +0 -153
  224. package/dist-server/service/master-conformance-resolver.js.map +0 -1
  225. package/dist-server/service/master-conformance.d.ts +0 -80
  226. package/dist-server/service/master-conformance.js +0 -266
  227. package/dist-server/service/master-conformance.js.map +0 -1
  228. package/dist-server/service/master-crud.d.ts +0 -55
  229. package/dist-server/service/master-crud.js +0 -93
  230. package/dist-server/service/master-crud.js.map +0 -1
  231. package/dist-server/service/master-list.d.ts +0 -12
  232. package/dist-server/service/master-list.js +0 -30
  233. package/dist-server/service/master-list.js.map +0 -1
  234. package/dist-server/service/master-page-query.d.ts +0 -33
  235. package/dist-server/service/master-page-query.js +0 -55
  236. package/dist-server/service/master-page-query.js.map +0 -1
  237. package/dist-server/service/master-page.d.ts +0 -85
  238. package/dist-server/service/master-page.js +0 -104
  239. package/dist-server/service/master-page.js.map +0 -1
  240. package/dist-server/service/material/index.d.ts +0 -7
  241. package/dist-server/service/material/index.js +0 -12
  242. package/dist-server/service/material/index.js.map +0 -1
  243. package/dist-server/service/material/material-axis-status.d.ts +0 -8
  244. package/dist-server/service/material/material-axis-status.js +0 -19
  245. package/dist-server/service/material/material-axis-status.js.map +0 -1
  246. package/dist-server/service/material/material-class.d.ts +0 -34
  247. package/dist-server/service/material/material-class.js +0 -104
  248. package/dist-server/service/material/material-class.js.map +0 -1
  249. package/dist-server/service/material/material-definition.d.ts +0 -45
  250. package/dist-server/service/material/material-definition.js +0 -125
  251. package/dist-server/service/material/material-definition.js.map +0 -1
  252. package/dist-server/service/material/material-effective-list.d.ts +0 -39
  253. package/dist-server/service/material/material-effective-list.js +0 -54
  254. package/dist-server/service/material/material-effective-list.js.map +0 -1
  255. package/dist-server/service/material/material-master-resolver.d.ts +0 -106
  256. package/dist-server/service/material/material-master-resolver.js +0 -351
  257. package/dist-server/service/material/material-master-resolver.js.map +0 -1
  258. package/dist-server/service/material/material-master.d.ts +0 -9
  259. package/dist-server/service/material/material-master.js +0 -24
  260. package/dist-server/service/material/material-master.js.map +0 -1
  261. package/dist-server/service/material/material-query.d.ts +0 -16
  262. package/dist-server/service/material/material-query.js +0 -79
  263. package/dist-server/service/material/material-query.js.map +0 -1
  264. package/dist-server/service/material/material-revision-content.d.ts +0 -10
  265. package/dist-server/service/material/material-revision-content.js +0 -92
  266. package/dist-server/service/material/material-revision-content.js.map +0 -1
  267. package/dist-server/service/material/material-revision-resolver.d.ts +0 -60
  268. package/dist-server/service/material/material-revision-resolver.js +0 -96
  269. package/dist-server/service/material/material-revision-resolver.js.map +0 -1
  270. package/dist-server/service/material/material-revision-service.d.ts +0 -179
  271. package/dist-server/service/material/material-revision-service.js +0 -687
  272. package/dist-server/service/material/material-revision-service.js.map +0 -1
  273. package/dist-server/service/material/material-revision.d.ts +0 -86
  274. package/dist-server/service/material/material-revision.js +0 -339
  275. package/dist-server/service/material/material-revision.js.map +0 -1
  276. package/dist-server/service/material/recipe-index.d.ts +0 -23
  277. package/dist-server/service/material/recipe-index.js +0 -44
  278. package/dist-server/service/material/recipe-index.js.map +0 -1
  279. package/dist-server/service/operation/index.d.ts +0 -6
  280. package/dist-server/service/operation/index.js +0 -10
  281. package/dist-server/service/operation/index.js.map +0 -1
  282. package/dist-server/service/operation/operation-definition.d.ts +0 -52
  283. package/dist-server/service/operation/operation-definition.js +0 -143
  284. package/dist-server/service/operation/operation-definition.js.map +0 -1
  285. package/dist-server/service/operation/operation-master-resolver.d.ts +0 -52
  286. package/dist-server/service/operation/operation-master-resolver.js +0 -187
  287. package/dist-server/service/operation/operation-master-resolver.js.map +0 -1
  288. package/dist-server/service/operation/operation-master.d.ts +0 -21
  289. package/dist-server/service/operation/operation-master.js +0 -28
  290. package/dist-server/service/operation/operation-master.js.map +0 -1
  291. package/dist-server/service/operation/operation-query.d.ts +0 -15
  292. package/dist-server/service/operation/operation-query.js +0 -56
  293. package/dist-server/service/operation/operation-query.js.map +0 -1
  294. package/dist-server/service/operation/operation-readiness-resolver.d.ts +0 -39
  295. package/dist-server/service/operation/operation-readiness-resolver.js +0 -111
  296. package/dist-server/service/operation/operation-readiness-resolver.js.map +0 -1
  297. package/dist-server/service/operation/operation-readiness.d.ts +0 -34
  298. package/dist-server/service/operation/operation-readiness.js +0 -133
  299. package/dist-server/service/operation/operation-readiness.js.map +0 -1
  300. package/dist-server/service/personnel/index.d.ts +0 -6
  301. package/dist-server/service/personnel/index.js +0 -10
  302. package/dist-server/service/personnel/index.js.map +0 -1
  303. package/dist-server/service/personnel/person.d.ts +0 -51
  304. package/dist-server/service/personnel/person.js +0 -119
  305. package/dist-server/service/personnel/person.js.map +0 -1
  306. package/dist-server/service/personnel/personnel-class-readiness.d.ts +0 -22
  307. package/dist-server/service/personnel/personnel-class-readiness.js +0 -98
  308. package/dist-server/service/personnel/personnel-class-readiness.js.map +0 -1
  309. package/dist-server/service/personnel/personnel-class.d.ts +0 -54
  310. package/dist-server/service/personnel/personnel-class.js +0 -114
  311. package/dist-server/service/personnel/personnel-class.js.map +0 -1
  312. package/dist-server/service/personnel/personnel-master-resolver.d.ts +0 -53
  313. package/dist-server/service/personnel/personnel-master-resolver.js +0 -187
  314. package/dist-server/service/personnel/personnel-master-resolver.js.map +0 -1
  315. package/dist-server/service/personnel/personnel-master.d.ts +0 -39
  316. package/dist-server/service/personnel/personnel-master.js +0 -34
  317. package/dist-server/service/personnel/personnel-master.js.map +0 -1
  318. package/dist-server/service/personnel/personnel-query.d.ts +0 -29
  319. package/dist-server/service/personnel/personnel-query.js +0 -79
  320. package/dist-server/service/personnel/personnel-query.js.map +0 -1
  321. package/dist-server/service/personnel/qualification.d.ts +0 -104
  322. package/dist-server/service/personnel/qualification.js +0 -147
  323. package/dist-server/service/personnel/qualification.js.map +0 -1
  324. package/dist-server/service/quality/index.d.ts +0 -4
  325. package/dist-server/service/quality/index.js +0 -8
  326. package/dist-server/service/quality/index.js.map +0 -1
  327. package/dist-server/service/quality/nonconformance-cause-resolver.d.ts +0 -12
  328. package/dist-server/service/quality/nonconformance-cause-resolver.js +0 -60
  329. package/dist-server/service/quality/nonconformance-cause-resolver.js.map +0 -1
  330. package/dist-server/service/quality/nonconformance-cause.d.ts +0 -20
  331. package/dist-server/service/quality/nonconformance-cause.js +0 -90
  332. package/dist-server/service/quality/nonconformance-cause.js.map +0 -1
  333. package/dist-server/service/recipe/index.d.ts +0 -10
  334. package/dist-server/service/recipe/index.js +0 -16
  335. package/dist-server/service/recipe/index.js.map +0 -1
  336. package/dist-server/service/recipe/recipe-definition.d.ts +0 -75
  337. package/dist-server/service/recipe/recipe-definition.js +0 -143
  338. package/dist-server/service/recipe/recipe-definition.js.map +0 -1
  339. package/dist-server/service/recipe/recipe-effective-list.d.ts +0 -49
  340. package/dist-server/service/recipe/recipe-effective-list.js +0 -96
  341. package/dist-server/service/recipe/recipe-effective-list.js.map +0 -1
  342. package/dist-server/service/recipe/recipe-master-resolver.d.ts +0 -28
  343. package/dist-server/service/recipe/recipe-master-resolver.js +0 -128
  344. package/dist-server/service/recipe/recipe-master-resolver.js.map +0 -1
  345. package/dist-server/service/recipe/recipe-master.d.ts +0 -37
  346. package/dist-server/service/recipe/recipe-master.js +0 -47
  347. package/dist-server/service/recipe/recipe-master.js.map +0 -1
  348. package/dist-server/service/recipe/recipe-query.d.ts +0 -21
  349. package/dist-server/service/recipe/recipe-query.js +0 -82
  350. package/dist-server/service/recipe/recipe-query.js.map +0 -1
  351. package/dist-server/service/recipe/recipe-revision-content.d.ts +0 -32
  352. package/dist-server/service/recipe/recipe-revision-content.js +0 -70
  353. package/dist-server/service/recipe/recipe-revision-content.js.map +0 -1
  354. package/dist-server/service/recipe/recipe-revision-line.d.ts +0 -30
  355. package/dist-server/service/recipe/recipe-revision-line.js +0 -95
  356. package/dist-server/service/recipe/recipe-revision-line.js.map +0 -1
  357. package/dist-server/service/recipe/recipe-revision-resolver.d.ts +0 -65
  358. package/dist-server/service/recipe/recipe-revision-resolver.js +0 -96
  359. package/dist-server/service/recipe/recipe-revision-resolver.js.map +0 -1
  360. package/dist-server/service/recipe/recipe-revision-service.d.ts +0 -183
  361. package/dist-server/service/recipe/recipe-revision-service.js +0 -754
  362. package/dist-server/service/recipe/recipe-revision-service.js.map +0 -1
  363. package/dist-server/service/recipe/recipe-revision.d.ts +0 -102
  364. package/dist-server/service/recipe/recipe-revision.js +0 -373
  365. package/dist-server/service/recipe/recipe-revision.js.map +0 -1
  366. package/dist-server/service/recipe/route-definition.d.ts +0 -51
  367. package/dist-server/service/recipe/route-definition.js +0 -114
  368. package/dist-server/service/recipe/route-definition.js.map +0 -1
  369. package/dist-server/service/resource/class-lineage.d.ts +0 -46
  370. package/dist-server/service/resource/class-lineage.js +0 -80
  371. package/dist-server/service/resource/class-lineage.js.map +0 -1
  372. package/dist-server/service/resource/class-members.d.ts +0 -36
  373. package/dist-server/service/resource/class-members.js +0 -59
  374. package/dist-server/service/resource/class-members.js.map +0 -1
  375. package/dist-server/service/resource/referrers.d.ts +0 -54
  376. package/dist-server/service/resource/referrers.js +0 -99
  377. package/dist-server/service/resource/referrers.js.map +0 -1
  378. package/dist-server/service/resource/resource-class.d.ts +0 -25
  379. package/dist-server/service/resource/resource-class.js +0 -29
  380. package/dist-server/service/resource/resource-class.js.map +0 -1
  381. package/dist-server/service/revision-baseline.d.ts +0 -71
  382. package/dist-server/service/revision-baseline.js +0 -87
  383. package/dist-server/service/revision-baseline.js.map +0 -1
  384. package/dist-server/service/row-lock.d.ts +0 -22
  385. package/dist-server/service/row-lock.js +0 -31
  386. package/dist-server/service/row-lock.js.map +0 -1
  387. package/dist-server/service/status/axis-stamp.d.ts +0 -16
  388. package/dist-server/service/status/axis-stamp.js +0 -22
  389. package/dist-server/service/status/axis-stamp.js.map +0 -1
  390. package/dist-server/service/status/index.d.ts +0 -3
  391. package/dist-server/service/status/index.js +0 -7
  392. package/dist-server/service/status/index.js.map +0 -1
  393. package/dist-server/service/status/master-status.d.ts +0 -38
  394. package/dist-server/service/status/master-status.js +0 -129
  395. package/dist-server/service/status/master-status.js.map +0 -1
  396. package/dist-server/service/test-spec/criteria-check.d.ts +0 -53
  397. package/dist-server/service/test-spec/criteria-check.js +0 -142
  398. package/dist-server/service/test-spec/criteria-check.js.map +0 -1
  399. package/dist-server/service/test-spec/criteria-rows.d.ts +0 -89
  400. package/dist-server/service/test-spec/criteria-rows.js +0 -139
  401. package/dist-server/service/test-spec/criteria-rows.js.map +0 -1
  402. package/dist-server/service/test-spec/index.d.ts +0 -6
  403. package/dist-server/service/test-spec/index.js +0 -11
  404. package/dist-server/service/test-spec/index.js.map +0 -1
  405. package/dist-server/service/test-spec/test-spec-effective-list.d.ts +0 -34
  406. package/dist-server/service/test-spec/test-spec-effective-list.js +0 -42
  407. package/dist-server/service/test-spec/test-spec-effective-list.js.map +0 -1
  408. package/dist-server/service/test-spec/test-spec-master-resolver.d.ts +0 -44
  409. package/dist-server/service/test-spec/test-spec-master-resolver.js +0 -144
  410. package/dist-server/service/test-spec/test-spec-master-resolver.js.map +0 -1
  411. package/dist-server/service/test-spec/test-spec-master.d.ts +0 -6
  412. package/dist-server/service/test-spec/test-spec-master.js +0 -18
  413. package/dist-server/service/test-spec/test-spec-master.js.map +0 -1
  414. package/dist-server/service/test-spec/test-spec-query.d.ts +0 -15
  415. package/dist-server/service/test-spec/test-spec-query.js +0 -61
  416. package/dist-server/service/test-spec/test-spec-query.js.map +0 -1
  417. package/dist-server/service/test-spec/test-spec-revision-resolver.d.ts +0 -59
  418. package/dist-server/service/test-spec/test-spec-revision-resolver.js +0 -96
  419. package/dist-server/service/test-spec/test-spec-revision-resolver.js.map +0 -1
  420. package/dist-server/service/test-spec/test-spec-revision-service.d.ts +0 -178
  421. package/dist-server/service/test-spec/test-spec-revision-service.js +0 -685
  422. package/dist-server/service/test-spec/test-spec-revision-service.js.map +0 -1
  423. package/dist-server/service/test-spec/test-spec-revision.d.ts +0 -86
  424. package/dist-server/service/test-spec/test-spec-revision.js +0 -334
  425. package/dist-server/service/test-spec/test-spec-revision.js.map +0 -1
  426. package/dist-server/service/test-spec/test-specification.d.ts +0 -47
  427. package/dist-server/service/test-spec/test-specification.js +0 -119
  428. package/dist-server/service/test-spec/test-specification.js.map +0 -1
  429. package/dist-server/tsconfig.tsbuildinfo +0 -1
@@ -1,135 +0,0 @@
1
- import { Domain } from '@things-factory/shell';
2
- import { User } from '@things-factory/auth-base';
3
- /**
4
- * **언제부터 그러했고, 언제 그렇게 적었나** — 배정과 선언의 주장 한 줄.
5
- *
6
- * ═══════════════════════════════════════════════════════════════════════════
7
- * ── 무엇이 없었나 ──────────────────────────────────────────────────────────
8
- * 가동률의 분모는 **설비가 어느 자리에 있었나 · 그 자리가 어느 근무조로 돌았나 · 그 자리가 어디에
9
- * 속했나**로 정해진다. 셋 다 칸 하나였다. 그래서 설비를 옮기면 **지난달 가동률이 바뀌었고**, 아무도
10
- * 아무것도 정정하지 않았는데 숫자가 달라진 까닭을 말할 수 없었다.
11
- *
12
- * ── 시각이 둘인 까닭 ───────────────────────────────────────────────────────
13
- * 「언제부터 그렇게 하기로 했나」와 「언제 그렇게 적었나」는 다르다.
14
- *
15
- * ```
16
- * validFrom · validTo 적용 시각 — 업무의 시간. 분모를 나누는 경계가 이것이다
17
- * recordedAt 기록 시각 — 우리가 그것을 안 시각
18
- * supersededAt 이 주장이 물러난 시각. 덮어쓰지 않고 물러나게 한다
19
- * ```
20
- *
21
- * 사흘 전에 옮긴 것을 오늘 적으면 둘이 갈라진다. **이틀 전 기록시점으로 물으면 옛 자리가 나와야
22
- * 한다** — 그때 우리가 알던 것이 그것이기 때문이다(ADR-0088 결정 2 ③).
23
- *
24
- * ── 정정은 덮지 않고 조각을 남긴다 ─────────────────────────────────────────
25
- * ```
26
- * 지금까지 A [1일, ∞)
27
- * 오늘 정정 「10~15일은 B 였다」
28
- * 최신 A [1일, 10일) · B [10일, 15일) · A [15일, ∞)
29
- * 정정 전 시점 A [1일, ∞) ← 조각은 그때 아직 기록되지 않았다
30
- * ```
31
- *
32
- * ── 이 표가 기준이 되는 원본이고, 마스터 행은 투영이다 ─────────────────────
33
- * 미래 주장은 마스터 행을 **안 건드린다.** 다음 달 이동을 지금 적었다고 다른 제품이 오늘부터 새
34
- * 자리를 읽으면 안 된다. 도래하면 투영이 행을 맞춘다(§`projectDueClaims`).
35
- *
36
- * ── 이름이 아니라 식별자로 가리킨다 ────────────────────────────────────────
37
- * `value.ref` 가 안정된 식별자이고 `value.label` 은 **그때 뭐라고 불렀나**다. 이름을 담으면 이름을
38
- * 바꾼 날 과거 관계가 끊긴다(적용 가이드 §0-1 의 그 부류).
39
- * ═══════════════════════════════════════════════════════════════════════════
40
- */
41
- export declare class MasterValueClaim {
42
- readonly id: string;
43
- domain?: Domain;
44
- domainId?: string;
45
- /** 어느 축의 무엇인가 — `equipment` · `operationalLocation`. */
46
- axis: string;
47
- /** 그 축의 어느 행인가. UUID 다. */
48
- rowId: string;
49
- /** 어느 칸인가 — 선언한 셋만 온다(§`CLAIMED_FIELDS`). */
50
- field: string;
51
- /**
52
- * 그때의 값.
53
- *
54
- * ```
55
- * { ref, label } 관계를 가리키는 칸 — 식별자와 그때의 표시값
56
- * { names: [...] } 이름 목록을 드는 칸 — 근무조 선언
57
- * null **선언 없음.** 「그때부터 부모가 없다」는 정상 값이고 결측이 아니다
58
- * ```
59
- */
60
- value?: Record<string, unknown> | null;
61
- /**
62
- * 언제부터 그러했나 — 업무의 시간.
63
- *
64
- * **비어 있으면 「그때까지 쭉」이다.** 어느 칸이 처음 바뀔 때, 바뀌기 전 값도 같이 적는데 그 값이
65
- * 언제부터였는지는 아무도 안 적었다. 1970 년 같은 시각을 넣으면 적은 적 없는 것을 적은 것이 되므로
66
- * 비워 둔다(2026-09-23).
67
- */
68
- validFrom?: Date;
69
- /** 언제까지. 비면 아직 끝나지 않았다. */
70
- validTo?: Date;
71
- /** 언제 그렇게 적었나. 서버가 붙인다 — 사람이 넣지 않는다. */
72
- recordedAt: Date;
73
- /** 언제 물러났나. 비면 지금도 서 있는 주장이다. */
74
- supersededAt?: Date;
75
- /**
76
- * 왜 이 주장이 섰나 — 읽는 사람이 「지연 기록인가 정정인가」를 알아야 한다.
77
- *
78
- * ```
79
- * initial 도입 시각에 확인된 초기 상태
80
- * change 바꾼다는 선언
81
- * correction 이미 적은 것을 고친다
82
- * remainder 정정이 남긴 앞뒤 조각
83
- * ```
84
- */
85
- reason: string;
86
- recorder?: User;
87
- recorderId?: string;
88
- createdAt?: Date;
89
- }
90
- /**
91
- * **이력을 받는 칸은 여기 적힌 것뿐이다.**
92
- *
93
- * 임의의 축·칸을 받는 범용 쓰기 문을 열지 않는다(설계 점검 2026-09-22). 칸마다 값의 모양과 검증이
94
- * 다르고, 아무 칸이나 받는 문은 그 검증을 못 한다.
95
- *
96
- * ── 셋에서 넷이 됐다 (2026-09-23) ─────────────────────────────────────────
97
- * 앞의 셋은 **배정**이다 — 무엇이 어디에 속하나. 넷째는 아니다. 공정의 표준시간은 값 자체이고,
98
- * 실적의 성능률이 그것을 나눈다. 지금은 **오늘 마스터를 다시 읽어서 지난달 성능이 움직인다**
99
- * (`operation-effectivity-db.test.cjs` 가 그 거동을 적어 두고 있다).
100
- *
101
- * 그래서 이 표의 이름이 「배정」이 아니라 「마스터 값의 주장」이다. 기전은 같다 — 두 시각, 정정은
102
- * 물리고 앞뒤를 다시 주장, 주장이 없으면 한 번도 안 바뀐 것.
103
- */
104
- export declare const CLAIMED_FIELDS: ({
105
- axis: string;
106
- field: string;
107
- kind: "relation";
108
- target: string;
109
- } | {
110
- axis: string;
111
- field: string;
112
- kind: "names";
113
- target?: undefined;
114
- } | {
115
- axis: string;
116
- field: string;
117
- kind: "literal";
118
- target?: undefined;
119
- })[];
120
- export declare function claimedField(axis: string, field: string): {
121
- axis: string;
122
- field: string;
123
- kind: "relation";
124
- target: string;
125
- } | {
126
- axis: string;
127
- field: string;
128
- kind: "names";
129
- target?: undefined;
130
- } | {
131
- axis: string;
132
- field: string;
133
- kind: "literal";
134
- target?: undefined;
135
- };
@@ -1,174 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CLAIMED_FIELDS = exports.MasterValueClaim = void 0;
4
- exports.claimedField = claimedField;
5
- const tslib_1 = require("tslib");
6
- const typeorm_1 = require("typeorm");
7
- const type_graphql_1 = require("type-graphql");
8
- const shell_1 = require("@things-factory/shell");
9
- const auth_base_1 = require("@things-factory/auth-base");
10
- /**
11
- * **언제부터 그러했고, 언제 그렇게 적었나** — 배정과 선언의 주장 한 줄.
12
- *
13
- * ═══════════════════════════════════════════════════════════════════════════
14
- * ── 무엇이 없었나 ──────────────────────────────────────────────────────────
15
- * 가동률의 분모는 **설비가 어느 자리에 있었나 · 그 자리가 어느 근무조로 돌았나 · 그 자리가 어디에
16
- * 속했나**로 정해진다. 셋 다 칸 하나였다. 그래서 설비를 옮기면 **지난달 가동률이 바뀌었고**, 아무도
17
- * 아무것도 정정하지 않았는데 숫자가 달라진 까닭을 말할 수 없었다.
18
- *
19
- * ── 시각이 둘인 까닭 ───────────────────────────────────────────────────────
20
- * 「언제부터 그렇게 하기로 했나」와 「언제 그렇게 적었나」는 다르다.
21
- *
22
- * ```
23
- * validFrom · validTo 적용 시각 — 업무의 시간. 분모를 나누는 경계가 이것이다
24
- * recordedAt 기록 시각 — 우리가 그것을 안 시각
25
- * supersededAt 이 주장이 물러난 시각. 덮어쓰지 않고 물러나게 한다
26
- * ```
27
- *
28
- * 사흘 전에 옮긴 것을 오늘 적으면 둘이 갈라진다. **이틀 전 기록시점으로 물으면 옛 자리가 나와야
29
- * 한다** — 그때 우리가 알던 것이 그것이기 때문이다(ADR-0088 결정 2 ③).
30
- *
31
- * ── 정정은 덮지 않고 조각을 남긴다 ─────────────────────────────────────────
32
- * ```
33
- * 지금까지 A [1일, ∞)
34
- * 오늘 정정 「10~15일은 B 였다」
35
- * 최신 A [1일, 10일) · B [10일, 15일) · A [15일, ∞)
36
- * 정정 전 시점 A [1일, ∞) ← 조각은 그때 아직 기록되지 않았다
37
- * ```
38
- *
39
- * ── 이 표가 기준이 되는 원본이고, 마스터 행은 투영이다 ─────────────────────
40
- * 미래 주장은 마스터 행을 **안 건드린다.** 다음 달 이동을 지금 적었다고 다른 제품이 오늘부터 새
41
- * 자리를 읽으면 안 된다. 도래하면 투영이 행을 맞춘다(§`projectDueClaims`).
42
- *
43
- * ── 이름이 아니라 식별자로 가리킨다 ────────────────────────────────────────
44
- * `value.ref` 가 안정된 식별자이고 `value.label` 은 **그때 뭐라고 불렀나**다. 이름을 담으면 이름을
45
- * 바꾼 날 과거 관계가 끊긴다(적용 가이드 §0-1 의 그 부류).
46
- * ═══════════════════════════════════════════════════════════════════════════
47
- */
48
- let MasterValueClaim = class MasterValueClaim {
49
- };
50
- exports.MasterValueClaim = MasterValueClaim;
51
- tslib_1.__decorate([
52
- (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
53
- (0, type_graphql_1.Field)(type => type_graphql_1.ID),
54
- tslib_1.__metadata("design:type", String)
55
- ], MasterValueClaim.prototype, "id", void 0);
56
- tslib_1.__decorate([
57
- (0, typeorm_1.ManyToOne)(type => shell_1.Domain),
58
- (0, type_graphql_1.Field)(type => shell_1.Domain),
59
- tslib_1.__metadata("design:type", shell_1.Domain)
60
- ], MasterValueClaim.prototype, "domain", void 0);
61
- tslib_1.__decorate([
62
- (0, typeorm_1.RelationId)((claim) => claim.domain),
63
- tslib_1.__metadata("design:type", String)
64
- ], MasterValueClaim.prototype, "domainId", void 0);
65
- tslib_1.__decorate([
66
- (0, typeorm_1.Column)(),
67
- (0, type_graphql_1.Field)(),
68
- tslib_1.__metadata("design:type", String)
69
- ], MasterValueClaim.prototype, "axis", void 0);
70
- tslib_1.__decorate([
71
- (0, typeorm_1.Column)(),
72
- (0, type_graphql_1.Field)(),
73
- tslib_1.__metadata("design:type", String)
74
- ], MasterValueClaim.prototype, "rowId", void 0);
75
- tslib_1.__decorate([
76
- (0, typeorm_1.Column)(),
77
- (0, type_graphql_1.Field)(),
78
- tslib_1.__metadata("design:type", String)
79
- ], MasterValueClaim.prototype, "field", void 0);
80
- tslib_1.__decorate([
81
- (0, typeorm_1.Column)({ type: 'simple-json', nullable: true }),
82
- (0, type_graphql_1.Field)(type => shell_1.ScalarObject, { nullable: true }),
83
- tslib_1.__metadata("design:type", Object)
84
- ], MasterValueClaim.prototype, "value", void 0);
85
- tslib_1.__decorate([
86
- (0, typeorm_1.Column)({ nullable: true }),
87
- (0, type_graphql_1.Field)({ nullable: true }),
88
- tslib_1.__metadata("design:type", Date
89
- /** 언제까지. 비면 아직 끝나지 않았다. */
90
- )
91
- ], MasterValueClaim.prototype, "validFrom", void 0);
92
- tslib_1.__decorate([
93
- (0, typeorm_1.Column)({ nullable: true }),
94
- (0, type_graphql_1.Field)({ nullable: true }),
95
- tslib_1.__metadata("design:type", Date
96
- /** 언제 그렇게 적었나. 서버가 붙인다 — 사람이 넣지 않는다. */
97
- )
98
- ], MasterValueClaim.prototype, "validTo", void 0);
99
- tslib_1.__decorate([
100
- (0, typeorm_1.Column)(),
101
- (0, type_graphql_1.Field)(),
102
- tslib_1.__metadata("design:type", Date
103
- /** 언제 물러났나. 비면 지금도 서 있는 주장이다. */
104
- )
105
- ], MasterValueClaim.prototype, "recordedAt", void 0);
106
- tslib_1.__decorate([
107
- (0, typeorm_1.Column)({ nullable: true }),
108
- (0, type_graphql_1.Field)({ nullable: true }),
109
- tslib_1.__metadata("design:type", Date
110
- /**
111
- * 왜 이 주장이 섰나 — 읽는 사람이 「지연 기록인가 정정인가」를 알아야 한다.
112
- *
113
- * ```
114
- * initial 도입 시각에 확인된 초기 상태
115
- * change 바꾼다는 선언
116
- * correction 이미 적은 것을 고친다
117
- * remainder 정정이 남긴 앞뒤 조각
118
- * ```
119
- */
120
- )
121
- ], MasterValueClaim.prototype, "supersededAt", void 0);
122
- tslib_1.__decorate([
123
- (0, typeorm_1.Column)(),
124
- (0, type_graphql_1.Field)(),
125
- tslib_1.__metadata("design:type", String)
126
- ], MasterValueClaim.prototype, "reason", void 0);
127
- tslib_1.__decorate([
128
- (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
129
- (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
130
- tslib_1.__metadata("design:type", auth_base_1.User)
131
- ], MasterValueClaim.prototype, "recorder", void 0);
132
- tslib_1.__decorate([
133
- (0, typeorm_1.RelationId)((claim) => claim.recorder),
134
- tslib_1.__metadata("design:type", String)
135
- ], MasterValueClaim.prototype, "recorderId", void 0);
136
- tslib_1.__decorate([
137
- (0, typeorm_1.CreateDateColumn)(),
138
- (0, type_graphql_1.Field)({ nullable: true }),
139
- tslib_1.__metadata("design:type", Date)
140
- ], MasterValueClaim.prototype, "createdAt", void 0);
141
- exports.MasterValueClaim = MasterValueClaim = tslib_1.__decorate([
142
- (0, typeorm_1.Entity)({ name: 'ops_master_value_claim' }),
143
- (0, typeorm_1.Index)('ix_ops_master_value_claim_0', (claim) => [claim.domain, claim.axis, claim.rowId, claim.field]),
144
- (0, type_graphql_1.ObjectType)({ description: 'what an assignment or declaration was, from when, as recorded when' })
145
- ], MasterValueClaim);
146
- /**
147
- * **이력을 받는 칸은 여기 적힌 것뿐이다.**
148
- *
149
- * 임의의 축·칸을 받는 범용 쓰기 문을 열지 않는다(설계 점검 2026-09-22). 칸마다 값의 모양과 검증이
150
- * 다르고, 아무 칸이나 받는 문은 그 검증을 못 한다.
151
- *
152
- * ── 셋에서 넷이 됐다 (2026-09-23) ─────────────────────────────────────────
153
- * 앞의 셋은 **배정**이다 — 무엇이 어디에 속하나. 넷째는 아니다. 공정의 표준시간은 값 자체이고,
154
- * 실적의 성능률이 그것을 나눈다. 지금은 **오늘 마스터를 다시 읽어서 지난달 성능이 움직인다**
155
- * (`operation-effectivity-db.test.cjs` 가 그 거동을 적어 두고 있다).
156
- *
157
- * 그래서 이 표의 이름이 「배정」이 아니라 「마스터 값의 주장」이다. 기전은 같다 — 두 시각, 정정은
158
- * 물리고 앞뒤를 다시 주장, 주장이 없으면 한 번도 안 바뀐 것.
159
- */
160
- exports.CLAIMED_FIELDS = [
161
- { axis: 'equipment', field: 'homeLocation', kind: 'relation', target: 'operationalLocation' },
162
- { axis: 'operationalLocation', field: 'workShiftNames', kind: 'names' },
163
- { axis: 'operationalLocation', field: 'parentId', kind: 'relation', target: 'operationalLocation' },
164
- /*
165
- * ISO 8601 기간 문자열 그대로 담는다(`PT1M`). ms 로 바꿔 담으면 사람이 읽을 때 원문이 없고,
166
- * 원문만 담으면 파싱 규칙이 바뀌는 날 값이 달라진다 — **읽는 쪽이 둘 다 내도록** 원문을 담고
167
- * 부르는 쪽이 파싱한다(착수 카드 §3-1).
168
- */
169
- { axis: 'operationDefinition', field: 'duration', kind: 'literal' }
170
- ];
171
- function claimedField(axis, field) {
172
- return exports.CLAIMED_FIELDS.find(one => one.axis === axis && one.field === field);
173
- }
174
- //# sourceMappingURL=master-value-claim.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"master-value-claim.js","sourceRoot":"","sources":["../../../server/service/assignment/master-value-claim.ts"],"names":[],"mappings":"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","sourcesContent":["import { Column, CreateDateColumn, Entity, Index, ManyToOne, PrimaryGeneratedColumn, RelationId } from 'typeorm'\nimport { Field, ID, ObjectType } from 'type-graphql'\nimport { Domain, ScalarObject } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\n\n/**\n * **언제부터 그러했고, 언제 그렇게 적었나** — 배정과 선언의 주장 한 줄.\n *\n * ═══════════════════════════════════════════════════════════════════════════\n * ── 무엇이 없었나 ──────────────────────────────────────────────────────────\n * 가동률의 분모는 **설비가 어느 자리에 있었나 · 그 자리가 어느 근무조로 돌았나 · 그 자리가 어디에\n * 속했나**로 정해진다. 셋 다 칸 하나였다. 그래서 설비를 옮기면 **지난달 가동률이 바뀌었고**, 아무도\n * 아무것도 정정하지 않았는데 숫자가 달라진 까닭을 말할 수 없었다.\n *\n * ── 시각이 둘인 까닭 ───────────────────────────────────────────────────────\n * 「언제부터 그렇게 하기로 했나」와 「언제 그렇게 적었나」는 다르다.\n *\n * ```\n * validFrom · validTo 적용 시각 — 업무의 시간. 분모를 나누는 경계가 이것이다\n * recordedAt 기록 시각 — 우리가 그것을 안 시각\n * supersededAt 이 주장이 물러난 시각. 덮어쓰지 않고 물러나게 한다\n * ```\n *\n * 사흘 전에 옮긴 것을 오늘 적으면 둘이 갈라진다. **이틀 전 기록시점으로 물으면 옛 자리가 나와야\n * 한다** — 그때 우리가 알던 것이 그것이기 때문이다(ADR-0088 결정 2 ③).\n *\n * ── 정정은 덮지 않고 조각을 남긴다 ─────────────────────────────────────────\n * ```\n * 지금까지 A [1일, ∞)\n * 오늘 정정 「10~15일은 B 였다」\n * 최신 A [1일, 10일) · B [10일, 15일) · A [15일, ∞)\n * 정정 전 시점 A [1일, ∞) ← 조각은 그때 아직 기록되지 않았다\n * ```\n *\n * ── 이 표가 기준이 되는 원본이고, 마스터 행은 투영이다 ─────────────────────\n * 미래 주장은 마스터 행을 **안 건드린다.** 다음 달 이동을 지금 적었다고 다른 제품이 오늘부터 새\n * 자리를 읽으면 안 된다. 도래하면 투영이 행을 맞춘다(§`projectDueClaims`).\n *\n * ── 이름이 아니라 식별자로 가리킨다 ────────────────────────────────────────\n * `value.ref` 가 안정된 식별자이고 `value.label` 은 **그때 뭐라고 불렀나**다. 이름을 담으면 이름을\n * 바꾼 날 과거 관계가 끊긴다(적용 가이드 §0-1 의 그 부류).\n * ═══════════════════════════════════════════════════════════════════════════\n */\n@Entity({ name: 'ops_master_value_claim' })\n@Index('ix_ops_master_value_claim_0', (claim: MasterValueClaim) => [claim.domain, claim.axis, claim.rowId, claim.field])\n@ObjectType({ description: 'what an assignment or declaration was, from when, as recorded when' })\nexport class MasterValueClaim {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field(type => Domain)\n domain?: Domain\n\n @RelationId((claim: MasterValueClaim) => claim.domain)\n domainId?: string\n\n /** 어느 축의 무엇인가 — `equipment` · `operationalLocation`. */\n @Column()\n @Field()\n axis: string\n\n /** 그 축의 어느 행인가. UUID 다. */\n @Column()\n @Field()\n rowId: string\n\n /** 어느 칸인가 — 선언한 셋만 온다(§`CLAIMED_FIELDS`). */\n @Column()\n @Field()\n field: string\n\n /**\n * 그때의 값.\n *\n * ```\n * { ref, label } 관계를 가리키는 칸 — 식별자와 그때의 표시값\n * { names: [...] } 이름 목록을 드는 칸 — 근무조 선언\n * null **선언 없음.** 「그때부터 부모가 없다」는 정상 값이고 결측이 아니다\n * ```\n */\n @Column({ type: 'simple-json', nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n value?: Record<string, unknown> | null\n\n /**\n * 언제부터 그러했나 — 업무의 시간.\n *\n * **비어 있으면 「그때까지 쭉」이다.** 어느 칸이 처음 바뀔 때, 바뀌기 전 값도 같이 적는데 그 값이\n * 언제부터였는지는 아무도 안 적었다. 1970 년 같은 시각을 넣으면 적은 적 없는 것을 적은 것이 되므로\n * 비워 둔다(2026-09-23).\n */\n @Column({ nullable: true })\n @Field({ nullable: true })\n validFrom?: Date\n\n /** 언제까지. 비면 아직 끝나지 않았다. */\n @Column({ nullable: true })\n @Field({ nullable: true })\n validTo?: Date\n\n /** 언제 그렇게 적었나. 서버가 붙인다 — 사람이 넣지 않는다. */\n @Column()\n @Field()\n recordedAt: Date\n\n /** 언제 물러났나. 비면 지금도 서 있는 주장이다. */\n @Column({ nullable: true })\n @Field({ nullable: true })\n supersededAt?: Date\n\n /**\n * 왜 이 주장이 섰나 — 읽는 사람이 「지연 기록인가 정정인가」를 알아야 한다.\n *\n * ```\n * initial 도입 시각에 확인된 초기 상태\n * change 바꾼다는 선언\n * correction 이미 적은 것을 고친다\n * remainder 정정이 남긴 앞뒤 조각\n * ```\n */\n @Column()\n @Field()\n reason: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n recorder?: User\n\n @RelationId((claim: MasterValueClaim) => claim.recorder)\n recorderId?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n}\n\n/**\n * **이력을 받는 칸은 여기 적힌 것뿐이다.**\n *\n * 임의의 축·칸을 받는 범용 쓰기 문을 열지 않는다(설계 점검 2026-09-22). 칸마다 값의 모양과 검증이\n * 다르고, 아무 칸이나 받는 문은 그 검증을 못 한다.\n *\n * ── 셋에서 넷이 됐다 (2026-09-23) ─────────────────────────────────────────\n * 앞의 셋은 **배정**이다 — 무엇이 어디에 속하나. 넷째는 아니다. 공정의 표준시간은 값 자체이고,\n * 실적의 성능률이 그것을 나눈다. 지금은 **오늘 마스터를 다시 읽어서 지난달 성능이 움직인다**\n * (`operation-effectivity-db.test.cjs` 가 그 거동을 적어 두고 있다).\n *\n * 그래서 이 표의 이름이 「배정」이 아니라 「마스터 값의 주장」이다. 기전은 같다 — 두 시각, 정정은\n * 물리고 앞뒤를 다시 주장, 주장이 없으면 한 번도 안 바뀐 것.\n */\nexport const CLAIMED_FIELDS = [\n { axis: 'equipment', field: 'homeLocation', kind: 'relation' as const, target: 'operationalLocation' },\n { axis: 'operationalLocation', field: 'workShiftNames', kind: 'names' as const },\n { axis: 'operationalLocation', field: 'parentId', kind: 'relation' as const, target: 'operationalLocation' },\n /*\n * ISO 8601 기간 문자열 그대로 담는다(`PT1M`). ms 로 바꿔 담으면 사람이 읽을 때 원문이 없고,\n * 원문만 담으면 파싱 규칙이 바뀌는 날 값이 달라진다 — **읽는 쪽이 둘 다 내도록** 원문을 담고\n * 부르는 쪽이 파싱한다(착수 카드 §3-1).\n */\n { axis: 'operationDefinition', field: 'duration', kind: 'literal' as const }\n]\n\nexport function claimedField(axis: string, field: string) {\n return CLAIMED_FIELDS.find(one => one.axis === axis && one.field === field)\n}\n"]}
@@ -1,34 +0,0 @@
1
- import { Domain } from '@things-factory/shell';
2
- import { User } from '@things-factory/auth-base';
3
- /**
4
- * 설비 등급 — **ISA-95 `EquipmentClass`**.
5
- *
6
- * 공정은 특정 설비를 지목하지 않고 등급으로 요구한다 — 「용접기 1대」. 등급이 없으면 그 요구를 적을 수
7
- * 없고, 대체 설비를 찾을 수도 없다.
8
- *
9
- * 구조는 인원 등급과 같다(표준이 셋을 같은 모양으로 정의한다). 옮기는 함수도 같은 것을 쓴다.
10
- */
11
- export declare class EquipmentClass {
12
- readonly id: string;
13
- domain?: Domain;
14
- domainId?: string;
15
- /** 표준 `EquipmentClassID`. */
16
- name: string;
17
- description?: string;
18
- /** 상위 등급들 — 표준 `EquipmentClassBaseID`(복수). 「6축 용접기」가 「용접기」를 상속한다. */
19
- baseIds?: string[];
20
- /** 이 등급의 적격을 정하는 `TestSpecification` 참조들 — 표준 `TestSpecificationID`. */
21
- testSpecificationIds?: string[];
22
- /** 등급 속성 — 표준 `EquipmentClassProperty`. */
23
- properties?: Record<string, unknown>[];
24
- /** 언제부터 유효한가 — 표준 `EffectiveStartDate`. */
25
- effectiveStart?: Date;
26
- /** 언제까지 유효한가 — 표준 `EffectiveEndDate`. */
27
- effectiveEnd?: Date;
28
- createdAt?: Date;
29
- updatedAt?: Date;
30
- creator?: User;
31
- creatorId?: string;
32
- updater?: User;
33
- updaterId?: string;
34
- }
@@ -1,104 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EquipmentClass = void 0;
4
- const tslib_1 = require("tslib");
5
- const typeorm_1 = require("typeorm");
6
- const type_graphql_1 = require("type-graphql");
7
- const shell_1 = require("@things-factory/shell");
8
- const auth_base_1 = require("@things-factory/auth-base");
9
- /**
10
- * 설비 등급 — **ISA-95 `EquipmentClass`**.
11
- *
12
- * 공정은 특정 설비를 지목하지 않고 등급으로 요구한다 — 「용접기 1대」. 등급이 없으면 그 요구를 적을 수
13
- * 없고, 대체 설비를 찾을 수도 없다.
14
- *
15
- * 구조는 인원 등급과 같다(표준이 셋을 같은 모양으로 정의한다). 옮기는 함수도 같은 것을 쓴다.
16
- */
17
- let EquipmentClass = class EquipmentClass {
18
- };
19
- exports.EquipmentClass = EquipmentClass;
20
- tslib_1.__decorate([
21
- (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
22
- (0, type_graphql_1.Field)(type => type_graphql_1.ID),
23
- tslib_1.__metadata("design:type", String)
24
- ], EquipmentClass.prototype, "id", void 0);
25
- tslib_1.__decorate([
26
- (0, typeorm_1.ManyToOne)(type => shell_1.Domain),
27
- (0, type_graphql_1.Field)(type => shell_1.Domain),
28
- tslib_1.__metadata("design:type", shell_1.Domain)
29
- ], EquipmentClass.prototype, "domain", void 0);
30
- tslib_1.__decorate([
31
- (0, typeorm_1.RelationId)((klass) => klass.domain),
32
- tslib_1.__metadata("design:type", String)
33
- ], EquipmentClass.prototype, "domainId", void 0);
34
- tslib_1.__decorate([
35
- (0, typeorm_1.Column)(),
36
- (0, type_graphql_1.Field)(),
37
- tslib_1.__metadata("design:type", String)
38
- ], EquipmentClass.prototype, "name", void 0);
39
- tslib_1.__decorate([
40
- (0, typeorm_1.Column)({ nullable: true }),
41
- (0, type_graphql_1.Field)({ nullable: true }),
42
- tslib_1.__metadata("design:type", String)
43
- ], EquipmentClass.prototype, "description", void 0);
44
- tslib_1.__decorate([
45
- (0, typeorm_1.Column)({ type: 'simple-json', nullable: true }),
46
- (0, type_graphql_1.Field)(type => [String], { nullable: true }),
47
- tslib_1.__metadata("design:type", Array)
48
- ], EquipmentClass.prototype, "baseIds", void 0);
49
- tslib_1.__decorate([
50
- (0, typeorm_1.Column)({ type: 'simple-json', nullable: true }),
51
- (0, type_graphql_1.Field)(type => [String], { nullable: true }),
52
- tslib_1.__metadata("design:type", Array)
53
- ], EquipmentClass.prototype, "testSpecificationIds", void 0);
54
- tslib_1.__decorate([
55
- (0, typeorm_1.Column)({ type: 'simple-json', nullable: true }),
56
- (0, type_graphql_1.Field)(type => shell_1.ScalarObject, { nullable: true, description: 'ResourceProperty[]' }),
57
- tslib_1.__metadata("design:type", Array)
58
- ], EquipmentClass.prototype, "properties", void 0);
59
- tslib_1.__decorate([
60
- (0, typeorm_1.Column)({ nullable: true }),
61
- (0, type_graphql_1.Field)({ nullable: true }),
62
- tslib_1.__metadata("design:type", Date
63
- /** 언제까지 유효한가 — 표준 `EffectiveEndDate`. */
64
- )
65
- ], EquipmentClass.prototype, "effectiveStart", void 0);
66
- tslib_1.__decorate([
67
- (0, typeorm_1.Column)({ nullable: true }),
68
- (0, type_graphql_1.Field)({ nullable: true }),
69
- tslib_1.__metadata("design:type", Date)
70
- ], EquipmentClass.prototype, "effectiveEnd", void 0);
71
- tslib_1.__decorate([
72
- (0, typeorm_1.CreateDateColumn)(),
73
- (0, type_graphql_1.Field)({ nullable: true }),
74
- tslib_1.__metadata("design:type", Date)
75
- ], EquipmentClass.prototype, "createdAt", void 0);
76
- tslib_1.__decorate([
77
- (0, typeorm_1.UpdateDateColumn)(),
78
- (0, type_graphql_1.Field)({ nullable: true }),
79
- tslib_1.__metadata("design:type", Date)
80
- ], EquipmentClass.prototype, "updatedAt", void 0);
81
- tslib_1.__decorate([
82
- (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
83
- (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
84
- tslib_1.__metadata("design:type", auth_base_1.User)
85
- ], EquipmentClass.prototype, "creator", void 0);
86
- tslib_1.__decorate([
87
- (0, typeorm_1.RelationId)((klass) => klass.creator),
88
- tslib_1.__metadata("design:type", String)
89
- ], EquipmentClass.prototype, "creatorId", void 0);
90
- tslib_1.__decorate([
91
- (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
92
- (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
93
- tslib_1.__metadata("design:type", auth_base_1.User)
94
- ], EquipmentClass.prototype, "updater", void 0);
95
- tslib_1.__decorate([
96
- (0, typeorm_1.RelationId)((klass) => klass.updater),
97
- tslib_1.__metadata("design:type", String)
98
- ], EquipmentClass.prototype, "updaterId", void 0);
99
- exports.EquipmentClass = EquipmentClass = tslib_1.__decorate([
100
- (0, typeorm_1.Entity)({ name: 'ops_equipment_class' }),
101
- (0, typeorm_1.Index)('ix_ops_equipment_class_0', (klass) => [klass.domain, klass.name], { unique: true }),
102
- (0, type_graphql_1.ObjectType)({ description: 'ISA-95 EquipmentClass — a kind of equipment that operations require' })
103
- ], EquipmentClass);
104
- //# sourceMappingURL=equipment-class.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"equipment-class.js","sourceRoot":"","sources":["../../../server/service/equipment/equipment-class.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn\n} from 'typeorm'\nimport { Field, ID, ObjectType } from 'type-graphql'\n\nimport { Domain, ScalarObject } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\n\n/**\n * 설비 등급 — **ISA-95 `EquipmentClass`**.\n *\n * 공정은 특정 설비를 지목하지 않고 등급으로 요구한다 — 「용접기 1대」. 등급이 없으면 그 요구를 적을 수\n * 없고, 대체 설비를 찾을 수도 없다.\n *\n * 구조는 인원 등급과 같다(표준이 셋을 같은 모양으로 정의한다). 옮기는 함수도 같은 것을 쓴다.\n */\n@Entity({ name: 'ops_equipment_class' })\n@Index('ix_ops_equipment_class_0', (klass: EquipmentClass) => [klass.domain, klass.name], { unique: true })\n@ObjectType({ description: 'ISA-95 EquipmentClass — a kind of equipment that operations require' })\nexport class EquipmentClass {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field(type => Domain)\n domain?: Domain\n\n @RelationId((klass: EquipmentClass) => klass.domain)\n domainId?: string\n\n /** 표준 `EquipmentClassID`. */\n @Column()\n @Field()\n name: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n description?: string\n\n /** 상위 등급들 — 표준 `EquipmentClassBaseID`(복수). 「6축 용접기」가 「용접기」를 상속한다. */\n @Column({ type: 'simple-json', nullable: true })\n @Field(type => [String], { nullable: true })\n baseIds?: string[]\n\n /** 이 등급의 적격을 정하는 `TestSpecification` 참조들 — 표준 `TestSpecificationID`. */\n @Column({ type: 'simple-json', nullable: true })\n @Field(type => [String], { nullable: true })\n testSpecificationIds?: string[]\n\n /** 등급 속성 — 표준 `EquipmentClassProperty`. */\n @Column({ type: 'simple-json', nullable: true })\n @Field(type => ScalarObject, { nullable: true, description: 'ResourceProperty[]' })\n properties?: Record<string, unknown>[]\n\n /** 언제부터 유효한가 — 표준 `EffectiveStartDate`. */\n @Column({ nullable: true })\n @Field({ nullable: true })\n effectiveStart?: Date\n\n /** 언제까지 유효한가 — 표준 `EffectiveEndDate`. */\n @Column({ nullable: true })\n @Field({ nullable: true })\n effectiveEnd?: Date\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((klass: EquipmentClass) => klass.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((klass: EquipmentClass) => klass.updater)\n updaterId?: string\n}\n"]}
@@ -1,77 +0,0 @@
1
- import { AppliedWhen } from '../assignment/applied-when';
2
- import { ListParam } from '@things-factory/shell';
3
- import { MasterPatch } from '../master-crud';
4
- import { EquipmentClass } from './equipment-class';
5
- import { Equipment } from './equipment';
6
- import { StopReason } from './stop-reason';
7
- /**
8
- * 설비 축을 채우고 고친다.
9
- *
10
- * ── 왜 마스터는 그리드에서 고칠 수 있나 ────────────────────────────────────
11
- * 업무 기록과 달리 마스터는 **선언**이다. 「이 사람이 용접 자격을 갖는다」는 일어난 일이 아니라 지금의
12
- * 규정이고, 규정은 바뀐다. 없앨 때 행을 지우지 않고 유효 기간의 끝을 채우는 것이 그래서다 —
13
- * 지우면 그것을 가리키는 지난 기록이 가리킬 것을 잃는다.
14
- *
15
- * 규칙은 `master-crud.ts` 한 곳에 있다. 여기는 축의 이름만 붙인다.
16
- */
17
- export declare class EquipmentClassList {
18
- items: EquipmentClass[];
19
- total: number;
20
- }
21
- export declare class EquipmentClassResolver {
22
- equipmentClasses(params: ListParam, context: ResolverContext): Promise<EquipmentClassList>;
23
- /**
24
- * 이 등급에 든 설비들
25
- *
26
- * 아무도 안 들면 빈 목록이다. 다만 그것이 「없다」인지 「다 못 봤다」인지는 `memberScanCapped`
27
- * 가 말한다 — 조용히 자르면 고쳐야 할 선언과 멀쩡한 등급이 같아 보인다.
28
- */
29
- members(klass: EquipmentClass, context: ResolverContext): Promise<string[]>;
30
- /** 소속을 다 보지 못했나. */
31
- memberScanCapped(klass: EquipmentClass, context: ResolverContext): Promise<boolean>;
32
- /**
33
- * 그리드가 보낸 변경을 한 번에 적용한다.
34
- *
35
- * 패치를 `ScalarObject` 로 받는다 — 축마다 입력 타입을 따로 만들면 칸을 하나 더할 때마다 두 곳을
36
- * 고쳐야 하고, 한쪽을 빠뜨리면 그 칸이 오류 보고 없이 저장되지 않는다. 돌려주는 것은 타입이 있는
37
- * 엔티티라 무엇이 저장됐는지 스키마로 확인할 수 있다.
38
- */
39
- updateMultipleEquipmentClass(patches: MasterPatch[], context: ResolverContext): Promise<EquipmentClass[]>;
40
- }
41
- export declare class EquipmentList {
42
- items: Equipment[];
43
- total: number;
44
- }
45
- export declare class EquipmentResolver {
46
- equipmentList(params: ListParam, context: ResolverContext): Promise<EquipmentList>;
47
- /**
48
- * 그리드가 보낸 변경을 한 번에 적용한다.
49
- *
50
- * 패치를 `ScalarObject` 로 받는다 — 축마다 입력 타입을 따로 만들면 칸을 하나 더할 때마다 두 곳을
51
- * 고쳐야 하고, 한쪽을 빠뜨리면 그 칸이 오류 보고 없이 저장되지 않는다. 돌려주는 것은 타입이 있는
52
- * 엔티티라 무엇이 저장됐는지 스키마로 확인할 수 있다.
53
- */
54
- updateMultipleEquipment(patches: MasterPatch[], context: ResolverContext,
55
- /**
56
- * **언제부터 그러한가** — 배정·선언 칸을 고칠 때만 온다.
57
- *
58
- * 안 오면 지금부터다. 미래면 주장만 남고 본행은 그 시각이 올 때까지 그대로다
59
- * (§`claimAssignmentChanges`).
60
- */
61
- applied?: AppliedWhen): Promise<Equipment[]>;
62
- }
63
- export declare class StopReasonList {
64
- items: StopReason[];
65
- total: number;
66
- }
67
- export declare class StopReasonResolver {
68
- stopReasonList(params: ListParam, context: ResolverContext): Promise<StopReasonList>;
69
- /**
70
- * 그리드가 보낸 변경을 한 번에 적용한다.
71
- *
72
- * 패치를 `ScalarObject` 로 받는다 — 축마다 입력 타입을 따로 만들면 칸을 하나 더할 때마다 두 곳을
73
- * 고쳐야 하고, 한쪽을 빠뜨리면 그 칸이 오류 보고 없이 저장되지 않는다. 돌려주는 것은 타입이 있는
74
- * 엔티티라 무엇이 저장됐는지 스키마로 확인할 수 있다.
75
- */
76
- updateMultipleStopReason(patches: MasterPatch[], context: ResolverContext): Promise<StopReason[]>;
77
- }