@alfadocs/ui-kit 0.73.0 → 0.75.0

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 (190) hide show
  1. package/dist/_chunks/actions-cell-renderer-DLrcSTK_.js +1546 -0
  2. package/dist/_chunks/{ai-prompt-input-DFm58UjY.js → ai-prompt-input-DziJCGLe.js} +2 -2
  3. package/dist/_chunks/{audio-recorder-CjAY0GAc.js → audio-recorder-Cc3KuL9y.js} +2 -2
  4. package/dist/_chunks/{bishop-score-Bs6t6Zv1.js → bishop-score-DDW5-gb9.js} +2 -2
  5. package/dist/_chunks/{booking-CWnZhZ5g.js → booking-B1Qkcl3c.js} +2 -2
  6. package/dist/_chunks/{care-plan-card-CfIP3Vc1.js → care-plan-card-BrwhyIJI.js} +2 -2
  7. package/dist/_chunks/{care-plan-entry-card-CRbS-G00.js → care-plan-entry-card-DWEdCQM3.js} +2 -2
  8. package/dist/_chunks/data-table-tabs-BEUXiRlu.js +710 -0
  9. package/dist/_chunks/document-preview-CGSM_au9.js +181 -0
  10. package/dist/_chunks/{document-scanner-BE6Jz4Ob.js → document-scanner-B6h1Ir56.js} +2 -2
  11. package/dist/_chunks/{field-value-DCXJXKab.js → field-value-DHG6gEKS.js} +2 -2
  12. package/dist/_chunks/file-Cwe9VC1A.js +40 -0
  13. package/dist/_chunks/file-manager-UF8dkQF1.js +1776 -0
  14. package/dist/_chunks/{file-upload-B2SXhRiN.js → file-upload-DENvuhfs.js} +98 -129
  15. package/dist/_chunks/{gestational-age-calculator-C9Dfis4I.js → gestational-age-calculator-BpYw-WF-.js} +2 -2
  16. package/dist/_chunks/{header-settings-CRQDCYgr.js → header-settings-4cwQzeFc.js} +2 -2
  17. package/dist/_chunks/{icon-picker-BePK27S-.js → icon-picker-CM9ubkew.js} +2 -2
  18. package/dist/_chunks/link-cell-renderer-BQGUs45d.js +711 -0
  19. package/dist/_chunks/{locale-picker-Cbfqc0_N.js → locale-picker-GNF3lo8K.js} +2 -2
  20. package/dist/_chunks/{marketplace-app-shell-Dm6S-hun.js → marketplace-app-shell-D_1tF4La.js} +3 -3
  21. package/dist/_chunks/{muscle-scheme-B9MIkuj0.js → muscle-scheme-CFBE2dme.js} +6 -14
  22. package/dist/_chunks/{notes-panel-B_8-Mebz.js → notes-panel-Cvdp818a.js} +2 -2
  23. package/dist/_chunks/{optical-prescription-BQ75_kf6.js → optical-prescription-BEjYQjiO.js} +2 -2
  24. package/dist/_chunks/{patient-details-JkOI3Ijd.js → patient-details-DP4wKyq4.js} +3 -3
  25. package/dist/_chunks/{patient-summary-card-CQOLMH3E.js → patient-summary-card-D6kgdTNn.js} +2 -2
  26. package/dist/_chunks/{patient-table-B_mOe-ZT.js → patient-table-DweKjiXg.js} +122 -118
  27. package/dist/_chunks/periodontal-chart-D8hOFmde.js +1173 -0
  28. package/dist/_chunks/periodontal-diagnosis-cco40xTa.js +345 -0
  29. package/dist/_chunks/periodontal-risk-chart-bUGkMwDg.js +334 -0
  30. package/dist/_chunks/{popover-DGTKfLWh.js → popover-Cc0a69sw.js} +31 -28
  31. package/dist/_chunks/{pregnancy-dating-IsDVfqJX.js → pregnancy-dating-msMl_6wz.js} +2 -2
  32. package/dist/_chunks/{radiograph-panel.agent-e488ooH8.js → radiograph-panel.agent-CxF9pVxd.js} +2 -2
  33. package/dist/_chunks/{rich-text-editor-CgA2bYwi.js → rich-text-editor-CCWjNkbx.js} +186 -177
  34. package/dist/_chunks/{select-BmCbJMJS.js → select-BW5ecXlX.js} +13 -13
  35. package/dist/_chunks/{sidebar-CtU35PIX.js → sidebar-C0PbwJBc.js} +357 -320
  36. package/dist/_chunks/signature-request-C-mskXwi.js +318 -0
  37. package/dist/_chunks/{tabs-DVQ941Sj.js → tabs-CVTukWRD.js} +2 -2
  38. package/dist/_chunks/{tasks-panel-LCK5ZXvU.js → tasks-panel-CjGAhIN8.js} +2 -2
  39. package/dist/_chunks/tooth-data-BwuoKFf4.js +660 -0
  40. package/dist/_chunks/tooth-scheme-BzJ6rcte.js +1483 -0
  41. package/dist/_chunks/{unit-converter-3uL_tMCm.js → unit-converter-CSLWFDQh.js} +2 -2
  42. package/dist/agent-catalog.json +1282 -213
  43. package/dist/agent-i18n/en.json +84 -5
  44. package/dist/components/_shared/entity-card/entity-card.d.ts +1 -1
  45. package/dist/components/ai-prompt-input/index.js +1 -1
  46. package/dist/components/anamnesis-card/anamnesis-card.d.ts +1 -1
  47. package/dist/components/appointment-card/appointment-card.d.ts +1 -1
  48. package/dist/components/audio-recorder/index.js +1 -1
  49. package/dist/components/bishop-score/index.js +1 -1
  50. package/dist/components/booking/index.js +1 -1
  51. package/dist/components/card/card.d.ts +1 -1
  52. package/dist/components/care-plan-card/index.js +1 -1
  53. package/dist/components/care-plan-entry-card/index.js +1 -1
  54. package/dist/components/clinical-note-card/clinical-note-card.d.ts +1 -1
  55. package/dist/components/contact-profile-card/contact-profile-card.d.ts +1 -1
  56. package/dist/components/data-table/index.js +35 -34
  57. package/dist/components/data-table/toolbar.d.ts +1 -1
  58. package/dist/components/data-table-tabs/data-table-tabs.agent.d.ts +4 -0
  59. package/dist/components/data-table-tabs/data-table-tabs.d.ts +93 -0
  60. package/dist/components/data-table-tabs/index.d.ts +5 -0
  61. package/dist/components/data-table-tabs/index.js +8 -0
  62. package/dist/components/data-table-tabs/use-data-table-filter-tabs.d.ts +63 -0
  63. package/dist/components/document-preview/document-preview.agent.d.ts +4 -0
  64. package/dist/components/document-preview/document-preview.d.ts +41 -0
  65. package/dist/components/document-preview/index.d.ts +4 -0
  66. package/dist/components/document-preview/index.js +6 -0
  67. package/dist/components/document-scanner/index.js +1 -1
  68. package/dist/components/file-manager/dialogs.d.ts +48 -0
  69. package/dist/components/file-manager/file-manager.agent.d.ts +4 -0
  70. package/dist/components/file-manager/file-manager.d.ts +82 -0
  71. package/dist/components/file-manager/folder-tree.d.ts +12 -0
  72. package/dist/components/file-manager/index.d.ts +5 -0
  73. package/dist/components/file-manager/index.js +6 -0
  74. package/dist/components/file-manager/list-view.d.ts +49 -0
  75. package/dist/components/file-manager/toolbar.d.ts +15 -0
  76. package/dist/components/file-manager/types.d.ts +167 -0
  77. package/dist/components/file-manager/utils.d.ts +34 -0
  78. package/dist/components/file-upload/index.js +1 -1
  79. package/dist/components/gestational-age-calculator/index.js +1 -1
  80. package/dist/components/header-settings/index.js +1 -1
  81. package/dist/components/icon-picker/index.js +1 -1
  82. package/dist/components/index.d.ts +7 -0
  83. package/dist/components/locale-picker/index.js +1 -1
  84. package/dist/components/message-card/message-card.d.ts +1 -1
  85. package/dist/components/muscle-scheme/index.js +1 -1
  86. package/dist/components/notes-panel/index.js +1 -1
  87. package/dist/components/notification-card/notification-card.d.ts +1 -1
  88. package/dist/components/operator-hero/operator-hero.d.ts +1 -1
  89. package/dist/components/optical-prescription/index.js +1 -1
  90. package/dist/components/patient-details/index.js +1 -1
  91. package/dist/components/patient-summary-card/index.js +1 -1
  92. package/dist/components/patient-summary-card/patient-summary-card.d.ts +1 -1
  93. package/dist/components/patient-table/index.js +1 -1
  94. package/dist/components/payment-card/payment-card.d.ts +1 -1
  95. package/dist/components/payment-card/payment-request-card.d.ts +1 -1
  96. package/dist/components/periodontal-chart/index.d.ts +6 -0
  97. package/dist/components/periodontal-chart/index.js +22 -0
  98. package/dist/components/periodontal-chart/periodontal-chart-data.d.ts +119 -0
  99. package/dist/components/periodontal-chart/periodontal-chart.agent.d.ts +4 -0
  100. package/dist/components/periodontal-chart/periodontal-chart.d.ts +69 -0
  101. package/dist/components/periodontal-chart-card/periodontal-chart-card.d.ts +1 -1
  102. package/dist/components/periodontal-diagnosis/index.d.ts +6 -0
  103. package/dist/components/periodontal-diagnosis/index.js +13 -0
  104. package/dist/components/periodontal-diagnosis/periodontal-diagnosis-data.d.ts +30 -0
  105. package/dist/components/periodontal-diagnosis/periodontal-diagnosis.agent.d.ts +4 -0
  106. package/dist/components/periodontal-diagnosis/periodontal-diagnosis.d.ts +44 -0
  107. package/dist/components/periodontal-risk-chart/index.d.ts +6 -0
  108. package/dist/components/periodontal-risk-chart/index.js +9 -0
  109. package/dist/components/periodontal-risk-chart/periodontal-risk-chart.agent.d.ts +4 -0
  110. package/dist/components/periodontal-risk-chart/periodontal-risk-chart.d.ts +28 -0
  111. package/dist/components/periodontal-risk-chart/periodontal-risk-data.d.ts +47 -0
  112. package/dist/components/popover/index.js +1 -1
  113. package/dist/components/popover/popover.d.ts +1 -0
  114. package/dist/components/pregnancy-dating/index.js +1 -1
  115. package/dist/components/product-hub-tray/product-hub-panel.d.ts +1 -1
  116. package/dist/components/radiograph-panel/index.js +1 -1
  117. package/dist/components/rich-text-editor/index.js +1 -1
  118. package/dist/components/select/index.js +1 -1
  119. package/dist/components/sidebar/index.js +1 -1
  120. package/dist/components/sidebar/sidebar.d.ts +9 -0
  121. package/dist/components/skeleton-scheme/index.js +5 -13
  122. package/dist/components/stat/stat.d.ts +1 -1
  123. package/dist/components/tabs/index.js +1 -1
  124. package/dist/components/tasks-panel/index.js +1 -1
  125. package/dist/components/tooth-scheme/index.js +29 -28
  126. package/dist/components/unit-converter/index.js +1 -1
  127. package/dist/i18n/locales/ar.d.ts +320 -0
  128. package/dist/i18n/locales/ar.js +320 -0
  129. package/dist/i18n/locales/de.d.ts +320 -0
  130. package/dist/i18n/locales/de.js +320 -0
  131. package/dist/i18n/locales/el.d.ts +320 -0
  132. package/dist/i18n/locales/el.js +320 -0
  133. package/dist/i18n/locales/en.d.ts +320 -0
  134. package/dist/i18n/locales/en.js +320 -0
  135. package/dist/i18n/locales/es.d.ts +320 -0
  136. package/dist/i18n/locales/es.js +320 -0
  137. package/dist/i18n/locales/fr.d.ts +320 -0
  138. package/dist/i18n/locales/fr.js +320 -0
  139. package/dist/i18n/locales/hi.d.ts +320 -0
  140. package/dist/i18n/locales/hi.js +320 -0
  141. package/dist/i18n/locales/it.d.ts +320 -0
  142. package/dist/i18n/locales/it.js +320 -0
  143. package/dist/i18n/locales/ja.d.ts +320 -0
  144. package/dist/i18n/locales/ja.js +320 -0
  145. package/dist/i18n/locales/nl.d.ts +320 -0
  146. package/dist/i18n/locales/nl.js +320 -0
  147. package/dist/i18n/locales/pl.d.ts +320 -0
  148. package/dist/i18n/locales/pl.js +320 -0
  149. package/dist/i18n/locales/pt.d.ts +320 -0
  150. package/dist/i18n/locales/pt.js +320 -0
  151. package/dist/i18n/locales/ro.d.ts +320 -0
  152. package/dist/i18n/locales/ro.js +320 -0
  153. package/dist/i18n/locales/ru.d.ts +320 -0
  154. package/dist/i18n/locales/ru.js +320 -0
  155. package/dist/i18n/locales/sq.d.ts +320 -0
  156. package/dist/i18n/locales/sq.js +320 -0
  157. package/dist/i18n/locales/sv.d.ts +320 -0
  158. package/dist/i18n/locales/sv.js +320 -0
  159. package/dist/i18n/locales/tr.d.ts +320 -0
  160. package/dist/i18n/locales/tr.js +320 -0
  161. package/dist/i18n/locales/zh.d.ts +320 -0
  162. package/dist/i18n/locales/zh.js +320 -0
  163. package/dist/index.js +832 -782
  164. package/dist/locales/ar.json +320 -0
  165. package/dist/locales/de.json +320 -0
  166. package/dist/locales/el.json +320 -0
  167. package/dist/locales/en.json +320 -0
  168. package/dist/locales/es.json +320 -0
  169. package/dist/locales/fr.json +320 -0
  170. package/dist/locales/hi.json +320 -0
  171. package/dist/locales/it.json +320 -0
  172. package/dist/locales/ja.json +320 -0
  173. package/dist/locales/nl.json +320 -0
  174. package/dist/locales/pl.json +320 -0
  175. package/dist/locales/pt.json +320 -0
  176. package/dist/locales/ro.json +320 -0
  177. package/dist/locales/ru.json +320 -0
  178. package/dist/locales/sq.json +320 -0
  179. package/dist/locales/sv.json +320 -0
  180. package/dist/locales/tr.json +320 -0
  181. package/dist/locales/zh.json +320 -0
  182. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  183. package/dist/patterns/signature-request/index.d.ts +3 -0
  184. package/dist/patterns/signature-request/index.js +5 -0
  185. package/dist/patterns/signature-request/signature-request.d.ts +81 -0
  186. package/dist/tokens.css +1 -1
  187. package/package.json +29 -1
  188. package/dist/_chunks/columns-2-8lq4-b8e.js +0 -15
  189. package/dist/_chunks/link-cell-renderer-CLI7sBkX.js +0 -2210
  190. package/dist/_chunks/tooth-scheme-CX49GycY.js +0 -2133
@@ -842,6 +842,25 @@
842
842
  "neutral": "事件"
843
843
  }
844
844
  },
845
+ "dataTableTabs": {
846
+ "tablistLabel": "已保存的视图",
847
+ "addTab": "添加视图",
848
+ "newTabName": "视图 {{number}}",
849
+ "maxTabsReached": "已达到视图数量上限",
850
+ "removeTab": "移除 {{name}}",
851
+ "hint": "双击或按 F2 重命名视图。按 Delete 移除视图。",
852
+ "rename": {
853
+ "title": "重命名视图",
854
+ "inputLabel": "视图名称",
855
+ "save": "保存名称",
856
+ "cancel": "取消"
857
+ },
858
+ "announce": {
859
+ "added": "已添加视图 {{name}}",
860
+ "removed": "已移除视图 {{name}}",
861
+ "renamed": "已将视图重命名为 {{name}}"
862
+ }
863
+ },
845
864
  "dataTable": {
846
865
  "moveUp": "Move up",
847
866
  "moveDown": "Move down",
@@ -956,6 +975,120 @@
956
975
  "clear": "清除"
957
976
  }
958
977
  },
978
+ "documentPreview": {
979
+ "regionLabel": "文档预览",
980
+ "emptyTitle": "未选择文档",
981
+ "emptyDescription": "选择一个文档以在此处预览。",
982
+ "pdfLabel": "文档预览",
983
+ "imageAlt": "{{name}} 的预览",
984
+ "noPreview": "无可用预览。",
985
+ "clinical": "临床",
986
+ "fields": {
987
+ "size": "大小",
988
+ "modified": "修改时间",
989
+ "expires": "到期"
990
+ },
991
+ "signature": {
992
+ "pending": "等待签名",
993
+ "signed": "已签名"
994
+ },
995
+ "units": {
996
+ "bytes": "B",
997
+ "kilobytes": "KB",
998
+ "megabytes": "MB",
999
+ "gigabytes": "GB"
1000
+ }
1001
+ },
1002
+ "fileManager": {
1003
+ "regionLabel": "文件管理器",
1004
+ "treeLabel": "文件夹",
1005
+ "breadcrumbLabel": "文件夹路径",
1006
+ "toolbarLabel": "文件操作",
1007
+ "rootLabel": "所有文件",
1008
+ "emptyCell": "—",
1009
+ "toolbar": {
1010
+ "newFolder": "新建文件夹",
1011
+ "upload": "上传文件",
1012
+ "download": "下载",
1013
+ "rename": "重命名",
1014
+ "move": "移动",
1015
+ "delete": "删除",
1016
+ "share": "分享",
1017
+ "requestSignature": "请求签名"
1018
+ },
1019
+ "columns": {
1020
+ "name": "名称",
1021
+ "type": "类型",
1022
+ "signature": "签名",
1023
+ "size": "大小",
1024
+ "modified": "修改时间"
1025
+ },
1026
+ "signature": {
1027
+ "pending": "等待签名",
1028
+ "signed": "已签名"
1029
+ },
1030
+ "dropOverlay": "拖放文件以上传到 {{folder}}",
1031
+ "rowActions": "项目操作",
1032
+ "selected_one": "已选择 {{count}} 个项目",
1033
+ "selected_zero": "已选择 {{count}} 个项目",
1034
+ "selected_two": "已选择 {{count}} 个项目",
1035
+ "selected_few": "已选择 {{count}} 个项目",
1036
+ "selected_many": "已选择 {{count}} 个项目",
1037
+ "selected_other": "已选择 {{count}} 个项目",
1038
+ "empty": {
1039
+ "folderTitle": "此文件夹为空",
1040
+ "folderDescription": "上传文件或创建文件夹以开始。"
1041
+ },
1042
+ "announce": {
1043
+ "navigated": "已打开 {{name}}"
1044
+ },
1045
+ "dialogs": {
1046
+ "createFolder": {
1047
+ "title": "新建文件夹",
1048
+ "nameLabel": "文件夹名称",
1049
+ "confirm": "创建文件夹",
1050
+ "cancel": "取消"
1051
+ },
1052
+ "upload": {
1053
+ "title": "上传到 {{folder}}",
1054
+ "close": "完成"
1055
+ },
1056
+ "rename": {
1057
+ "title": "重命名",
1058
+ "nameLabel": "新名称",
1059
+ "confirm": "重命名",
1060
+ "cancel": "取消"
1061
+ },
1062
+ "delete": {
1063
+ "title_one": "删除 {{count}} 个项目?",
1064
+ "title_zero": "删除 {{count}} 个项目?",
1065
+ "title_two": "删除 {{count}} 个项目?",
1066
+ "title_few": "删除 {{count}} 个项目?",
1067
+ "title_many": "删除 {{count}} 个项目?",
1068
+ "title_other": "删除 {{count}} 个项目?",
1069
+ "description": "此操作无法撤销。",
1070
+ "confirm": "删除",
1071
+ "cancel": "取消"
1072
+ },
1073
+ "move": {
1074
+ "title_one": "移动 {{count}} 个项目",
1075
+ "title_zero": "移动 {{count}} 个项目",
1076
+ "title_two": "移动 {{count}} 个项目",
1077
+ "title_few": "移动 {{count}} 个项目",
1078
+ "title_many": "移动 {{count}} 个项目",
1079
+ "title_other": "移动 {{count}} 个项目",
1080
+ "treeLabel": "目标文件夹",
1081
+ "confirm": "移动到此处",
1082
+ "cancel": "取消"
1083
+ }
1084
+ },
1085
+ "units": {
1086
+ "bytes": "B",
1087
+ "kilobytes": "KB",
1088
+ "megabytes": "MB",
1089
+ "gigabytes": "GB"
1090
+ }
1091
+ },
959
1092
  "fieldPicker": {
960
1093
  "trigger": "自定义字段",
961
1094
  "title": "自定义字段",
@@ -2180,6 +2313,171 @@
2180
2313
  },
2181
2314
  "pay": "Pay now"
2182
2315
  },
2316
+ "periodontalChart": {
2317
+ "ariaLabel": "Periodontal chart",
2318
+ "column": {
2319
+ "measure": "Measurement"
2320
+ },
2321
+ "toothHeader": "Tooth {{tooth}}",
2322
+ "cell": {
2323
+ "empty": "–"
2324
+ },
2325
+ "arch": {
2326
+ "upper": "Upper arch",
2327
+ "lower": "Lower arch"
2328
+ },
2329
+ "side": {
2330
+ "buccal": "buccal",
2331
+ "lingual": "lingual"
2332
+ },
2333
+ "site": {
2334
+ "db": "disto-buccal",
2335
+ "b": "buccal",
2336
+ "mb": "mesio-buccal",
2337
+ "dl": "disto-lingual",
2338
+ "l": "lingual",
2339
+ "ml": "mesio-lingual"
2340
+ },
2341
+ "row": {
2342
+ "missing": "Missing",
2343
+ "implant": "Implant",
2344
+ "mobility": "Mobility",
2345
+ "furcation": "Furcation",
2346
+ "tooth": "Tooth",
2347
+ "note": "Note",
2348
+ "pocketDepthBuccal": "Pocket depth — buccal",
2349
+ "recessionBuccal": "Recession — buccal",
2350
+ "bleedingBuccal": "Bleeding — buccal",
2351
+ "plaqueBuccal": "Plaque — buccal",
2352
+ "pocketDepthLingual": "Pocket depth — lingual",
2353
+ "recessionLingual": "Recession — lingual",
2354
+ "bleedingLingual": "Bleeding — lingual",
2355
+ "plaqueLingual": "Plaque — lingual"
2356
+ },
2357
+ "input": {
2358
+ "pocketDepthMm": "Tooth {{tooth}} {{site}} pocket depth, millimetres",
2359
+ "recessionMm": "Tooth {{tooth}} {{site}} recession, millimetres"
2360
+ },
2361
+ "toggle": {
2362
+ "bleeding": "Tooth {{tooth}} {{site}} bleeding on probing",
2363
+ "plaque": "Tooth {{tooth}} {{site}} plaque",
2364
+ "furcation": "Tooth {{tooth}} {{side}} furcation {{n}}"
2365
+ },
2366
+ "flag": {
2367
+ "moderate": "moderate pocket",
2368
+ "severe": "severe pocket",
2369
+ "missingLabel": "Tooth {{tooth}} missing",
2370
+ "implantLabel": "Tooth {{tooth}} implant",
2371
+ "missingShort": "×",
2372
+ "implantShort": "I"
2373
+ },
2374
+ "mobility": {
2375
+ "label": "Tooth {{tooth}} mobility grade",
2376
+ "none": "–"
2377
+ },
2378
+ "note": {
2379
+ "label": "Tooth {{tooth}} note"
2380
+ },
2381
+ "curve": {
2382
+ "label": "{{arch}} probing depth and recession profile"
2383
+ },
2384
+ "index": {
2385
+ "label": "Summary indices",
2386
+ "elevated": "elevated",
2387
+ "meanPocketDepth": "Mean PD",
2388
+ "meanAttachment": "Mean CAL",
2389
+ "plaque": "Plaque",
2390
+ "bleeding": "BoP"
2391
+ },
2392
+ "unit": {
2393
+ "mm": "{{value}} mm",
2394
+ "percent": "{{value}}%"
2395
+ },
2396
+ "legend": {
2397
+ "label": "Chart legend",
2398
+ "depth": "Pocket depth",
2399
+ "recession": "Recession",
2400
+ "bleeding": "Bleeding on probing",
2401
+ "plaque": "Plaque"
2402
+ }
2403
+ },
2404
+ "periodontalRiskChart": {
2405
+ "heading": "Periodontal risk",
2406
+ "overall": {
2407
+ "label": "Overall"
2408
+ },
2409
+ "level": {
2410
+ "low": "Low",
2411
+ "moderate": "Moderate",
2412
+ "high": "High"
2413
+ },
2414
+ "factor": {
2415
+ "bleeding": "Bleeding on probing",
2416
+ "pockets": "Residual pockets ≥5 mm",
2417
+ "toothLoss": "Tooth loss",
2418
+ "boneLossAge": "Bone loss / age",
2419
+ "smoking": "Smoking",
2420
+ "systemic": "Systemic / genetic"
2421
+ },
2422
+ "factors": {
2423
+ "label": "Risk factors"
2424
+ },
2425
+ "valueUnset": "not recorded",
2426
+ "percent": "{{value}}%",
2427
+ "smoking": {
2428
+ "none": "Non-smoker",
2429
+ "former": "Former smoker",
2430
+ "light": "Light (<10/day)",
2431
+ "moderate": "Moderate (10–19/day)",
2432
+ "heavy": "Heavy (≥20/day)"
2433
+ },
2434
+ "systemic": {
2435
+ "yes": "Present",
2436
+ "no": "Absent"
2437
+ }
2438
+ },
2439
+ "periodontalDiagnosis": {
2440
+ "heading": "Periodontal diagnosis",
2441
+ "term": "Periodontitis",
2442
+ "unset": "—",
2443
+ "status": {
2444
+ "complete": "Complete",
2445
+ "incomplete": "Incomplete"
2446
+ },
2447
+ "summary": {
2448
+ "none": "No diagnosis recorded yet",
2449
+ "stage": "Stage {{roman}}",
2450
+ "grade": "Grade {{grade}}"
2451
+ },
2452
+ "stage": {
2453
+ "label": "Staging",
2454
+ "description": "Severity and complexity of management.",
2455
+ "option": "Stage {{roman}}"
2456
+ },
2457
+ "grade": {
2458
+ "label": "Grading",
2459
+ "description": "Rate of progression.",
2460
+ "option": "Grade {{grade}}"
2461
+ },
2462
+ "extent": {
2463
+ "label": "Extent",
2464
+ "localised": "Localised",
2465
+ "generalised": "Generalised",
2466
+ "molarIncisor": "Molar-incisor"
2467
+ },
2468
+ "factors": {
2469
+ "label": "Contributing factors"
2470
+ },
2471
+ "factor": {
2472
+ "interdentalCal": "Interdental CAL at the worst site",
2473
+ "radiographicBoneLoss": "Radiographic bone loss",
2474
+ "toothLossPerio": "Tooth loss from periodontitis",
2475
+ "probingDepth6": "Probing depth ≥6 mm",
2476
+ "boneLossAgeOver1": "Bone loss / age > 1.0",
2477
+ "smoker": "Smoker",
2478
+ "diabetes": "Diabetes (HbA1c ≥7%)"
2479
+ }
2480
+ },
2183
2481
  "periodontalChartCard": {
2184
2482
  "heading": "Periodontal chart",
2185
2483
  "empty": "No periodontal readings recorded.",
@@ -2655,6 +2953,28 @@
2655
2953
  "fullscreen": "切换全屏"
2656
2954
  }
2657
2955
  },
2956
+ "signatureRequest": {
2957
+ "title": "已签署文件",
2958
+ "noSignedVersions": "此文件没有已签署的版本",
2959
+ "operatorSection": "操作员(需签署人)",
2960
+ "assignToMe": "分配给我",
2961
+ "operatorPlaceholder": "选择操作员",
2962
+ "assignLater": "稍后分配",
2963
+ "operatorHint": "签名请求将根据操作员的设置,通过电子邮件或短信发送给对方。",
2964
+ "signersSection": "患者方签署人",
2965
+ "signerPlaceholder": "选择签署人",
2966
+ "channelLabel": "签名渠道",
2967
+ "viaSms": "通过短信",
2968
+ "viaEmail": "通过电子邮件",
2969
+ "viaWhatsapp": "通过 WhatsApp",
2970
+ "onThisDevice": "在此设备上",
2971
+ "noOtp": "不要求患者输入OTP",
2972
+ "noOtpWarning": "无OTP的签名证明力较低。",
2973
+ "addSigner": "添加签署人",
2974
+ "removeSigner": "移除签署人",
2975
+ "requestSignature": "请求签名",
2976
+ "close": "关闭"
2977
+ },
2658
2978
  "toothScheme": {
2659
2979
  "ariaLabel": "牙位图",
2660
2980
  "legendLabel": "状态图例",
@@ -1,4 +1,4 @@
1
- import { C as l, M as o } from "../../_chunks/marketplace-app-shell-Dm6S-hun.js";
1
+ import { C as l, M as o } from "../../_chunks/marketplace-app-shell-D_1tF4La.js";
2
2
  export {
3
3
  l as ConnectWithAlfadocs,
4
4
  o as MarketplaceAppShell
@@ -0,0 +1,3 @@
1
+ export { SignatureRequestModal } from './signature-request';
2
+ export type { SignatureRequestModalProps, SignatureRequestSubmission, SignerRequest, SignerOption, SignatureChannel, } from './signature-request';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { S as o } from "../../_chunks/signature-request-C-mskXwi.js";
2
+ export {
3
+ o as SignatureRequestModal
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,81 @@
1
+ /**
2
+ * SignatureRequestModal — the practice-side "Documenti firmati" modal that
3
+ * dispatches a document-signature request: assign the operator who must
4
+ * counter-sign (or leave the request unassigned), build the patient-side
5
+ * signer roster (up to `maxSigners`, each with their own delivery channel
6
+ * and, for on-device signing, an OTP waiver), and send.
7
+ *
8
+ * Runtime pattern: real consuming apps mount this in production (surfaced via
9
+ * `src/patterns/index.ts` and the `./patterns/signature-request` subpath).
10
+ * The component owns the form state — re-seeded from the `initial*` props
11
+ * every time `open` flips back to `true` — while the host owns `open`, the
12
+ * option lists, and what happens on submit. Multiple on-device signers sign
13
+ * sequentially in roster order — the execution side is the Signing pattern's
14
+ * multi-signer flow; this modal only encodes the intents.
15
+ */
16
+ import { type ComponentPropsWithoutRef } from 'react';
17
+ /** Delivery channel for one signer's signature request. */
18
+ export type SignatureChannel = 'sms' | 'email' | 'whatsapp' | 'on-device';
19
+ /** One selectable person/role for the operator or signer selects. */
20
+ export interface SignerOption {
21
+ value: string;
22
+ label: string;
23
+ }
24
+ /** One patient-side signer row in the submission. */
25
+ export interface SignerRequest {
26
+ signerId: string;
27
+ channel: SignatureChannel;
28
+ /** Only meaningful when `channel` is `'on-device'`. */
29
+ skipOtp?: boolean;
30
+ }
31
+ /** Payload handed to `onRequestSignature`. */
32
+ export interface SignatureRequestSubmission {
33
+ /** `null` when the counter-signing operator is left unassigned. */
34
+ operatorId: string | null;
35
+ /** 1..N signers; on-device signers sign sequentially in this order. */
36
+ signers: SignerRequest[];
37
+ }
38
+ export interface SignatureRequestModalProps {
39
+ /** Controlled open state. Reopening re-seeds the form from `initial*`. */
40
+ open: boolean;
41
+ /**
42
+ * Fires when the dialog requests a state change (<kbd>Esc</kbd> or the
43
+ * footer Close button). `false` is the dismiss signal — hosts typically
44
+ * persist a "dismissed this session" flag there.
45
+ */
46
+ onOpenChange: (open: boolean) => void;
47
+ /** Operators offered as the counter-signing signer. */
48
+ operators: SignerOption[];
49
+ /** Patient-side people/roles offered in each signer row. */
50
+ signerOptions: SignerOption[];
51
+ /** Enables the "Assign to me" shortcut targeting this operator. */
52
+ currentOperatorId?: string;
53
+ /** Offer an "Assign later" option in the operator select. Default `true`. */
54
+ allowAssignLater?: boolean;
55
+ /**
56
+ * Preselected operator; `null` preselects "Assign later" (honoured only
57
+ * while `allowAssignLater` — otherwise the first operator is seeded).
58
+ */
59
+ initialOperatorId?: string | null;
60
+ /** Seed the signer roster. Defaults to the first option, on-device. */
61
+ initialSigners?: SignerRequest[];
62
+ /** Cap on roster size. Default `2`. */
63
+ maxSigners?: number;
64
+ /** Disables all inputs and shows the primary action as loading. */
65
+ busy?: boolean;
66
+ /** Consumer-translated error shown above the footer (e.g. server failure). */
67
+ error?: string;
68
+ /** Override the dialog title. Defaults to the `ui.*` string. */
69
+ title?: string;
70
+ /** Override the dialog description. Defaults to the `ui.*` string. */
71
+ description?: string;
72
+ /** Receives the completed submission. The host closes via `onOpenChange`. */
73
+ onRequestSignature: (submission: SignatureRequestSubmission) => void;
74
+ /**
75
+ * Extra attributes for the portaled dialog surface (e.g. `dir`/`lang`
76
+ * when the host pins a locale below `<html>`, or a test id).
77
+ */
78
+ contentProps?: ComponentPropsWithoutRef<'div'>;
79
+ }
80
+ export declare const SignatureRequestModal: import("react").ForwardRefExoticComponent<SignatureRequestModalProps & import("react").RefAttributes<HTMLDivElement>>;
81
+ //# sourceMappingURL=signature-request.d.ts.map