@rytass/bpm-core-react 0.17.0 → 0.17.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 (215) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/chunks/admin-pickers-BRHk3qKq.cjs +2 -0
  3. package/dist/chunks/admin-pickers-BRHk3qKq.cjs.map +1 -0
  4. package/dist/chunks/{admin-pickers-DxhzECkD.js → admin-pickers-Djq3h-UR.js} +41 -39
  5. package/dist/chunks/admin-pickers-Djq3h-UR.js.map +1 -0
  6. package/dist/chunks/{categories-DjENouRm.cjs → categories-AxxhqjLZ.cjs} +2 -2
  7. package/dist/chunks/{categories-DjENouRm.cjs.map → categories-AxxhqjLZ.cjs.map} +1 -1
  8. package/dist/chunks/{categories-1gKxeEqw.js → categories-riC33J_j.js} +2 -2
  9. package/dist/chunks/{categories-1gKxeEqw.js.map → categories-riC33J_j.js.map} +1 -1
  10. package/dist/chunks/{compose-DZ7RKvUp.cjs → compose-B7TtrpQJ.cjs} +2 -2
  11. package/dist/chunks/{compose-DZ7RKvUp.cjs.map → compose-B7TtrpQJ.cjs.map} +1 -1
  12. package/dist/chunks/{compose-Crklayzy.js → compose-_pREPtfN.js} +2 -2
  13. package/dist/chunks/{compose-Crklayzy.js.map → compose-_pREPtfN.js.map} +1 -1
  14. package/dist/chunks/{designer-D9eFma1W.js → designer-BiywgNXs.js} +2 -2
  15. package/dist/chunks/{designer-D9eFma1W.js.map → designer-BiywgNXs.js.map} +1 -1
  16. package/dist/chunks/{designer-sJGTGYOf.cjs → designer-ttAqv859.cjs} +2 -2
  17. package/dist/chunks/{designer-sJGTGYOf.cjs.map → designer-ttAqv859.cjs.map} +1 -1
  18. package/dist/chunks/{orgs-Dr0FFoZo.cjs → orgs-C8usknWb.cjs} +2 -2
  19. package/dist/chunks/{orgs-Dr0FFoZo.cjs.map → orgs-C8usknWb.cjs.map} +1 -1
  20. package/dist/chunks/{orgs-CY0i1fie.js → orgs-Lg7tXv2u.js} +2 -2
  21. package/dist/chunks/{orgs-CY0i1fie.js.map → orgs-Lg7tXv2u.js.map} +1 -1
  22. package/dist/chunks/{users-BCyePbwB.js → users-DRbuDYF1.js} +2 -2
  23. package/dist/chunks/{users-BCyePbwB.js.map → users-DRbuDYF1.js.map} +1 -1
  24. package/dist/chunks/{users-DVBJluFR.cjs → users-DVQicZIo.cjs} +2 -2
  25. package/dist/chunks/{users-DVBJluFR.cjs.map → users-DVQicZIo.cjs.map} +1 -1
  26. package/dist/components/admin-pickers.d.cts +65 -0
  27. package/dist/components/approval-instance-list-page.d.cts +17 -0
  28. package/dist/components/bpm-form-field.d.cts +10 -0
  29. package/dist/components/bpm-notification-bell-button.d.cts +22 -0
  30. package/dist/components/dashboard-page.d.cts +7 -0
  31. package/dist/components/notification-drawer.d.cts +11 -0
  32. package/dist/components/org-unit-tree-draft-editor.d.cts +24 -0
  33. package/dist/components/org-unit-tree-draft-editor.d.ts +1 -1
  34. package/dist/components/pdf-preview.d.cts +12 -0
  35. package/dist/index.cjs +1 -1
  36. package/dist/index.d.cts +15 -0
  37. package/dist/index.d.ts +15 -15
  38. package/dist/index.js +1 -1
  39. package/dist/lib/auth-provider.d.cts +37 -0
  40. package/dist/lib/format-date-time.d.cts +5 -0
  41. package/dist/lib/format-member-label.d.cts +12 -0
  42. package/dist/lib/member-profile-resolution.d.cts +48 -0
  43. package/dist/lib/notification-drawer-provider.d.cts +27 -0
  44. package/dist/lib/notification-unread-provider.d.cts +25 -0
  45. package/dist/lib/org-tree-draft.d.cts +27 -0
  46. package/dist/lib/providers.d.cts +31 -0
  47. package/dist/lib/router-adapter.d.cts +47 -0
  48. package/dist/lib/routes-config.d.cts +117 -0
  49. package/dist/lib/task-node-label.d.cts +10 -0
  50. package/dist/lib/use-bpm-logout.d.cts +12 -0
  51. package/dist/lib/use-bpm-member.d.cts +17 -0
  52. package/dist/next/BPMNextProviders.d.cts +51 -0
  53. package/dist/next/index.d.cts +2 -0
  54. package/dist/next/index.d.ts +2 -2
  55. package/dist/next/workflow-chat-route.d.cts +17 -0
  56. package/dist/pages/admin/delegations/index.d.cts +4 -0
  57. package/dist/pages/admin/orgs/index.cjs +1 -1
  58. package/dist/pages/admin/orgs/index.d.cts +4 -0
  59. package/dist/pages/admin/orgs/index.js +1 -1
  60. package/dist/pages/admin/users/index.cjs +1 -1
  61. package/dist/pages/admin/users/index.d.cts +4 -0
  62. package/dist/pages/admin/users/index.js +1 -1
  63. package/dist/pages/admin/webhook-endpoints/index.d.cts +4 -0
  64. package/dist/pages/cc/index.d.cts +16 -0
  65. package/dist/pages/dashboard/index.d.cts +16 -0
  66. package/dist/pages/delegations/index.d.cts +4 -0
  67. package/dist/pages/inbox/index.d.cts +16 -0
  68. package/dist/pages/instances/detail/index.d.cts +23 -0
  69. package/dist/pages/instances/new/index.d.cts +20 -0
  70. package/dist/pages/login/index.d.cts +21 -0
  71. package/dist/pages/root/index.d.cts +18 -0
  72. package/dist/pages/search/index.d.cts +16 -0
  73. package/dist/pages/sent/index.d.cts +16 -0
  74. package/dist/pages/settings/notifications/index.d.cts +4 -0
  75. package/dist/pages/templates/categories/index.cjs +1 -1
  76. package/dist/pages/templates/categories/index.d.cts +4 -0
  77. package/dist/pages/templates/categories/index.js +1 -1
  78. package/dist/pages/templates/compose/index.cjs +1 -1
  79. package/dist/pages/templates/compose/index.d.cts +25 -0
  80. package/dist/pages/templates/compose/index.js +1 -1
  81. package/dist/pages/templates/designer/index.cjs +1 -1
  82. package/dist/pages/templates/designer/index.d.cts +8 -0
  83. package/dist/pages/templates/designer/index.js +1 -1
  84. package/dist/pages/templates/index.d.cts +4 -0
  85. package/dist/pages/templates/versions/index.d.cts +8 -0
  86. package/dist/views/admin/delegations/AdminDelegationsView.d.cts +2 -0
  87. package/dist/views/admin/delegations/index.d.cts +1 -0
  88. package/dist/views/admin/delegations/index.d.ts +1 -1
  89. package/dist/views/admin/index.cjs +1 -1
  90. package/dist/views/admin/index.d.cts +4 -0
  91. package/dist/views/admin/index.d.ts +4 -4
  92. package/dist/views/admin/index.js +2 -2
  93. package/dist/views/admin/orgs/AdminOrgsView.d.cts +2 -0
  94. package/dist/views/admin/orgs/index.cjs +1 -1
  95. package/dist/views/admin/orgs/index.d.cts +1 -0
  96. package/dist/views/admin/orgs/index.d.ts +1 -1
  97. package/dist/views/admin/orgs/index.js +1 -1
  98. package/dist/views/admin/users/AdminUsersView.d.cts +2 -0
  99. package/dist/views/admin/users/MemberTaskReassignModal.d.cts +13 -0
  100. package/dist/views/admin/users/index.cjs +1 -1
  101. package/dist/views/admin/users/index.d.cts +1 -0
  102. package/dist/views/admin/users/index.d.ts +1 -1
  103. package/dist/views/admin/users/index.js +1 -1
  104. package/dist/views/admin/webhook-endpoints/AdminWebhookEndpointsView.d.cts +8 -0
  105. package/dist/views/admin/webhook-endpoints/index.d.cts +1 -0
  106. package/dist/views/admin/webhook-endpoints/index.d.ts +1 -1
  107. package/dist/views/cc/CcView.d.cts +7 -0
  108. package/dist/views/cc/index.d.cts +1 -0
  109. package/dist/views/cc/index.d.ts +1 -1
  110. package/dist/views/dashboard/DashboardView.d.cts +7 -0
  111. package/dist/views/dashboard/index.d.cts +1 -0
  112. package/dist/views/dashboard/index.d.ts +1 -1
  113. package/dist/views/delegations/DelegationsView.d.cts +2 -0
  114. package/dist/views/delegations/index.d.cts +1 -0
  115. package/dist/views/delegations/index.d.ts +1 -1
  116. package/dist/views/forms/builder/FormBuilderView.d.cts +18 -0
  117. package/dist/views/forms/builder/index.d.cts +1 -0
  118. package/dist/views/forms/builder/index.d.ts +1 -1
  119. package/dist/views/forms/builder/json-code-editor.d.cts +11 -0
  120. package/dist/views/forms/renderer/FormRendererView.d.cts +24 -0
  121. package/dist/views/forms/renderer/FormRendererView.d.ts +1 -1
  122. package/dist/views/forms/renderer/form-data-source-field.d.cts +65 -0
  123. package/dist/views/forms/renderer/form-field-link.d.cts +16 -0
  124. package/dist/views/forms/renderer/index.d.cts +2 -0
  125. package/dist/views/forms/renderer/index.d.ts +2 -2
  126. package/dist/views/forms/renderer/member-field-options.d.cts +39 -0
  127. package/dist/views/forms/renderer/member-field.d.cts +21 -0
  128. package/dist/views/inbox/InboxView.d.cts +7 -0
  129. package/dist/views/inbox/index.d.cts +1 -0
  130. package/dist/views/inbox/index.d.ts +1 -1
  131. package/dist/views/instances/detail/InstanceDetailView.d.cts +27 -0
  132. package/dist/views/instances/detail/index.d.cts +7 -0
  133. package/dist/views/instances/detail/index.d.ts +7 -7
  134. package/dist/views/instances/detail/sections/InstanceAttachmentsSection.d.cts +15 -0
  135. package/dist/views/instances/detail/sections/InstanceFormSection.d.cts +36 -0
  136. package/dist/views/instances/detail/sections/InstanceFormSection.d.ts +1 -1
  137. package/dist/views/instances/detail/sections/InstanceHistorySection.d.cts +29 -0
  138. package/dist/views/instances/detail/sections/InstanceSignaturesSection.d.cts +14 -0
  139. package/dist/views/instances/detail/sections/InstanceTasksSection.d.cts +55 -0
  140. package/dist/views/instances/detail/sections/InstanceWebhookDeliveriesSection.d.cts +20 -0
  141. package/dist/views/instances/detail/sections/container-helpers.d.cts +10 -0
  142. package/dist/views/instances/detail/sections/container-helpers.d.ts +1 -1
  143. package/dist/views/instances/detail/sections/shared.d.cts +141 -0
  144. package/dist/views/instances/detail/submitted-by.d.cts +23 -0
  145. package/dist/views/instances/index.d.cts +1 -0
  146. package/dist/views/instances/index.d.ts +1 -1
  147. package/dist/views/instances/new/InstanceNewView.d.cts +15 -0
  148. package/dist/views/instances/new/index.d.cts +1 -0
  149. package/dist/views/instances/new/index.d.ts +1 -1
  150. package/dist/views/login/LoginView.d.cts +47 -0
  151. package/dist/views/login/index.d.cts +1 -0
  152. package/dist/views/login/index.d.ts +1 -1
  153. package/dist/views/root/RootView.d.cts +10 -0
  154. package/dist/views/root/index.d.cts +1 -0
  155. package/dist/views/root/index.d.ts +1 -1
  156. package/dist/views/search/SearchView.d.cts +7 -0
  157. package/dist/views/search/index.d.cts +1 -0
  158. package/dist/views/search/index.d.ts +1 -1
  159. package/dist/views/sent/SentView.d.cts +7 -0
  160. package/dist/views/sent/index.d.cts +1 -0
  161. package/dist/views/sent/index.d.ts +1 -1
  162. package/dist/views/settings/index.d.cts +1 -0
  163. package/dist/views/settings/index.d.ts +1 -1
  164. package/dist/views/settings/notifications/SettingsNotificationsView.d.cts +2 -0
  165. package/dist/views/settings/notifications/index.d.cts +1 -0
  166. package/dist/views/settings/notifications/index.d.ts +1 -1
  167. package/dist/views/templates/TemplatesView.d.cts +7 -0
  168. package/dist/views/templates/categories/TemplateCategoriesView.d.cts +2 -0
  169. package/dist/views/templates/categories/index.cjs +1 -1
  170. package/dist/views/templates/categories/index.d.cts +1 -0
  171. package/dist/views/templates/categories/index.d.ts +1 -1
  172. package/dist/views/templates/categories/index.js +1 -1
  173. package/dist/views/templates/compose/TemplateComposeWizardView.d.cts +21 -0
  174. package/dist/views/templates/compose/index.cjs +1 -1
  175. package/dist/views/templates/compose/index.d.cts +2 -0
  176. package/dist/views/templates/compose/index.d.ts +2 -2
  177. package/dist/views/templates/compose/index.js +1 -1
  178. package/dist/views/templates/compose/steps/ComposeFormStep.d.cts +15 -0
  179. package/dist/views/templates/compose/steps/ComposeReviewStep.d.cts +12 -0
  180. package/dist/views/templates/compose/steps/ComposeWorkflowStep.d.cts +22 -0
  181. package/dist/views/templates/compose/use-template-compose-wizard.d.cts +46 -0
  182. package/dist/views/templates/designer/NotifyWebhookTargetsEditor.d.cts +20 -0
  183. package/dist/views/templates/designer/NotifyWebhookTargetsEditor.d.ts +1 -1
  184. package/dist/views/templates/designer/TemplateDesignerView.d.cts +65 -0
  185. package/dist/views/templates/designer/chrome-workflow-chat.d.cts +12 -0
  186. package/dist/views/templates/designer/chrome-workflow-chat.d.ts +1 -1
  187. package/dist/views/templates/designer/decision-policy-options.d.cts +8 -0
  188. package/dist/views/templates/designer/designer-version-labels.d.cts +12 -0
  189. package/dist/views/templates/designer/dry-run-assignee-label.d.cts +28 -0
  190. package/dist/views/templates/designer/dry-run-sample-data.d.cts +9 -0
  191. package/dist/views/templates/designer/dynamic-form-resolver-options.d.cts +35 -0
  192. package/dist/views/templates/designer/index.cjs +1 -1
  193. package/dist/views/templates/designer/index.d.cts +1 -0
  194. package/dist/views/templates/designer/index.d.ts +1 -1
  195. package/dist/views/templates/designer/index.js +1 -1
  196. package/dist/views/templates/designer/notify-webhook-designer.d.cts +74 -0
  197. package/dist/views/templates/designer/position-level-options.d.cts +17 -0
  198. package/dist/views/templates/designer/use-workflow-chat.d.cts +21 -0
  199. package/dist/views/templates/designer/use-workflow-chat.d.ts +1 -1
  200. package/dist/views/templates/designer/use-workflow-designer-controller.d.cts +41 -0
  201. package/dist/views/templates/designer/workflow-chat-drawer.d.cts +16 -0
  202. package/dist/views/templates/designer/workflow-chat-drawer.d.ts +1 -1
  203. package/dist/views/templates/index.cjs +1 -1
  204. package/dist/views/templates/index.d.cts +3 -0
  205. package/dist/views/templates/index.d.ts +3 -3
  206. package/dist/views/templates/index.js +1 -1
  207. package/dist/views/templates/versions/TemplateVersionsView.d.cts +5 -0
  208. package/dist/views/templates/versions/index.d.cts +1 -0
  209. package/dist/views/templates/versions/index.d.ts +1 -1
  210. package/dist/views/workflow/index.d.cts +4 -0
  211. package/dist/views/workflow/index.d.ts +4 -4
  212. package/package.json +387 -147
  213. package/dist/chunks/admin-pickers-DxhzECkD.js.map +0 -1
  214. package/dist/chunks/admin-pickers-qe3j--gX.cjs +0 -2
  215. package/dist/chunks/admin-pickers-qe3j--gX.cjs.map +0 -1
@@ -0,0 +1,16 @@
1
+ import { ReactElement } from 'react';
2
+ import { WorkflowDesignerController } from './use-workflow-designer-controller.cjs';
3
+ /**
4
+ * Right-side AI assistant drawer for the workflow designer. Users describe the
5
+ * flow in natural language; the assistant draws it on the canvas by driving the
6
+ * shared workflow toolset through {@link useWorkflowChat}. The layout (canvas +
7
+ * 420px panel) is untouched — this slides over it.
8
+ */
9
+ export interface WorkflowChatDrawerProps {
10
+ readonly controller: WorkflowDesignerController;
11
+ readonly open: boolean;
12
+ readonly onClose: () => void;
13
+ /** Chat API route. Defaults to same-origin `/api/chat`. */
14
+ readonly api?: string;
15
+ }
16
+ export declare function WorkflowChatDrawer({ api, controller, onClose, open, }: WorkflowChatDrawerProps): ReactElement;
@@ -1,5 +1,5 @@
1
1
  import { ReactElement } from 'react';
2
- import { WorkflowDesignerController } from './use-workflow-designer-controller';
2
+ import { WorkflowDesignerController } from './use-workflow-designer-controller.js';
3
3
  /**
4
4
  * Right-side AI assistant drawer for the workflow designer. Users describe the
5
5
  * flow in natural language; the assistant draws it on the canvas by driving the
@@ -1,2 +1,2 @@
1
- "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../chunks/rolldown-runtime-BocRIvOZ.cjs"),t=require("../../chunks/router-adapter--gYs13E8.cjs"),n=require("../../chunks/format-date-time-D-cx5M8z.cjs"),r=require("../../chunks/routes-config-C1j_vFKo.cjs"),i=require("../../chunks/categories-DjENouRm.cjs"),a=require("./versions/index.cjs");let o=require("react"),s=require("@mezzanine-ui/react"),c=require("react/jsx-runtime"),l=require("@rytass/bpm-core-client/workflow"),u=require("@mezzanine-ui/core/form"),d=require("@mezzanine-ui/react/ContentHeader");d=e.t(d,1);let f=require("@mezzanine-ui/icons"),p=require("@rytass/bpm-core-client/template");var m=[10,20,50],h=[{key:`ALL`,label:`全部`},{key:`PUBLISHED`,label:`已發布`},{key:`DRAFT`,label:`草稿`}],g=100;function _(){let e=t.r(),a=r.r(),[_,O]=(0,o.useState)([]),[k,A]=(0,o.useState)(C),[j,M]=(0,o.useState)([]),[N,P]=(0,o.useState)(new Set),[F,I]=(0,o.useState)(null),[L,R]=(0,o.useState)(!0),[z,B]=(0,o.useState)(1),[V,H]=(0,o.useState)(10),[U,W]=(0,o.useState)(``),[G,K]=(0,o.useState)(`ALL`),[q,J]=(0,o.useState)(0),[Y,X]=(0,o.useState)(null),Z=(0,o.useRef)(0),Q=(0,o.useCallback)(async()=>{let e=Z.current+1;Z.current=e,R(!0),I(null),P(new Set),(0,l.listLaunchableTemplates)().then(t=>{e===Z.current&&P(new Set(t.map(e=>e.id)))}).catch(()=>{e===Z.current&&P(new Set)});try{let[t,n]=await Promise.all([(0,p.listApprovalTemplatesPage)({categoryId:k.categoryId,page:z,pageSize:V,searchText:U,status:G===`ALL`?null:G}),(0,p.listApprovalTemplateCategoriesPage)({page:1,pageSize:g,searchText:``,status:`ACTIVE`})]);if(e!==Z.current)return;M([...n.categories.map(w)]),O(t.templates),J(t.totalCount)}catch(t){e===Z.current&&I(v(t))}finally{e===Z.current&&R(!1)}},[k,z,V,U,G]);(0,o.useEffect)(()=>{Q()},[Q]);let $=(0,o.useCallback)(async e=>{X(e.id),I(null);try{await(e.isActive?(0,p.deactivateApprovalTemplate)(e.id):(0,p.activateApprovalTemplate)(e.id)),await Q()}catch(e){I(v(e))}finally{X(null)}},[Q]),ee=(0,o.useMemo)(()=>_.map(e=>({...e,categoryLabel:D(e),key:e.id,status:e.currentVersionId?`PUBLISHED`:`DRAFT`,updatedAt:n.t(e.updatedAt)})),[_]),te=(0,o.useMemo)(()=>[{dataIndex:`name`,key:`name`,title:`模板名稱`,width:220},{key:`status`,render:e=>(0,c.jsx)(b,{status:e.status}),title:`狀態`,width:120},{key:`isActive`,render:e=>(0,c.jsx)(x,{isActive:e.isActive}),title:`服務狀態`,width:120},{key:`category`,render:e=>(0,c.jsx)(S,{record:e}),title:`分類`,width:160},{dataIndex:`updatedAt`,key:`updatedAt`,title:`更新時間`,width:220}],[]),ne=(0,o.useMemo)(()=>({render:t=>[{disabled:e=>!N.has(e.id),name:`發起`,onClick:()=>e.push(a.caseNew(t.id)),variant:`base-primary`},{name:`設計`,onClick:()=>e.push(a.templateDesigner(t.id))},{name:`版本`,onClick:()=>e.push(a.templateVersions(t.id))},{disabled:e=>Y===e.id,name:t.isActive?`停用`:`啟用`,onClick:e=>{$(e)},variant:t.isActive?`destructive-secondary`:`base-secondary`}],variant:`base-secondary`,width:264}),[Y,N,e,$]);return(0,c.jsx)(c.Fragment,{children:(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(s.PageHeader,{children:(0,c.jsx)(d.default,{description:`建立流程模板、維護草稿與發布版本。`,title:`簽核模板`,children:(0,c.jsx)(s.Button,{icon:f.PlusIcon,iconType:`leading`,onClick:()=>e.push(a.templateCompose()),variant:`base-primary`,children:`建立模板`})})}),(0,c.jsx)(s.SectionGroup,{children:(0,c.jsxs)(s.Section,{filterArea:(0,c.jsx)(s.FilterArea,{className:i.n.templateFilterArea,size:`sub`,children:(0,c.jsxs)(s.FilterLine,{children:[(0,c.jsx)(s.Filter,{span:3,children:(0,c.jsx)(s.FormField,{fullWidth:!0,layout:u.FormFieldLayout.VERTICAL,name:`templateSearchText`,children:(0,c.jsx)(s.Input,{fullWidth:!0,onChange:e=>{W(e.target.value),B(1)},placeholder:`關鍵字:搜尋模板名稱、分類或描述`,size:`sub`,value:U,variant:`base`})})}),(0,c.jsx)(s.Filter,{span:2,children:(0,c.jsx)(s.FormField,{fullWidth:!0,layout:u.FormFieldLayout.VERTICAL,name:`templateCategoryFilter`,children:(0,c.jsx)(s.Select,{clearable:!1,fullWidth:!0,onChange:e=>{A(T(e,j)),B(1)},options:[C,...j],placeholder:`分類`,renderValue:e=>`分類:${E(e)}`,size:`sub`,value:k})})})]})}),tab:(0,c.jsx)(s.Tab,{activeKey:G,onChange:e=>{K(y(e)),B(1)},children:h.map(e=>(0,c.jsx)(s.TabItem,{children:e.label},e.key))}),children:[F?(0,c.jsx)(s.Typography,{color:`text-error`,variant:`body`,children:F}):null,(0,c.jsx)(s.Table,{actions:ne,columns:te,dataSource:ee,fullWidth:!0,loading:L,pagination:{current:z,onChange:e=>{B(e)},onChangePageSize:e=>{B(1),H(e)},pageSize:V,pageSizeLabel:`每頁筆數`,pageSizeOptions:m,renderResultSummary:(e,t,n)=>`顯示 ${e}-${t} 筆,共 ${n} 筆`,showPageSizeOptions:!0,total:q}})]})})]})})}function v(e){return e instanceof Error?e.message:`發生未知錯誤`}function y(e){return e===`PUBLISHED`||e===`DRAFT`?e:`ALL`}function b({status:e}){return e===`PUBLISHED`?(0,c.jsx)(s.Badge,{size:`sub`,text:`已發布`,variant:`dot-success`}):(0,c.jsx)(s.Badge,{size:`sub`,text:`草稿`,variant:`dot-inactive`})}function x({isActive:e}){return e?(0,c.jsx)(s.Badge,{size:`sub`,text:`啟用中`,variant:`dot-success`}):(0,c.jsx)(s.Badge,{size:`sub`,text:`已停用`,variant:`dot-inactive`})}function S({record:e}){return e.categoryDetail?.isActive===!1?(0,c.jsx)(s.Badge,{size:`sub`,text:`${e.categoryLabel}(停用)`,variant:`dot-inactive`}):(0,c.jsx)(s.Typography,{component:`span`,variant:`body`,children:e.categoryLabel})}var C={categoryId:null,id:`ALL_CATEGORIES`,name:`全部分類`};function w(e){return{categoryId:e.id,id:e.id,name:e.name}}function T(e,t){if(!O(e))return C;let n=typeof e.id==`string`?e.id:null;return n===C.id?C:t.find(e=>e.id===n)??C}function E(e){return Array.isArray(e)||!O(e)?C.name:typeof e.name==`string`?e.name:C.name}function D(e){return e.categoryDetail?.name??e.category??`未分類`}function O(e){return typeof e==`object`&&!!e}exports.TemplateCategoriesView=i.t,exports.TemplateVersionsView=a.TemplateVersionsView,exports.TemplatesView=_;
1
+ "use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../chunks/rolldown-runtime-BocRIvOZ.cjs"),t=require("../../chunks/router-adapter--gYs13E8.cjs"),n=require("../../chunks/format-date-time-D-cx5M8z.cjs"),r=require("../../chunks/routes-config-C1j_vFKo.cjs"),i=require("../../chunks/categories-AxxhqjLZ.cjs"),a=require("./versions/index.cjs");let o=require("react"),s=require("@mezzanine-ui/react"),c=require("react/jsx-runtime"),l=require("@rytass/bpm-core-client/workflow"),u=require("@mezzanine-ui/core/form"),d=require("@mezzanine-ui/react/ContentHeader");d=e.t(d,1);let f=require("@mezzanine-ui/icons"),p=require("@rytass/bpm-core-client/template");var m=[10,20,50],h=[{key:`ALL`,label:`全部`},{key:`PUBLISHED`,label:`已發布`},{key:`DRAFT`,label:`草稿`}],g=100;function _(){let e=t.r(),a=r.r(),[_,O]=(0,o.useState)([]),[k,A]=(0,o.useState)(C),[j,M]=(0,o.useState)([]),[N,P]=(0,o.useState)(new Set),[F,I]=(0,o.useState)(null),[L,R]=(0,o.useState)(!0),[z,B]=(0,o.useState)(1),[V,H]=(0,o.useState)(10),[U,W]=(0,o.useState)(``),[G,K]=(0,o.useState)(`ALL`),[q,J]=(0,o.useState)(0),[Y,X]=(0,o.useState)(null),Z=(0,o.useRef)(0),Q=(0,o.useCallback)(async()=>{let e=Z.current+1;Z.current=e,R(!0),I(null),P(new Set),(0,l.listLaunchableTemplates)().then(t=>{e===Z.current&&P(new Set(t.map(e=>e.id)))}).catch(()=>{e===Z.current&&P(new Set)});try{let[t,n]=await Promise.all([(0,p.listApprovalTemplatesPage)({categoryId:k.categoryId,page:z,pageSize:V,searchText:U,status:G===`ALL`?null:G}),(0,p.listApprovalTemplateCategoriesPage)({page:1,pageSize:g,searchText:``,status:`ACTIVE`})]);if(e!==Z.current)return;M([...n.categories.map(w)]),O(t.templates),J(t.totalCount)}catch(t){e===Z.current&&I(v(t))}finally{e===Z.current&&R(!1)}},[k,z,V,U,G]);(0,o.useEffect)(()=>{Q()},[Q]);let $=(0,o.useCallback)(async e=>{X(e.id),I(null);try{await(e.isActive?(0,p.deactivateApprovalTemplate)(e.id):(0,p.activateApprovalTemplate)(e.id)),await Q()}catch(e){I(v(e))}finally{X(null)}},[Q]),ee=(0,o.useMemo)(()=>_.map(e=>({...e,categoryLabel:D(e),key:e.id,status:e.currentVersionId?`PUBLISHED`:`DRAFT`,updatedAt:n.t(e.updatedAt)})),[_]),te=(0,o.useMemo)(()=>[{dataIndex:`name`,key:`name`,title:`模板名稱`,width:220},{key:`status`,render:e=>(0,c.jsx)(b,{status:e.status}),title:`狀態`,width:120},{key:`isActive`,render:e=>(0,c.jsx)(x,{isActive:e.isActive}),title:`服務狀態`,width:120},{key:`category`,render:e=>(0,c.jsx)(S,{record:e}),title:`分類`,width:160},{dataIndex:`updatedAt`,key:`updatedAt`,title:`更新時間`,width:220}],[]),ne=(0,o.useMemo)(()=>({render:t=>[{disabled:e=>!N.has(e.id),name:`發起`,onClick:()=>e.push(a.caseNew(t.id)),variant:`base-primary`},{name:`設計`,onClick:()=>e.push(a.templateDesigner(t.id))},{name:`版本`,onClick:()=>e.push(a.templateVersions(t.id))},{disabled:e=>Y===e.id,name:t.isActive?`停用`:`啟用`,onClick:e=>{$(e)},variant:t.isActive?`destructive-secondary`:`base-secondary`}],variant:`base-secondary`,width:264}),[Y,N,e,$]);return(0,c.jsx)(c.Fragment,{children:(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(s.PageHeader,{children:(0,c.jsx)(d.default,{description:`建立流程模板、維護草稿與發布版本。`,title:`簽核模板`,children:(0,c.jsx)(s.Button,{icon:f.PlusIcon,iconType:`leading`,onClick:()=>e.push(a.templateCompose()),variant:`base-primary`,children:`建立模板`})})}),(0,c.jsx)(s.SectionGroup,{children:(0,c.jsxs)(s.Section,{filterArea:(0,c.jsx)(s.FilterArea,{className:i.n.templateFilterArea,size:`sub`,children:(0,c.jsxs)(s.FilterLine,{children:[(0,c.jsx)(s.Filter,{span:3,children:(0,c.jsx)(s.FormField,{fullWidth:!0,layout:u.FormFieldLayout.VERTICAL,name:`templateSearchText`,children:(0,c.jsx)(s.Input,{fullWidth:!0,onChange:e=>{W(e.target.value),B(1)},placeholder:`關鍵字:搜尋模板名稱、分類或描述`,size:`sub`,value:U,variant:`base`})})}),(0,c.jsx)(s.Filter,{span:2,children:(0,c.jsx)(s.FormField,{fullWidth:!0,layout:u.FormFieldLayout.VERTICAL,name:`templateCategoryFilter`,children:(0,c.jsx)(s.Select,{clearable:!1,fullWidth:!0,onChange:e=>{A(T(e,j)),B(1)},options:[C,...j],placeholder:`分類`,renderValue:e=>`分類:${E(e)}`,size:`sub`,value:k})})})]})}),tab:(0,c.jsx)(s.Tab,{activeKey:G,onChange:e=>{K(y(e)),B(1)},children:h.map(e=>(0,c.jsx)(s.TabItem,{children:e.label},e.key))}),children:[F?(0,c.jsx)(s.Typography,{color:`text-error`,variant:`body`,children:F}):null,(0,c.jsx)(s.Table,{actions:ne,columns:te,dataSource:ee,fullWidth:!0,loading:L,pagination:{current:z,onChange:e=>{B(e)},onChangePageSize:e=>{B(1),H(e)},pageSize:V,pageSizeLabel:`每頁筆數`,pageSizeOptions:m,renderResultSummary:(e,t,n)=>`顯示 ${e}-${t} 筆,共 ${n} 筆`,showPageSizeOptions:!0,total:q}})]})})]})})}function v(e){return e instanceof Error?e.message:`發生未知錯誤`}function y(e){return e===`PUBLISHED`||e===`DRAFT`?e:`ALL`}function b({status:e}){return e===`PUBLISHED`?(0,c.jsx)(s.Badge,{size:`sub`,text:`已發布`,variant:`dot-success`}):(0,c.jsx)(s.Badge,{size:`sub`,text:`草稿`,variant:`dot-inactive`})}function x({isActive:e}){return e?(0,c.jsx)(s.Badge,{size:`sub`,text:`啟用中`,variant:`dot-success`}):(0,c.jsx)(s.Badge,{size:`sub`,text:`已停用`,variant:`dot-inactive`})}function S({record:e}){return e.categoryDetail?.isActive===!1?(0,c.jsx)(s.Badge,{size:`sub`,text:`${e.categoryLabel}(停用)`,variant:`dot-inactive`}):(0,c.jsx)(s.Typography,{component:`span`,variant:`body`,children:e.categoryLabel})}var C={categoryId:null,id:`ALL_CATEGORIES`,name:`全部分類`};function w(e){return{categoryId:e.id,id:e.id,name:e.name}}function T(e,t){if(!O(e))return C;let n=typeof e.id==`string`?e.id:null;return n===C.id?C:t.find(e=>e.id===n)??C}function E(e){return Array.isArray(e)||!O(e)?C.name:typeof e.name==`string`?e.name:C.name}function D(e){return e.categoryDetail?.name??e.category??`未分類`}function O(e){return typeof e==`object`&&!!e}exports.TemplateCategoriesView=i.t,exports.TemplateVersionsView=a.TemplateVersionsView,exports.TemplatesView=_;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,3 @@
1
+ export * from './TemplatesView.cjs';
2
+ export * from './categories/index.cjs';
3
+ export * from './versions/index.cjs';
@@ -1,3 +1,3 @@
1
- export * from './TemplatesView';
2
- export * from './categories';
3
- export * from './versions';
1
+ export * from './TemplatesView.js';
2
+ export * from './categories/index.js';
3
+ export * from './versions/index.js';
@@ -2,7 +2,7 @@
2
2
  import { r as e } from "../../chunks/router-adapter-DftlFTOd.js";
3
3
  import { t } from "../../chunks/format-date-time-CB-LxzqT.js";
4
4
  import { r as n } from "../../chunks/routes-config-yZbESPlw.js";
5
- import { n as ee, t as r } from "../../chunks/categories-1gKxeEqw.js";
5
+ import { n as ee, t as r } from "../../chunks/categories-riC33J_j.js";
6
6
  import { TemplateVersionsView as i } from "./versions/index.js";
7
7
  import { useCallback as a, useEffect as o, useMemo as s, useRef as c, useState as l } from "react";
8
8
  import { Badge as u, Button as te, Filter as d, FilterArea as ne, FilterLine as re, FormField as f, Input as p, PageHeader as m, Section as h, SectionGroup as ie, Select as ae, Tab as oe, TabItem as se, Table as ce, Typography as g } from "@mezzanine-ui/react";
@@ -0,0 +1,5 @@
1
+ import { ReactElement } from 'react';
2
+ export interface TemplateVersionsViewProps {
3
+ readonly templateId: string;
4
+ }
5
+ export declare function TemplateVersionsView({ templateId, }: TemplateVersionsViewProps): ReactElement;
@@ -0,0 +1 @@
1
+ export * from './TemplateVersionsView.cjs';
@@ -1 +1 @@
1
- export * from './TemplateVersionsView';
1
+ export * from './TemplateVersionsView.js';
@@ -0,0 +1,4 @@
1
+ export * from '../inbox/index.cjs';
2
+ export * from '../sent/index.cjs';
3
+ export * from '../cc/index.cjs';
4
+ export * from '../search/index.cjs';
@@ -1,4 +1,4 @@
1
- export * from '../inbox';
2
- export * from '../sent';
3
- export * from '../cc';
4
- export * from '../search';
1
+ export * from '../inbox/index.js';
2
+ export * from '../sent/index.js';
3
+ export * from '../cc/index.js';
4
+ export * from '../search/index.js';