@multiplatform.one/backoffice 6.3.0 → 6.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 (338) hide show
  1. package/dist/cjs/chrome/CommandPalette.cjs +20 -9
  2. package/dist/cjs/chrome/CommandPalette.native.js +18 -10
  3. package/dist/cjs/chrome/CommandPalette.native.js.map +1 -1
  4. package/dist/cjs/i18n/en.cjs +21 -0
  5. package/dist/cjs/i18n/en.native.js +21 -0
  6. package/dist/cjs/i18n/en.native.js.map +1 -1
  7. package/dist/cjs/index.cjs +49 -1
  8. package/dist/cjs/index.native.js +48 -0
  9. package/dist/cjs/index.native.js.map +1 -1
  10. package/dist/cjs/shared/types.cjs +18 -0
  11. package/dist/cjs/shared/types.native.js +21 -0
  12. package/dist/cjs/shared/types.native.js.map +1 -0
  13. package/dist/cjs/shared/useDocinfo.cjs +116 -0
  14. package/dist/cjs/shared/useDocinfo.native.js +167 -0
  15. package/dist/cjs/shared/useDocinfo.native.js.map +1 -0
  16. package/dist/cjs/shared/useDoctypeMeta.cjs +124 -0
  17. package/dist/cjs/shared/useDoctypeMeta.native.js +158 -0
  18. package/dist/cjs/shared/useDoctypeMeta.native.js.map +1 -0
  19. package/dist/cjs/shared/useRecentVisit.cjs +40 -0
  20. package/dist/cjs/shared/useRecentVisit.native.js +43 -0
  21. package/dist/cjs/shared/useRecentVisit.native.js.map +1 -0
  22. package/dist/cjs/shared/useSessionUserId.cjs +54 -0
  23. package/dist/cjs/shared/useSessionUserId.native.js +59 -0
  24. package/dist/cjs/shared/useSessionUserId.native.js.map +1 -0
  25. package/dist/cjs/shared/useSlugTarget.cjs +138 -0
  26. package/dist/cjs/shared/useSlugTarget.native.js +166 -0
  27. package/dist/cjs/shared/useSlugTarget.native.js.map +1 -0
  28. package/dist/cjs/shared/useUserRoles.cjs +72 -0
  29. package/dist/cjs/shared/useUserRoles.native.js +79 -0
  30. package/dist/cjs/shared/useUserRoles.native.js.map +1 -0
  31. package/dist/cjs/shell/WorkspaceSidebar.cjs +4 -0
  32. package/dist/cjs/shell/WorkspaceSidebar.native.js +4 -0
  33. package/dist/cjs/shell/WorkspaceSidebar.native.js.map +1 -1
  34. package/dist/cjs/workspace/WorkspaceChartBlock.cjs +136 -0
  35. package/dist/cjs/workspace/WorkspaceChartBlock.native.js +144 -0
  36. package/dist/cjs/workspace/WorkspaceChartBlock.native.js.map +1 -0
  37. package/dist/cjs/workspace/WorkspaceGrid.cjs +91 -0
  38. package/dist/cjs/workspace/WorkspaceGrid.native.js +126 -0
  39. package/dist/cjs/workspace/WorkspaceGrid.native.js.map +1 -0
  40. package/dist/cjs/workspace/WorkspaceLinkCard.cjs +139 -0
  41. package/dist/cjs/workspace/WorkspaceLinkCard.native.js +155 -0
  42. package/dist/cjs/workspace/WorkspaceLinkCard.native.js.map +1 -0
  43. package/dist/cjs/workspace/WorkspaceLinkDirectory.cjs +110 -0
  44. package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js +127 -0
  45. package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js.map +1 -0
  46. package/dist/cjs/workspace/WorkspaceNumberCard.cjs +133 -0
  47. package/dist/cjs/workspace/WorkspaceNumberCard.native.js +138 -0
  48. package/dist/cjs/workspace/WorkspaceNumberCard.native.js.map +1 -0
  49. package/dist/cjs/workspace/WorkspaceQuickList.cjs +112 -0
  50. package/dist/cjs/workspace/WorkspaceQuickList.native.js +130 -0
  51. package/dist/cjs/workspace/WorkspaceQuickList.native.js.map +1 -0
  52. package/dist/cjs/workspace/WorkspaceRecents.cjs +116 -0
  53. package/dist/cjs/workspace/WorkspaceRecents.native.js +132 -0
  54. package/dist/cjs/workspace/WorkspaceRecents.native.js.map +1 -0
  55. package/dist/cjs/workspace/WorkspaceScreen.cjs +291 -0
  56. package/dist/cjs/workspace/WorkspaceScreen.native.js +323 -0
  57. package/dist/cjs/workspace/WorkspaceScreen.native.js.map +1 -0
  58. package/dist/cjs/workspace/WorkspaceShortcut.cjs +185 -0
  59. package/dist/cjs/workspace/WorkspaceShortcut.native.js +202 -0
  60. package/dist/cjs/workspace/WorkspaceShortcut.native.js.map +1 -0
  61. package/dist/cjs/workspace/parseContent.cjs +180 -0
  62. package/dist/cjs/workspace/parseContent.native.js +299 -0
  63. package/dist/cjs/workspace/parseContent.native.js.map +1 -0
  64. package/dist/cjs/workspace/types.cjs +18 -0
  65. package/dist/cjs/workspace/types.native.js +21 -0
  66. package/dist/cjs/workspace/types.native.js.map +1 -0
  67. package/dist/cjs/workspace/useDashboardChart.cjs +96 -0
  68. package/dist/cjs/workspace/useDashboardChart.native.js +110 -0
  69. package/dist/cjs/workspace/useDashboardChart.native.js.map +1 -0
  70. package/dist/cjs/workspace/useWorkspaceDoc.cjs +103 -0
  71. package/dist/cjs/workspace/useWorkspaceDoc.native.js +120 -0
  72. package/dist/cjs/workspace/useWorkspaceDoc.native.js.map +1 -0
  73. package/dist/esm/chrome/CommandPalette.mjs +20 -9
  74. package/dist/esm/chrome/CommandPalette.mjs.map +1 -1
  75. package/dist/esm/chrome/CommandPalette.native.js +18 -10
  76. package/dist/esm/chrome/CommandPalette.native.js.map +1 -1
  77. package/dist/esm/i18n/en.mjs +21 -0
  78. package/dist/esm/i18n/en.mjs.map +1 -1
  79. package/dist/esm/i18n/en.native.js +21 -0
  80. package/dist/esm/i18n/en.native.js.map +1 -1
  81. package/dist/esm/index.mjs +19 -1
  82. package/dist/esm/index.mjs.map +1 -1
  83. package/dist/esm/index.native.js +19 -1
  84. package/dist/esm/index.native.js.map +1 -1
  85. package/dist/esm/shared/types.mjs +2 -0
  86. package/dist/esm/shared/types.mjs.map +1 -0
  87. package/dist/esm/shared/types.native.js +2 -0
  88. package/dist/esm/shared/types.native.js.map +1 -0
  89. package/dist/esm/shared/useDocinfo.mjs +90 -0
  90. package/dist/esm/shared/useDocinfo.mjs.map +1 -0
  91. package/dist/esm/shared/useDocinfo.native.js +138 -0
  92. package/dist/esm/shared/useDocinfo.native.js.map +1 -0
  93. package/dist/esm/shared/useDoctypeMeta.mjs +99 -0
  94. package/dist/esm/shared/useDoctypeMeta.mjs.map +1 -0
  95. package/dist/esm/shared/useDoctypeMeta.native.js +130 -0
  96. package/dist/esm/shared/useDoctypeMeta.native.js.map +1 -0
  97. package/dist/esm/shared/useRecentVisit.mjs +15 -0
  98. package/dist/esm/shared/useRecentVisit.mjs.map +1 -0
  99. package/dist/esm/shared/useRecentVisit.native.js +15 -0
  100. package/dist/esm/shared/useRecentVisit.native.js.map +1 -0
  101. package/dist/esm/shared/useSessionUserId.mjs +29 -0
  102. package/dist/esm/shared/useSessionUserId.mjs.map +1 -0
  103. package/dist/esm/shared/useSessionUserId.native.js +31 -0
  104. package/dist/esm/shared/useSessionUserId.native.js.map +1 -0
  105. package/dist/esm/shared/useSlugTarget.mjs +113 -0
  106. package/dist/esm/shared/useSlugTarget.mjs.map +1 -0
  107. package/dist/esm/shared/useSlugTarget.native.js +138 -0
  108. package/dist/esm/shared/useSlugTarget.native.js.map +1 -0
  109. package/dist/esm/shared/useUserRoles.mjs +47 -0
  110. package/dist/esm/shared/useUserRoles.mjs.map +1 -0
  111. package/dist/esm/shared/useUserRoles.native.js +51 -0
  112. package/dist/esm/shared/useUserRoles.native.js.map +1 -0
  113. package/dist/esm/shell/WorkspaceSidebar.mjs +4 -0
  114. package/dist/esm/shell/WorkspaceSidebar.mjs.map +1 -1
  115. package/dist/esm/shell/WorkspaceSidebar.native.js +4 -0
  116. package/dist/esm/shell/WorkspaceSidebar.native.js.map +1 -1
  117. package/dist/esm/workspace/WorkspaceChartBlock.mjs +111 -0
  118. package/dist/esm/workspace/WorkspaceChartBlock.mjs.map +1 -0
  119. package/dist/esm/workspace/WorkspaceChartBlock.native.js +116 -0
  120. package/dist/esm/workspace/WorkspaceChartBlock.native.js.map +1 -0
  121. package/dist/esm/workspace/WorkspaceGrid.mjs +66 -0
  122. package/dist/esm/workspace/WorkspaceGrid.mjs.map +1 -0
  123. package/dist/esm/workspace/WorkspaceGrid.native.js +98 -0
  124. package/dist/esm/workspace/WorkspaceGrid.native.js.map +1 -0
  125. package/dist/esm/workspace/WorkspaceLinkCard.mjs +113 -0
  126. package/dist/esm/workspace/WorkspaceLinkCard.mjs.map +1 -0
  127. package/dist/esm/workspace/WorkspaceLinkCard.native.js +126 -0
  128. package/dist/esm/workspace/WorkspaceLinkCard.native.js.map +1 -0
  129. package/dist/esm/workspace/WorkspaceLinkDirectory.mjs +84 -0
  130. package/dist/esm/workspace/WorkspaceLinkDirectory.mjs.map +1 -0
  131. package/dist/esm/workspace/WorkspaceLinkDirectory.native.js +98 -0
  132. package/dist/esm/workspace/WorkspaceLinkDirectory.native.js.map +1 -0
  133. package/dist/esm/workspace/WorkspaceNumberCard.mjs +108 -0
  134. package/dist/esm/workspace/WorkspaceNumberCard.mjs.map +1 -0
  135. package/dist/esm/workspace/WorkspaceNumberCard.native.js +110 -0
  136. package/dist/esm/workspace/WorkspaceNumberCard.native.js.map +1 -0
  137. package/dist/esm/workspace/WorkspaceQuickList.mjs +87 -0
  138. package/dist/esm/workspace/WorkspaceQuickList.mjs.map +1 -0
  139. package/dist/esm/workspace/WorkspaceQuickList.native.js +102 -0
  140. package/dist/esm/workspace/WorkspaceQuickList.native.js.map +1 -0
  141. package/dist/esm/workspace/WorkspaceRecents.mjs +91 -0
  142. package/dist/esm/workspace/WorkspaceRecents.mjs.map +1 -0
  143. package/dist/esm/workspace/WorkspaceRecents.native.js +104 -0
  144. package/dist/esm/workspace/WorkspaceRecents.native.js.map +1 -0
  145. package/dist/esm/workspace/WorkspaceScreen.mjs +266 -0
  146. package/dist/esm/workspace/WorkspaceScreen.mjs.map +1 -0
  147. package/dist/esm/workspace/WorkspaceScreen.native.js +295 -0
  148. package/dist/esm/workspace/WorkspaceScreen.native.js.map +1 -0
  149. package/dist/esm/workspace/WorkspaceShortcut.mjs +159 -0
  150. package/dist/esm/workspace/WorkspaceShortcut.mjs.map +1 -0
  151. package/dist/esm/workspace/WorkspaceShortcut.native.js +173 -0
  152. package/dist/esm/workspace/WorkspaceShortcut.native.js.map +1 -0
  153. package/dist/esm/workspace/parseContent.mjs +148 -0
  154. package/dist/esm/workspace/parseContent.mjs.map +1 -0
  155. package/dist/esm/workspace/parseContent.native.js +264 -0
  156. package/dist/esm/workspace/parseContent.native.js.map +1 -0
  157. package/dist/esm/workspace/types.mjs +2 -0
  158. package/dist/esm/workspace/types.mjs.map +1 -0
  159. package/dist/esm/workspace/types.native.js +2 -0
  160. package/dist/esm/workspace/types.native.js.map +1 -0
  161. package/dist/esm/workspace/useDashboardChart.mjs +71 -0
  162. package/dist/esm/workspace/useDashboardChart.mjs.map +1 -0
  163. package/dist/esm/workspace/useDashboardChart.native.js +82 -0
  164. package/dist/esm/workspace/useDashboardChart.native.js.map +1 -0
  165. package/dist/esm/workspace/useWorkspaceDoc.mjs +77 -0
  166. package/dist/esm/workspace/useWorkspaceDoc.mjs.map +1 -0
  167. package/dist/esm/workspace/useWorkspaceDoc.native.js +91 -0
  168. package/dist/esm/workspace/useWorkspaceDoc.native.js.map +1 -0
  169. package/dist/jsx/chrome/CommandPalette.mjs +20 -9
  170. package/dist/jsx/chrome/CommandPalette.mjs.map +1 -1
  171. package/dist/jsx/chrome/CommandPalette.native.js +18 -10
  172. package/dist/jsx/chrome/CommandPalette.native.js.map +1 -1
  173. package/dist/jsx/i18n/en.mjs +21 -0
  174. package/dist/jsx/i18n/en.mjs.map +1 -1
  175. package/dist/jsx/i18n/en.native.js +21 -0
  176. package/dist/jsx/i18n/en.native.js.map +1 -1
  177. package/dist/jsx/index.js +19 -1
  178. package/dist/jsx/index.js.map +1 -1
  179. package/dist/jsx/index.mjs +19 -1
  180. package/dist/jsx/index.mjs.map +1 -1
  181. package/dist/jsx/index.native.js +48 -0
  182. package/dist/jsx/index.native.js.map +1 -1
  183. package/dist/jsx/shared/types.mjs +2 -0
  184. package/dist/jsx/shared/types.mjs.map +1 -0
  185. package/dist/jsx/shared/types.native.js +21 -0
  186. package/dist/jsx/shared/types.native.js.map +1 -0
  187. package/dist/jsx/shared/useDocinfo.mjs +90 -0
  188. package/dist/jsx/shared/useDocinfo.mjs.map +1 -0
  189. package/dist/jsx/shared/useDocinfo.native.js +167 -0
  190. package/dist/jsx/shared/useDocinfo.native.js.map +1 -0
  191. package/dist/jsx/shared/useDoctypeMeta.mjs +99 -0
  192. package/dist/jsx/shared/useDoctypeMeta.mjs.map +1 -0
  193. package/dist/jsx/shared/useDoctypeMeta.native.js +158 -0
  194. package/dist/jsx/shared/useDoctypeMeta.native.js.map +1 -0
  195. package/dist/jsx/shared/useRecentVisit.mjs +15 -0
  196. package/dist/jsx/shared/useRecentVisit.mjs.map +1 -0
  197. package/dist/jsx/shared/useRecentVisit.native.js +43 -0
  198. package/dist/jsx/shared/useRecentVisit.native.js.map +1 -0
  199. package/dist/jsx/shared/useSessionUserId.mjs +29 -0
  200. package/dist/jsx/shared/useSessionUserId.mjs.map +1 -0
  201. package/dist/jsx/shared/useSessionUserId.native.js +59 -0
  202. package/dist/jsx/shared/useSessionUserId.native.js.map +1 -0
  203. package/dist/jsx/shared/useSlugTarget.mjs +113 -0
  204. package/dist/jsx/shared/useSlugTarget.mjs.map +1 -0
  205. package/dist/jsx/shared/useSlugTarget.native.js +166 -0
  206. package/dist/jsx/shared/useSlugTarget.native.js.map +1 -0
  207. package/dist/jsx/shared/useUserRoles.mjs +47 -0
  208. package/dist/jsx/shared/useUserRoles.mjs.map +1 -0
  209. package/dist/jsx/shared/useUserRoles.native.js +79 -0
  210. package/dist/jsx/shared/useUserRoles.native.js.map +1 -0
  211. package/dist/jsx/shell/WorkspaceSidebar.mjs +4 -0
  212. package/dist/jsx/shell/WorkspaceSidebar.mjs.map +1 -1
  213. package/dist/jsx/shell/WorkspaceSidebar.native.js +4 -0
  214. package/dist/jsx/shell/WorkspaceSidebar.native.js.map +1 -1
  215. package/dist/jsx/workspace/WorkspaceChartBlock.mjs +111 -0
  216. package/dist/jsx/workspace/WorkspaceChartBlock.mjs.map +1 -0
  217. package/dist/jsx/workspace/WorkspaceChartBlock.native.js +144 -0
  218. package/dist/jsx/workspace/WorkspaceChartBlock.native.js.map +1 -0
  219. package/dist/jsx/workspace/WorkspaceGrid.mjs +66 -0
  220. package/dist/jsx/workspace/WorkspaceGrid.mjs.map +1 -0
  221. package/dist/jsx/workspace/WorkspaceGrid.native.js +126 -0
  222. package/dist/jsx/workspace/WorkspaceGrid.native.js.map +1 -0
  223. package/dist/jsx/workspace/WorkspaceLinkCard.mjs +113 -0
  224. package/dist/jsx/workspace/WorkspaceLinkCard.mjs.map +1 -0
  225. package/dist/jsx/workspace/WorkspaceLinkCard.native.js +155 -0
  226. package/dist/jsx/workspace/WorkspaceLinkCard.native.js.map +1 -0
  227. package/dist/jsx/workspace/WorkspaceLinkDirectory.mjs +84 -0
  228. package/dist/jsx/workspace/WorkspaceLinkDirectory.mjs.map +1 -0
  229. package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js +127 -0
  230. package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js.map +1 -0
  231. package/dist/jsx/workspace/WorkspaceNumberCard.mjs +108 -0
  232. package/dist/jsx/workspace/WorkspaceNumberCard.mjs.map +1 -0
  233. package/dist/jsx/workspace/WorkspaceNumberCard.native.js +138 -0
  234. package/dist/jsx/workspace/WorkspaceNumberCard.native.js.map +1 -0
  235. package/dist/jsx/workspace/WorkspaceQuickList.mjs +87 -0
  236. package/dist/jsx/workspace/WorkspaceQuickList.mjs.map +1 -0
  237. package/dist/jsx/workspace/WorkspaceQuickList.native.js +130 -0
  238. package/dist/jsx/workspace/WorkspaceQuickList.native.js.map +1 -0
  239. package/dist/jsx/workspace/WorkspaceRecents.mjs +91 -0
  240. package/dist/jsx/workspace/WorkspaceRecents.mjs.map +1 -0
  241. package/dist/jsx/workspace/WorkspaceRecents.native.js +132 -0
  242. package/dist/jsx/workspace/WorkspaceRecents.native.js.map +1 -0
  243. package/dist/jsx/workspace/WorkspaceScreen.mjs +266 -0
  244. package/dist/jsx/workspace/WorkspaceScreen.mjs.map +1 -0
  245. package/dist/jsx/workspace/WorkspaceScreen.native.js +323 -0
  246. package/dist/jsx/workspace/WorkspaceScreen.native.js.map +1 -0
  247. package/dist/jsx/workspace/WorkspaceShortcut.mjs +159 -0
  248. package/dist/jsx/workspace/WorkspaceShortcut.mjs.map +1 -0
  249. package/dist/jsx/workspace/WorkspaceShortcut.native.js +202 -0
  250. package/dist/jsx/workspace/WorkspaceShortcut.native.js.map +1 -0
  251. package/dist/jsx/workspace/parseContent.mjs +148 -0
  252. package/dist/jsx/workspace/parseContent.mjs.map +1 -0
  253. package/dist/jsx/workspace/parseContent.native.js +299 -0
  254. package/dist/jsx/workspace/parseContent.native.js.map +1 -0
  255. package/dist/jsx/workspace/types.mjs +2 -0
  256. package/dist/jsx/workspace/types.mjs.map +1 -0
  257. package/dist/jsx/workspace/types.native.js +21 -0
  258. package/dist/jsx/workspace/types.native.js.map +1 -0
  259. package/dist/jsx/workspace/useDashboardChart.mjs +71 -0
  260. package/dist/jsx/workspace/useDashboardChart.mjs.map +1 -0
  261. package/dist/jsx/workspace/useDashboardChart.native.js +110 -0
  262. package/dist/jsx/workspace/useDashboardChart.native.js.map +1 -0
  263. package/dist/jsx/workspace/useWorkspaceDoc.mjs +77 -0
  264. package/dist/jsx/workspace/useWorkspaceDoc.mjs.map +1 -0
  265. package/dist/jsx/workspace/useWorkspaceDoc.native.js +120 -0
  266. package/dist/jsx/workspace/useWorkspaceDoc.native.js.map +1 -0
  267. package/package.json +12 -12
  268. package/src/chrome/CommandPalette.tsx +35 -15
  269. package/src/i18n/en.ts +21 -0
  270. package/src/index.ts +69 -0
  271. package/src/shared/types.ts +14 -0
  272. package/src/shared/useDocinfo.ts +163 -0
  273. package/src/shared/useDoctypeMeta.ts +243 -0
  274. package/src/shared/useRecentVisit.ts +33 -0
  275. package/src/shared/useSessionUserId.ts +42 -0
  276. package/src/shared/useSlugTarget.ts +143 -0
  277. package/src/shared/useUserRoles.ts +66 -0
  278. package/src/shell/WorkspaceSidebar.tsx +3 -0
  279. package/src/workspace/WorkspaceChartBlock.tsx +115 -0
  280. package/src/workspace/WorkspaceGrid.tsx +82 -0
  281. package/src/workspace/WorkspaceLinkCard.tsx +134 -0
  282. package/src/workspace/WorkspaceLinkDirectory.tsx +126 -0
  283. package/src/workspace/WorkspaceNumberCard.tsx +126 -0
  284. package/src/workspace/WorkspaceQuickList.tsx +100 -0
  285. package/src/workspace/WorkspaceRecents.tsx +100 -0
  286. package/src/workspace/WorkspaceScreen.tsx +322 -0
  287. package/src/workspace/WorkspaceShortcut.tsx +223 -0
  288. package/src/workspace/parseContent.spec.ts +327 -0
  289. package/src/workspace/parseContent.ts +240 -0
  290. package/src/workspace/types.ts +135 -0
  291. package/src/workspace/useDashboardChart.ts +115 -0
  292. package/src/workspace/useWorkspaceDoc.ts +111 -0
  293. package/types/chrome/CommandPalette.d.ts.map +1 -1
  294. package/types/i18n/en.d.ts +19 -0
  295. package/types/i18n/en.d.ts.map +1 -1
  296. package/types/index.d.ts +34 -0
  297. package/types/index.d.ts.map +1 -1
  298. package/types/shared/types.d.ts +21 -0
  299. package/types/shared/types.d.ts.map +1 -0
  300. package/types/shared/useDocinfo.d.ts +61 -0
  301. package/types/shared/useDocinfo.d.ts.map +1 -0
  302. package/types/shared/useDoctypeMeta.d.ts +118 -0
  303. package/types/shared/useDoctypeMeta.d.ts.map +1 -0
  304. package/types/shared/useRecentVisit.d.ts +10 -0
  305. package/types/shared/useRecentVisit.d.ts.map +1 -0
  306. package/types/shared/useSessionUserId.d.ts +6 -0
  307. package/types/shared/useSessionUserId.d.ts.map +1 -0
  308. package/types/shared/useSlugTarget.d.ts +18 -0
  309. package/types/shared/useSlugTarget.d.ts.map +1 -0
  310. package/types/shared/useUserRoles.d.ts +15 -0
  311. package/types/shared/useUserRoles.d.ts.map +1 -0
  312. package/types/shell/WorkspaceSidebar.d.ts.map +1 -1
  313. package/types/workspace/WorkspaceChartBlock.d.ts +6 -0
  314. package/types/workspace/WorkspaceChartBlock.d.ts.map +1 -0
  315. package/types/workspace/WorkspaceGrid.d.ts +23 -0
  316. package/types/workspace/WorkspaceGrid.d.ts.map +1 -0
  317. package/types/workspace/WorkspaceLinkCard.d.ts +20 -0
  318. package/types/workspace/WorkspaceLinkCard.d.ts.map +1 -0
  319. package/types/workspace/WorkspaceLinkDirectory.d.ts +19 -0
  320. package/types/workspace/WorkspaceLinkDirectory.d.ts.map +1 -0
  321. package/types/workspace/WorkspaceNumberCard.d.ts +19 -0
  322. package/types/workspace/WorkspaceNumberCard.d.ts.map +1 -0
  323. package/types/workspace/WorkspaceQuickList.d.ts +6 -0
  324. package/types/workspace/WorkspaceQuickList.d.ts.map +1 -0
  325. package/types/workspace/WorkspaceRecents.d.ts +2 -0
  326. package/types/workspace/WorkspaceRecents.d.ts.map +1 -0
  327. package/types/workspace/WorkspaceScreen.d.ts +24 -0
  328. package/types/workspace/WorkspaceScreen.d.ts.map +1 -0
  329. package/types/workspace/WorkspaceShortcut.d.ts +27 -0
  330. package/types/workspace/WorkspaceShortcut.d.ts.map +1 -0
  331. package/types/workspace/parseContent.d.ts +77 -0
  332. package/types/workspace/parseContent.d.ts.map +1 -0
  333. package/types/workspace/types.d.ts +112 -0
  334. package/types/workspace/types.d.ts.map +1 -0
  335. package/types/workspace/useDashboardChart.d.ts +29 -0
  336. package/types/workspace/useDashboardChart.d.ts.map +1 -0
  337. package/types/workspace/useWorkspaceDoc.d.ts +18 -0
  338. package/types/workspace/useWorkspaceDoc.d.ts.map +1 -0
@@ -0,0 +1,108 @@
1
+ import { Card, SizableText, Skeleton, YStack } from "@multiplatform.one/components";
2
+ import { FrappeKPICard } from "@multiplatform.one/frappe-ui";
3
+ import { useResolvedKnobs } from "@multiplatform.one/theme";
4
+ import { useMemo } from "react";
5
+ import { useTranslation } from "react-i18next";
6
+ import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.mjs";
7
+ import { parseFrappeFilters } from "./parseContent.mjs";
8
+ import { useFrappeDoc } from "./useWorkspaceDoc.mjs";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ const FUNCTION_MAP = {
11
+ Count: "count",
12
+ Sum: "sum",
13
+ Average: "avg",
14
+ Minimum: "min",
15
+ Maximum: "max"
16
+ };
17
+ function WorkspaceNumberCard({
18
+ row
19
+ }) {
20
+ const {
21
+ t
22
+ } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
23
+ const {
24
+ knobProps
25
+ } = useResolvedKnobs();
26
+ const {
27
+ doc,
28
+ isLoading,
29
+ error
30
+ } = useFrappeDoc("Number Card", row.number_card_name);
31
+ const title = row.label || doc?.label || row.number_card_name;
32
+ const dataSource = useMemo(() => {
33
+ if (!doc?.document_type) return void 0;
34
+ if (doc.type && doc.type !== "Document Type") return void 0;
35
+ const aggregate = FUNCTION_MAP[doc.function ?? "Count"] ?? "count";
36
+ return {
37
+ doctype: doc.document_type,
38
+ aggregate,
39
+ field: aggregate === "count" ? void 0 : doc.aggregate_function_based_on,
40
+ filters: parseFrappeFilters(doc.filters_json)
41
+ };
42
+ }, [doc]);
43
+ if (isLoading) {
44
+ return /* @__PURE__ */jsx(Card, {
45
+ flexGrow: 1,
46
+ "aria-busy": true,
47
+ "aria-label": t("loading", "Loading"),
48
+ children: /* @__PURE__ */jsxs(YStack, {
49
+ ...knobProps.panelPadding,
50
+ ...knobProps.gap,
51
+ children: [/* @__PURE__ */jsx(Skeleton, {
52
+ width: "60%",
53
+ height: 12
54
+ }), /* @__PURE__ */jsx(Skeleton, {
55
+ width: "40%",
56
+ height: 28
57
+ })]
58
+ })
59
+ });
60
+ }
61
+ if (error || !doc) {
62
+ return /* @__PURE__ */jsx(Card, {
63
+ flexGrow: 1,
64
+ children: /* @__PURE__ */jsxs(YStack, {
65
+ ...knobProps.panelPadding,
66
+ ...knobProps.gap,
67
+ children: [/* @__PURE__ */jsx(SizableText, {
68
+ size: "$3",
69
+ fontWeight: "600",
70
+ children: title
71
+ }), /* @__PURE__ */jsx(SizableText, {
72
+ size: "$2",
73
+ color: "$color10",
74
+ children: t("workspaceNumberCardError", "Couldn't load number card")
75
+ })]
76
+ })
77
+ });
78
+ }
79
+ if (!dataSource) {
80
+ return /* @__PURE__ */jsx(Card, {
81
+ flexGrow: 1,
82
+ children: /* @__PURE__ */jsxs(YStack, {
83
+ ...knobProps.panelPadding,
84
+ ...knobProps.gap,
85
+ children: [/* @__PURE__ */jsx(SizableText, {
86
+ size: "$3",
87
+ fontWeight: "600",
88
+ children: title
89
+ }), /* @__PURE__ */jsx(SizableText, {
90
+ size: "$2",
91
+ color: "$color10",
92
+ children: t("workspaceNumberCardUnsupported", "This card type is only available in desk")
93
+ })]
94
+ })
95
+ });
96
+ }
97
+ return /* @__PURE__ */jsx(FrappeKPICard, {
98
+ config: {
99
+ id: `workspace-number-card-${row.name}`,
100
+ title,
101
+ value: "\u2014"
102
+ },
103
+ dataSource,
104
+ flexGrow: 1
105
+ });
106
+ }
107
+ export { WorkspaceNumberCard };
108
+ //# sourceMappingURL=WorkspaceNumberCard.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Card","SizableText","Skeleton","YStack","FrappeKPICard","useResolvedKnobs","useMemo","useTranslation","BACKOFFICE_I18N_NAMESPACE","parseFrappeFilters","useFrappeDoc","jsx","jsxs","FUNCTION_MAP","Count","Sum","Average","Minimum","Maximum","WorkspaceNumberCard","row","t","knobProps","doc","isLoading","error","number_card_name","title","label","dataSource","document_type","type","aggregate","function","doctype","field","aggregate_function_based_on","filters","filters_json","flexGrow","children","panelPadding","gap","width","height","size","fontWeight","color","config","id","name","value"],"sources":["../../../src/workspace/WorkspaceNumberCard.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var WorkspaceNumberCard_exports = {};
26
+ __export(WorkspaceNumberCard_exports, {
27
+ WorkspaceNumberCard: () => WorkspaceNumberCard
28
+ });
29
+ module.exports = __toCommonJS(WorkspaceNumberCard_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_components = require("@multiplatform.one/components");
32
+ var import_frappe_ui = require("@multiplatform.one/frappe-ui");
33
+ var import_theme = require("@multiplatform.one/theme");
34
+ var import_react = require("react");
35
+ var import_react_i18next = require("react-i18next");
36
+ var import_i18n = require("../i18n/index.native.js");
37
+ var import_parseContent = require("./parseContent.native.js");
38
+ var import_useWorkspaceDoc = require("./useWorkspaceDoc.native.js");
39
+ var FUNCTION_MAP = {
40
+ Count: "count",
41
+ Sum: "sum",
42
+ Average: "avg",
43
+ Minimum: "min",
44
+ Maximum: "max"
45
+ };
46
+ function WorkspaceNumberCard(param) {
47
+ var {
48
+ row
49
+ } = param;
50
+ var {
51
+ t
52
+ } = (0, import_react_i18next.useTranslation)(import_i18n.BACKOFFICE_I18N_NAMESPACE);
53
+ var {
54
+ knobProps
55
+ } = (0, import_theme.useResolvedKnobs)();
56
+ var {
57
+ doc,
58
+ isLoading,
59
+ error
60
+ } = (0, import_useWorkspaceDoc.useFrappeDoc)("Number Card", row.number_card_name);
61
+ var title = row.label || (doc === null || doc === void 0 ? void 0 : doc.label) || row.number_card_name;
62
+ var dataSource = (0, import_react.useMemo)(function () {
63
+ var _FUNCTION_MAP_, _doc_function;
64
+ if (!(doc === null || doc === void 0 ? void 0 : doc.document_type)) return void 0;
65
+ if (doc.type && doc.type !== "Document Type") return void 0;
66
+ var aggregate = (_FUNCTION_MAP_ = FUNCTION_MAP[(_doc_function = doc.function) !== null && _doc_function !== void 0 ? _doc_function : "Count"]) !== null && _FUNCTION_MAP_ !== void 0 ? _FUNCTION_MAP_ : "count";
67
+ return {
68
+ doctype: doc.document_type,
69
+ aggregate,
70
+ field: aggregate === "count" ? void 0 : doc.aggregate_function_based_on,
71
+ filters: (0, import_parseContent.parseFrappeFilters)(doc.filters_json)
72
+ };
73
+ }, [doc]);
74
+ if (isLoading) {
75
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Card, {
76
+ flexGrow: 1,
77
+ "aria-busy": true,
78
+ "aria-label": t("loading", "Loading"),
79
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.YStack, {
80
+ ...knobProps.panelPadding,
81
+ ...knobProps.gap,
82
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Skeleton, {
83
+ width: "60%",
84
+ height: 12
85
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Skeleton, {
86
+ width: "40%",
87
+ height: 28
88
+ })]
89
+ })
90
+ });
91
+ }
92
+ if (error || !doc) {
93
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Card, {
94
+ flexGrow: 1,
95
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.YStack, {
96
+ ...knobProps.panelPadding,
97
+ ...knobProps.gap,
98
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
99
+ size: "$3",
100
+ fontWeight: "600",
101
+ children: title
102
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
103
+ size: "$2",
104
+ color: "$color10",
105
+ children: t("workspaceNumberCardError", "Couldn't load number card")
106
+ })]
107
+ })
108
+ });
109
+ }
110
+ if (!dataSource) {
111
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Card, {
112
+ flexGrow: 1,
113
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.YStack, {
114
+ ...knobProps.panelPadding,
115
+ ...knobProps.gap,
116
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
117
+ size: "$3",
118
+ fontWeight: "600",
119
+ children: title
120
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
121
+ size: "$2",
122
+ color: "$color10",
123
+ children: t("workspaceNumberCardUnsupported", "This card type is only available in desk")
124
+ })]
125
+ })
126
+ });
127
+ }
128
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_frappe_ui.FrappeKPICard, {
129
+ config: {
130
+ id: `workspace-number-card-${row.name}`,
131
+ title,
132
+ value: "\u2014"
133
+ },
134
+ dataSource,
135
+ flexGrow: 1
136
+ });
137
+ }
138
+ //# sourceMappingURL=WorkspaceNumberCard.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","WorkspaceNumberCard_exports","WorkspaceNumberCard","module","exports","import_jsx_runtime","require","import_components","import_frappe_ui","import_theme","import_react","import_react_i18next","import_i18n","import_parseContent","import_useWorkspaceDoc","FUNCTION_MAP","Count","Sum","Average","Minimum","Maximum","param","row","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","knobProps","useResolvedKnobs","doc","isLoading","error","useFrappeDoc","number_card_name","title","label","dataSource","useMemo","_FUNCTION_MAP_","_doc_function","document_type","type","aggregate","function","doctype","field","aggregate_function_based_on","filters","parseFrappeFilters","filters_json","jsx","Card","flexGrow","children","jsxs","YStack","panelPadding","gap"],"sources":["../../../src/workspace/WorkspaceNumberCard.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,87 @@
1
+ import { Card, Separator, SizableText, XStack, YStack } from "@multiplatform.one/components";
2
+ import { FrappeList } from "@multiplatform.one/frappe-ui";
3
+ import { useResolvedKnobs } from "@multiplatform.one/theme";
4
+ import { useMemo } from "react";
5
+ import { useTranslation } from "react-i18next";
6
+ import { useBackofficeNavigator, useBackofficePaths } from "../config/BackofficeProvider.mjs";
7
+ import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.mjs";
8
+ import { parseFrappeFilters } from "./parseContent.mjs";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ const QuickList = FrappeList;
11
+ const QUICK_LIST_HEIGHT = 220;
12
+ function WorkspaceQuickList({
13
+ row
14
+ }) {
15
+ const navigator = useBackofficeNavigator();
16
+ const paths = useBackofficePaths();
17
+ const {
18
+ knobProps
19
+ } = useResolvedKnobs();
20
+ const {
21
+ t
22
+ } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
23
+ const filters = useMemo(() => parseFrappeFilters(row.quick_list_filter), [row.quick_list_filter]);
24
+ const title = row.label || row.document_type;
25
+ return /* @__PURE__ */jsx(Card, {
26
+ flexGrow: 1,
27
+ children: /* @__PURE__ */jsxs(YStack, {
28
+ ...knobProps.panelPadding,
29
+ ...knobProps.gap,
30
+ children: [/* @__PURE__ */jsxs(XStack, {
31
+ justifyContent: "space-between",
32
+ alignItems: "center",
33
+ ...knobProps.gap,
34
+ children: [/* @__PURE__ */jsx(SizableText, {
35
+ size: "$4",
36
+ fontWeight: "700",
37
+ numberOfLines: 1,
38
+ flexShrink: 1,
39
+ children: title
40
+ }), /* @__PURE__ */jsx(SizableText, {
41
+ size: "$2",
42
+ color: "$color11",
43
+ cursor: "pointer",
44
+ role: "link",
45
+ hoverStyle: {
46
+ color: "$color12"
47
+ },
48
+ onPress: () => navigator.navigate(paths.list(row.document_type)),
49
+ children: t("workspaceQuickListViewAll", "View All")
50
+ })]
51
+ }), /* @__PURE__ */jsx(Separator, {}), /* @__PURE__ */jsx(YStack, {
52
+ height: QUICK_LIST_HEIGHT,
53
+ overflow: "hidden",
54
+ children: /* @__PURE__ */jsx(QuickList, {
55
+ doctype: row.document_type,
56
+ fields: ["name"],
57
+ filters,
58
+ pageSize: 4,
59
+ height: QUICK_LIST_HEIGHT,
60
+ estimateSize: 44,
61
+ "aria-label": title,
62
+ renderItem: item => /* @__PURE__ */jsx(XStack, {
63
+ paddingVertical: "$2",
64
+ paddingHorizontal: "$2",
65
+ alignItems: "center",
66
+ cursor: "pointer",
67
+ borderRadius: "$2",
68
+ hoverStyle: {
69
+ backgroundColor: "$color3"
70
+ },
71
+ onPress: () => item.name && navigator.navigate(paths.form(row.document_type, item.name)),
72
+ role: "link",
73
+ "aria-label": item.name,
74
+ children: /* @__PURE__ */jsx(SizableText, {
75
+ size: "$3",
76
+ numberOfLines: 1,
77
+ flexShrink: 1,
78
+ children: item.name
79
+ })
80
+ })
81
+ })
82
+ })]
83
+ })
84
+ });
85
+ }
86
+ export { WorkspaceQuickList };
87
+ //# sourceMappingURL=WorkspaceQuickList.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Card","Separator","SizableText","XStack","YStack","FrappeList","useResolvedKnobs","useMemo","useTranslation","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","parseFrappeFilters","jsx","jsxs","QuickList","QUICK_LIST_HEIGHT","WorkspaceQuickList","row","navigator","paths","knobProps","t","filters","quick_list_filter","title","label","document_type","flexGrow","children","panelPadding","gap","justifyContent","alignItems","size","fontWeight","numberOfLines","flexShrink","color","cursor","role","hoverStyle","onPress","navigate","list","height","overflow","doctype","fields","pageSize","estimateSize","renderItem","item","paddingVertical","paddingHorizontal","borderRadius","backgroundColor","name","form"],"sources":["../../../src/workspace/WorkspaceQuickList.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var WorkspaceQuickList_exports = {};
26
+ __export(WorkspaceQuickList_exports, {
27
+ WorkspaceQuickList: () => WorkspaceQuickList
28
+ });
29
+ module.exports = __toCommonJS(WorkspaceQuickList_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_components = require("@multiplatform.one/components");
32
+ var import_frappe_ui = require("@multiplatform.one/frappe-ui");
33
+ var import_theme = require("@multiplatform.one/theme");
34
+ var import_react = require("react");
35
+ var import_react_i18next = require("react-i18next");
36
+ var import_BackofficeProvider = require("../config/BackofficeProvider.native.js");
37
+ var import_i18n = require("../i18n/index.native.js");
38
+ var import_parseContent = require("./parseContent.native.js");
39
+ var QuickList = import_frappe_ui.FrappeList;
40
+ var QUICK_LIST_HEIGHT = 220;
41
+ function WorkspaceQuickList(param) {
42
+ var {
43
+ row
44
+ } = param;
45
+ var navigator = (0, import_BackofficeProvider.useBackofficeNavigator)();
46
+ var paths = (0, import_BackofficeProvider.useBackofficePaths)();
47
+ var {
48
+ knobProps
49
+ } = (0, import_theme.useResolvedKnobs)();
50
+ var {
51
+ t
52
+ } = (0, import_react_i18next.useTranslation)(import_i18n.BACKOFFICE_I18N_NAMESPACE);
53
+ var filters = (0, import_react.useMemo)(function () {
54
+ return (0, import_parseContent.parseFrappeFilters)(row.quick_list_filter);
55
+ }, [row.quick_list_filter]);
56
+ var title = row.label || row.document_type;
57
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Card, {
58
+ flexGrow: 1,
59
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.YStack, {
60
+ ...knobProps.panelPadding,
61
+ ...knobProps.gap,
62
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.XStack, {
63
+ justifyContent: "space-between",
64
+ alignItems: "center",
65
+ ...knobProps.gap,
66
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
67
+ size: "$4",
68
+ fontWeight: "700",
69
+ numberOfLines: 1,
70
+ flexShrink: 1,
71
+ children: title
72
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
73
+ size: "$2",
74
+ color: "$color11",
75
+ cursor: "pointer",
76
+ role: "link",
77
+ hoverStyle: {
78
+ color: "$color12"
79
+ },
80
+ onPress: function onPress() {
81
+ return navigator.navigate(paths.list(row.document_type));
82
+ },
83
+ children: t("workspaceQuickListViewAll", "View All")
84
+ })]
85
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Separator, {}),
86
+ /* Fixed-height box: FrappeList's internal flex-basis:0 stack
87
+ contributes no intrinsic height, so an unclamped Card collapses
88
+ and the rows paint past the frame (LC-10). The box gives the
89
+ flex chain a definite height to fill. */
90
+ /* @__PURE__ */
91
+ (0, import_jsx_runtime.jsx)(import_components.YStack, {
92
+ height: QUICK_LIST_HEIGHT,
93
+ overflow: "hidden",
94
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(QuickList, {
95
+ doctype: row.document_type,
96
+ fields: ["name"],
97
+ filters,
98
+ pageSize: 4,
99
+ height: QUICK_LIST_HEIGHT,
100
+ estimateSize: 44,
101
+ "aria-label": title,
102
+ renderItem: function renderItem(item) {
103
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.XStack, {
104
+ paddingVertical: "$2",
105
+ paddingHorizontal: "$2",
106
+ alignItems: "center",
107
+ cursor: "pointer",
108
+ borderRadius: "$2",
109
+ hoverStyle: {
110
+ backgroundColor: "$color3"
111
+ },
112
+ onPress: function onPress() {
113
+ return item.name && navigator.navigate(paths.form(row.document_type, item.name));
114
+ },
115
+ role: "link",
116
+ "aria-label": item.name,
117
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.SizableText, {
118
+ size: "$3",
119
+ numberOfLines: 1,
120
+ flexShrink: 1,
121
+ children: item.name
122
+ })
123
+ });
124
+ }
125
+ })
126
+ })]
127
+ })
128
+ });
129
+ }
130
+ //# sourceMappingURL=WorkspaceQuickList.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","WorkspaceQuickList_exports","WorkspaceQuickList","module","exports","import_jsx_runtime","require","import_components","import_frappe_ui","import_theme","import_react","import_react_i18next","import_BackofficeProvider","import_i18n","import_parseContent","QuickList","FrappeList","QUICK_LIST_HEIGHT","param","row","navigator","useBackofficeNavigator","paths","useBackofficePaths","knobProps","useResolvedKnobs","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","filters","useMemo","parseFrappeFilters","quick_list_filter","title","label","document_type","jsx","Card","flexGrow","children","jsxs","YStack","panelPadding","gap","XStack","justifyContent","alignItems","SizableText","size","fontWeight","numberOfLines","flexShrink"],"sources":["../../../src/workspace/WorkspaceQuickList.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,91 @@
1
+ import { ClockCounterClockwiseIcon } from "@phosphor-icons/react";
2
+ import { Card, PageSection, SizableText, XStack, useTheme } from "@multiplatform.one/components";
3
+ import { useResolvedKnobs } from "@multiplatform.one/theme";
4
+ import { useCallback, useEffect, useRef, useState } from "react";
5
+ import { useTranslation } from "react-i18next";
6
+ import { readRecentItems } from "../chrome/awesomebar-data.mjs";
7
+ import { useBackofficeNavigator, useBackofficePaths } from "../config/BackofficeProvider.mjs";
8
+ import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.mjs";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ const MAX_RECENTS = 5;
11
+ function WorkspaceRecents() {
12
+ const navigator = useBackofficeNavigator();
13
+ const paths = useBackofficePaths();
14
+ const {
15
+ knobProps
16
+ } = useResolvedKnobs();
17
+ const {
18
+ t
19
+ } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
20
+ const theme = useTheme();
21
+ const iconColor = typeof theme.color11?.val === "string" ? theme.color11.val : void 0;
22
+ const [recents, setRecents] = useState([]);
23
+ const mountedRef = useRef(true);
24
+ useEffect(() => {
25
+ mountedRef.current = true;
26
+ return () => {
27
+ mountedRef.current = false;
28
+ };
29
+ }, []);
30
+ const base = paths.base;
31
+ const refresh = useCallback(() => {
32
+ void readRecentItems().then(stored => {
33
+ if (!mountedRef.current) return;
34
+ setRecents(stored.filter(item => item.path.startsWith(base)).slice(0, MAX_RECENTS));
35
+ });
36
+ }, [base]);
37
+ useEffect(() => {
38
+ refresh();
39
+ if (typeof window === "undefined" || typeof window.addEventListener !== "function") {
40
+ return void 0;
41
+ }
42
+ const onFocus = () => refresh();
43
+ window.addEventListener("focus", onFocus);
44
+ return () => window.removeEventListener("focus", onFocus);
45
+ }, [refresh]);
46
+ if (recents.length === 0) return null;
47
+ return (
48
+ // Section heading on the shared sectionHeading scale (LC-17); no
49
+ // divider rule over a chip band (Axiom 16 chrome-earns-role).
50
+ /* @__PURE__ */
51
+ jsx(PageSection, {
52
+ title: t("workspaceRecents", "Continue where you left off"),
53
+ divider: false,
54
+ children: /* @__PURE__ */jsx(XStack, {
55
+ flexWrap: "wrap",
56
+ ...knobProps.gap,
57
+ children: recents.map(item => /* @__PURE__ */jsx(Card, {
58
+ padding: 0,
59
+ onPress: () => navigator.navigate(item.path),
60
+ cursor: "pointer",
61
+ hoverStyle: {
62
+ borderColor: "$accentBackground"
63
+ },
64
+ pressStyle: {
65
+ scale: 0.98
66
+ },
67
+ role: "link",
68
+ "aria-label": item.label,
69
+ children: /* @__PURE__ */jsxs(XStack, {
70
+ paddingHorizontal: "$3",
71
+ minHeight: 44,
72
+ alignItems: "center",
73
+ ...knobProps.gap,
74
+ children: [/* @__PURE__ */jsx(ClockCounterClockwiseIcon, {
75
+ size: 14,
76
+ color: iconColor,
77
+ "aria-hidden": true
78
+ }), /* @__PURE__ */jsx(SizableText, {
79
+ size: "$3",
80
+ numberOfLines: 1,
81
+ flexShrink: 1,
82
+ children: item.label
83
+ })]
84
+ })
85
+ }, item.path))
86
+ })
87
+ })
88
+ );
89
+ }
90
+ export { WorkspaceRecents };
91
+ //# sourceMappingURL=WorkspaceRecents.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ClockCounterClockwiseIcon","Card","PageSection","SizableText","XStack","useTheme","useResolvedKnobs","useCallback","useEffect","useRef","useState","useTranslation","readRecentItems","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","jsx","jsxs","MAX_RECENTS","WorkspaceRecents","navigator","paths","knobProps","t","theme","iconColor","color11","val","recents","setRecents","mountedRef","current","base","refresh","then","stored","filter","item","path","startsWith","slice","window","addEventListener","onFocus","removeEventListener","length","title","divider","children","flexWrap","gap","map","padding","onPress","navigate","cursor","hoverStyle","borderColor","pressStyle","scale","role","label","paddingHorizontal","minHeight","alignItems","size","color","numberOfLines","flexShrink"],"sources":["../../../src/workspace/WorkspaceRecents.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}