diefra_ecm_ui 1.2.3 → 1.2.5

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.
@@ -1 +1 @@
1
- .modal-overlay{width:100dvw;height:100dvh;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;top:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.modal-container{width:100%;max-width:90%;background-color:var(--dfe-bg);color:var(--dfe-fg);border-radius:var(--dfe-radius);overflow:hidden;box-shadow:var(--dfe-shadow-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--dfe-border)!important;padding:16px!important}.modal-header h3{font-weight:600;font-size:18px!important;margin:0!important;color:var(--dfe-fg)}.modal-header .btn-close-modal{background-color:var(--dfe-muted);color:var(--dfe-fg);display:flex;align-items:center;justify-content:center;padding:4px;font-size:14px!important;border-radius:var(--dfe-radius-sm);cursor:pointer;border:1px solid var(--dfe-border);transition:opacity .2s ease}.modal-header .btn-close-modal:hover{opacity:.8}.modal-content{background-color:transparent!important;color:var(--dfe-fg)!important;border-radius:0!important;border:none!important;box-shadow:none!important;padding:var(--dfe-gap-lg)!important;max-height:80dvh;overflow-x:hidden;overflow-y:auto}.modal-footer{border:none!important;padding:16px!important}.modal-footer .btn{height:34px!important;font-size:14px!important}.dfe-help-indicator{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background-color:transparent;border:1.5px solid var(--dfe-muted-fg);color:var(--dfe-muted-fg);font-size:13px;font-weight:700;font-family:monospace;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;flex-shrink:0}.dfe-help-indicator span{margin-top:1px}.dfe-help-indicator:hover{background-color:var(--dfe-primary);border-color:var(--dfe-primary);color:#fff;box-shadow:0 0 6px color-mix(in srgb,var(--dfe-primary),transparent 60%);transform:translateY(-1px)}.dfe-help-modal-body{color:var(--dfe-fg);font-size:var(--dfe-font-sm, 14px);line-height:1.6}.dfe-help-modal-footer{display:flex;justify-content:flex-end;width:100%}.dfe-help-btn{background-color:var(--dfe-primary)!important;border:none!important;color:var(--dfe-primary-fg, #ffffff)!important;padding:6px 16px!important;border-radius:var(--dfe-radius-sm)!important;font-weight:500;cursor:pointer;transition:opacity .2s ease}.dfe-help-btn:hover{opacity:.9}.dfe-flex-input-wrapper{display:flex!important;align-items:center!important;gap:var(--dfe-gap-sm, 8px)!important;width:100%!important}.dfe-flex-input-wrapper .form-control{flex:1;margin-bottom:0!important}.select-view{display:inline-block;width:100%;border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm);background-color:var(--dfe-bg)!important;color:var(--dfe-fg)}.select-wrapper{position:relative;width:100%}.select-control{height:34px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;overflow:hidden;width:100%;font-size:14px;font-weight:200;border-radius:var(--dfe-radius-sm);background-color:var(--dfe-bg)!important;color:var(--dfe-fg)!important;border:1px solid var(--dfe-border)!important;padding:10px 14px}.select-display{width:100%;height:34px;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center}.select-dropdown{position:absolute;top:66px;left:0;right:0;z-index:var(--z-dropdown);background-color:var(--dfe-bg)!important;border:1px solid var(--dfe-border)!important;border-radius:var(--dfe-radius-sm)!important;box-shadow:var(--dfe-shadow)!important}.select-search{padding:5px 10px;border-bottom:1px solid var(--dfe-border)}.select-search-input{width:100%;font-size:12px;padding:4px 10px;border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm)!important;background-color:var(--dfe-bg)!important;color:var(--dfe-fg)!important}.select-options{list-style:none;margin:0;padding:6px;max-height:200px;overflow-y:auto;margin-bottom:0!important}.select-option{padding:8px 16px;font-size:14px;cursor:pointer;border-radius:var(--dfe-radius-sm);white-space:nowrap;overflow:hidden;margin:0!important;color:var(--dfe-fg)!important}.select-option.readOnly{color:var(--dfe-muted-fg)!important;cursor:default}.handleHover:hover{background-color:var(--dfe-primary)!important;color:var(--dfe-primary-fg)!important;font-weight:700}.border-red{border:1px solid var(--dfe-danger)!important}.text-danger{margin-top:4px;color:var(--dfe-danger)!important;margin-bottom:0!important}.select-wrapper>.readOnly{background-color:var(--dfe-muted)!important;color:var(--dfe-muted-fg)!important;cursor:default}.select-display.readOnly{opacity:.5}.checkbox-group-custom{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px 20px}.custom-checkbox{position:relative;display:flex!important;align-items:center!important;gap:4px!important;cursor:pointer;font-size:14px;-webkit-user-select:none;user-select:none;white-space:noWrap;margin:0!important}.custom-checkbox input{position:absolute;display:none;cursor:pointer}.custom-checkbox .checkmark{position:relative;display:inline-flex;align-items:center;height:16px;width:16px;background-color:var(--dfe-bg);border:2px solid var(--dfe-border);border-radius:100%;transition:all .2s ease}.custom-checkbox.checked .checkmark,.custom-checkbox:hover .checkmark{border-color:var(--dfe-primary)}.custom-checkbox.checked .checkmark:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background-color:var(--dfe-primary);border-color:var(--dfe-primary);border-radius:100%}.custom-checkbox>span{width:50%;color:var(--dfe-fg);font-weight:200;margin:0}.custom-checkbox.readOnly,.checkbox-group-custom.readOnly{pointer-events:none;opacity:.9}.btn-group{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.btn-group>div.btn{--btnBase: var(--dfe-border);--btnText: var(--dfe-muted-fg);--bgColor: var(--customColor, var(--btnBase));--hoverColor: color-mix(in srgb, var(--bgColor), transparent 80%);--borderColor: color-mix(in srgb, var(--bgColor), var(--dfe-fg) 20%);height:35px!important;font-size:14px!important;min-width:200px;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border:1px solid var(--btnBase);border-radius:var(--dfe-radius);cursor:pointer;background-color:var(--dfe-muted);color:var(--btnText)!important;transition:all .2s ease-in-out;font-weight:400}.btn-group>div.btn:hover{background-color:var(--hoverColor);border-color:var(--borderColor);color:color-mix(in srgb,var(--bgColor),var(--dfe-fg) 20%)!important}.btn-group div.btn.active{background-color:var(--bgColor)!important;border-color:var(--borderColor)!important;color:#fff!important;box-shadow:var(--dfe-shadow);font-weight:600;cursor:default}.btn-group div.btn i{font-size:1.1em}.btn-group.view-mode div.btn{opacity:.5;pointer-events:none;filter:grayscale(100%)}.btn-group.view-mode div.btn.active{opacity:1;filter:none;background-color:var(--bgColor)!important;border-color:var(--borderColor)!important;color:#fff!important}.column{display:flex!important;flex-direction:column!important}.dfe-datepicker-wrapper{position:relative;width:100%}.dfe-datepicker-inner-container{position:relative!important;width:100%!important;display:block!important}.dfe-datepicker-control{height:34px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;overflow:hidden;width:100%;font-size:14px;font-weight:200;border-radius:var(--dfe-radius-sm);background-color:var(--dfe-bg)!important;color:var(--dfe-fg)!important;border:1px solid var(--dfe-border)!important;padding:10px 14px}.dfe-datepicker-display{width:100%;height:34px;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center}.dfe-datepicker-icon{color:var(--dfe-fg);opacity:.6}.dfe-datepicker-dropdown{position:absolute!important;top:38px!important;left:0!important;width:320px!important;z-index:var(--z-dropdown)!important;background-color:var(--dfe-bg)!important;border:1px solid var(--dfe-border)!important;border-radius:var(--dfe-radius-sm)!important;box-shadow:var(--dfe-shadow)!important;padding:12px!important;display:block!important}.dfe-datepicker-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:12px!important;gap:6px!important}.dfe-datepicker-selectors{display:flex!important;gap:6px!important;flex:1!important}.dfe-datepicker-selectors .select-wrapper{margin-bottom:0!important;flex:1!important}.dfe-datepicker-selectors .select-wrapper label{display:none!important}.dfe-datepicker-selectors .select-control{height:30px!important;padding:4px 10px!important}.dfe-datepicker-selectors .select-display{height:30px!important;font-size:13px!important;font-weight:600!important}.dfe-datepicker-selectors .select-dropdown{top:32px!important;z-index:calc(var(--z-dropdown) + 20)!important}.dfe-datepicker-selectors>div:first-child .select-dropdown{left:0!important;right:auto!important;min-width:140px!important}.dfe-datepicker-selectors>div:last-child .select-dropdown{left:auto!important;right:0!important;min-width:150px!important}.dfe-datepicker-nav-btn{background:var(--dfe-muted);border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:6px;color:var(--dfe-fg)}.dfe-datepicker-nav-btn:hover{background-color:var(--dfe-border)}.dfe-datepicker-grid-header{display:grid!important;grid-template-columns:repeat(7,1fr)!important;text-align:center!important;font-size:11px!important;font-weight:700!important;color:var(--dfe-muted-fg)!important;margin-bottom:6px!important;border-bottom:1px solid var(--dfe-border)!important;padding-bottom:4px!important}.dfe-datepicker-grid{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:2px!important}.dfe-datepicker-day{padding:6px 0;font-size:13px;text-align:center;cursor:pointer;border-radius:var(--dfe-radius-sm);color:var(--dfe-fg)}.dfe-datepicker-day.outside{color:var(--dfe-muted-fg)!important;opacity:.3!important;cursor:default!important;pointer-events:none!important}.dfe-datepicker-day.today{color:var(--dfe-primary)!important;font-weight:700!important;border:1px dashed var(--dfe-primary)!important}.dfe-datepicker-day.selected{background-color:var(--dfe-primary)!important;color:var(--dfe-primary-fg)!important;font-weight:700!important}.dfe-datepicker-day.handleHover:hover:not(.outside){background-color:var(--dfe-primary)!important;color:var(--dfe-primary-fg)!important}.dfe-datepicker-wrapper .readOnly{background-color:var(--dfe-muted)!important;color:var(--dfe-muted-fg)!important;cursor:default!important}.dfe-datepicker-display.readOnly{opacity:.5!important}.status-badge{--badgeMainColor: var(--customColor, var(--dfe-muted-fg));background:linear-gradient(45deg,color-mix(in srgb,var(--badgeMainColor),white 20%) 0%,var(--badgeMainColor) 70%,color-mix(in srgb,var(--badgeMainColor),black 15%) 100%);width:100%;height:var(--dfe-height-control, 34px);display:flex;align-items:center;justify-content:center;gap:var(--dfe-gap-sm);border-radius:var(--dfe-radius-sm);color:#fff;font-weight:500;font-size:var(--dfe-font-sm);font-style:italic;box-shadow:var(--dfe-shadow);transition:transform .2s ease,box-shadow .2s ease}.status-badge i{font-size:16px}.status-badge.default{--badgeMainColor: var(--dfe-muted-fg);background:var(--dfe-muted);color:var(--dfe-muted-fg);border:1px solid var(--dfe-border);box-shadow:none}.form-group.hidden{display:none!important}.table-wrapper .header-actions{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:var(--dfe-gap-lg)}.table-wrapper .header-actions>h3{margin:0!important;font-weight:600;color:var(--dfe-fg)}.table-wrapper .header-actions>div{display:flex;gap:var(--dfe-gap-sm)}.table-wrapper .header-handle{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:var(--dfe-gap-lg)!important}.table-wrapper .handle-actions{display:flex;align-items:center;gap:var(--dfe-gap-lg)}.table-wrapper .handle-actions button{height:35px!important;display:flex;align-items:center;justify-content:center;font-size:16px!important}.table-wrapper{width:100%;height:100%;margin-bottom:20px;overflow:hidden;color:var(--dfe-fg)}.table-wrapper h3{margin:0!important;color:var(--dfe-fg)}.table-wrapper .table-fixed .table-scroll{overflow-x:auto}.table-wrapper .table-fluid .table-scroll{overflow-x:hidden}.table-wrapper .table-scroll{width:100%;position:relative;overflow:auto;height:400px}.table-wrapper .table-fixed th,.table-wrapper .table-fixed td{white-space:nowrap}.table-wrapper .table-custom{width:100%;border-collapse:separate;border-spacing:0;border-radius:var(--dfe-radius-sm);border:1px solid var(--dfe-border);background-color:var(--dfe-bg)}.table-wrapper .btn-add{background-color:var(--dfe-primary);border:none;color:var(--dfe-primary-fg)!important;border-radius:var(--dfe-radius-sm);padding:8px 16px;font-size:var(--dfe-font-sm)!important;cursor:pointer;transition:opacity .2s}.table-wrapper .btn-danger{background-color:var(--dfe-danger)!important;color:#fff!important;border:none}.table-wrapper .table-custom thead{background-color:var(--dfe-muted)}.table-wrapper .table-custom thead tr th{position:sticky;top:0;z-index:2;padding:12px 16px;border-bottom:2px solid var(--dfe-border);border-left:1px solid var(--dfe-border);text-align:left;font-weight:700;color:var(--dfe-fg);background-color:var(--dfe-muted)}.table-wrapper .table-custom thead tr th:first-child{border-left:none}.table-wrapper .table-custom tbody tr td{border-left:1px solid var(--dfe-border);padding:12px 16px;vertical-align:middle;background-color:var(--dfe-bg)}.table-wrapper .table-custom tbody tr td:first-child{border-left:none}.table-wrapper .table-custom tbody tr:nth-child(2n) td{background-color:color-mix(in srgb,var(--dfe-muted),transparent 50%)}.table-wrapper .table-custom tbody tr:hover td{background-color:var(--dfe-muted)}.table-wrapper .table-custom th,.table-wrapper .table-custom td{text-overflow:ellipsis}.table-wrapper .table-custom td{flex-wrap:nowrap}.table-wrapper .table-custom .form-control{margin-bottom:0!important;height:34px}.table-wrapper .text-center{text-align:center}.table-wrapper .table-custom tbody tr.empty-row td{height:200px;vertical-align:middle}.fluig-attachment{margin-bottom:var(--dfe-gap-lg)}.fluig-attachment__label{display:block;margin-bottom:var(--dfe-gap-xs);font-weight:700;color:var(--dfe-fg)}.fluig-attachment__box{display:flex;height:var(--dfe-height-control);justify-content:space-between;align-items:center;padding:0 var(--dfe-gap-md);border-radius:var(--dfe-radius);background-color:transparent;transition:all .2s ease-in-out;border:1px dashed var(--dfe-border);cursor:pointer;overflow:hidden;color:var(--dfe-fg)}.fluig-attachment__box--has-file{pointer-events:auto!important;cursor:pointer!important;border:1px solid var(--dfe-primary)}.fluig-attachment__box--uploading{cursor:wait;background-color:var(--dfe-muted)}.fluig-attachment__content{display:flex;align-items:center;flex:1;min-width:0;margin-right:var(--dfe-gap-md)}.fluig-attachment__icon{flex-shrink:0;margin-right:var(--dfe-gap-sm);color:var(--dfe-primary)}.fluig-attachment__filename{font-size:var(--dfe-font-sm);color:var(--dfe-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.fluig-attachment__btn-remove{padding:4px!important;border:none;background:transparent;cursor:pointer;flex-shrink:0;display:flex;align-items:center;color:var(--dfe-danger)}.fluig-attachment__box--readonly-view{cursor:pointer!important;background-color:var(--dfe-muted);border:1px solid var(--dfe-border)}.fluig-attachment__box--uploading .flaticon-loading{animation:spin 2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
1
+ .modal-overlay{width:100dvw;height:100dvh;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;top:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.modal-container{width:100%;max-width:90%;background-color:var(--dfe-bg);color:var(--dfe-fg);border-radius:var(--dfe-radius);overflow:hidden;box-shadow:var(--dfe-shadow-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--dfe-border)!important;padding:16px!important}.modal-header h3{font-weight:600;font-size:18px!important;margin:0!important;color:var(--dfe-fg)}.modal-header .btn-close-modal{background-color:var(--dfe-muted);color:var(--dfe-fg);display:flex;align-items:center;justify-content:center;padding:4px;font-size:14px!important;border-radius:var(--dfe-radius-sm);cursor:pointer;border:1px solid var(--dfe-border);transition:opacity .2s ease}.modal-header .btn-close-modal:hover{opacity:.8}.modal-content{background-color:transparent!important;color:var(--dfe-fg)!important;border-radius:0!important;border:none!important;box-shadow:none!important;padding:var(--dfe-gap-lg)!important;max-height:80dvh;overflow-x:hidden;overflow-y:auto}.modal-footer{border:none!important;padding:16px!important}.modal-footer .btn{height:34px!important;font-size:14px!important}.dfe-help-indicator{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background-color:transparent;border:1.5px solid var(--dfe-muted-fg);color:var(--dfe-muted-fg);font-size:13px;font-weight:700;font-family:monospace;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;flex-shrink:0}.dfe-help-indicator span{margin-top:1px}.dfe-help-indicator:hover{background-color:var(--dfe-primary);border-color:var(--dfe-primary);color:#fff;box-shadow:0 0 6px color-mix(in srgb,var(--dfe-primary),transparent 60%);transform:translateY(-1px)}.dfe-help-modal-body{color:var(--dfe-fg);font-size:var(--dfe-font-sm, 14px);line-height:1.6}.dfe-help-modal-footer{display:flex;justify-content:flex-end;width:100%}.dfe-help-btn{background-color:var(--dfe-primary)!important;border:none!important;color:var(--dfe-primary-fg, #ffffff)!important;padding:6px 16px!important;border-radius:var(--dfe-radius-sm)!important;font-weight:500;cursor:pointer;transition:opacity .2s ease}.dfe-help-btn:hover{opacity:.9}.dfe-flex-input-wrapper{display:flex!important;align-items:center!important;gap:var(--dfe-gap-sm, 8px)!important;width:100%!important}.dfe-flex-input-wrapper .form-control{flex:1;margin-bottom:0!important}.select-view{display:inline-block;width:100%;border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm);background-color:var(--dfe-bg)!important;color:var(--dfe-fg)}.select-wrapper{position:relative;width:100%}.select-control{height:34px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;overflow:hidden;width:100%;font-size:14px;font-weight:200;border-radius:var(--dfe-radius-sm);background-color:var(--dfe-bg)!important;color:var(--dfe-fg)!important;border:1px solid var(--dfe-border)!important;padding:10px 14px}.select-display{width:100%;height:34px;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center}.select-dropdown{position:absolute;top:66px;left:0;right:0;z-index:var(--z-dropdown);background-color:var(--dfe-bg)!important;border:1px solid var(--dfe-border)!important;border-radius:var(--dfe-radius-sm)!important;box-shadow:var(--dfe-shadow)!important;min-width:fit-content}.select-search{padding:5px 10px;border-bottom:1px solid var(--dfe-border)}.select-search-input{width:100%;font-size:12px;padding:4px 10px;border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm)!important;background-color:var(--dfe-bg)!important;color:var(--dfe-fg)!important}.select-options{list-style:none;margin:0;padding:6px;max-height:200px;overflow-y:auto;margin-bottom:0!important}.select-option{padding:8px 16px;font-size:14px;cursor:pointer;border-radius:var(--dfe-radius-sm);white-space:nowrap;overflow:hidden;margin:0!important;color:var(--dfe-fg)!important}.select-option.readOnly{color:var(--dfe-muted-fg)!important;cursor:default}.handleHover:hover{background-color:var(--dfe-primary)!important;color:var(--dfe-primary-fg)!important;font-weight:700}.border-red{border:1px solid var(--dfe-danger)!important}.text-danger{margin-top:4px;color:var(--dfe-danger)!important;margin-bottom:0!important}.select-wrapper>.readOnly{background-color:var(--dfe-muted)!important;color:var(--dfe-muted-fg)!important;cursor:default}.select-display.readOnly{opacity:.5}.checkbox-group-custom{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px 20px}.custom-checkbox{position:relative;display:flex!important;align-items:center!important;gap:4px!important;cursor:pointer;font-size:14px;-webkit-user-select:none;user-select:none;white-space:noWrap;margin:0!important}.custom-checkbox input{position:absolute;display:none;cursor:pointer}.custom-checkbox .checkmark{position:relative;display:inline-flex;align-items:center;height:16px;width:16px;background-color:var(--dfe-bg);border:2px solid var(--dfe-border);border-radius:100%;transition:all .2s ease}.custom-checkbox.checked .checkmark,.custom-checkbox:hover .checkmark{border-color:var(--dfe-primary)}.custom-checkbox.checked .checkmark:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background-color:var(--dfe-primary);border-color:var(--dfe-primary);border-radius:100%}.custom-checkbox>span{width:50%;color:var(--dfe-fg);font-weight:200;margin:0}.custom-checkbox.readOnly,.checkbox-group-custom.readOnly{pointer-events:none;opacity:.9}.btn-group{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.btn-group>div.btn{--btnBase: var(--dfe-border);--btnText: var(--dfe-muted-fg);--bgColor: var(--customColor, var(--btnBase));--hoverColor: color-mix(in srgb, var(--bgColor), transparent 80%);--borderColor: color-mix(in srgb, var(--bgColor), var(--dfe-fg) 20%);height:35px!important;font-size:14px!important;min-width:200px;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border:1px solid var(--btnBase);border-radius:var(--dfe-radius);cursor:pointer;background-color:var(--dfe-muted);color:var(--btnText)!important;transition:all .2s ease-in-out;font-weight:400}.btn-group>div.btn:hover{background-color:var(--hoverColor);border-color:var(--borderColor);color:color-mix(in srgb,var(--bgColor),var(--dfe-fg) 20%)!important}.btn-group div.btn.active{background-color:var(--bgColor)!important;border-color:var(--borderColor)!important;color:#fff!important;box-shadow:var(--dfe-shadow);font-weight:600;cursor:default}.btn-group div.btn i{font-size:1.1em}.btn-group.view-mode div.btn{opacity:.5;pointer-events:none;filter:grayscale(100%)}.btn-group.view-mode div.btn.active{opacity:1;filter:none;background-color:var(--bgColor)!important;border-color:var(--borderColor)!important;color:#fff!important}.column{display:flex!important;flex-direction:column!important}.dfe-datepicker-wrapper{position:relative;width:100%}.dfe-datepicker-inner-container{position:relative!important;width:100%!important;display:block!important}.dfe-datepicker-input-group{display:flex;height:34px;border:1px solid var(--dfe-border)!important;border-radius:var(--dfe-radius-sm);background-color:var(--dfe-bg)!important;overflow:hidden;width:100%}.dfe-datepicker-input-group.border-red{border-color:red!important}.dfe-datepicker-input{flex:1;border:none!important;background:transparent!important;padding:10px 14px;font-size:14px;font-weight:200;color:var(--dfe-fg)!important;outline:none;width:100%}.dfe-datepicker-input::placeholder{color:var(--dfe-muted-fg);opacity:.6}.dfe-datepicker-trigger-btn{background:transparent;border:none;border-left:1px solid var(--dfe-border);padding:0 10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--dfe-fg)}.dfe-datepicker-trigger-btn:hover:not(:disabled){background-color:var(--dfe-muted)}.dfe-datepicker-trigger-btn:disabled{cursor:default;opacity:.5}.dfe-datepicker-icon{opacity:.6}.dfe-datepicker-dropdown{position:absolute!important;top:38px!important;left:0!important;width:320px!important;z-index:var(--z-dropdown)!important;background-color:var(--dfe-bg)!important;border:1px solid var(--dfe-border)!important;border-radius:var(--dfe-radius-sm)!important;box-shadow:var(--dfe-shadow)!important;padding:12px!important;display:block!important}.dfe-datepicker-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:12px!important;gap:6px!important}.dfe-datepicker-nav-btn{background:var(--dfe-muted);border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:6px;color:var(--dfe-fg)}.dfe-datepicker-nav-btn:hover{background-color:var(--dfe-border)}.dfe-datepicker-selectors-native{display:flex!important;gap:6px!important;flex:1!important;justify-content:center}.dfe-datepicker-selector-wrapper{position:relative}.dfe-datepicker-selector-btn{background:transparent;border:1px solid transparent;border-radius:var(--dfe-radius-sm);padding:4px 8px;font-size:13px;font-weight:600;color:var(--dfe-fg);cursor:pointer;display:flex;align-items:center;gap:4px}.dfe-datepicker-selector-btn:hover{background:var(--dfe-muted);border-color:var(--dfe-border)}.dfe-datepicker-listbox{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:4px;background:var(--dfe-bg);border:1px solid var(--dfe-border);border-radius:var(--dfe-radius-sm);box-shadow:var(--dfe-shadow);max-height:200px;overflow-y:auto;z-index:100;display:flex;flex-direction:column;min-width:100px;padding:8px}.dfe-datepicker-listbox::-webkit-scrollbar{width:6px}.dfe-datepicker-listbox::-webkit-scrollbar-track{background:transparent}.dfe-datepicker-listbox::-webkit-scrollbar-thumb{background-color:var(--dfe-border);border-radius:10px}.dfe-datepicker-listbox-item{background:transparent;border:none;padding:8px 12px;font-size:13px;text-align:center;cursor:pointer;color:var(--dfe-fg);width:100%;border-radius:4px}.dfe-datepicker-listbox-item:hover{background:var(--dfe-muted)}.dfe-datepicker-listbox-item.selected{background:var(--dfe-primary);color:var(--dfe-primary-fg);font-weight:700}.dfe-datepicker-grid-header{display:grid!important;grid-template-columns:repeat(7,1fr)!important;text-align:center!important;font-size:11px!important;font-weight:700!important;color:var(--dfe-muted-fg)!important;margin-bottom:6px!important;border-bottom:1px solid var(--dfe-border)!important;padding-bottom:4px!important}.dfe-datepicker-grid{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:2px!important}.dfe-datepicker-day{padding:6px 0;font-size:13px;text-align:center;cursor:pointer;border-radius:var(--dfe-radius-sm);color:var(--dfe-fg)}.dfe-datepicker-day.outside{color:var(--dfe-muted-fg)!important;opacity:.3!important;cursor:default!important;pointer-events:none!important}.dfe-datepicker-day.today{color:var(--dfe-primary)!important;font-weight:700!important;border:1px dashed var(--dfe-primary)!important}.dfe-datepicker-day.selected{background-color:var(--dfe-primary)!important;color:var(--dfe-primary-fg)!important;font-weight:700!important}.dfe-datepicker-day.handleHover:hover:not(.outside){background-color:var(--dfe-primary)!important;color:var(--dfe-primary-fg)!important}.dfe-datepicker-input-group.readOnly{background-color:var(--dfe-muted)!important}.dfe-datepicker-input-group.readOnly .dfe-datepicker-input{color:var(--dfe-muted-fg)!important;cursor:default!important}.status-badge{--badgeMainColor: var(--customColor, var(--dfe-muted-fg));background:linear-gradient(45deg,color-mix(in srgb,var(--badgeMainColor),white 20%) 0%,var(--badgeMainColor) 70%,color-mix(in srgb,var(--badgeMainColor),black 15%) 100%);width:100%;height:var(--dfe-height-control, 34px);display:flex;align-items:center;justify-content:center;gap:var(--dfe-gap-sm);border-radius:var(--dfe-radius-sm);color:#fff;font-weight:500;font-size:var(--dfe-font-sm);font-style:italic;box-shadow:var(--dfe-shadow);transition:transform .2s ease,box-shadow .2s ease}.status-badge i{font-size:16px}.status-badge.default{--badgeMainColor: var(--dfe-muted-fg);background:var(--dfe-muted);color:var(--dfe-muted-fg);border:1px solid var(--dfe-border);box-shadow:none}.form-group.hidden{display:none!important}.table-wrapper .header-actions{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:var(--dfe-gap-lg)}.table-wrapper .header-actions>h3{margin:0!important;font-weight:600;color:var(--dfe-fg)}.table-wrapper .header-actions>div{display:flex;gap:var(--dfe-gap-sm)}.table-wrapper .header-handle{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:var(--dfe-gap-lg)!important}.table-wrapper .handle-actions{display:flex;align-items:center;gap:var(--dfe-gap-lg)}.table-wrapper .handle-actions button{height:35px!important;display:flex;align-items:center;justify-content:center;font-size:16px!important}.table-wrapper{width:100%;height:100%;margin-bottom:20px;overflow:hidden;color:var(--dfe-fg)}.table-wrapper h3{margin:0!important;color:var(--dfe-fg)}.table-wrapper .table-fixed .table-scroll{overflow-x:auto}.table-wrapper .table-fluid .table-scroll{overflow-x:hidden}.table-wrapper .table-scroll{width:100%;position:relative;overflow:auto;height:400px}.table-wrapper .table-fixed th,.table-wrapper .table-fixed td{white-space:nowrap}.table-wrapper .table-custom{width:100%;border-collapse:separate;border-spacing:0;border-radius:var(--dfe-radius-sm);border:1px solid var(--dfe-border);background-color:var(--dfe-bg)}.table-wrapper .btn-add{background-color:var(--dfe-primary);border:none;color:var(--dfe-primary-fg)!important;border-radius:var(--dfe-radius-sm);padding:8px 16px;font-size:var(--dfe-font-sm)!important;cursor:pointer;transition:opacity .2s}.table-wrapper .btn-danger{background-color:var(--dfe-danger)!important;color:#fff!important;border:none}.table-wrapper .table-custom thead{background-color:var(--dfe-muted)}.table-wrapper .table-custom thead tr th{position:sticky;top:0;z-index:2;padding:12px 16px;border-bottom:2px solid var(--dfe-border);border-left:1px solid var(--dfe-border);text-align:left;font-weight:700;color:var(--dfe-fg);background-color:var(--dfe-muted)}.table-wrapper .table-custom thead tr th:first-child{border-left:none}.table-wrapper .table-custom tbody tr td{border-left:1px solid var(--dfe-border);padding:12px 16px;vertical-align:middle;background-color:var(--dfe-bg)}.table-wrapper .table-custom tbody tr td:first-child{border-left:none}.table-wrapper .table-custom tbody tr:nth-child(2n) td{background-color:color-mix(in srgb,var(--dfe-muted),transparent 50%)}.table-wrapper .table-custom tbody tr:hover td{background-color:var(--dfe-muted)}.table-wrapper .table-custom th,.table-wrapper .table-custom td{text-overflow:ellipsis}.table-wrapper .table-custom td{flex-wrap:nowrap}.table-wrapper .table-custom .form-control{margin-bottom:0!important;height:34px}.table-wrapper .text-center{text-align:center}.table-wrapper .table-custom tbody tr.empty-row td{height:200px;vertical-align:middle}.fluig-attachment{margin-bottom:var(--dfe-gap-lg)}.fluig-attachment__label{display:block;margin-bottom:var(--dfe-gap-xs);font-weight:700;color:var(--dfe-fg)}.fluig-attachment__box{display:flex;height:var(--dfe-height-control);justify-content:space-between;align-items:center;padding:0 var(--dfe-gap-md);border-radius:var(--dfe-radius);background-color:transparent;transition:all .2s ease-in-out;border:1px dashed var(--dfe-border);cursor:pointer;overflow:hidden;color:var(--dfe-fg)}.fluig-attachment__box--has-file{pointer-events:auto!important;cursor:pointer!important;border:1px solid var(--dfe-primary)}.fluig-attachment__box--uploading{cursor:wait;background-color:var(--dfe-muted)}.fluig-attachment__content{display:flex;align-items:center;flex:1;min-width:0;margin-right:var(--dfe-gap-md)}.fluig-attachment__icon{flex-shrink:0;margin-right:var(--dfe-gap-sm);color:var(--dfe-primary)}.fluig-attachment__filename{font-size:var(--dfe-font-sm);color:var(--dfe-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.fluig-attachment__btn-remove{padding:4px!important;border:none;background:transparent;cursor:pointer;flex-shrink:0;display:flex;align-items:center;color:var(--dfe-danger)}.fluig-attachment__box--readonly-view{cursor:pointer!important;background-color:var(--dfe-muted);border:1px solid var(--dfe-border)}.fluig-attachment__box--uploading .flaticon-loading{animation:spin 2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
package/dist/index.cjs CHANGED
@@ -1,59 +1,64 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("react"),T=require("react-hook-form"),ne=require("react-imask"),P=require("@fluig-kit/ecm"),L=require("date-fns");function ee({title:t,isOpen:r,onOpen:m,onClose:a,content:c,footer:u,width:h}){const d=o.useCallback(p=>{p.key==="Escape"&&a()},[a]);return o.useEffect(()=>(r&&(document.addEventListener("keydown",d),m==null||m(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",d),document.body.style.overflow="auto"}),[r,d,m]),r?e.jsx("div",{className:"modal-overlay",onClick:a,"aria-modal":"true",role:"dialog",children:e.jsxs("div",{style:{maxWidth:h},className:"modal-container",onClick:p=>p.stopPropagation(),children:[e.jsxs("div",{className:"modal-header",children:[e.jsx("h3",{children:t}),e.jsx("div",{className:"btn-close-modal",onClick:a,role:"button","aria-label":"Fechar modal",children:e.jsx("i",{className:"flaticon flaticon-close icon-sm","aria-hidden":"true"})})]}),e.jsx("div",{className:"modal-content",children:c}),u&&e.jsx("div",{className:"modal-footer",children:u})]})}):null}function re({text:t,title:r="Ajuda & Informações",width:m="500px",className:a=""}){const[c,u]=o.useState(!1),h=d=>{d.preventDefault(),d.stopPropagation(),u(!0)};return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:`dfe-help-indicator ${a}`,onClick:h,role:"button",tabIndex:0,"aria-label":"Botão de ajuda",title:"Clique para obter ajuda",children:e.jsx("span",{children:"?"})}),e.jsx(ee,{title:r,isOpen:c,onClose:()=>u(!1),width:m,content:e.jsx("div",{className:"dfe-help-modal-body",children:t}),footer:e.jsx("div",{className:"dfe-help-modal-footer",children:e.jsx("button",{type:"button",className:"btn btn-info dfe-help-btn",onClick:()=>u(!1),children:"Entendido"})})})]})}const z=o.memo(re),le={cpf:"000.000.000-00",cnpj:"00.000.000/0000-00",telefone:"(00) 00000-0000",cep:"00000-000"};function ie({name:t,label:r="",placeholder:m="",type:a="text",mask:c,className:u="",forceReadOnly:h=!1,forceHidden:d=!1,prefix:p,suffix:s,helpText:v,helpTitle:_,helpWidth:A,valueManual:H,onChangeManual:b,errorManual:S}){var W,Y;const R=H!==void 0&&!!b,{isReadOnly:O,isHidden:g}=P.useSection(),n=h||!!O(t),l=d||!!g(t),{isView:i}=P.useFluigRuntime();let f=null;try{f=T.useFormContext()}catch{}const x=!R&&f?T.useController({name:t,control:f.control}):null,F=!R&&f?T.useFormState({name:t}):null,V=R?H:x==null?void 0:x.field.value,C=R?S:(Y=(W=F==null?void 0:F.errors)==null?void 0:W[t])==null?void 0:Y.message,w=o.useMemo(()=>c?le[c]??c:null,[c]),k=o.useCallback(B=>{if(!B)return"";let N=B;if(s)if(N.endsWith(s))N=N.slice(0,-s.length);else{const D=N.lastIndexOf(s);D!==-1&&(N=N.substring(0,D)+N.substring(D+s.length))}if(p)if(N.startsWith(p))N=N.slice(p.length);else{const D=N.indexOf(p);D!==-1&&(N=N.substring(0,D)+N.substring(D+p.length))}if(a==="monetary"){const D=N.replace(/\D/g,"");return D?(Number(D)/100).toFixed(2):""}return a==="number"&&(N=N.replace(/[^\d.,-]/g,""),N=N.replace(/\./g,"").replace(",",".")),N},[p,s,a]),y=o.useCallback(B=>{if(B===""||B===null||B===void 0)return"";let N=String(B);if(a==="monetary"){const D=Number(B);return isNaN(D)?"":D.toLocaleString("pt-BR",{style:"currency",currency:"BRL"})}if(a==="number"){N=N.replace(".",",");const D=N.split(",");D[0]=D[0].replace(/\B(?=(\d{3})+(?!\d))/g,"."),N=D.join(",")}return p&&(N=`${p}${N}`),s&&(N=`${N}${s}`),N},[p,s,a]),I=B=>{const N=`${p||""}${s||""}`;if(!B||B===p||B===s||B===N){R?b==null||b(""):x==null||x.field.onChange("");return}const D=k(B);R?b==null||b(D):x==null||x.field.onChange(D)},j=()=>{R||x==null||x.field.onBlur()},E=o.useMemo(()=>y(V),[V,y]);if(l)return null;const q=`form-control ${n?"readOnly":""} ${C?"border-red":""} ${u}`,J=()=>w?e.jsx(ne.IMaskInput,{mask:w,value:E,unmask:!0,onAccept:B=>I(B),placeholder:m,readOnly:n,className:q,inputRef:R||x==null?void 0:x.field.ref,onBlur:j}):e.jsx("input",{type:"text",inputMode:a==="number"||a==="monetary"?"numeric":void 0,value:E,onChange:B=>I(B.target.value),onBlur:j,placeholder:m,readOnly:n,className:q});return i?e.jsxs("div",{className:"form-group",children:[r&&e.jsx("label",{children:r}),e.jsxs("div",{className:v?"dfe-flex-input-wrapper":"",children:[e.jsx("span",{className:q,children:E||"-"}),v&&e.jsx(z,{text:v,title:_,width:A})]})]}):e.jsxs("div",{className:`form-group ${l?"hidden":""}`,children:[r&&e.jsx("label",{children:r}),e.jsxs("div",{className:v?"dfe-flex-input-wrapper":"",children:[J(),v&&e.jsx(z,{text:v,title:_,width:A})]}),!R&&e.jsx("input",{type:"hidden",name:t,value:V||""}),C&&e.jsx("p",{className:"text-danger",children:String(C)})]})}const ce=o.memo(ie);function oe({name:t,label:r="",options:m=[],placeholder:a="",labelKey:c="label",valueKey:u="value",enableSearch:h=!1,searchPlaceholder:d="Buscar...",loading:p=!1,onSearchChange:s,debounceTime:v=300,onSelect:_,forceReadOnly:A=!1,forceHidden:H=!1,helpText:b,helpTitle:S,helpWidth:R,valueManual:O,onChangeManual:g,errorManual:n}){var Z;const l=O!==void 0&&!!g,{isReadOnly:i,isHidden:f}=P.useSection(),x=A||!!i(t),F=H||!!f(t),{isView:V}=P.useFluigRuntime();let C="",w=()=>{},k,y=null,I=()=>{};if(l)C=O;else try{const $=T.useFormContext(),U=T.useController({name:t,control:$.control});C=U.field.value,w=U.field.onChange,k=U.field.ref,y=(Z=U.fieldState)==null?void 0:Z.error,I=$.clearErrors}catch{}const[j,E]=o.useState(!1),[q,J]=o.useState(""),W=o.useRef(null),Y=o.useRef(s);o.useEffect(()=>{Y.current=s},[s]),o.useEffect(()=>{const $=U=>{W.current&&!W.current.contains(U.target)&&E(!1)};return document.addEventListener("mousedown",$),()=>document.removeEventListener("mousedown",$)},[]),o.useEffect(()=>{j||J("")},[j]),o.useEffect(()=>{if(!h)return;const $=setTimeout(()=>{var U;(U=Y.current)==null||U.call(Y,q)},v);return()=>clearTimeout($)},[q,h,v]);const B=o.useMemo(()=>h&&!s&&q.trim()?m.filter($=>String(($==null?void 0:$[c])??"").toLowerCase().includes(q.toLowerCase())):m??[],[m,h,s,q,c]),N=o.useMemo(()=>{if(C==null)return"";if(typeof C=="object")return String(C[u]??"");const $=(m||[]).find(U=>String(U==null?void 0:U[u])===String(C));return String($?($==null?void 0:$[c])??"":C)},[C,m,u,c]),D=$=>{x||(l?g==null||g($[u]):(w($[u]),I==null||I(t)),_==null||_($),E(!1))};return F?null:e.jsxs("div",{className:`select-wrapper form-group ${F?"hidden":""}`,ref:W,children:[e.jsx("label",{className:"control-label",children:r}),V?e.jsxs("div",{className:b?"dfe-flex-input-wrapper":"",children:[e.jsx("span",{className:"form-control",style:b?{flex:1}:void 0,children:N||"-"}),b&&e.jsx(z,{text:b,title:S,width:R})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:b?"dfe-flex-input-wrapper":"",children:[e.jsxs("div",{className:`select-control ${y?"border-red":""} ${x?"readOnly":""}`,onClick:()=>!x&&E($=>!$),ref:k,style:b?{flex:1}:void 0,children:[e.jsx("span",{className:`select-display ${x?"readOnly":""}`,children:N||a}),e.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),b&&e.jsx(z,{text:b,title:S,width:R})]}),j&&!x&&e.jsxs("div",{className:"select-dropdown",children:[h&&e.jsx("div",{className:"select-search",children:e.jsx("input",{type:"text",className:"select-search-input",value:q,onChange:$=>J($.target.value),placeholder:p?"Carregando...":d,autoFocus:!0,onClick:$=>$.stopPropagation()})}),e.jsx("ul",{className:"select-options",children:p?e.jsx("li",{className:"select-option readOnly",children:"Carregando..."}):B.length>0?B.map($=>e.jsx("li",{onClick:()=>D($),className:"select-option handleHover",children:$[c]},$[u])):e.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),!l&&e.jsx("input",{type:"hidden",name:t,value:C||""}),(y||n)&&e.jsx("p",{className:"text-danger",children:String((y==null?void 0:y.message)??n)})]})}const G=o.memo(oe);function de({name:t,options:r=[],label:m="",valueKey:a="value",labelKey:c="label",forceReadOnly:u=!1,forceHidden:h=!1,valueManual:d,onChangeManual:p}){var V,C;let s=null;try{s=T.useFormContext()}catch{}const v=d!==void 0&&!!p,{isView:_,isReadOnly:A}=P.useFluigRuntime(),{isReadOnly:H,isHidden:b}=P.useSection(),S=H?H(t):!1,R=b?b(t):!1,O=u||S,g=h||R,n=O||A||_,l=()=>r?r.reduce((w,k)=>{const y=String(k[a]);if(v)w[y]=!!(d!=null&&d[y]);else if(s){const I=s.getValues(y);w[y]=I==="on"}else w[y]=!1;return w},{}):{},i=!v&&s?s.watch(t):void 0,f=o.useMemo(()=>v&&d?d:i&&typeof i=="object"?i:l(),[i,d,r]);o.useEffect(()=>{if(v||!s)return;const w=s.getValues(t);(!w||typeof w!="object")&&s.setValue(t,f,{shouldDirty:!1,shouldValidate:!1})},[f,t,s,v]);const x=(w,k)=>{if(n)return;const y={...f,[w]:k};if(v){p&&p(y);return}s&&(s.setValue(t,y,{shouldDirty:!0,shouldValidate:!0}),s.setValue(w,k?"on":"",{shouldValidate:!1}))},F=v?null:(C=(V=s==null?void 0:s.formState)==null?void 0:V.errors)==null?void 0:C[t];return e.jsxs("div",{className:`form-group ${g?"hidden":""}`,children:[m&&e.jsx("label",{children:m}),e.jsx("div",{className:`checkbox-group-custom ${n?"readOnly":""}`,children:r.map(w=>{const k=String(w[a]),y=f[k]===!0;return e.jsxs("div",{children:[!v&&s&&e.jsx("input",{type:"hidden",...s.register(k)}),e.jsxs("label",{className:`custom-checkbox ${y?"checked":""} ${n?"readOnly":""}`,children:[e.jsx("input",{type:"checkbox",checked:y,disabled:n,onChange:I=>x(k,I.target.checked)}),e.jsx("span",{className:"checkmark"}),e.jsx("span",{children:w[c]})]})]},k)})}),F&&e.jsx("p",{className:"text-danger",children:String(F.message)})]})}function ae({name:t,label:r="",options:m=[],valueKey:a="value",labelKey:c="label",iconKey:u="icon",forceReadOnly:h=!1,forceHidden:d=!1,valueManual:p,onChangeManual:s,errorManual:v}){var V,C;const _=p!==void 0&&!!s,{isReadOnly:A,isHidden:H}=P.useSection(),b=h||!!A(t),S=d||!!H(t),{isView:R,isReadOnly:O}=P.useFluigRuntime();let g=null;try{g=T.useFormContext()}catch{}const n=!_&&g?T.useController({name:t,control:g.control,defaultValue:""}):null,l=!_&&g?T.useFormState({name:t}):null,i=_?v:(C=(V=l==null?void 0:l.errors)==null?void 0:V[t])==null?void 0:C.message,f=b||O||R,x=_?p:(n==null?void 0:n.field.value)??"",F=o.useCallback(w=>{f||(_?s==null||s(w):(n==null||n.field.onChange(w),n==null||n.field.onBlur()))},[f,_,s,n]);return e.jsxs("div",{className:`form-group column ${S?"hidden":""}`,children:[r&&e.jsx("label",{className:"control-label",children:r}),e.jsx("div",{className:`btn-group ${f?"view-mode":""}`,"data-field-name":t,children:m.map(w=>{const k=w[a],y=x===k,I=w.color?{"--customColor":w.color}:void 0;return e.jsxs("div",{style:I,className:`btn fs-ellipsis ${y?"active":""}`,onClick:()=>F(k),children:[w[u]&&e.jsx("i",{className:`${w[u]} icon-sm`})," ",w[c]]},k)})}),!_&&e.jsx("input",{type:"hidden",name:t,value:x||"",ref:n==null?void 0:n.field.ref}),(i||v)&&e.jsx("p",{className:"text-danger",children:String(i??v)})]})}const ue=o.memo(ae),fe=({name:t,label:r="",placeholder:m="",className:a="",rows:c=4,maxLength:u,forceReadOnly:h=!1,forceHidden:d=!1,valueManual:p,onChangeManual:s,errorManual:v})=>{var f;const _=p!==void 0&&!!s,{isReadOnly:A,isHidden:H}=P.useSection(),b=h||!!A(t),S=d||!!H(t),{isView:R}=P.useFluigRuntime(),O=o.useRef(null);let g={value:p??"",onChange:x=>s==null?void 0:s(x)},n=null;if(!_)try{const{control:x}=T.useFormContext(),F=T.useController({name:t,control:x});g=F.field,n=(f=F.fieldState)==null?void 0:f.error}catch{}const l=()=>{O.current&&(O.current.style.height="auto",O.current.style.height=`${O.current.scrollHeight}px`)};if(o.useEffect(()=>{l()},[g.value]),R)return e.jsxs("div",{className:`form-group ${S?"hidden":""}`,children:[e.jsx("label",{children:r}),e.jsx("span",{className:"form-control",children:g.value||"-"})]});const i=`form-control ${b?"readOnly":""} ${n||v?"border-red":""} ${a}`;return e.jsxs("div",{className:`form-group ${S?"hidden":""}`,children:[r&&e.jsx("label",{children:r}),e.jsx("textarea",{ref:O,rows:c,maxLength:u,value:g.value||"",placeholder:m,readOnly:b,className:i,style:{resize:"none",maxHeight:"400px",overflowY:"auto"},onChange:x=>{_?s==null||s(x.target.value):g.onChange(x)},onInput:l}),(n||v)&&e.jsx("p",{className:"text-danger",children:String((n==null?void 0:n.message)??v)})]})},me=o.memo(fe);/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),i=require("react"),B=require("react-hook-form"),ie=require("react-imask"),P=require("@fluig-kit/ecm"),L=require("date-fns");function se({title:t,isOpen:l,onOpen:x,onClose:f,content:d,footer:u,width:j}){const a=i.useCallback(g=>{g.key==="Escape"&&f()},[f]);return i.useEffect(()=>(l&&(document.addEventListener("keydown",a),x==null||x(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",a),document.body.style.overflow="auto"}),[l,a,x]),l?e.jsx("div",{className:"modal-overlay",onClick:f,"aria-modal":"true",role:"dialog",children:e.jsxs("div",{style:{maxWidth:j},className:"modal-container",onClick:g=>g.stopPropagation(),children:[e.jsxs("div",{className:"modal-header",children:[e.jsx("h3",{children:t}),e.jsx("div",{className:"btn-close-modal",onClick:f,role:"button","aria-label":"Fechar modal",children:e.jsx("i",{className:"flaticon flaticon-close icon-sm","aria-hidden":"true"})})]}),e.jsx("div",{className:"modal-content",children:d}),u&&e.jsx("div",{className:"modal-footer",children:u})]})}):null}function ce({text:t,title:l="Ajuda & Informações",width:x="500px",className:f=""}){const[d,u]=i.useState(!1),j=a=>{a.preventDefault(),a.stopPropagation(),u(!0)};return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:`dfe-help-indicator ${f}`,onClick:j,role:"button",tabIndex:0,"aria-label":"Botão de ajuda",title:"Clique para obter ajuda",children:e.jsx("span",{children:"?"})}),e.jsx(se,{title:l,isOpen:d,onClose:()=>u(!1),width:x,content:e.jsx("div",{className:"dfe-help-modal-body",children:t}),footer:e.jsx("div",{className:"dfe-help-modal-footer",children:e.jsx("button",{type:"button",className:"btn btn-info dfe-help-btn",onClick:()=>u(!1),children:"Entendido"})})})]})}const Q=i.memo(ce),le={cpf:"000.000.000-00",cnpj:"00.000.000/0000-00",telefone:"(00) 00000-0000",cep:"00000-000"};function oe({name:t,label:l="",placeholder:x="",type:f="text",mask:d,className:u="",forceReadOnly:j=!1,forceHidden:a=!1,prefix:g,suffix:n,helpText:v,helpTitle:O,helpWidth:_,valueManual:H,onChangeManual:b,errorManual:F}){var U,J;const S=H!==void 0&&!!b,{isReadOnly:R,isHidden:w}=P.useSection(),r=j||!!R(t),c=a||!!w(t),{isView:o}=P.useFluigRuntime();let m=null;try{m=B.useFormContext()}catch{}const h=!S&&m?B.useController({name:t,control:m.control}):null,A=!S&&m?B.useFormState({name:t}):null,C=S?H:h==null?void 0:h.field.value,E=S?F:(J=(U=A==null?void 0:A.errors)==null?void 0:U[t])==null?void 0:J.message,k=i.useMemo(()=>d?le[d]??d:null,[d]),N=i.useCallback(T=>{if(T===""||T===null||T===void 0)return"";let $=String(T);if(f==="monetary"){const D=Number(T);return isNaN(D)?"":D.toLocaleString("pt-BR",{style:"currency",currency:"BRL"})}if(f==="number"){$=$.replace(".",",");const D=$.split(",");D[0]=D[0].replace(/\B(?=(\d{3})+(?!\d))/g,"."),$=D.join(",")}return g&&($=`${g}${$}`),n&&($=`${$}${n}`),$},[g,n,f]),y=i.useMemo(()=>N(C),[C,N]),V=T=>{let $=T.target.value;const D=y,G=`${g||""}${n||""}`;if(!$||$===g||$===n||$===G){S?b==null||b(""):h==null||h.field.onChange("");return}if(n&&$.length>D.length&&D&&$.startsWith(D)){const s=$.slice(D.length);$=String(C||"")+s}g&&$.length>D.length&&D&&$.endsWith(D)&&($=$.slice(0,$.length-D.length)+String(C||""));let I=$;if(n&&I.endsWith(n)&&(I=I.slice(0,-n.length)),g&&I.startsWith(g)&&(I=I.slice(g.length)),f==="monetary"){const s=I.replace(/\D/g,"");I=s?(Number(s)/100).toFixed(2):""}else f==="number"&&(I=I.replace(/[^\d.,-]/g,""),I=I.replace(/\./g,"").replace(",","."));$.length<D.length&&I===String(C||"")&&I.length>0&&(I=I.slice(0,-1)),S?b==null||b(I):h==null||h.field.onChange(I)},q=()=>{S||h==null||h.field.onBlur()};if(c)return null;const W=`form-control ${r?"readOnly":""} ${E?"border-red":""} ${u}`,z=()=>k?e.jsx(ie.IMaskInput,{mask:k,value:y,unmask:!0,onAccept:T=>{S?b==null||b(T):h==null||h.field.onChange(T)},placeholder:x,readOnly:r,className:W,inputRef:S||h==null?void 0:h.field.ref,onBlur:q}):e.jsx("input",{type:"text",inputMode:f==="number"||f==="monetary"?"numeric":void 0,value:y,onChange:V,onBlur:q,placeholder:x,readOnly:r,className:W});return o?e.jsxs("div",{className:"form-group",children:[l&&e.jsx("label",{children:l}),e.jsxs("div",{className:v?"dfe-flex-input-wrapper":"",children:[e.jsx("span",{className:W,children:y||"-"}),v&&e.jsx(Q,{text:v,title:O,width:_})]})]}):e.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[l&&e.jsx("label",{children:l}),e.jsxs("div",{className:v?"dfe-flex-input-wrapper":"",children:[z(),v&&e.jsx(Q,{text:v,title:O,width:_})]}),!S&&e.jsx("input",{type:"hidden",name:t,value:C||""}),E&&e.jsx("p",{className:"text-danger",children:String(E)})]})}const de=i.memo(oe);function ae({name:t,label:l="",options:x=[],placeholder:f="",labelKey:d="label",valueKey:u="value",enableSearch:j=!1,searchPlaceholder:a="Buscar...",loading:g=!1,onSearchChange:n,debounceTime:v=300,onSelect:O,forceReadOnly:_=!1,forceHidden:H=!1,helpText:b,helpTitle:F,helpWidth:S,valueManual:R,onChangeManual:w,errorManual:r}){var I;const c=R!==void 0&&!!w,{isReadOnly:o,isHidden:m}=P.useSection(),h=_||!!o(t),A=H||!!m(t),{isView:C}=P.useFluigRuntime();let E="",k=()=>{},N,y=null,V=()=>{};if(c)E=R;else try{const s=B.useFormContext(),p=B.useController({name:t,control:s.control});E=p.field.value,k=p.field.onChange,N=p.field.ref,y=(I=p.fieldState)==null?void 0:I.error,V=s.clearErrors}catch{}const[q,W]=i.useState(!1),[z,U]=i.useState(""),J=i.useRef(null),T=i.useRef(n);i.useEffect(()=>{T.current=n},[n]),i.useEffect(()=>{const s=p=>{J.current&&!J.current.contains(p.target)&&W(!1)};return document.addEventListener("mousedown",s),()=>document.removeEventListener("mousedown",s)},[]),i.useEffect(()=>{q||U("")},[q]),i.useEffect(()=>{if(!j)return;const s=setTimeout(()=>{var p;(p=T.current)==null||p.call(T,z)},v);return()=>clearTimeout(s)},[z,j,v]);const $=i.useMemo(()=>j&&!n&&z.trim()?x.filter(s=>String((s==null?void 0:s[d])??"").toLowerCase().includes(z.toLowerCase())):x??[],[x,j,n,z,d]),D=i.useMemo(()=>{if(E==null)return"";if(typeof E=="object")return String(E[u]??"");const s=(x||[]).find(p=>String(p==null?void 0:p[u])===String(E));return String(s?(s==null?void 0:s[d])??"":E)},[E,x,u,d]),G=s=>{h||(c?w==null||w(s[u]):(k(s[u]),V==null||V(t)),O==null||O(s),W(!1))};return A?null:e.jsxs("div",{className:`select-wrapper form-group ${A?"hidden":""}`,ref:J,children:[e.jsx("label",{className:"control-label",children:l}),C?e.jsxs("div",{className:b?"dfe-flex-input-wrapper":"",children:[e.jsx("span",{className:"form-control",style:b?{flex:1}:void 0,children:D||"-"}),b&&e.jsx(Q,{text:b,title:F,width:S})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:b?"dfe-flex-input-wrapper":"",children:[e.jsxs("div",{className:`select-control ${y?"border-red":""} ${h?"readOnly":""}`,onClick:()=>!h&&W(s=>!s),ref:N,style:b?{flex:1}:void 0,children:[e.jsx("span",{className:`select-display ${h?"readOnly":""}`,children:D||f}),e.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),b&&e.jsx(Q,{text:b,title:F,width:S})]}),q&&!h&&e.jsxs("div",{className:"select-dropdown",children:[j&&e.jsx("div",{className:"select-search",children:e.jsx("input",{type:"text",className:"select-search-input",value:z,onChange:s=>U(s.target.value),placeholder:g?"Carregando...":a,autoFocus:!0,onClick:s=>s.stopPropagation()})}),e.jsx("ul",{className:"select-options",children:g?e.jsx("li",{className:"select-option readOnly",children:"Carregando..."}):$.length>0?$.map(s=>e.jsx("li",{onClick:()=>G(s),className:"select-option handleHover",children:s[d]},s[u])):e.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),!c&&e.jsx("input",{type:"hidden",name:t,value:E||""}),(y||r)&&e.jsx("p",{className:"text-danger",children:String((y==null?void 0:y.message)??r)})]})}const ue=i.memo(ae);function fe({name:t,options:l=[],label:x="",valueKey:f="value",labelKey:d="label",forceReadOnly:u=!1,forceHidden:j=!1,valueManual:a,onChangeManual:g}){var C,E;let n=null;try{n=B.useFormContext()}catch{}const v=a!==void 0&&!!g,{isView:O,isReadOnly:_}=P.useFluigRuntime(),{isReadOnly:H,isHidden:b}=P.useSection(),F=H?H(t):!1,S=b?b(t):!1,R=u||F,w=j||S,r=R||_||O,c=()=>l?l.reduce((k,N)=>{const y=String(N[f]);if(v)k[y]=!!(a!=null&&a[y]);else if(n){const V=n.getValues(y);k[y]=V==="on"}else k[y]=!1;return k},{}):{},o=!v&&n?n.watch(t):void 0,m=i.useMemo(()=>v&&a?a:o&&typeof o=="object"?o:c(),[o,a,l]);i.useEffect(()=>{if(v||!n)return;const k=n.getValues(t);(!k||typeof k!="object")&&n.setValue(t,m,{shouldDirty:!1,shouldValidate:!1})},[m,t,n,v]);const h=(k,N)=>{if(r)return;const y={...m,[k]:N};if(v){g&&g(y);return}n&&(n.setValue(t,y,{shouldDirty:!0,shouldValidate:!0}),n.setValue(k,N?"on":"",{shouldValidate:!1}))},A=v?null:(E=(C=n==null?void 0:n.formState)==null?void 0:C.errors)==null?void 0:E[t];return e.jsxs("div",{className:`form-group ${w?"hidden":""}`,children:[x&&e.jsx("label",{children:x}),e.jsx("div",{className:`checkbox-group-custom ${r?"readOnly":""}`,children:l.map(k=>{const N=String(k[f]),y=m[N]===!0;return e.jsxs("div",{children:[!v&&n&&e.jsx("input",{type:"hidden",...n.register(N)}),e.jsxs("label",{className:`custom-checkbox ${y?"checked":""} ${r?"readOnly":""}`,children:[e.jsx("input",{type:"checkbox",checked:y,disabled:r,onChange:V=>h(N,V.target.checked)}),e.jsx("span",{className:"checkmark"}),e.jsx("span",{children:k[d]})]})]},N)})}),A&&e.jsx("p",{className:"text-danger",children:String(A.message)})]})}function me({name:t,label:l="",options:x=[],valueKey:f="value",labelKey:d="label",iconKey:u="icon",forceReadOnly:j=!1,forceHidden:a=!1,valueManual:g,onChangeManual:n,errorManual:v}){var C,E;const O=g!==void 0&&!!n,{isReadOnly:_,isHidden:H}=P.useSection(),b=j||!!_(t),F=a||!!H(t),{isView:S,isReadOnly:R}=P.useFluigRuntime();let w=null;try{w=B.useFormContext()}catch{}const r=!O&&w?B.useController({name:t,control:w.control,defaultValue:""}):null,c=!O&&w?B.useFormState({name:t}):null,o=O?v:(E=(C=c==null?void 0:c.errors)==null?void 0:C[t])==null?void 0:E.message,m=b||R||S,h=O?g:(r==null?void 0:r.field.value)??"",A=i.useCallback(k=>{m||(O?n==null||n(k):(r==null||r.field.onChange(k),r==null||r.field.onBlur()))},[m,O,n,r]);return e.jsxs("div",{className:`form-group column ${F?"hidden":""}`,children:[l&&e.jsx("label",{className:"control-label",children:l}),e.jsx("div",{className:`btn-group ${m?"view-mode":""}`,"data-field-name":t,children:x.map(k=>{const N=k[f],y=h===N,V=k.color?{"--customColor":k.color}:void 0;return e.jsxs("div",{style:V,className:`btn fs-ellipsis ${y?"active":""}`,onClick:()=>A(N),children:[k[u]&&e.jsx("i",{className:`${k[u]} icon-sm`})," ",k[d]]},N)})}),!O&&e.jsx("input",{type:"hidden",name:t,value:h||"",ref:r==null?void 0:r.field.ref}),(o||v)&&e.jsx("p",{className:"text-danger",children:String(o??v)})]})}const he=i.memo(me),pe=({name:t,label:l="",placeholder:x="",className:f="",rows:d=4,maxLength:u,forceReadOnly:j=!1,forceHidden:a=!1,valueManual:g,onChangeManual:n,errorManual:v})=>{var m;const O=g!==void 0&&!!n,{isReadOnly:_,isHidden:H}=P.useSection(),b=j||!!_(t),F=a||!!H(t),{isView:S}=P.useFluigRuntime(),R=i.useRef(null);let w={value:g??"",onChange:h=>n==null?void 0:n(h)},r=null;if(!O)try{const{control:h}=B.useFormContext(),A=B.useController({name:t,control:h});w=A.field,r=(m=A.fieldState)==null?void 0:m.error}catch{}const c=()=>{R.current&&(R.current.style.height="auto",R.current.style.height=`${R.current.scrollHeight}px`)};if(i.useEffect(()=>{c()},[w.value]),S)return e.jsxs("div",{className:`form-group ${F?"hidden":""}`,children:[e.jsx("label",{children:l}),e.jsx("span",{className:"form-control",children:w.value||"-"})]});const o=`form-control ${b?"readOnly":""} ${r||v?"border-red":""} ${f}`;return e.jsxs("div",{className:`form-group ${F?"hidden":""}`,children:[l&&e.jsx("label",{children:l}),e.jsx("textarea",{ref:R,rows:d,maxLength:u,value:w.value||"",placeholder:x,readOnly:b,className:o,style:{resize:"none",maxHeight:"400px",overflowY:"auto"},onChange:h=>{O?n==null||n(h.target.value):w.onChange(h)},onInput:c}),(r||v)&&e.jsx("p",{className:"text-danger",children:String((r==null?void 0:r.message)??v)})]})},xe=i.memo(pe);/**
2
2
  * @license lucide-react v0.575.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const te=(...t)=>t.filter((r,m,a)=>!!r&&r.trim()!==""&&a.indexOf(r)===m).join(" ").trim();/**
6
+ */const ne=(...t)=>t.filter((l,x,f)=>!!l&&l.trim()!==""&&f.indexOf(l)===x).join(" ").trim();/**
7
7
  * @license lucide-react v0.575.0 - ISC
8
8
  *
9
9
  * This source code is licensed under the ISC license.
10
10
  * See the LICENSE file in the root directory of this source tree.
11
- */const he=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/**
11
+ */const je=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/**
12
12
  * @license lucide-react v0.575.0 - ISC
13
13
  *
14
14
  * This source code is licensed under the ISC license.
15
15
  * See the LICENSE file in the root directory of this source tree.
16
- */const xe=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(r,m,a)=>a?a.toUpperCase():m.toLowerCase());/**
16
+ */const ve=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(l,x,f)=>f?f.toUpperCase():x.toLowerCase());/**
17
17
  * @license lucide-react v0.575.0 - ISC
18
18
  *
19
19
  * This source code is licensed under the ISC license.
20
20
  * See the LICENSE file in the root directory of this source tree.
21
- */const X=t=>{const r=xe(t);return r.charAt(0).toUpperCase()+r.slice(1)};/**
21
+ */const M=t=>{const l=ve(t);return l.charAt(0).toUpperCase()+l.slice(1)};/**
22
22
  * @license lucide-react v0.575.0 - ISC
23
23
  *
24
24
  * This source code is licensed under the ISC license.
25
25
  * See the LICENSE file in the root directory of this source tree.
26
- */var pe={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
26
+ */var ge={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
27
27
  * @license lucide-react v0.575.0 - ISC
28
28
  *
29
29
  * This source code is licensed under the ISC license.
30
30
  * See the LICENSE file in the root directory of this source tree.
31
- */const ve=t=>{for(const r in t)if(r.startsWith("aria-")||r==="role"||r==="title")return!0;return!1};/**
31
+ */const be=t=>{for(const l in t)if(l.startsWith("aria-")||l==="role"||l==="title")return!0;return!1};/**
32
32
  * @license lucide-react v0.575.0 - ISC
33
33
  *
34
34
  * This source code is licensed under the ISC license.
35
35
  * See the LICENSE file in the root directory of this source tree.
36
- */const je=o.forwardRef(({color:t="currentColor",size:r=24,strokeWidth:m=2,absoluteStrokeWidth:a,className:c="",children:u,iconNode:h,...d},p)=>o.createElement("svg",{ref:p,...pe,width:r,height:r,stroke:t,strokeWidth:a?Number(m)*24/Number(r):m,className:te("lucide",c),...!u&&!ve(d)&&{"aria-hidden":"true"},...d},[...h.map(([s,v])=>o.createElement(s,v)),...Array.isArray(u)?u:[u]]));/**
36
+ */const ye=i.forwardRef(({color:t="currentColor",size:l=24,strokeWidth:x=2,absoluteStrokeWidth:f,className:d="",children:u,iconNode:j,...a},g)=>i.createElement("svg",{ref:g,...ge,width:l,height:l,stroke:t,strokeWidth:f?Number(x)*24/Number(l):x,className:ne("lucide",d),...!u&&!be(a)&&{"aria-hidden":"true"},...a},[...j.map(([n,v])=>i.createElement(n,v)),...Array.isArray(u)?u:[u]]));/**
37
37
  * @license lucide-react v0.575.0 - ISC
38
38
  *
39
39
  * This source code is licensed under the ISC license.
40
40
  * See the LICENSE file in the root directory of this source tree.
41
- */const Q=(t,r)=>{const m=o.forwardRef(({className:a,...c},u)=>o.createElement(je,{ref:u,iconNode:r,className:te(`lucide-${he(X(t))}`,`lucide-${t}`,a),...c}));return m.displayName=X(t),m};/**
41
+ */const X=(t,l)=>{const x=i.forwardRef(({className:f,...d},u)=>i.createElement(ye,{ref:u,iconNode:l,className:ne(`lucide-${je(M(t))}`,`lucide-${t}`,f),...d}));return x.displayName=M(t),x};/**
42
42
  * @license lucide-react v0.575.0 - ISC
43
43
  *
44
44
  * This source code is licensed under the ISC license.
45
45
  * See the LICENSE file in the root directory of this source tree.
46
- */const be=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],ge=Q("calendar",be);/**
46
+ */const Ne=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],ke=X("calendar",Ne);/**
47
47
  * @license lucide-react v0.575.0 - ISC
48
48
  *
49
49
  * This source code is licensed under the ISC license.
50
50
  * See the LICENSE file in the root directory of this source tree.
51
- */const ye=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Ne=Q("chevron-left",ye);/**
51
+ */const we=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ee=X("chevron-down",we);/**
52
52
  * @license lucide-react v0.575.0 - ISC
53
53
  *
54
54
  * This source code is licensed under the ISC license.
55
55
  * See the LICENSE file in the root directory of this source tree.
56
- */const ke=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],we=Q("chevron-right",ke),se="dd/MM/yyyy",K=t=>{if(!t)return null;const r=L.parse(t,se,new Date);return L.isValid(r)?r:null},Se=t=>t?L.format(t,se):"",Re=[{value:0,label:"Janeiro"},{value:1,label:"Fevereiro"},{value:2,label:"Março"},{value:3,label:"Abril"},{value:4,label:"Maio"},{value:5,label:"Junho"},{value:6,label:"Julho"},{value:7,label:"Agosto"},{value:8,label:"Setembro"},{value:9,label:"Outubro"},{value:10,label:"Novembro"},{value:11,label:"Dezembro"}],M=1940,Oe=2100,$e=Array.from({length:Oe-M+1},(t,r)=>{const m=M+r;return{value:m,label:String(m)}});function _e({name:t,label:r="",placeholder:m="dd/mm/aaaa",className:a="",forceReadOnly:c=!1,forceHidden:u=!1,valueManual:h,onChangeManual:d,errorManual:p}){var I;const s=h!==void 0&&!!d,{isReadOnly:v,isHidden:_}=P.useSection(),A=c||!!v(t),H=u||!!_(t),{isView:b}=P.useFluigRuntime();let S="",R=()=>{},O,g=null,n=()=>{};if(s)S=h;else try{const j=T.useFormContext(),E=T.useController({name:t,control:j.control});S=E.field.value,R=E.field.onChange,O=E.field.ref,g=(I=E.fieldState)==null?void 0:I.error,n=j.clearErrors}catch{}const[l,i]=o.useState(!1),[f,x]=o.useState(new Date),F=o.useRef(null);o.useEffect(()=>{if(l){const j=K(S);x(j&&L.isValid(j)?j:new Date)}},[l,S]),o.useEffect(()=>{const j=E=>{F.current&&!F.current.contains(E.target)&&i(!1)};return document.addEventListener("mousedown",j),()=>document.removeEventListener("mousedown",j)},[]);const V=o.useMemo(()=>K(S),[S]),C=j=>{if(A)return;const E=Se(j);s?d==null||d(E):(R(E),n==null||n(t)),i(!1)},w=o.useMemo(()=>L.eachDayOfInterval({start:L.startOfWeek(L.startOfMonth(f)),end:L.endOfWeek(L.endOfMonth(f))}),[f]),k=f.getMonth(),y=L.getYear(f);return e.jsxs("div",{className:`dfe-datepicker-wrapper form-group ${H?"hidden":""} ${a}`,ref:F,children:[e.jsx("label",{className:"control-label",children:r}),b?e.jsx("span",{className:"form-control",children:S||"-"}):e.jsxs("div",{className:"dfe-datepicker-inner-container",children:[e.jsxs("div",{className:`dfe-datepicker-control ${g?"border-red":""} ${A?"readOnly":""}`,onClick:()=>!A&&i(j=>!j),ref:O,children:[e.jsx("span",{className:`dfe-datepicker-display ${A?"readOnly":""}`,children:S||m}),e.jsx(ge,{size:16,className:"dfe-datepicker-icon"})]}),l&&!A&&e.jsxs("div",{className:"dfe-datepicker-dropdown",onClick:j=>j.stopPropagation(),children:[e.jsxs("div",{className:"dfe-datepicker-header",children:[e.jsx("button",{type:"button",onClick:()=>x(L.subMonths(f,1)),className:"dfe-datepicker-nav-btn",children:e.jsx(Ne,{size:16})}),e.jsxs("div",{className:"dfe-datepicker-selectors",children:[e.jsx(G,{name:"datepicker_internal_month",valueManual:k,onChangeManual:j=>x(L.setMonth(f,Number(j))),options:Re,placeholder:"Mês"}),e.jsx(G,{name:"datepicker_internal_year",valueManual:y,onChangeManual:j=>x(L.setYear(f,Number(j))),options:$e,enableSearch:!0,searchPlaceholder:"Buscar ano...",placeholder:"Ano"})]}),e.jsx("button",{type:"button",onClick:()=>x(L.addMonths(f,1)),className:"dfe-datepicker-nav-btn",children:e.jsx(we,{size:16})})]}),e.jsx("div",{className:"dfe-datepicker-grid-header",children:["D","S","T","Q","Q","S","S"].map((j,E)=>e.jsx("span",{children:j},E))}),e.jsx("div",{className:"dfe-datepicker-grid",children:w.map((j,E)=>{const q=!L.isSameMonth(j,f),J=V&&L.isSameDay(j,V);return e.jsx("div",{onClick:()=>!q&&C(j),className:`dfe-datepicker-day
57
- ${J?"selected":"handleHover"}
58
- ${q?"outside":""}
59
- ${L.isToday(j)?"today":""}`,children:L.format(j,"d")},E)})})]})]}),!s&&e.jsx("input",{type:"hidden",name:t,value:S||""}),(g||p)&&e.jsx("p",{className:"text-danger",children:String((g==null?void 0:g.message)??p)})]})}const Ae=o.memo(_e);function Ce({mapping:t={},defaultLabel:r="Não reconhecido",className:m="",hidden:a=!1,label:c}){const{activityId:u}=P.useFluigRuntime(),h=o.useMemo(()=>!t||u===null||u===void 0?null:t[u],[u,t]);if(!h)return e.jsxs("div",{className:`form-group ${a?"hidden":""}`,children:[c&&e.jsx("label",{children:c}),e.jsx("div",{className:`status-badge default ${m}`,children:r})]});const d={"--customColor":h.color};return e.jsxs("div",{className:`form-group ${a?"hidden":""}`,children:[c&&e.jsx("label",{children:c}),e.jsxs("div",{className:`status-badge ${m}`,style:d,children:[h.icon&&e.jsx("i",{className:h.icon}),e.jsx("span",{children:h.label})]})]})}const Ee=o.memo(Ce);function Fe({name:t,control:r,defaultRowValue:m,isView:a,isReadOnly:c,filters:u=[]}){const{field:h}=T.useController({name:t,control:r}),[d,p]=o.useState([]),[s,v]=o.useState([]),_=()=>Date.now()+Math.random(),A=l=>{try{const i=JSON.parse(l);return Array.isArray(i)?i.map(f=>({...f,_uid:f._uid||_()})):[]}catch(i){return console.error(`Erro ao ler dados da tabela "${t}":`,i),[]}};o.useEffect(()=>{if(!(d.length>0&&!a)&&h.value&&typeof h.value=="string"){const l=JSON.stringify(d);if(h.value===l)return;const i=A(h.value);p(i)}},[h.value,a]),o.useEffect(()=>{if(c)return;const l=JSON.stringify(d);h.value!==l&&h.onChange(l)},[d,h,c]);const H=o.useCallback(()=>{const l={_uid:_(),...m};p(i=>[...i,l])},[m]),b=o.useCallback(()=>{p(l=>l.filter(i=>!s.includes(i._uid))),v([])},[s]),S=o.useCallback((l,i,f)=>{p(x=>x.map(F=>F._uid===l?{...F,[i]:f}:F))},[]),R=o.useCallback(l=>{v(i=>i.includes(l)?i.filter(f=>f!==l):[...i,l])},[]),O=o.useCallback(l=>{v(l?d.map(i=>i._uid):[])},[d]),g=d.length>0&&s.length===d.length,n=o.useMemo(()=>!u||u.length===0?d:d.filter(l=>u.every(i=>{if("custom"in i)return i.custom(l);const f=l[i.field];switch(i.operator){case"===":return f===i.value;case"!==":return f!==i.value;case">":return f>i.value;case"<":return f<i.value;case">=":return f>=i.value;case"<=":return f<=i.value;default:return!0}})),[d,u]);return{field:h,tableRows:d,visibleRows:n,selectedRowIds:s,isAllSelected:g,handle:{addRow:H,removeRows:b,updateCellValue:S,toggleSelection:R,toggleSelectAll:O}}}const Ie=({name:t,title:r="Tabela Dinâmica",columns:m,defaultRowValue:a={},forceReadOnly:c=!1,layout:u="fluid",actions:h=!0,filters:d=[]})=>{const{control:p}=T.useFormContext(),{isView:s,isReadOnly:v}=P.useFluigRuntime(),{isReadOnly:_}=P.useSection(),A=c||s||v||_&&_(t),{field:H,visibleRows:b,selectedRowIds:S,isAllSelected:R,handle:O}=Fe({name:t,control:p,defaultRowValue:a,isView:s,isReadOnly:!!A,filters:d}),g=u==="fixed";return e.jsxs("div",{className:`table-wrapper ${g?"table-fixed":"table-fluid"}`,children:[e.jsx("input",{type:"hidden",...H}),e.jsxs("div",{className:"header-handle",children:[e.jsx("h3",{children:r}),!A&&h&&e.jsxs("div",{className:"handle-actions",children:[e.jsxs("button",{type:"button",className:`btn ${S.length>0?"btn-danger":"btn-primary"}`,disabled:S.length===0,onClick:O.removeRows,children:["Remover (",S.length,")"]}),e.jsx("button",{type:"button",className:"btn-add",onClick:O.addRow,children:"Adicionar"})]})]}),e.jsx("div",{className:"table-scroll",children:e.jsxs("table",{className:"table-custom",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[!A&&e.jsx("th",{style:{width:"50px"},children:e.jsx("input",{type:"checkbox",checked:R,onChange:n=>O.toggleSelectAll(n.target.checked)})}),m.map(n=>e.jsx("th",{style:n.width?{minWidth:g?n.width:"100%"}:{width:"max-content"},children:n.label},String(n.key)))]})}),e.jsxs("tbody",{children:[b.map((n,l)=>e.jsxs("tr",{children:[!A&&e.jsx("td",{children:e.jsx("input",{type:"checkbox",checked:S.includes(n._uid),onChange:()=>O.toggleSelection(n._uid)})}),m.map(i=>e.jsx("td",{children:i.render?i.render.length<=1?i.render({row:n,index:l,updateRow:(f,x)=>O.updateCellValue(n._uid,String(f),x),isLocked:!!A,isView:!!s}):i.render(n,l,(f,x)=>O.updateCellValue(n._uid,f,x),!!A,!!s):n[i.key]},`${n._uid}-${String(i.key)}`))]},n._uid)),b.length===0&&e.jsx("tr",{className:"empty-row",children:e.jsx("td",{colSpan:100,className:"text-center",children:A?"Nenhum registro encontrado.":"Nenhum registro."})})]})]})})]})},Ve=(t,r)=>{const[m,a]=o.useState(null);let c=null;try{c=T.useFormContext().watch}catch{}const u=r!==void 0?r:c?c(t):void 0,h=o.useCallback(()=>{try{const p=window.top.__REACT_ATTACHMENT_BRIDGE__;if(p){const s=p.getAttachment(t,u);a(s||(u?{name:u,documentId:0}:null))}else a(u?{name:u,documentId:0}:null)}catch{a(u?{name:u,documentId:0}:null)}},[t,u,r]);return o.useEffect(()=>{h();const d=setInterval(h,2e3);return()=>clearInterval(d)},[h]),{attachment:m,sync:h}},De=({name:t,label:r,help:m,valueManual:a,onChangeManual:c,forceReadOnly:u=!1,forceHidden:h=!1,helpText:d,helpTitle:p,helpWidth:s})=>{const v=!!c,{isReadOnly:_,isHidden:A}=P.useSection(),{isView:H}=P.useFluigRuntime(),b=u||H||!!_(t),S=h||!!A(t),[R,O]=o.useState(!1);let g=null;try{g=T.useFormContext().control}catch{}const n=g&&!v?T.useController({name:t,control:g}).field:{value:a,onChange:k=>c==null?void 0:c(k)},{attachment:l,sync:i}=Ve(t,a),f=()=>{var k;try{const y=window.top;return{bridge:y.__REACT_ATTACHMENT_BRIDGE__,toast:(k=y.FLUIGC)==null?void 0:k.toast}}catch{return{bridge:null,toast:null}}},x=o.useCallback(()=>{if(b)return;const k=document.createElement("input");k.type="file",k.onchange=y=>{const I=y.target.files[0];if(!I)return;const{bridge:j,toast:E}=f();O(!0),j?j.upload(I,t,q=>{v?c==null||c(q.name):n.onChange(q.name),setTimeout(()=>{O(!1),i()},1e3),E&&E({title:"Sucesso",message:"Arquivo enviado",type:"success"})}):(v?c==null||c(I.name):n.onChange(I.name),O(!1))},k.click()},[t,n,i,c,b,v]),F=k=>{if(k.stopPropagation(),b)return;const y=(l==null?void 0:l.name)||a||n.value;if(!y)return;const{bridge:I,toast:j}=f();I?I.removeByFileName(y)?(v?c==null||c(""):n.onChange(""),i()):j&&j({title:"Erro",message:"Erro ao remover anexo",type:"danger"}):(v?c==null||c(""):n.onChange(""),i())},V=!!l&&!R,C=(l==null?void 0:l.name)||a||n.value,w=["fluig-attachment__box",V?"fluig-attachment__box--has-file":"",R?"fluig-attachment__box--uploading":"",b&&!V?"readOnly":"",b&&V?"fluig-attachment__box--readonly-view":""].join(" ");return S?null:e.jsxs("div",{className:"form-group fluig-attachment",children:[r&&e.jsx("label",{className:"fluig-attachment__label",children:r}),e.jsxs("div",{className:d?"dfe-flex-input-wrapper":"",children:[e.jsxs("div",{className:w,style:d?{flex:1}:void 0,onClick:()=>{if(V){const k=f(),y=(l==null?void 0:l.physicalFileName)||(l==null?void 0:l.description)||(l==null?void 0:l.name)||C;k.bridge&&y&&k.bridge.view(y)}else x()},children:[e.jsxs("span",{className:"fluig-attachment__content",children:[e.jsx("i",{className:`flaticon icon-sm ${R?"flaticon-loading":V?"flaticon-file":"flaticon-paperclip"} fluig-attachment__icon`}),e.jsx("span",{className:"fluig-attachment__filename",children:R?" Enviando...":V?C:b?"Nenhum arquivo":m||"Anexar"})]}),V&&!b&&e.jsx("button",{type:"button",className:"fluig-attachment__btn-remove btn btn-link text-danger",onClick:F,children:e.jsx("i",{className:"flaticon flaticon-trash icon-sm"})})]}),d&&e.jsx(z,{text:d,title:p,width:s})]}),!v&&g&&e.jsx("input",{type:"hidden",name:t,value:n.value||""})]})},Be=o.memo(De);exports.Attachment=Be;exports.Checkbox=de;exports.DatePicker=Ae;exports.Help=z;exports.Input=ce;exports.Modal=ee;exports.RadioBtn=ue;exports.Select=G;exports.SimpleTable=Ie;exports.StatusBadge=Ee;exports.TextArea=me;
56
+ */const Se=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Re=X("chevron-left",Se);/**
57
+ * @license lucide-react v0.575.0 - ISC
58
+ *
59
+ * This source code is licensed under the ISC license.
60
+ * See the LICENSE file in the root directory of this source tree.
61
+ */const $e=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Oe=X("chevron-right",$e),re="dd/MM/yyyy",K=t=>{if(!t)return null;const l=L.parse(t,re,new Date);return L.isValid(l)?l:null},_e=t=>t?L.format(t,re):"",te=["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"];function Ae({name:t,label:l="",placeholder:x="dd/mm/aaaa",className:f="",forceReadOnly:d=!1,forceHidden:u=!1,valueManual:j,onChangeManual:a,errorManual:g}){var I;const n=j!==void 0&&!!a,{isReadOnly:v,isHidden:O}=P.useSection(),_=d||!!v(t),H=u||!!O(t),{isView:b}=P.useFluigRuntime();let F="",S=()=>{},R,w=null,r=()=>{};if(n)F=j;else try{const s=B.useFormContext(),p=B.useController({name:t,control:s.control});F=p.field.value,S=p.field.onChange,R=p.field.ref,w=(I=p.fieldState)==null?void 0:I.error,r=s.clearErrors}catch{}const[c,o]=i.useState(!1),[m,h]=i.useState(new Date),[A,C]=i.useState(F||""),[E,k]=i.useState(!1),[N,y]=i.useState(!1),V=i.useRef(null),q=i.useRef(null),W=i.useRef(null);i.useEffect(()=>{C(F||"")},[F]),i.useEffect(()=>{if(c){const s=K(A);h(s&&L.isValid(s)?s:new Date),k(!1),y(!1)}},[c,A]),i.useEffect(()=>{const s=p=>{V.current&&!V.current.contains(p.target)&&(o(!1),k(!1),y(!1))};return document.addEventListener("mousedown",s),()=>document.removeEventListener("mousedown",s)},[]),i.useEffect(()=>{E&&q.current&&q.current.scrollIntoView({block:"center",behavior:"instant"})},[E]),i.useEffect(()=>{N&&W.current&&W.current.scrollIntoView({block:"center",behavior:"instant"})},[N]);const z=i.useMemo(()=>{const s=new Date().getFullYear();return Array.from({length:101},(p,Y)=>s-50+Y)},[]),U=i.useMemo(()=>K(A),[A]),J=s=>{if(_)return;const p=_e(s);C(p),n?a==null||a(p):(S(p),r==null||r(t)),o(!1)},T=s=>{let p=s.target.value.replace(/\D/g,"");p.length>8&&(p=p.slice(0,8));let Y=p;if(p.length>4?Y=`${p.slice(0,2)}/${p.slice(2,4)}/${p.slice(4)}`:p.length>2&&(Y=`${p.slice(0,2)}/${p.slice(2)}`),C(Y),Y.length===10||Y===""){n?a==null||a(Y):(S(Y),r==null||r(t));const Z=K(Y);Z&&L.isValid(Z)&&h(Z)}},$=i.useMemo(()=>L.eachDayOfInterval({start:L.startOfWeek(L.startOfMonth(m)),end:L.endOfWeek(L.endOfMonth(m))}),[m]),D=m.getMonth(),G=L.getYear(m);return e.jsxs("div",{className:`dfe-datepicker-wrapper form-group ${H?"hidden":""} ${f}`,ref:V,children:[e.jsx("label",{className:"control-label",children:l}),b?e.jsx("span",{className:"form-control",children:A||"-"}):e.jsxs("div",{className:"dfe-datepicker-inner-container",children:[e.jsxs("div",{className:`dfe-datepicker-input-group ${w?"border-red":""} ${_?"readOnly":""}`,children:[e.jsx("input",{type:"text",className:"dfe-datepicker-input",value:A,onChange:T,placeholder:x,readOnly:_,ref:R,maxLength:10}),e.jsx("button",{type:"button",className:"dfe-datepicker-trigger-btn",onClick:()=>!_&&o(s=>!s),disabled:_,tabIndex:-1,children:e.jsx(ke,{size:16,className:"dfe-datepicker-icon"})})]}),c&&!_&&e.jsxs("div",{className:"dfe-datepicker-dropdown",onClick:s=>s.stopPropagation(),children:[e.jsxs("div",{className:"dfe-datepicker-header",children:[e.jsx("button",{type:"button",onClick:()=>h(L.subMonths(m,1)),className:"dfe-datepicker-nav-btn",children:e.jsx(Re,{size:16})}),e.jsxs("div",{className:"dfe-datepicker-selectors-native",children:[e.jsxs("div",{className:"dfe-datepicker-selector-wrapper",children:[e.jsxs("button",{type:"button",className:"dfe-datepicker-selector-btn",onClick:()=>{y(!N),k(!1)},children:[te[D]," ",e.jsx(ee,{size:14})]}),N&&e.jsx("div",{className:"dfe-datepicker-listbox",children:te.map((s,p)=>{const Y=D===p;return e.jsx("button",{type:"button",ref:Y?W:null,className:`dfe-datepicker-listbox-item ${Y?"selected":""}`,onClick:()=>{h(L.setMonth(m,p)),y(!1)},children:s},p)})})]}),e.jsxs("div",{className:"dfe-datepicker-selector-wrapper",children:[e.jsxs("button",{type:"button",className:"dfe-datepicker-selector-btn",onClick:()=>{k(!E),y(!1)},children:[G," ",e.jsx(ee,{size:14})]}),E&&e.jsx("div",{className:"dfe-datepicker-listbox",children:z.map(s=>{const p=G===s;return e.jsx("button",{type:"button",ref:p?q:null,className:`dfe-datepicker-listbox-item ${p?"selected":""}`,onClick:()=>{h(L.setYear(m,s)),k(!1)},children:s},s)})})]})]}),e.jsx("button",{type:"button",onClick:()=>h(L.addMonths(m,1)),className:"dfe-datepicker-nav-btn",children:e.jsx(Oe,{size:16})})]}),e.jsx("div",{className:"dfe-datepicker-grid-header",children:["D","S","T","Q","Q","S","S"].map((s,p)=>e.jsx("span",{children:s},p))}),e.jsx("div",{className:"dfe-datepicker-grid",children:$.map((s,p)=>{const Y=!L.isSameMonth(s,m),Z=U&&L.isSameDay(s,U);return e.jsx("div",{onClick:()=>!Y&&J(s),className:`dfe-datepicker-day
62
+ ${Z?"selected":"handleHover"}
63
+ ${Y?"outside":""}
64
+ ${L.isToday(s)?"today":""}`,children:L.format(s,"d")},p)})})]})]}),!n&&e.jsx("input",{type:"hidden",name:t,value:A||""}),(w||g)&&e.jsx("p",{className:"text-danger",children:String((w==null?void 0:w.message)??g)})]})}const Ee=i.memo(Ae);function Fe({mapping:t={},defaultLabel:l="Não reconhecido",className:x="",hidden:f=!1,label:d}){const{activityId:u}=P.useFluigRuntime(),j=i.useMemo(()=>!t||u===null||u===void 0?null:t[u],[u,t]);if(!j)return e.jsxs("div",{className:`form-group ${f?"hidden":""}`,children:[d&&e.jsx("label",{children:d}),e.jsx("div",{className:`status-badge default ${x}`,children:l})]});const a={"--customColor":j.color};return e.jsxs("div",{className:`form-group ${f?"hidden":""}`,children:[d&&e.jsx("label",{children:d}),e.jsxs("div",{className:`status-badge ${x}`,style:a,children:[j.icon&&e.jsx("i",{className:j.icon}),e.jsx("span",{children:j.label})]})]})}const Ce=i.memo(Fe);function Ve({name:t,control:l,defaultRowValue:x,isView:f,isReadOnly:d,filters:u=[]}){const{field:j}=B.useController({name:t,control:l}),[a,g]=i.useState([]),[n,v]=i.useState([]),O=()=>Date.now()+Math.random(),_=c=>{try{const o=JSON.parse(c);return Array.isArray(o)?o.map(m=>({...m,_uid:m._uid||O()})):[]}catch(o){return console.error(`Erro ao ler dados da tabela "${t}":`,o),[]}};i.useEffect(()=>{if(!(a.length>0&&!f)&&j.value&&typeof j.value=="string"){const c=JSON.stringify(a);if(j.value===c)return;const o=_(j.value);g(o)}},[j.value,f]),i.useEffect(()=>{if(d)return;const c=JSON.stringify(a);j.value!==c&&j.onChange(c)},[a,j,d]);const H=i.useCallback(()=>{const c={_uid:O(),...x};g(o=>[...o,c])},[x]),b=i.useCallback(()=>{g(c=>c.filter(o=>!n.includes(o._uid))),v([])},[n]),F=i.useCallback((c,o,m)=>{g(h=>h.map(A=>A._uid===c?{...A,[o]:m}:A))},[]),S=i.useCallback(c=>{v(o=>o.includes(c)?o.filter(m=>m!==c):[...o,c])},[]),R=i.useCallback(c=>{v(c?a.map(o=>o._uid):[])},[a]),w=a.length>0&&n.length===a.length,r=i.useMemo(()=>!u||u.length===0?a:a.filter(c=>u.every(o=>{if("custom"in o)return o.custom(c);const m=c[o.field];switch(o.operator){case"===":return m===o.value;case"!==":return m!==o.value;case">":return m>o.value;case"<":return m<o.value;case">=":return m>=o.value;case"<=":return m<=o.value;default:return!0}})),[a,u]);return{field:j,tableRows:a,visibleRows:r,selectedRowIds:n,isAllSelected:w,handle:{addRow:H,removeRows:b,updateCellValue:F,toggleSelection:S,toggleSelectAll:R}}}const Ie=({name:t,title:l="Tabela Dinâmica",columns:x,defaultRowValue:f={},forceReadOnly:d=!1,layout:u="fluid",actions:j=!0,filters:a=[]})=>{const{control:g}=B.useFormContext(),{isView:n,isReadOnly:v}=P.useFluigRuntime(),{isReadOnly:O}=P.useSection(),_=d||n||v||O&&O(t),{field:H,visibleRows:b,selectedRowIds:F,isAllSelected:S,handle:R}=Ve({name:t,control:g,defaultRowValue:f,isView:n,isReadOnly:!!_,filters:a}),w=u==="fixed";return e.jsxs("div",{className:`table-wrapper ${w?"table-fixed":"table-fluid"}`,children:[e.jsx("input",{type:"hidden",...H}),e.jsxs("div",{className:"header-handle",children:[e.jsx("h3",{children:l}),!_&&j&&e.jsxs("div",{className:"handle-actions",children:[e.jsxs("button",{type:"button",className:`btn ${F.length>0?"btn-danger":"btn-primary"}`,disabled:F.length===0,onClick:R.removeRows,children:["Remover (",F.length,")"]}),e.jsx("button",{type:"button",className:"btn-add",onClick:R.addRow,children:"Adicionar"})]})]}),e.jsx("div",{className:"table-scroll",children:e.jsxs("table",{className:"table-custom",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[!_&&e.jsx("th",{style:{width:"50px"},children:e.jsx("input",{type:"checkbox",checked:S,onChange:r=>R.toggleSelectAll(r.target.checked)})}),x.map(r=>e.jsx("th",{style:r.width?{minWidth:w?r.width:"100%"}:{width:"max-content"},children:r.label},String(r.key)))]})}),e.jsxs("tbody",{children:[b.map((r,c)=>e.jsxs("tr",{children:[!_&&e.jsx("td",{children:e.jsx("input",{type:"checkbox",checked:F.includes(r._uid),onChange:()=>R.toggleSelection(r._uid)})}),x.map(o=>e.jsx("td",{children:o.render?o.render.length<=1?o.render({row:r,index:c,updateRow:(m,h)=>R.updateCellValue(r._uid,String(m),h),isLocked:!!_,isView:!!n}):o.render(r,c,(m,h)=>R.updateCellValue(r._uid,m,h),!!_,!!n):r[o.key]},`${r._uid}-${String(o.key)}`))]},r._uid)),b.length===0&&e.jsx("tr",{className:"empty-row",children:e.jsx("td",{colSpan:100,className:"text-center",children:_?"Nenhum registro encontrado.":"Nenhum registro."})})]})]})})]})},De=(t,l)=>{const[x,f]=i.useState(null);let d=null;try{d=B.useFormContext().watch}catch{}const u=l!==void 0?l:d?d(t):void 0,j=i.useCallback(()=>{try{const g=window.top.__REACT_ATTACHMENT_BRIDGE__;if(g){const n=g.getAttachment(t,u);f(n||(u?{name:u,documentId:0}:null))}else f(u?{name:u,documentId:0}:null)}catch{f(u?{name:u,documentId:0}:null)}},[t,u,l]);return i.useEffect(()=>{j();const a=setInterval(j,2e3);return()=>clearInterval(a)},[j]),{attachment:x,sync:j}},He=({name:t,label:l,help:x,valueManual:f,onChangeManual:d,forceReadOnly:u=!1,forceHidden:j=!1,helpText:a,helpTitle:g,helpWidth:n})=>{const v=!!d,{isReadOnly:O,isHidden:_}=P.useSection(),{isView:H}=P.useFluigRuntime(),b=u||H||!!O(t),F=j||!!_(t),[S,R]=i.useState(!1);let w=null;try{w=B.useFormContext().control}catch{}const r=w&&!v?B.useController({name:t,control:w}).field:{value:f,onChange:N=>d==null?void 0:d(N)},{attachment:c,sync:o}=De(t,f),m=()=>{var N;try{const y=window.top;return{bridge:y.__REACT_ATTACHMENT_BRIDGE__,toast:(N=y.FLUIGC)==null?void 0:N.toast}}catch{return{bridge:null,toast:null}}},h=i.useCallback(()=>{if(b)return;const N=document.createElement("input");N.type="file",N.onchange=y=>{const V=y.target.files[0];if(!V)return;const{bridge:q,toast:W}=m();R(!0),q?q.upload(V,t,z=>{v?d==null||d(z.name):r.onChange(z.name),setTimeout(()=>{R(!1),o()},1e3),W&&W({title:"Sucesso",message:"Arquivo enviado",type:"success"})}):(v?d==null||d(V.name):r.onChange(V.name),R(!1))},N.click()},[t,r,o,d,b,v]),A=N=>{if(N.stopPropagation(),b)return;const y=(c==null?void 0:c.name)||f||r.value;if(!y)return;const{bridge:V,toast:q}=m();V?V.removeByFileName(y)?(v?d==null||d(""):r.onChange(""),o()):q&&q({title:"Erro",message:"Erro ao remover anexo",type:"danger"}):(v?d==null||d(""):r.onChange(""),o())},C=!!c&&!S,E=(c==null?void 0:c.name)||f||r.value,k=["fluig-attachment__box",C?"fluig-attachment__box--has-file":"",S?"fluig-attachment__box--uploading":"",b&&!C?"readOnly":"",b&&C?"fluig-attachment__box--readonly-view":""].join(" ");return F?null:e.jsxs("div",{className:"form-group fluig-attachment",children:[l&&e.jsx("label",{className:"fluig-attachment__label",children:l}),e.jsxs("div",{className:a?"dfe-flex-input-wrapper":"",children:[e.jsxs("div",{className:k,style:a?{flex:1}:void 0,onClick:()=>{if(C){const N=m(),y=(c==null?void 0:c.physicalFileName)||(c==null?void 0:c.description)||(c==null?void 0:c.name)||E;N.bridge&&y&&N.bridge.view(y)}else h()},children:[e.jsxs("span",{className:"fluig-attachment__content",children:[e.jsx("i",{className:`flaticon icon-sm ${S?"flaticon-loading":C?"flaticon-file":"flaticon-paperclip"} fluig-attachment__icon`}),e.jsx("span",{className:"fluig-attachment__filename",children:S?" Enviando...":C?E:b?"Nenhum arquivo":x||"Anexar"})]}),C&&!b&&e.jsx("button",{type:"button",className:"fluig-attachment__btn-remove btn btn-link text-danger",onClick:A,children:e.jsx("i",{className:"flaticon flaticon-trash icon-sm"})})]}),a&&e.jsx(Q,{text:a,title:g,width:n})]}),!v&&w&&e.jsx("input",{type:"hidden",name:t,value:r.value||""})]})},Le=i.memo(He);exports.Attachment=Le;exports.Checkbox=fe;exports.DatePicker=Ee;exports.Help=Q;exports.Input=de;exports.Modal=se;exports.RadioBtn=he;exports.Select=ue;exports.SimpleTable=Ie;exports.StatusBadge=Ce;exports.TextArea=xe;