@burdenoff/microfe-planmagnet 2026.930.25 → 2026.1001.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/dist/_virtual/__vite-browser-external.js +9 -0
  2. package/dist/_virtual/__vite-browser-external.js.map +1 -0
  3. package/dist/_virtual/_rolldown/runtime.js +5 -2
  4. package/dist/index.js +3 -1
  5. package/dist/node_modules/fflate/esm/browser.js +554 -0
  6. package/dist/node_modules/fflate/esm/browser.js.map +1 -0
  7. package/dist/node_modules/jszip/dist/jszip.min.js +3038 -0
  8. package/dist/node_modules/jszip/dist/jszip.min.js.map +1 -0
  9. package/dist/node_modules/pptxgenjs/dist/pptxgen.es.js +2151 -0
  10. package/dist/node_modules/pptxgenjs/dist/pptxgen.es.js.map +1 -0
  11. package/dist/node_modules/write-excel-file/browser/index.js +3 -0
  12. package/dist/node_modules/write-excel-file/modules/export/convertFileContentToUint8ArrayBrowser.js +13 -0
  13. package/dist/node_modules/write-excel-file/modules/export/convertFileContentToUint8ArrayBrowser.js.map +1 -0
  14. package/dist/node_modules/write-excel-file/modules/export/convertFilesContentToUint8Arrays.js +21 -0
  15. package/dist/node_modules/write-excel-file/modules/export/convertFilesContentToUint8Arrays.js.map +1 -0
  16. package/dist/node_modules/write-excel-file/modules/export/downloadBlob.js +11 -0
  17. package/dist/node_modules/write-excel-file/modules/export/downloadBlob.js.map +1 -0
  18. package/dist/node_modules/write-excel-file/modules/export/writeXlsxFileBrowser.js +23 -0
  19. package/dist/node_modules/write-excel-file/modules/export/writeXlsxFileBrowser.js.map +1 -0
  20. package/dist/node_modules/write-excel-file/modules/export/writeXlsxFileUniversal.js +22 -0
  21. package/dist/node_modules/write-excel-file/modules/export/writeXlsxFileUniversal.js.map +1 -0
  22. package/dist/node_modules/write-excel-file/modules/getSheetData/getSheetData.js +18 -0
  23. package/dist/node_modules/write-excel-file/modules/getSheetData/getSheetData.js.map +1 -0
  24. package/dist/node_modules/write-excel-file/modules/xlsx/features/conditionalFormatting.js +131 -0
  25. package/dist/node_modules/write-excel-file/modules/xlsx/features/conditionalFormatting.js.map +1 -0
  26. package/dist/node_modules/write-excel-file/modules/xlsx/features/images.js +188 -0
  27. package/dist/node_modules/write-excel-file/modules/xlsx/features/images.js.map +1 -0
  28. package/dist/node_modules/write-excel-file/modules/xlsx/features/stickyRowsOrColumns.js +52 -0
  29. package/dist/node_modules/write-excel-file/modules/xlsx/features/stickyRowsOrColumns.js.map +1 -0
  30. package/dist/node_modules/write-excel-file/modules/xlsx/files/_Content_Types_.xml.js +18 -0
  31. package/dist/node_modules/write-excel-file/modules/xlsx/files/_Content_Types_.xml.js.map +1 -0
  32. package/dist/node_modules/write-excel-file/modules/xlsx/files/drawing.xml.js +18 -0
  33. package/dist/node_modules/write-excel-file/modules/xlsx/files/drawing.xml.js.map +1 -0
  34. package/dist/node_modules/write-excel-file/modules/xlsx/files/drawing.xml.rels.js +17 -0
  35. package/dist/node_modules/write-excel-file/modules/xlsx/files/drawing.xml.rels.js.map +1 -0
  36. package/dist/node_modules/write-excel-file/modules/xlsx/files/rels.js +11 -0
  37. package/dist/node_modules/write-excel-file/modules/xlsx/files/rels.js.map +1 -0
  38. package/dist/node_modules/write-excel-file/modules/xlsx/files/sharedStrings.xml.js +42 -0
  39. package/dist/node_modules/write-excel-file/modules/xlsx/files/sharedStrings.xml.js.map +1 -0
  40. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/cell.js +102 -0
  41. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/cell.js.map +1 -0
  42. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/column.js +17 -0
  43. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/column.js.map +1 -0
  44. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/columns.js +15 -0
  45. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/columns.js.map +1 -0
  46. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/drawingReference.js +8 -0
  47. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/drawingReference.js.map +1 -0
  48. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/helpers/getCellStyleProperties.js +71 -0
  49. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/helpers/getCellStyleProperties.js.map +1 -0
  50. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/mergedCellsDescription.js +56 -0
  51. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/mergedCellsDescription.js.map +1 -0
  52. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/pageMargins.js +15 -0
  53. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/pageMargins.js.map +1 -0
  54. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/pageSetup.js +13 -0
  55. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/pageSetup.js.map +1 -0
  56. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/processMergedCells.js +44 -0
  57. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/processMergedCells.js.map +1 -0
  58. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/row.js +123 -0
  59. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/row.js.map +1 -0
  60. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/sheet.xml.js +41 -0
  61. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/sheet.xml.js.map +1 -0
  62. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/sheetData.js +11 -0
  63. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/sheetData.js.map +1 -0
  64. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/sheetViews.js +17 -0
  65. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml/sheetViews.js.map +1 -0
  66. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml.rels.js +20 -0
  67. package/dist/node_modules/write-excel-file/modules/xlsx/files/sheet.xml.rels.js.map +1 -0
  68. package/dist/node_modules/write-excel-file/modules/xlsx/files/styles.xml.js +77 -0
  69. package/dist/node_modules/write-excel-file/modules/xlsx/files/styles.xml.js.map +1 -0
  70. package/dist/node_modules/write-excel-file/modules/xlsx/files/workbook.xml.js +22 -0
  71. package/dist/node_modules/write-excel-file/modules/xlsx/files/workbook.xml.js.map +1 -0
  72. package/dist/node_modules/write-excel-file/modules/xlsx/files/workbook.xml.rels.js +13 -0
  73. package/dist/node_modules/write-excel-file/modules/xlsx/files/workbook.xml.rels.js.map +1 -0
  74. package/dist/node_modules/write-excel-file/modules/xlsx/generateXlsxFileContents.js +242 -0
  75. package/dist/node_modules/write-excel-file/modules/xlsx/generateXlsxFileContents.js.map +1 -0
  76. package/dist/node_modules/write-excel-file/modules/xlsx/getFeatures.js +29 -0
  77. package/dist/node_modules/write-excel-file/modules/xlsx/getFeatures.js.map +1 -0
  78. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/convertDateToSerialNumber.js +9 -0
  79. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/convertDateToSerialNumber.js.map +1 -0
  80. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/getAdditionalContent.js +42 -0
  81. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/getAdditionalContent.js.map +1 -0
  82. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/getElementXml.js +43 -0
  83. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/getElementXml.js.map +1 -0
  84. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/getWrittenFiles.js +93 -0
  85. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/getWrittenFiles.js.map +1 -0
  86. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/transformContent.js +39 -0
  87. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/features/transformContent.js.map +1 -0
  88. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getAlignmentXml.js +17 -0
  89. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getAlignmentXml.js.map +1 -0
  90. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getBorderXml.js +29 -0
  91. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getBorderXml.js.map +1 -0
  92. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getCellAddress.js +14 -0
  93. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getCellAddress.js.map +1 -0
  94. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getFileExtensionForContentType.js +11 -0
  95. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getFileExtensionForContentType.js.map +1 -0
  96. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getFillXml.js +14 -0
  97. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getFillXml.js.map +1 -0
  98. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getFontXml.js +12 -0
  99. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getFontXml.js.map +1 -0
  100. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getOrderOfSiblings.js +24 -0
  101. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getOrderOfSiblings.js.map +1 -0
  102. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getXlsxColorForHexColor.js +9 -0
  103. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/getXlsxColorForHexColor.js.map +1 -0
  104. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasAlignment.js +9 -0
  105. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasAlignment.js.map +1 -0
  106. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasBorder.js +9 -0
  107. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasBorder.js.map +1 -0
  108. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasFill.js +9 -0
  109. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasFill.js.map +1 -0
  110. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasFont.js +9 -0
  111. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/hasFont.js.map +1 -0
  112. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/isCellObject.js +9 -0
  113. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/isCellObject.js.map +1 -0
  114. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/isObject.js +9 -0
  115. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/isObject.js.map +1 -0
  116. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/orderOfSiblings.js +27 -0
  117. package/dist/node_modules/write-excel-file/modules/xlsx/helpers/orderOfSiblings.js.map +1 -0
  118. package/dist/node_modules/write-excel-file/modules/xlsx/initializeSharedStrings.js +17 -0
  119. package/dist/node_modules/write-excel-file/modules/xlsx/initializeSharedStrings.js.map +1 -0
  120. package/dist/node_modules/write-excel-file/modules/xlsx/initializeSheets.js +74 -0
  121. package/dist/node_modules/write-excel-file/modules/xlsx/initializeSheets.js.map +1 -0
  122. package/dist/node_modules/write-excel-file/modules/xlsx/initializeStyles.js +138 -0
  123. package/dist/node_modules/write-excel-file/modules/xlsx/initializeStyles.js.map +1 -0
  124. package/dist/node_modules/write-excel-file/modules/xlsx/validateSheetData.js +40 -0
  125. package/dist/node_modules/write-excel-file/modules/xlsx/validateSheetData.js.map +1 -0
  126. package/dist/node_modules/write-excel-file/modules/xlsx/validateSheetName.js +11 -0
  127. package/dist/node_modules/write-excel-file/modules/xlsx/validateSheetName.js.map +1 -0
  128. package/dist/node_modules/write-excel-file/modules/xml/appendMarkupInsideElement.js +9 -0
  129. package/dist/node_modules/write-excel-file/modules/xml/appendMarkupInsideElement.js.map +1 -0
  130. package/dist/node_modules/write-excel-file/modules/xml/applyEnclosingElementOffset.js +9 -0
  131. package/dist/node_modules/write-excel-file/modules/xml/applyEnclosingElementOffset.js.map +1 -0
  132. package/dist/node_modules/write-excel-file/modules/xml/escapeXmlSpecialCharacters.js +12 -0
  133. package/dist/node_modules/write-excel-file/modules/xml/escapeXmlSpecialCharacters.js.map +1 -0
  134. package/dist/node_modules/write-excel-file/modules/xml/findElement.js +12 -0
  135. package/dist/node_modules/write-excel-file/modules/xml/findElement.js.map +1 -0
  136. package/dist/node_modules/write-excel-file/modules/xml/findElementInsideElement.js +12 -0
  137. package/dist/node_modules/write-excel-file/modules/xml/findElementInsideElement.js.map +1 -0
  138. package/dist/node_modules/write-excel-file/modules/xml/findElementsNonRecursive_.js +41 -0
  139. package/dist/node_modules/write-excel-file/modules/xml/findElementsNonRecursive_.js.map +1 -0
  140. package/dist/node_modules/write-excel-file/modules/xml/getAttributesString.js +14 -0
  141. package/dist/node_modules/write-excel-file/modules/xml/getAttributesString.js.map +1 -0
  142. package/dist/node_modules/write-excel-file/modules/xml/getChildElements.js +42 -0
  143. package/dist/node_modules/write-excel-file/modules/xml/getChildElements.js.map +1 -0
  144. package/dist/node_modules/write-excel-file/modules/xml/getClosingTagMarkup.js +8 -0
  145. package/dist/node_modules/write-excel-file/modules/xml/getClosingTagMarkup.js.map +1 -0
  146. package/dist/node_modules/write-excel-file/modules/xml/getMarkupInsideElement.js +8 -0
  147. package/dist/node_modules/write-excel-file/modules/xml/getMarkupInsideElement.js.map +1 -0
  148. package/dist/node_modules/write-excel-file/modules/xml/getOpeningTagMarkup.js +9 -0
  149. package/dist/node_modules/write-excel-file/modules/xml/getOpeningTagMarkup.js.map +1 -0
  150. package/dist/node_modules/write-excel-file/modules/xml/getSelfClosingTagMarkup.js +9 -0
  151. package/dist/node_modules/write-excel-file/modules/xml/getSelfClosingTagMarkup.js.map +1 -0
  152. package/dist/node_modules/write-excel-file/modules/xml/insertElementMarkupAccordingToOrderOfSiblings.js +64 -0
  153. package/dist/node_modules/write-excel-file/modules/xml/insertElementMarkupAccordingToOrderOfSiblings.js.map +1 -0
  154. package/dist/node_modules/write-excel-file/modules/xml/prependMarkupInsideElement.js +9 -0
  155. package/dist/node_modules/write-excel-file/modules/xml/prependMarkupInsideElement.js.map +1 -0
  156. package/dist/node_modules/write-excel-file/modules/xml/removeInvalidXmlCharacters.js +9 -0
  157. package/dist/node_modules/write-excel-file/modules/xml/removeInvalidXmlCharacters.js.map +1 -0
  158. package/dist/node_modules/write-excel-file/modules/xml/replaceElement.js +8 -0
  159. package/dist/node_modules/write-excel-file/modules/xml/replaceElement.js.map +1 -0
  160. package/dist/node_modules/write-excel-file/modules/xml/sanitizeAttributeName.js +10 -0
  161. package/dist/node_modules/write-excel-file/modules/xml/sanitizeAttributeName.js.map +1 -0
  162. package/dist/node_modules/write-excel-file/modules/xml/sanitizeAttributeValue.js +11 -0
  163. package/dist/node_modules/write-excel-file/modules/xml/sanitizeAttributeValue.js.map +1 -0
  164. package/dist/node_modules/write-excel-file/modules/xml/sanitizeTextContent.js +11 -0
  165. package/dist/node_modules/write-excel-file/modules/xml/sanitizeTextContent.js.map +1 -0
  166. package/dist/node_modules/write-excel-file/modules/xml/setMarkupInsideElement.js +8 -0
  167. package/dist/node_modules/write-excel-file/modules/xml/setMarkupInsideElement.js.map +1 -0
  168. package/dist/node_modules/write-excel-file/modules/zip/zipToArrayBuffer.js +18 -0
  169. package/dist/node_modules/write-excel-file/modules/zip/zipToArrayBuffer.js.map +1 -0
  170. package/dist/planmagnet/PlanMagnetRoot.d.ts.map +1 -1
  171. package/dist/planmagnet/PlanMagnetRoot.js +160 -147
  172. package/dist/planmagnet/PlanMagnetRoot.js.map +1 -1
  173. package/dist/planmagnet/PlanMagnetRoutes.d.ts.map +1 -1
  174. package/dist/planmagnet/PlanMagnetRoutes.js +126 -106
  175. package/dist/planmagnet/PlanMagnetRoutes.js.map +1 -1
  176. package/dist/planmagnet/comments/CommentThread.js +36 -36
  177. package/dist/planmagnet/comments/RoadmapComments.js +21 -21
  178. package/dist/planmagnet/controls/AutomationRuleControls.js +24 -24
  179. package/dist/planmagnet/controls/FeatureControls.js +60 -60
  180. package/dist/planmagnet/controls/Pickers.d.ts +10 -0
  181. package/dist/planmagnet/controls/Pickers.d.ts.map +1 -1
  182. package/dist/planmagnet/controls/Pickers.js +75 -27
  183. package/dist/planmagnet/controls/Pickers.js.map +1 -1
  184. package/dist/planmagnet/controls/SyncControls.js +59 -59
  185. package/dist/planmagnet/discussion/WorkItemDiscussionPanel.js +15 -15
  186. package/dist/planmagnet/docs/DocSuggestionsPanel.js +12 -12
  187. package/dist/planmagnet/docs/DocVersionCompare.js +3 -3
  188. package/dist/planmagnet/forecast/DeliveryForecastCard.d.ts +12 -0
  189. package/dist/planmagnet/forecast/DeliveryForecastCard.d.ts.map +1 -0
  190. package/dist/planmagnet/forecast/DeliveryForecastCard.js +208 -0
  191. package/dist/planmagnet/forecast/DeliveryForecastCard.js.map +1 -0
  192. package/dist/planmagnet/forecast/ProjectOutlookCard.d.ts +5 -0
  193. package/dist/planmagnet/forecast/ProjectOutlookCard.d.ts.map +1 -0
  194. package/dist/planmagnet/forecast/ProjectOutlookCard.js +190 -0
  195. package/dist/planmagnet/forecast/ProjectOutlookCard.js.map +1 -0
  196. package/dist/planmagnet/forecast/ProjectRiskSummaryCard.d.ts +5 -0
  197. package/dist/planmagnet/forecast/ProjectRiskSummaryCard.d.ts.map +1 -0
  198. package/dist/planmagnet/forecast/ProjectRiskSummaryCard.js +99 -0
  199. package/dist/planmagnet/forecast/ProjectRiskSummaryCard.js.map +1 -0
  200. package/dist/planmagnet/forecast/ResourceForecastCard.d.ts +8 -0
  201. package/dist/planmagnet/forecast/ResourceForecastCard.d.ts.map +1 -0
  202. package/dist/planmagnet/forecast/ResourceForecastCard.js +185 -0
  203. package/dist/planmagnet/forecast/ResourceForecastCard.js.map +1 -0
  204. package/dist/planmagnet/forecast/riskFlags.d.ts +35 -0
  205. package/dist/planmagnet/forecast/riskFlags.d.ts.map +1 -0
  206. package/dist/planmagnet/forecast/riskFlags.js +37 -0
  207. package/dist/planmagnet/forecast/riskFlags.js.map +1 -0
  208. package/dist/planmagnet/index.d.ts +2 -0
  209. package/dist/planmagnet/index.d.ts.map +1 -1
  210. package/dist/planmagnet/index.js +2 -0
  211. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.d.ts.map +1 -1
  212. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js +216 -182
  213. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
  214. package/dist/planmagnet/pages/AutomationAutomationRuleDetailPagePage.js +11 -11
  215. package/dist/planmagnet/pages/AutomationCreateAutomationRulePagePage.js +4 -4
  216. package/dist/planmagnet/pages/DocsDocDetailPagePage.js +163 -163
  217. package/dist/planmagnet/pages/DocsDocDetailPagePage.js.map +1 -1
  218. package/dist/planmagnet/pages/IntegrationsNewSyncPagePage.js +165 -165
  219. package/dist/planmagnet/pages/IntegrationsNewSyncPagePage.js.map +1 -1
  220. package/dist/planmagnet/pages/ProjectsAtRiskPagePage.d.ts +2 -0
  221. package/dist/planmagnet/pages/ProjectsAtRiskPagePage.d.ts.map +1 -0
  222. package/dist/planmagnet/pages/ProjectsAtRiskPagePage.js +234 -0
  223. package/dist/planmagnet/pages/ProjectsAtRiskPagePage.js.map +1 -0
  224. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.d.ts.map +1 -1
  225. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.js +206 -182
  226. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.js.map +1 -1
  227. package/dist/planmagnet/pages/ReportsCreateReportPagePage.d.ts +6 -0
  228. package/dist/planmagnet/pages/ReportsCreateReportPagePage.d.ts.map +1 -1
  229. package/dist/planmagnet/pages/ReportsCreateReportPagePage.js +5 -177
  230. package/dist/planmagnet/pages/ReportsCreateReportPagePage.js.map +1 -1
  231. package/dist/planmagnet/pages/ReportsEditReportPagePage.d.ts +3 -0
  232. package/dist/planmagnet/pages/ReportsEditReportPagePage.d.ts.map +1 -0
  233. package/dist/planmagnet/pages/ReportsEditReportPagePage.js +15 -0
  234. package/dist/planmagnet/pages/ReportsEditReportPagePage.js.map +1 -0
  235. package/dist/planmagnet/pages/ReportsReportPagePage.d.ts +7 -0
  236. package/dist/planmagnet/pages/ReportsReportPagePage.d.ts.map +1 -0
  237. package/dist/planmagnet/pages/ReportsReportPagePage.js +226 -0
  238. package/dist/planmagnet/pages/ReportsReportPagePage.js.map +1 -0
  239. package/dist/planmagnet/pages/ReportsReportsPagePage.d.ts.map +1 -1
  240. package/dist/planmagnet/pages/ReportsReportsPagePage.js +224 -496
  241. package/dist/planmagnet/pages/ReportsReportsPagePage.js.map +1 -1
  242. package/dist/planmagnet/pages/TeamTeamDetailPagePage.d.ts.map +1 -1
  243. package/dist/planmagnet/pages/TeamTeamDetailPagePage.js +88 -83
  244. package/dist/planmagnet/pages/TeamTeamDetailPagePage.js.map +1 -1
  245. package/dist/planmagnet/pages/analytics/SprintDeliveryCards.d.ts.map +1 -1
  246. package/dist/planmagnet/pages/analytics/SprintDeliveryCards.js +139 -112
  247. package/dist/planmagnet/pages/analytics/SprintDeliveryCards.js.map +1 -1
  248. package/dist/planmagnet/pages/analytics/StatusFlowCard.js +21 -21
  249. package/dist/planmagnet/product/ProductControls.js +91 -91
  250. package/dist/planmagnet/reports/ExportMenu.d.ts +9 -0
  251. package/dist/planmagnet/reports/ExportMenu.d.ts.map +1 -0
  252. package/dist/planmagnet/reports/ExportMenu.js +116 -0
  253. package/dist/planmagnet/reports/ExportMenu.js.map +1 -0
  254. package/dist/planmagnet/reports/PrintReportView.d.ts +24 -0
  255. package/dist/planmagnet/reports/PrintReportView.d.ts.map +1 -0
  256. package/dist/planmagnet/reports/PrintReportView.js +75 -0
  257. package/dist/planmagnet/reports/PrintReportView.js.map +1 -0
  258. package/dist/planmagnet/reports/ReportBuilderCanvas.d.ts +8 -0
  259. package/dist/planmagnet/reports/ReportBuilderCanvas.d.ts.map +1 -0
  260. package/dist/planmagnet/reports/ReportBuilderCanvas.js +261 -0
  261. package/dist/planmagnet/reports/ReportBuilderCanvas.js.map +1 -0
  262. package/dist/planmagnet/reports/ReportBuilderPage.d.ts +5 -0
  263. package/dist/planmagnet/reports/ReportBuilderPage.d.ts.map +1 -0
  264. package/dist/planmagnet/reports/ReportBuilderPage.js +198 -0
  265. package/dist/planmagnet/reports/ReportBuilderPage.js.map +1 -0
  266. package/dist/planmagnet/reports/ReportRunHistory.d.ts +8 -0
  267. package/dist/planmagnet/reports/ReportRunHistory.d.ts.map +1 -0
  268. package/dist/planmagnet/reports/ReportRunHistory.js +63 -0
  269. package/dist/planmagnet/reports/ReportRunHistory.js.map +1 -0
  270. package/dist/planmagnet/reports/ReportWidgetRenderer.d.ts +7 -0
  271. package/dist/planmagnet/reports/ReportWidgetRenderer.d.ts.map +1 -0
  272. package/dist/planmagnet/reports/ReportWidgetRenderer.js +251 -0
  273. package/dist/planmagnet/reports/ReportWidgetRenderer.js.map +1 -0
  274. package/dist/planmagnet/reports/SchedulesPanel.d.ts +4 -0
  275. package/dist/planmagnet/reports/SchedulesPanel.d.ts.map +1 -0
  276. package/dist/planmagnet/reports/SchedulesPanel.js +457 -0
  277. package/dist/planmagnet/reports/SchedulesPanel.js.map +1 -0
  278. package/dist/planmagnet/reports/ShareDialog.d.ts +5 -0
  279. package/dist/planmagnet/reports/ShareDialog.d.ts.map +1 -0
  280. package/dist/planmagnet/reports/ShareDialog.js +234 -0
  281. package/dist/planmagnet/reports/ShareDialog.js.map +1 -0
  282. package/dist/planmagnet/reports/SharedReportPage.d.ts +4 -0
  283. package/dist/planmagnet/reports/SharedReportPage.d.ts.map +1 -0
  284. package/dist/planmagnet/reports/SharedReportPage.js +180 -0
  285. package/dist/planmagnet/reports/SharedReportPage.js.map +1 -0
  286. package/dist/planmagnet/reports/WidgetEditorDialog.d.ts +10 -0
  287. package/dist/planmagnet/reports/WidgetEditorDialog.d.ts.map +1 -0
  288. package/dist/planmagnet/reports/WidgetEditorDialog.js +220 -0
  289. package/dist/planmagnet/reports/WidgetEditorDialog.js.map +1 -0
  290. package/dist/planmagnet/reports/reportExportPptx.d.ts +4 -0
  291. package/dist/planmagnet/reports/reportExportPptx.d.ts.map +1 -0
  292. package/dist/planmagnet/reports/reportExportPptx.js +118 -0
  293. package/dist/planmagnet/reports/reportExportPptx.js.map +1 -0
  294. package/dist/planmagnet/reports/reportExportXlsx.d.ts +4 -0
  295. package/dist/planmagnet/reports/reportExportXlsx.d.ts.map +1 -0
  296. package/dist/planmagnet/reports/reportExportXlsx.js +42 -0
  297. package/dist/planmagnet/reports/reportExportXlsx.js.map +1 -0
  298. package/dist/planmagnet/reports/reportGraphql.d.ts +28 -0
  299. package/dist/planmagnet/reports/reportGraphql.d.ts.map +1 -0
  300. package/dist/planmagnet/reports/reportGraphql.js +360 -0
  301. package/dist/planmagnet/reports/reportGraphql.js.map +1 -0
  302. package/dist/planmagnet/reports/reportModel.d.ts +198 -0
  303. package/dist/planmagnet/reports/reportModel.d.ts.map +1 -0
  304. package/dist/planmagnet/reports/reportModel.js +328 -0
  305. package/dist/planmagnet/reports/reportModel.js.map +1 -0
  306. package/dist/planmagnet/reports/sharedReportRoute.d.ts +15 -0
  307. package/dist/planmagnet/reports/sharedReportRoute.d.ts.map +1 -0
  308. package/dist/planmagnet/reports/sharedReportRoute.js +9 -0
  309. package/dist/planmagnet/reports/sharedReportRoute.js.map +1 -0
  310. package/dist/planmagnet/roadmaps/RoadmapControls.js +60 -60
  311. package/dist/planmagnet/roadmaps/RoadmapNowNextLater.js +30 -30
  312. package/dist/planmagnet/roadmaps/RoadmapReviewPanel.js +21 -21
  313. package/dist/planmagnet/roadmaps/RoadmapVersionsPanel.js +22 -22
  314. package/package.json +6 -4
@@ -0,0 +1,360 @@
1
+ import { gql as e } from "@apollo/client";
2
+ //#region src/planmagnet/reports/reportGraphql.ts
3
+ var t = e`
4
+ query ListPlanmagnetReports(
5
+ $workspaceId: ID!
6
+ $filter: PlanmagnetReportFilter
7
+ $pagination: PlanmagnetPaginationInput
8
+ ) {
9
+ planmagnetReports(workspaceId: $workspaceId, filter: $filter, pagination: $pagination) {
10
+ items {
11
+ id
12
+ name
13
+ description
14
+ ownerId
15
+ visibility
16
+ templateKey
17
+ workspaceId
18
+ createdAt
19
+ updatedAt
20
+ }
21
+ totalCount
22
+ pageInfo {
23
+ hasNextPage
24
+ endCursor
25
+ }
26
+ }
27
+ }
28
+ `, n = e`
29
+ query GetPlanmagnetReport($id: ID!) {
30
+ planmagnetReport(id: $id) {
31
+ id
32
+ name
33
+ description
34
+ ownerId
35
+ visibility
36
+ templateKey
37
+ workspaceId
38
+ createdAt
39
+ updatedAt
40
+ definition {
41
+ widgets {
42
+ id
43
+ type
44
+ title
45
+ source
46
+ params {
47
+ projectId
48
+ sprintId
49
+ teamId
50
+ from
51
+ to
52
+ limit
53
+ }
54
+ layout {
55
+ x
56
+ y
57
+ w
58
+ h
59
+ }
60
+ }
61
+ }
62
+ }
63
+ }
64
+ `, r = e`
65
+ query ListPlanmagnetReportTemplates {
66
+ planmagnetReportTemplates {
67
+ key
68
+ name
69
+ description
70
+ definition {
71
+ widgets {
72
+ id
73
+ type
74
+ title
75
+ source
76
+ params {
77
+ projectId
78
+ sprintId
79
+ teamId
80
+ from
81
+ to
82
+ limit
83
+ }
84
+ layout {
85
+ x
86
+ y
87
+ w
88
+ h
89
+ }
90
+ }
91
+ }
92
+ }
93
+ }
94
+ `, i = e`
95
+ mutation CreatePlanmagnetReport($workspaceId: ID!, $input: PlanmagnetCreateReportInput!) {
96
+ planmagnetCreateReport(workspaceId: $workspaceId, input: $input) {
97
+ id
98
+ name
99
+ description
100
+ ownerId
101
+ visibility
102
+ templateKey
103
+ workspaceId
104
+ createdAt
105
+ updatedAt
106
+ definition {
107
+ widgets {
108
+ id
109
+ type
110
+ title
111
+ source
112
+ params {
113
+ projectId
114
+ sprintId
115
+ teamId
116
+ from
117
+ to
118
+ limit
119
+ }
120
+ layout {
121
+ x
122
+ y
123
+ w
124
+ h
125
+ }
126
+ }
127
+ }
128
+ }
129
+ }
130
+ `, a = e`
131
+ mutation UpdatePlanmagnetReport($id: ID!, $input: PlanmagnetUpdateReportInput!) {
132
+ planmagnetUpdateReport(id: $id, input: $input) {
133
+ id
134
+ name
135
+ description
136
+ ownerId
137
+ visibility
138
+ templateKey
139
+ workspaceId
140
+ createdAt
141
+ updatedAt
142
+ definition {
143
+ widgets {
144
+ id
145
+ type
146
+ title
147
+ source
148
+ params {
149
+ projectId
150
+ sprintId
151
+ teamId
152
+ from
153
+ to
154
+ limit
155
+ }
156
+ layout {
157
+ x
158
+ y
159
+ w
160
+ h
161
+ }
162
+ }
163
+ }
164
+ }
165
+ }
166
+ `, o = e`
167
+ mutation DeletePlanmagnetReport($id: ID!) {
168
+ planmagnetDeleteReport(id: $id)
169
+ }
170
+ `, s = e`
171
+ mutation DuplicatePlanmagnetReport($id: ID!, $name: String) {
172
+ planmagnetDuplicateReport(id: $id, name: $name) {
173
+ id
174
+ name
175
+ description
176
+ ownerId
177
+ visibility
178
+ templateKey
179
+ workspaceId
180
+ createdAt
181
+ updatedAt
182
+ }
183
+ }
184
+ `, c = e`
185
+ mutation RunPlanmagnetReport($id: ID!) {
186
+ planmagnetRunReport(id: $id) {
187
+ id
188
+ reportId
189
+ workspaceId
190
+ trigger
191
+ generatedAt
192
+ generatedBy
193
+ deliveryStatus
194
+ widgets {
195
+ widgetId
196
+ source
197
+ status
198
+ message
199
+ result
200
+ }
201
+ }
202
+ }
203
+ `, l = e`
204
+ query GetPlanmagnetReportRun($id: ID!) {
205
+ planmagnetReportRun(id: $id) {
206
+ id
207
+ reportId
208
+ workspaceId
209
+ trigger
210
+ generatedAt
211
+ generatedBy
212
+ deliveryStatus
213
+ widgets {
214
+ widgetId
215
+ source
216
+ status
217
+ message
218
+ result
219
+ }
220
+ }
221
+ }
222
+ `, u = e`
223
+ query ListPlanmagnetReportRuns($reportId: ID!, $pagination: PlanmagnetPaginationInput) {
224
+ planmagnetReportRuns(reportId: $reportId, pagination: $pagination) {
225
+ items {
226
+ id
227
+ trigger
228
+ generatedAt
229
+ generatedBy
230
+ deliveryStatus
231
+ }
232
+ totalCount
233
+ pageInfo {
234
+ hasNextPage
235
+ endCursor
236
+ }
237
+ }
238
+ }
239
+ `, d = e`
240
+ query ExportPlanmagnetReportRun($runId: ID!, $format: PlanmagnetReportExportFormat!) {
241
+ planmagnetExportReportRun(runId: $runId, format: $format) {
242
+ filename
243
+ contentType
244
+ content
245
+ }
246
+ }
247
+ `, f = e`
248
+ query ListPlanmagnetReportShares($reportId: ID!) {
249
+ planmagnetReportShares(reportId: $reportId) {
250
+ id
251
+ reportId
252
+ workspaceId
253
+ createdBy
254
+ createdAt
255
+ expiresAt
256
+ revokedAt
257
+ hasPassword
258
+ watermark
259
+ accessCount
260
+ lastAccessedAt
261
+ runId
262
+ }
263
+ }
264
+ `, p = e`
265
+ mutation CreatePlanmagnetReportShare($runId: ID!, $input: PlanmagnetCreateReportShareInput!) {
266
+ planmagnetCreateReportShare(runId: $runId, input: $input) {
267
+ id
268
+ reportId
269
+ workspaceId
270
+ createdBy
271
+ createdAt
272
+ expiresAt
273
+ revokedAt
274
+ hasPassword
275
+ watermark
276
+ accessCount
277
+ lastAccessedAt
278
+ runId
279
+ token
280
+ }
281
+ }
282
+ `, m = e`
283
+ mutation RevokePlanmagnetReportShare($id: ID!) {
284
+ planmagnetRevokeReportShare(id: $id)
285
+ }
286
+ `, h = e`
287
+ query ListPlanmagnetReportSchedules($reportId: ID!) {
288
+ planmagnetReportSchedules(reportId: $reportId) {
289
+ id
290
+ reportId
291
+ workspaceId
292
+ active
293
+ cadence
294
+ hourUtc
295
+ dayOfWeek
296
+ dayOfMonth
297
+ format
298
+ recipientIds
299
+ nextRunAt
300
+ lastRunAt
301
+ lastRunId
302
+ lastError
303
+ createdAt
304
+ updatedAt
305
+ }
306
+ }
307
+ `, g = e`
308
+ mutation CreatePlanmagnetReportSchedule(
309
+ $reportId: ID!
310
+ $input: PlanmagnetCreateReportScheduleInput!
311
+ ) {
312
+ planmagnetCreateReportSchedule(reportId: $reportId, input: $input) {
313
+ id
314
+ reportId
315
+ workspaceId
316
+ active
317
+ cadence
318
+ hourUtc
319
+ dayOfWeek
320
+ dayOfMonth
321
+ format
322
+ recipientIds
323
+ nextRunAt
324
+ lastRunAt
325
+ lastRunId
326
+ lastError
327
+ createdAt
328
+ updatedAt
329
+ }
330
+ }
331
+ `, _ = e`
332
+ mutation UpdatePlanmagnetReportSchedule($id: ID!, $input: PlanmagnetUpdateReportScheduleInput!) {
333
+ planmagnetUpdateReportSchedule(id: $id, input: $input) {
334
+ id
335
+ reportId
336
+ workspaceId
337
+ active
338
+ cadence
339
+ hourUtc
340
+ dayOfWeek
341
+ dayOfMonth
342
+ format
343
+ recipientIds
344
+ nextRunAt
345
+ lastRunAt
346
+ lastRunId
347
+ lastError
348
+ createdAt
349
+ updatedAt
350
+ }
351
+ }
352
+ `, v = e`
353
+ mutation DeletePlanmagnetReportSchedule($id: ID!) {
354
+ planmagnetDeleteReportSchedule(id: $id)
355
+ }
356
+ `;
357
+ //#endregion
358
+ export { i as CREATE_REPORT, g as CREATE_REPORT_SCHEDULE, p as CREATE_REPORT_SHARE, o as DELETE_REPORT, v as DELETE_REPORT_SCHEDULE, s as DUPLICATE_REPORT, d as EXPORT_REPORT_RUN, n as GET_REPORT, l as GET_REPORT_RUN, t as LIST_REPORTS, u as LIST_REPORT_RUNS, h as LIST_REPORT_SCHEDULES, f as LIST_REPORT_SHARES, r as LIST_REPORT_TEMPLATES, m as REVOKE_REPORT_SHARE, c as RUN_REPORT, a as UPDATE_REPORT, _ as UPDATE_REPORT_SCHEDULE };
359
+
360
+ //# sourceMappingURL=reportGraphql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportGraphql.js","names":[],"sources":["../../../src/planmagnet/reports/reportGraphql.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\n/**\n * Reports GraphQL documents (ANR-13/14/15/16). Field selections match `graphql/wspace.graphql`'s\n * `Planmagnet*Report*` types exactly — validated by `bun run validate:schema` against\n * `graphql/planmagnet.graphql` + `graphql/planmagnet-gateway-roots.graphql` (see schema-drift.config.json).\n * Selection sets are written out in full in each document rather than shared via `${fragment}` interpolation —\n * `gql` here only ever parses one literal per call (no other file in this package interpolates a sub-document\n * into a `gql` tag), so this follows the same convention.\n */\n\nexport const REPORT_SUMMARY_FIELDS_DOC = `\n id\n name\n description\n ownerId\n visibility\n templateKey\n workspaceId\n createdAt\n updatedAt\n`;\n\nexport const LIST_REPORTS = gql`\n query ListPlanmagnetReports(\n $workspaceId: ID!\n $filter: PlanmagnetReportFilter\n $pagination: PlanmagnetPaginationInput\n ) {\n planmagnetReports(workspaceId: $workspaceId, filter: $filter, pagination: $pagination) {\n items {\n id\n name\n description\n ownerId\n visibility\n templateKey\n workspaceId\n createdAt\n updatedAt\n }\n totalCount\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n`;\n\nexport const GET_REPORT = gql`\n query GetPlanmagnetReport($id: ID!) {\n planmagnetReport(id: $id) {\n id\n name\n description\n ownerId\n visibility\n templateKey\n workspaceId\n createdAt\n updatedAt\n definition {\n widgets {\n id\n type\n title\n source\n params {\n projectId\n sprintId\n teamId\n from\n to\n limit\n }\n layout {\n x\n y\n w\n h\n }\n }\n }\n }\n }\n`;\n\nexport const LIST_REPORT_TEMPLATES = gql`\n query ListPlanmagnetReportTemplates {\n planmagnetReportTemplates {\n key\n name\n description\n definition {\n widgets {\n id\n type\n title\n source\n params {\n projectId\n sprintId\n teamId\n from\n to\n limit\n }\n layout {\n x\n y\n w\n h\n }\n }\n }\n }\n }\n`;\n\nexport const CREATE_REPORT = gql`\n mutation CreatePlanmagnetReport($workspaceId: ID!, $input: PlanmagnetCreateReportInput!) {\n planmagnetCreateReport(workspaceId: $workspaceId, input: $input) {\n id\n name\n description\n ownerId\n visibility\n templateKey\n workspaceId\n createdAt\n updatedAt\n definition {\n widgets {\n id\n type\n title\n source\n params {\n projectId\n sprintId\n teamId\n from\n to\n limit\n }\n layout {\n x\n y\n w\n h\n }\n }\n }\n }\n }\n`;\n\nexport const UPDATE_REPORT = gql`\n mutation UpdatePlanmagnetReport($id: ID!, $input: PlanmagnetUpdateReportInput!) {\n planmagnetUpdateReport(id: $id, input: $input) {\n id\n name\n description\n ownerId\n visibility\n templateKey\n workspaceId\n createdAt\n updatedAt\n definition {\n widgets {\n id\n type\n title\n source\n params {\n projectId\n sprintId\n teamId\n from\n to\n limit\n }\n layout {\n x\n y\n w\n h\n }\n }\n }\n }\n }\n`;\n\nexport const DELETE_REPORT = gql`\n mutation DeletePlanmagnetReport($id: ID!) {\n planmagnetDeleteReport(id: $id)\n }\n`;\n\nexport const DUPLICATE_REPORT = gql`\n mutation DuplicatePlanmagnetReport($id: ID!, $name: String) {\n planmagnetDuplicateReport(id: $id, name: $name) {\n id\n name\n description\n ownerId\n visibility\n templateKey\n workspaceId\n createdAt\n updatedAt\n }\n }\n`;\n\nexport const RUN_REPORT = gql`\n mutation RunPlanmagnetReport($id: ID!) {\n planmagnetRunReport(id: $id) {\n id\n reportId\n workspaceId\n trigger\n generatedAt\n generatedBy\n deliveryStatus\n widgets {\n widgetId\n source\n status\n message\n result\n }\n }\n }\n`;\n\nexport const GET_REPORT_RUN = gql`\n query GetPlanmagnetReportRun($id: ID!) {\n planmagnetReportRun(id: $id) {\n id\n reportId\n workspaceId\n trigger\n generatedAt\n generatedBy\n deliveryStatus\n widgets {\n widgetId\n source\n status\n message\n result\n }\n }\n }\n`;\n\nexport const LIST_REPORT_RUNS = gql`\n query ListPlanmagnetReportRuns($reportId: ID!, $pagination: PlanmagnetPaginationInput) {\n planmagnetReportRuns(reportId: $reportId, pagination: $pagination) {\n items {\n id\n trigger\n generatedAt\n generatedBy\n deliveryStatus\n }\n totalCount\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n`;\n\nexport const EXPORT_REPORT_RUN = gql`\n query ExportPlanmagnetReportRun($runId: ID!, $format: PlanmagnetReportExportFormat!) {\n planmagnetExportReportRun(runId: $runId, format: $format) {\n filename\n contentType\n content\n }\n }\n`;\n\nexport const LIST_REPORT_SHARES = gql`\n query ListPlanmagnetReportShares($reportId: ID!) {\n planmagnetReportShares(reportId: $reportId) {\n id\n reportId\n workspaceId\n createdBy\n createdAt\n expiresAt\n revokedAt\n hasPassword\n watermark\n accessCount\n lastAccessedAt\n runId\n }\n }\n`;\n\nexport const CREATE_REPORT_SHARE = gql`\n mutation CreatePlanmagnetReportShare($runId: ID!, $input: PlanmagnetCreateReportShareInput!) {\n planmagnetCreateReportShare(runId: $runId, input: $input) {\n id\n reportId\n workspaceId\n createdBy\n createdAt\n expiresAt\n revokedAt\n hasPassword\n watermark\n accessCount\n lastAccessedAt\n runId\n token\n }\n }\n`;\n\nexport const REVOKE_REPORT_SHARE = gql`\n mutation RevokePlanmagnetReportShare($id: ID!) {\n planmagnetRevokeReportShare(id: $id)\n }\n`;\n\nexport const LIST_REPORT_SCHEDULES = gql`\n query ListPlanmagnetReportSchedules($reportId: ID!) {\n planmagnetReportSchedules(reportId: $reportId) {\n id\n reportId\n workspaceId\n active\n cadence\n hourUtc\n dayOfWeek\n dayOfMonth\n format\n recipientIds\n nextRunAt\n lastRunAt\n lastRunId\n lastError\n createdAt\n updatedAt\n }\n }\n`;\n\nexport const CREATE_REPORT_SCHEDULE = gql`\n mutation CreatePlanmagnetReportSchedule(\n $reportId: ID!\n $input: PlanmagnetCreateReportScheduleInput!\n ) {\n planmagnetCreateReportSchedule(reportId: $reportId, input: $input) {\n id\n reportId\n workspaceId\n active\n cadence\n hourUtc\n dayOfWeek\n dayOfMonth\n format\n recipientIds\n nextRunAt\n lastRunAt\n lastRunId\n lastError\n createdAt\n updatedAt\n }\n }\n`;\n\nexport const UPDATE_REPORT_SCHEDULE = gql`\n mutation UpdatePlanmagnetReportSchedule($id: ID!, $input: PlanmagnetUpdateReportScheduleInput!) {\n planmagnetUpdateReportSchedule(id: $id, input: $input) {\n id\n reportId\n workspaceId\n active\n cadence\n hourUtc\n dayOfWeek\n dayOfMonth\n format\n recipientIds\n nextRunAt\n lastRunAt\n lastRunId\n lastError\n createdAt\n updatedAt\n }\n }\n`;\n\nexport const DELETE_REPORT_SCHEDULE = gql`\n mutation DeletePlanmagnetReportSchedule($id: ID!) {\n planmagnetDeleteReportSchedule(id: $id)\n }\n`;\n"],"mappings":";;AAuBA,IAAa,IAAe,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;GA2BlB,IAAa,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsChB,IAAwB,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgC3B,IAAgB,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCnB,IAAgB,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCnB,IAAgB,CAAG;;;;GAMnB,IAAmB,CAAG;;;;;;;;;;;;;;GAgBtB,IAAa,CAAG;;;;;;;;;;;;;;;;;;;GAqBhB,IAAiB,CAAG;;;;;;;;;;;;;;;;;;;GAqBpB,IAAmB,CAAG;;;;;;;;;;;;;;;;;GAmBtB,IAAoB,CAAG;;;;;;;;GAUvB,IAAqB,CAAG;;;;;;;;;;;;;;;;;GAmBxB,IAAsB,CAAG;;;;;;;;;;;;;;;;;;GAoBzB,IAAsB,CAAG;;;;GAMzB,IAAwB,CAAG;;;;;;;;;;;;;;;;;;;;;GAuB3B,IAAyB,CAAG;;;;;;;;;;;;;;;;;;;;;;;;GA0B5B,IAAyB,CAAG;;;;;;;;;;;;;;;;;;;;;GAuB5B,IAAyB,CAAG"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Reports (ANR-13/14/15/16, BOFF-8048 follow-on): shared types, source metadata and pure helpers for the report
3
+ * builder + viewer. Mirrors the server's own source-of-truth so the UI never drifts from what actually runs:
4
+ *
5
+ * - `REPORT_SOURCE_SPECS` mirrors wspace-planmagnet-svc's `report-sources.ts` (`REPORT_SOURCE_SPECS`) — the
6
+ * per-source allowed param keys. A param a source doesn't use is rejected at save time by the server with a
7
+ * field-scoped BAD_USER_INPUT; this file's `allowedParams` lets the builder never offer that param in the
8
+ * first place, and `validateWidgetDraft` catches it before the round trip.
9
+ * - `packLayout` decides where each widget sits on the 12-column grid from its position in the widgets array
10
+ * (the builder's reorder controls) and its own `w`/`h` — a left-to-right, wrap-on-overflow shelf pack, the
11
+ * same algorithm CSS flex-wrap performs visually (see `ReportGridCanvas.tsx`), so the preview and the
12
+ * persisted `layout` never disagree. There is no free-form drag-to-position: only reorder (where) and
13
+ * resize (how big) are exposed, so every layout this UI can produce is representable and always passes the
14
+ * server's bounds check (`x >= 0`, `y >= 0`, `w >= 1`, `h >= 1`, `x + w <= 12`).
15
+ * - `validateReportDraft` mirrors wspace-planmagnet-svc's `report-definition.ts` (`assertReportDefinition`)
16
+ * closely enough that a draft which passes it also passes the server — widget count (1..24), unique ids,
17
+ * required type/title/source, and params restricted to the ones the widget's source actually reads. Field
18
+ * paths match the server's own (`definition.widgets[i].…`) so a BAD_USER_INPUT that slips past client
19
+ * validation (e.g. a rule this file doesn't yet know) still maps back to the right widget via
20
+ * `widgetIndexFromField`.
21
+ */
22
+ export declare const GRID_COLUMNS = 12;
23
+ export declare const MAX_WIDGETS = 24;
24
+ export declare const WIDGET_TYPES: readonly ["KPI", "CHART", "TABLE", "TEXT"];
25
+ export type WidgetType = (typeof WIDGET_TYPES)[number];
26
+ export declare const REPORT_SOURCES: readonly ["PROJECT_STATUS", "VELOCITY", "BURNDOWN", "CUMULATIVE_FLOW", "CYCLE_TIME", "THROUGHPUT", "QUALITY_METRICS", "DELIVERY_KPIS", "BUDGET_VARIANCE", "TIME_BY_PERSON", "STATUS_FLOW", "WORK_BREAKDOWN", "TEAM_WORKLOAD", "RISKS", "WORK_ITEMS"];
27
+ export type ReportSource = (typeof REPORT_SOURCES)[number];
28
+ export type WidgetParamKey = 'projectId' | 'sprintId' | 'teamId' | 'from' | 'to' | 'limit';
29
+ export interface SourceSpec {
30
+ label: string;
31
+ description: string;
32
+ group: string;
33
+ allowedParams: readonly WidgetParamKey[];
34
+ }
35
+ /** 1:1 with wspace-planmagnet-svc's REPORT_SOURCE_SPECS — see this file's header. */
36
+ export declare const REPORT_SOURCE_SPECS: Record<ReportSource, SourceSpec>;
37
+ /** Sources grouped for the "Add widget" dialog, in a fixed, reviewed order (not alphabetical / enum order). */
38
+ export declare const SOURCE_GROUPS: {
39
+ group: string;
40
+ sources: ReportSource[];
41
+ }[];
42
+ export declare function isReportSource(value: string): value is ReportSource;
43
+ export declare const PARAM_LABELS: Record<WidgetParamKey, string>;
44
+ export interface WidgetLayout {
45
+ x: number;
46
+ y: number;
47
+ w: number;
48
+ h: number;
49
+ }
50
+ export interface WidgetParams {
51
+ projectId?: string | null;
52
+ sprintId?: string | null;
53
+ teamId?: string | null;
54
+ from?: string | null;
55
+ to?: string | null;
56
+ limit?: number | null;
57
+ }
58
+ export interface ReportWidget {
59
+ id: string;
60
+ type: WidgetType;
61
+ title: string;
62
+ source: ReportSource;
63
+ params: WidgetParams;
64
+ layout: WidgetLayout;
65
+ }
66
+ export interface ReportDefinition {
67
+ widgets: ReportWidget[];
68
+ }
69
+ export type ReportVisibility = 'PRIVATE' | 'WORKSPACE';
70
+ export interface ReportSummary {
71
+ id: string;
72
+ name: string;
73
+ description: string | null;
74
+ ownerId: string;
75
+ visibility: ReportVisibility;
76
+ templateKey: string | null;
77
+ workspaceId: string;
78
+ createdAt: string;
79
+ updatedAt: string;
80
+ }
81
+ export interface ReportRecord extends ReportSummary {
82
+ definition: ReportDefinition;
83
+ }
84
+ export interface ReportTemplate {
85
+ key: string;
86
+ name: string;
87
+ description: string;
88
+ definition: ReportDefinition;
89
+ }
90
+ export type WidgetRunStatus = 'OK' | 'FORBIDDEN' | 'ERROR';
91
+ export interface WidgetRunResult {
92
+ widgetId: string;
93
+ source: ReportSource;
94
+ status: WidgetRunStatus;
95
+ message: string | null;
96
+ result: unknown;
97
+ }
98
+ export type ReportRunTrigger = 'MANUAL' | 'SCHEDULE';
99
+ export type ReportDeliveryStatus = 'PENDING_NOTIFICATIONS';
100
+ export interface ReportRun {
101
+ id: string;
102
+ reportId: string;
103
+ workspaceId: string;
104
+ trigger: ReportRunTrigger;
105
+ generatedAt: string;
106
+ generatedBy: string;
107
+ deliveryStatus: ReportDeliveryStatus | null;
108
+ widgets: WidgetRunResult[];
109
+ }
110
+ export type ReportScheduleCadence = 'DAILY' | 'WEEKLY' | 'MONTHLY';
111
+ export type ReportExportFormat = 'CSV' | 'JSON' | 'XML';
112
+ export interface ReportSchedule {
113
+ id: string;
114
+ reportId: string;
115
+ workspaceId: string;
116
+ active: boolean;
117
+ cadence: ReportScheduleCadence;
118
+ hourUtc: number;
119
+ dayOfWeek: number | null;
120
+ dayOfMonth: number | null;
121
+ format: ReportExportFormat;
122
+ recipientIds: string[];
123
+ nextRunAt: string;
124
+ lastRunAt: string | null;
125
+ lastRunId: string | null;
126
+ lastError: string | null;
127
+ createdAt: string;
128
+ updatedAt: string;
129
+ }
130
+ export interface ReportShare {
131
+ id: string;
132
+ reportId: string;
133
+ workspaceId: string;
134
+ createdBy: string;
135
+ createdAt: string;
136
+ expiresAt: string;
137
+ revokedAt: string | null;
138
+ hasPassword: boolean;
139
+ watermark: string;
140
+ accessCount: number;
141
+ lastAccessedAt: string | null;
142
+ runId: string;
143
+ /** Only set on the response of the create mutation — never stored, never returned again. */
144
+ token?: string | null;
145
+ }
146
+ export interface SharedReport {
147
+ reportName: string;
148
+ generatedAt: string;
149
+ watermark: string;
150
+ widgets: WidgetRunResult[];
151
+ }
152
+ /**
153
+ * Left-to-right, wrap-on-overflow shelf pack over the 12-column grid, in array order. The same rule CSS
154
+ * flex-wrap renders visually (`ReportGridCanvas.tsx` uses `width: w/12 * 100%` on flex-wrap children), so the
155
+ * on-screen order always matches the persisted `layout`. Every widget's `w` is clamped to at most
156
+ * `GRID_COLUMNS` first, so a corrupt/legacy value can never produce an unsatisfiable layout.
157
+ */
158
+ export declare function packLayout<T extends {
159
+ id: string;
160
+ w: number;
161
+ h: number;
162
+ }>(widgets: readonly T[]): Map<string, WidgetLayout>;
163
+ /** Re-derives every widget's `layout` from its position in `widgets` (order = reading/visual order) and its
164
+ * own `w`/`h`, discarding whatever `x`/`y` it already carried — those are a rendering consequence, not
165
+ * independent state, once only reorder+resize (not free placement) are exposed. */
166
+ export declare function repackWidgets(widgets: ReportWidget[]): ReportWidget[];
167
+ export interface FieldError {
168
+ /** e.g. "definition.widgets[2].params.projectId" — matches the server's own `extensions.field`. */
169
+ field: string;
170
+ message: string;
171
+ }
172
+ /** The widget index a server or client field-scoped error refers to, or null for a report-level field
173
+ * (name/description/visibility) or one this pattern doesn't recognize. */
174
+ export declare function widgetIndexFromField(field: string | undefined | null): number | null;
175
+ export declare function validateReportDraft(widgets: ReportWidget[]): FieldError[];
176
+ /** A widget id unique within this browser session — the server only requires uniqueness within one report, but
177
+ * a monotonic counter plus a random suffix means two widgets added in the same millisecond never collide. */
178
+ export declare function newWidgetId(): string;
179
+ export declare function blankWidget(source?: ReportSource): ReportWidget;
180
+ export type Row = Record<string, unknown>;
181
+ /** Only this widget's own primitive fields — never a nested array/object, so a table/KPI never tries to render
182
+ * `children`/`context`/etc. as a cell value. */
183
+ export declare function scalarFields(row: Row): [string, string | number | boolean][];
184
+ /**
185
+ * Finds the rows a CHART/TABLE widget should render from an arbitrary result: the result itself when it is
186
+ * already an array of objects, otherwise the first array-valued property of an object result (covers every
187
+ * executor in report-run.service.ts: `sprints`, `points`, `items`, `projects`, or a bare array), otherwise a
188
+ * single-row table of the object's own scalar fields (PROJECT_STATUS, DELIVERY_KPIS, QUALITY_METRICS,
189
+ * CYCLE_TIME's own summary fields).
190
+ */
191
+ export declare function extractRows(result: unknown): Row[];
192
+ /** camelCase/SCREAMING_SNAKE -> "Camel Case" / "Screaming Snake", for a generic field-name label. */
193
+ export declare function humanizeKey(key: string): string;
194
+ /** The best field to use as a chart's category axis / a row's display label, preferring identity-ish fields. */
195
+ export declare function pickLabelField(rows: Row[]): string | null;
196
+ /** Numeric fields present on (almost) every row, in first-seen order, excluding the label field. */
197
+ export declare function pickNumericFields(rows: Row[], excludeKey: string | null): string[];
198
+ //# sourceMappingURL=reportModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportModel.d.ts","sourceRoot":"","sources":["../../../src/planmagnet/reports/reportModel.ts"],"names":[],"mappings":"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"}