@alfadocs/ui-kit 1.53.0 → 1.54.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.
- package/dist/_chunks/{Alfadocs_Logo_Mark-7o3L3WBI.js → Alfadocs_Logo_Mark-Z_b6ZI1g.js} +22 -9
- package/dist/_chunks/{actions-cell-renderer-DhmUGzRY.js → actions-cell-renderer-CjzSqMgn.js} +3 -3
- package/dist/_chunks/{address-autocomplete-Bp816Mb1.js → address-autocomplete-BBZ0u_U1.js} +99 -98
- package/dist/_chunks/address-fields-1pD-8hML.js +292 -0
- package/dist/_chunks/{agenda-tray-C2a8OfKC.js → agenda-tray-B8vuZKjH.js} +3 -3
- package/dist/_chunks/{ai-credits-notice-Da0fJPXO.js → ai-credits-notice-D9_qP2xc.js} +2 -2
- package/dist/_chunks/{ai-permission-notice-C5q_uHBA.js → ai-permission-notice-Cr6o1f0f.js} +3 -3
- package/dist/_chunks/{ai-prompt-input-IObcUWqB.js → ai-prompt-input-DkL8W-nt.js} +3 -3
- package/dist/_chunks/{alia-sidebar-DyQMsyiz.js → alia-sidebar-DSUQ2RpK.js} +6 -6
- package/dist/_chunks/{anamnesis-card-D4RWzQXP.js → anamnesis-card-BT1tMt5O.js} +2 -2
- package/dist/_chunks/{anamnesis-summary-rows-CnHxtht-.js → anamnesis-summary-rows-BMjSBqhS.js} +19 -19
- package/dist/_chunks/{appointment-peek-DpPzeYXm.js → appointment-peek-Cbrg36wj.js} +3 -3
- package/dist/_chunks/{appointment-timeline-By-EwmJU.js → appointment-timeline-CssAJLpL.js} +4 -4
- package/dist/_chunks/{appointment-tray-7Z3A3Xz9.js → appointment-tray-EQUjllVy.js} +3 -3
- package/dist/_chunks/{audio-recorder-BafA28cX.js → audio-recorder-BM68r6fe.js} +3 -3
- package/dist/_chunks/auth-form-parts-Celi-TLV.js +85 -0
- package/dist/_chunks/{autocomplete-IfLaXwyb.js → autocomplete-BXm1rnT0.js} +229 -220
- package/dist/_chunks/{balance-badge-cell-BtiFfFRY.js → balance-badge-cell-BDX1Krdv.js} +5 -5
- package/dist/_chunks/{bishop-score-BfDsm9HH.js → bishop-score-CGAVpIWL.js} +3 -3
- package/dist/_chunks/{bmi-calculator-BNtmMzQy.js → bmi-calculator-g_wjo4nq.js} +5 -5
- package/dist/_chunks/booking-BN7TXe27.js +3720 -0
- package/dist/_chunks/{button-group-DnSR6eN6.js → button-group-CpEycMps.js} +2 -2
- package/dist/_chunks/{calendar-workspace-LDuzo_Ie.js → calendar-workspace-BbZIx2PT.js} +32 -32
- package/dist/_chunks/{care-plan-card-BanlKJZn.js → care-plan-card-BqI-_B4T.js} +3 -3
- package/dist/_chunks/{care-plan-entry-card-ByqT84_P.js → care-plan-entry-card-CbsZmfQM.js} +2 -2
- package/dist/_chunks/{care-plan-header-BwfUHMgM.js → care-plan-header-BIS4CGcp.js} +3 -3
- package/dist/_chunks/{carousel.agent-WKODAYVw.js → carousel.agent-DW9iPLdy.js} +2 -2
- package/dist/_chunks/{chart-D37VAIa-.js → chart-C134Ibwm.js} +3 -3
- package/dist/_chunks/{chat-input-DA10w969.js → chat-input-Bg99kcl3.js} +2 -2
- package/dist/_chunks/{chat-message-DoMjMa-M.js → chat-message-D4rvLoIJ.js} +2 -2
- package/dist/_chunks/{checkbox-CZkipDn7.js → checkbox--ndmyokr.js} +19 -15
- package/dist/_chunks/{checkbox-group-C7czpHmJ.js → checkbox-group-B0oZHNT3.js} +2 -2
- package/dist/_chunks/{city-input-CAnTVgBZ.js → city-input-DyxVWSRQ.js} +10 -9
- package/dist/_chunks/{clinical-note-card-kvlUrmP-.js → clinical-note-card-gmWXEwSu.js} +2 -2
- package/dist/_chunks/{code-block-NtHjtagI.js → code-block-CRVa-Thh.js} +2 -2
- package/dist/_chunks/{color-picker-Yl99lHuF.js → color-picker-Bu0wM8xv.js} +50 -50
- package/dist/_chunks/combobox-DppVSuUm.js +614 -0
- package/dist/_chunks/{connection-status-Dz8o-Fui.js → connection-status-BwTnjnUj.js} +2 -2
- package/dist/_chunks/{contact-card-D2gXrxlL.js → contact-card-CIVCcicP.js} +2 -2
- package/dist/_chunks/{contact-profile-card-B7cXr8g5.js → contact-profile-card-B-HzocbB.js} +47 -49
- package/dist/_chunks/{control-room-rail-B446rHSL.js → control-room-rail-g4vNSPFi.js} +3 -3
- package/dist/_chunks/{country-select-BYa4BrEi.js → country-select-r3QC7cVA.js} +139 -113
- package/dist/_chunks/{cycle-calculator-D_5f9VSN.js → cycle-calculator-CwDEdmda.js} +4 -4
- package/dist/_chunks/{dashboard-grid-DWNP02Ff.js → dashboard-grid--rkojX6m.js} +2 -2
- package/dist/_chunks/{data-table-CiVyhNXx.js → data-table-DeUoJzNn.js} +8 -8
- package/dist/_chunks/{data-table-tabs-Dc6zvoI_.js → data-table-tabs-BfEmXvUk.js} +4 -4
- package/dist/_chunks/{date-picker-p9yz3pxc.js → date-picker-BnhBmcH6.js} +31 -31
- package/dist/_chunks/{date-range-picker-DIy8gNY0.js → date-range-picker-Dg050N1d.js} +65 -65
- package/dist/_chunks/{date-time-picker-C3UVzqOm.js → date-time-picker-Ckl6ezCL.js} +50 -49
- package/dist/_chunks/{description-list-9rchqp5q.js → description-list-BKQMUiXv.js} +2 -2
- package/dist/_chunks/dev-bypass-button-Y1s7gPSD.js +33 -0
- package/dist/_chunks/dev-bypass-button.agent-BJqFSTqE.js +17 -0
- package/dist/_chunks/{document-preview-VXOQZZvy.js → document-preview-C_6R_VZK.js} +4 -4
- package/dist/_chunks/{document-scanner-T5jHiraQ.js → document-scanner-pADVX447.js} +2 -2
- package/dist/_chunks/{due-date-calculator-iJXm6HOj.js → due-date-calculator-_0Dz_d7n.js} +6 -6
- package/dist/_chunks/{editable-currency-cell-renderer-DdMHme5y.js → editable-currency-cell-renderer-CfFp_1hI.js} +3 -3
- package/dist/_chunks/{editable-description-Cy3AZ5K2.js → editable-description-CCrAEJMq.js} +2 -2
- package/dist/_chunks/{editor-overlay-C0awV6ba.js → editor-overlay-CWV0chPV.js} +2 -2
- package/dist/_chunks/{email-input-ebdovOmh.js → email-input-Cmeo4zdT.js} +88 -86
- package/dist/_chunks/{empty-state-C62P_6kr.js → empty-state-CgvmPPvW.js} +44 -50
- package/dist/_chunks/{entity-summary-oW3_jFhU.js → entity-summary-C3E4JKVr.js} +3 -3
- package/dist/_chunks/{error-boundary-Cvs23EzK.js → error-boundary-Bzjk9Q2l.js} +2 -2
- package/dist/_chunks/error-page-CKFJlekz.js +275 -0
- package/dist/_chunks/error-page-illustration-QGJAvuFB.js +459 -0
- package/dist/_chunks/{face-scheme-Dg7KcbW2.js → face-scheme-pZgT26gB.js} +8 -8
- package/dist/_chunks/{fetal-weight-BoIkl2t1.js → fetal-weight-CbE61Uyk.js} +3 -3
- package/dist/_chunks/{field-array-BF2nCmvt.js → field-array-DGiIHCdy.js} +2 -2
- package/dist/_chunks/{file-manager-BfG3usGk.js → file-manager-DdsAd4TQ.js} +8 -8
- package/dist/_chunks/{file-upload-OMlGHz70.js → file-upload-CxjCs7TX.js} +46 -46
- package/dist/_chunks/{fiscal-code-input-CuuE8_dt.js → fiscal-code-input-DNA_SbQx.js} +69 -69
- package/dist/_chunks/forgot-password-form-DVVOBEGj.js +203 -0
- package/dist/_chunks/form-field-D9WfDpYB.js +165 -0
- package/dist/_chunks/form-field-context-DtiROUJV.js +36 -0
- package/dist/_chunks/{freemium-paywall-BhxKSEJD.js → freemium-paywall-CtUCj-ND.js} +2 -2
- package/dist/_chunks/{gestational-age-calculator-CjZ7v-8x.js → gestational-age-calculator-BMkoLJGR.js} +7 -7
- package/dist/_chunks/{hcg-doubling-BYMogA0e.js → hcg-doubling-BtW2pBJX.js} +4 -4
- package/dist/_chunks/{header-CzJbtTGQ.js → header--a4ZTiM5.js} +6 -3
- package/dist/_chunks/{header-settings-BqdBe4zk.js → header-settings-kkVm9VP3.js} +3 -3
- package/dist/_chunks/{help-me-write-templates-DcR-e_90.js → help-me-write-templates-Cy-iO5AU.js} +8 -8
- package/dist/_chunks/{hover-card-DEMPFs9M.js → hover-card-CcRSI4gy.js} +2 -2
- package/dist/_chunks/{iban-input-D88HRGZo.js → iban-input-CpOUMMR-.js} +35 -35
- package/dist/_chunks/{icon-button-group-DHRz90jY.js → icon-button-group-BsQkbCX4.js} +2 -2
- package/dist/_chunks/{icon-button-JAXAkqWC.js → icon-button-mKIvw90h.js} +31 -30
- package/dist/_chunks/{icon-picker-C5Fhx1-3.js → icon-picker-CSViTQL9.js} +3 -3
- package/dist/_chunks/{info-tip-DfmEvyAF.js → info-tip-Czh1izZ6.js} +2 -2
- package/dist/_chunks/is-development-CLUAnsU7.js +11 -0
- package/dist/_chunks/{key-value-pair-DZH8ESsc.js → key-value-pair-BkXjt88Z.js} +2 -2
- package/dist/_chunks/{kit-extensions-CF5mDF_Z.js → kit-extensions-Kca1tkfP.js} +6 -6
- package/dist/_chunks/{link-BlVUIKk1.js → link-2HokYuIi.js} +19 -18
- package/dist/_chunks/{link-cell-renderer-DvcbSHyp.js → link-cell-renderer-D-xv2HMS.js} +7 -7
- package/dist/_chunks/{locale-picker-DYDppQdZ.js → locale-picker-BhNIgeXA.js} +3 -3
- package/dist/_chunks/log-in-OQUEoGhX.js +16 -0
- package/dist/_chunks/login-dev-card-C7wo-Hv1.js +275 -0
- package/dist/_chunks/{logo-1FuSGx0n.js → logo-CuaqxTGK.js} +128 -77
- package/dist/_chunks/mark-pieces-m_rn1mAc.js +46 -0
- package/dist/_chunks/{marketplace-app-shell-rd1bSSm4.js → marketplace-app-shell-DbEfoNxe.js} +6 -6
- package/dist/_chunks/{message-card-Dub3790J.js → message-card-C1buKlzM.js} +2 -2
- package/dist/_chunks/{message-tray-CTd6CsnG.js → message-tray-DyBVqlGj.js} +3 -3
- package/dist/_chunks/{multi-select-Bx0_cgPI.js → multi-select-CVb6PJOK.js} +87 -85
- package/dist/_chunks/{muscle-scheme-X2bdmsQt.js → muscle-scheme-DfYQ0Z3v.js} +2 -2
- package/dist/_chunks/{nav-grid-BnY0Ilet.js → nav-grid-BPbmzHY0.js} +2 -2
- package/dist/_chunks/{note-attachment-CpPRIfSn.js → note-attachment-I1NLoeRZ.js} +2 -2
- package/dist/_chunks/{note-timeline-CZUmobcn.js → note-timeline-CsY8YOE7.js} +2 -2
- package/dist/_chunks/{notes-panel-CPfxz-1j.js → notes-panel-BPb-2ZnJ.js} +6 -6
- package/dist/_chunks/{notification-card-B39g86vM.js → notification-card-DubeUbVJ.js} +2 -2
- package/dist/_chunks/{notification-tray-WsP7c1jf.js → notification-tray-DJ0gtfu6.js} +3 -3
- package/dist/_chunks/{number-input-BLrx3utH.js → number-input-DRDRYZJg.js} +41 -41
- package/dist/_chunks/{optical-prescription-x--Rpmmx.js → optical-prescription-DBvebioV.js} +5 -5
- package/dist/_chunks/{otp-input-Dz8WMg4F.js → otp-input-BedEqmIV.js} +47 -45
- package/dist/_chunks/{panel-subview-DAY-ToM3.js → panel-subview-D8HGXaUa.js} +2 -2
- package/dist/_chunks/password-input-B7pQTk7l.js +447 -0
- package/dist/_chunks/{patient-details-BSAMAd3I.js → patient-details-BP9r_lNS.js} +3 -3
- package/dist/_chunks/{patient-field-row-dUF2cW2G.js → patient-field-row-BK9JjbzA.js} +19 -19
- package/dist/_chunks/{patient-search-CXl0FNfN.js → patient-search-Dm3w0jWw.js} +3 -3
- package/dist/_chunks/{patient-summary-card-DF-Mxcma.js → patient-summary-card-DGbRLzF1.js} +6 -6
- package/dist/_chunks/{payment-form-DxsjXYHJ.js → payment-form-B08gHZIY.js} +327 -295
- package/dist/_chunks/{payment-request-card-BFsmHLtf.js → payment-request-card-CR7SjsRs.js} +4 -4
- package/dist/_chunks/{pdf-viewer-hzfM5pZf.js → pdf-viewer-zv7pkUPA.js} +2 -2
- package/dist/_chunks/{periodontal-chart-Bvii6uOg.js → periodontal-chart-5nLsSuRM.js} +2 -2
- package/dist/_chunks/{periodontal-chart-card-DTbvFQO7.js → periodontal-chart-card-Djr3en8Q.js} +2 -2
- package/dist/_chunks/{periodontal-diagnosis-BqEo0usu.js → periodontal-diagnosis-DmVIqXtC.js} +4 -4
- package/dist/_chunks/{permission-matrix-DHKECaNW.js → permission-matrix-DuTkUHxe.js} +3 -3
- package/dist/_chunks/{phone-input-opMMHkyh.js → phone-input-BzeUr49H.js} +253 -204
- package/dist/_chunks/{popover-CGYPYIVi.js → popover-9_v-7fJc.js} +2 -2
- package/dist/_chunks/{postal-code-input-Dv02t5MD.js → postal-code-input-BmbqjkfD.js} +71 -71
- package/dist/_chunks/{practice-results-B9uV0TT8.js → practice-results-D3liWOz1.js} +4 -4
- package/dist/_chunks/{pregnancy-dating-CcPxK3S3.js → pregnancy-dating-DV3o2PPl.js} +8 -8
- package/dist/_chunks/{pregnancy-weight-gain-tGbbravi.js → pregnancy-weight-gain-BLjWgtS9.js} +5 -5
- package/dist/_chunks/{privacy-lock-Bh4O7Y7g.js → privacy-lock-KDPKiTpH.js} +3 -3
- package/dist/_chunks/{privacy-mask-CK-9sxeI.js → privacy-mask-H8yYwgIb.js} +2 -2
- package/dist/_chunks/{product-hub-panel-D87kbz5j.js → product-hub-panel-M5X3TYzq.js} +4 -4
- package/dist/_chunks/{province-select-BZtM0RSR.js → province-select-DtF2ukoC.js} +92 -79
- package/dist/_chunks/{public-footer.agent-CVYmHY94.js → public-footer-Bfs81Qzp.js} +188 -219
- package/dist/_chunks/public-footer.agent-CRZCrq3_.js +37 -0
- package/dist/_chunks/{public-header.agent-1mcrQqIM.js → public-header.agent-CrXkGtTF.js} +3 -3
- package/dist/_chunks/{qr-code-C3m9o7om.js → qr-code-Ofx7ryyu.js} +2 -2
- package/dist/_chunks/{radio-6fml-pWk.js → radio-BBbMdbE_.js} +15 -11
- package/dist/_chunks/{radio-group-CIjmyioi.js → radio-group-BT97ty7o.js} +2 -2
- package/dist/_chunks/{radiograph-panel.agent-BWBaxJ8e.js → radiograph-panel.agent-C4j6eoQn.js} +8 -8
- package/dist/_chunks/recaptcha-widget-CsvwlYTE.js +234 -0
- package/dist/_chunks/registration-form-CBDeXzlk.js +748 -0
- package/dist/_chunks/{reviews-panel-DUgqU-Wr.js → reviews-panel-CyxZ0VmZ.js} +3 -3
- package/dist/_chunks/{rich-text-editor-C7N4Cem6.js → rich-text-editor-CCCSEPlG.js} +13 -13
- package/dist/_chunks/safe-href-5dbsfbQn.js +22 -0
- package/dist/_chunks/{search-bar-Blq_QeSe.js → search-bar-D695TCDH.js} +2 -2
- package/dist/_chunks/{search-input-DfsAu3P2.js → search-input-Tl-RkS5x.js} +31 -31
- package/dist/_chunks/{select-Br88h070.js → select-DHPmASkG.js} +293 -228
- package/dist/_chunks/{sheet-BE6oi30q.js → sheet-BTgxkDJS.js} +2 -2
- package/dist/_chunks/{sign-document-Buw-zC_7.js → sign-document-B_3U-S6g.js} +2 -2
- package/dist/_chunks/{sign-in-with-alfadocs-button-Bd4VPGQh.js → sign-in-with-alfadocs-button-DFmgQuDo.js} +3 -3
- package/dist/_chunks/{signature-field-DBIGiY-J.js → signature-field-DLDznGnB.js} +2 -2
- package/dist/_chunks/{signature-request-DqZkn-iB.js → signature-request-BdolmJk4.js} +6 -6
- package/dist/_chunks/signed-out-frame-dz1rLJ65.js +171 -0
- package/dist/_chunks/{slider-BRq2lL-l.js → slider-pZ95bEm7.js} +50 -50
- package/dist/_chunks/{slot-grid-kq7bDdrx.js → slot-grid-kCDoV3k4.js} +3 -3
- package/dist/_chunks/{social-sign-in-button-Bb2UQpsA.js → social-sign-in-button-BMGNlUWs.js} +2 -2
- package/dist/_chunks/spinner-a0FTYX9Q.js +211 -0
- package/dist/_chunks/{streaming-text-D0IJeRBg.js → streaming-text-BAPn_sZs.js} +2 -2
- package/dist/_chunks/{switch-DXGD2Drz.js → switch-D--x7n6h.js} +29 -29
- package/dist/_chunks/{tabs-DLXVEDsa.js → tabs-yIY-RySP.js} +2 -2
- package/dist/_chunks/{task-card-Cfl08MCS.js → task-card-C02Km4Gb.js} +2 -2
- package/dist/_chunks/{task-editor-CxF-sBnu.js → task-editor-Dl27rI3J.js} +15 -15
- package/dist/_chunks/{task-tray-rAGslT2C.js → task-tray-By6DPwbT.js} +4 -4
- package/dist/_chunks/{tasks-panel-Dkm8SnmV.js → tasks-panel-BkN9sROF.js} +7 -7
- package/dist/_chunks/{text-area-Cjtw7mna.js → text-area-CDuItrvL.js} +23 -23
- package/dist/_chunks/{text-input-CLaItY93.js → text-input-lZ2-t-p2.js} +37 -37
- package/dist/_chunks/{theme-toggle-Byg0x2vB.js → theme-toggle-BAHz3itd.js} +4 -4
- package/dist/_chunks/{time-picker-BG7G3ujX.js → time-picker-DKKmpFh3.js} +28 -28
- package/dist/_chunks/{toast-6wbpghjF.js → toast-UMUvXFsA.js} +2 -2
- package/dist/_chunks/{tool-rail-CXcLzxPb.js → tool-rail-CwXN-sDC.js} +2 -2
- package/dist/_chunks/{tooth-scheme-BLbwUVer.js → tooth-scheme-BAMhwCZe.js} +3 -3
- package/dist/_chunks/{transcript-panel-Dve7bsm7.js → transcript-panel-CLgtyVbR.js} +2 -2
- package/dist/_chunks/{unit-converter-D8WnJbZm.js → unit-converter-CXNr5P4J.js} +4 -4
- package/dist/_chunks/{use-appointment-details-read-W6h4oTHx.js → use-appointment-details-read-BEbLseXW.js} +13 -13
- package/dist/_chunks/use-field-match-pdbEnKvO.js +28 -0
- package/dist/_chunks/use-password-requirements-C8DdwPEy.js +69 -0
- package/dist/_chunks/use-prism-DaspP8w-.js +55 -0
- package/dist/_chunks/use-registration-submit-DxCWic5_.js +141 -0
- package/dist/_chunks/{wallet-pay-button-C-GFl7RO.js → wallet-pay-button-Dew8Pmgq.js} +2 -2
- package/dist/_chunks/{warning-stack-CzKSeB5v.js → warning-stack-B_v_qMBI.js} +2 -2
- package/dist/_chunks/{widget-picker-b5NCHxFe.js → widget-picker-BCbwD5Z1.js} +2 -2
- package/dist/_chunks/{workflow-map-C1OjRhM3.js → workflow-map-PzamnfJK.js} +4 -4
- package/dist/agent-catalog.json +289 -103
- package/dist/agent-i18n/en.json +29 -8
- package/dist/brand/logo-asset/Alfadocs_Logo_Main.d.ts +2 -1
- package/dist/brand/logo-asset/Alfadocs_Logo_Mark.d.ts +2 -1
- package/dist/brand/logo-asset/Alfadocs_Logo_Neg.d.ts +2 -1
- package/dist/brand/logo-asset/index.d.ts +1 -0
- package/dist/brand/logo-asset/mark-piece.d.ts +10 -0
- package/dist/components/_shared/safe-href.d.ts +21 -0
- package/dist/components/address-autocomplete/index.js +1 -1
- package/dist/components/address-fields/address-fields.d.ts +7 -0
- package/dist/components/address-fields/index.js +1 -1
- package/dist/components/agenda-tray/index.js +1 -1
- package/dist/components/ai-credits-notice/index.js +1 -1
- package/dist/components/ai-permission-notice/index.js +1 -1
- package/dist/components/ai-prompt-input/index.js +1 -1
- package/dist/components/anamnesis-card/index.js +1 -1
- package/dist/components/appointment-card/index.js +1 -1
- package/dist/components/appointment-details-panel/index.js +1 -1
- package/dist/components/appointment-peek/index.js +1 -1
- package/dist/components/appointment-timeline/index.js +1 -1
- package/dist/components/audio-recorder/index.js +1 -1
- package/dist/components/autocomplete/autocomplete.d.ts +7 -0
- package/dist/components/autocomplete/index.js +1 -1
- package/dist/components/bishop-score/index.js +1 -1
- package/dist/components/bmi-calculator/index.js +1 -1
- package/dist/components/booking/booking-types.d.ts +71 -2
- package/dist/components/booking/booking.d.ts +1 -1
- package/dist/components/booking/details-form.d.ts +5 -0
- package/dist/components/booking/index.d.ts +1 -1
- package/dist/components/booking/index.js +1 -1
- package/dist/components/button/index.js +1 -1
- package/dist/components/button-group/index.js +1 -1
- package/dist/components/care-plan-card/index.js +1 -1
- package/dist/components/care-plan-entry-card/index.js +1 -1
- package/dist/components/care-plan-header/index.js +1 -1
- package/dist/components/carousel/index.js +1 -1
- package/dist/components/chart/index.js +1 -1
- package/dist/components/chat-input/index.js +1 -1
- package/dist/components/chat-message/index.js +1 -1
- package/dist/components/checkbox/index.js +1 -1
- package/dist/components/checkbox-group/index.js +1 -1
- package/dist/components/city-input/city-input.d.ts +2 -5
- package/dist/components/city-input/index.js +1 -1
- package/dist/components/clinical-note-card/index.js +1 -1
- package/dist/components/color-picker/index.js +1 -1
- package/dist/components/combobox/combobox.d.ts +10 -4
- package/dist/components/combobox/index.js +1 -1
- package/dist/components/command-palette/command-palette.d.ts +1 -1
- package/dist/components/connection-status/index.js +1 -1
- package/dist/components/contact-card/index.js +1 -1
- package/dist/components/contact-profile-card/index.js +1 -1
- package/dist/components/control-room-rail/index.js +1 -1
- package/dist/components/country-select/country-select.d.ts +3 -4
- package/dist/components/country-select/index.js +1 -1
- package/dist/components/cycle-calculator/index.js +1 -1
- package/dist/components/dashboard-grid/index.js +1 -1
- package/dist/components/data-table/index.js +4 -4
- package/dist/components/data-table-tabs/index.js +1 -1
- package/dist/components/date-picker/index.js +1 -1
- package/dist/components/date-range-picker/index.js +1 -1
- package/dist/components/date-time-picker/index.js +1 -1
- package/dist/components/description-list/index.js +1 -1
- package/dist/components/dev-bypass-button/dev-bypass-button.agent.d.ts +3 -0
- package/dist/components/dev-bypass-button/dev-bypass-button.d.ts +18 -0
- package/dist/components/dev-bypass-button/index.d.ts +4 -0
- package/dist/components/dev-bypass-button/index.js +7 -0
- package/dist/components/document-preview/index.js +1 -1
- package/dist/components/document-scanner/index.js +1 -1
- package/dist/components/due-date-calculator/index.js +1 -1
- package/dist/components/editable-description/index.js +1 -1
- package/dist/components/editor-overlay/index.js +1 -1
- package/dist/components/email-input/email-input.d.ts +13 -4
- package/dist/components/email-input/index.js +1 -1
- package/dist/components/empty-state/index.js +1 -1
- package/dist/components/entity-summary/index.js +1 -1
- package/dist/components/error-boundary/index.js +1 -1
- package/dist/components/face-scheme/index.js +1 -1
- package/dist/components/fetal-weight/index.js +1 -1
- package/dist/components/field-array/index.js +1 -1
- package/dist/components/file-manager/index.js +1 -1
- package/dist/components/file-upload/index.js +1 -1
- package/dist/components/fiscal-code-input/index.js +1 -1
- package/dist/components/form-field/form-field-context.d.ts +20 -0
- package/dist/components/form-field/index.d.ts +1 -1
- package/dist/components/form-field/index.js +7 -5
- package/dist/components/freemium-paywall/index.js +1 -1
- package/dist/components/gestational-age-calculator/index.js +1 -1
- package/dist/components/hcg-doubling/index.js +1 -1
- package/dist/components/header/index.js +1 -1
- package/dist/components/header-settings/index.js +1 -1
- package/dist/components/hover-card/index.js +1 -1
- package/dist/components/iban-input/index.js +1 -1
- package/dist/components/icon-button/index.js +1 -1
- package/dist/components/icon-button-group/index.js +1 -1
- package/dist/components/icon-picker/index.js +1 -1
- package/dist/components/index.d.ts +7 -2
- package/dist/components/info-tip/index.js +1 -1
- package/dist/components/key-value-pair/index.js +1 -1
- package/dist/components/link/index.js +1 -1
- package/dist/components/locale-picker/index.js +1 -1
- package/dist/components/logo/index.js +1 -1
- package/dist/components/logo/logo.d.ts +15 -0
- package/dist/components/message-card/index.js +1 -1
- package/dist/components/message-tray/index.js +1 -1
- package/dist/components/multi-select/index.js +1 -1
- package/dist/components/muscle-scheme/index.js +1 -1
- package/dist/components/nav-grid/index.js +1 -1
- package/dist/components/note-timeline/index.js +1 -1
- package/dist/components/notes-panel/index.js +1 -1
- package/dist/components/notification-card/index.js +1 -1
- package/dist/components/notification-tray/index.js +1 -1
- package/dist/components/number-input/index.js +1 -1
- package/dist/components/optical-prescription/index.js +1 -1
- package/dist/components/otp-input/index.js +1 -1
- package/dist/components/panel-subview/index.js +1 -1
- package/dist/components/password-input/index.js +3 -2
- package/dist/components/password-input/password-input.d.ts +6 -3
- package/dist/components/password-input/use-password-requirements.d.ts +9 -0
- package/dist/components/patient-details/index.js +1 -1
- package/dist/components/patient-search/index.js +1 -1
- package/dist/components/patient-summary-card/index.js +1 -1
- package/dist/components/patient-table/index.js +1 -1
- package/dist/components/payment-card/index.js +1 -1
- package/dist/components/payment-form/index.js +1 -1
- package/dist/components/payment-form/payment-form.d.ts +8 -0
- package/dist/components/pdf-viewer/index.js +1 -1
- package/dist/components/periodontal-chart/index.js +1 -1
- package/dist/components/periodontal-chart-card/index.js +1 -1
- package/dist/components/periodontal-diagnosis/index.js +1 -1
- package/dist/components/permission-matrix/index.js +1 -1
- package/dist/components/phone-input/index.js +1 -1
- package/dist/components/phone-input/phone-input.d.ts +13 -0
- package/dist/components/popover/index.js +1 -1
- package/dist/components/postal-code-input/index.js +1 -1
- package/dist/components/postal-code-input/postal-code-input.d.ts +3 -2
- package/dist/components/practice-results/index.js +1 -1
- package/dist/components/pregnancy-dating/index.js +1 -1
- package/dist/components/pregnancy-weight-gain/index.js +1 -1
- package/dist/components/privacy-lock/index.js +1 -1
- package/dist/components/product-hub-tray/index.js +1 -1
- package/dist/components/province-select/index.js +1 -1
- package/dist/components/province-select/province-select.d.ts +3 -2
- package/dist/components/public-footer/index.js +6 -5
- package/dist/components/public-footer/public-footer.d.ts +8 -0
- package/dist/components/public-header/index.js +1 -1
- package/dist/components/qr-code/index.js +1 -1
- package/dist/components/radio/index.js +1 -1
- package/dist/components/radio-group/index.js +2 -2
- package/dist/components/radiograph-panel/index.js +1 -1
- package/dist/components/recaptcha-widget/index.js +1 -1
- package/dist/components/recaptcha-widget/recaptcha-widget.d.ts +13 -1
- package/dist/components/reviews-panel/index.js +1 -1
- package/dist/components/rich-text-editor/index.js +2 -2
- package/dist/components/search-bar/index.js +1 -1
- package/dist/components/search-input/index.js +1 -1
- package/dist/components/select/index.js +1 -1
- package/dist/components/select/select.d.ts +6 -2
- package/dist/components/sheet/index.js +1 -1
- package/dist/components/sign-document/index.js +1 -1
- package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
- package/dist/components/signature-field/index.js +1 -1
- package/dist/components/skeleton-scheme/index.js +1 -1
- package/dist/components/slider/index.js +1 -1
- package/dist/components/slot-grid/index.js +1 -1
- package/dist/components/social-sign-in-button/index.js +1 -1
- package/dist/components/spinner/index.js +1 -1
- package/dist/components/spinner/spinner.d.ts +1 -1
- package/dist/components/streaming-text/index.js +1 -1
- package/dist/components/switch/index.js +1 -1
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/task-card/index.js +1 -1
- package/dist/components/task-editor/index.js +1 -1
- package/dist/components/task-tray/index.js +1 -1
- package/dist/components/tasks-panel/index.js +1 -1
- package/dist/components/text-area/index.js +1 -1
- package/dist/components/text-input/index.js +1 -1
- package/dist/components/theme-toggle/index.js +1 -1
- package/dist/components/time-picker/index.js +1 -1
- package/dist/components/toast/index.js +1 -1
- package/dist/components/tool-rail/index.js +1 -1
- package/dist/components/tooth-scheme/index.js +1 -1
- package/dist/components/transcript-panel/index.js +1 -1
- package/dist/components/unit-converter/index.js +1 -1
- package/dist/components/wallet-pay-button/index.js +1 -1
- package/dist/components/warning-stack/index.js +1 -1
- package/dist/components/widget-picker/index.js +1 -1
- package/dist/components/workflow/index.js +1 -1
- package/dist/error-pages/400.ar.html +1 -1
- package/dist/error-pages/400.de.html +1 -1
- package/dist/error-pages/400.el.html +1 -1
- package/dist/error-pages/400.en.html +1 -1
- package/dist/error-pages/400.es.html +1 -1
- package/dist/error-pages/400.fr.html +1 -1
- package/dist/error-pages/400.hi.html +1 -1
- package/dist/error-pages/400.html +1 -1
- package/dist/error-pages/400.it.html +1 -1
- package/dist/error-pages/400.ja.html +1 -1
- package/dist/error-pages/400.nl.html +1 -1
- package/dist/error-pages/400.pl.html +1 -1
- package/dist/error-pages/400.pt.html +1 -1
- package/dist/error-pages/400.ro.html +1 -1
- package/dist/error-pages/400.ru.html +1 -1
- package/dist/error-pages/400.sq.html +1 -1
- package/dist/error-pages/400.sv.html +1 -1
- package/dist/error-pages/400.tr.html +1 -1
- package/dist/error-pages/400.zh.html +1 -1
- package/dist/error-pages/401.ar.html +1 -1
- package/dist/error-pages/401.de.html +1 -1
- package/dist/error-pages/401.el.html +1 -1
- package/dist/error-pages/401.en.html +1 -1
- package/dist/error-pages/401.es.html +1 -1
- package/dist/error-pages/401.fr.html +1 -1
- package/dist/error-pages/401.hi.html +1 -1
- package/dist/error-pages/401.html +1 -1
- package/dist/error-pages/401.it.html +1 -1
- package/dist/error-pages/401.ja.html +1 -1
- package/dist/error-pages/401.nl.html +1 -1
- package/dist/error-pages/401.pl.html +1 -1
- package/dist/error-pages/401.pt.html +1 -1
- package/dist/error-pages/401.ro.html +1 -1
- package/dist/error-pages/401.ru.html +1 -1
- package/dist/error-pages/401.sq.html +1 -1
- package/dist/error-pages/401.sv.html +1 -1
- package/dist/error-pages/401.tr.html +1 -1
- package/dist/error-pages/401.zh.html +1 -1
- package/dist/error-pages/403.ar.html +1 -1
- package/dist/error-pages/403.de.html +1 -1
- package/dist/error-pages/403.el.html +1 -1
- package/dist/error-pages/403.en.html +1 -1
- package/dist/error-pages/403.es.html +1 -1
- package/dist/error-pages/403.fr.html +1 -1
- package/dist/error-pages/403.hi.html +1 -1
- package/dist/error-pages/403.html +1 -1
- package/dist/error-pages/403.it.html +1 -1
- package/dist/error-pages/403.ja.html +1 -1
- package/dist/error-pages/403.nl.html +1 -1
- package/dist/error-pages/403.pl.html +1 -1
- package/dist/error-pages/403.pt.html +1 -1
- package/dist/error-pages/403.ro.html +1 -1
- package/dist/error-pages/403.ru.html +1 -1
- package/dist/error-pages/403.sq.html +1 -1
- package/dist/error-pages/403.sv.html +1 -1
- package/dist/error-pages/403.tr.html +1 -1
- package/dist/error-pages/403.zh.html +1 -1
- package/dist/error-pages/404.ar.html +1 -1
- package/dist/error-pages/404.de.html +1 -1
- package/dist/error-pages/404.el.html +1 -1
- package/dist/error-pages/404.en.html +1 -1
- package/dist/error-pages/404.es.html +1 -1
- package/dist/error-pages/404.fr.html +1 -1
- package/dist/error-pages/404.hi.html +1 -1
- package/dist/error-pages/404.html +1 -1
- package/dist/error-pages/404.it.html +1 -1
- package/dist/error-pages/404.ja.html +1 -1
- package/dist/error-pages/404.nl.html +1 -1
- package/dist/error-pages/404.pl.html +1 -1
- package/dist/error-pages/404.pt.html +1 -1
- package/dist/error-pages/404.ro.html +1 -1
- package/dist/error-pages/404.ru.html +1 -1
- package/dist/error-pages/404.sq.html +1 -1
- package/dist/error-pages/404.sv.html +1 -1
- package/dist/error-pages/404.tr.html +1 -1
- package/dist/error-pages/404.zh.html +1 -1
- package/dist/error-pages/405.ar.html +1 -1
- package/dist/error-pages/405.de.html +1 -1
- package/dist/error-pages/405.el.html +1 -1
- package/dist/error-pages/405.en.html +1 -1
- package/dist/error-pages/405.es.html +1 -1
- package/dist/error-pages/405.fr.html +1 -1
- package/dist/error-pages/405.hi.html +1 -1
- package/dist/error-pages/405.html +1 -1
- package/dist/error-pages/405.it.html +1 -1
- package/dist/error-pages/405.ja.html +1 -1
- package/dist/error-pages/405.nl.html +1 -1
- package/dist/error-pages/405.pl.html +1 -1
- package/dist/error-pages/405.pt.html +1 -1
- package/dist/error-pages/405.ro.html +1 -1
- package/dist/error-pages/405.ru.html +1 -1
- package/dist/error-pages/405.sq.html +1 -1
- package/dist/error-pages/405.sv.html +1 -1
- package/dist/error-pages/405.tr.html +1 -1
- package/dist/error-pages/405.zh.html +1 -1
- package/dist/error-pages/410.ar.html +1 -1
- package/dist/error-pages/410.de.html +1 -1
- package/dist/error-pages/410.el.html +1 -1
- package/dist/error-pages/410.en.html +1 -1
- package/dist/error-pages/410.es.html +1 -1
- package/dist/error-pages/410.fr.html +1 -1
- package/dist/error-pages/410.hi.html +1 -1
- package/dist/error-pages/410.html +1 -1
- package/dist/error-pages/410.it.html +1 -1
- package/dist/error-pages/410.ja.html +1 -1
- package/dist/error-pages/410.nl.html +1 -1
- package/dist/error-pages/410.pl.html +1 -1
- package/dist/error-pages/410.pt.html +1 -1
- package/dist/error-pages/410.ro.html +1 -1
- package/dist/error-pages/410.ru.html +1 -1
- package/dist/error-pages/410.sq.html +1 -1
- package/dist/error-pages/410.sv.html +1 -1
- package/dist/error-pages/410.tr.html +1 -1
- package/dist/error-pages/410.zh.html +1 -1
- package/dist/error-pages/419.ar.html +1 -1
- package/dist/error-pages/419.de.html +1 -1
- package/dist/error-pages/419.el.html +1 -1
- package/dist/error-pages/419.en.html +1 -1
- package/dist/error-pages/419.es.html +1 -1
- package/dist/error-pages/419.fr.html +1 -1
- package/dist/error-pages/419.hi.html +1 -1
- package/dist/error-pages/419.html +1 -1
- package/dist/error-pages/419.it.html +1 -1
- package/dist/error-pages/419.ja.html +1 -1
- package/dist/error-pages/419.nl.html +1 -1
- package/dist/error-pages/419.pl.html +1 -1
- package/dist/error-pages/419.pt.html +1 -1
- package/dist/error-pages/419.ro.html +1 -1
- package/dist/error-pages/419.ru.html +1 -1
- package/dist/error-pages/419.sq.html +1 -1
- package/dist/error-pages/419.sv.html +1 -1
- package/dist/error-pages/419.tr.html +1 -1
- package/dist/error-pages/419.zh.html +1 -1
- package/dist/error-pages/429.ar.html +1 -1
- package/dist/error-pages/429.de.html +1 -1
- package/dist/error-pages/429.el.html +1 -1
- package/dist/error-pages/429.en.html +1 -1
- package/dist/error-pages/429.es.html +1 -1
- package/dist/error-pages/429.fr.html +1 -1
- package/dist/error-pages/429.hi.html +1 -1
- package/dist/error-pages/429.html +1 -1
- package/dist/error-pages/429.it.html +1 -1
- package/dist/error-pages/429.ja.html +1 -1
- package/dist/error-pages/429.nl.html +1 -1
- package/dist/error-pages/429.pl.html +1 -1
- package/dist/error-pages/429.pt.html +1 -1
- package/dist/error-pages/429.ro.html +1 -1
- package/dist/error-pages/429.ru.html +1 -1
- package/dist/error-pages/429.sq.html +1 -1
- package/dist/error-pages/429.sv.html +1 -1
- package/dist/error-pages/429.tr.html +1 -1
- package/dist/error-pages/429.zh.html +1 -1
- package/dist/error-pages/500.ar.html +1 -1
- package/dist/error-pages/500.de.html +1 -1
- package/dist/error-pages/500.el.html +1 -1
- package/dist/error-pages/500.en.html +1 -1
- package/dist/error-pages/500.es.html +1 -1
- package/dist/error-pages/500.fr.html +1 -1
- package/dist/error-pages/500.hi.html +1 -1
- package/dist/error-pages/500.html +1 -1
- package/dist/error-pages/500.it.html +1 -1
- package/dist/error-pages/500.ja.html +1 -1
- package/dist/error-pages/500.nl.html +1 -1
- package/dist/error-pages/500.pl.html +1 -1
- package/dist/error-pages/500.pt.html +1 -1
- package/dist/error-pages/500.ro.html +1 -1
- package/dist/error-pages/500.ru.html +1 -1
- package/dist/error-pages/500.sq.html +1 -1
- package/dist/error-pages/500.sv.html +1 -1
- package/dist/error-pages/500.tr.html +1 -1
- package/dist/error-pages/500.zh.html +1 -1
- package/dist/error-pages/502.ar.html +1 -1
- package/dist/error-pages/502.de.html +1 -1
- package/dist/error-pages/502.el.html +1 -1
- package/dist/error-pages/502.en.html +1 -1
- package/dist/error-pages/502.es.html +1 -1
- package/dist/error-pages/502.fr.html +1 -1
- package/dist/error-pages/502.hi.html +1 -1
- package/dist/error-pages/502.html +1 -1
- package/dist/error-pages/502.it.html +1 -1
- package/dist/error-pages/502.ja.html +1 -1
- package/dist/error-pages/502.nl.html +1 -1
- package/dist/error-pages/502.pl.html +1 -1
- package/dist/error-pages/502.pt.html +1 -1
- package/dist/error-pages/502.ro.html +1 -1
- package/dist/error-pages/502.ru.html +1 -1
- package/dist/error-pages/502.sq.html +1 -1
- package/dist/error-pages/502.sv.html +1 -1
- package/dist/error-pages/502.tr.html +1 -1
- package/dist/error-pages/502.zh.html +1 -1
- package/dist/error-pages/503.ar.html +1 -1
- package/dist/error-pages/503.de.html +1 -1
- package/dist/error-pages/503.el.html +1 -1
- package/dist/error-pages/503.en.html +1 -1
- package/dist/error-pages/503.es.html +1 -1
- package/dist/error-pages/503.fr.html +1 -1
- package/dist/error-pages/503.hi.html +1 -1
- package/dist/error-pages/503.html +1 -1
- package/dist/error-pages/503.it.html +1 -1
- package/dist/error-pages/503.ja.html +1 -1
- package/dist/error-pages/503.nl.html +1 -1
- package/dist/error-pages/503.pl.html +1 -1
- package/dist/error-pages/503.pt.html +1 -1
- package/dist/error-pages/503.ro.html +1 -1
- package/dist/error-pages/503.ru.html +1 -1
- package/dist/error-pages/503.sq.html +1 -1
- package/dist/error-pages/503.sv.html +1 -1
- package/dist/error-pages/503.tr.html +1 -1
- package/dist/error-pages/503.zh.html +1 -1
- package/dist/error-pages/504.ar.html +1 -1
- package/dist/error-pages/504.de.html +1 -1
- package/dist/error-pages/504.el.html +1 -1
- package/dist/error-pages/504.en.html +1 -1
- package/dist/error-pages/504.es.html +1 -1
- package/dist/error-pages/504.fr.html +1 -1
- package/dist/error-pages/504.hi.html +1 -1
- package/dist/error-pages/504.html +1 -1
- package/dist/error-pages/504.it.html +1 -1
- package/dist/error-pages/504.ja.html +1 -1
- package/dist/error-pages/504.nl.html +1 -1
- package/dist/error-pages/504.pl.html +1 -1
- package/dist/error-pages/504.pt.html +1 -1
- package/dist/error-pages/504.ro.html +1 -1
- package/dist/error-pages/504.ru.html +1 -1
- package/dist/error-pages/504.sq.html +1 -1
- package/dist/error-pages/504.sv.html +1 -1
- package/dist/error-pages/504.tr.html +1 -1
- package/dist/error-pages/504.zh.html +1 -1
- package/dist/error-pages/maintenance.ar.html +1 -1
- package/dist/error-pages/maintenance.de.html +1 -1
- package/dist/error-pages/maintenance.el.html +1 -1
- package/dist/error-pages/maintenance.en.html +1 -1
- package/dist/error-pages/maintenance.es.html +1 -1
- package/dist/error-pages/maintenance.fr.html +1 -1
- package/dist/error-pages/maintenance.hi.html +1 -1
- package/dist/error-pages/maintenance.html +1 -1
- package/dist/error-pages/maintenance.it.html +1 -1
- package/dist/error-pages/maintenance.ja.html +1 -1
- package/dist/error-pages/maintenance.nl.html +1 -1
- package/dist/error-pages/maintenance.pl.html +1 -1
- package/dist/error-pages/maintenance.pt.html +1 -1
- package/dist/error-pages/maintenance.ro.html +1 -1
- package/dist/error-pages/maintenance.ru.html +1 -1
- package/dist/error-pages/maintenance.sq.html +1 -1
- package/dist/error-pages/maintenance.sv.html +1 -1
- package/dist/error-pages/maintenance.tr.html +1 -1
- package/dist/error-pages/maintenance.zh.html +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.js +89 -79
- package/dist/hooks/use-field-match.d.ts +71 -0
- package/dist/hooks/use-prism.d.ts +85 -0
- package/dist/host-compat.css +4 -1
- package/dist/i18n/locales/ar.d.ts +51 -0
- package/dist/i18n/locales/ar.js +51 -0
- package/dist/i18n/locales/de.d.ts +51 -0
- package/dist/i18n/locales/de.js +51 -0
- package/dist/i18n/locales/el.d.ts +51 -0
- package/dist/i18n/locales/el.js +51 -0
- package/dist/i18n/locales/en.d.ts +51 -0
- package/dist/i18n/locales/en.js +51 -0
- package/dist/i18n/locales/es.d.ts +51 -0
- package/dist/i18n/locales/es.js +51 -0
- package/dist/i18n/locales/fr.d.ts +51 -0
- package/dist/i18n/locales/fr.js +51 -0
- package/dist/i18n/locales/hi.d.ts +51 -0
- package/dist/i18n/locales/hi.js +51 -0
- package/dist/i18n/locales/it.d.ts +51 -0
- package/dist/i18n/locales/it.js +51 -0
- package/dist/i18n/locales/ja.d.ts +51 -0
- package/dist/i18n/locales/ja.js +51 -0
- package/dist/i18n/locales/nl.d.ts +51 -0
- package/dist/i18n/locales/nl.js +51 -0
- package/dist/i18n/locales/pl.d.ts +51 -0
- package/dist/i18n/locales/pl.js +51 -0
- package/dist/i18n/locales/pt.d.ts +51 -0
- package/dist/i18n/locales/pt.js +51 -0
- package/dist/i18n/locales/ro.d.ts +51 -0
- package/dist/i18n/locales/ro.js +51 -0
- package/dist/i18n/locales/ru.d.ts +51 -0
- package/dist/i18n/locales/ru.js +51 -0
- package/dist/i18n/locales/sq.d.ts +51 -0
- package/dist/i18n/locales/sq.js +51 -0
- package/dist/i18n/locales/sv.d.ts +51 -0
- package/dist/i18n/locales/sv.js +51 -0
- package/dist/i18n/locales/tr.d.ts +51 -0
- package/dist/i18n/locales/tr.js +51 -0
- package/dist/i18n/locales/zh.d.ts +51 -0
- package/dist/i18n/locales/zh.js +51 -0
- package/dist/index.js +1170 -1145
- package/dist/locales/ar.json +51 -0
- package/dist/locales/de.json +51 -0
- package/dist/locales/el.json +51 -0
- package/dist/locales/en.json +51 -0
- package/dist/locales/es.json +51 -0
- package/dist/locales/fr.json +51 -0
- package/dist/locales/hi.json +51 -0
- package/dist/locales/it.json +51 -0
- package/dist/locales/ja.json +51 -0
- package/dist/locales/nl.json +51 -0
- package/dist/locales/pl.json +51 -0
- package/dist/locales/pt.json +51 -0
- package/dist/locales/ro.json +51 -0
- package/dist/locales/ru.json +51 -0
- package/dist/locales/sq.json +51 -0
- package/dist/locales/sv.json +51 -0
- package/dist/locales/tr.json +51 -0
- package/dist/locales/zh.json +51 -0
- package/dist/patterns/_shared/auth-form-parts.d.ts +55 -0
- package/dist/patterns/_shared/brand-mark.d.ts +15 -0
- package/dist/patterns/_shared/mark-pieces.d.ts +15 -0
- package/dist/patterns/alia-assistant/index.js +1 -1
- package/dist/patterns/anamnesis/index.js +1 -1
- package/dist/patterns/calendar/index.js +1 -1
- package/dist/patterns/error-page/index.js +1 -1
- package/dist/patterns/forgot-password-form/forgot-password-form.d.ts +105 -0
- package/dist/patterns/forgot-password-form/index.d.ts +3 -0
- package/dist/patterns/forgot-password-form/index.js +6 -0
- package/dist/patterns/help-me-write-templates/index.js +1 -1
- package/dist/patterns/login-form/index.d.ts +5 -0
- package/dist/patterns/login-form/index.js +7 -0
- package/dist/patterns/login-form/login-dev-card.d.ts +27 -0
- package/dist/patterns/login-form/login-form.d.ts +120 -0
- package/dist/patterns/marketplace-app-shell/index.js +1 -1
- package/dist/patterns/registration-form/index.d.ts +3 -0
- package/dist/patterns/registration-form/index.js +6 -0
- package/dist/patterns/registration-form/registration-form.d.ts +217 -0
- package/dist/patterns/registration-form/use-registration-submit.d.ts +59 -0
- package/dist/patterns/signature-request/index.js +1 -1
- package/dist/patterns/signed-out-frame/index.d.ts +5 -0
- package/dist/patterns/signed-out-frame/index.js +6 -0
- package/dist/patterns/signed-out-frame/signed-out-frame.d.ts +27 -0
- package/dist/patterns/signed-out-frame/signed-out-header.d.ts +23 -0
- package/dist/tokens.css +1 -1
- package/package.json +21 -1
- package/dist/_chunks/address-fields-BIL6cvLS.js +0 -246
- package/dist/_chunks/booking-CFR7vU8X.js +0 -3474
- package/dist/_chunks/combobox-Iel8y3u6.js +0 -578
- package/dist/_chunks/error-page-BtxEOL6g.js +0 -780
- package/dist/_chunks/form-field-YUJl_U5l.js +0 -131
- package/dist/_chunks/form-field-context-B3APVHKx.js +0 -21
- package/dist/_chunks/recaptcha-widget-BNAeSTCo.js +0 -228
- package/dist/_chunks/spinner-DxjSZLD-.js +0 -220
- package/dist/_chunks/use-password-requirements-DK4hV1Ik.js +0 -453
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
import type { BrandMarkMotion } from '../_shared/brand-mark';
|
|
3
|
+
/** The form's one field. */
|
|
4
|
+
export declare const FORGOT_PASSWORD_FORM_FIELDS: readonly ["email"];
|
|
5
|
+
export type ForgotPasswordFormField = (typeof FORGOT_PASSWORD_FORM_FIELDS)[number];
|
|
6
|
+
/** What `onSubmit` receives once the email has passed its check. */
|
|
7
|
+
export interface ForgotPasswordFormValues {
|
|
8
|
+
email: string;
|
|
9
|
+
}
|
|
10
|
+
/** The email to show when the form opens. */
|
|
11
|
+
export type ForgotPasswordFormInitialValues = Partial<ForgotPasswordFormValues>;
|
|
12
|
+
/** Messages from the server, already translated: one for the email,
|
|
13
|
+
* plus `form` for a message about the whole form, such as "too many
|
|
14
|
+
* requests, try again later". */
|
|
15
|
+
export type ForgotPasswordFormErrors = Partial<Record<ForgotPasswordFormField | 'form', string>>;
|
|
16
|
+
/** The host's own form field name, for a native form post. It is needed:
|
|
17
|
+
* a field without a name is not posted. */
|
|
18
|
+
export type ForgotPasswordFormFieldNames = Record<ForgotPasswordFormField, string>;
|
|
19
|
+
export interface ForgotPasswordFormProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'onSubmit'> {
|
|
20
|
+
/** Replaces the heading "Reset your password". Pass it translated. */
|
|
21
|
+
title?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Replaces the line under the heading ("Enter the email linked to your
|
|
24
|
+
* account and we will send a reset link."). Pass it translated.
|
|
25
|
+
*/
|
|
26
|
+
description?: string;
|
|
27
|
+
/**
|
|
28
|
+
* The heading's level. Default 1: this page usually has no other
|
|
29
|
+
* heading. Pass 2 on a page that has its own `h1`.
|
|
30
|
+
*/
|
|
31
|
+
headingLevel?: 1 | 2 | 3;
|
|
32
|
+
/**
|
|
33
|
+
* Shows the Alfadocs mark above the heading, with the heading and its
|
|
34
|
+
* line centred under it. Default true.
|
|
35
|
+
*/
|
|
36
|
+
showLogo?: boolean;
|
|
37
|
+
/** How the mark arrives when the card opens. Default `assemble`. It
|
|
38
|
+
* plays once and rests. */
|
|
39
|
+
logoMotion?: BrandMarkMotion;
|
|
40
|
+
/**
|
|
41
|
+
* Host content between the heading and the field, such as a notice. It
|
|
42
|
+
* sits outside the form, so nothing in it is posted.
|
|
43
|
+
*/
|
|
44
|
+
children?: ReactNode;
|
|
45
|
+
/** The email to show when the form opens. Read once. */
|
|
46
|
+
initialValues?: ForgotPasswordFormInitialValues;
|
|
47
|
+
/**
|
|
48
|
+
* Messages from the server, already translated. The email's message
|
|
49
|
+
* shows on the field until the user changes it; `form` shows above the
|
|
50
|
+
* field. When messages arrive, focus moves to the email, or to the
|
|
51
|
+
* message above it when only that says something.
|
|
52
|
+
*
|
|
53
|
+
* Do not use a message to say that no account has the address: that
|
|
54
|
+
* tells a stranger who has an account. Show `sent` for every address.
|
|
55
|
+
*/
|
|
56
|
+
errors?: ForgotPasswordFormErrors;
|
|
57
|
+
/**
|
|
58
|
+
* Shows the confirmation in place of the form: "Check your inbox". Set
|
|
59
|
+
* it once the request has been accepted, whether or not an account
|
|
60
|
+
* exists for the address. The confirmation says "if an account exists"
|
|
61
|
+
* and never shows the address.
|
|
62
|
+
*/
|
|
63
|
+
sent?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Adds "Back to sign in" under the card's content. A path on the same
|
|
66
|
+
* site, or an address written in full. Anything else shows no link.
|
|
67
|
+
*/
|
|
68
|
+
loginHref?: string;
|
|
69
|
+
/** Replaces the button's "Send reset link". Pass it translated. */
|
|
70
|
+
submitLabel?: string;
|
|
71
|
+
/**
|
|
72
|
+
* True while the host sends the email: the button shows a spinner and
|
|
73
|
+
* a second submit is ignored. Set it inside `onSubmit`, before anything
|
|
74
|
+
* is awaited: until it is true, a second press sends a second request.
|
|
75
|
+
*/
|
|
76
|
+
submitting?: boolean;
|
|
77
|
+
/** For React hosts: called with the email once it has passed its
|
|
78
|
+
* check. Not called when `fieldNames` is set. */
|
|
79
|
+
onSubmit?: (values: ForgotPasswordFormValues) => void;
|
|
80
|
+
/**
|
|
81
|
+
* For a native form post: the host's own field name, e.g.
|
|
82
|
+
* `{ email: 'email' }`. When set, the input carries that name and the
|
|
83
|
+
* browser posts the form.
|
|
84
|
+
*/
|
|
85
|
+
fieldNames?: ForgotPasswordFormFieldNames;
|
|
86
|
+
/**
|
|
87
|
+
* Where a native form post goes. Default: the current address. Only a
|
|
88
|
+
* path, or an address on the page's own origin, is accepted: another
|
|
89
|
+
* origin is never sent what the user typed, and the post then goes to
|
|
90
|
+
* the current address. Does nothing without `fieldNames`.
|
|
91
|
+
*/
|
|
92
|
+
action?: string;
|
|
93
|
+
/**
|
|
94
|
+
* Extra hidden inputs posted with a native form, by name: a CSRF
|
|
95
|
+
* token. Not used with `onSubmit`. A name that is also the one in
|
|
96
|
+
* `fieldNames` is left out: the form's own field wins.
|
|
97
|
+
*/
|
|
98
|
+
hiddenFields?: Readonly<Record<string, string>>;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* The card that asks for a password reset link. Mount it on the
|
|
102
|
+
* forgot-password page, inside `SignedOutFrame` or the host's own chrome.
|
|
103
|
+
*/
|
|
104
|
+
export declare const ForgotPasswordForm: import("react").ForwardRefExoticComponent<ForgotPasswordFormProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
105
|
+
//# sourceMappingURL=forgot-password-form.d.ts.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { ForgotPasswordForm, FORGOT_PASSWORD_FORM_FIELDS, } from './forgot-password-form';
|
|
2
|
+
export type { ForgotPasswordFormProps, ForgotPasswordFormField, ForgotPasswordFormFieldNames, ForgotPasswordFormInitialValues, ForgotPasswordFormValues, ForgotPasswordFormErrors, } from './forgot-password-form';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as s, a as t, b as r, H as i, c as p, u as l } from "../../_chunks/help-me-write-templates-
|
|
1
|
+
import { A as s, a as t, b as r, H as i, c as p, u as l } from "../../_chunks/help-me-write-templates-Cy-iO5AU.js";
|
|
2
2
|
export {
|
|
3
3
|
s as AiCreditsExhaustedError,
|
|
4
4
|
t as AiCreditsExhaustedNotice,
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { LoginForm, LOGIN_FORM_FIELDS } from './login-form';
|
|
2
|
+
export type { LoginFormProps, LoginFormField, LoginFormFieldNames, LoginFormValues, LoginFormInitialValues, LoginFormErrors, } from './login-form';
|
|
3
|
+
export { LoginDevCard } from './login-dev-card';
|
|
4
|
+
export type { LoginDevCardProps, LoginDevOption } from './login-dev-card';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
export interface LoginDevOption {
|
|
3
|
+
/** The link's text, e.g. "Sign in as admin". The host supplies it, so
|
|
4
|
+
* the kit ships no text for a card that users never see. */
|
|
5
|
+
label: string;
|
|
6
|
+
/** The development-only route that signs the test account in. A path
|
|
7
|
+
* on the same site, or an address written in full. */
|
|
8
|
+
href: string;
|
|
9
|
+
/** A Lucide icon for the link, passed bare: `<ShieldUser />`. */
|
|
10
|
+
icon?: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
export interface LoginDevCardProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
|
|
13
|
+
/** The card's heading, e.g. "Developer quick login". */
|
|
14
|
+
title: string;
|
|
15
|
+
/** One link per test account. An option with an unsafe address is
|
|
16
|
+
* left out. */
|
|
17
|
+
options: readonly LoginDevOption[];
|
|
18
|
+
/** The heading's level. Default 2, under the login's own heading. */
|
|
19
|
+
headingLevel?: 2 | 3;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The development quick sign-in card. Render it only when the server
|
|
23
|
+
* says this is a development environment: it never checks the
|
|
24
|
+
* environment itself. Pass it to `LoginForm` as `devCard`.
|
|
25
|
+
*/
|
|
26
|
+
export declare const LoginDevCard: import("react").ForwardRefExoticComponent<LoginDevCardProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
27
|
+
//# sourceMappingURL=login-dev-card.d.ts.map
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
import type { BrandMarkMotion } from '../_shared/brand-mark';
|
|
3
|
+
/** The fields of the form, in the order they appear. */
|
|
4
|
+
export declare const LOGIN_FORM_FIELDS: readonly ["email", "password"];
|
|
5
|
+
export type LoginFormField = (typeof LOGIN_FORM_FIELDS)[number];
|
|
6
|
+
/** What `onSubmit` receives once both checks have passed. */
|
|
7
|
+
export interface LoginFormValues {
|
|
8
|
+
email: string;
|
|
9
|
+
password: string;
|
|
10
|
+
}
|
|
11
|
+
/** Values to show when the form opens. There is no password here, on
|
|
12
|
+
* purpose: a password is never sent back to the browser. */
|
|
13
|
+
export type LoginFormInitialValues = Partial<Pick<LoginFormValues, 'email'>>;
|
|
14
|
+
/** Messages from the server, already translated: one per field, plus
|
|
15
|
+
* `form` for a message about the whole form, such as "the email or
|
|
16
|
+
* password is incorrect". */
|
|
17
|
+
export type LoginFormErrors = Partial<Record<LoginFormField | 'form', string>>;
|
|
18
|
+
/** The host's own form field names, for a native form post. Both are
|
|
19
|
+
* needed: a field without a name is not posted. */
|
|
20
|
+
export type LoginFormFieldNames = Record<LoginFormField, string>;
|
|
21
|
+
export interface LoginFormProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'onSubmit'> {
|
|
22
|
+
/** Replaces the heading "Sign in to Alfadocs". Pass it translated. */
|
|
23
|
+
title?: string;
|
|
24
|
+
/** A line under the heading. Pass it translated. */
|
|
25
|
+
description?: string;
|
|
26
|
+
/**
|
|
27
|
+
* The heading's level. Default 1: a sign-in page usually has no other
|
|
28
|
+
* heading. Pass 2 on a page that has its own `h1`.
|
|
29
|
+
*/
|
|
30
|
+
headingLevel?: 1 | 2 | 3;
|
|
31
|
+
/**
|
|
32
|
+
* Shows the Alfadocs mark above the heading, with the heading and its
|
|
33
|
+
* line centred under it. Default true. With `false` the heading sits
|
|
34
|
+
* at the start edge, for a host that shows its own logo.
|
|
35
|
+
*/
|
|
36
|
+
showLogo?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* How the mark arrives when the card opens: its pieces come together
|
|
39
|
+
* (`assemble`, the default), it turns once (`spin`), it beats
|
|
40
|
+
* (`pulse`), or it is still (`none`). It plays once and rests, and
|
|
41
|
+
* holds still under reduced motion and in the accessible themes.
|
|
42
|
+
*/
|
|
43
|
+
logoMotion?: BrandMarkMotion;
|
|
44
|
+
/**
|
|
45
|
+
* Host content between the heading and the fields, such as a notice
|
|
46
|
+
* ("You have been signed out"). It sits outside the form, so nothing in
|
|
47
|
+
* it is posted. Keep any heading inside it below the card's own level.
|
|
48
|
+
*/
|
|
49
|
+
children?: ReactNode;
|
|
50
|
+
/** The email to show when the form opens, such as the one last used.
|
|
51
|
+
* Read once. There is never an initial password. */
|
|
52
|
+
initialValues?: LoginFormInitialValues;
|
|
53
|
+
/**
|
|
54
|
+
* Messages from the server, already translated. A field's message
|
|
55
|
+
* shows on that field until the user changes it; `form` shows above
|
|
56
|
+
* the fields.
|
|
57
|
+
*
|
|
58
|
+
* When messages arrive, the password is emptied and focus moves: to
|
|
59
|
+
* the first field with a message, or, when only `form` says something,
|
|
60
|
+
* to the password, which is then described by that message. The same
|
|
61
|
+
* happens for messages present when the form opens (a page the server
|
|
62
|
+
* rendered after a failed post).
|
|
63
|
+
*
|
|
64
|
+
* Never say which of the two values was wrong: one message for both.
|
|
65
|
+
* Set `submitting` while you send, so the form also notices an answer
|
|
66
|
+
* that says the same as the last one.
|
|
67
|
+
*/
|
|
68
|
+
errors?: LoginFormErrors;
|
|
69
|
+
/**
|
|
70
|
+
* Adds "Forgot password?" under the button. A path on the same site,
|
|
71
|
+
* or an address written in full (`https://…`). Anything else shows no
|
|
72
|
+
* link.
|
|
73
|
+
*/
|
|
74
|
+
forgotPasswordHref?: string;
|
|
75
|
+
/** Replaces the button's "Sign in". Pass it translated. */
|
|
76
|
+
submitLabel?: string;
|
|
77
|
+
/**
|
|
78
|
+
* True while the host sends the values: the button shows a spinner and
|
|
79
|
+
* a second submit is ignored. Set it inside `onSubmit`, before anything
|
|
80
|
+
* is awaited: until it is true, a second press sends a second sign-in.
|
|
81
|
+
*/
|
|
82
|
+
submitting?: boolean;
|
|
83
|
+
/** For React hosts: called with the values once both checks have
|
|
84
|
+
* passed. Not called when `fieldNames` is set. */
|
|
85
|
+
onSubmit?: (values: LoginFormValues) => void;
|
|
86
|
+
/**
|
|
87
|
+
* For a native form post: the host's own field names, both of them,
|
|
88
|
+
* e.g. `{ email: 'email', password: 'password' }`. When set, the inputs
|
|
89
|
+
* carry these names and the browser posts the form.
|
|
90
|
+
*/
|
|
91
|
+
fieldNames?: LoginFormFieldNames;
|
|
92
|
+
/**
|
|
93
|
+
* Where a native form post goes. Default: the current address. Only a
|
|
94
|
+
* path, or an address on the page's own origin, is accepted: another
|
|
95
|
+
* origin is never sent what the user typed, and the post then goes to
|
|
96
|
+
* the current address. Does nothing without `fieldNames`.
|
|
97
|
+
*/
|
|
98
|
+
action?: string;
|
|
99
|
+
/**
|
|
100
|
+
* Extra hidden inputs posted with a native form, by name: a CSRF token,
|
|
101
|
+
* a return address. Not used with `onSubmit`. A name that is also one
|
|
102
|
+
* of `fieldNames` is left out: the form's own field wins. The server
|
|
103
|
+
* must check a return address itself: anyone can change a hidden input.
|
|
104
|
+
*/
|
|
105
|
+
hiddenFields?: Readonly<Record<string, string>>;
|
|
106
|
+
/**
|
|
107
|
+
* A second card beside the sign-in, the same height: the development
|
|
108
|
+
* quick sign-in (`LoginDevCard`). Pass it only when the server says
|
|
109
|
+
* this is a development environment: the kit never decides that
|
|
110
|
+
* itself. The two sit side by side where there is room and stack on a
|
|
111
|
+
* phone.
|
|
112
|
+
*/
|
|
113
|
+
devCard?: ReactNode;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* The sign-in card. Mount it on the login page, inside `SignedOutFrame`
|
|
117
|
+
* or the host's own chrome.
|
|
118
|
+
*/
|
|
119
|
+
export declare const LoginForm: import("react").ForwardRefExoticComponent<LoginFormProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
120
|
+
//# sourceMappingURL=login-form.d.ts.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { RegistrationForm, REGISTRATION_FORM_FIELDS, } from './registration-form';
|
|
2
|
+
export type { RegistrationFormProps, RegistrationFormField, RegistrationFormFieldNames, RegistrationFormValues, RegistrationFormInitialValues, RegistrationFormErrors, RegistrationFormDevBypass, RegistrationFormDevValues, } from './registration-form';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
import { type UsePasswordRequirementsOptions } from '../../components/password-input';
|
|
3
|
+
import { type SelectOption } from '../../components/select';
|
|
4
|
+
import { type BrandMarkMotion } from '../_shared/brand-mark';
|
|
5
|
+
/** The fields of the form, in the order they appear. */
|
|
6
|
+
export declare const REGISTRATION_FORM_FIELDS: readonly ["firstName", "lastName", "email", "emailConfirm", "password", "passwordConfirm", "phone", "branch", "terms"];
|
|
7
|
+
export type RegistrationFormField = (typeof REGISTRATION_FORM_FIELDS)[number];
|
|
8
|
+
/** What `onSubmit` receives once every check has passed. A field the
|
|
9
|
+
* form does not show is empty (`''`, or `false` for the terms). */
|
|
10
|
+
export interface RegistrationFormValues {
|
|
11
|
+
firstName: string;
|
|
12
|
+
lastName: string;
|
|
13
|
+
email: string;
|
|
14
|
+
/** As typed. It matches `email` apart from case and outer spaces. */
|
|
15
|
+
emailConfirm: string;
|
|
16
|
+
password: string;
|
|
17
|
+
/** Equal to `password` when the confirm field is shown. */
|
|
18
|
+
passwordConfirm: string;
|
|
19
|
+
/** In E.164 form, e.g. `+393331234567`. */
|
|
20
|
+
phone: string;
|
|
21
|
+
/** The chosen `branches` value. */
|
|
22
|
+
branch: string;
|
|
23
|
+
/** True when the terms are shown: the form does not submit without. */
|
|
24
|
+
terms: boolean;
|
|
25
|
+
/** The reCAPTCHA token, when the host passes `recaptchaSiteKey`. */
|
|
26
|
+
captchaToken?: string;
|
|
27
|
+
}
|
|
28
|
+
/** Values to show when the form opens. There is no password here, on
|
|
29
|
+
* purpose: a password is never sent back to the browser. */
|
|
30
|
+
export type RegistrationFormInitialValues = Partial<Pick<RegistrationFormValues, 'firstName' | 'lastName' | 'email' | 'emailConfirm' | 'phone' | 'branch' | 'terms'>>;
|
|
31
|
+
/**
|
|
32
|
+
* What the development shortcut puts in the fields. Unlike
|
|
33
|
+
* `initialValues` it may carry a password: the host passes it only in
|
|
34
|
+
* development, from its own server, and the kit holds no test data of
|
|
35
|
+
* its own.
|
|
36
|
+
*/
|
|
37
|
+
export type RegistrationFormDevValues = Partial<Pick<RegistrationFormValues, 'firstName' | 'lastName' | 'email' | 'password' | 'phone' | 'branch' | 'terms'>>;
|
|
38
|
+
/** The development-only shortcut at the top right of the card. */
|
|
39
|
+
export interface RegistrationFormDevBypass {
|
|
40
|
+
/** What the shortcut does: the button's name and tooltip. */
|
|
41
|
+
label: string;
|
|
42
|
+
/**
|
|
43
|
+
* The values to put in the fields when the button is pressed, as if
|
|
44
|
+
* typed: the checks, the password checklist and the posted values all
|
|
45
|
+
* see them. The confirm fields are filled from the same values, so
|
|
46
|
+
* they match. A field the form does not show is ignored, and a
|
|
47
|
+
* read-only email is kept.
|
|
48
|
+
*/
|
|
49
|
+
values?: RegistrationFormDevValues;
|
|
50
|
+
/**
|
|
51
|
+
* True to submit the form right after filling it, through the normal
|
|
52
|
+
* path: the checks still run, reCAPTCHA still runs, a native form
|
|
53
|
+
* still posts. Default false: fill only.
|
|
54
|
+
*/
|
|
55
|
+
submit?: boolean;
|
|
56
|
+
/** Called after filling, for a host with a route of its own. */
|
|
57
|
+
onClick?: () => void;
|
|
58
|
+
}
|
|
59
|
+
/** Messages from the server, already translated by the host: one per
|
|
60
|
+
* field, plus `form` for a message about the whole form. */
|
|
61
|
+
export type RegistrationFormErrors = Partial<Record<RegistrationFormField | 'form', string>>;
|
|
62
|
+
/** The host's own form field names, for a native form post. `captcha`
|
|
63
|
+
* names the hidden field that carries the reCAPTCHA token. */
|
|
64
|
+
export type RegistrationFormFieldNames = Partial<Record<RegistrationFormField | 'captcha', string>>;
|
|
65
|
+
export interface RegistrationFormProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'onSubmit'> {
|
|
66
|
+
/** Replaces the heading "Create your account". Pass it translated. */
|
|
67
|
+
title?: string;
|
|
68
|
+
/** A line under the heading, e.g. "No installation needed". Pass it
|
|
69
|
+
* translated. */
|
|
70
|
+
description?: string;
|
|
71
|
+
/** The heading's level. Default 2, for a page that has its own `h1`. */
|
|
72
|
+
headingLevel?: 1 | 2 | 3;
|
|
73
|
+
/**
|
|
74
|
+
* Shows the Alfadocs mark above the heading, with the heading and its
|
|
75
|
+
* line centred under it. Default true. With `false` the heading sits
|
|
76
|
+
* at the start edge, for a host that shows its own logo beside the
|
|
77
|
+
* card.
|
|
78
|
+
*/
|
|
79
|
+
showLogo?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* How the mark arrives when the card opens: its pieces come together
|
|
82
|
+
* (`assemble`, the default), it turns once (`spin`), it beats
|
|
83
|
+
* (`pulse`), or it is still (`none`). It plays once and rests, and
|
|
84
|
+
* holds still under reduced motion and in the accessible themes.
|
|
85
|
+
*/
|
|
86
|
+
logoMotion?: BrandMarkMotion;
|
|
87
|
+
/**
|
|
88
|
+
* Host content between the heading and the fields, such as a notice
|
|
89
|
+
* or a list of benefits. It sits outside the form, so nothing in it is
|
|
90
|
+
* posted. Keep any heading inside it below the card's own level.
|
|
91
|
+
*/
|
|
92
|
+
children?: ReactNode;
|
|
93
|
+
/**
|
|
94
|
+
* The fields to show. Default: all of them, which is the doctor form.
|
|
95
|
+
* A patient form is `['email', 'password', 'passwordConfirm', 'terms']`.
|
|
96
|
+
* Leave out `emailConfirm` or `passwordConfirm` to drop that confirm
|
|
97
|
+
* field. The list picks fields, it does not order them; email and
|
|
98
|
+
* password always show; `branch` also needs `branches`.
|
|
99
|
+
*/
|
|
100
|
+
fields?: readonly RegistrationFormField[];
|
|
101
|
+
/** Values to show when the form opens, such as the email from an
|
|
102
|
+
* invite link. Read once. Never a password. */
|
|
103
|
+
initialValues?: RegistrationFormInitialValues;
|
|
104
|
+
/**
|
|
105
|
+
* Messages from the server, already translated. Each shows on its
|
|
106
|
+
* field until the user changes that field; `form` shows above the
|
|
107
|
+
* fields, as does a message for a field the form does not show.
|
|
108
|
+
*
|
|
109
|
+
* Messages present when the form opens (a page the server rendered
|
|
110
|
+
* after a failed post) take focus: the first field with a message, or
|
|
111
|
+
* the message above the fields.
|
|
112
|
+
*
|
|
113
|
+
* On a React host, when the messages change, both password fields
|
|
114
|
+
* are emptied and focus moves as above. Set `submitting` while you
|
|
115
|
+
* send: the form then also notices an answer that says the same as
|
|
116
|
+
* the last one (another address, also taken), which the messages
|
|
117
|
+
* alone cannot show. Any object works, kept in state or rebuilt on
|
|
118
|
+
* each render (`errors={{ email: emailError }}`).
|
|
119
|
+
*/
|
|
120
|
+
errors?: RegistrationFormErrors;
|
|
121
|
+
/**
|
|
122
|
+
* Shows the email from `initialValues` read-only, for a person invited
|
|
123
|
+
* with an address they cannot change here. Off by default: choose it
|
|
124
|
+
* only when the server will refuse any other address. The value is
|
|
125
|
+
* still posted and still read out, there is no confirm email field,
|
|
126
|
+
* and the browser does not check it. Ignored when there is no initial
|
|
127
|
+
* email, so the field is never both empty and locked.
|
|
128
|
+
*/
|
|
129
|
+
emailReadOnly?: boolean;
|
|
130
|
+
/** A line under the email field, e.g. "You can change it later in the
|
|
131
|
+
* settings". Pass it translated. */
|
|
132
|
+
emailDescription?: string;
|
|
133
|
+
/** The specialities to choose from. The field shows, and is required,
|
|
134
|
+
* only when this has entries. */
|
|
135
|
+
branches?: SelectOption[];
|
|
136
|
+
/**
|
|
137
|
+
* The password rules, shown as a live checklist. Keep them equal to
|
|
138
|
+
* the server's. Default: 12 characters with an uppercase letter, a
|
|
139
|
+
* lowercase letter and a number, counting only `A-Z`, `a-z` and `0-9`
|
|
140
|
+
* (`charset: 'ascii'`), which is the platform's rule.
|
|
141
|
+
*/
|
|
142
|
+
passwordPolicy?: UsePasswordRequirementsOptions;
|
|
143
|
+
/**
|
|
144
|
+
* Where "terms of use" leads. A path on the same site, or an address
|
|
145
|
+
* written in full (`https://…`). Anything else, such as an address
|
|
146
|
+
* that would lead off the site without saying so, shows the words
|
|
147
|
+
* without a link.
|
|
148
|
+
*/
|
|
149
|
+
termsHref?: string;
|
|
150
|
+
/** Where "privacy policy" leads. Same rule as `termsHref`. */
|
|
151
|
+
privacyHref?: string;
|
|
152
|
+
/**
|
|
153
|
+
* Replaces the sentence beside the terms box ("I accept the terms of
|
|
154
|
+
* use and the privacy policy") with the host's own wording and links,
|
|
155
|
+
* already translated. The legal wording is the host's to choose. When
|
|
156
|
+
* set, `termsHref` and `privacyHref` are not used. The box stays
|
|
157
|
+
* required.
|
|
158
|
+
*/
|
|
159
|
+
termsLabel?: ReactNode;
|
|
160
|
+
/** A line shown with the terms box and read out with it, e.g. "We
|
|
161
|
+
* will not send you any advertising". Pass it translated. */
|
|
162
|
+
termsDescription?: ReactNode;
|
|
163
|
+
/** Adds "Already have an account? Sign in". Same rule as `termsHref`. */
|
|
164
|
+
loginHref?: string;
|
|
165
|
+
/** A Google reCAPTCHA v2 site key of the invisible type. The check
|
|
166
|
+
* runs when the user submits. Leave it out where the server does not
|
|
167
|
+
* verify a token. */
|
|
168
|
+
recaptchaSiteKey?: string;
|
|
169
|
+
/** Replaces the button's "Create account". Pass it translated. */
|
|
170
|
+
submitLabel?: string;
|
|
171
|
+
/** True while the host sends the values: the button shows a spinner
|
|
172
|
+
* and a second submit is ignored. */
|
|
173
|
+
submitting?: boolean;
|
|
174
|
+
/**
|
|
175
|
+
* Shows the development-only shortcut button at the top right of the
|
|
176
|
+
* card: it fills the form with the host's `values`, and submits it
|
|
177
|
+
* when asked to. Pass it only when the server says this is a
|
|
178
|
+
* development environment: the kit never decides that itself, holds
|
|
179
|
+
* no test data, and what the shortcut submits goes through the normal
|
|
180
|
+
* path, so the server's own rules still decide. With neither `values`
|
|
181
|
+
* nor `onClick` there is nothing to do and no button.
|
|
182
|
+
*/
|
|
183
|
+
devBypass?: RegistrationFormDevBypass;
|
|
184
|
+
/** For React hosts: called with the values once every check has
|
|
185
|
+
* passed. Not called when `fieldNames` is set. */
|
|
186
|
+
onSubmit?: (values: RegistrationFormValues) => void;
|
|
187
|
+
/**
|
|
188
|
+
* For a native form post: the host's own field names, e.g.
|
|
189
|
+
* `{ email: 'registration[email]' }`. When set, the inputs carry
|
|
190
|
+
* these names and the browser posts the form. A field without a name
|
|
191
|
+
* here is not posted: name a confirm field only if the server's form
|
|
192
|
+
* has one, or it may refuse the post as carrying extra fields.
|
|
193
|
+
*/
|
|
194
|
+
fieldNames?: RegistrationFormFieldNames;
|
|
195
|
+
/**
|
|
196
|
+
* Where a native form post goes. Default: the current address, query
|
|
197
|
+
* string included, which is what a page reached through an invite link
|
|
198
|
+
* needs. Only an address on this site is accepted: another site is
|
|
199
|
+
* never sent what the user typed, and the post then goes to the
|
|
200
|
+
* current address instead.
|
|
201
|
+
*/
|
|
202
|
+
action?: string;
|
|
203
|
+
/**
|
|
204
|
+
* Extra hidden inputs posted with a native form, by name: a CSRF token
|
|
205
|
+
* or similar. Not used with `onSubmit`. A name that is also one of
|
|
206
|
+
* `fieldNames` is left out: the form's own field wins.
|
|
207
|
+
*/
|
|
208
|
+
hiddenFields?: Readonly<Record<string, string>>;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* The registration form card, for doctors and for patients. The host
|
|
212
|
+
* picks the fields, supplies the page around the card and owns every
|
|
213
|
+
* server rule; see the props for the two ways to submit. The card's
|
|
214
|
+
* text follows the kit's language, like every kit component.
|
|
215
|
+
*/
|
|
216
|
+
export declare const RegistrationForm: import("react").ForwardRefExoticComponent<RegistrationFormProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
217
|
+
//# sourceMappingURL=registration-form.d.ts.map
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import type { RecaptchaWidgetHandle } from '../../components/recaptcha-widget';
|
|
3
|
+
type Messages = Readonly<Record<string, string | undefined>>;
|
|
4
|
+
/**
|
|
5
|
+
* How long the button stays busy waiting for a reCAPTCHA token. Google
|
|
6
|
+
* sends no event when the user closes a challenge, so the wait cannot be
|
|
7
|
+
* open-ended: after this the button comes back and the user can try
|
|
8
|
+
* again. A token that arrives later is still used.
|
|
9
|
+
*/
|
|
10
|
+
export declare const CAPTCHA_PATIENCE = 8000;
|
|
11
|
+
export interface UseRegistrationSubmitOptions<Field extends string> {
|
|
12
|
+
/** The host's `errors` prop. */
|
|
13
|
+
errors: Messages | undefined;
|
|
14
|
+
/** The host's `submitting` prop. */
|
|
15
|
+
submitting: boolean;
|
|
16
|
+
/** True when the browser posts the form itself. */
|
|
17
|
+
native: boolean;
|
|
18
|
+
/** True when a reCAPTCHA check guards the submit. */
|
|
19
|
+
captcha: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* The first field that stops a submit, or `undefined` when every field
|
|
22
|
+
* is valid. Called when the answer is needed, so it must read the
|
|
23
|
+
* latest values.
|
|
24
|
+
*/
|
|
25
|
+
firstProblem: () => Field | undefined;
|
|
26
|
+
/** A submit was refused because of this field. */
|
|
27
|
+
onRefused: (field: Field) => void;
|
|
28
|
+
/**
|
|
29
|
+
* Hand the values over. For a React host, call its `onSubmit`. For a
|
|
30
|
+
* native post this is only called when a reCAPTCHA token arrives (put
|
|
31
|
+
* the token in its field and call `form.submit()`); without reCAPTCHA
|
|
32
|
+
* the browser posts on its own and this is not called.
|
|
33
|
+
*/
|
|
34
|
+
deliver: (captchaToken?: string) => void;
|
|
35
|
+
/** The server has answered with these messages. */
|
|
36
|
+
onAnswer: (errors: Messages) => void;
|
|
37
|
+
/** The browser restored the page from its back-forward cache. */
|
|
38
|
+
onRestore?: () => void;
|
|
39
|
+
}
|
|
40
|
+
export interface UseRegistrationSubmitReturn {
|
|
41
|
+
/** True while a submit is on its way: the host is sending, the browser
|
|
42
|
+
* is posting, or a reCAPTCHA token is awaited. */
|
|
43
|
+
busy: boolean;
|
|
44
|
+
/** True when the last reCAPTCHA check failed or expired. */
|
|
45
|
+
captchaFailed: boolean;
|
|
46
|
+
/** The form's `onSubmit`. */
|
|
47
|
+
handleSubmit: (event: {
|
|
48
|
+
preventDefault: () => void;
|
|
49
|
+
}) => void;
|
|
50
|
+
/** Props for the `RecaptchaWidget`. */
|
|
51
|
+
captcha: {
|
|
52
|
+
ref: RefObject<RecaptchaWidgetHandle | null>;
|
|
53
|
+
onChange: (token: string | null) => void;
|
|
54
|
+
onError: () => void;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export declare function useRegistrationSubmit<Field extends string>(options: UseRegistrationSubmitOptions<Field>): UseRegistrationSubmitReturn;
|
|
58
|
+
export {};
|
|
59
|
+
//# sourceMappingURL=use-registration-submit.d.ts.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { SignedOutFrame } from './signed-out-frame';
|
|
2
|
+
export type { SignedOutFrameProps } from './signed-out-frame';
|
|
3
|
+
export { SignedOutHeader } from './signed-out-header';
|
|
4
|
+
export type { SignedOutHeaderProps } from './signed-out-header';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
import { type LegalUrlOverrides } from '../../components/public-footer';
|
|
3
|
+
import { type SignedOutHeaderProps } from './signed-out-header';
|
|
4
|
+
export interface SignedOutFrameProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'>, SignedOutHeaderProps {
|
|
5
|
+
/** The page: a card such as `LoginForm`, centred in `<main>`. */
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
/** Shows the footer with the privacy policy and the terms. Default
|
|
8
|
+
* true. */
|
|
9
|
+
showFooter?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Adds the footer's copyright line: the year, the company's registered
|
|
12
|
+
* name and its VAT number. Default false.
|
|
13
|
+
*/
|
|
14
|
+
showCopyright?: boolean;
|
|
15
|
+
/** The site the footer's legal links lead to. Default: the footer's
|
|
16
|
+
* own, `https://www.alfadocs.com`. */
|
|
17
|
+
marketingBaseUrl?: string;
|
|
18
|
+
/** The footer's legal links, per language, where they differ from its
|
|
19
|
+
* defaults. */
|
|
20
|
+
legalUrlOverrides?: LegalUrlOverrides;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The signed-out app frame. It is one viewport tall: the header and the
|
|
24
|
+
* footer stay put and the content scrolls between them.
|
|
25
|
+
*/
|
|
26
|
+
export declare const SignedOutFrame: import("react").ForwardRefExoticComponent<SignedOutFrameProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
27
|
+
//# sourceMappingURL=signed-out-frame.d.ts.map
|