arengibook 3.1.313-main → 3.1.315-main
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/index.js +790 -107
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -13488,7 +13488,7 @@ var LOCALES = {
|
|
|
13488
13488
|
var css_248z$6 = "@charset \"UTF-8\";\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes toastSlideIn {\n from {\n opacity: 0;\n transform: translateX(40px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n@keyframes toastIconPop {\n 0% {\n transform: scale(0);\n opacity: 0;\n }\n 60% {\n transform: scale(1.2);\n opacity: 1;\n }\n 100% {\n transform: scale(1);\n }\n}\n@keyframes toastTextSlide {\n from {\n opacity: 0;\n transform: translateY(6px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n/* Force une largeur à 100% de l'input Calendar */\n.datepicker-fullwidth {\n width: 100%;\n}\n\n.datepicker-fullwidth > .dp-input-wrapper {\n width: 100%;\n}\n.datepicker-fullwidth > .dp-input-wrapper > .p-calendar {\n width: 100%;\n}\n\n.dp-input-wrapper {\n position: relative;\n display: inline-flex;\n}\n.dp-input-wrapper .dp-clear-btn {\n position: absolute;\n right: 7px;\n top: 50%;\n transform: translateY(-50%);\n background: none;\n border: none;\n cursor: pointer;\n padding: 2.8px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #b0b8c4;\n z-index: 1;\n border-radius: 50%;\n line-height: 1;\n}\n.dp-input-wrapper .dp-clear-btn:hover {\n color: #1a1e26;\n background-color: rgba(0, 0, 0, 0.06);\n}\n.dp-input-wrapper .dp-clear-btn .pi {\n font-size: 9.1px;\n}\n\n/* Application du mixin field sur l'input du Calendar */\n.p-calendar > .p-inputtext {\n font-family: \"Roboto\", sans-serif;\n min-height: 40px;\n padding: 0 12px;\n background: #ffffff;\n border: 1.5px solid #e0e3e8;\n border-radius: 7px;\n color: #1a1e26;\n outline: none;\n transition: border-color 180ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.p-calendar > .p-inputtext:hover:not(:focus):not(:focus-within):not([disabled]):not(.is-disabled) {\n border-color: #c8cdd6;\n}\n.p-calendar > .p-inputtext:focus, .p-calendar > .p-inputtext:focus-within, .p-calendar > .p-inputtext.is-open {\n border-color: #3f3f3f;\n box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);\n}\n.p-calendar > .p-inputtext[disabled], .p-calendar > .p-inputtext.is-disabled {\n opacity: 0.45;\n cursor: not-allowed;\n pointer-events: none;\n}\n.p-calendar > .p-inputtext[readonly], .p-calendar > .p-inputtext.is-readonly {\n background: #f4f5f6;\n cursor: default;\n box-shadow: none;\n}\n.p-calendar > .p-inputtext[readonly]:hover, .p-calendar > .p-inputtext.is-readonly:hover {\n border-color: #e0e3e8;\n}\n.p-calendar > .p-inputtext.is-error {\n border-color: #dc2626;\n box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15);\n}\n.p-calendar > .p-inputtext.is-success {\n border-color: #15803d;\n box-shadow: 0 0 0 3px rgba(21, 128, 61, 0.12);\n}\n.p-calendar > .p-inputtext:hover {\n border-color: #c8cdd6 !important;\n}\n.p-calendar > .p-inputtext:focus, .p-calendar > .p-inputtext.p-focus {\n border-color: #3f3f3f !important;\n box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1) !important;\n outline: none;\n}\n\n/* Panel invisible jusqu'au repositionnement (évite le flash position basse → haute) */\n.datepickerbook:not(.dp-ready) {\n visibility: hidden !important;\n}\n\n/* Neutralise les styles hérités */\n.datepickerbook table,\n.datepickerbook tbody,\n.datepickerbook tr,\n.datepickerbook td,\n.datepickerbook th {\n background-color: unset !important;\n color: inherit !important;\n border: none;\n}\n\n/* Restaure les couleurs et l'entete du calendrier */\n.datepickerbook .p-datepicker {\n background-color: #ffffff !important;\n color: #1a1e26 !important;\n border-radius: 7px;\n box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);\n}\n\n.datepickerbook .datepicker-custom-header {\n display: flex;\n flex-direction: column;\n gap: 7px;\n padding: 7px 10.5px;\n}\n\n.datepickerbook .datepicker-spinner {\n display: flex;\n flex-direction: column;\n align-items: center;\n font-size: 11.9px;\n}\n\n.datepickerbook .dp-label {\n margin: 3.5px 0;\n font-weight: 500;\n}\n\n.p-datepicker .p-datepicker-title,\n.p-datepicker .p-datepicker-prev,\n.p-datepicker .p-datepicker-next {\n display: none !important;\n}\n\n.datepickerbook .p-datepicker-header {\n justify-content: center;\n}\n\n.datepickerbook .dp-popup {\n position: absolute;\n top: 100%;\n margin-top: 3.5px;\n background: #ffffff;\n border: 1px solid #e0e3e8;\n border-radius: 4px;\n padding: 3.5px;\n z-index: 10;\n}\n\n.datepickerbook .dp-popup-months,\n.datepickerbook .dp-popup-years {\n display: grid;\n grid-template-columns: repeat(3, auto);\n gap: 3.5px;\n}\n\n.datepickerbook .dp-popup-item {\n border: none;\n background: transparent;\n padding: 2.1px 5.6px;\n cursor: pointer;\n font-size: 11.2px;\n}\n\n.datepickerbook .dp-popup-item:hover {\n background: #f4f5f6;\n}\n\n/*.datepickerbook .dp-header-top {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 10.5px;\n}*/\n.datepickerbook .dp-header-part {\n display: flex;\n align-items: center;\n gap: 3.5px;\n}\n\n.datepickerbook .dp-label-button {\n border: none;\n background: transparent;\n cursor: pointer;\n font-weight: 800;\n font-size: 16px;\n margin: 3.5px 0;\n}\n\n.datepickerbook.dp-monthyear-mode .dp-monthyear-header {\n padding-bottom: 3.5px;\n}\n\n.datepickerbook {\n display: flex;\n align-items: center;\n gap: 7px;\n margin-bottom: 3.5px;\n}\n\n.datepickerbook .dp-back-button {\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 12.6px;\n}\n\n.datepickerbook .dp-title {\n font-weight: 600;\n font-size: 12.6px;\n}\n\n/* Colonnes mois / années */\n.datepickerbook .dp-header-lists {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 7px;\n}\n\n.datepickerbook .dp-month-list,\n.datepickerbook .dp-year-list {\n padding-right: 3.5px;\n display: flex;\n flex-direction: column;\n gap: 2.1px;\n}\n\n.datepickerbook .dp-list-item:hover {\n background: #f4f5f6;\n}\n\n.p-datepicker-header.datepicker-custom-header.dp-monthyear-header {\n margin: auto;\n}\n\n/*.p-monthpicker*/\n.p-datepicker.dp-monthyear-mode {\n box-shadow: none !important;\n border-radius: 0px;\n}\n.p-datepicker.dp-monthyear-mode .dp-header-top-alt {\n display: none !important;\n}\n\n.p-datepicker-monthpicker.dp-monthyear-mode {\n box-shadow: none !important;\n border-radius: 0px;\n}\n.p-datepicker-monthpicker.dp-monthyear-mode .dp-header-top-alt {\n display: none !important;\n}\n\n.p-datepicker {\n width: 331px !important;\n min-width: 331px !important;\n max-width: 331px !important;\n}\n.p-datepicker .dp-arrow {\n border: none;\n background-color: transparent;\n color: #b0b8c4;\n cursor: pointer;\n transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1), background-color 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.p-datepicker .dp-arrow:hover {\n color: #3f3f3f;\n background-color: rgba(63, 63, 63, 0.08);\n}\n.p-datepicker.dp-year-only {\n box-shadow: none !important;\n width: auto !important;\n min-width: unset !important;\n max-width: unset !important;\n}\n.p-datepicker.dp-year-only .dp-header-top-alt {\n display: none !important;\n}\n.p-datepicker.dp-year-only .dp-monthyear-header {\n width: 205px;\n min-width: 205px;\n max-width: 205px;\n}\n.p-datepicker.dp-year-only .dp-monthyear-header .dp-year-container {\n width: 100%;\n}\n.p-datepicker.dp-year-only .dp-year-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-between;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-arrow-container {\n width: 100%;\n border-top: 1px solid #e0e3e8;\n height: 51px;\n display: flex;\n align-items: center;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-arrow-container .dp-arrow-up {\n border-right: 1px solid #e0e3e8;\n border-radius: 0px 0px 0px 5px !important;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-arrow-container .dp-arrow-down {\n border-radius: 0px 0px 5px 0px !important;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-arrow-container .dp-arrow-year {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n width: 49%;\n border-radius: 0px;\n flex: 1;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-arrow-container .dp-arrow-year:hover {\n background-color: rgba(63, 63, 63, 0.08);\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-year-list {\n width: 100%;\n gap: 0px;\n padding: 0px;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-list-item-active {\n width: 100%;\n color: #ffffff !important;\n background-color: #3f3f3f !important;\n border-bottom: 1px solid #3f3f3f !important;\n font-weight: 600;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-list-item {\n background-color: transparent;\n border: none;\n color: #1a1e26;\n transition: 0s !important;\n height: 25px;\n font-size: 16px;\n border-radius: 0px;\n border-bottom: 1px solid #e0e3e8;\n width: 100%;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-list-item:not(.dp-list-item-big) {\n padding: 3px 10px !important;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-list-item:not(.dp-list-item-big):hover {\n background-color: rgba(63, 63, 63, 0.08) !important;\n color: #3f3f3f;\n}\n.p-datepicker.dp-year-only .dp-year-container .dp-list-item {\n padding: 3px 10px;\n transition: background 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.dp-monthyear-mode .p-datepicker-group, .p-datepicker-monthpicker .p-datepicker-group, .dp-year-only .p-datepicker-group {\n padding: 0px !important;\n border: 0px solid transparent !important;\n}\n.dp-monthyear-mode .dp-monthyear-header, .p-datepicker-monthpicker .dp-monthyear-header, .dp-year-only .dp-monthyear-header {\n justify-content: flex-start;\n gap: 0;\n background: #ffffff;\n border: 1px solid rgba(255, 255, 255, 0.33);\n border-radius: 8px;\n position: absolute;\n top: 0;\n left: 0;\n padding: 0px !important;\n width: 331px;\n min-width: 331px;\n max-width: 331px;\n}\n.dp-monthyear-mode .dp-header-top-alt, .p-datepicker-monthpicker .dp-header-top-alt, .dp-year-only .dp-header-top-alt {\n width: 100%;\n height: 50px !important;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #e0e3e8;\n}\n.dp-monthyear-mode .dp-header-top-alt .dp-header-top-alt-part:first-child, .p-datepicker-monthpicker .dp-header-top-alt .dp-header-top-alt-part:first-child, .dp-year-only .dp-header-top-alt .dp-header-top-alt-part:first-child {\n border-right: 1px solid #e0e3e8;\n}\n.dp-monthyear-mode .dp-header-top-alt .dp-header-top-alt-part, .p-datepicker-monthpicker .dp-header-top-alt .dp-header-top-alt-part, .dp-year-only .dp-header-top-alt .dp-header-top-alt-part {\n width: 49%;\n height: 50px;\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n font-weight: 600;\n color: #1a1e26;\n font-size: 16px;\n text-transform: capitalize;\n}\n.dp-monthyear-mode .p-datepicker-calendar-container, .p-datepicker-monthpicker .p-datepicker-calendar-container, .dp-year-only .p-datepicker-calendar-container {\n display: none;\n}\n.dp-monthyear-mode .dp-actions, .p-datepicker-monthpicker .dp-actions, .dp-year-only .dp-actions {\n width: 100%;\n background-color: #ffffff;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-radius: 0px 0px 5px 5px;\n padding: 0px 10px 10px 10px;\n}\n.dp-monthyear-mode .dp-actions .p-button:first-child, .p-datepicker-monthpicker .dp-actions .p-button:first-child, .dp-year-only .dp-actions .p-button:first-child {\n border: 0px solid transparent;\n color: #3f3f3f;\n}\n.dp-monthyear-mode .dp-actions .p-button:last-child, .p-datepicker-monthpicker .dp-actions .p-button:last-child, .dp-year-only .dp-actions .p-button:last-child {\n background-color: #ffffff;\n border: 1px solid #3f3f3f;\n color: #3f3f3f;\n}\n.dp-monthyear-mode .dp-actions .p-button:last-child:hover, .p-datepicker-monthpicker .dp-actions .p-button:last-child:hover, .dp-year-only .dp-actions .p-button:last-child:hover {\n background-color: #3f3f3f;\n color: #ffffff;\n}\n.dp-monthyear-mode .dp-actions .p-button, .p-datepicker-monthpicker .dp-actions .p-button, .dp-year-only .dp-actions .p-button {\n padding: 10px 15px;\n}\n.dp-monthyear-mode .dp-actions .p-button .p-button-icon, .p-datepicker-monthpicker .dp-actions .p-button .p-button-icon, .dp-year-only .dp-actions .p-button .p-button-icon {\n display: none;\n}\n.dp-monthyear-mode .dp-header-lists, .p-datepicker-monthpicker .dp-header-lists, .dp-year-only .dp-header-lists {\n width: calc(100% - 20px);\n height: 300px;\n display: flex;\n align-items: flex-start;\n gap: initial;\n padding: 0px;\n margin: 10px;\n}\n.dp-monthyear-mode .dp-month-list, .p-datepicker-monthpicker .dp-month-list, .dp-year-only .dp-month-list {\n transition: none !important;\n border: 1px solid #e0e3e8;\n margin: 0px 10px 0px 0px !important;\n gap: 0px;\n}\n.dp-monthyear-mode .dp-month-list .dp-list-item-active, .p-datepicker-monthpicker .dp-month-list .dp-list-item-active, .dp-year-only .dp-month-list .dp-list-item-active {\n width: 100%;\n color: #ffffff !important;\n background-color: #3f3f3f !important;\n border-bottom: 1px solid #3f3f3f !important;\n font-weight: 600;\n}\n.dp-monthyear-mode .dp-month-list .dp-list-item, .p-datepicker-monthpicker .dp-month-list .dp-list-item, .dp-year-only .dp-month-list .dp-list-item {\n border: none;\n height: 25px;\n background-color: transparent;\n font-size: 16px;\n text-transform: capitalize;\n border-radius: 0px;\n margin: 0px;\n padding: 3px;\n width: calc(100% - 0px);\n border-bottom: 1px solid #e0e3e8;\n}\n.dp-monthyear-mode .dp-month-list .dp-list-item:hover, .p-datepicker-monthpicker .dp-month-list .dp-list-item:hover, .dp-year-only .dp-month-list .dp-list-item:hover {\n background-color: rgba(63, 63, 63, 0.08);\n}\n.dp-monthyear-mode .dp-month-list .dp-list-item:last-child, .p-datepicker-monthpicker .dp-month-list .dp-list-item:last-child, .dp-year-only .dp-month-list .dp-list-item:last-child {\n border: none;\n}\n.dp-monthyear-mode .dp-year-container, .p-datepicker-monthpicker .dp-year-container, .dp-year-only .dp-year-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-between;\n border: 1px solid #e0e3e8;\n}\n.dp-monthyear-mode .dp-year-container .dp-arrow-container, .p-datepicker-monthpicker .dp-year-container .dp-arrow-container, .dp-year-only .dp-year-container .dp-arrow-container {\n width: 100%;\n border-top: 1px solid #e0e3e8;\n height: 51px;\n display: flex;\n align-items: center;\n}\n.dp-monthyear-mode .dp-year-container .dp-arrow-container .dp-arrow-up, .p-datepicker-monthpicker .dp-year-container .dp-arrow-container .dp-arrow-up, .dp-year-only .dp-year-container .dp-arrow-container .dp-arrow-up {\n border-right: 1px solid #e0e3e8;\n}\n.dp-monthyear-mode .dp-year-container .dp-arrow-container .dp-arrow-year, .p-datepicker-monthpicker .dp-year-container .dp-arrow-container .dp-arrow-year, .dp-year-only .dp-year-container .dp-arrow-container .dp-arrow-year {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n width: 49%;\n border-radius: 0px;\n flex: 1;\n}\n.dp-monthyear-mode .dp-year-container .dp-year-list, .p-datepicker-monthpicker .dp-year-container .dp-year-list, .dp-year-only .dp-year-container .dp-year-list {\n width: 100%;\n gap: 0px;\n padding: 0px;\n}\n.dp-monthyear-mode .dp-year-container .dp-list-item-active, .p-datepicker-monthpicker .dp-year-container .dp-list-item-active, .dp-year-only .dp-year-container .dp-list-item-active {\n width: 100%;\n color: #ffffff !important;\n background-color: #3f3f3f !important;\n border-bottom: 1px solid #3f3f3f !important;\n font-weight: 600;\n}\n.dp-monthyear-mode .dp-year-container .dp-list-item, .p-datepicker-monthpicker .dp-year-container .dp-list-item, .dp-year-only .dp-year-container .dp-list-item {\n background-color: transparent;\n border: none;\n color: #1a1e26;\n transition: 0s !important;\n height: 25px;\n font-size: 16px;\n border-radius: 0px;\n border-bottom: 1px solid #e0e3e8;\n width: 100%;\n padding: 3px 10px;\n}\n.dp-monthyear-mode .dp-year-container .dp-list-item:not(.dp-list-item-big), .p-datepicker-monthpicker .dp-year-container .dp-list-item:not(.dp-list-item-big), .dp-year-only .dp-year-container .dp-list-item:not(.dp-list-item-big) {\n padding: 3px 10px !important;\n}\n.dp-monthyear-mode .dp-year-container .dp-list-item:not(.dp-list-item-big):hover, .p-datepicker-monthpicker .dp-year-container .dp-list-item:not(.dp-list-item-big):hover, .dp-year-only .dp-year-container .dp-list-item:not(.dp-list-item-big):hover {\n background-color: rgba(63, 63, 63, 0.08) !important;\n color: #3f3f3f;\n}\n.dp-monthyear-mode .dp-month-list, .dp-monthyear-mode .dp-year-container, .p-datepicker-monthpicker .dp-month-list, .p-datepicker-monthpicker .dp-year-container, .dp-year-only .dp-month-list, .dp-year-only .dp-year-container {\n width: 49%;\n flex: 1;\n margin: 0px;\n background-color: transparent;\n padding: 0px;\n height: 100%;\n}\n.dp-monthyear-mode .dp-month-list .dp-list-item, .dp-monthyear-mode .dp-year-container .dp-list-item, .p-datepicker-monthpicker .dp-month-list .dp-list-item, .p-datepicker-monthpicker .dp-year-container .dp-list-item, .dp-year-only .dp-month-list .dp-list-item, .dp-year-only .dp-year-container .dp-list-item {\n cursor: pointer;\n}\n.dp-monthyear-mode .dp-month-list .dp-list-item:hover, .dp-monthyear-mode .dp-year-container .dp-list-item:hover, .p-datepicker-monthpicker .dp-month-list .dp-list-item:hover, .p-datepicker-monthpicker .dp-year-container .dp-list-item:hover, .dp-year-only .dp-month-list .dp-list-item:hover, .dp-year-only .dp-year-container .dp-list-item:hover {\n color: #3f3f3f;\n border-bottom: 1px solid rgba(63, 63, 63, 0.08);\n}\n.dp-monthyear-mode .dp-month-list:hover, .dp-monthyear-mode .dp-year-container:hover, .p-datepicker-monthpicker .dp-month-list:hover, .p-datepicker-monthpicker .dp-year-container:hover, .dp-year-only .dp-month-list:hover, .dp-year-only .dp-year-container:hover {\n background-color: rgba(255, 255, 255, 0.31);\n}\n\n.p-datepicker {\n padding: 0px;\n background-color: #ffffff;\n box-shadow: 1px 2px 26px rgba(0, 0, 0, 0.21);\n width: 321px;\n}\n.p-datepicker .p-datepicker-group-container {\n width: 100%;\n}\n.p-datepicker .p-datepicker-group {\n background: #ffffff;\n border-radius: 8px;\n padding-bottom: 1px;\n}\n.p-datepicker .p-datepicker-header {\n padding: 0px;\n /*position: fixed;\n left: 0;*/\n height: 50px;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header {\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #e0e3e8;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-month {\n border-right: 1px solid #e0e3e8;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-month .dp-arrow-left {\n border-radius: 7px 0px 0px 0px;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-year .dp-arrow-right {\n border-radius: 0px 7px 0px 0px;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-part {\n width: 49%;\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-part .dp-arrow {\n width: 30px;\n height: 49px;\n min-width: 30px;\n min-height: 49px;\n max-width: 30px;\n max-height: 49px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-part .dp-arrow:hover {\n background-color: rgba(63, 63, 63, 0.08);\n color: #3f3f3f;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-part .dp-label-button {\n width: calc(100% - 60px);\n display: flex;\n align-items: center;\n justify-content: center;\n height: 50px;\n margin: 0px;\n text-transform: capitalize;\n color: #3f3f3f;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-part .dp-label-button:hover {\n background-color: rgba(63, 63, 63, 0.08);\n font-weight: 800;\n}\n.p-datepicker .p-datepicker-header .datepicker-custom-header .dp-header-top .dp-header-part:hover {\n background-color: rgba(255, 255, 255, 0.31);\n}\n.p-datepicker .p-datepicker-calendar-container {\n padding: 10px;\n /* margin-top: 50px;*/\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar {\n margin: 0px;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar thead tr th {\n padding: 2px;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar thead tr th span {\n color: #1a1e26;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr .p-datepicker-today {\n background-color: transparent;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr .p-datepicker-today span {\n background-color: transparent;\n font-weight: 600;\n color: #3f3f3f;\n border: 1px solid #3f3f3f;\n text-decoration: underline;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td {\n padding: 0px;\n border: 1px solid #f4f5f6;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td .p-highlight {\n color: #ffffff !important;\n background-color: #3f3f3f !important;\n box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.31);\n font-weight: 600;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td .p-disabled {\n opacity: 0.3;\n cursor: not-allowed;\n background-color: transparent !important;\n font-size: 12px;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span {\n margin: 0;\n width: 100%;\n border-radius: 0px;\n}\n.p-datepicker .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span:hover {\n background-color: rgba(63, 63, 63, 0.08) !important;\n color: #3f3f3f;\n box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.31);\n}\n\n/* WRAPPER GLOBAL */\n.dp-monthyear-header {\n width: 360px;\n background: #ffffff;\n border-radius: 18px;\n padding: 24px 26px;\n box-shadow: 0 8px 26px rgba(0, 0, 0, 0.1);\n display: flex;\n flex-direction: column;\n font-family: Inter, sans-serif;\n gap: 22px;\n}\n\n/* TITRE */\n.dp-header-top-alt .dp-title {\n font-size: 21.7px;\n font-weight: 700;\n text-align: center;\n color: #1a1e26;\n margin-bottom: 2px;\n}\n\n/* HOVER ANNÉES */\n.datepickerbook .dp-year-list .dp-list-item:hover {\n background: rgba(63, 63, 63, 0.15);\n}\n\n.dp-month-list .dp-list-item-active {\n background: #ffffff;\n font-weight: 600;\n}\n\n/* Centrage parfait */\n.dp-year-list {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n padding: 0;\n}\n\n/* Année normale */\n.dp-year-list .dp-list-item {\n font-size: 16.8px;\n color: #b0b8c4;\n padding: 4px 0;\n cursor: pointer;\n transition: 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.dp-year-list .dp-list-item:hover {\n color: #1a1e26;\n}\n\n/* FLECHES */\n.dp-arrow-up,\n.dp-arrow-down {\n font-size: 21px;\n color: #1a1e26;\n padding: 6px;\n border: none;\n background: none;\n cursor: pointer;\n margin: 4px 0;\n}\n\n/* ACTIONS BAS – GROS BOUTONS */\n.dp-actions {\n display: flex;\n justify-content: center;\n gap: 20px;\n padding-top: 5px;\n padding-bottom: 10px;\n}\n\n/* TITRE MOIS ANNEE */\n.dp-header-top {\n margin: auto;\n}\n\n/*DATEPICKER MENSUEL CUSTOMISE*/\n.p-monthpicker {\n display: none !important;\n margin: auto;\n}\n\n.datepickerbook .p-datepicker-header {\n border: none !important;\n border-bottom: none !important;\n box-shadow: none !important;\n background: transparent !important;\n}\n\n.datepickerbook.p-datepicker {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/*DATEPICKER ANNUEL CUSTOMISE*/\n.p-yearpicker {\n display: none !important;\n}\n\n.datepickerbook .p-datepicker-footer {\n margin-bottom: 20px;\n}\n\n.dp-error-message {\n color: red !important;\n font-style: italic !important;\n display: block !important;\n width: 100% !important;\n max-width: 100% !important;\n white-space: normal !important;\n word-break: break-word !important;\n overflow-wrap: break-word !important;\n line-height: 1.4 !important;\n font-size: 12.25px !important;\n margin-top: 2px !important;\n float: none !important;\n position: static !important;\n}";
|
|
13489
13489
|
styleInject(css_248z$6);
|
|
13490
13490
|
|
|
13491
|
-
var _excluded$
|
|
13491
|
+
var _excluded$5 = ["value", "onChange", "placeholder", "dateFormat", "displayMask", "view", "invalid", "errorMessage", "disabled", "locale", "showTime", "showIcon", "icon", "iconBgButton", "iconPos", "name", "id", "fullWidth", "inputProps", "onBlur", "onSelect", "onClick", "showClear", "reopenOnClick", "invalidDateMessage", "onPanelShow", "onPanelHide"];
|
|
13492
13492
|
var normalizeDate = function normalizeDate(v) {
|
|
13493
13493
|
if (!v) return null;
|
|
13494
13494
|
return v instanceof Date ? v : new Date(v);
|
|
@@ -13542,7 +13542,7 @@ var DatePicker = function DatePicker(_ref) {
|
|
|
13542
13542
|
_ref.invalidDateMessage;
|
|
13543
13543
|
var onPanelShow = _ref.onPanelShow,
|
|
13544
13544
|
onPanelHide = _ref.onPanelHide,
|
|
13545
|
-
rest = _objectWithoutProperties$1(_ref, _excluded$
|
|
13545
|
+
rest = _objectWithoutProperties$1(_ref, _excluded$5);
|
|
13546
13546
|
var _useState = useState(function () {
|
|
13547
13547
|
return normalizeDate(value);
|
|
13548
13548
|
}),
|
|
@@ -33444,7 +33444,7 @@ var HeaderCell = /*#__PURE__*/React.memo(function (props) {
|
|
|
33444
33444
|
});
|
|
33445
33445
|
HeaderCell.displayName = 'HeaderCell';
|
|
33446
33446
|
|
|
33447
|
-
var _excluded$
|
|
33447
|
+
var _excluded$4 = ["unstyled", "__TYPE", "ptOptions"];
|
|
33448
33448
|
function ownKeys$1$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
33449
33449
|
function _objectSpread$1$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1$4(Object(t), true).forEach(function (r) { _defineProperty$7(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
33450
33450
|
var TableHeader = /*#__PURE__*/React.memo(function (props) {
|
|
@@ -33675,7 +33675,7 @@ var TableHeader = /*#__PURE__*/React.memo(function (props) {
|
|
|
33675
33675
|
unstyled = _RowBase$getProps.unstyled;
|
|
33676
33676
|
_RowBase$getProps.__TYPE;
|
|
33677
33677
|
_RowBase$getProps.ptOptions;
|
|
33678
|
-
var rest = _objectWithoutProperties(_RowBase$getProps, _excluded$
|
|
33678
|
+
var rest = _objectWithoutProperties(_RowBase$getProps, _excluded$4);
|
|
33679
33679
|
var headerRowProps = mergeProps({
|
|
33680
33680
|
role: 'row'
|
|
33681
33681
|
}, unstyled ? _objectSpread$1$4({
|
|
@@ -37016,8 +37016,13 @@ var PopupPresets = {
|
|
|
37016
37016
|
}
|
|
37017
37017
|
};
|
|
37018
37018
|
|
|
37019
|
+
var css_248z$5 = "@keyframes fadeIn {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes toastSlideIn {\n from {\n opacity: 0;\n transform: translateX(40px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n@keyframes toastIconPop {\n 0% {\n transform: scale(0);\n opacity: 0;\n }\n 60% {\n transform: scale(1.2);\n opacity: 1;\n }\n 100% {\n transform: scale(1);\n }\n}\n@keyframes toastTextSlide {\n from {\n opacity: 0;\n transform: translateY(6px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.dropdownbook.p-dropdown-panel {\n z-index: 999999 !important;\n}\n\n.p-tooltip {\n z-index: 1000000 !important;\n}\n\n.dropdown-tooltip-item {\n position: relative;\n width: 100%;\n cursor: pointer;\n}\n\n/* Application du mixin field sur le wrapper du Dropdown */\n.dropdown-container .p-dropdown {\n font-family: \"Roboto\", sans-serif;\n min-height: 40px;\n padding: 0 12px;\n background: #ffffff;\n border: 1.5px solid #e0e3e8;\n border-radius: 7px;\n color: #1a1e26;\n outline: none;\n transition: border-color 180ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.dropdown-container .p-dropdown:hover:not(:focus):not(:focus-within):not([disabled]):not(.is-disabled) {\n border-color: #c8cdd6;\n}\n.dropdown-container .p-dropdown:focus, .dropdown-container .p-dropdown:focus-within, .dropdown-container .p-dropdown.is-open {\n border-color: #3f3f3f;\n box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);\n}\n.dropdown-container .p-dropdown[disabled], .dropdown-container .p-dropdown.is-disabled {\n opacity: 0.45;\n cursor: not-allowed;\n pointer-events: none;\n}\n.dropdown-container .p-dropdown[readonly], .dropdown-container .p-dropdown.is-readonly {\n background: #f4f5f6;\n cursor: default;\n box-shadow: none;\n}\n.dropdown-container .p-dropdown[readonly]:hover, .dropdown-container .p-dropdown.is-readonly:hover {\n border-color: #e0e3e8;\n}\n.dropdown-container .p-dropdown.is-error {\n border-color: #dc2626;\n box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15);\n}\n.dropdown-container .p-dropdown.is-success {\n border-color: #15803d;\n box-shadow: 0 0 0 3px rgba(21, 128, 61, 0.12);\n}\n.dropdown-container .p-dropdown {\n padding: 0;\n display: flex;\n align-items: center;\n}\n\n.dd-search-row {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 12px;\n border-bottom: 1px solid #e0e3e8;\n}\n.dd-search-row [class*=-filter-container] {\n flex: 1;\n min-width: 0;\n position: relative;\n}\n.dd-search-row [class*=-filter-container] .p-inputtext {\n width: 100%;\n height: 32px;\n padding: 0 24.5px 0 12px;\n font-size: 14px;\n box-sizing: border-box;\n}\n.dd-search-row [class*=-filter-container] [class*=-filter-icon] {\n right: 10.5px;\n color: #b0b8c4;\n}\n\n.dd-sort-btn {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: 1px solid #e0e3e8;\n border-radius: 7px;\n background: #ffffff;\n cursor: pointer;\n color: #b0b8c4;\n font-size: 14px;\n transition: background 180ms cubic-bezier(0.4, 0, 0.2, 1), color 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.dd-sort-btn:hover {\n background: #f4f5f6;\n color: #1a1e26;\n}\n\n.dropdownbook .p-dropdown-header:has(.dd-search-row) {\n padding: 0;\n}\n\n/* ===== Badge couleur dans les items ===== */\n.dd-color-badge {\n display: inline-flex;\n align-items: center;\n gap: 7px;\n padding: 4px 10px;\n border-radius: 14px;\n font-size: 12.25px;\n font-family: \"Roboto\", sans-serif;\n white-space: nowrap;\n cursor: default;\n transition: background-color 180ms cubic-bezier(0.4, 0, 0.2, 1);\n background-color: #f4f5f6;\n color: #1a1e26;\n border: 1px solid #e0e3e8;\n border-color: var(--badge-color, #e0e3e8);\n background-color: color-mix(in srgb, var(--badge-color, #f4f5f6) 50%, transparent);\n}\n.dd-color-badge.is-selected {\n background-color: var(--badge-color, #f4f5f6);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);\n}\n\n.p-dropdown-item:hover .dd-color-badge {\n background-color: var(--badge-color) !important;\n}\n\n/* ===== Override PrimeReact default item colors ===== */\n.dropdownbook .p-dropdown-items .p-dropdown-item:not(.p-highlight):hover {\n background: #f4f5f6 !important;\n color: #1a1e26 !important;\n}\n.dropdownbook .p-dropdown-items .p-dropdown-item.p-highlight {\n background: rgba(63, 63, 63, 0.08) !important;\n color: #1a1e26 !important;\n}\n.dropdownbook .p-dropdown-items .p-dropdown-item.p-highlight.p-focus {\n background: rgba(63, 63, 63, 0.12) !important;\n color: #1a1e26 !important;\n}\n.dropdownbook .p-dropdown-items .p-dropdown-item.p-focus {\n background: #f4f5f6 !important;\n color: #1a1e26 !important;\n}\n\n/* ===== Override PrimeReact filter input focus ===== */\n.dropdownbook .p-dropdown-filter.p-inputtext:hover {\n border-color: #c8cdd6 !important;\n}\n.dropdownbook .p-dropdown-filter.p-inputtext:focus, .dropdownbook .p-dropdown-filter.p-inputtext.p-focus {\n border-color: #3f3f3f !important;\n box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1) !important;\n outline: none;\n}";
|
|
37020
|
+
styleInject(css_248z$5);
|
|
37021
|
+
|
|
37022
|
+
var _excluded$3 = ["style", "className"],
|
|
37023
|
+
_excluded2$2 = ["class"];
|
|
37019
37024
|
var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
37020
|
-
var _window$Translator, _window$Translator2;
|
|
37025
|
+
var _computedOptions$, _window$Translator, _window$Translator2;
|
|
37021
37026
|
var value = _ref.value,
|
|
37022
37027
|
options = _ref.options,
|
|
37023
37028
|
_ref$placeholder = _ref.placeholder,
|
|
@@ -37040,7 +37045,7 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37040
37045
|
_ref$editable = _ref.editable,
|
|
37041
37046
|
editable = _ref$editable === void 0 ? false : _ref$editable,
|
|
37042
37047
|
_ref$filter = _ref.filter,
|
|
37043
|
-
filter = _ref$filter === void 0 ?
|
|
37048
|
+
filter = _ref$filter === void 0 ? false : _ref$filter,
|
|
37044
37049
|
_ref$selectMetaConfig = _ref.selectMetaConfig,
|
|
37045
37050
|
selectMetaConfig = _ref$selectMetaConfig === void 0 ? {
|
|
37046
37051
|
labelStyle: null,
|
|
@@ -37049,7 +37054,79 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37049
37054
|
_ref$objValue = _ref.objValue,
|
|
37050
37055
|
objValue = _ref$objValue === void 0 ? null : _ref$objValue,
|
|
37051
37056
|
_ref$required = _ref.required,
|
|
37052
|
-
required = _ref$required === void 0 ? false : _ref$required
|
|
37057
|
+
required = _ref$required === void 0 ? false : _ref$required,
|
|
37058
|
+
_ref$attr = _ref.attr,
|
|
37059
|
+
attr = _ref$attr === void 0 ? {} : _ref$attr,
|
|
37060
|
+
_ref$choice_attr = _ref.choice_attr,
|
|
37061
|
+
choice_attr = _ref$choice_attr === void 0 ? function () {
|
|
37062
|
+
return {};
|
|
37063
|
+
} : _ref$choice_attr,
|
|
37064
|
+
_ref$optionClassname = _ref.optionClassname,
|
|
37065
|
+
optionClassname = _ref$optionClassname === void 0 ? null : _ref$optionClassname,
|
|
37066
|
+
_ref$valueClassname = _ref.valueClassname,
|
|
37067
|
+
valueClassname = _ref$valueClassname === void 0 ? null : _ref$valueClassname,
|
|
37068
|
+
_ref$isGroupedOption = _ref.isGroupedOption,
|
|
37069
|
+
isGroupedOption = _ref$isGroupedOption === void 0 ? false : _ref$isGroupedOption,
|
|
37070
|
+
_ref$showTooltipGroup = _ref.showTooltipGroup,
|
|
37071
|
+
showTooltipGroup = _ref$showTooltipGroup === void 0 ? false : _ref$showTooltipGroup,
|
|
37072
|
+
_ref$prevTextShowTool = _ref.prevTextShowTooltip,
|
|
37073
|
+
prevTextShowTooltip = _ref$prevTextShowTool === void 0 ? null : _ref$prevTextShowTool,
|
|
37074
|
+
onSearch = _ref.onSearch,
|
|
37075
|
+
_ref$readOnly = _ref.readOnly,
|
|
37076
|
+
readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
|
|
37077
|
+
_ref$loading = _ref.loading,
|
|
37078
|
+
externalLoading = _ref$loading === void 0 ? false : _ref$loading,
|
|
37079
|
+
status = _ref.status,
|
|
37080
|
+
_ref$optionStyle = _ref.optionStyle,
|
|
37081
|
+
optionStyle = _ref$optionStyle === void 0 ? {
|
|
37082
|
+
maxWidth: '250px',
|
|
37083
|
+
overflow: 'hidden',
|
|
37084
|
+
textOverflow: 'ellipsis',
|
|
37085
|
+
whiteSpace: 'nowrap'
|
|
37086
|
+
} : _ref$optionStyle,
|
|
37087
|
+
_ref$showClear = _ref.showClear,
|
|
37088
|
+
showClear = _ref$showClear === void 0 ? true : _ref$showClear,
|
|
37089
|
+
_ref$groupedItemTempl = _ref.groupedItemTemplateConfig,
|
|
37090
|
+
groupedItemTemplateConfig = _ref$groupedItemTempl === void 0 ? {
|
|
37091
|
+
showIcon: false,
|
|
37092
|
+
iconKey: 'icon',
|
|
37093
|
+
showImage: false,
|
|
37094
|
+
imageKey: 'image',
|
|
37095
|
+
imageStyle: null,
|
|
37096
|
+
labelStyle: null,
|
|
37097
|
+
generalIcon: null,
|
|
37098
|
+
generalImage: null
|
|
37099
|
+
} : _ref$groupedItemTempl;
|
|
37100
|
+
_ref.isSelectMeta;
|
|
37101
|
+
var hasInfoLine = _ref.hasInfoLine,
|
|
37102
|
+
InfoLineValue = _ref.InfoLineValue,
|
|
37103
|
+
_ref$selectConfig = _ref.selectConfig,
|
|
37104
|
+
selectConfig = _ref$selectConfig === void 0 ? {
|
|
37105
|
+
labelStyle: null,
|
|
37106
|
+
generalIcon: null
|
|
37107
|
+
} : _ref$selectConfig,
|
|
37108
|
+
withIcon = _ref.withIcon,
|
|
37109
|
+
withColor = _ref.withColor,
|
|
37110
|
+
_ref$truncateAt = _ref.truncateAt,
|
|
37111
|
+
truncateAt = _ref$truncateAt === void 0 ? null : _ref$truncateAt;
|
|
37112
|
+
_ref.virtualScroll;
|
|
37113
|
+
var virtualScrollerOptions = _ref.virtualScrollerOptions,
|
|
37114
|
+
_ref$enableItemToolti = _ref.enableItemTooltip,
|
|
37115
|
+
enableItemTooltip = _ref$enableItemToolti === void 0 ? false : _ref$enableItemToolti,
|
|
37116
|
+
_ref$enableItemLink = _ref.enableItemLink,
|
|
37117
|
+
enableItemLink = _ref$enableItemLink === void 0 ? false : _ref$enableItemLink,
|
|
37118
|
+
_ref$openOnHover = _ref.openOnHover,
|
|
37119
|
+
openOnHover = _ref$openOnHover === void 0 ? false : _ref$openOnHover,
|
|
37120
|
+
_ref$itemsCheckedToTh = _ref.itemsCheckedToTheTop,
|
|
37121
|
+
itemsCheckedToTheTop = _ref$itemsCheckedToTh === void 0 ? false : _ref$itemsCheckedToTh,
|
|
37122
|
+
_ref$enableSorting = _ref.enableSorting,
|
|
37123
|
+
enableSorting = _ref$enableSorting === void 0 ? false : _ref$enableSorting,
|
|
37124
|
+
_ref$enableSecondaryL = _ref.enableSecondaryLabel,
|
|
37125
|
+
enableSecondaryLabel = _ref$enableSecondaryL === void 0 ? false : _ref$enableSecondaryL,
|
|
37126
|
+
_ref$secondaryLabelKe = _ref.secondaryLabelKey,
|
|
37127
|
+
secondaryLabelKey = _ref$secondaryLabelKe === void 0 ? 'profession' : _ref$secondaryLabelKe,
|
|
37128
|
+
_ref$subItem = _ref.subItem,
|
|
37129
|
+
subItem = _ref$subItem === void 0 ? false : _ref$subItem;
|
|
37053
37130
|
var _useState = useState(null),
|
|
37054
37131
|
_useState2 = _slicedToArray$d(_useState, 2),
|
|
37055
37132
|
optionSelected = _useState2[0],
|
|
@@ -37067,6 +37144,7 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37067
37144
|
inputValue = _useState8[0],
|
|
37068
37145
|
setInputValue = _useState8[1];
|
|
37069
37146
|
var dropdownRef = useRef(null);
|
|
37147
|
+
var dropdownComposantRef = useRef(null);
|
|
37070
37148
|
useRef(null);
|
|
37071
37149
|
var clickedFromList = useRef(false);
|
|
37072
37150
|
var _useState9 = useState(''),
|
|
@@ -37077,15 +37155,50 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37077
37155
|
_useState10 = _slicedToArray$d(_useState1, 2),
|
|
37078
37156
|
showRequiredError = _useState10[0],
|
|
37079
37157
|
setShowRequiredError = _useState10[1];
|
|
37158
|
+
var _useState11 = useState(0),
|
|
37159
|
+
_useState12 = _slicedToArray$d(_useState11, 2),
|
|
37160
|
+
tooltipKey = _useState12[0],
|
|
37161
|
+
setTooltipKey = _useState12[1];
|
|
37162
|
+
var _useState13 = useState(null),
|
|
37163
|
+
_useState14 = _slicedToArray$d(_useState13, 2),
|
|
37164
|
+
sortOrder = _useState14[0],
|
|
37165
|
+
setSortOrder = _useState14[1];
|
|
37166
|
+
var _useState15 = useState(false),
|
|
37167
|
+
_useState16 = _slicedToArray$d(_useState15, 2),
|
|
37168
|
+
isDropdownOpen = _useState16[0],
|
|
37169
|
+
setIsDropdownOpen = _useState16[1];
|
|
37170
|
+
var _useState17 = useState(''),
|
|
37171
|
+
_useState18 = _slicedToArray$d(_useState17, 2),
|
|
37172
|
+
selectedGroupLabel = _useState18[0],
|
|
37173
|
+
setSelectedGroupLabel = _useState18[1];
|
|
37080
37174
|
|
|
37081
37175
|
// 🔹 Lazy loading
|
|
37082
|
-
var
|
|
37083
|
-
|
|
37084
|
-
loading =
|
|
37085
|
-
setLoading =
|
|
37176
|
+
var _useState19 = useState(false),
|
|
37177
|
+
_useState20 = _slicedToArray$d(_useState19, 2),
|
|
37178
|
+
loading = _useState20[0],
|
|
37179
|
+
setLoading = _useState20[1];
|
|
37086
37180
|
var loadLazyTimeout = useRef();
|
|
37087
|
-
useRef(1);
|
|
37088
|
-
useRef(
|
|
37181
|
+
var currentPageRef = useRef(1);
|
|
37182
|
+
var hasMoreRef = useRef(true);
|
|
37183
|
+
var isLoadingRef = useRef(false);
|
|
37184
|
+
var searchTermRef = useRef('');
|
|
37185
|
+
var loadedOptionsRef = useRef([]);
|
|
37186
|
+
var updateLoadedOptions = function updateLoadedOptions(opts) {
|
|
37187
|
+
loadedOptionsRef.current = opts;
|
|
37188
|
+
setLoadedOptions(opts);
|
|
37189
|
+
};
|
|
37190
|
+
var inverseColor = function inverseColor(hexColor) {
|
|
37191
|
+
var r = parseInt(hexColor.substr(1, 2), 16);
|
|
37192
|
+
var g = parseInt(hexColor.substr(3, 2), 16);
|
|
37193
|
+
var b = parseInt(hexColor.substr(5, 2), 16);
|
|
37194
|
+
var luminance = (0.299 * r + 0.587 * g + 0.114 * b) / 255;
|
|
37195
|
+
return luminance > 0.18 ? '#000000' : '#FFFFFF';
|
|
37196
|
+
};
|
|
37197
|
+
var truncateLabel = function truncateLabel(label) {
|
|
37198
|
+
if (!label || typeof label !== 'string') return label;
|
|
37199
|
+
if (!truncateAt || label.length <= truncateAt) return label;
|
|
37200
|
+
return label.slice(0, truncateAt) + '…';
|
|
37201
|
+
};
|
|
37089
37202
|
var optionTemplate = function optionTemplate(option) {
|
|
37090
37203
|
var _ref2 = selectMetaConfig || {},
|
|
37091
37204
|
labelStyle = _ref2.labelStyle,
|
|
@@ -37093,17 +37206,69 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37093
37206
|
var styleLabel = {
|
|
37094
37207
|
marginLeft: '10px'
|
|
37095
37208
|
};
|
|
37096
|
-
|
|
37209
|
+
var tooltipProps = enableItemTooltip ? {
|
|
37210
|
+
'data-pr-tooltip': (option === null || option === void 0 ? void 0 : option.tooltip) || (option === null || option === void 0 ? void 0 : option.description),
|
|
37211
|
+
'data-pr-position': 'right'
|
|
37212
|
+
} : {};
|
|
37213
|
+
var secondaryLabel = enableSecondaryLabel ? option === null || option === void 0 ? void 0 : option[secondaryLabelKey] : null;
|
|
37214
|
+
var isLink = enableItemLink && (option === null || option === void 0 ? void 0 : option.link);
|
|
37215
|
+
var handleLinkClick = function handleLinkClick(e) {
|
|
37216
|
+
if (isLink) {
|
|
37217
|
+
e.preventDefault();
|
|
37218
|
+
e.stopPropagation();
|
|
37219
|
+
window.open(option.link, '_blank', 'noopener,noreferrer');
|
|
37220
|
+
}
|
|
37221
|
+
};
|
|
37222
|
+
var optionAttrs = typeof choice_attr === 'function' ? choice_attr(option) : {};
|
|
37223
|
+
var attrStyle = optionAttrs.style,
|
|
37224
|
+
attrClassName = optionAttrs.className,
|
|
37225
|
+
restAttrs = _objectWithoutProperties$1(optionAttrs, _excluded$3);
|
|
37226
|
+
var className = "flex align-items-center dropdown-tooltip-item ".concat(attrClassName || optionClassname || '').trim();
|
|
37227
|
+
if (withIcon || withColor) {
|
|
37228
|
+
var _ref3 = selectConfig || {},
|
|
37229
|
+
cfgLabelStyle = _ref3.labelStyle,
|
|
37230
|
+
cfgGeneralIcon = _ref3.generalIcon;
|
|
37231
|
+
return /*#__PURE__*/React__default.createElement("div", _extends$J({}, tooltipProps, restAttrs, {
|
|
37232
|
+
onClick: function onClick() {
|
|
37233
|
+
clickedFromList.current = true;
|
|
37234
|
+
},
|
|
37235
|
+
className: className,
|
|
37236
|
+
style: _objectSpread2(_objectSpread2({
|
|
37237
|
+
fontSize: '14px',
|
|
37238
|
+
display: 'flex',
|
|
37239
|
+
alignItems: 'center',
|
|
37240
|
+
gap: '8px'
|
|
37241
|
+
}, optionStyle), attrStyle)
|
|
37242
|
+
}), withIcon && cfgGeneralIcon && /*#__PURE__*/React__default.createElement("i", {
|
|
37243
|
+
style: {
|
|
37244
|
+
color: option === null || option === void 0 ? void 0 : option.color
|
|
37245
|
+
},
|
|
37246
|
+
className: cfgGeneralIcon
|
|
37247
|
+
}), withColor && option !== null && option !== void 0 && option.color ? /*#__PURE__*/React__default.createElement("span", {
|
|
37248
|
+
className: "dd-color-badge".concat(optionSelected === (option === null || option === void 0 ? void 0 : option[optionValue]) ? ' is-selected' : ''),
|
|
37249
|
+
style: {
|
|
37250
|
+
'--badge-color': option.color,
|
|
37251
|
+
color: inverseColor(option.color)
|
|
37252
|
+
}
|
|
37253
|
+
}, option === null || option === void 0 ? void 0 : option[optionLabel]) : /*#__PURE__*/React__default.createElement("span", {
|
|
37254
|
+
style: _objectSpread2(_objectSpread2({}, cfgLabelStyle), subItem ? {
|
|
37255
|
+
flex: 1
|
|
37256
|
+
} : {})
|
|
37257
|
+
}, option === null || option === void 0 ? void 0 : option[optionLabel]));
|
|
37258
|
+
}
|
|
37259
|
+
return /*#__PURE__*/React__default.createElement("div", _extends$J({}, tooltipProps, restAttrs, {
|
|
37097
37260
|
onClick: function onClick() {
|
|
37098
37261
|
clickedFromList.current = true;
|
|
37099
37262
|
},
|
|
37100
|
-
className:
|
|
37101
|
-
style: {
|
|
37263
|
+
className: className,
|
|
37264
|
+
style: _objectSpread2({
|
|
37102
37265
|
padding: '6px 10px',
|
|
37103
37266
|
height: 'auto'
|
|
37104
|
-
}
|
|
37105
|
-
}, /*#__PURE__*/React__default.createElement("div", {
|
|
37106
|
-
style: _objectSpread2({
|
|
37267
|
+
}, attrStyle)
|
|
37268
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
37269
|
+
style: _objectSpread2(_objectSpread2({}, subItem ? {
|
|
37270
|
+
flex: 1
|
|
37271
|
+
} : {}), {}, {
|
|
37107
37272
|
fontSize: '15px',
|
|
37108
37273
|
fontWeight: 'bold'
|
|
37109
37274
|
}, labelStyle)
|
|
@@ -37114,15 +37279,103 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37114
37279
|
className: generalIcon
|
|
37115
37280
|
}), /*#__PURE__*/React__default.createElement("span", {
|
|
37116
37281
|
style: styleLabel
|
|
37117
|
-
}, option === null || option === void 0 ? void 0 : option[optionLabel])
|
|
37282
|
+
}, option === null || option === void 0 ? void 0 : option[optionLabel]), secondaryLabel && /*#__PURE__*/React__default.createElement("div", {
|
|
37283
|
+
onClick: isLink ? handleLinkClick : undefined,
|
|
37284
|
+
onMouseDown: isLink ? function (e) {
|
|
37285
|
+
return e.stopPropagation();
|
|
37286
|
+
} : undefined,
|
|
37287
|
+
style: {
|
|
37288
|
+
cursor: isLink ? 'pointer' : 'default',
|
|
37289
|
+
marginTop: '2px',
|
|
37290
|
+
width: 'fit-content'
|
|
37291
|
+
}
|
|
37292
|
+
}, /*#__PURE__*/React__default.createElement("small", {
|
|
37293
|
+
style: {
|
|
37294
|
+
opacity: 0.75,
|
|
37295
|
+
fontSize: '12px',
|
|
37296
|
+
textDecoration: isLink ? 'underline' : 'none',
|
|
37297
|
+
color: isLink ? '#3b82f6' : 'inherit',
|
|
37298
|
+
fontWeight: 'normal'
|
|
37299
|
+
}
|
|
37300
|
+
}, /*#__PURE__*/React__default.createElement("span", {
|
|
37301
|
+
style: subItem ? {} : {
|
|
37302
|
+
marginLeft: '10px'
|
|
37303
|
+
}
|
|
37304
|
+
}, secondaryLabel)))));
|
|
37118
37305
|
};
|
|
37306
|
+
var groupedItemTemplate = function groupedItemTemplate(option) {
|
|
37307
|
+
var _ref4 = groupedItemTemplateConfig || {},
|
|
37308
|
+
showImage = _ref4.showImage,
|
|
37309
|
+
imageKey = _ref4.imageKey,
|
|
37310
|
+
imageStyle = _ref4.imageStyle,
|
|
37311
|
+
showIcon = _ref4.showIcon,
|
|
37312
|
+
iconKey = _ref4.iconKey,
|
|
37313
|
+
labelStyle = _ref4.labelStyle,
|
|
37314
|
+
generalIcon = _ref4.generalIcon,
|
|
37315
|
+
generalImage = _ref4.generalImage;
|
|
37316
|
+
var icon = option.value && option.value[iconKey];
|
|
37317
|
+
var styleLabel = generalIcon || showImage && option[imageKey] || showIcon && icon ? {
|
|
37318
|
+
marginLeft: '10px'
|
|
37319
|
+
} : {};
|
|
37320
|
+
if (option.group) {
|
|
37321
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
37322
|
+
className: "flex align-items-center"
|
|
37323
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
37324
|
+
style: _objectSpread2({
|
|
37325
|
+
fontSize: '15px',
|
|
37326
|
+
fontWeight: 'bold'
|
|
37327
|
+
}, labelStyle)
|
|
37328
|
+
}, generalIcon && /*#__PURE__*/React__default.createElement("i", {
|
|
37329
|
+
className: generalIcon,
|
|
37330
|
+
style: _objectSpread2({
|
|
37331
|
+
fontSize: '15px',
|
|
37332
|
+
fontWeight: 'bold'
|
|
37333
|
+
}, labelStyle)
|
|
37334
|
+
}), generalImage && /*#__PURE__*/React__default.createElement("img", {
|
|
37335
|
+
alt: "General",
|
|
37336
|
+
src: generalImage,
|
|
37337
|
+
style: imageStyle || {
|
|
37338
|
+
width: '18px',
|
|
37339
|
+
marginRight: '0.5rem'
|
|
37340
|
+
},
|
|
37341
|
+
className: "mr-2"
|
|
37342
|
+
}), showImage && option[imageKey] && /*#__PURE__*/React__default.createElement("img", {
|
|
37343
|
+
alt: option.label,
|
|
37344
|
+
src: option[imageKey],
|
|
37345
|
+
style: imageStyle || {
|
|
37346
|
+
width: '18px',
|
|
37347
|
+
marginRight: '0.5rem'
|
|
37348
|
+
},
|
|
37349
|
+
className: "mr-2"
|
|
37350
|
+
}), showIcon && icon && /*#__PURE__*/React__default.createElement("i", {
|
|
37351
|
+
className: "mr-2 ".concat(icon),
|
|
37352
|
+
style: _objectSpread2({
|
|
37353
|
+
fontSize: '15px',
|
|
37354
|
+
fontWeight: 'bold'
|
|
37355
|
+
}, labelStyle)
|
|
37356
|
+
}), /*#__PURE__*/React__default.createElement("span", {
|
|
37357
|
+
style: styleLabel
|
|
37358
|
+
}, option.label)));
|
|
37359
|
+
}
|
|
37360
|
+
return null;
|
|
37361
|
+
};
|
|
37362
|
+
var panelFooterTemplate = function panelFooterTemplate() {
|
|
37363
|
+
if (InfoLineValue) {
|
|
37364
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
37365
|
+
style: {
|
|
37366
|
+
padding: '8px'
|
|
37367
|
+
}
|
|
37368
|
+
}, /*#__PURE__*/React__default.createElement("b", null, InfoLineValue));
|
|
37369
|
+
}
|
|
37370
|
+
};
|
|
37371
|
+
var isInvalidEffective = invalid || status === 'error' || showRequiredError;
|
|
37119
37372
|
|
|
37120
37373
|
// 🔹 Chargement des options depuis une URL (même contrat que MultiSelectMetaAsync)
|
|
37121
37374
|
var fetchOptionsFromUrl = /*#__PURE__*/function () {
|
|
37122
|
-
var
|
|
37375
|
+
var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
37123
37376
|
var search,
|
|
37124
|
-
|
|
37125
|
-
|
|
37377
|
+
_ref6,
|
|
37378
|
+
_ref6$page,
|
|
37126
37379
|
page,
|
|
37127
37380
|
length,
|
|
37128
37381
|
start,
|
|
@@ -37138,7 +37391,7 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37138
37391
|
while (1) switch (_context.n) {
|
|
37139
37392
|
case 0:
|
|
37140
37393
|
search = _args.length > 0 && _args[0] !== undefined ? _args[0] : '';
|
|
37141
|
-
|
|
37394
|
+
_ref6 = _args.length > 2 && _args[2] !== undefined ? _args[2] : {}, _ref6$page = _ref6.page, page = _ref6$page === void 0 ? 1 : _ref6$page;
|
|
37142
37395
|
_context.p = 1;
|
|
37143
37396
|
length = 25;
|
|
37144
37397
|
start = (page - 1) * length;
|
|
@@ -37158,6 +37411,7 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37158
37411
|
_context.n = 3;
|
|
37159
37412
|
break;
|
|
37160
37413
|
}
|
|
37414
|
+
hasMoreRef.current = false;
|
|
37161
37415
|
return _context.a(2, {
|
|
37162
37416
|
options: [],
|
|
37163
37417
|
hasMore: false
|
|
@@ -37200,11 +37454,10 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37200
37454
|
}, _callee, null, [[1, 6]]);
|
|
37201
37455
|
}));
|
|
37202
37456
|
return function fetchOptionsFromUrl() {
|
|
37203
|
-
return
|
|
37457
|
+
return _ref5.apply(this, arguments);
|
|
37204
37458
|
};
|
|
37205
37459
|
}();
|
|
37206
37460
|
var loadOptions = typeof options === 'function' ? options : fetchOptionsFromUrl;
|
|
37207
|
-
var isInvalidEffective = invalid || showRequiredError;
|
|
37208
37461
|
var style = {
|
|
37209
37462
|
border: isInvalidEffective ? '1px solid red' : '1px solid #ccc',
|
|
37210
37463
|
width: '100%',
|
|
@@ -37215,9 +37468,12 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37215
37468
|
}, [optionSelected]);
|
|
37216
37469
|
useEffect(function () {
|
|
37217
37470
|
setOptionSelected(objValue ? objValue === null || objValue === void 0 ? void 0 : objValue[optionValue] : value !== null && value !== void 0 ? value : null);
|
|
37471
|
+
currentPageRef.current = 1;
|
|
37472
|
+
hasMoreRef.current = true;
|
|
37473
|
+
isLoadingRef.current = false;
|
|
37218
37474
|
var loadInitialOptions = /*#__PURE__*/function () {
|
|
37219
|
-
var
|
|
37220
|
-
var result,
|
|
37475
|
+
var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
37476
|
+
var result, initialOpts, exists;
|
|
37221
37477
|
return _regenerator().w(function (_context2) {
|
|
37222
37478
|
while (1) switch (_context2.n) {
|
|
37223
37479
|
case 0:
|
|
@@ -37227,16 +37483,15 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37227
37483
|
});
|
|
37228
37484
|
case 1:
|
|
37229
37485
|
result = _context2.v;
|
|
37230
|
-
|
|
37486
|
+
hasMoreRef.current = (result === null || result === void 0 ? void 0 : result.hasMore) !== false;
|
|
37487
|
+
initialOpts = (result === null || result === void 0 ? void 0 : result.options) || [];
|
|
37231
37488
|
if (objValue) {
|
|
37232
|
-
exists =
|
|
37489
|
+
exists = initialOpts.some(function (opt) {
|
|
37233
37490
|
return opt[optionValue] === objValue[optionValue];
|
|
37234
37491
|
});
|
|
37235
|
-
|
|
37236
|
-
|
|
37237
|
-
|
|
37238
|
-
});
|
|
37239
|
-
}
|
|
37492
|
+
updateLoadedOptions(exists ? initialOpts : [].concat(_toConsumableArray$a(initialOpts), [objValue]));
|
|
37493
|
+
} else {
|
|
37494
|
+
updateLoadedOptions(initialOpts);
|
|
37240
37495
|
}
|
|
37241
37496
|
case 2:
|
|
37242
37497
|
return _context2.a(2);
|
|
@@ -37244,7 +37499,7 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37244
37499
|
}, _callee2);
|
|
37245
37500
|
}));
|
|
37246
37501
|
return function loadInitialOptions() {
|
|
37247
|
-
return
|
|
37502
|
+
return _ref7.apply(this, arguments);
|
|
37248
37503
|
};
|
|
37249
37504
|
}();
|
|
37250
37505
|
loadInitialOptions();
|
|
@@ -37270,7 +37525,39 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37270
37525
|
}
|
|
37271
37526
|
};
|
|
37272
37527
|
}, [dropdownRef.current]);
|
|
37528
|
+
useEffect(function () {
|
|
37529
|
+
if (enableItemTooltip) {
|
|
37530
|
+
setTooltipKey(function (prevKey) {
|
|
37531
|
+
return prevKey + 1;
|
|
37532
|
+
});
|
|
37533
|
+
}
|
|
37534
|
+
}, [loadedOptions, enableItemTooltip]);
|
|
37535
|
+
var getSelectedGroupLabel = function getSelectedGroupLabel(selectedValue) {
|
|
37536
|
+
if (!isGroupedOption || !selectedValue) return '';
|
|
37537
|
+
var _iterator = _createForOfIteratorHelper$7(loadedOptions),
|
|
37538
|
+
_step;
|
|
37539
|
+
try {
|
|
37540
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
37541
|
+
var group = _step.value;
|
|
37542
|
+
if (showTooltipGroup && group.items && group.items.some(function (item) {
|
|
37543
|
+
return item.value === selectedValue;
|
|
37544
|
+
})) {
|
|
37545
|
+
if (prevTextShowTooltip) return prevTextShowTooltip + ' ' + group.label;
|
|
37546
|
+
return group.label;
|
|
37547
|
+
}
|
|
37548
|
+
}
|
|
37549
|
+
} catch (err) {
|
|
37550
|
+
_iterator.e(err);
|
|
37551
|
+
} finally {
|
|
37552
|
+
_iterator.f();
|
|
37553
|
+
}
|
|
37554
|
+
return '';
|
|
37555
|
+
};
|
|
37556
|
+
useEffect(function () {
|
|
37557
|
+
if (optionSelected) setSelectedGroupLabel(getSelectedGroupLabel(optionSelected));
|
|
37558
|
+
}, [optionSelected, loadedOptions]);
|
|
37273
37559
|
var handleChange = function handleChange(e) {
|
|
37560
|
+
if (readOnly) return;
|
|
37274
37561
|
setOptionSelected(e.value);
|
|
37275
37562
|
if (clickedFromList.current) {
|
|
37276
37563
|
var _selected$optionLabel;
|
|
@@ -37281,26 +37568,44 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37281
37568
|
setInputValue((_selected$optionLabel = selected === null || selected === void 0 ? void 0 : selected[optionLabel]) !== null && _selected$optionLabel !== void 0 ? _selected$optionLabel : '');
|
|
37282
37569
|
}
|
|
37283
37570
|
clickedFromList.current = false;
|
|
37284
|
-
if (onChange)
|
|
37571
|
+
if (typeof onChange === 'function') {
|
|
37572
|
+
onChange(e.value);
|
|
37573
|
+
} else if (typeof onChange === 'string' && typeof window[onChange] === 'function') {
|
|
37574
|
+
window[onChange](e.value);
|
|
37575
|
+
}
|
|
37285
37576
|
};
|
|
37286
37577
|
var handleClear = function handleClear() {
|
|
37287
37578
|
setOptionSelected(null);
|
|
37288
37579
|
setInputValue('');
|
|
37289
|
-
if (onChange)
|
|
37580
|
+
if (typeof onChange === 'function') {
|
|
37581
|
+
onChange(null);
|
|
37582
|
+
} else if (typeof onChange === 'string' && typeof window[onChange] === 'function') {
|
|
37583
|
+
window[onChange](null);
|
|
37584
|
+
}
|
|
37585
|
+
searchTermRef.current = '';
|
|
37586
|
+
currentPageRef.current = 1;
|
|
37587
|
+
hasMoreRef.current = true;
|
|
37588
|
+
isLoadingRef.current = false;
|
|
37290
37589
|
loadOptions('', [], {
|
|
37291
37590
|
page: 1
|
|
37292
37591
|
}).then(function (result) {
|
|
37293
|
-
|
|
37592
|
+
hasMoreRef.current = (result === null || result === void 0 ? void 0 : result.hasMore) !== false;
|
|
37593
|
+
updateLoadedOptions((result === null || result === void 0 ? void 0 : result.options) || []);
|
|
37294
37594
|
});
|
|
37295
37595
|
};
|
|
37296
37596
|
var handleInputChange = /*#__PURE__*/function () {
|
|
37297
|
-
var
|
|
37298
|
-
var search, result, _result$
|
|
37597
|
+
var _ref8 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(e) {
|
|
37598
|
+
var search, result, _result$options, _result, filteredOptions;
|
|
37299
37599
|
return _regenerator().w(function (_context3) {
|
|
37300
37600
|
while (1) switch (_context3.n) {
|
|
37301
37601
|
case 0:
|
|
37302
37602
|
search = e.target.value;
|
|
37303
37603
|
setInputValue(search);
|
|
37604
|
+
if (typeof onSearch === 'function') onSearch(search);
|
|
37605
|
+
searchTermRef.current = search;
|
|
37606
|
+
currentPageRef.current = 1;
|
|
37607
|
+
hasMoreRef.current = true;
|
|
37608
|
+
isLoadingRef.current = false;
|
|
37304
37609
|
if (search) {
|
|
37305
37610
|
_context3.n = 2;
|
|
37306
37611
|
break;
|
|
@@ -37311,7 +37616,8 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37311
37616
|
});
|
|
37312
37617
|
case 1:
|
|
37313
37618
|
result = _context3.v;
|
|
37314
|
-
|
|
37619
|
+
hasMoreRef.current = (result === null || result === void 0 ? void 0 : result.hasMore) !== false;
|
|
37620
|
+
updateLoadedOptions((result === null || result === void 0 ? void 0 : result.options) || []);
|
|
37315
37621
|
_context3.n = 4;
|
|
37316
37622
|
break;
|
|
37317
37623
|
case 2:
|
|
@@ -37321,29 +37627,33 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37321
37627
|
});
|
|
37322
37628
|
case 3:
|
|
37323
37629
|
_result = _context3.v;
|
|
37324
|
-
|
|
37630
|
+
hasMoreRef.current = (_result === null || _result === void 0 ? void 0 : _result.hasMore) !== false;
|
|
37631
|
+
filteredOptions = (_result === null || _result === void 0 || (_result$options = _result.options) === null || _result$options === void 0 ? void 0 : _result$options.filter(function (opt) {
|
|
37325
37632
|
return opt[optionLabel].toLowerCase().includes(search.toLowerCase());
|
|
37326
37633
|
})) || [];
|
|
37327
|
-
|
|
37634
|
+
updateLoadedOptions(filteredOptions);
|
|
37328
37635
|
case 4:
|
|
37329
37636
|
return _context3.a(2);
|
|
37330
37637
|
}
|
|
37331
37638
|
}, _callee3);
|
|
37332
37639
|
}));
|
|
37333
37640
|
return function handleInputChange(_x) {
|
|
37334
|
-
return
|
|
37641
|
+
return _ref8.apply(this, arguments);
|
|
37335
37642
|
};
|
|
37336
37643
|
}();
|
|
37644
|
+
var handleMouseEnter = function handleMouseEnter() {
|
|
37645
|
+
var _dropdownComposantRef;
|
|
37646
|
+
if (!openOnHover || disabled || readOnly) return;
|
|
37647
|
+
(_dropdownComposantRef = dropdownComposantRef.current) === null || _dropdownComposantRef === void 0 || _dropdownComposantRef.show();
|
|
37648
|
+
};
|
|
37649
|
+
var handleMouseLeave = function handleMouseLeave() {
|
|
37650
|
+
var _dropdownComposantRef2;
|
|
37651
|
+
if (!openOnHover) return;
|
|
37652
|
+
(_dropdownComposantRef2 = dropdownComposantRef.current) === null || _dropdownComposantRef2 === void 0 || _dropdownComposantRef2.hide();
|
|
37653
|
+
};
|
|
37337
37654
|
var selectedOption = loadedOptions.find(function (opt) {
|
|
37338
37655
|
return opt[optionValue] === optionSelected;
|
|
37339
37656
|
});
|
|
37340
|
-
var inverseColor = function inverseColor(hexColor) {
|
|
37341
|
-
var r = parseInt(hexColor.substr(1, 2), 16);
|
|
37342
|
-
var g = parseInt(hexColor.substr(3, 2), 16);
|
|
37343
|
-
var b = parseInt(hexColor.substr(5, 2), 16);
|
|
37344
|
-
var luminance = (0.299 * r + 0.587 * g + 0.114 * b) / 255;
|
|
37345
|
-
return luminance > 0.18 ? '#000000' : '#FFFFFF';
|
|
37346
|
-
};
|
|
37347
37657
|
var valueTemplate = function valueTemplate() {
|
|
37348
37658
|
if (isEditing) return null;
|
|
37349
37659
|
if (!selectedOption) return /*#__PURE__*/React__default.createElement("span", {
|
|
@@ -37351,7 +37661,37 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37351
37661
|
color: '#aaa'
|
|
37352
37662
|
}
|
|
37353
37663
|
}, placeholder);
|
|
37664
|
+
if (withIcon || withColor) {
|
|
37665
|
+
var _ref9 = selectConfig || {},
|
|
37666
|
+
labelStyle = _ref9.labelStyle,
|
|
37667
|
+
generalIcon = _ref9.generalIcon;
|
|
37668
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
37669
|
+
style: _objectSpread2({
|
|
37670
|
+
display: 'flex',
|
|
37671
|
+
alignItems: 'center',
|
|
37672
|
+
gap: '8px',
|
|
37673
|
+
fontFamily: 'Arial',
|
|
37674
|
+
fontSize: '14px'
|
|
37675
|
+
}, valueStyle)
|
|
37676
|
+
}, withIcon && generalIcon && /*#__PURE__*/React__default.createElement("i", {
|
|
37677
|
+
style: {
|
|
37678
|
+
color: selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.color
|
|
37679
|
+
},
|
|
37680
|
+
className: generalIcon
|
|
37681
|
+
}), withColor && selectedOption !== null && selectedOption !== void 0 && selectedOption.color ? /*#__PURE__*/React__default.createElement("span", {
|
|
37682
|
+
className: "dd-color-badge is-selected",
|
|
37683
|
+
style: {
|
|
37684
|
+
'--badge-color': selectedOption.color,
|
|
37685
|
+
color: inverseColor(selectedOption.color)
|
|
37686
|
+
}
|
|
37687
|
+
}, truncateLabel(selectedOption[optionLabel])) : /*#__PURE__*/React__default.createElement("span", {
|
|
37688
|
+
className: valueClassname,
|
|
37689
|
+
style: labelStyle
|
|
37690
|
+
}, truncateLabel(selectedOption[optionLabel])));
|
|
37691
|
+
}
|
|
37354
37692
|
return /*#__PURE__*/React__default.createElement("span", {
|
|
37693
|
+
className: valueClassname,
|
|
37694
|
+
title: selectedOption[optionLabel],
|
|
37355
37695
|
style: _objectSpread2({
|
|
37356
37696
|
backgroundColor: selectedOption !== null && selectedOption !== void 0 && selectedOption.color ? selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.color : '#FFFFFF',
|
|
37357
37697
|
color: selectedOption !== null && selectedOption !== void 0 && selectedOption.color ? inverseColor(selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.color) : '#FFFFFF',
|
|
@@ -37362,41 +37702,53 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37362
37702
|
display: 'inline-block',
|
|
37363
37703
|
fontFamily: 'Arial'
|
|
37364
37704
|
}, valueStyle)
|
|
37365
|
-
}, selectedOption[optionLabel]);
|
|
37705
|
+
}, truncateLabel(selectedOption[optionLabel]));
|
|
37366
37706
|
};
|
|
37367
37707
|
|
|
37368
|
-
// 🔹
|
|
37708
|
+
// 🔹 Lazy loading paginé au scroll (même logique que MultiSelectMetaAsync)
|
|
37369
37709
|
var onLazyLoad = function onLazyLoad(event) {
|
|
37370
37710
|
setLoading(true);
|
|
37371
|
-
if (
|
|
37372
|
-
|
|
37373
|
-
|
|
37374
|
-
|
|
37375
|
-
|
|
37376
|
-
|
|
37377
|
-
|
|
37378
|
-
|
|
37379
|
-
|
|
37380
|
-
|
|
37381
|
-
|
|
37382
|
-
|
|
37383
|
-
|
|
37384
|
-
|
|
37385
|
-
|
|
37386
|
-
|
|
37387
|
-
|
|
37388
|
-
|
|
37389
|
-
|
|
37390
|
-
|
|
37391
|
-
|
|
37392
|
-
|
|
37393
|
-
|
|
37394
|
-
|
|
37395
|
-
|
|
37396
|
-
|
|
37711
|
+
if (event.last < loadedOptionsRef.current.length - 1 || !hasMoreRef.current) {
|
|
37712
|
+
setTimeout(function () {
|
|
37713
|
+
return setLoading(false);
|
|
37714
|
+
}, 0);
|
|
37715
|
+
return;
|
|
37716
|
+
}
|
|
37717
|
+
if (isLoadingRef.current) return;
|
|
37718
|
+
isLoadingRef.current = true;
|
|
37719
|
+
if (loadLazyTimeout.current) clearTimeout(loadLazyTimeout.current);
|
|
37720
|
+
loadLazyTimeout.current = setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
|
|
37721
|
+
var nextPage, result, newOptions;
|
|
37722
|
+
return _regenerator().w(function (_context4) {
|
|
37723
|
+
while (1) switch (_context4.n) {
|
|
37724
|
+
case 0:
|
|
37725
|
+
nextPage = currentPageRef.current + 1;
|
|
37726
|
+
_context4.n = 1;
|
|
37727
|
+
return loadOptions(searchTermRef.current, [], {
|
|
37728
|
+
page: nextPage
|
|
37729
|
+
});
|
|
37730
|
+
case 1:
|
|
37731
|
+
result = _context4.v;
|
|
37732
|
+
newOptions = (result === null || result === void 0 ? void 0 : result.options) || [];
|
|
37733
|
+
if (!(newOptions.length === 0)) {
|
|
37734
|
+
_context4.n = 2;
|
|
37735
|
+
break;
|
|
37736
|
+
}
|
|
37737
|
+
hasMoreRef.current = false;
|
|
37738
|
+
isLoadingRef.current = false;
|
|
37739
|
+
setLoading(false);
|
|
37740
|
+
return _context4.a(2);
|
|
37741
|
+
case 2:
|
|
37742
|
+
updateLoadedOptions([].concat(_toConsumableArray$a(loadedOptionsRef.current), _toConsumableArray$a(newOptions)));
|
|
37743
|
+
hasMoreRef.current = (result === null || result === void 0 ? void 0 : result.hasMore) !== false;
|
|
37744
|
+
currentPageRef.current = nextPage;
|
|
37745
|
+
isLoadingRef.current = false;
|
|
37746
|
+
setLoading(false);
|
|
37747
|
+
case 3:
|
|
37748
|
+
return _context4.a(2);
|
|
37397
37749
|
}
|
|
37398
|
-
}
|
|
37399
|
-
},
|
|
37750
|
+
}, _callee4);
|
|
37751
|
+
})), 500);
|
|
37400
37752
|
};
|
|
37401
37753
|
useEffect(function () {
|
|
37402
37754
|
var handleAnyClick = function handleAnyClick(e) {
|
|
@@ -37423,20 +37775,103 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37423
37775
|
return document.removeEventListener('click', handleAnyClick);
|
|
37424
37776
|
};
|
|
37425
37777
|
}, []);
|
|
37426
|
-
|
|
37427
|
-
|
|
37428
|
-
|
|
37429
|
-
|
|
37778
|
+
|
|
37779
|
+
// 🔹 Options calculées (réordonnancement + tri, comme Dropdown)
|
|
37780
|
+
var smartSort = function smartSort(opts, order, labelKey) {
|
|
37781
|
+
if (!order) return opts;
|
|
37782
|
+
var dir = order === 'desc' ? 1 : -1;
|
|
37783
|
+
return _toConsumableArray$a(opts).sort(function (a, b) {
|
|
37784
|
+
var _a$labelKey, _b$labelKey;
|
|
37785
|
+
var aLabel = String((_a$labelKey = a === null || a === void 0 ? void 0 : a[labelKey]) !== null && _a$labelKey !== void 0 ? _a$labelKey : '').trim();
|
|
37786
|
+
var bLabel = String((_b$labelKey = b === null || b === void 0 ? void 0 : b[labelKey]) !== null && _b$labelKey !== void 0 ? _b$labelKey : '').trim();
|
|
37787
|
+
return dir * aLabel.localeCompare(bLabel, 'fr', {
|
|
37788
|
+
sensitivity: 'base',
|
|
37789
|
+
numeric: true
|
|
37790
|
+
});
|
|
37791
|
+
});
|
|
37792
|
+
};
|
|
37793
|
+
var computedOptions = useMemo(function () {
|
|
37794
|
+
var opts = loadedOptions;
|
|
37795
|
+
if (itemsCheckedToTheTop && optionSelected) {
|
|
37796
|
+
var selected = opts.find(function (opt) {
|
|
37797
|
+
return (opt === null || opt === void 0 ? void 0 : opt[optionValue]) === optionSelected;
|
|
37798
|
+
});
|
|
37799
|
+
if (selected) {
|
|
37800
|
+
opts = [selected].concat(_toConsumableArray$a(opts.filter(function (opt) {
|
|
37801
|
+
return (opt === null || opt === void 0 ? void 0 : opt[optionValue]) !== optionSelected;
|
|
37802
|
+
})));
|
|
37803
|
+
}
|
|
37804
|
+
}
|
|
37805
|
+
if (enableSorting) {
|
|
37806
|
+
opts = smartSort(opts, sortOrder, optionLabel);
|
|
37807
|
+
}
|
|
37808
|
+
return opts;
|
|
37809
|
+
}, [loadedOptions, itemsCheckedToTheTop, optionSelected, enableSorting, sortOrder, optionValue, optionLabel]);
|
|
37810
|
+
var toggleSortOrder = function toggleSortOrder() {
|
|
37811
|
+
setSortOrder(function (prev) {
|
|
37812
|
+
if (prev === null) return 'desc';
|
|
37813
|
+
if (prev === 'desc') return 'asc';
|
|
37814
|
+
return null;
|
|
37815
|
+
});
|
|
37816
|
+
requestAnimationFrame(function () {
|
|
37817
|
+
var _dropdownComposantRef3;
|
|
37818
|
+
(_dropdownComposantRef3 = dropdownComposantRef.current) === null || _dropdownComposantRef3 === void 0 || _dropdownComposantRef3.show();
|
|
37819
|
+
});
|
|
37820
|
+
};
|
|
37821
|
+
var customFilterTemplate = function customFilterTemplate(opts) {
|
|
37822
|
+
if (!enableSorting) return opts.element;
|
|
37823
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
37824
|
+
className: "dd-search-row"
|
|
37825
|
+
}, opts.element, /*#__PURE__*/React__default.createElement("button", {
|
|
37826
|
+
type: "button",
|
|
37827
|
+
className: "dd-sort-btn",
|
|
37828
|
+
onClick: function onClick(e) {
|
|
37829
|
+
e.stopPropagation();
|
|
37830
|
+
toggleSortOrder();
|
|
37831
|
+
}
|
|
37832
|
+
}, /*#__PURE__*/React__default.createElement("i", {
|
|
37833
|
+
className: sortOrder === 'desc' ? 'pi pi-sort-amount-down' : sortOrder === 'asc' ? 'pi pi-sort-amount-up-alt' : 'pi pi-sort-alt'
|
|
37834
|
+
})));
|
|
37835
|
+
};
|
|
37836
|
+
var mergedClassName = "flex flex-col gap-1 ".concat(attr["class"] || '').trim();
|
|
37837
|
+
attr["class"];
|
|
37838
|
+
var cleanAttr = _objectWithoutProperties$1(attr, _excluded2$2);
|
|
37839
|
+
return /*#__PURE__*/React__default.createElement("div", _extends$J({
|
|
37840
|
+
ref: dropdownRef
|
|
37841
|
+
}, cleanAttr, {
|
|
37842
|
+
className: mergedClassName,
|
|
37843
|
+
style: {
|
|
37844
|
+
width: '100%'
|
|
37845
|
+
},
|
|
37846
|
+
onMouseEnter: handleMouseEnter,
|
|
37847
|
+
onMouseLeave: handleMouseLeave,
|
|
37848
|
+
onClick: isInvalidEffective || disabled || readOnly ? null : function () {
|
|
37430
37849
|
return setIsEditing(editable);
|
|
37431
37850
|
}
|
|
37432
|
-
}, /*#__PURE__*/React__default.createElement(
|
|
37433
|
-
|
|
37851
|
+
}), enableItemTooltip && /*#__PURE__*/React__default.createElement(Tooltip$1, {
|
|
37852
|
+
key: tooltipKey,
|
|
37853
|
+
target: ".dropdown-tooltip-item",
|
|
37854
|
+
appendTo: document.body,
|
|
37855
|
+
position: "right",
|
|
37856
|
+
style: {
|
|
37857
|
+
zIndex: 9999999
|
|
37858
|
+
}
|
|
37859
|
+
}), /*#__PURE__*/React__default.createElement(Dropdown$1, _extends$J({
|
|
37860
|
+
ref: dropdownComposantRef,
|
|
37861
|
+
options: computedOptions,
|
|
37434
37862
|
onChange: handleChange,
|
|
37863
|
+
onClick: function onClick(e) {
|
|
37864
|
+
if (readOnly) {
|
|
37865
|
+
e.preventDefault();
|
|
37866
|
+
e.stopPropagation();
|
|
37867
|
+
}
|
|
37868
|
+
},
|
|
37435
37869
|
filter: filter,
|
|
37870
|
+
filterTemplate: filter ? customFilterTemplate : undefined,
|
|
37436
37871
|
placeholder: placeholder === "" || placeholder === null ? ' ' : placeholder,
|
|
37437
37872
|
optionLabel: optionLabel,
|
|
37438
37873
|
optionValue: optionValue,
|
|
37439
|
-
showClear:
|
|
37874
|
+
showClear: showClear,
|
|
37440
37875
|
disabled: disabled,
|
|
37441
37876
|
editable: isEditing,
|
|
37442
37877
|
onFocus: function onFocus() {
|
|
@@ -37454,16 +37889,38 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37454
37889
|
},
|
|
37455
37890
|
dropdownMode: "current",
|
|
37456
37891
|
itemTemplate: optionTemplate,
|
|
37457
|
-
valueTemplate: valueTemplate
|
|
37458
|
-
|
|
37892
|
+
valueTemplate: valueTemplate
|
|
37893
|
+
}, hasInfoLine && {
|
|
37894
|
+
panelFooterTemplate: panelFooterTemplate
|
|
37895
|
+
}, {
|
|
37896
|
+
optionGroupTemplate: isGroupedOption ? groupedItemTemplate : null
|
|
37897
|
+
}, isGroupedOption && computedOptions.length > 0 && Array.isArray((_computedOptions$ = computedOptions[0]) === null || _computedOptions$ === void 0 ? void 0 : _computedOptions$.items) && {
|
|
37898
|
+
optionGroupLabel: 'label',
|
|
37899
|
+
optionGroupChildren: 'items'
|
|
37900
|
+
}, {
|
|
37901
|
+
onShow: function onShow() {
|
|
37902
|
+
if (isGroupedOption && showTooltipGroup) setIsDropdownOpen(true);
|
|
37903
|
+
if (enableItemTooltip) setTooltipKey(function (k) {
|
|
37904
|
+
return k + 1;
|
|
37905
|
+
});
|
|
37906
|
+
},
|
|
37907
|
+
onHide: function onHide() {
|
|
37908
|
+
if (isGroupedOption && showTooltipGroup) setIsDropdownOpen(false);
|
|
37909
|
+
},
|
|
37910
|
+
emptyMessage: externalLoading ? 'Chargement…' : 'Aucune option disponible',
|
|
37911
|
+
virtualScrollerOptions: _objectSpread2({
|
|
37459
37912
|
lazy: true,
|
|
37460
37913
|
onLazyLoad: onLazyLoad,
|
|
37461
37914
|
itemSize: 38,
|
|
37462
37915
|
showLoader: true,
|
|
37463
|
-
loading: loading,
|
|
37916
|
+
loading: loading || externalLoading,
|
|
37464
37917
|
delay: 25
|
|
37465
|
-
},
|
|
37466
|
-
className: "w-full
|
|
37918
|
+
}, virtualScrollerOptions),
|
|
37919
|
+
className: "w-full"
|
|
37920
|
+
})), !isDropdownOpen && selectedGroupLabel && isGroupedOption && /*#__PURE__*/React__default.createElement(Tooltip$1, {
|
|
37921
|
+
target: ".p-dropdown-label.p-inputtext",
|
|
37922
|
+
content: selectedGroupLabel,
|
|
37923
|
+
position: "top"
|
|
37467
37924
|
}), name && /*#__PURE__*/React__default.createElement("input", {
|
|
37468
37925
|
type: "hidden",
|
|
37469
37926
|
name: name,
|
|
@@ -37500,9 +37957,6 @@ var DropdownSelectMetaAsync = function DropdownSelectMetaAsync(_ref) {
|
|
|
37500
37957
|
}, errorMessage || (showRequiredError ? ((_window$Translator = window.Translator) === null || _window$Translator === void 0 ? void 0 : _window$Translator.trans('error.required')) || 'Veuillez renseigner ce champ' : ((_window$Translator2 = window.Translator) === null || _window$Translator2 === void 0 ? void 0 : _window$Translator2.trans('error.invalid_selection')) || 'Sélection invalide'))));
|
|
37501
37958
|
};
|
|
37502
37959
|
|
|
37503
|
-
var css_248z$5 = "@keyframes fadeIn {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes toastSlideIn {\n from {\n opacity: 0;\n transform: translateX(40px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n@keyframes toastIconPop {\n 0% {\n transform: scale(0);\n opacity: 0;\n }\n 60% {\n transform: scale(1.2);\n opacity: 1;\n }\n 100% {\n transform: scale(1);\n }\n}\n@keyframes toastTextSlide {\n from {\n opacity: 0;\n transform: translateY(6px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.dropdownbook.p-dropdown-panel {\n z-index: 999999 !important;\n}\n\n.p-tooltip {\n z-index: 1000000 !important;\n}\n\n.dropdown-tooltip-item {\n position: relative;\n width: 100%;\n cursor: pointer;\n}\n\n/* Application du mixin field sur le wrapper du Dropdown */\n.dropdown-container .p-dropdown {\n font-family: \"Roboto\", sans-serif;\n min-height: 40px;\n padding: 0 12px;\n background: #ffffff;\n border: 1.5px solid #e0e3e8;\n border-radius: 7px;\n color: #1a1e26;\n outline: none;\n transition: border-color 180ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.dropdown-container .p-dropdown:hover:not(:focus):not(:focus-within):not([disabled]):not(.is-disabled) {\n border-color: #c8cdd6;\n}\n.dropdown-container .p-dropdown:focus, .dropdown-container .p-dropdown:focus-within, .dropdown-container .p-dropdown.is-open {\n border-color: #3f3f3f;\n box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);\n}\n.dropdown-container .p-dropdown[disabled], .dropdown-container .p-dropdown.is-disabled {\n opacity: 0.45;\n cursor: not-allowed;\n pointer-events: none;\n}\n.dropdown-container .p-dropdown[readonly], .dropdown-container .p-dropdown.is-readonly {\n background: #f4f5f6;\n cursor: default;\n box-shadow: none;\n}\n.dropdown-container .p-dropdown[readonly]:hover, .dropdown-container .p-dropdown.is-readonly:hover {\n border-color: #e0e3e8;\n}\n.dropdown-container .p-dropdown.is-error {\n border-color: #dc2626;\n box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15);\n}\n.dropdown-container .p-dropdown.is-success {\n border-color: #15803d;\n box-shadow: 0 0 0 3px rgba(21, 128, 61, 0.12);\n}\n.dropdown-container .p-dropdown {\n padding: 0;\n display: flex;\n align-items: center;\n}\n\n.dd-search-row {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 12px;\n border-bottom: 1px solid #e0e3e8;\n}\n.dd-search-row [class*=-filter-container] {\n flex: 1;\n min-width: 0;\n position: relative;\n}\n.dd-search-row [class*=-filter-container] .p-inputtext {\n width: 100%;\n height: 32px;\n padding: 0 24.5px 0 12px;\n font-size: 14px;\n box-sizing: border-box;\n}\n.dd-search-row [class*=-filter-container] [class*=-filter-icon] {\n right: 10.5px;\n color: #b0b8c4;\n}\n\n.dd-sort-btn {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: 1px solid #e0e3e8;\n border-radius: 7px;\n background: #ffffff;\n cursor: pointer;\n color: #b0b8c4;\n font-size: 14px;\n transition: background 180ms cubic-bezier(0.4, 0, 0.2, 1), color 180ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n.dd-sort-btn:hover {\n background: #f4f5f6;\n color: #1a1e26;\n}\n\n.dropdownbook .p-dropdown-header:has(.dd-search-row) {\n padding: 0;\n}\n\n/* ===== Badge couleur dans les items ===== */\n.dd-color-badge {\n display: inline-flex;\n align-items: center;\n gap: 7px;\n padding: 4px 10px;\n border-radius: 14px;\n font-size: 12.25px;\n font-family: \"Roboto\", sans-serif;\n white-space: nowrap;\n cursor: default;\n transition: background-color 180ms cubic-bezier(0.4, 0, 0.2, 1);\n background-color: #f4f5f6;\n color: #1a1e26;\n border: 1px solid #e0e3e8;\n border-color: var(--badge-color, #e0e3e8);\n background-color: color-mix(in srgb, var(--badge-color, #f4f5f6) 50%, transparent);\n}\n.dd-color-badge.is-selected {\n background-color: var(--badge-color, #f4f5f6);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);\n}\n\n.p-dropdown-item:hover .dd-color-badge {\n background-color: var(--badge-color) !important;\n}\n\n/* ===== Override PrimeReact default item colors ===== */\n.dropdownbook .p-dropdown-items .p-dropdown-item:not(.p-highlight):hover {\n background: #f4f5f6 !important;\n color: #1a1e26 !important;\n}\n.dropdownbook .p-dropdown-items .p-dropdown-item.p-highlight {\n background: rgba(63, 63, 63, 0.08) !important;\n color: #1a1e26 !important;\n}\n.dropdownbook .p-dropdown-items .p-dropdown-item.p-highlight.p-focus {\n background: rgba(63, 63, 63, 0.12) !important;\n color: #1a1e26 !important;\n}\n.dropdownbook .p-dropdown-items .p-dropdown-item.p-focus {\n background: #f4f5f6 !important;\n color: #1a1e26 !important;\n}\n\n/* ===== Override PrimeReact filter input focus ===== */\n.dropdownbook .p-dropdown-filter.p-inputtext:hover {\n border-color: #c8cdd6 !important;\n}\n.dropdownbook .p-dropdown-filter.p-inputtext:focus, .dropdownbook .p-dropdown-filter.p-inputtext.p-focus {\n border-color: #3f3f3f !important;\n box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1) !important;\n outline: none;\n}";
|
|
37504
|
-
styleInject(css_248z$5);
|
|
37505
|
-
|
|
37506
37960
|
var _excluded$2 = ["class"],
|
|
37507
37961
|
_excluded2$1 = ["style", "className"];
|
|
37508
37962
|
var Dropdown = function Dropdown(props) {
|
|
@@ -44526,24 +44980,118 @@ var createFakeOptions = function createFakeOptions(start, length) {
|
|
|
44526
44980
|
}
|
|
44527
44981
|
return options;
|
|
44528
44982
|
};
|
|
44983
|
+
var mockPeople = [{
|
|
44984
|
+
label: 'Alice Martin',
|
|
44985
|
+
value: 1,
|
|
44986
|
+
color: '#ff9900',
|
|
44987
|
+
profession: 'Développeuse',
|
|
44988
|
+
tooltip: 'Alice Martin — Développeuse',
|
|
44989
|
+
link: 'https://example.com'
|
|
44990
|
+
}, {
|
|
44991
|
+
label: 'Bruno Lefèvre',
|
|
44992
|
+
value: 2,
|
|
44993
|
+
color: '#3b82f6',
|
|
44994
|
+
profession: 'Chef de projet',
|
|
44995
|
+
tooltip: 'Bruno Lefèvre — Chef de projet',
|
|
44996
|
+
link: 'https://example.com'
|
|
44997
|
+
}, {
|
|
44998
|
+
label: 'Chloé Dubois',
|
|
44999
|
+
value: 3,
|
|
45000
|
+
color: '#10b981',
|
|
45001
|
+
profession: 'Designer',
|
|
45002
|
+
tooltip: 'Chloé Dubois — Designer',
|
|
45003
|
+
link: 'https://example.com'
|
|
45004
|
+
}, {
|
|
45005
|
+
label: 'David Morel',
|
|
45006
|
+
value: 4,
|
|
45007
|
+
color: '#8b5cf6',
|
|
45008
|
+
profession: 'Data analyst',
|
|
45009
|
+
tooltip: 'David Morel — Data analyst',
|
|
45010
|
+
link: 'https://example.com'
|
|
45011
|
+
}, {
|
|
45012
|
+
label: 'Emma Roux',
|
|
45013
|
+
value: 5,
|
|
45014
|
+
color: '#ec4899',
|
|
45015
|
+
profession: 'Product owner',
|
|
45016
|
+
tooltip: 'Emma Roux — Product owner',
|
|
45017
|
+
link: 'https://example.com'
|
|
45018
|
+
}, {
|
|
45019
|
+
label: 'Farid Benali',
|
|
45020
|
+
value: 6,
|
|
45021
|
+
color: '#f59e0b',
|
|
45022
|
+
profession: 'DevOps',
|
|
45023
|
+
tooltip: 'Farid Benali — DevOps',
|
|
45024
|
+
link: 'https://example.com'
|
|
45025
|
+
}, {
|
|
45026
|
+
label: 'Gaëlle Simon',
|
|
45027
|
+
value: 7,
|
|
45028
|
+
color: '#ef4444',
|
|
45029
|
+
profession: 'QA engineer',
|
|
45030
|
+
tooltip: 'Gaëlle Simon — QA engineer',
|
|
45031
|
+
link: 'https://example.com'
|
|
45032
|
+
}, {
|
|
45033
|
+
label: 'Hugo Bernard',
|
|
45034
|
+
value: 8,
|
|
45035
|
+
color: '#10b981',
|
|
45036
|
+
profession: 'Développeur',
|
|
45037
|
+
tooltip: 'Hugo Bernard — Développeur',
|
|
45038
|
+
link: 'https://example.com'
|
|
45039
|
+
}];
|
|
45040
|
+
var asyncPeople = /*#__PURE__*/function () {
|
|
45041
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
45042
|
+
var search,
|
|
45043
|
+
_ref2,
|
|
45044
|
+
_ref2$page,
|
|
45045
|
+
page,
|
|
45046
|
+
filtered,
|
|
45047
|
+
pageSize,
|
|
45048
|
+
start,
|
|
45049
|
+
_args = arguments;
|
|
45050
|
+
return _regenerator().w(function (_context) {
|
|
45051
|
+
while (1) switch (_context.n) {
|
|
45052
|
+
case 0:
|
|
45053
|
+
search = _args.length > 0 && _args[0] !== undefined ? _args[0] : '';
|
|
45054
|
+
_ref2 = _args.length > 2 && _args[2] !== undefined ? _args[2] : {}, _ref2$page = _ref2.page, page = _ref2$page === void 0 ? 1 : _ref2$page;
|
|
45055
|
+
_context.n = 1;
|
|
45056
|
+
return simulateNetworkDelay();
|
|
45057
|
+
case 1:
|
|
45058
|
+
filtered = search ? mockPeople.filter(function (opt) {
|
|
45059
|
+
return opt.label.toLowerCase().includes(search.toLowerCase());
|
|
45060
|
+
}) : mockPeople;
|
|
45061
|
+
pageSize = 30;
|
|
45062
|
+
start = (page - 1) * pageSize;
|
|
45063
|
+
return _context.a(2, {
|
|
45064
|
+
options: filtered.slice(start, start + pageSize),
|
|
45065
|
+
hasMore: start + pageSize < filtered.length,
|
|
45066
|
+
additional: {
|
|
45067
|
+
page: page + 1
|
|
45068
|
+
}
|
|
45069
|
+
});
|
|
45070
|
+
}
|
|
45071
|
+
}, _callee);
|
|
45072
|
+
}));
|
|
45073
|
+
return function asyncPeople() {
|
|
45074
|
+
return _ref.apply(this, arguments);
|
|
45075
|
+
};
|
|
45076
|
+
}();
|
|
44529
45077
|
var DropdownSelectMetaAsyncPresets = {
|
|
44530
45078
|
SelectMetaAsync: {
|
|
44531
45079
|
options: function () {
|
|
44532
|
-
var _options = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function
|
|
45080
|
+
var _options = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
44533
45081
|
var search,
|
|
44534
|
-
|
|
45082
|
+
_ref3,
|
|
44535
45083
|
page,
|
|
44536
45084
|
allOptions,
|
|
44537
45085
|
filtered,
|
|
44538
45086
|
pageSize,
|
|
44539
45087
|
start,
|
|
44540
|
-
|
|
44541
|
-
return _regenerator().w(function (
|
|
44542
|
-
while (1) switch (
|
|
45088
|
+
_args2 = arguments;
|
|
45089
|
+
return _regenerator().w(function (_context2) {
|
|
45090
|
+
while (1) switch (_context2.n) {
|
|
44543
45091
|
case 0:
|
|
44544
|
-
search =
|
|
44545
|
-
|
|
44546
|
-
|
|
45092
|
+
search = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : '';
|
|
45093
|
+
_ref3 = _args2.length > 2 ? _args2[2] : undefined, page = _ref3.page;
|
|
45094
|
+
_context2.n = 1;
|
|
44547
45095
|
return simulateNetworkDelay();
|
|
44548
45096
|
case 1:
|
|
44549
45097
|
allOptions = createFakeOptions(0, 100);
|
|
@@ -44552,7 +45100,7 @@ var DropdownSelectMetaAsyncPresets = {
|
|
|
44552
45100
|
});
|
|
44553
45101
|
pageSize = 30;
|
|
44554
45102
|
start = (page - 1) * pageSize;
|
|
44555
|
-
return
|
|
45103
|
+
return _context2.a(2, {
|
|
44556
45104
|
options: filtered.slice(start, start + pageSize),
|
|
44557
45105
|
hasMore: start + pageSize < filtered.length,
|
|
44558
45106
|
additional: {
|
|
@@ -44560,7 +45108,7 @@ var DropdownSelectMetaAsyncPresets = {
|
|
|
44560
45108
|
}
|
|
44561
45109
|
});
|
|
44562
45110
|
}
|
|
44563
|
-
},
|
|
45111
|
+
}, _callee2);
|
|
44564
45112
|
}));
|
|
44565
45113
|
function options() {
|
|
44566
45114
|
return _options.apply(this, arguments);
|
|
@@ -44582,6 +45130,141 @@ var DropdownSelectMetaAsyncPresets = {
|
|
|
44582
45130
|
fontSize: '14px',
|
|
44583
45131
|
fontFamily: 'Arial'
|
|
44584
45132
|
}
|
|
45133
|
+
},
|
|
45134
|
+
Base: {
|
|
45135
|
+
options: asyncPeople,
|
|
45136
|
+
value: null,
|
|
45137
|
+
placeholder: 'Sélectionnez une option',
|
|
45138
|
+
editable: true,
|
|
45139
|
+
filter: false,
|
|
45140
|
+
showClear: true,
|
|
45141
|
+
valueStyle: {
|
|
45142
|
+
backgroundColor: 'transparent',
|
|
45143
|
+
color: 'inherit',
|
|
45144
|
+
padding: '0',
|
|
45145
|
+
borderRadius: '0',
|
|
45146
|
+
boxShadow: 'none',
|
|
45147
|
+
fontFamily: 'inherit'
|
|
45148
|
+
}
|
|
45149
|
+
},
|
|
45150
|
+
AsyncOptions: {
|
|
45151
|
+
options: asyncPeople,
|
|
45152
|
+
value: 3,
|
|
45153
|
+
placeholder: 'Sélectionnez une option',
|
|
45154
|
+
editable: true,
|
|
45155
|
+
showClear: true,
|
|
45156
|
+
selectMetaConfig: {
|
|
45157
|
+
labelStyle: {
|
|
45158
|
+
fontWeight: 'bold'
|
|
45159
|
+
},
|
|
45160
|
+
generalIcon: 'pi pi-tag'
|
|
45161
|
+
}
|
|
45162
|
+
},
|
|
45163
|
+
SearchAjaxLoading: {
|
|
45164
|
+
// En prod : optionsUrl: '/api/options' (pagination start/length, recherche search[value])
|
|
45165
|
+
options: asyncPeople,
|
|
45166
|
+
placeholder: 'Rechercher (Ajax)…',
|
|
45167
|
+
filter: true,
|
|
45168
|
+
showClear: true
|
|
45169
|
+
},
|
|
45170
|
+
Sorting: {
|
|
45171
|
+
options: asyncPeople,
|
|
45172
|
+
placeholder: 'Tri A→Z / Z→A',
|
|
45173
|
+
filter: true,
|
|
45174
|
+
enableSorting: true,
|
|
45175
|
+
showClear: true
|
|
45176
|
+
},
|
|
45177
|
+
ItemsCheckedToTheTop: {
|
|
45178
|
+
options: asyncPeople,
|
|
45179
|
+
value: 5,
|
|
45180
|
+
placeholder: 'Sélection remontée en haut',
|
|
45181
|
+
itemsCheckedToTheTop: true,
|
|
45182
|
+
showClear: true
|
|
45183
|
+
},
|
|
45184
|
+
OpenOnHover: {
|
|
45185
|
+
options: asyncPeople,
|
|
45186
|
+
placeholder: 'Ouverture au survol',
|
|
45187
|
+
openOnHover: true
|
|
45188
|
+
},
|
|
45189
|
+
ItemWithTooltip: {
|
|
45190
|
+
options: asyncPeople,
|
|
45191
|
+
placeholder: 'Tooltip sur les options',
|
|
45192
|
+
enableItemTooltip: true
|
|
45193
|
+
},
|
|
45194
|
+
ItemWithSecondaryLabel: {
|
|
45195
|
+
options: asyncPeople,
|
|
45196
|
+
placeholder: 'Label secondaire',
|
|
45197
|
+
enableSecondaryLabel: true,
|
|
45198
|
+
secondaryLabelKey: 'profession'
|
|
45199
|
+
},
|
|
45200
|
+
ItemWithLink: {
|
|
45201
|
+
options: asyncPeople,
|
|
45202
|
+
placeholder: 'Lien sur le label secondaire',
|
|
45203
|
+
enableSecondaryLabel: true,
|
|
45204
|
+
secondaryLabelKey: 'profession',
|
|
45205
|
+
enableItemLink: true
|
|
45206
|
+
},
|
|
45207
|
+
Badge: {
|
|
45208
|
+
options: asyncPeople,
|
|
45209
|
+
value: 2,
|
|
45210
|
+
placeholder: 'Badges colorés',
|
|
45211
|
+
withColor: true,
|
|
45212
|
+
selectConfig: {
|
|
45213
|
+
labelStyle: null,
|
|
45214
|
+
generalIcon: null
|
|
45215
|
+
}
|
|
45216
|
+
},
|
|
45217
|
+
WithIcon: {
|
|
45218
|
+
options: asyncPeople,
|
|
45219
|
+
value: 1,
|
|
45220
|
+
placeholder: 'Icône devant chaque option',
|
|
45221
|
+
withIcon: true,
|
|
45222
|
+
selectConfig: {
|
|
45223
|
+
labelStyle: {
|
|
45224
|
+
fontWeight: '400'
|
|
45225
|
+
},
|
|
45226
|
+
generalIcon: 'pi pi-user'
|
|
45227
|
+
}
|
|
45228
|
+
},
|
|
45229
|
+
Truncate: {
|
|
45230
|
+
options: asyncPeople,
|
|
45231
|
+
value: 2,
|
|
45232
|
+
placeholder: 'Label tronqué',
|
|
45233
|
+
truncateAt: 8,
|
|
45234
|
+
valueStyle: {
|
|
45235
|
+
backgroundColor: 'transparent',
|
|
45236
|
+
color: 'inherit',
|
|
45237
|
+
padding: '0',
|
|
45238
|
+
borderRadius: '0',
|
|
45239
|
+
boxShadow: 'none',
|
|
45240
|
+
fontFamily: 'inherit'
|
|
45241
|
+
}
|
|
45242
|
+
},
|
|
45243
|
+
ReadOnly: {
|
|
45244
|
+
options: asyncPeople,
|
|
45245
|
+
value: 4,
|
|
45246
|
+
readOnly: true,
|
|
45247
|
+
showClear: false
|
|
45248
|
+
},
|
|
45249
|
+
Disabled: {
|
|
45250
|
+
options: asyncPeople,
|
|
45251
|
+
value: 4,
|
|
45252
|
+
disabled: true
|
|
45253
|
+
},
|
|
45254
|
+
Required: {
|
|
45255
|
+
options: asyncPeople,
|
|
45256
|
+
value: null,
|
|
45257
|
+
placeholder: 'Sélection obligatoire',
|
|
45258
|
+
required: true,
|
|
45259
|
+
name: 'monchamp',
|
|
45260
|
+
status: 'error',
|
|
45261
|
+
errorMessage: 'Une option doit être sélectionnée'
|
|
45262
|
+
},
|
|
45263
|
+
InfoLine: {
|
|
45264
|
+
options: asyncPeople,
|
|
45265
|
+
placeholder: 'Avec pied de panel',
|
|
45266
|
+
hasInfoLine: true,
|
|
45267
|
+
InfoLineValue: '8 utilisateurs disponibles'
|
|
44585
45268
|
}
|
|
44586
45269
|
};
|
|
44587
45270
|
|