@prolibu-suite/cobalt-core 0.11.1 → 0.11.3
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/custom-elements.json +153 -34
- package/dist/cjs/co-button.cjs.entry.js +1 -1
- package/dist/cjs/co-chip_2.cjs.entry.js +2 -2
- package/dist/cjs/co-document-editor.cjs.entry.js +1 -1
- package/dist/cjs/co-modal.cjs.entry.js +27 -1
- package/dist/cjs/co-overlay.cjs.entry.js +205 -34
- package/dist/cjs/co-rich-text-editor.cjs.entry.js +2 -2
- package/dist/cjs/co-rich-text-viewer.cjs.entry.js +1 -1
- package/dist/cjs/co-toggle-button.cjs.entry.js +1 -1
- package/dist/cjs/cobalt.cjs.js +1 -1
- package/dist/cjs/{index-oMHzCXm6.js → index-BbSD1Eyw.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pagination-DV43TRj9.js → pagination-S2sSAgdl.js} +26 -2
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/{p-d6e7c258.entry.js → p-02ff847e.entry.js} +1 -1
- package/dist/cobalt/{p-87e62e2b.entry.js → p-12914c0a.entry.js} +1 -1
- package/dist/cobalt/p-38eb2615.entry.js +1 -0
- package/dist/cobalt/{p-47eca182.entry.js → p-6c7e423c.entry.js} +1 -1
- package/dist/cobalt/p-93063876.entry.js +1 -0
- package/dist/cobalt/p-9b114836.entry.js +1 -0
- package/dist/cobalt/{p-RVQJEYxa.js → p-Ch-Tygdb.js} +1 -1
- package/dist/cobalt/p-DGLDAl09.js +1 -0
- package/dist/cobalt/{p-3b6efb79.entry.js → p-bb7bbe70.entry.js} +1 -1
- package/dist/cobalt/p-e5f0d560.entry.js +1 -0
- package/dist/collection/components/co-autocomplete/co-autocomplete.js +1 -1
- package/dist/collection/components/co-avatar-group/co-avatar-group.js +1 -1
- package/dist/collection/components/co-button/co-button.css +15 -0
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
- package/dist/collection/components/co-chip/co-chip.css +16 -11
- package/dist/collection/components/co-color-area/co-color-area.js +2 -2
- package/dist/collection/components/co-color-slider/co-color-slider.js +1 -1
- package/dist/collection/components/co-combobox/co-combobox.js +1 -1
- package/dist/collection/components/co-command-search/co-command-search.js +1 -1
- package/dist/collection/components/co-data-table/co-data-table.js +1 -1
- package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +2 -2
- package/dist/collection/components/co-document-editor/co-document-editor.js +5 -5
- package/dist/collection/components/co-modal/co-modal.js +68 -1
- package/dist/collection/components/co-option-list/co-option-list.css +30 -4
- package/dist/collection/components/co-overlay/co-overlay.css +7 -0
- package/dist/collection/components/co-overlay/co-overlay.js +130 -26
- package/dist/collection/components/co-overlay/focusTrap.js +111 -3
- package/dist/collection/components/co-popover/co-popover.js +1 -1
- package/dist/collection/components/co-radio-group/co-radio-group.js +1 -1
- package/dist/collection/components/co-ref-field/co-ref-field.js +4 -4
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +1 -1
- package/dist/collection/components/co-select/co-select.js +1 -1
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +1 -1
- package/dist/collection/components/co-toast/co-toast.js +2 -2
- package/dist/collection/components/co-toggle-button/co-toggle-button.css +43 -13
- package/dist/collection/components/co-transfer-list/co-transfer-list.js +1 -1
- package/dist/collection/components/co-tree-item/co-tree-item.js +2 -2
- package/dist/components/co-autocomplete.js +1 -1
- package/dist/components/co-button.js +1 -1
- package/dist/components/co-chip.js +1 -1
- package/dist/components/co-column-picker.js +1 -1
- package/dist/components/co-combobox.js +1 -1
- package/dist/components/co-command-search.js +1 -1
- package/dist/components/co-data-table.js +1 -1
- package/dist/components/co-date-picker.js +1 -1
- package/dist/components/co-date-range-picker.js +1 -1
- package/dist/components/co-date-range.js +1 -1
- package/dist/components/co-date-time-picker.js +1 -1
- package/dist/components/co-document-editor.js +1 -1
- package/dist/components/co-drawer.js +1 -1
- package/dist/components/co-modal.js +1 -1
- package/dist/components/co-option-list.js +1 -1
- package/dist/components/co-overlay.js +1 -1
- package/dist/components/co-ref-field.js +1 -1
- package/dist/components/co-rich-text-editor.js +1 -1
- package/dist/components/co-rich-text-viewer.js +1 -1
- package/dist/components/co-toggle-button.js +1 -1
- package/dist/components/{p-BVdCvEza.js → p-BI_VaFsx.js} +1 -1
- package/dist/components/{p-Cnfd6Zze.js → p-BqFBZ1PT.js} +1 -1
- package/dist/components/{p-Du8EpQb-.js → p-C_6szR7t.js} +1 -1
- package/dist/components/{p-RVQJEYxa.js → p-Ch-Tygdb.js} +1 -1
- package/dist/components/{p-zJ3pjFzW.js → p-DB8DGMc-.js} +1 -1
- package/dist/components/p-DGLDAl09.js +1 -0
- package/dist/components/{p-Hi57w2_2.js → p-DhPxNA2f.js} +1 -1
- package/dist/components/p-wUXcJGdy.js +1 -0
- package/dist/esm/co-button.entry.js +1 -1
- package/dist/esm/co-chip_2.entry.js +2 -2
- package/dist/esm/co-document-editor.entry.js +1 -1
- package/dist/esm/co-modal.entry.js +28 -2
- package/dist/esm/co-overlay.entry.js +205 -34
- package/dist/esm/co-rich-text-editor.entry.js +2 -2
- package/dist/esm/co-rich-text-viewer.entry.js +1 -1
- package/dist/esm/co-toggle-button.entry.js +1 -1
- package/dist/esm/cobalt.js +1 -1
- package/dist/esm/{index-Cpo8HTwr.js → index-CgyOJePd.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pagination-D9OfZUnY.js → pagination-BzrIQtrk.js} +26 -2
- package/dist/types/components/co-modal/co-modal.d.ts +23 -0
- package/dist/types/components/co-overlay/co-overlay.d.ts +29 -1
- package/dist/types/components/co-overlay/focusTrap.d.ts +24 -3
- package/dist/types/components.d.ts +21 -2
- package/package.json +4 -4
- package/dist/cobalt/p-1a5bec8c.entry.js +0 -1
- package/dist/cobalt/p-67a024dd.entry.js +0 -1
- package/dist/cobalt/p-9ee5bef3.entry.js +0 -1
- package/dist/cobalt/p-B1JT7us1.js +0 -1
- package/dist/cobalt/p-c4c997f3.entry.js +0 -1
- package/dist/components/p-B1JT7us1.js +0 -1
- package/dist/components/p-nrwDl_gx.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as t,w as e,g as a,s,r as n,a as o,b as r,C as i,c as l,d as u,F as E,e as g,f as T,h as d,I as m,j as S,L as _,k as I,l as c,M as P,m as p,P as x,n as A,o as f,p as L,q as F,S as h,t as N,u as C,T as y,V as b,v as k,x as O,y as H,z as M,A as z,B,D as G,E as R,G as j,H as v,J as U,K as Y,N as $,O as w,Q as D,R as K,U as V,W,X,Y as Z,Z as q,_ as J}from"./p-Ch-Tygdb.js";import{C as Q,T as tt,t as et}from"./p-CRxTFT_z.js";function at(t,e){return r(t,{includeUiExtensions:!1,features:e})}var st=Object.freeze({__proto__:null,COLOR_PALETTE:Q,CalloutNode:i,CobaltTaskItem:l,CobaltTaskList:u,FIELD_SYNC_META:E,FontFamilyExtension:g,FontSizeExtension:T,FontWeightExtension:d,IMAGE_LAYOUT_MODES:m,IndentExtension:S,LetterSpacingExtension:_,LineHeightExtension:I,ListStyleExtension:c,MentionNode:P,MergeField:p,PAGE_GAP_PX:x,PAGE_SIZES:A,PAGINATION_META:f,PRESETS:L,Pagination:F,SANITIZE_CONFIGS:h,SIGNATURE_TOKEN_STYLE:N,SignatureSlot:C,TABLE_CONTEXT_ITEMS:tt,TRAILING_BREAK_CLASS:y,VariableNode:b,applyImageLayoutMode:k,collectFields:O,computePageBreaks:H,createEditor:M,defaultToolbarForPreset:z,getExtensions:r,getImageLayoutMode:B,getPrintExtensions:G,headerImageWidth:R,htmlToJson:function(e,a="task",r){if(t(a))return n(e,a,r);const i=s(e??"",a,r);return o(i,at(a,r))},isPrintPreset:t,jsonToHtml:function(n,o="task",r){if(t(o))return n?e(n,o,r):"";if(function(t){if(!t)return!0;const e=t.content;return!Array.isArray(e)||0===e.length||e.every((t=>"paragraph"===t?.type&&(!t.content||0===t.content.length)))}(n))return"";const i=a(n,at(o,r));return s(i,o,r)},jsonToText:function(t){if(!t)return"";const e=new Set(["paragraph","heading","blockquote","listItem","bulletList","orderedList","codeBlock","horizontalRule"]),a=[],s=t=>{t&&("text"!==t.type||"string"!=typeof t.text?"variable"!==t.type?"mention"!==t.type?"mergeField"!==t.type?"signatureSlot"!==t.type?"hardBreak"!==t.type?(Array.isArray(t.content)&&t.content.forEach(s),e.has(t.type)&&a.push("\n")):a.push("\n"):a.push(`⟦sig:${t.attrs?.slot??1}⟧`):a.push(t.attrs?.value||`[[${t.attrs?.name??""}]]`):a.push(`@${t.attrs?.label??""}`):a.push(`{{${t.attrs?.name??""}}}`):a.push(t.text))};return s(t),a.join("").replace(/\n{3,}/g,"\n\n").trim()},layoutBox:j,maxLengthForPreset:v,nextFreeSlot:U,normalizePrintHtml:Y,pageContentHeight:$,parseFieldToken:w,readPrintHtml:n,resolvePageSize:D,sanitize:s,sanitizeFieldName:K,serializePrintHtml:V,setFieldValuesInHtml:W,signatureBoxStyle:X,signatureSlotHtml:Z,signatureToken:q,stripBandOffsets:J,toolbarItems:et,writePrintHtml:e});export{st as R}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as o,h as r,a as t}from"./p-DJkaRtbb.js";const a={l:20,m:18,s:16,xs:14,sm:16},c=class{constructor(r){o(this,r),this.variant="primary",this.shape="rounded",this.size="m",this.fullWidth=!1,this.elevated=!1,this.surface="light",this.disabled=!1,this.iconWeight="regular",this.type="button",this.handleClick=()=>{if(!this.disabled){if("submit"===this.type){const o=this.el.closest("form");if(o)return void o.requestSubmit()}if("reset"===this.type){const o=this.el.closest("form");o&&o.reset()}}}}render(){var o,t;const c=null!==(t=null!==(o=this.iconSize)&&void 0!==o?o:a[this.size])&&void 0!==t?t:18,n={};return this.color&&(n.background=this.color),this.textColor&&(n.color=this.textColor),r("button",{key:"e77a3b67e23b2690a818e6ad9aa38b21b4c8f972",class:{"co-button":!0,[`co-button--${this.variant}`]:!0,[`co-button--${this.shape}`]:!0,[`co-button--${this.size}`]:!0,[`co-button--surface-${this.surface}`]:!0,"co-button--elevated":this.elevated,"co-button--disabled":this.disabled},style:Object.keys(n).length?n:void 0,type:this.type,disabled:this.disabled,"aria-label":this.ariaLabelText||void 0,onClick:this.handleClick,part:"button"},this.iconLeft?r("co-icon",{name:this.iconLeft,weight:this.iconWeight,size:c}):null,r("slot",{key:"ee52eb057c04ee3e1f5a5b2e87dc778a338d9887"},this.label),this.iconRight?r("co-icon",{name:this.iconRight,weight:this.iconWeight,size:c}):null)}get el(){return t(this)}};c.style=':host{display:inline-flex}:host([disabled]){pointer-events:none}.co-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid transparent;outline:none;font-family:var(--co-font-family-primary);font-weight:400;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;-webkit-font-smoothing:antialiased;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out), transform var(--co-motion-duration-fast) var(--co-motion-ease-out);box-sizing:border-box;-webkit-backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)));backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)))}.co-button--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary);border-color:var(--co-button-border-color, color-mix(in srgb, var(--co-semantic-on-primary) 28%, transparent))}.co-button--secondary{background:color-mix(in srgb, var(--co-button-bg, var(--co-semantic-surface-secondary)) 55%, transparent);color:var(--co-button-color, var(--co-semantic-on-secondary));border-color:var(--co-button-border-color, var(--co-button-border, var(--co-semantic-border-subtle)))}.co-button--stroke{background:color-mix(in srgb, var(--co-semantic-surface-secondary) 25%, transparent);color:var(--co-semantic-text-default);border-color:var(--co-button-border-color, var(--co-semantic-border-default))}.co-button--ghost{background:transparent;color:var(--co-semantic-text-default);border-color:var(--co-button-border-color, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--danger{background:var(--co-semantic-status-error);color:var(--co-color-base-blanco);border-color:var(--co-button-border-color, transparent)}.co-button--success{background:var(--co-semantic-status-success);color:var(--co-color-base-blanco);border-color:var(--co-button-border-color, transparent)}.co-button--rounded.co-button--l{padding:var(--co-spacing-xl) var(--co-spacing-2xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-18);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--m{padding:var(--co-spacing-lg) var(--co-spacing-xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-16);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--s{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-14);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--xs{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-12);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--square.co-button--l{padding:var(--co-spacing-lg) var(--co-spacing-xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-18);border-radius:var(--co-border-radius-lg)}.co-button--square.co-button--m{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-16);border-radius:var(--co-border-radius-sm)}.co-button--square.co-button--s{padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-14);border-radius:var(--co-border-radius-xs)}.co-button--square.co-button--xs{padding:var(--co-spacing-sm) var(--co-spacing-sm2);gap:var(--co-spacing-xs);font-size:var(--co-font-size-12);border-radius:var(--co-spacing-sm)}.co-button--disabled,.co-button:disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.co-button--primary:hover:not(:disabled){opacity:0.88}.co-button--secondary:hover:not(:disabled),.co-button--stroke:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-button--ghost:hover:not(:disabled){background:color-mix(in srgb, var(--co-semantic-surface-hover) 60%, transparent);-webkit-backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)));backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)))}.co-button--danger:hover:not(:disabled),.co-button--success:hover:not(:disabled){opacity:0.88}.co-button:active:not(:disabled){transform:scale(0.97);transition-duration:var(--co-motion-duration-instant)}.co-button--primary{transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out), transform var(--co-motion-duration-slow) var(--co-motion-ease-spring)}.co-button--secondary.co-button--elevated{box-shadow:var(--co-shadow-sm, 0 1px 2px 0 rgba(26, 26, 26, 0.04)), inset 0 0 0 1px var(--co-color-opacity-negro-8)}.co-button--ghost.co-button--surface-dark,.co-button--stroke.co-button--surface-dark{color:var(--co-color-base-blanco, #fff)}.co-button--ghost.co-button--surface-dark:hover:not(:disabled),.co-button--stroke.co-button--surface-dark:hover:not(:disabled){background:var(--co-color-opacity-blanco-16);-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--danger.co-button--surface-dark:hover:not(:disabled){opacity:1;background:color-mix(in srgb, var(--co-semantic-status-error) 84%, var(--co-color-base-blanco, #fff))}.co-button--danger.co-button--surface-dark:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--co-color-base-blanco, #fff) 45%, transparent)}::slotted([slot="icon-left"]),::slotted([slot="icon-right"]){display:inline-flex;flex-shrink:0}.co-button>co-icon{margin-block:-1px}@supports not (background: color-mix(in srgb, red, transparent)){.co-button--primary{background:var(--co-semantic-surface-primary)}.co-button--secondary{background:var(--co-semantic-surface-secondary)}.co-button--stroke{background:transparent}}.co-button--soft{background:var(--co-semantic-surface-control);color:var(--co-semantic-text-default);border-color:var(--co-button-border-color, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--soft:hover:not(:disabled){background:color-mix(in srgb, var(--co-semantic-surface-control), var(--co-semantic-surface-hover))}.co-button--rounded.co-button--sm{height:32px;padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-12);font-weight:500;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--square.co-button--sm{height:32px;padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-12);font-weight:500;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);border-radius:var(--co-border-radius-xs)}:host([full-width]){display:block;width:100%}:host([full-width]) .co-button{width:100%}co-icon{color:var(--co-button-icon-color, inherit)}';export{c as co_button}
|
|
1
|
+
import{r as o,h as r,a as t}from"./p-DJkaRtbb.js";const a={l:20,m:18,s:16,xs:14,sm:16},c=class{constructor(r){o(this,r),this.variant="primary",this.shape="rounded",this.size="m",this.fullWidth=!1,this.elevated=!1,this.surface="light",this.disabled=!1,this.iconWeight="regular",this.type="button",this.handleClick=()=>{if(!this.disabled){if("submit"===this.type){const o=this.el.closest("form");if(o)return void o.requestSubmit()}if("reset"===this.type){const o=this.el.closest("form");o&&o.reset()}}}}render(){var o,t;const c=null!==(t=null!==(o=this.iconSize)&&void 0!==o?o:a[this.size])&&void 0!==t?t:18,n={};return this.color&&(n.background=this.color),this.textColor&&(n.color=this.textColor),r("button",{key:"e77a3b67e23b2690a818e6ad9aa38b21b4c8f972",class:{"co-button":!0,[`co-button--${this.variant}`]:!0,[`co-button--${this.shape}`]:!0,[`co-button--${this.size}`]:!0,[`co-button--surface-${this.surface}`]:!0,"co-button--elevated":this.elevated,"co-button--disabled":this.disabled},style:Object.keys(n).length?n:void 0,type:this.type,disabled:this.disabled,"aria-label":this.ariaLabelText||void 0,onClick:this.handleClick,part:"button"},this.iconLeft?r("co-icon",{name:this.iconLeft,weight:this.iconWeight,size:c}):null,r("slot",{key:"ee52eb057c04ee3e1f5a5b2e87dc778a338d9887"},this.label),this.iconRight?r("co-icon",{name:this.iconRight,weight:this.iconWeight,size:c}):null)}get el(){return t(this)}};c.style=':host{display:inline-flex}:host([disabled]){pointer-events:none}.co-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid transparent;outline:none;font-family:var(--co-font-family-primary);font-weight:400;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;-webkit-font-smoothing:antialiased;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out), transform var(--co-motion-duration-fast) var(--co-motion-ease-out);box-sizing:border-box;-webkit-backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)));backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)))}.co-button--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary);border-color:var(--co-button-border-color, color-mix(in srgb, var(--co-semantic-on-primary) 28%, transparent))}.co-button--secondary{background:color-mix(in srgb, var(--co-button-bg, var(--co-semantic-surface-secondary)) 55%, transparent);color:var(--co-button-color, var(--co-semantic-on-secondary));border-color:var(--co-button-border-color, var(--co-button-border, var(--co-semantic-border-subtle)))}.co-button--stroke{background:color-mix(in srgb, var(--co-semantic-surface-secondary) 25%, transparent);color:var(--co-semantic-text-default);border-color:var(--co-button-border-color, var(--co-semantic-border-default))}.co-button--ghost{background:transparent;color:var(--co-semantic-text-default);border-color:var(--co-button-border-color, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--danger{background:var(--co-semantic-status-error);color:var(--co-color-base-blanco);border-color:var(--co-button-border-color, transparent)}.co-button--success{background:var(--co-semantic-status-success);color:var(--co-color-base-blanco);border-color:var(--co-button-border-color, transparent)}.co-button--rounded.co-button--l{padding:var(--co-spacing-xl) var(--co-spacing-2xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-18);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--m{padding:var(--co-spacing-lg) var(--co-spacing-xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-16);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--s{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-14);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--rounded.co-button--xs{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-12);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--square.co-button--l{padding:var(--co-spacing-lg) var(--co-spacing-xl);gap:var(--co-spacing-md);font-size:var(--co-font-size-18);border-radius:var(--co-border-radius-lg)}.co-button--square.co-button--m{padding:var(--co-spacing-md) var(--co-spacing-lg);gap:var(--co-spacing-sm2);font-size:var(--co-font-size-16);border-radius:var(--co-border-radius-sm)}.co-button--square.co-button--s{padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-14);border-radius:var(--co-border-radius-xs)}.co-button--square.co-button--xs{padding:var(--co-spacing-sm) var(--co-spacing-sm2);gap:var(--co-spacing-xs);font-size:var(--co-font-size-12);border-radius:var(--co-spacing-sm)}.co-button--disabled,.co-button:disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.co-button--primary:hover:not(:disabled){opacity:0.88}.co-button--secondary:hover:not(:disabled),.co-button--stroke:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-button--ghost:hover:not(:disabled){background:color-mix(in srgb, var(--co-semantic-surface-hover) 60%, transparent);-webkit-backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)));backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)))}.co-button--danger:hover:not(:disabled),.co-button--success:hover:not(:disabled){opacity:0.88}.co-button:active:not(:disabled){transform:scale(0.97);transition-duration:var(--co-motion-duration-instant)}.co-button--primary{transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), background var(--co-motion-duration-fast) var(--co-motion-ease-out), transform var(--co-motion-duration-slow) var(--co-motion-ease-spring)}.co-button--secondary.co-button--elevated{box-shadow:var(--co-shadow-sm, 0 1px 2px 0 rgba(26, 26, 26, 0.04)), inset 0 0 0 1px var(--co-color-opacity-negro-8)}.co-button:focus-visible{box-shadow:0 0 0 2px var(--co-semantic-surface-page), 0 0 0 4px var(--co-semantic-border-focus);outline:2px solid transparent;outline-offset:2px}.co-button--ghost.co-button--surface-dark,.co-button--stroke.co-button--surface-dark{color:var(--co-color-base-blanco, #fff)}.co-button--ghost.co-button--surface-dark:hover:not(:disabled),.co-button--stroke.co-button--surface-dark:hover:not(:disabled){background:var(--co-color-opacity-blanco-16);-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--danger.co-button--surface-dark:hover:not(:disabled){opacity:1;background:color-mix(in srgb, var(--co-semantic-status-error) 84%, var(--co-color-base-blanco, #fff))}.co-button--danger.co-button--surface-dark:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--co-color-base-blanco, #fff) 45%, transparent)}::slotted([slot="icon-left"]),::slotted([slot="icon-right"]){display:inline-flex;flex-shrink:0}.co-button>co-icon{margin-block:-1px}@supports not (background: color-mix(in srgb, red, transparent)){.co-button--primary{background:var(--co-semantic-surface-primary)}.co-button--secondary{background:var(--co-semantic-surface-secondary)}.co-button--stroke{background:transparent}}.co-button--soft{background:var(--co-semantic-surface-control);color:var(--co-semantic-text-default);border-color:var(--co-button-border-color, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.co-button--soft:hover:not(:disabled){background:color-mix(in srgb, var(--co-semantic-surface-control), var(--co-semantic-surface-hover))}.co-button--rounded.co-button--sm{height:32px;padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-12);font-weight:500;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);border-radius:var(--co-button-radius, var(--co-border-radius-full))}.co-button--square.co-button--sm{height:32px;padding:var(--co-spacing-sm2) var(--co-spacing-md);gap:var(--co-spacing-sm);font-size:var(--co-font-size-12);font-weight:500;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);border-radius:var(--co-border-radius-xs)}:host([full-width]){display:block;width:100%}:host([full-width]) .co-button{width:100%}co-icon{color:var(--co-button-icon-color, inherit)}';export{c as co_button}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as o,c as t,h as e,a as r}from"./p-DJkaRtbb.js";const a=new Set(["l","m","s","xs"]),c=class{constructor(e){o(this,e),this.coToggle=t(this,"coToggle",7),this.selected=!1,this.value="",this.size="m",this.disabled=!1,this.variant="connected",this.handleClick=()=>{this.disabled||(this.selected=!this.selected,this.coToggle.emit({value:this.value,selected:this.selected}))}}componentWillLoad(){this.adoptGroupSize()}adoptGroupSize(){var o,t;if(this.el.hasAttribute("size")||null!=this.size&&"m"!==this.size)return;const e=this.el.closest("co-toggle-button-group");if(!e)return;const r=null!==(o=e.variant)&&void 0!==o?o:e.getAttribute("variant"),c=null!==(t=e.size)&&void 0!==t?t:e.getAttribute("size");((o,t)=>a.has(null!=t?t:"")&&("soft"===o||"track"===o&&"xs"===t))(r,c)&&(this.size=c)}render(){const o="track"===this.variant?"xs"===this.size?14:18:"l"===this.size?20:"xs"===this.size?14:16,t=this.selected&&this.selectedIconWeight?this.selectedIconWeight:void 0;return e("button",{key:"a0b0aa7d128e4ee66a91a223851b126684d8e997",part:"button",class:{"co-toggle-button":!0,"co-toggle-button--selected":this.selected,[`co-toggle-button--${this.size}`]:!0,"co-toggle-button--disabled":this.disabled,"co-toggle-button--icon-only":!(this.label||!this.iconLeft&&!this.iconRight)},type:"button",disabled:this.disabled,"aria-pressed":String(this.selected),onClick:this.handleClick},e("slot",{key:"d683a91a68fb3820a01b8bd91dc3b81b8d8994f0",name:"leading"}),this.iconLeft&&e("co-icon",{key:"6894633951caa68a614824af931a33dc46a552ab",name:this.iconLeft,size:o,weight:t}),this.label&&e("span",{key:"96d902f0f28a8ea8a810425cf775ff6a9437be4d",class:"co-toggle-button__label"},this.label),this.iconRight&&e("co-icon",{key:"4e5db3f34af24fffce2ec95e4a7767c82768db39",name:this.iconRight,size:o,weight:t}))}get el(){return r(this)}};c.style=":host{display:inline-flex;--co-toggle-button-radius:var(--co-border-radius-sm)}:host([size='l']){--co-toggle-button-radius:var(--co-border-radius-lg)}:host([size='m']){--co-toggle-button-radius:var(--co-border-radius-sm)}:host([size='s']){--co-toggle-button-radius:var(--co-border-radius-xs)}:host([size='xs']){--co-toggle-button-radius:var(--co-border-radius-xs)}.co-toggle-button{display:inline-flex;width:var(--co-toggle-button-width, auto);align-items:center;justify-content:center;gap:var(--co-spacing-sm2);border:1px solid var(--co-semantic-border-subtle);border-top-left-radius:var(--co-tbr-tl, var(--co-toggle-button-radius));border-top-right-radius:var(--co-tbr-tr, var(--co-toggle-button-radius));border-bottom-right-radius:var(--co-tbr-br, var(--co-toggle-button-radius));border-bottom-left-radius:var(--co-tbr-bl, var(--co-toggle-button-radius));background:color-mix(in srgb, var(--co-semantic-surface-secondary) 35%, transparent);-webkit-backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)));backdrop-filter:var(--co-glass-filter, blur(var(--co-glass-blur)) saturate(var(--co-glass-saturate)));color:var(--co-toggle-button-color, var(--co-semantic-text-default));font-family:var(--co-font-family-primary);font-weight:500;cursor:pointer;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out), border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), color var(--co-motion-duration-fast) var(--co-motion-ease-out);white-space:nowrap;box-sizing:border-box;line-height:1}.co-toggle-button--l{height:48px;padding:0 var(--co-spacing-lg);font-size:var(--co-toggle-button-font-size, var(--co-font-size-16))}.co-toggle-button--m{height:40px;padding:0 var(--co-spacing-md);font-size:var(--co-toggle-button-font-size, var(--co-font-size-14))}.co-toggle-button--s{height:32px;padding:0 var(--co-spacing-sm2);font-size:var(--co-toggle-button-font-size, var(--co-font-size-14))}.co-toggle-button--xs{height:24px;padding:0 var(--co-spacing-sm);font-size:var(--co-toggle-button-font-size, var(--co-font-size-12))}.co-toggle-button--icon-only.co-toggle-button--l{width:48px;padding:0}.co-toggle-button--icon-only.co-toggle-button--m{width:40px;padding:0}.co-toggle-button--icon-only.co-toggle-button--s{width:32px;padding:0}.co-toggle-button--icon-only.co-toggle-button--xs{width:24px;padding:0}.co-toggle-button:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-toggle-button--selected{background:var(--co-color-base-negro, #1f1c1b);color:var(--co-toggle-button-color-selected, var(--co-color-base-blanco, #fff));border-color:var(--co-color-base-negro, #1f1c1b)}.co-toggle-button--selected:hover:not(:disabled){background:var(--co-color-gray-800, #0a0a0a);border-color:var(--co-color-gray-800, #0a0a0a)}.co-toggle-button--disabled{opacity:0.4;cursor:not-allowed}.co-toggle-button:focus-visible{outline:2px solid var(--co-semantic-text-default);outline-offset:-3px}.co-toggle-button--selected:focus-visible{outline-color:currentColor}.co-toggle-button__label{line-height:1}@supports not (background: color-mix(in srgb, red, transparent)){.co-toggle-button{background:var(--co-semantic-surface-secondary)}}:host([variant='track']) .co-toggle-button{height:var(--co-toggle-pill-height, 30px);border-radius:var(--co-toggle-pill-radius, 8px);border-color:transparent;background:transparent;color:var(--co-toggle-button-color, var(--co-semantic-text-secondary));box-shadow:none;padding:0 12px;-webkit-backdrop-filter:none;backdrop-filter:none}:host([variant='track']) .co-toggle-button.co-toggle-button--icon-only{width:34px;padding:0}:host([variant='track']) .co-toggle-button:hover:not(:disabled){background:var(--co-semantic-surface-hover);color:var(--co-toggle-button-color-hover, var(--co-semantic-text-default))}:host([variant='track']) .co-toggle-button--selected{background:var(--co-semantic-surface-page);color:var(--co-toggle-button-color-selected, var(--co-semantic-text-default));border-color:var(--co-toggle-pill-border, var(--co-semantic-border-default));box-shadow:var(--co-toggle-pill-shadow, var(--co-shadow-sm, 0 1px 2px 0 rgba(26, 26, 26, 0.04)))}:host([variant='track']) .co-toggle-button--selected:hover:not(:disabled){background:var(--co-semantic-surface-page);color:var(--co-toggle-button-color-selected, var(--co-semantic-text-default));border-color:var(--co-toggle-pill-border, var(--co-semantic-border-default))}:host([variant='track'][size='xs']) .co-toggle-button{height:var(--co-toggle-pill-height, 20px);border-radius:var(--co-toggle-pill-radius, var(--co-border-radius-xxs))}:host([variant='track'][size='xs']) .co-toggle-button:not(.co-toggle-button--selected){color:var(--co-toggle-button-color, var(--co-semantic-text-default))}:host([variant='track'][size='xs']) .co-toggle-button:not(.co-toggle-button--selected):hover:not(:disabled){color:var(--co-toggle-button-color-hover, var(--co-semantic-text-default))}:host([variant='track'][size='xs']) .co-toggle-button.co-toggle-button--icon-only{width:20px}:host([variant='track'][size='xs']) .co-toggle-button--selected{box-shadow:var(--co-toggle-pill-shadow, none)}:host([variant='soft']) .co-toggle-button{height:24px;border-radius:var(--co-border-radius-xxs);border-color:transparent;background:var(--co-semantic-surface-control, #f6f6f6);color:var(--co-toggle-button-color, var(--co-semantic-text-default));font-size:var(--co-font-size-12);font-weight:var(--co-font-weight-regular);padding:0 calc(var(--co-spacing-sm2) - 1px);gap:var(--co-spacing-sm2);-webkit-backdrop-filter:none;backdrop-filter:none}:host([variant='soft']) .co-toggle-button:hover:not(:disabled){background:var(--co-semantic-surface-control, #f6f6f6)}:host([variant='soft']) .co-toggle-button--selected{background:var(--co-color-celeste-100);color:var(--co-toggle-button-color-selected, var(--co-color-primary-azul));border-color:transparent}:host([variant='soft']) .co-toggle-button--selected:hover:not(:disabled){background:var(--co-color-celeste-100)}";export{c as co_toggle_button}
|
|
@@ -431,7 +431,7 @@ export class CoAutocomplete {
|
|
|
431
431
|
"references": {
|
|
432
432
|
"AutocompleteOption": {
|
|
433
433
|
"location": "local",
|
|
434
|
-
"path": "/Users/agox/
|
|
434
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-autocomplete/co-autocomplete.tsx",
|
|
435
435
|
"id": "src/components/co-autocomplete/co-autocomplete.tsx::AutocompleteOption"
|
|
436
436
|
}
|
|
437
437
|
}
|
|
@@ -92,7 +92,7 @@ export class CoAvatarGroup {
|
|
|
92
92
|
"references": {
|
|
93
93
|
"CoAvatarGroupItem": {
|
|
94
94
|
"location": "local",
|
|
95
|
-
"path": "/Users/agox/
|
|
95
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-avatar-group/co-avatar-group.tsx",
|
|
96
96
|
"id": "src/components/co-avatar-group/co-avatar-group.tsx::CoAvatarGroupItem"
|
|
97
97
|
}
|
|
98
98
|
}
|
|
@@ -184,6 +184,21 @@
|
|
|
184
184
|
inset 0 0 0 1px var(--co-color-opacity-negro-8);
|
|
185
185
|
}
|
|
186
186
|
|
|
187
|
+
/* ─── FOCUS RING ─────────────────────────────────────────────────
|
|
188
|
+
Anillo de foco de teclado en TODAS las variantes (el base es outline:none). Doble anillo: el
|
|
189
|
+
interior del color de la página separa el anillo del fill del botón en cualquier variante.
|
|
190
|
+
QA 2026-09-24 («Generar contrato»): con Tab el foco era invisible en todo botón salvo
|
|
191
|
+
danger + surface-dark. Va DESPUÉS del elevated (misma especificidad: su sombra pisaba el
|
|
192
|
+
anillo) y antes de las overrides de superficie, que lo siguen ganando por especificidad. */
|
|
193
|
+
.co-button:focus-visible {
|
|
194
|
+
box-shadow:
|
|
195
|
+
0 0 0 2px var(--co-semantic-surface-page),
|
|
196
|
+
0 0 0 4px var(--co-semantic-border-focus);
|
|
197
|
+
/* forced-colors (alto contraste de Windows) borra el box-shadow: el sistema pinta este outline. */
|
|
198
|
+
outline: 2px solid transparent;
|
|
199
|
+
outline-offset: 2px;
|
|
200
|
+
}
|
|
201
|
+
|
|
187
202
|
/* ─── ON-DARK SURFACE · ghost/stroke ─────────────────────────────
|
|
188
203
|
surface="dark": for buttons placed on a dark bar (e.g. a selection
|
|
189
204
|
bar). White ink/icon + a blanco-16 hover wash. Higher specificity
|
|
@@ -236,7 +236,7 @@ export class CoCheckboxGroup {
|
|
|
236
236
|
"references": {
|
|
237
237
|
"CheckboxOption": {
|
|
238
238
|
"location": "local",
|
|
239
|
-
"path": "/Users/agox/
|
|
239
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-checkbox-group/co-checkbox-group.tsx",
|
|
240
240
|
"id": "src/components/co-checkbox-group/co-checkbox-group.tsx::CheckboxOption"
|
|
241
241
|
}
|
|
242
242
|
}
|
|
@@ -325,11 +325,15 @@ button.co-chip--disabled {
|
|
|
325
325
|
|
|
326
326
|
/* ═══════════════════════════════════════════════════════════════
|
|
327
327
|
VARIANT: FILTER — Cloud Drive filter-trigger pill.
|
|
328
|
-
|
|
329
|
-
two-tone muted value suffix and a trailing caret.
|
|
328
|
+
Page-surface pill with an inset hairline ring, a tinted leading icon,
|
|
329
|
+
a two-tone muted value suffix and a trailing caret.
|
|
330
330
|
Fixed metrics: height 34, padding 0 12, gap 7, font-size 13.5.
|
|
331
331
|
Declared with .co-chip.co-chip--filter so these override the
|
|
332
332
|
size/icon-mode padding + gap rules (equal specificity, later in source).
|
|
333
|
+
Colours are SEMANTIC tokens (identical to the old primitives in light:
|
|
334
|
+
surface-page = base-blanco, text-default = base-negro, border-default =
|
|
335
|
+
opacity-negro-16, border-field = opacity-negro-25, surface-disabled =
|
|
336
|
+
gray-100) so the pill follows the dark theme instead of staying white.
|
|
333
337
|
═══════════════════════════════════════════════════════════════ */
|
|
334
338
|
.co-chip.co-chip--filter {
|
|
335
339
|
height: 34px;
|
|
@@ -337,31 +341,32 @@ button.co-chip--disabled {
|
|
|
337
341
|
gap: 7px;
|
|
338
342
|
font-size: 13.5px;
|
|
339
343
|
border-radius: var(--co-border-radius-full);
|
|
340
|
-
background: var(--co-
|
|
341
|
-
color: var(--co-
|
|
344
|
+
background: var(--co-semantic-surface-page, #fff);
|
|
345
|
+
color: var(--co-semantic-text-default, #1f1c1b);
|
|
342
346
|
border-color: transparent;
|
|
343
|
-
box-shadow: inset 0 0 0 1px var(--co-
|
|
347
|
+
box-shadow: inset 0 0 0 1px var(--co-semantic-border-default, rgba(0, 0, 0, 0.16));
|
|
344
348
|
}
|
|
345
349
|
|
|
346
|
-
/* Leading icon (prop- or slot-based) tinted
|
|
350
|
+
/* Leading icon (prop- or slot-based) tinted muted in this mode. */
|
|
347
351
|
.co-chip--filter .co-chip__icon-left {
|
|
348
|
-
color: var(--co-
|
|
352
|
+
color: var(--co-semantic-text-muted, #888888);
|
|
349
353
|
}
|
|
350
354
|
|
|
351
|
-
/* Trailing caret is a subtle gray
|
|
355
|
+
/* Trailing caret is a subtle mid gray (reads on both themes; no semantic
|
|
356
|
+
token sits at gray-400). */
|
|
352
357
|
.co-chip--filter .co-chip__trailing {
|
|
353
358
|
color: var(--co-color-gray-400, #a0a0a0);
|
|
354
359
|
}
|
|
355
360
|
|
|
356
361
|
.co-chip--filter.co-chip--clickable:hover:not(.co-chip--disabled) {
|
|
357
|
-
box-shadow: inset 0 0 0 1px var(--co-
|
|
362
|
+
box-shadow: inset 0 0 0 1px var(--co-semantic-border-field, rgba(0, 0, 0, 0.25));
|
|
358
363
|
}
|
|
359
364
|
|
|
360
365
|
.co-chip--filter.co-chip--clickable:active:not(.co-chip--disabled) {
|
|
361
|
-
background: var(--co-
|
|
366
|
+
background: var(--co-semantic-surface-disabled, #f6f6f6);
|
|
362
367
|
}
|
|
363
368
|
|
|
364
369
|
/* Open/active trigger tint (consumer toggles `selected` while the menu is open). */
|
|
365
370
|
.co-chip--filter.co-chip--selected {
|
|
366
|
-
background: var(--co-
|
|
371
|
+
background: var(--co-semantic-surface-disabled, #f6f6f6);
|
|
367
372
|
}
|
|
@@ -310,7 +310,7 @@ export class CoColorArea {
|
|
|
310
310
|
"references": {
|
|
311
311
|
"ColorAreaDetail": {
|
|
312
312
|
"location": "local",
|
|
313
|
-
"path": "/Users/agox/
|
|
313
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-color-area/co-color-area.tsx",
|
|
314
314
|
"id": "src/components/co-color-area/co-color-area.tsx::ColorAreaDetail"
|
|
315
315
|
}
|
|
316
316
|
}
|
|
@@ -331,7 +331,7 @@ export class CoColorArea {
|
|
|
331
331
|
"references": {
|
|
332
332
|
"ColorAreaDetail": {
|
|
333
333
|
"location": "local",
|
|
334
|
-
"path": "/Users/agox/
|
|
334
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-color-area/co-color-area.tsx",
|
|
335
335
|
"id": "src/components/co-color-area/co-color-area.tsx::ColorAreaDetail"
|
|
336
336
|
}
|
|
337
337
|
}
|
|
@@ -215,7 +215,7 @@ export class CoColorSlider {
|
|
|
215
215
|
"references": {
|
|
216
216
|
"ColorSliderChannel": {
|
|
217
217
|
"location": "local",
|
|
218
|
-
"path": "/Users/agox/
|
|
218
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-color-slider/co-color-slider.tsx",
|
|
219
219
|
"id": "src/components/co-color-slider/co-color-slider.tsx::ColorSliderChannel"
|
|
220
220
|
}
|
|
221
221
|
}
|
|
@@ -545,7 +545,7 @@ export class CoCombobox {
|
|
|
545
545
|
"references": {
|
|
546
546
|
"ComboboxOption": {
|
|
547
547
|
"location": "local",
|
|
548
|
-
"path": "/Users/agox/
|
|
548
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-combobox/co-combobox.tsx",
|
|
549
549
|
"id": "src/components/co-combobox/co-combobox.tsx::ComboboxOption"
|
|
550
550
|
}
|
|
551
551
|
}
|
|
@@ -257,7 +257,7 @@ export class CoCommandSearch {
|
|
|
257
257
|
"references": {
|
|
258
258
|
"CommandItem": {
|
|
259
259
|
"location": "local",
|
|
260
|
-
"path": "/Users/agox/
|
|
260
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-command-search/co-command-search.tsx",
|
|
261
261
|
"id": "src/components/co-command-search/co-command-search.tsx::CommandItem"
|
|
262
262
|
}
|
|
263
263
|
}
|
|
@@ -509,7 +509,7 @@ export class CoDataTable {
|
|
|
509
509
|
"references": {
|
|
510
510
|
"CoDataTableColumn": {
|
|
511
511
|
"location": "local",
|
|
512
|
-
"path": "/Users/agox/
|
|
512
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-data-table/co-data-table.tsx",
|
|
513
513
|
"id": "src/components/co-data-table/co-data-table.tsx::CoDataTableColumn"
|
|
514
514
|
}
|
|
515
515
|
}
|
|
@@ -1055,7 +1055,7 @@ export class CoDateRangePicker {
|
|
|
1055
1055
|
"references": {
|
|
1056
1056
|
"DateRangeValue": {
|
|
1057
1057
|
"location": "local",
|
|
1058
|
-
"path": "/Users/agox/
|
|
1058
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-date-range-picker/co-date-range-picker.tsx",
|
|
1059
1059
|
"id": "src/components/co-date-range-picker/co-date-range-picker.tsx::DateRangeValue"
|
|
1060
1060
|
}
|
|
1061
1061
|
}
|
|
@@ -1076,7 +1076,7 @@ export class CoDateRangePicker {
|
|
|
1076
1076
|
"references": {
|
|
1077
1077
|
"DateRangeValue": {
|
|
1078
1078
|
"location": "local",
|
|
1079
|
-
"path": "/Users/agox/
|
|
1079
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-date-range-picker/co-date-range-picker.tsx",
|
|
1080
1080
|
"id": "src/components/co-date-range-picker/co-date-range-picker.tsx::DateRangeValue"
|
|
1081
1081
|
}
|
|
1082
1082
|
}
|
|
@@ -936,7 +936,7 @@ export class CoDocumentEditor {
|
|
|
936
936
|
"references": {
|
|
937
937
|
"DocumentPageSize": {
|
|
938
938
|
"location": "local",
|
|
939
|
-
"path": "/Users/agox/
|
|
939
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-document-editor/co-document-editor.tsx",
|
|
940
940
|
"id": "src/components/co-document-editor/co-document-editor.tsx::DocumentPageSize"
|
|
941
941
|
}
|
|
942
942
|
}
|
|
@@ -962,7 +962,7 @@ export class CoDocumentEditor {
|
|
|
962
962
|
"references": {
|
|
963
963
|
"DocumentMargins": {
|
|
964
964
|
"location": "local",
|
|
965
|
-
"path": "/Users/agox/
|
|
965
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-document-editor/co-document-editor.tsx",
|
|
966
966
|
"id": "src/components/co-document-editor/co-document-editor.tsx::DocumentMargins"
|
|
967
967
|
}
|
|
968
968
|
}
|
|
@@ -1027,7 +1027,7 @@ export class CoDocumentEditor {
|
|
|
1027
1027
|
"references": {
|
|
1028
1028
|
"DocumentFeatures": {
|
|
1029
1029
|
"location": "local",
|
|
1030
|
-
"path": "/Users/agox/
|
|
1030
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-document-editor/co-document-editor.tsx",
|
|
1031
1031
|
"id": "src/components/co-document-editor/co-document-editor.tsx::DocumentFeatures"
|
|
1032
1032
|
}
|
|
1033
1033
|
}
|
|
@@ -1220,7 +1220,7 @@ export class CoDocumentEditor {
|
|
|
1220
1220
|
"references": {
|
|
1221
1221
|
"DocumentHeaderDetail": {
|
|
1222
1222
|
"location": "local",
|
|
1223
|
-
"path": "/Users/agox/
|
|
1223
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-document-editor/co-document-editor.tsx",
|
|
1224
1224
|
"id": "src/components/co-document-editor/co-document-editor.tsx::DocumentHeaderDetail"
|
|
1225
1225
|
}
|
|
1226
1226
|
}
|
|
@@ -1256,7 +1256,7 @@ export class CoDocumentEditor {
|
|
|
1256
1256
|
"references": {
|
|
1257
1257
|
"DocumentActionDetail": {
|
|
1258
1258
|
"location": "local",
|
|
1259
|
-
"path": "/Users/agox/
|
|
1259
|
+
"path": "/Users/agox/Documents/Prolibu/prolibu-cobalt/packages/core/src/components/co-document-editor/co-document-editor.tsx",
|
|
1260
1260
|
"id": "src/components/co-document-editor/co-document-editor.tsx::DocumentActionDetail"
|
|
1261
1261
|
}
|
|
1262
1262
|
}
|
|
@@ -113,6 +113,19 @@ export class CoModal {
|
|
|
113
113
|
* mismo nombre taparía `HTMLElement.draggable` con dos semánticas encimadas.
|
|
114
114
|
*/
|
|
115
115
|
this.movable = false;
|
|
116
|
+
/**
|
|
117
|
+
* Opt-in: trampa de foco accesible (QA 2026-09-24, «Generar contrato»). Con
|
|
118
|
+
* `true`, al abrir el foco ENTRA al modal (el primer `[autofocus]`; si no
|
|
119
|
+
* hay, el primer control), Tab / Shift+Tab ciclan adentro y al cerrar vuelve
|
|
120
|
+
* a donde estaba. El recorrido es compuesto: ve el contenido proyectado por
|
|
121
|
+
* los slots y el `<button>` interno de cada co-button. Default false → los
|
|
122
|
+
* consumidores actuales no cambian.
|
|
123
|
+
*
|
|
124
|
+
* La trampa es de `<co-overlay>`, así que sin overlay (`inline` o
|
|
125
|
+
* `backdrop="none"`) NO aplica: esos modos son paneles no bloqueantes y la
|
|
126
|
+
* página de atrás sigue operable.
|
|
127
|
+
*/
|
|
128
|
+
this.trapFocus = false;
|
|
116
129
|
/* `:empty` can't see across a <slot>, so slotted presence is tracked in JS */
|
|
117
130
|
this.hasFooter = false;
|
|
118
131
|
this.handleFooterSlotChange = (e) => {
|
|
@@ -228,6 +241,18 @@ export class CoModal {
|
|
|
228
241
|
if (e.key === 'Escape')
|
|
229
242
|
this.coClose.emit();
|
|
230
243
|
}
|
|
244
|
+
/**
|
|
245
|
+
* Re-promueve el modal al TOPE del top layer (QA 2026-09-24, «Generar
|
|
246
|
+
* contrato»): un drawer que se abre DESPUÉS del modal (cambio de URL,
|
|
247
|
+
* historial) pinta encima, porque en el top layer gana el último promovido.
|
|
248
|
+
* Delega en su `<co-overlay>`: sin cerrar el modal, sin eventos (`coClose` /
|
|
249
|
+
* `coAfterClose` / `coAfterOpen`), sin soltar el scroll lock y sin re-animar
|
|
250
|
+
* la entrada. No-op sin overlay (`inline`, `backdrop="none"`) o cerrado.
|
|
251
|
+
*/
|
|
252
|
+
async bringToFront() {
|
|
253
|
+
var _a, _b, _c;
|
|
254
|
+
await ((_c = (_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('co-overlay')) === null || _b === void 0 ? void 0 : _b.bringToFront) === null || _c === void 0 ? void 0 : _c.call(_b));
|
|
255
|
+
}
|
|
231
256
|
/**
|
|
232
257
|
* La posición no se persiste: cada APERTURA arranca desde la posición por
|
|
233
258
|
* defecto. El reset va al abrir y no al cerrar a propósito — reseteando al
|
|
@@ -343,7 +368,7 @@ export class CoModal {
|
|
|
343
368
|
}, part: "header", ref: (el) => (this.headerEl = el), onPointerDown: this.movable ? this.handleDragDown : undefined, onPointerMove: this.movable ? this.handleDragMove : undefined, onPointerUp: this.movable ? this.handleDragUp : undefined, onPointerCancel: this.movable ? this.handleDragCancel : undefined }, h("slot", { name: "header-leading" }), h("div", { class: "co-modal__header-text", part: "header-text" }, h("h2", { class: "co-modal__heading", part: "heading", id: "modal-heading" }, this.heading), this.description && (h("p", { class: "co-modal__description", part: "description" }, this.description))), h("slot", { name: "header-actions" }), this.closable && (h("button", { class: "co-modal__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, h("co-icon", { name: "x", size: closeIconSize })))), !this.noDividers && (h("div", { class: "co-modal__body", part: "body" }, h("slot", null))), h("div", { class: { 'co-modal__footer': true, 'co-modal__footer--empty': !this.hasFooter }, part: "footer" }, h("slot", { name: "footer", onSlotchange: this.handleFooterSlotChange })))));
|
|
344
369
|
if (!this.usesOverlay)
|
|
345
370
|
return frame;
|
|
346
|
-
return (h("co-overlay", { open: this.open, onCoClose: this.handleOverlayClick }, frame));
|
|
371
|
+
return (h("co-overlay", { open: this.open, trapFocus: this.trapFocus, onCoClose: this.handleOverlayClick }, frame));
|
|
347
372
|
}
|
|
348
373
|
static get is() { return "co-modal"; }
|
|
349
374
|
static get encapsulation() { return "shadow"; }
|
|
@@ -617,6 +642,26 @@ export class CoModal {
|
|
|
617
642
|
"reflect": true,
|
|
618
643
|
"attribute": "movable",
|
|
619
644
|
"defaultValue": "false"
|
|
645
|
+
},
|
|
646
|
+
"trapFocus": {
|
|
647
|
+
"type": "boolean",
|
|
648
|
+
"mutable": false,
|
|
649
|
+
"complexType": {
|
|
650
|
+
"original": "boolean",
|
|
651
|
+
"resolved": "boolean",
|
|
652
|
+
"references": {}
|
|
653
|
+
},
|
|
654
|
+
"required": false,
|
|
655
|
+
"optional": false,
|
|
656
|
+
"docs": {
|
|
657
|
+
"tags": [],
|
|
658
|
+
"text": "Opt-in: trampa de foco accesible (QA 2026-09-24, \u00ABGenerar contrato\u00BB). Con\n`true`, al abrir el foco ENTRA al modal (el primer `[autofocus]`; si no\nhay, el primer control), Tab / Shift+Tab ciclan adentro y al cerrar vuelve\na donde estaba. El recorrido es compuesto: ve el contenido proyectado por\nlos slots y el `<button>` interno de cada co-button. Default false \u2192 los\nconsumidores actuales no cambian.\n\nLa trampa es de `<co-overlay>`, as\u00ED que sin overlay (`inline` o\n`backdrop=\"none\"`) NO aplica: esos modos son paneles no bloqueantes y la\np\u00E1gina de atr\u00E1s sigue operable."
|
|
659
|
+
},
|
|
660
|
+
"getter": false,
|
|
661
|
+
"setter": false,
|
|
662
|
+
"reflect": true,
|
|
663
|
+
"attribute": "trap-focus",
|
|
664
|
+
"defaultValue": "false"
|
|
620
665
|
}
|
|
621
666
|
};
|
|
622
667
|
}
|
|
@@ -674,6 +719,28 @@ export class CoModal {
|
|
|
674
719
|
}
|
|
675
720
|
}];
|
|
676
721
|
}
|
|
722
|
+
static get methods() {
|
|
723
|
+
return {
|
|
724
|
+
"bringToFront": {
|
|
725
|
+
"complexType": {
|
|
726
|
+
"signature": "() => Promise<void>",
|
|
727
|
+
"parameters": [],
|
|
728
|
+
"references": {
|
|
729
|
+
"Promise": {
|
|
730
|
+
"location": "global",
|
|
731
|
+
"id": "global::Promise"
|
|
732
|
+
}
|
|
733
|
+
},
|
|
734
|
+
"return": "Promise<void>"
|
|
735
|
+
},
|
|
736
|
+
"docs": {
|
|
737
|
+
"text": "Re-promueve el modal al TOPE del top layer (QA 2026-09-24, \u00ABGenerar\ncontrato\u00BB): un drawer que se abre DESPU\u00C9S del modal (cambio de URL,\nhistorial) pinta encima, porque en el top layer gana el \u00FAltimo promovido.\nDelega en su `<co-overlay>`: sin cerrar el modal, sin eventos (`coClose` /\n`coAfterClose` / `coAfterOpen`), sin soltar el scroll lock y sin re-animar\nla entrada. No-op sin overlay (`inline`, `backdrop=\"none\"`) o cerrado.",
|
|
738
|
+
"tags": []
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
};
|
|
742
|
+
}
|
|
743
|
+
static get elementRef() { return "el"; }
|
|
677
744
|
static get watchers() {
|
|
678
745
|
return [{
|
|
679
746
|
"propName": "open",
|
|
@@ -676,6 +676,7 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
676
676
|
* @prop --co-option-list-item-gap: Separación entre los elementos de una fila (ícono, textos, acciones).
|
|
677
677
|
* @prop --co-option-list-item-min-height: Alto mínimo de fila (default 32px); no cambia el paso fijo de la lista virtual.
|
|
678
678
|
* @prop --co-option-list-item-padding-y: Padding vertical de la fila.
|
|
679
|
+
* @prop --co-option-list-item-padding-start: Padding izquierdo de la fila (default 4px).
|
|
679
680
|
* @prop --co-option-list-item-radius: Radio de la fila.
|
|
680
681
|
* @prop --co-option-list-item-bg: Fondo de la fila en reposo.
|
|
681
682
|
* @prop --co-option-list-item-ring: Sombra/anillo de la fila en reposo.
|
|
@@ -688,6 +689,7 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
688
689
|
* @prop --co-option-list-icon-tile-radius: Radio del recuadro del ícono.
|
|
689
690
|
* @prop --co-option-list-icon-tile-mix: Porcentaje del tinte del ícono en el fondo del recuadro (default 12%).
|
|
690
691
|
* @prop --co-option-list-icon-tile-ring-mix: Porcentaje del tinte en el borde del recuadro (default 0%, sin borde).
|
|
692
|
+
* @prop --co-option-list-icon-tile-glyph-size: Lado del glifo dentro del recuadro del ícono (default 14px).
|
|
691
693
|
* @prop --co-option-list-search-height: Alto del buscador (default 32px).
|
|
692
694
|
* @prop --co-option-list-search-margin: Margen del buscador.
|
|
693
695
|
* @prop --co-option-list-search-padding: Padding del buscador.
|
|
@@ -697,7 +699,10 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
697
699
|
* @prop --co-option-list-search-border-focus: Color del borde del buscador con foco.
|
|
698
700
|
* @prop --co-option-list-search-bg-focus: Fondo del buscador con foco.
|
|
699
701
|
* @prop --co-option-list-search-caret: Color del cursor de texto del buscador.
|
|
702
|
+
* @prop --co-option-list-search-font-size: Tamaño del texto del buscador (default 14px).
|
|
703
|
+
* @prop --co-option-list-search-font-weight: Peso del texto del buscador (default 500).
|
|
700
704
|
* @prop --co-option-list-group-padding-top: Padding superior del encabezado de grupo.
|
|
705
|
+
* @prop --co-option-list-group-first-padding-top: Padding superior del PRIMER encabezado de grupo (default = el de todos).
|
|
701
706
|
* @prop --co-option-list-group-padding-bottom: Padding inferior del encabezado de grupo.
|
|
702
707
|
* @prop --co-option-list-group-font-family: Familia tipográfica del encabezado de grupo (default mono).
|
|
703
708
|
* @prop --co-option-list-group-font-size: Tamaño del encabezado de grupo.
|
|
@@ -742,7 +747,10 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
742
747
|
* `-search-margin` (12px 12px 0), `-search-padding` (0 8px 0 4px),
|
|
743
748
|
* `-search-border` (1px solid border-subtle), `-search-border-focus`
|
|
744
749
|
* (border-focus), `-search-bg` (transparent), `-search-bg-focus` (= bg),
|
|
745
|
-
* `-search-radius` (radius-xs) y `-search-caret` (auto).
|
|
750
|
+
* `-search-radius` (radius-xs) y `-search-caret` (auto). Tipografía del
|
|
751
|
+
* texto/placeholder: `-search-font-size` (14px) y `-search-font-weight` (500)
|
|
752
|
+
* — paletas con filas de 13 donde el buscador a 14/500 se leía más grande que
|
|
753
|
+
* la lista. Defaults = Figma. */
|
|
746
754
|
.co-option-list__search {
|
|
747
755
|
display: flex;
|
|
748
756
|
align-items: center;
|
|
@@ -779,8 +787,8 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
779
787
|
background: transparent;
|
|
780
788
|
padding: 0;
|
|
781
789
|
font-family: var(--co-font-family-primary, 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
|
|
782
|
-
font-size: var(--co-font-size-14, 14px);
|
|
783
|
-
font-weight: 500;
|
|
790
|
+
font-size: var(--co-option-list-search-font-size, var(--co-font-size-14, 14px));
|
|
791
|
+
font-weight: var(--co-option-list-search-font-weight, 500);
|
|
784
792
|
letter-spacing: var(--co-font-letter-spacing-body, -0.03em);
|
|
785
793
|
line-height: 1;
|
|
786
794
|
color: var(--co-semantic-text-default, #1f1c1b);
|
|
@@ -837,7 +845,9 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
837
845
|
min-width: 0;
|
|
838
846
|
min-height: var(--co-option-list-item-min-height, 32px);
|
|
839
847
|
box-sizing: border-box;
|
|
840
|
-
|
|
848
|
+
/* Overridable: `--co-option-list-item-padding-start` (default 4px) — paletas con tile grande que lo centran en la
|
|
849
|
+
fila con el mismo aire a la izquierda que arriba/abajo (fila 40 + tile 24: 8 por lado = 6 + el margen 2 del tile). */
|
|
850
|
+
padding: var(--co-option-list-item-padding-y, var(--co-spacing-xs, 4px)) var(--co-spacing-sm2, 8px) var(--co-option-list-item-padding-y, var(--co-spacing-xs, 4px)) var(--co-option-list-item-padding-start, var(--co-spacing-xs, 4px));
|
|
841
851
|
/* Overridables (paletas con filas-tarjeta, Attio): `--co-option-list-item-radius` (default 8px) y
|
|
842
852
|
`--co-option-list-item-font-size` (default 14px). */
|
|
843
853
|
border-radius: var(--co-option-list-item-radius, var(--co-border-radius-xs, 8px));
|
|
@@ -905,6 +915,15 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
905
915
|
color: var(--co-option-list-icon-tint);
|
|
906
916
|
}
|
|
907
917
|
|
|
918
|
+
/* Glifo del tile: `--co-option-list-icon-tile-glyph-size` (default 14px, el `size` que el .tsx le pasa al co-icon) —
|
|
919
|
+
paletas con tile de 24 que llevan el glifo de 16 del bloque del lienzo. El `!important` es necesario porque co-icon
|
|
920
|
+
fija su ancho/alto INLINE en el estilo de su Host (mismo caso que `--co-select-caret-size` en co-select.css); sin
|
|
921
|
+
setear la variable el glifo mide lo mismo que siempre. */
|
|
922
|
+
.co-option-list__icon-tile co-icon {
|
|
923
|
+
width: var(--co-option-list-icon-tile-glyph-size, 14px) !important;
|
|
924
|
+
height: var(--co-option-list-icon-tile-glyph-size, 14px) !important;
|
|
925
|
+
}
|
|
926
|
+
|
|
908
927
|
.co-option-list__dot {
|
|
909
928
|
flex-shrink: 0;
|
|
910
929
|
width: 10px;
|
|
@@ -1075,6 +1094,13 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
|
|
|
1075
1094
|
color: var(--co-option-list-group-color, var(--co-semantic-text-default, #1f1c1b));
|
|
1076
1095
|
}
|
|
1077
1096
|
|
|
1097
|
+
/* Primer rótulo de la lista: `--co-option-list-group-first-padding-top` (default = el de todos los rótulos) — paletas
|
|
1098
|
+
con aire grande ENTRE secciones que no quieren ese mismo aire bajo su cabecera (filtro/buscador): arriba del primero
|
|
1099
|
+
ya está el padding de la lista. */
|
|
1100
|
+
.co-option-list__group:first-child {
|
|
1101
|
+
padding-top: var(--co-option-list-group-first-padding-top, var(--co-option-list-group-padding-top, var(--co-spacing-sm2, 8px)));
|
|
1102
|
+
}
|
|
1103
|
+
|
|
1078
1104
|
/* ── Clear row ───────────────────────────────────────────── */
|
|
1079
1105
|
.co-option-list__clear-row {
|
|
1080
1106
|
display: flex;
|
|
@@ -37,3 +37,10 @@
|
|
|
37
37
|
pointer-events: auto;
|
|
38
38
|
transition: opacity var(--co-motion-duration-base) var(--co-motion-ease-out);
|
|
39
39
|
}
|
|
40
|
+
|
|
41
|
+
/* bringToFront(): el hide + show que re-apila el scrim en el top layer no es una
|
|
42
|
+
apertura — nada transiciona durante el re-show (la clase se retira en el frame
|
|
43
|
+
siguiente). */
|
|
44
|
+
.co-overlay--refront {
|
|
45
|
+
transition: none !important;
|
|
46
|
+
}
|