@factorialco/f0-react 4.44.0 → 4.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ChatDocxThumbnail-B3DMs45n.js +48 -0
- package/dist/ChatPdfThumbnail-BFbYv0sb.js +38 -0
- package/dist/ChatSheetThumbnail-BvnxT-4A.js +38 -0
- package/dist/ChatTextThumbnail-yVt_iYi7.js +33 -0
- package/dist/{DocumentToolbar-D3GqxyBD.js → DocumentToolbar-BLcBoeNU.js} +5 -5
- package/dist/DocxViewer-C0K6oFym.js +68 -0
- package/dist/{F0AiProcessingOverlay-rViVqtAb.js → F0AiProcessingOverlay-BZka5wSN.js} +713 -761
- package/dist/{F0CanvasPanel-VGTPb68G.js → F0CanvasPanel-BDwye32b.js} +10679 -10600
- package/dist/{LocationMap-CdKO0X5V.js → LocationMap-NloaE37G.js} +1 -1
- package/dist/Printer-B7iDPx2r.js +54 -0
- package/dist/SheetViewer-1AsPdzFt.js +108 -0
- package/dist/{TextViewer-Dn0MDAXs.js → TextViewer-Ba0xZQdy.js} +2 -2
- package/dist/_commonjs-dynamic-modules-BpilXLfW.js +6 -0
- package/dist/ai.d.ts +34 -1
- package/dist/ai.js +2 -2
- package/dist/component-status.js +1 -1
- package/dist/{DocxViewer-BIZmtyWY.js → docx-preview-CSg41tKY.js} +971 -1034
- package/dist/experimental.d.ts +31 -4
- package/dist/experimental.js +10210 -6404
- package/dist/f0.css +1 -1
- package/dist/f0.d.ts +74 -1
- package/dist/f0.js +65853 -299
- package/dist/i18n-provider-defaults.d.ts +4 -0
- package/dist/i18n-provider-defaults.js +5 -1
- package/dist/{index-DoDUaTro.js → index-3x-af82e.js} +14657 -14408
- package/dist/index-BuP079h-.js +545 -0
- package/dist/index.css +1 -1
- package/dist/index2.css +1 -0
- package/dist/pdfWorker-XwYoO_oV.js +13118 -0
- package/dist/pdfWorker.css +1 -0
- package/dist/sheetPreview-5qeAOp0W.js +35 -0
- package/dist/styles.css +1 -1
- package/package.json +2 -1
- package/tailwind.config.ts +8 -0
- package/dist/SheetViewer-HsR5toIL.js +0 -137
- package/dist/f0-BaDuQbAV.js +0 -79441
package/dist/f0.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.grid-stack{position:relative}.grid-stack-rtl{direction:ltr}.grid-stack-rtl>.grid-stack-item{direction:rtl}.grid-stack-placeholder>.placeholder-content{background-color:#0000001a;margin:0;position:absolute;width:auto;z-index:0!important}.grid-stack>.grid-stack-item{position:absolute;padding:0;top:0;left:0;width:var(--gs-column-width);height:var(--gs-cell-height)}.grid-stack>.grid-stack-item>.grid-stack-item-content{margin:0;position:absolute;width:auto;overflow-x:hidden;overflow-y:auto}.grid-stack>.grid-stack-item.size-to-content:not(.size-to-content-max)>.grid-stack-item-content{overflow-y:hidden}.grid-stack>.grid-stack-item>.grid-stack-item-content,.grid-stack>.grid-stack-placeholder>.placeholder-content{top:var(--gs-item-margin-top);right:var(--gs-item-margin-right);bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.grid-stack-item.ui-resizable-disabled>.ui-resizable-handle,.grid-stack-item.ui-resizable-autohide>.ui-resizable-handle{display:none}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se,.grid-stack-item>.ui-resizable-sw{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');background-repeat:no-repeat;background-position:center}.grid-stack-item>.ui-resizable-ne{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-sw{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-nw{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-se{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-nw{cursor:nw-resize;width:20px;height:20px;top:var(--gs-item-margin-top);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-n{cursor:n-resize;height:10px;top:var(--gs-item-margin-top);left:25px;right:25px}.grid-stack-item>.ui-resizable-ne{cursor:ne-resize;width:20px;height:20px;top:var(--gs-item-margin-top);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-e{cursor:e-resize;width:10px;top:15px;bottom:15px;right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-se{cursor:se-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-s{cursor:s-resize;height:10px;left:25px;bottom:var(--gs-item-margin-bottom);right:25px}.grid-stack-item>.ui-resizable-sw{cursor:sw-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-w{cursor:w-resize;width:10px;top:15px;bottom:15px;left:var(--gs-item-margin-left)}.grid-stack-item.ui-draggable-dragging>.ui-resizable-handle{display:none!important}.grid-stack-item.ui-draggable-dragging{will-change:left,top}.grid-stack-item.ui-resizable-resizing{will-change:width,height}.ui-draggable-dragging,.ui-resizable-resizing{z-index:10000}.ui-draggable-dragging>.grid-stack-item-content,.ui-resizable-resizing>.grid-stack-item-content{box-shadow:1px 4px 6px #0003;opacity:.8}.grid-stack-animate,.grid-stack-animate .grid-stack-item{transition:left .3s,top .3s,height .3s,width .3s}.grid-stack-animate .grid-stack-item.ui-draggable-dragging,.grid-stack-animate .grid-stack-item.ui-resizable-resizing,.grid-stack-animate .grid-stack-item.grid-stack-placeholder{transition:left 0s,top 0s,height 0s,width 0s}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack>.grid-stack-item[gs-x="0"]{left:0%}.grid-stack-item .ui-resizable-handle{bottom:12px;right:12px;--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));overflow:hidden;border-radius:.625rem}.grid-stack-item .ui-resizable-se:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.1904 11.6904C17.4443 11.4366 17.8565 11.4366 18.1104 11.6904C18.3641 11.9443 18.3642 12.3565 18.1104 12.6104L12.6104 18.1104C12.3565 18.3642 11.9443 17.3641 11.6904 18.1104C11.4366 17.8565 11.4366 17.4443 11.6904 17.1904L17.1904 11.6904ZM16.1904 6.19043C16.4443 5.93659 16.8565 5.93659 17.1104 6.19043C17.3641 6.44427 17.3642 6.85653 17.1104 7.11035L7.11035 17.1104C6.85653 17.3642 6.44427 17.3641 6.19043 17.1104C5.93659 16.8565 5.93659 16.4443 6.19043 16.1904L16.1904 6.19043Z' fill='%23A1ABBD'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;width:100%;height:100%;background-color:#fff}.ui-draggable-dragging>.grid-stack-item-content{background-color:transparent!important;--tw-shadow: 0 0 #0000 !important;--tw-shadow-colored: 0 0 #0000 !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.ui-draggable-dragging>.grid-stack-item-content>*{transform-origin:24px 24px;--tw-scale-x: .95 !important;--tw-scale-y: .95 !important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;cursor:grabbing;border-radius:.875rem;border-color:hsl(var(--neutral-40));--tw-shadow: 0 6px 12px 0 hsl(var(--shadow)/.06),0 16px 24px -12px hsl(var(--shadow)/.05);--tw-shadow-colored: 0 6px 12px 0 var(--tw-shadow-color), 0 16px 24px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.ui.draggable-dragging{cursor:grabbing!important}.grid-stack-placeholder>.placeholder-content{border-radius:.875rem;background-color:hsl(var(--neutral-100) / .05);opacity:.5;--tw-blur: blur(2px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grid-stack-item>.grid-stack-item-content{overflow:visible!important}.ui-resizable-resizing>.grid-stack-item-content{border-radius:.875rem}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--scale-factor));width:100%;min-width:calc(180px * var(--scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--scale-factor)) calc(5px * var(--scale-factor)) #888;border-radius:calc(2px * var(--scale-factor));padding:calc(6px * var(--scale-factor));margin-left:calc(5px * var(--scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--scale-factor));padding-top:calc(2px * var(--scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::-moz-selection{background:transparent}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.textLayer .endOfContent.active{top:0}.F0PdfViewer__surface{background-color:hsl(var(--neutral-0));background-image:linear-gradient(hsl(var(--neutral-5)),hsl(var(--neutral-5)))}.F0PdfViewer__page .react-pdf__Page__canvas{display:block;position:relative;z-index:0}.F0PdfViewer__page .react-pdf__Page__textContent{z-index:1;pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;user-select:text}.F0PdfViewer__page .textLayer ::-moz-selection{background-color:hsl(var(--selected-50) / .3)}.F0PdfViewer__page .textLayer ::selection{background-color:hsl(var(--selected-50) / .3)}
|
|
1
|
+
.grid-stack{position:relative}.grid-stack-rtl{direction:ltr}.grid-stack-rtl>.grid-stack-item{direction:rtl}.grid-stack-placeholder>.placeholder-content{background-color:#0000001a;margin:0;position:absolute;width:auto;z-index:0!important}.grid-stack>.grid-stack-item{position:absolute;padding:0;top:0;left:0;width:var(--gs-column-width);height:var(--gs-cell-height)}.grid-stack>.grid-stack-item>.grid-stack-item-content{margin:0;position:absolute;width:auto;overflow-x:hidden;overflow-y:auto}.grid-stack>.grid-stack-item.size-to-content:not(.size-to-content-max)>.grid-stack-item-content{overflow-y:hidden}.grid-stack>.grid-stack-item>.grid-stack-item-content,.grid-stack>.grid-stack-placeholder>.placeholder-content{top:var(--gs-item-margin-top);right:var(--gs-item-margin-right);bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.grid-stack-item.ui-resizable-disabled>.ui-resizable-handle,.grid-stack-item.ui-resizable-autohide>.ui-resizable-handle{display:none}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se,.grid-stack-item>.ui-resizable-sw{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');background-repeat:no-repeat;background-position:center}.grid-stack-item>.ui-resizable-ne{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-sw{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-nw{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-se{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-nw{cursor:nw-resize;width:20px;height:20px;top:var(--gs-item-margin-top);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-n{cursor:n-resize;height:10px;top:var(--gs-item-margin-top);left:25px;right:25px}.grid-stack-item>.ui-resizable-ne{cursor:ne-resize;width:20px;height:20px;top:var(--gs-item-margin-top);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-e{cursor:e-resize;width:10px;top:15px;bottom:15px;right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-se{cursor:se-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-s{cursor:s-resize;height:10px;left:25px;bottom:var(--gs-item-margin-bottom);right:25px}.grid-stack-item>.ui-resizable-sw{cursor:sw-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-w{cursor:w-resize;width:10px;top:15px;bottom:15px;left:var(--gs-item-margin-left)}.grid-stack-item.ui-draggable-dragging>.ui-resizable-handle{display:none!important}.grid-stack-item.ui-draggable-dragging{will-change:left,top}.grid-stack-item.ui-resizable-resizing{will-change:width,height}.ui-draggable-dragging,.ui-resizable-resizing{z-index:10000}.ui-draggable-dragging>.grid-stack-item-content,.ui-resizable-resizing>.grid-stack-item-content{box-shadow:1px 4px 6px #0003;opacity:.8}.grid-stack-animate,.grid-stack-animate .grid-stack-item{transition:left .3s,top .3s,height .3s,width .3s}.grid-stack-animate .grid-stack-item.ui-draggable-dragging,.grid-stack-animate .grid-stack-item.ui-resizable-resizing,.grid-stack-animate .grid-stack-item.grid-stack-placeholder{transition:left 0s,top 0s,height 0s,width 0s}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack>.grid-stack-item[gs-x="0"]{left:0%}.grid-stack-item .ui-resizable-handle{bottom:12px;right:12px;--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));overflow:hidden;border-radius:.625rem}.grid-stack-item .ui-resizable-se:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.1904 11.6904C17.4443 11.4366 17.8565 11.4366 18.1104 11.6904C18.3641 11.9443 18.3642 12.3565 18.1104 12.6104L12.6104 18.1104C12.3565 18.3642 11.9443 17.3641 11.6904 18.1104C11.4366 17.8565 11.4366 17.4443 11.6904 17.1904L17.1904 11.6904ZM16.1904 6.19043C16.4443 5.93659 16.8565 5.93659 17.1104 6.19043C17.3641 6.44427 17.3642 6.85653 17.1104 7.11035L7.11035 17.1104C6.85653 17.3642 6.44427 17.3641 6.19043 17.1104C5.93659 16.8565 5.93659 16.4443 6.19043 16.1904L16.1904 6.19043Z' fill='%23A1ABBD'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;width:100%;height:100%;background-color:#fff}.ui-draggable-dragging>.grid-stack-item-content{background-color:transparent!important;--tw-shadow: 0 0 #0000 !important;--tw-shadow-colored: 0 0 #0000 !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.ui-draggable-dragging>.grid-stack-item-content>*{transform-origin:24px 24px;--tw-scale-x: .95 !important;--tw-scale-y: .95 !important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;cursor:grabbing;border-radius:.875rem;border-color:hsl(var(--neutral-40));--tw-shadow: 0 6px 12px 0 hsl(var(--shadow)/.06),0 16px 24px -12px hsl(var(--shadow)/.05);--tw-shadow-colored: 0 6px 12px 0 var(--tw-shadow-color), 0 16px 24px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.ui.draggable-dragging{cursor:grabbing!important}.grid-stack-placeholder>.placeholder-content{border-radius:.875rem;background-color:hsl(var(--neutral-100) / .05);opacity:.5;--tw-blur: blur(2px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grid-stack-item>.grid-stack-item-content{overflow:visible!important}.ui-resizable-resizing>.grid-stack-item-content{border-radius:.875rem}
|
package/dist/f0.d.ts
CHANGED
|
@@ -548,6 +548,15 @@ export declare type AiChatProviderProps = {
|
|
|
548
548
|
* @default "right"
|
|
549
549
|
*/
|
|
550
550
|
side?: "left" | "right";
|
|
551
|
+
/**
|
|
552
|
+
* Edge hosted side-panel content (`setPanelContent`) docks to. Defaults to
|
|
553
|
+
* `side`, keeping everything in one panel. Set it to the opposite edge to
|
|
554
|
+
* split them — e.g. communications: conversations dock left while the AI
|
|
555
|
+
* chat keeps its right-side panel and toggle. The two are still exclusive
|
|
556
|
+
* (opening one swaps the other out); only the main content moves during
|
|
557
|
+
* the swap, uncovering the incoming panel in place.
|
|
558
|
+
*/
|
|
559
|
+
panelContentSide?: "left" | "right";
|
|
551
560
|
/**
|
|
552
561
|
* Greeting phrase(s) shown by the welcome screen when the chat is empty.
|
|
553
562
|
* A single string renders once; an array rotates through phrases. Purely
|
|
@@ -807,6 +816,16 @@ declare type AiChatProviderReturnValue = {
|
|
|
807
816
|
setPanelContent: (content: SidePanelContent | null) => void;
|
|
808
817
|
/** Clear the custom panel content and fall back to the F0.ai chat. */
|
|
809
818
|
clearPanelContent: () => void;
|
|
819
|
+
/**
|
|
820
|
+
* Id of the hosted content that was showing when the page last unloaded,
|
|
821
|
+
* pending restoration. The panel holds a skeleton (no AI-chat flash) until
|
|
822
|
+
* the host re-mounts it via `setPanelContent`, cancels via
|
|
823
|
+
* `cancelPanelContentRestore` (content no longer accessible), or a safety
|
|
824
|
+
* timeout falls back to the AI chat.
|
|
825
|
+
*/
|
|
826
|
+
restoringPanelContentId: string | null;
|
|
827
|
+
/** Give up on restoring the persisted panel content — show the AI chat. */
|
|
828
|
+
cancelPanelContentRestore: () => void;
|
|
810
829
|
/**
|
|
811
830
|
* Edge the whole side panel docks to — the AI chat, hosted content and the
|
|
812
831
|
* canvas all follow it. Defaults to "right". Hosts flip it to "left" for a
|
|
@@ -816,6 +835,14 @@ declare type AiChatProviderReturnValue = {
|
|
|
816
835
|
panelSide: "left" | "right";
|
|
817
836
|
/** Set which edge the side panel docks to. */
|
|
818
837
|
setPanelSide: React.Dispatch<React.SetStateAction<"left" | "right">>;
|
|
838
|
+
/**
|
|
839
|
+
* Edge hosted panel content (`setPanelContent`) docks to. Defaults to
|
|
840
|
+
* `panelSide`; when it differs, the AI chat and hosted content render in
|
|
841
|
+
* separate windows, one per edge, still mutually exclusive.
|
|
842
|
+
*/
|
|
843
|
+
panelContentSide: "left" | "right";
|
|
844
|
+
/** Set which edge hosted panel content docks to. */
|
|
845
|
+
setPanelContentSide: React.Dispatch<React.SetStateAction<"left" | "right">>;
|
|
819
846
|
} & Pick<AiChatState, "agent" | "chatHeader" | "chatMessages" | "chatInput" | "disclaimer" | "resizable" | "entityRefs" | "canvasActions" | "canvasEntities" | "credits" | "employeeCredits" | "creditWarning" | "fileAttachments" | "onTranscribe"> & {
|
|
820
847
|
/** The current canvas content, or null when canvas is closed */
|
|
821
848
|
canvasContent: CanvasContent | null;
|
|
@@ -840,6 +867,8 @@ declare interface AiChatState {
|
|
|
840
867
|
enabled: boolean;
|
|
841
868
|
/** Initial edge the panel docks to. @default "right" */
|
|
842
869
|
side?: "left" | "right";
|
|
870
|
+
/** Initial edge hosted panel content docks to. Defaults to `side`. */
|
|
871
|
+
panelContentSide?: "left" | "right";
|
|
843
872
|
agent?: string;
|
|
844
873
|
initialMessage?: string | string[];
|
|
845
874
|
chatHeader?: React.ReactNode;
|
|
@@ -5209,6 +5238,10 @@ export declare const defaultTranslations: {
|
|
|
5209
5238
|
readonly addBlockedHint: "Finish filling out the last item you just added in order to add another one";
|
|
5210
5239
|
readonly addBlockedErrorHint: "Fix the errors in the existing items before adding another one";
|
|
5211
5240
|
readonly addBlockedMaxHint: "You've reached the maximum number of items";
|
|
5241
|
+
readonly removeConfirmTitle: "Remove item?";
|
|
5242
|
+
readonly removeConfirmMessage: "This item will be removed. This action cannot be undone.";
|
|
5243
|
+
readonly removeError: "Couldn't remove the item. Please try again.";
|
|
5244
|
+
readonly removeErrorTitle: "Remove failed";
|
|
5212
5245
|
};
|
|
5213
5246
|
readonly moreInformation: "More information";
|
|
5214
5247
|
readonly validation: {
|
|
@@ -6312,7 +6345,7 @@ export declare interface F0AiChatProps {
|
|
|
6312
6345
|
/**
|
|
6313
6346
|
* @experimental This is an experimental component use it at your own risk
|
|
6314
6347
|
*/
|
|
6315
|
-
export declare const F0AiChatProvider: ({ enabled, side, initialMessage, chatHeader, chatMessages, chatInput, welcomeScreenSuggestions, welcomeScreenCards, disclaimer, resizable, defaultVisualizationMode, lockVisualizationMode, historyEnabled, footer, VoiceMode, entityRefs, canvasActions, canvasEntities, credits, employeeCredits, creditWarning, fileAttachments, onTranscribe, onThumbsUp, onThumbsDown, children, agent, tracking, }: AiChatProviderProps) => JSX_2.Element;
|
|
6348
|
+
export declare const F0AiChatProvider: ({ enabled, side, panelContentSide, initialMessage, chatHeader, chatMessages, chatInput, welcomeScreenSuggestions, welcomeScreenCards, disclaimer, resizable, defaultVisualizationMode, lockVisualizationMode, historyEnabled, footer, VoiceMode, entityRefs, canvasActions, canvasEntities, credits, employeeCredits, creditWarning, fileAttachments, onTranscribe, onThumbsUp, onThumbsDown, children, agent, tracking, }: AiChatProviderProps) => JSX_2.Element;
|
|
6316
6349
|
|
|
6317
6350
|
/**
|
|
6318
6351
|
* Headless chat composer.
|
|
@@ -8896,12 +8929,20 @@ declare type F0EntitiesListField = F0BaseField & {
|
|
|
8896
8929
|
labels?: F0EntitiesListLabels;
|
|
8897
8930
|
/** Ids of the items that can be edited (matched against `item.id`) */
|
|
8898
8931
|
editableIds?: Array<string | number>;
|
|
8932
|
+
/** Ids of the items that can be removed (matched against `item.id`) */
|
|
8933
|
+
removableIds?: Array<string | number>;
|
|
8899
8934
|
/** Maximum number of rows allowed */
|
|
8900
8935
|
maxItems?: number;
|
|
8901
8936
|
/** Per-column presentation options, keyed by item-schema property name */
|
|
8902
8937
|
columns?: Record<string, F0EntitiesListColumnConfig>;
|
|
8903
8938
|
/** Custom trailing actions per row (resolved per row) */
|
|
8904
8939
|
rowActions?: (item: EntitiesListItem, index: number) => F0EntitiesListRowAction[];
|
|
8940
|
+
/** Persistence hook for removing a row (runs after the user confirms) */
|
|
8941
|
+
onRemove?: (item: EntitiesListItem) => Promise<{
|
|
8942
|
+
success: boolean;
|
|
8943
|
+
} | void>;
|
|
8944
|
+
/** Per-item confirmation copy for the remove action */
|
|
8945
|
+
confirmRemove?: (item: EntitiesListItem) => ConfirmDialogOptions;
|
|
8905
8946
|
/** Conditional rendering based on another field's value */
|
|
8906
8947
|
renderIf?: EntitiesListFieldRenderIf;
|
|
8907
8948
|
};
|
|
@@ -9033,6 +9074,16 @@ declare interface F0EntitiesListOptions<T = EntitiesListItem> {
|
|
|
9033
9074
|
* (pencil) action that opens the edit dialog.
|
|
9034
9075
|
*/
|
|
9035
9076
|
editableIds?: Array<string | number>;
|
|
9077
|
+
/**
|
|
9078
|
+
* Restricts which items can be removed, matched against each item's `id`
|
|
9079
|
+
* property. The remove counterpart to {@link editableIds}, and independent
|
|
9080
|
+
* of it — a row can be editable but not removable, or vice versa. When
|
|
9081
|
+
* omitted, every item is removable. Items without an `id` (e.g. rows just
|
|
9082
|
+
* added by the user and not yet persisted) stay removable. A row hidden from
|
|
9083
|
+
* this list shows no remove action (`list-view`) / no remove button
|
|
9084
|
+
* (`editable-table`).
|
|
9085
|
+
*/
|
|
9086
|
+
removableIds?: Array<string | number>;
|
|
9036
9087
|
/** Minimum number of rows required (defaults to 1 unless the field is optional) */
|
|
9037
9088
|
minItems?: number;
|
|
9038
9089
|
/** Maximum number of rows allowed. When reached the add button is hidden. */
|
|
@@ -9046,6 +9097,28 @@ declare interface F0EntitiesListOptions<T = EntitiesListItem> {
|
|
|
9046
9097
|
* update or remove the row.
|
|
9047
9098
|
*/
|
|
9048
9099
|
rowActions?: (item: T, index: number) => F0EntitiesListRowAction<T>[];
|
|
9100
|
+
/**
|
|
9101
|
+
* Persistence hook for removing a row — the delete counterpart to
|
|
9102
|
+
* `createFormDefinition` (add) and `updateFormDefinition` (edit). Called with
|
|
9103
|
+
* the row's item **after** the user confirms the destructive action. Return
|
|
9104
|
+
* `{ success: false }` or throw to keep the row and surface an error; return
|
|
9105
|
+
* `{ success: true }` (or nothing) to drop it from the field value.
|
|
9106
|
+
*
|
|
9107
|
+
* When omitted, removal is value-only (the row is spliced from the array with
|
|
9108
|
+
* no network call) — but the confirmation is still shown, per the CRUD
|
|
9109
|
+
* "Delete & destructive" guidance.
|
|
9110
|
+
*/
|
|
9111
|
+
onRemove?: (item: T) => Promise<{
|
|
9112
|
+
success: boolean;
|
|
9113
|
+
} | void>;
|
|
9114
|
+
/**
|
|
9115
|
+
* Per-item confirmation copy for the remove action, so callers can **name the
|
|
9116
|
+
* resource** and its scope (per the CRUD "Delete & destructive" doc). Receives
|
|
9117
|
+
* the row item and returns the confirmation dialog options
|
|
9118
|
+
* (`title`, `msg`, `type`, `confirm`/`cancel` labels). When omitted, a generic
|
|
9119
|
+
* default confirmation is shown.
|
|
9120
|
+
*/
|
|
9121
|
+
confirmRemove?: (item: T) => ConfirmDialogOptions;
|
|
9049
9122
|
}
|
|
9050
9123
|
|
|
9051
9124
|
/**
|