@cogenta/schema 0.3.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/dist/define-collection.d.ts.map +1 -1
  2. package/dist/define-collection.js +53 -3
  3. package/dist/define-collection.js.map +1 -1
  4. package/dist/generate-types.d.ts.map +1 -1
  5. package/dist/generate-types.js +6 -1
  6. package/dist/generate-types.js.map +1 -1
  7. package/dist/index.d.ts +2 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +1 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/media-usage.d.ts +56 -0
  12. package/dist/media-usage.d.ts.map +1 -0
  13. package/dist/media-usage.js +89 -0
  14. package/dist/media-usage.js.map +1 -0
  15. package/dist/rich-text.d.ts +28 -2
  16. package/dist/rich-text.d.ts.map +1 -1
  17. package/dist/rich-text.js +26 -3
  18. package/dist/rich-text.js.map +1 -1
  19. package/dist/routing/index.d.ts +5 -1
  20. package/dist/routing/index.d.ts.map +1 -1
  21. package/dist/routing/index.js +2 -0
  22. package/dist/routing/index.js.map +1 -1
  23. package/dist/routing/not-found-log.d.ts +78 -0
  24. package/dist/routing/not-found-log.d.ts.map +1 -0
  25. package/dist/routing/not-found-log.js +153 -0
  26. package/dist/routing/not-found-log.js.map +1 -0
  27. package/dist/routing/redirect-patterns.d.ts +61 -0
  28. package/dist/routing/redirect-patterns.d.ts.map +1 -0
  29. package/dist/routing/redirect-patterns.js +173 -0
  30. package/dist/routing/redirect-patterns.js.map +1 -0
  31. package/dist/routing/redirects.d.ts +27 -4
  32. package/dist/routing/redirects.d.ts.map +1 -1
  33. package/dist/routing/redirects.js +160 -48
  34. package/dist/routing/redirects.js.map +1 -1
  35. package/dist/scheduling/index.d.ts +2 -0
  36. package/dist/scheduling/index.d.ts.map +1 -1
  37. package/dist/scheduling/index.js +1 -0
  38. package/dist/scheduling/index.js.map +1 -1
  39. package/dist/scheduling/registry.d.ts +147 -0
  40. package/dist/scheduling/registry.d.ts.map +1 -0
  41. package/dist/scheduling/registry.js +318 -0
  42. package/dist/scheduling/registry.js.map +1 -0
  43. package/dist/search/extract.d.ts +24 -0
  44. package/dist/search/extract.d.ts.map +1 -1
  45. package/dist/search/extract.js +63 -8
  46. package/dist/search/extract.js.map +1 -1
  47. package/dist/search/index.d.ts +2 -1
  48. package/dist/search/index.d.ts.map +1 -1
  49. package/dist/search/index.js +1 -9
  50. package/dist/search/index.js.map +1 -1
  51. package/dist/store/admin-theme-store.d.ts +26 -0
  52. package/dist/store/admin-theme-store.d.ts.map +1 -0
  53. package/dist/store/admin-theme-store.js +81 -0
  54. package/dist/store/admin-theme-store.js.map +1 -0
  55. package/dist/store/admin-theme-tables.d.ts +24 -0
  56. package/dist/store/admin-theme-tables.d.ts.map +1 -0
  57. package/dist/store/admin-theme-tables.js +41 -0
  58. package/dist/store/admin-theme-tables.js.map +1 -0
  59. package/dist/store/admin-theme-templates.d.ts +135 -0
  60. package/dist/store/admin-theme-templates.d.ts.map +1 -0
  61. package/dist/store/admin-theme-templates.js +217 -0
  62. package/dist/store/admin-theme-templates.js.map +1 -0
  63. package/dist/store/columns.d.ts.map +1 -1
  64. package/dist/store/columns.js +8 -2
  65. package/dist/store/columns.js.map +1 -1
  66. package/dist/store/diff.d.ts +40 -0
  67. package/dist/store/diff.d.ts.map +1 -1
  68. package/dist/store/diff.js +148 -0
  69. package/dist/store/diff.js.map +1 -1
  70. package/dist/store/index.d.ts +44 -6
  71. package/dist/store/index.d.ts.map +1 -1
  72. package/dist/store/index.js +24 -3
  73. package/dist/store/index.js.map +1 -1
  74. package/dist/store/maintenance-store.d.ts +34 -0
  75. package/dist/store/maintenance-store.d.ts.map +1 -0
  76. package/dist/store/maintenance-store.js +92 -0
  77. package/dist/store/maintenance-store.js.map +1 -0
  78. package/dist/store/menu-store.d.ts +48 -1
  79. package/dist/store/menu-store.d.ts.map +1 -1
  80. package/dist/store/menu-store.js +151 -4
  81. package/dist/store/menu-store.js.map +1 -1
  82. package/dist/store/menu-tables.d.ts +12 -0
  83. package/dist/store/menu-tables.d.ts.map +1 -1
  84. package/dist/store/menu-tables.js +38 -0
  85. package/dist/store/menu-tables.js.map +1 -1
  86. package/dist/store/naming.d.ts +1 -1
  87. package/dist/store/naming.d.ts.map +1 -1
  88. package/dist/store/naming.js +2 -0
  89. package/dist/store/naming.js.map +1 -1
  90. package/dist/store/pattern-store.d.ts +75 -0
  91. package/dist/store/pattern-store.d.ts.map +1 -0
  92. package/dist/store/pattern-store.js +118 -0
  93. package/dist/store/pattern-store.js.map +1 -0
  94. package/dist/store/pattern-tables.d.ts +29 -0
  95. package/dist/store/pattern-tables.d.ts.map +1 -0
  96. package/dist/store/pattern-tables.js +53 -0
  97. package/dist/store/pattern-tables.js.map +1 -0
  98. package/dist/store/read-only.d.ts +3 -3
  99. package/dist/store/read-only.d.ts.map +1 -1
  100. package/dist/store/read-only.js +4 -3
  101. package/dist/store/read-only.js.map +1 -1
  102. package/dist/store/redirect-tracking.d.ts +50 -0
  103. package/dist/store/redirect-tracking.d.ts.map +1 -0
  104. package/dist/store/redirect-tracking.js +91 -0
  105. package/dist/store/redirect-tracking.js.map +1 -0
  106. package/dist/store/review-transitions.d.ts +34 -0
  107. package/dist/store/review-transitions.d.ts.map +1 -0
  108. package/dist/store/review-transitions.js +51 -0
  109. package/dist/store/review-transitions.js.map +1 -0
  110. package/dist/store/role-permission-export.d.ts +22 -0
  111. package/dist/store/role-permission-export.d.ts.map +1 -0
  112. package/dist/store/role-permission-export.js +0 -0
  113. package/dist/store/role-permission-export.js.map +1 -0
  114. package/dist/store/role-permission-overlay.d.ts +27 -0
  115. package/dist/store/role-permission-overlay.d.ts.map +1 -0
  116. package/dist/store/role-permission-overlay.js +0 -0
  117. package/dist/store/role-permission-overlay.js.map +1 -0
  118. package/dist/store/role-permission-store.d.ts +72 -0
  119. package/dist/store/role-permission-store.d.ts.map +1 -0
  120. package/dist/store/role-permission-store.js +148 -0
  121. package/dist/store/role-permission-store.js.map +1 -0
  122. package/dist/store/role-permission-tables.d.ts +27 -0
  123. package/dist/store/role-permission-tables.d.ts.map +1 -0
  124. package/dist/store/role-permission-tables.js +52 -0
  125. package/dist/store/role-permission-tables.js.map +1 -0
  126. package/dist/store/scheduled-publish-failures.d.ts +36 -0
  127. package/dist/store/scheduled-publish-failures.d.ts.map +1 -0
  128. package/dist/store/scheduled-publish-failures.js +67 -0
  129. package/dist/store/scheduled-publish-failures.js.map +1 -0
  130. package/dist/store/schema-2-1-migration.d.ts +29 -0
  131. package/dist/store/schema-2-1-migration.d.ts.map +1 -0
  132. package/dist/store/schema-2-1-migration.js +71 -0
  133. package/dist/store/schema-2-1-migration.js.map +1 -0
  134. package/dist/store/search-console-store.d.ts +44 -0
  135. package/dist/store/search-console-store.d.ts.map +1 -0
  136. package/dist/store/search-console-store.js +90 -0
  137. package/dist/store/search-console-store.js.map +1 -0
  138. package/dist/store/search-console-tables.d.ts +14 -0
  139. package/dist/store/search-console-tables.d.ts.map +1 -0
  140. package/dist/store/search-console-tables.js +29 -0
  141. package/dist/store/search-console-tables.js.map +1 -0
  142. package/dist/store/search-indexing.d.ts +36 -0
  143. package/dist/store/search-indexing.d.ts.map +1 -1
  144. package/dist/store/search-indexing.js +33 -0
  145. package/dist/store/search-indexing.js.map +1 -1
  146. package/dist/store/site-settings-registry.d.ts +164 -0
  147. package/dist/store/site-settings-registry.d.ts.map +1 -0
  148. package/dist/store/site-settings-registry.js +1160 -0
  149. package/dist/store/site-settings-registry.js.map +1 -0
  150. package/dist/store/site-settings-store.d.ts +42 -0
  151. package/dist/store/site-settings-store.d.ts.map +1 -0
  152. package/dist/store/site-settings-store.js +97 -0
  153. package/dist/store/site-settings-store.js.map +1 -0
  154. package/dist/store/site-settings-tables.d.ts +29 -0
  155. package/dist/store/site-settings-tables.d.ts.map +1 -0
  156. package/dist/store/site-settings-tables.js +48 -0
  157. package/dist/store/site-settings-tables.js.map +1 -0
  158. package/dist/store/store.d.ts +48 -1
  159. package/dist/store/store.d.ts.map +1 -1
  160. package/dist/store/store.js +231 -39
  161. package/dist/store/store.js.map +1 -1
  162. package/dist/store/tables.d.ts.map +1 -1
  163. package/dist/store/tables.js +11 -0
  164. package/dist/store/tables.js.map +1 -1
  165. package/dist/store/taxonomy-store.d.ts.map +1 -1
  166. package/dist/store/taxonomy-store.js +90 -39
  167. package/dist/store/taxonomy-store.js.map +1 -1
  168. package/dist/store/taxonomy-usage.d.ts +47 -0
  169. package/dist/store/taxonomy-usage.d.ts.map +1 -0
  170. package/dist/store/taxonomy-usage.js +101 -0
  171. package/dist/store/taxonomy-usage.js.map +1 -0
  172. package/dist/store/theme-store.d.ts +73 -0
  173. package/dist/store/theme-store.d.ts.map +1 -0
  174. package/dist/store/theme-store.js +193 -0
  175. package/dist/store/theme-store.js.map +1 -0
  176. package/dist/store/types.d.ts +36 -1
  177. package/dist/store/types.d.ts.map +1 -1
  178. package/dist/store/values.d.ts.map +1 -1
  179. package/dist/store/values.js +28 -1
  180. package/dist/store/values.js.map +1 -1
  181. package/dist/system-fields.d.ts +8 -1
  182. package/dist/system-fields.d.ts.map +1 -1
  183. package/dist/system-fields.js +14 -1
  184. package/dist/system-fields.js.map +1 -1
  185. package/dist/types.d.ts +54 -1
  186. package/dist/types.d.ts.map +1 -1
  187. package/dist/types.js +21 -0
  188. package/dist/types.js.map +1 -1
  189. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"tables.js","sourceRoot":"","sources":["../../src/store/tables.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAGZ,UAAU,EAGV,GAAG,GACJ,MAAM,eAAe,CAAA;AAOtB,OAAO,EACL,aAAa,EACb,aAAa,EACb,YAAY,EACZ,UAAU,EACV,cAAc,EACd,UAAU,EACV,eAAe,EACf,UAAU,GACX,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EACL,WAAW,EACX,SAAS,EACT,YAAY,EACZ,SAAS,EACT,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,GACd,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAkCzD,MAAM,UAAU,WAAW,CAAC,UAAgC;IAC1D,MAAM,SAAS,GAAqB,EAAE,CAAA;IAEtC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAC9B,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,YAAY,CAAC;oBACrB,IAAI,EAAE,gBAAgB;oBACtB,OAAO,EAAE,uBAAuB,IAAI,SAAS,UAAU,CAAC,IAAI,sBAAsB;oBAClF,IAAI,EAAE,8CAA8C;oBACpD,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;iBACtD,CAAC,CAAA;YACJ,CAAC;YACD,sEAAsE;YACtE,mEAAmE;YACnE,+DAA+D;YAC/D,SAAS,CAAC,IAAI,CAAC;gBACb,KAAK,EAAE,IAAI;gBACX,EAAE,EAAE,EAAE;gBACN,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK;gBACrC,IAAI,EAAE,UAAU;aACjB,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;YAAE,SAAQ;QAEvC,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,YAAY,CAAC;gBACrB,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,uBAAuB,IAAI,SAAS,UAAU,CAAC,IAAI,6BAA6B;gBACzF,IAAI,EAAE,iDAAiD;gBACvD,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aACtD,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;QAC3C,MAAM,QAAQ,GAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAA0B,IAAI,UAAU,CAAA;QAElF,IAAI,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,YAAY,CAAC;gBACrB,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,iBAAiB,IAAI,SAAS,UAAU,CAAC,IAAI,sDAAsD;gBAC5G,IAAI,EAAE,kEAAkE;gBACxE,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aACtD,CAAC,CAAA;QACJ,CAAC;QAED,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;IACvE,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,yEAAyE;AACzE,SAAS,WAAW,CAAC,QAAwB,EAAE,OAAwB;IACrE,OAAO,UAAU,CACf,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,EACrF,OAAO,CACR,CAAA;AACH,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAAC,UAAgC;IACjE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YAAE,SAAQ;QAErC,MAAM,IAAI,YAAY,CAAC;YACrB,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,IAAI,IAAI,kDAAkD,UAAU,CAAC,IAAI,IAAI;YACtF,IAAI,EAAE,qIAAqI;YAC3I,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;SACtD,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,IAAY,EAAE,KAAsB,EAAE,OAAwB;IACjF,OAAO,GAAG,CAAA,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAA;AACtF,CAAC;AAED,SAAS,aAAa,CAAC,OAAwB;IAC7C,OAAO;QACL,GAAG,CAAA,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,uBAAuB;QAC7E,GAAG,CAAA,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,WAAW;QAC9E,GAAG,CAAA,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,WAAW;QAC9E,GAAG,CAAA,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;QACpE,GAAG,CAAA,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;QACpE,GAAG,CAAA,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW;QACzE,yEAAyE;QACzE,sEAAsE;QACtE,GAAG,CAAA,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE;QACrE,GAAG,CAAA,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW;QACzE,GAAG,CAAA,GAAG,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE;QACpE,GAAG,CAAA,GAAG,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE,WAAW;QAClE,GAAG,CAAA,GAAG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW;QAC7E,GAAG,CAAA,GAAG,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,UAAU,EAAE,EAAE;KACjE,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,UAAgC,EAAE,OAAwB;IAC5E,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IAEpC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9D,IAAI,YAAY,CAAC,KAAK,CAAC;YAAE,SAAQ;QACjC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,4DAA4D;IAC5D,KAAK,CAAC,IAAI,CACR,GAAG,CAAA,cAAc,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC;uBACxE,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC;qBACvC,KAAK,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAC3E,CAAA;IAED,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,IAAI,QAAQ,CAAC,IAAI;YAAE,SAAQ;QAC3B,KAAK,CAAC,IAAI,CACR,GAAG,CAAA,cAAc,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;yBAC9F,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;uBAChD,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;YACvE,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAC1C,CAAA;IACH,CAAC;IAED,OAAO,GAAG,CAAA,8BAA8B,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAA;AACjF,CAAC;AAED,SAAS,WAAW,CAAC,UAAgC,EAAE,OAAwB;IAC7E,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IACjE,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IAElE,OAAO,GAAG,CAAA,8BAA8B,KAAK;MACzC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MAChD,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MACtD,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE;MACjD,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;MACxD,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,UAAU,EAAE;MAC3C,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC;MAC7D,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;iBACjD,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC;qBACtE,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC;mBACjC,OAAO,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;iBACvC,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBACzE,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC;IAC9E,CAAA;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,UAAgC,EAAE,OAAwB;IAC3E,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IAC/D,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IAElE,OAAO,GAAG,CAAA,8BAA8B,KAAK;MACzC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MAChD,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MACtD,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE;MACjD,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;MACtD,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE;MAClD,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;MAC3D,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;MAC5D,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,UAAU,EAAE;iBAChC,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC;qBACpE,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC;mBACjC,OAAO,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;iBACvC,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBACvE,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC;gBAClE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC;IAC5E,CAAA;AACJ,CAAC;AAED,SAAS,OAAO,CACd,UAAgC,EAChC,QAAwB,EACxB,OAAwB;IAExB,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAA;IAEjF,OAAO,GAAG,CAAA,8BAA8B,KAAK;MACzC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MACtD,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MACvD,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE;mBACrC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC;iBACtE,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC;qBACtF,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC;mBACjC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;;iBAElF,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC;qBACvF,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC;mBAClC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;QACvE,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACrC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,WAAW,CAAC,QAA4B,EAAE,OAAwB;IACzE,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IAE/D,OAAO,GAAG,CAAA,8BAA8B,KAAK;MACzC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MAChD,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;MACvD,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC;MACvD,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,UAAU,EAAE;MAC7C,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE;MAClD,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC;MACxE,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC;MAC7D,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC;iBAClD,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC;qBACrE,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC;mBAClC,KAAK,KAAK,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;IAClD,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,QAA4B,EAAE,OAAwB;IAC7E,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACzC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAEvC,OAAO;QACL,yEAAyE;QACzE,4EAA4E;QAC5E,aAAa;QACb,GAAG,CAAA,uBAAuB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC;aACpE,KAAK,KAAK,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QACjD,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC;aACtD,KAAK,KAAK,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QACjD,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;aACxD,KAAK,KAAK,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG;KAC3F,CAAA;AACH,CAAC;AAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;AAE3C;;;;;;GAMG;AACH,SAAS,eAAe,CACtB,UAAgC,EAChC,OAAwB;IAExB,MAAM,IAAI,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,UAAU,GAAkB;QAChC,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,OAAO,CAAC;aAC/D,KAAK,KAAK,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG;QACrF,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC;aAC7D,KAAK,KAAK,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,GAAG;QAC3D,2EAA2E;QAC3E,mEAAmE;QACnE,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC;aACvD,KAAK,KAAK,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG;KACxD,CAAA;IAED,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACpE,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,IAAI,YAAY,CAAC,UAAU,CAAC;YAAE,SAAQ;QACpE,wEAAwE;QACxE,4EAA4E;QAC5E,0CAA0C;QAC1C,UAAU,CAAC,IAAI,CACb,GAAG,CAAA,uBAAuB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;eACnF,KAAK,KAAK,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,GAAG,CAC9F,CAAA;IACH,CAAC;IAED,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACxE,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAA;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3B,4EAA4E;QAC5E,+DAA+D;QAC/D,IAAI,IAAI,KAAK,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACxF,OAAO,CAAC,GAAG,EAAE,CAAA;QACf,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAQ;QAElC,UAAU,CAAC,IAAI,CACb,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC;eACjE,KAAK,KAAK,aAAa,CAC1B,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,EAC/D,IAAI,CACL,GAAG,CACT,CAAA;IACH,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,QAAqB,EAAE,UAAgC;IAC9E,kBAAkB,CAAC,UAAU,CAAC,CAAA;IAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;IAEhC,MAAM,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;IACrD,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;IACtD,MAAM,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;IAEpD,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI;YAAE,SAAQ;QAC5B,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9D,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IACxD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,EAAkB,EAClB,WAA4C,EAC5C,UAAU,GAAkC,EAAE;IAE9C,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;QACjD,KAAK,MAAM,SAAS,IAAI,eAAe,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9D,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,KAAK,MAAM,UAAU,IAAI,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;QACxD,MAAM,SAAS,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;IACjC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,WAA4C;IAE5C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IACtF,MAAM,OAAO,GAA2B,EAAE,CAAA;IAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAElC,MAAM,KAAK,GAAG,CAAC,UAAgC,EAAE,KAAwB,EAAQ,EAAE;QACjF,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAM;QACrC,IAAI,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,YAAY,CAAC;gBACrB,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,mBAAmB,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,mCAAmC;gBACtG,IAAI,EAAE,kIAAkI;gBACxI,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE;aAChD,CAAC,CAAA;QACJ,CAAC;QAED,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7B,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,6EAA6E;YAC7E,IAAI,QAAQ,CAAC,EAAE,KAAK,UAAU,CAAC,IAAI;gBAAE,SAAQ;YAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YACtC,IAAI,MAAM,KAAK,SAAS;gBAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACtE,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAEhC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACzB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC1B,CAAC,CAAA;IAED,KAAK,MAAM,UAAU,IAAI,WAAW;QAAE,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;IAC3D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,mFAAmF;AACnF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAkB,EAClB,WAA4C,EAC5C,UAAU,GAAkC,EAAE;IAE9C,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAA;IAE1B,KAAK,MAAM,UAAU,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QAClE,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAAE,SAAQ;YAC5B,MAAM,EAAE,CAAC,KAAK,CACZ,GAAG,CAAA,wBAAwB,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,CACjG,CAAA;QACH,CAAC;QACD,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAA,wBAAwB,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QAC9F,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAA,wBAAwB,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QAChG,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAA,wBAAwB,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IACjG,CAAC;IAED,uEAAuE;IACvE,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAA,wBAAwB,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IAChG,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"tables.js","sourceRoot":"","sources":["../../src/store/tables.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy-store.d.ts","sourceRoot":"","sources":["../../src/store/taxonomy-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EAKpB,MAAM,eAAe,CAAA;AAEtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAKnE;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAA;IACrC,qEAAqE;IACrE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,uDAAuD;IACvD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAC9C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAClD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACjE,gEAAgE;IAChE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC9D,+DAA+D;IAC/D,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;IAClE,kEAAkE;IAClE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;IACrD,oEAAoE;IACpE,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;IACvD,gFAAgF;IAChF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC/E;AA4BD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAiVhF"}
1
+ {"version":3,"file":"taxonomy-store.d.ts","sourceRoot":"","sources":["../../src/store/taxonomy-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EAKpB,MAAM,eAAe,CAAA;AAEtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAKnE;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAA;IACrC,qEAAqE;IACrE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,uDAAuD;IACvD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAC9C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAClD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACjE,gEAAgE;IAChE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC9D,+DAA+D;IAC/D,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;IAClE,kEAAkE;IAClE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;IACrD,oEAAoE;IACpE,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;IACvD,gFAAgF;IAChF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC/E;AA4BD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAmYhF"}
@@ -50,18 +50,18 @@ export function createTaxonomyStore(options) {
50
50
  });
51
51
  }
52
52
  function toTerm(row) {
53
- const path = text(row['path']);
53
+ const path = text(row.path);
54
54
  return {
55
- id: text(row['id']),
55
+ id: text(row.id),
56
56
  taxonomy: taxonomy.name,
57
- parent: nullableText(row['parent_id']),
58
- slug: text(row['slug']),
59
- labels: parseLabels(row['labels']),
60
- position: Number(row['position']),
57
+ parent: nullableText(row.parent_id),
58
+ slug: text(row.slug),
59
+ labels: parseLabels(row.labels),
60
+ position: Number(row.position),
61
61
  path,
62
62
  depth: depthOf(path),
63
- createdAt: text(row['created_at']),
64
- updatedAt: text(row['updated_at']),
63
+ createdAt: text(row.created_at),
64
+ updatedAt: text(row.updated_at),
65
65
  };
66
66
  }
67
67
  async function rowOf(tx, id) {
@@ -69,18 +69,73 @@ export function createTaxonomyStore(options) {
69
69
  return found.rows[0] ?? null;
70
70
  }
71
71
  /**
72
- * Tree order: a parent immediately before its children, siblings by
73
- * `position`.
72
+ * Orders two siblings: by `position`, and by `id` only to break an exact
73
+ * tie (two terms never legitimately share a position; `id` just keeps the
74
+ * result deterministic if they do).
74
75
  *
75
- * Sorting on the path alone would order siblings by id, which is arbitrary;
76
- * sorting on `position` alone would interleave branches. Sorting on both,
77
- * with the path first, is what makes a flat list renderable as a tree
78
- * without a second pass.
76
+ * This not an SQL `order by` is what makes `position` mean anything.
77
+ * A term's path ends in its own id, so `order by path asc` alone already
78
+ * produces a full, unique order on its own: one that reflects the id
79
+ * (effectively creation order, since ids are UUIDv7), never `position`.
80
+ * Sorting rows here, once they are in memory, is what a caller's "move this
81
+ * term up" actually changes.
79
82
  */
80
- const treeOrder = sql `${pathColumn} asc, ${positionColumn} asc`;
83
+ function siblingCompare(a, b) {
84
+ const byPosition = Number(a.position) - Number(b.position);
85
+ if (byPosition !== 0)
86
+ return byPosition;
87
+ const idA = text(a.id);
88
+ const idB = text(b.id);
89
+ return idA < idB ? -1 : idA > idB ? 1 : 0;
90
+ }
91
+ /** The whole tree, flattened depth-first from the roots, siblings by `position`. */
92
+ function flattenFullTree(rows) {
93
+ const byParent = groupByParent(rows);
94
+ const ordered = [];
95
+ const visit = (parent) => {
96
+ for (const row of byParent.get(parent) ?? []) {
97
+ ordered.push(row);
98
+ visit(text(row.id));
99
+ }
100
+ };
101
+ visit(null);
102
+ return ordered;
103
+ }
104
+ /**
105
+ * `rootId` plus everything beneath it, flattened depth-first — for
106
+ * `list({ under })` and `subtree()`, whose `rows` already hold exactly that
107
+ * set (fetched by the materialised path's `like`), unordered.
108
+ */
109
+ function flattenSubtree(rows, rootId) {
110
+ const byParent = groupByParent(rows);
111
+ const byId = new Map(rows.map((row) => [text(row.id), row]));
112
+ const ordered = [];
113
+ const visit = (id) => {
114
+ const row = byId.get(id);
115
+ if (row === undefined)
116
+ return;
117
+ ordered.push(row);
118
+ for (const child of byParent.get(id) ?? [])
119
+ visit(text(child.id));
120
+ };
121
+ visit(rootId);
122
+ return ordered;
123
+ }
124
+ function groupByParent(rows) {
125
+ const byParent = new Map();
126
+ for (const row of rows) {
127
+ const parent = nullableText(row.parent_id);
128
+ const list = byParent.get(parent) ?? [];
129
+ list.push(row);
130
+ byParent.set(parent, list);
131
+ }
132
+ for (const list of byParent.values())
133
+ list.sort(siblingCompare);
134
+ return byParent;
135
+ }
81
136
  async function assertSlugFree(tx, slug, exceptId) {
82
137
  const found = await tx.query(sql `select ${idColumn} from ${table} where ${slugColumn} = ${slug}`);
83
- const clash = found.rows.find((row) => text(row['id']) !== exceptId);
138
+ const clash = found.rows.find((row) => text(row.id) !== exceptId);
84
139
  if (clash === undefined)
85
140
  return;
86
141
  throw new CogentaError({
@@ -104,14 +159,14 @@ export function createTaxonomyStore(options) {
104
159
  const row = await rowOf(tx, parent);
105
160
  if (row === null)
106
161
  throw termNotFound(parent);
107
- return text(row['path']);
162
+ return text(row.path);
108
163
  }
109
164
  /** Last position among a parent's children, so a new term lands at the end. */
110
165
  async function nextPosition(tx, parent) {
111
166
  const found = await tx.query(parent === null
112
167
  ? sql `select ${positionColumn} from ${table} where ${parentColumn} is null`
113
168
  : sql `select ${positionColumn} from ${table} where ${parentColumn} = ${parent}`);
114
- return found.rows.reduce((highest, row) => Math.max(highest, Number(row['position']) + 1), 0);
169
+ return found.rows.reduce((highest, row) => Math.max(highest, Number(row.position) + 1), 0);
115
170
  }
116
171
  return {
117
172
  create: async (input) => db.transaction(async (tx) => {
@@ -177,7 +232,7 @@ export function createTaxonomyStore(options) {
177
232
  const row = await rowOf(tx, id);
178
233
  if (row === null)
179
234
  throw termNotFound(id);
180
- const from = text(row['path']);
235
+ const from = text(row.path);
181
236
  const parentPath = await parentPathOf(tx, parent);
182
237
  // A term cannot become its own descendant. With a materialised path
183
238
  // this is a string test, not a walk: the impossible move is exactly
@@ -199,12 +254,12 @@ export function createTaxonomyStore(options) {
199
254
  // the moved term itself would let a three-level branch slide past the
200
255
  // bound and be refused later, half-moved.
201
256
  for (const member of subtree.rows) {
202
- assertDepth(taxonomy.name, rebasedPath(text(member['path']), from, to));
257
+ assertDepth(taxonomy.name, rebasedPath(text(member.path), from, to));
203
258
  }
204
259
  const at = stamp();
205
260
  for (const member of subtree.rows) {
206
- const memberId = text(member['id']);
207
- const rebased = rebasedPath(text(member['path']), from, to);
261
+ const memberId = text(member.id);
262
+ const rebased = rebasedPath(text(member.path), from, to);
208
263
  await tx.query(sql `update ${table}
209
264
  set ${pathColumn} = ${rebased}, ${identifier('updated_at', dialect)} = ${at}
210
265
  where ${idColumn} = ${memberId}`);
@@ -222,28 +277,24 @@ export function createTaxonomyStore(options) {
222
277
  const row = await rowOf(db, listOptions.under);
223
278
  if (row === null)
224
279
  throw termNotFound(listOptions.under);
225
- const found = await db.query(sql `select * from ${table}
226
- where ${pathColumn} like ${`${text(row['path'])}%`}
227
- order by ${treeOrder}`);
228
- return found.rows.map(toTerm);
280
+ const found = await db.query(sql `select * from ${table} where ${pathColumn} like ${`${text(row.path)}%`}`);
281
+ return flattenSubtree(found.rows, listOptions.under).map(toTerm);
229
282
  }
230
283
  if (listOptions.parent !== undefined) {
231
284
  const found = await db.query(listOptions.parent === null
232
- ? sql `select * from ${table} where ${parentColumn} is null order by ${treeOrder}`
233
- : sql `select * from ${table} where ${parentColumn} = ${listOptions.parent} order by ${treeOrder}`);
234
- return found.rows.map(toTerm);
285
+ ? sql `select * from ${table} where ${parentColumn} is null`
286
+ : sql `select * from ${table} where ${parentColumn} = ${listOptions.parent}`);
287
+ return [...found.rows].sort(siblingCompare).map(toTerm);
235
288
  }
236
- const found = await db.query(sql `select * from ${table} order by ${treeOrder}`);
237
- return found.rows.map(toTerm);
289
+ const found = await db.query(sql `select * from ${table}`);
290
+ return flattenFullTree(found.rows).map(toTerm);
238
291
  },
239
292
  subtree: async (id) => {
240
293
  const row = await rowOf(db, id);
241
294
  if (row === null)
242
295
  throw termNotFound(id);
243
- const found = await db.query(sql `select * from ${table}
244
- where ${pathColumn} like ${`${text(row['path'])}%`}
245
- order by ${treeOrder}`);
246
- return found.rows.map(toTerm);
296
+ const found = await db.query(sql `select * from ${table} where ${pathColumn} like ${`${text(row.path)}%`}`);
297
+ return flattenSubtree(found.rows, id).map(toTerm);
247
298
  },
248
299
  ancestors: async (id) => {
249
300
  const row = await rowOf(db, id);
@@ -251,13 +302,13 @@ export function createTaxonomyStore(options) {
251
302
  throw termNotFound(id);
252
303
  // The path already *is* the ancestry, so this is one query by id list
253
304
  // rather than a walk of n queries up the tree.
254
- const ids = text(row['path'])
305
+ const ids = text(row.path)
255
306
  .split('/')
256
307
  .filter((segment) => segment !== '');
257
308
  if (ids.length === 0)
258
309
  return [];
259
310
  const found = await db.query(sql `select * from ${table} where ${idColumn} in (${valueList(ids)})`);
260
- const byId = new Map(found.rows.map((member) => [text(member['id']), member]));
311
+ const byId = new Map(found.rows.map((member) => [text(member.id), member]));
261
312
  return ids
262
313
  .map((ancestorId) => byId.get(ancestorId))
263
314
  .filter((member) => member !== undefined)
@@ -267,9 +318,9 @@ export function createTaxonomyStore(options) {
267
318
  const row = await rowOf(tx, id);
268
319
  if (row === null)
269
320
  return false;
270
- const path = text(row['path']);
321
+ const path = text(row.path);
271
322
  const descendants = await tx.query(sql `select ${idColumn}, ${pathColumn} from ${table} where ${pathColumn} like ${`${path}%`}`);
272
- const children = descendants.rows.filter((member) => isBelow(text(member['path']), path));
323
+ const children = descendants.rows.filter((member) => isBelow(text(member.path), path));
273
324
  // Refusing by default rather than cascading: deleting "Cuisine" must
274
325
  // not silently take "Desserts" and "Entrées" with it. The caller who
275
326
  // really means the whole branch says so.
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy-store.js","sourceRoot":"","sources":["../../src/store/taxonomy-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taxonomy-store.js","sourceRoot":"","sources":["../../src/store/taxonomy-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { type DatabaseHandle } from '@cogenta/core';
2
+ import type { CollectionDefinition, TaxonomyDefinition, TaxonomyTerm } from '../types.js';
3
+ /**
4
+ * How many entries carry a term (`08-taxonomies.md`, task 3).
5
+ *
6
+ * Two figures, because they answer two different questions: `own` is what a
7
+ * caller needs before renaming a term nobody meant to touch twice, and
8
+ * `withDescendants` is what a caller needs before deleting a branch — "Cuisine"
9
+ * itself may classify nothing while "Desserts" underneath it classifies forty
10
+ * articles, and a delete-confirmation that only showed `own` would call that
11
+ * branch empty.
12
+ */
13
+ export interface TermUsage {
14
+ readonly own: number;
15
+ readonly withDescendants: number;
16
+ }
17
+ export interface CountTaxonomyUsageOptions {
18
+ readonly db: DatabaseHandle;
19
+ readonly taxonomy: TaxonomyDefinition;
20
+ /** The taxonomy's terms, already fetched — this never re-lists them. */
21
+ readonly terms: readonly TaxonomyTerm[];
22
+ /** Every collection the site declares; only the ones referencing this taxonomy are queried. */
23
+ readonly collections: readonly CollectionDefinition[];
24
+ /**
25
+ * Whether the caller may read this collection at all. A collection this
26
+ * actor cannot read contributes nothing — not even a zero, which would
27
+ * still disclose that it exists.
28
+ */
29
+ readonly readable: (collectionName: string) => boolean;
30
+ /**
31
+ * Whether unpublished entries of this collection count too. The permission
32
+ * layer decides this, once, per collection — this function never guesses.
33
+ */
34
+ readonly includeDrafts: (collectionName: string) => boolean;
35
+ }
36
+ /**
37
+ * Counts how many entries carry each term of a taxonomy, direct and with
38
+ * descendants.
39
+ *
40
+ * One `group by` per taxonomy field found across the site's collections —
41
+ * never a query per term, which would be one round trip per row of a
42
+ * three-hundred-term taxonomy. The subtree figure is then a plain tree
43
+ * aggregation over `terms`, which the caller already has: no second read of
44
+ * the materialised path, and no recursive CTE (ADR-0006).
45
+ */
46
+ export declare function countTaxonomyUsage(options: CountTaxonomyUsageOptions): Promise<ReadonlyMap<string, TermUsage>>;
47
+ //# sourceMappingURL=taxonomy-usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taxonomy-usage.d.ts","sourceRoot":"","sources":["../../src/store/taxonomy-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,eAAe,CAAA;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAIzF;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAA;IACrC,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAA;IACvC,+FAA+F;IAC/F,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAA;IACrD;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAA;IACtD;;;OAGG;IACH,QAAQ,CAAC,aAAa,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAA;CAC5D;AAOD;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CA0FzC"}
@@ -0,0 +1,101 @@
1
+ import { identifier, sql } from '@cogenta/core';
2
+ import { columnFor, entriesTable, relationTable } from './naming.js';
3
+ import { relationsOf } from './tables.js';
4
+ function toNumber(value) {
5
+ const parsed = Number(value);
6
+ return Number.isFinite(parsed) ? parsed : 0;
7
+ }
8
+ /**
9
+ * Counts how many entries carry each term of a taxonomy, direct and with
10
+ * descendants.
11
+ *
12
+ * One `group by` per taxonomy field found across the site's collections —
13
+ * never a query per term, which would be one round trip per row of a
14
+ * three-hundred-term taxonomy. The subtree figure is then a plain tree
15
+ * aggregation over `terms`, which the caller already has: no second read of
16
+ * the materialised path, and no recursive CTE (ADR-0006).
17
+ */
18
+ export async function countTaxonomyUsage(options) {
19
+ const { db, taxonomy, terms, collections, readable, includeDrafts } = options;
20
+ const dialect = db.dialect;
21
+ const own = new Map();
22
+ const addOwn = (termId, count) => {
23
+ if (count === 0)
24
+ return;
25
+ own.set(termId, (own.get(termId) ?? 0) + count);
26
+ };
27
+ const deletedAtColumn = identifier('deleted_at', dialect);
28
+ const statusColumn = identifier('status', dialect);
29
+ const idColumn = identifier('id', dialect);
30
+ const cntAlias = identifier('cnt', dialect);
31
+ const termIdAlias = identifier('term_id', dialect);
32
+ for (const collection of collections) {
33
+ if (!readable(collection.name))
34
+ continue;
35
+ const relevant = relationsOf(collection).filter((relation) => relation.kind === 'taxonomy' && relation.to === taxonomy.name);
36
+ if (relevant.length === 0)
37
+ continue;
38
+ const entries = identifier(entriesTable(collection.name), dialect);
39
+ // Drafts count too only when this actor may read them on this very
40
+ // collection — the same door `canReadUnpublished` guards everywhere else
41
+ // (BLOCKERS.md: "le compteur peut fuiter").
42
+ const statusFilter = includeDrafts(collection.name)
43
+ ? sql ``
44
+ : sql ` and ${statusColumn} = ${'published'}`;
45
+ for (const relation of relevant) {
46
+ if (relation.many) {
47
+ const join = identifier(relationTable(collection.name, relation.field), dialect);
48
+ const targetColumn = identifier('target_id', dialect);
49
+ const entryIdColumn = identifier('entry_id', dialect);
50
+ const found = await db.query(sql `select jt.${targetColumn} as ${termIdAlias}, count(distinct jt.${entryIdColumn}) as ${cntAlias}
51
+ from ${join} jt
52
+ join ${entries} e on e.${idColumn} = jt.${entryIdColumn}
53
+ where e.${deletedAtColumn} is null${statusFilter}
54
+ group by jt.${targetColumn}`);
55
+ for (const row of found.rows)
56
+ addOwn(String(row.term_id), toNumber(row.cnt));
57
+ }
58
+ else {
59
+ const column = identifier(columnFor(relation.field), dialect);
60
+ const found = await db.query(sql `select ${column} as ${termIdAlias}, count(*) as ${cntAlias}
61
+ from ${entries}
62
+ where ${deletedAtColumn} is null and ${column} is not null${statusFilter}
63
+ group by ${column}`);
64
+ for (const row of found.rows)
65
+ addOwn(String(row.term_id), toNumber(row.cnt));
66
+ }
67
+ }
68
+ }
69
+ // Tree aggregation, post-order, over the terms the caller already fetched —
70
+ // parent pointers rather than the materialised path, because the admin
71
+ // client never sees the path (it is a storage decision, ADR-0022) and this
72
+ // function is written to need nothing more than what a client already has.
73
+ const childrenOf = new Map();
74
+ for (const term of terms) {
75
+ const list = childrenOf.get(term.parent) ?? [];
76
+ list.push(term.id);
77
+ childrenOf.set(term.parent, list);
78
+ }
79
+ const withDescendants = new Map();
80
+ const subtreeTotal = (id) => {
81
+ const cached = withDescendants.get(id);
82
+ if (cached !== undefined)
83
+ return cached;
84
+ let total = own.get(id) ?? 0;
85
+ for (const childId of childrenOf.get(id) ?? [])
86
+ total += subtreeTotal(childId);
87
+ withDescendants.set(id, total);
88
+ return total;
89
+ };
90
+ for (const term of terms)
91
+ subtreeTotal(term.id);
92
+ const result = new Map();
93
+ for (const term of terms) {
94
+ result.set(term.id, {
95
+ own: own.get(term.id) ?? 0,
96
+ withDescendants: withDescendants.get(term.id) ?? 0,
97
+ });
98
+ }
99
+ return result;
100
+ }
101
+ //# sourceMappingURL=taxonomy-usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taxonomy-usage.js","sourceRoot":"","sources":["../../src/store/taxonomy-usage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import { type DatabaseHandle } from '@cogenta/core';
2
+ /**
3
+ * Theme overrides (fiche 14 task 0-4): the DB half of the two-source-of-truth
4
+ * design the fiche's task 0 settles on. `theme.tokens.json` next to the
5
+ * config stays the versioned default a project ships with; this table is
6
+ * where a signed-in `admin` changes the live site's appearance without a
7
+ * terminal, a redeploy, or a write to a source file the running process may
8
+ * not even be allowed to touch (a read-only container filesystem, most
9
+ * hosts). `cogenta serve` overlays this row on top of the file's tokens on
10
+ * every request — see `theme-render.ts` — which is what makes a change show
11
+ * up without a restart, the same promise contract D's hot-swappable skin
12
+ * already made for the file alone.
13
+ *
14
+ * One row, updated in place — the same shape `MaintenanceState` already
15
+ * uses: no locale, no version, no trash, because this is a feature flag's
16
+ * worth of state, not content (contract A).
17
+ *
18
+ * `tokenOverrides` is a *partial* token tree (`SkinTokenOverrides` in
19
+ * `@cogenta/render`) — only the keys an editor actually changed — kept as
20
+ * opaque JSON here on purpose: this package does not depend on
21
+ * `@cogenta/render`, so nothing here parses or validates the shape. That is
22
+ * the caller's job (the theme router, with the real `validateSkin`), every
23
+ * single time a value is about to be written or served — this store never
24
+ * decides what a valid skin looks like, only where the bytes live.
25
+ */
26
+ export declare const THEME_TABLE = "cogenta_theme";
27
+ export interface ThemeOverridesState {
28
+ /** Partial token overlay (`SkinTokenOverrides`), or `null` when nothing has been overridden. */
29
+ readonly tokenOverrides: Record<string, unknown> | null;
30
+ /** Extra CSS appended after the skin/theme sheets, or `null`. Never inlined as a `<style>` tag — see `theme-render.ts`. */
31
+ readonly additionalCss: string | null;
32
+ readonly logoMediaId: string | null;
33
+ readonly logoDarkMediaId: string | null;
34
+ readonly faviconMediaId: string | null;
35
+ readonly shareImageMediaId: string | null;
36
+ /**
37
+ * The installed theme *package* rendering the public site — a name like
38
+ * `@cogenta/theme-portfolio`, resolved by `@cogenta/cli`'s theme registry
39
+ * against the packages actually installed. `null` means the built-in
40
+ * default (`@cogenta/theme-canonical`). Distinct from every field above,
41
+ * which only ever changes *colours* within whichever theme is active — this
42
+ * is the one field that changes which package renders the layout at all,
43
+ * and it is read live on every request the same way the others are, so
44
+ * switching it takes effect on the very next page view, no restart.
45
+ */
46
+ readonly activeTheme: string | null;
47
+ readonly updatedAt: string;
48
+ readonly updatedBy: string | null;
49
+ }
50
+ export interface SetThemeOverridesInput {
51
+ /** `undefined` leaves the field as it was; `null` clears it. */
52
+ readonly tokenOverrides?: Record<string, unknown> | null;
53
+ readonly additionalCss?: string | null;
54
+ readonly logoMediaId?: string | null;
55
+ readonly logoDarkMediaId?: string | null;
56
+ readonly faviconMediaId?: string | null;
57
+ readonly shareImageMediaId?: string | null;
58
+ readonly activeTheme?: string | null;
59
+ readonly updatedBy?: string | null;
60
+ }
61
+ export interface ThemeStoreOptions {
62
+ readonly db: DatabaseHandle;
63
+ readonly now?: () => Date;
64
+ }
65
+ export interface ThemeStore {
66
+ get(): Promise<ThemeOverridesState>;
67
+ set(input: SetThemeOverridesInput): Promise<ThemeOverridesState>;
68
+ /** Clears every override in one call — the appearance screen's "reset to file" action. */
69
+ clear(updatedBy: string | null): Promise<ThemeOverridesState>;
70
+ }
71
+ export declare function ensureThemeTable(db: DatabaseHandle): Promise<void>;
72
+ export declare function createThemeStore(options: ThemeStoreOptions): ThemeStore;
73
+ //# sourceMappingURL=theme-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-store.d.ts","sourceRoot":"","sources":["../../src/store/theme-store.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAKpB,MAAM,eAAe,CAAA;AAGtB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,eAAO,MAAM,WAAW,kBAAkB,CAAA;AAI1C,MAAM,WAAW,mBAAmB;IAClC,gGAAgG;IAChG,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACvD,2HAA2H;IAC3H,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IACzC;;;;;;;;;OASG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,sBAAsB;IACrC,gEAAgE;IAChE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACxD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAA;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACnC,GAAG,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAChE,0FAA0F;IAC1F,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;CAC9D;AAaD,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BxE;AAiCD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,UAAU,CAkJvE"}