| <script lang="ts"> |
| let className = ""; |
| export { className as class }; |
| export let classes: Record<string, boolean> = {}; |
| let styleName = ""; |
| export { styleName as style }; |
| export let styles: Record<string, string | number | undefined> = {}; |
| export let tooltip: string | undefined = undefined; |
| |
| export let scrollableX = false; |
| export let scrollableY = false; |
| |
| let self: HTMLDivElement | undefined; |
| |
| $: extraClasses = Object.entries(classes) |
| .flatMap(([className, stateName]) => (stateName ? [className] : [])) |
| .join(" "); |
| $: extraStyles = Object.entries(styles) |
| .flatMap((styleAndValue) => (styleAndValue[1] !== undefined ? [`${styleAndValue[0]}: ${styleAndValue[1]};`] : [])) |
| .join(" "); |
| |
| export function div(): HTMLDivElement | undefined { |
| return self; |
| } |
| </script> |
|
|
| |
| <div |
| data-scrollable-x={scrollableX ? "" : undefined} |
| data-scrollable-y={scrollableY ? "" : undefined} |
| class={`layout-row ${className} ${extraClasses}`.trim()} |
| class:scrollable-x={scrollableX} |
| class:scrollable-y={scrollableY} |
| style={`${styleName} ${extraStyles}`.trim() || undefined} |
| title={tooltip} |
| bind:this={self} |
| on:auxclick |
| on:blur |
| on:click |
| on:dblclick |
| on:dragend |
| on:dragleave |
| on:dragover |
| on:dragstart |
| on:drop |
| on:mouseup |
| on:pointerdown |
| on:pointerenter |
| on:pointerleave |
| on:scroll |
| {...$$restProps} |
| > |
| <slot /> |
| </div> |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| <style lang="scss" global> |
| .layout-row { |
| display: flex; |
| flex-direction: row; |
| flex-grow: 1; |
| } |
| </style> |
|
|