@mieweb/ui 0.6.1-dev.158 → 0.6.1-dev.159
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/{chunk-7PA26KBF.cjs → chunk-3AMNAMJA.cjs} +4 -2
- package/dist/chunk-3AMNAMJA.cjs.map +1 -0
- package/dist/{chunk-3SSXDWD7.js → chunk-4N72FAQW.js} +13 -11
- package/dist/chunk-4N72FAQW.js.map +1 -0
- package/dist/{chunk-UHPQYBXQ.js → chunk-7QZSJFYT.js} +3 -6
- package/dist/chunk-7QZSJFYT.js.map +1 -0
- package/dist/{chunk-2T4JU5RH.cjs → chunk-CB4JX5EJ.cjs} +3 -6
- package/dist/chunk-CB4JX5EJ.cjs.map +1 -0
- package/dist/{chunk-TXYTMU3K.js → chunk-EYJDPYOP.js} +3 -3
- package/dist/{chunk-TXYTMU3K.js.map → chunk-EYJDPYOP.js.map} +1 -1
- package/dist/{chunk-6R2ZPDN7.cjs → chunk-HMQ2PRTB.cjs} +3 -3
- package/dist/{chunk-6R2ZPDN7.cjs.map → chunk-HMQ2PRTB.cjs.map} +1 -1
- package/dist/{chunk-FADQVM4M.cjs → chunk-KX4NWZIR.cjs} +5 -5
- package/dist/{chunk-FADQVM4M.cjs.map → chunk-KX4NWZIR.cjs.map} +1 -1
- package/dist/{chunk-RXY5SD3O.js → chunk-RUGWUQ47.js} +4 -2
- package/dist/chunk-RUGWUQ47.js.map +1 -0
- package/dist/{chunk-ASLZUFH4.js → chunk-TQV5CGSA.js} +3 -3
- package/dist/{chunk-ASLZUFH4.js.map → chunk-TQV5CGSA.js.map} +1 -1
- package/dist/{chunk-LZPPH5BW.cjs → chunk-WJIANZPI.cjs} +13 -11
- package/dist/chunk-WJIANZPI.cjs.map +1 -0
- package/dist/components/RichTextEditor/index.cjs +4 -4
- package/dist/components/RichTextEditor/index.js +1 -1
- package/dist/components/SuperChat/index.cjs +61 -10
- package/dist/components/SuperChat/index.cjs.map +1 -1
- package/dist/components/SuperChat/index.js +60 -9
- package/dist/components/SuperChat/index.js.map +1 -1
- package/dist/components/SuperChat/plugins/index.cjs +7 -4
- package/dist/components/SuperChat/plugins/index.cjs.map +1 -1
- package/dist/components/SuperChat/plugins/index.js +6 -3
- package/dist/components/SuperChat/plugins/index.js.map +1 -1
- package/dist/datavis.cjs +5 -5
- package/dist/datavis.d.cts +1 -0
- package/dist/datavis.d.ts +1 -0
- package/dist/datavis.js +1 -1
- package/dist/index.cjs +52 -52
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +7 -7
- package/dist/index.js.map +1 -1
- package/dist/kerebron.cjs +15 -0
- package/dist/kerebron.cjs.map +1 -1
- package/dist/kerebron.js +15 -0
- package/dist/kerebron.js.map +1 -1
- package/dist/{nitroTableGrid-J7F6D2QA.cjs → nitroTableGrid-RQNSZQO4.cjs} +14 -11
- package/dist/nitroTableGrid-RQNSZQO4.cjs.map +1 -0
- package/dist/nitroTableGrid-W6XWRFA7.js +25 -0
- package/dist/nitroTableGrid-W6XWRFA7.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/tailwind-preset.cjs +4 -4
- package/dist/tailwind-preset.js +1 -1
- package/package.json +4 -4
- package/dist/chunk-2T4JU5RH.cjs.map +0 -1
- package/dist/chunk-3SSXDWD7.js.map +0 -1
- package/dist/chunk-7PA26KBF.cjs.map +0 -1
- package/dist/chunk-LZPPH5BW.cjs.map +0 -1
- package/dist/chunk-RXY5SD3O.js.map +0 -1
- package/dist/chunk-UHPQYBXQ.js.map +0 -1
- package/dist/nitroTableGrid-GKJAX3J4.js +0 -22
- package/dist/nitroTableGrid-GKJAX3J4.js.map +0 -1
- package/dist/nitroTableGrid-J7F6D2QA.cjs.map +0 -1
|
@@ -105,26 +105,28 @@ function mergeTableDef(tableDef, features) {
|
|
|
105
105
|
return void 0;
|
|
106
106
|
}
|
|
107
107
|
const { rowMode, ...featureFlags } = features ?? {};
|
|
108
|
+
const mergedFeatures = Object.keys(featureFlags).length > 0 ? {
|
|
109
|
+
...tableDef?.features ?? {},
|
|
110
|
+
...featureFlags
|
|
111
|
+
} : void 0;
|
|
108
112
|
return {
|
|
109
113
|
...tableDef,
|
|
110
114
|
...rowMode !== void 0 ? { rowMode } : {},
|
|
111
|
-
...
|
|
112
|
-
features: {
|
|
113
|
-
...tableDef?.features ?? {},
|
|
114
|
-
...featureFlags
|
|
115
|
-
}
|
|
116
|
-
} : {}
|
|
115
|
+
...mergedFeatures ? { features: mergedFeatures } : {}
|
|
117
116
|
};
|
|
118
117
|
}
|
|
119
118
|
function DataVisNitroSource(props) {
|
|
120
119
|
const { type, children } = props;
|
|
121
120
|
const url = props.type === "http" ? props.url : void 0;
|
|
121
|
+
const varName = props.type === "local" ? props.varName : void 0;
|
|
122
122
|
const viewRef = react.useRef(null);
|
|
123
|
-
if (viewRef.current === null || viewRef.current._dvType !== type || viewRef.current._dvUrl !== url) {
|
|
124
|
-
const source = props.type === "http" ? new datavisAce.Source({ type, url: props.url }) : new datavisAce.Source(
|
|
123
|
+
if (viewRef.current === null || viewRef.current._dvType !== type || viewRef.current._dvUrl !== url || viewRef.current._dvVarName !== varName) {
|
|
124
|
+
const source = props.type === "http" ? new datavisAce.Source({ type, url: props.url }) : new datavisAce.Source(
|
|
125
|
+
props.type === "local" && props.varName ? { type, varName: props.varName } : { type }
|
|
126
|
+
);
|
|
125
127
|
viewRef.current = Object.assign(
|
|
126
128
|
new datavisAce.ComputedView(source),
|
|
127
|
-
{ _dvType: type, _dvUrl: url }
|
|
129
|
+
{ _dvType: type, _dvUrl: url, _dvVarName: varName }
|
|
128
130
|
);
|
|
129
131
|
}
|
|
130
132
|
return /* @__PURE__ */ jsxRuntime.jsx(DataVisNitroContext.Provider, { value: viewRef.current, children });
|
|
@@ -364,5 +366,5 @@ exports.DataVisNitroContext = DataVisNitroContext;
|
|
|
364
366
|
exports.DataVisNitroGraph = DataVisNitroGraph;
|
|
365
367
|
exports.DataVisNitroGrid = DataVisNitroGrid;
|
|
366
368
|
exports.DataVisNitroSource = DataVisNitroSource;
|
|
367
|
-
//# sourceMappingURL=chunk-
|
|
368
|
-
//# sourceMappingURL=chunk-
|
|
369
|
+
//# sourceMappingURL=chunk-WJIANZPI.cjs.map
|
|
370
|
+
//# sourceMappingURL=chunk-WJIANZPI.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/DataVisNITRO/DataVisNITRO.tsx","../src/components/DataVisNITRO/DataVisNitroGraph.tsx"],"names":["createContext","determineColumns","useRef","Source","ComputedView","useView","useMemo","buildAggregateFunctions","getBuiltinGroupFunctions","jsx","DataGrid","TableRenderer","useContext","isObject","normalizeTypeInfo","normalizeFieldType","buildColumnFromField","buildResolvedColumns","buildFallbackFieldOrder","useState","useCallback","GraphView"],"mappings":"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","file":"chunk-WJIANZPI.cjs","sourcesContent":["import React, { createContext, useContext, useMemo, useRef } from 'react';\nimport { ComputedView, Source } from 'datavis-ace';\n\nimport {\n DataGrid,\n determineColumns,\n getBuiltinGroupFunctions,\n buildAggregateFunctions,\n useView,\n TableRenderer,\n type DataGridProps,\n type GridTableDef,\n type ViewInstance,\n type TableRendererProps,\n type TableColumn,\n type TableFeatures,\n type ColumnFilterConfig,\n type AggregateFunction,\n type GroupFunctionDef,\n} from '@mieweb/datavis';\n\ntype TranslateFn = (key: string, ...args: unknown[]) => string;\n\ntype DataVisNitroSourceType = 'http' | 'local' | 'file';\n\ninterface HttpDataVisNitroSourceProps {\n type: 'http';\n url: string;\n children?: React.ReactNode;\n}\n\ninterface LocalDataVisNitroSourceProps {\n type: 'local';\n varName?: string;\n children?: React.ReactNode;\n}\n\ninterface FileDataVisNitroSourceProps {\n type: 'file';\n children?: React.ReactNode;\n}\n\nexport type DataVisNitroSourceProps =\n | HttpDataVisNitroSourceProps\n | LocalDataVisNitroSourceProps\n | FileDataVisNitroSourceProps;\n\ntype TrackedViewInstance = ViewInstance & {\n _dvType: DataVisNitroSourceType;\n _dvUrl: string | undefined;\n};\n\ntype DataVisTypeInfoEntry = {\n type?: string;\n displayText?: string;\n format?: string | Record<string, unknown>;\n internalType?: string;\n};\n\ntype DataVisTypeInfoMap = Record<string, DataVisTypeInfoEntry>;\n\ntype DataVisTypeInfoOrdMap = {\n keys?: () => string[];\n get?: (key: string) => DataVisTypeInfoEntry | undefined;\n};\n\nexport type DataVisNitroColumn = string | TableColumn;\n\nexport interface DataVisNitroGridProps\n extends\n Omit<DataGridProps, 'view' | 'children' | 'allColumns'>,\n Pick<\n TableRendererProps,\n | 'formatCell'\n | 'onColumnReorder'\n | 'onColumnResize'\n | 'onHeaderContextMenu'\n | 'onRowClick'\n | 'onRowDoubleClick'\n | 'onSelectionChange'\n > {\n columns?: DataVisNitroColumn[];\n allColumns?: TableColumn[];\n features?: TableFeatures;\n filterColumns?: ColumnFilterConfig[];\n aggregateFunctions?: AggregateFunction[];\n groupFunctionDefs?: GroupFunctionDef[];\n style?: React.CSSProperties;\n trans?: TranslateFn;\n}\n\nexport const DataVisNitroContext = createContext<ViewInstance | null>(null);\n\nfunction isObject(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null;\n}\n\nfunction normalizeTypeInfo(typeInfo: unknown): DataVisTypeInfoMap {\n if (Array.isArray(typeInfo)) {\n return Object.fromEntries(\n typeInfo.filter(isObject).map((entry) => [entry.field, entry])\n ) as DataVisTypeInfoMap;\n }\n\n if (!isObject(typeInfo)) {\n return {};\n }\n\n const maybeOrdMap = typeInfo as DataVisTypeInfoOrdMap;\n if (\n typeof maybeOrdMap.keys === 'function' &&\n typeof maybeOrdMap.get === 'function'\n ) {\n return Object.fromEntries(\n maybeOrdMap.keys().map((field) => [field, maybeOrdMap.get?.(field) ?? {}])\n );\n }\n\n return Object.fromEntries(\n Object.entries(typeInfo).filter(([, value]) => isObject(value))\n ) as DataVisTypeInfoMap;\n}\n\nfunction normalizeFieldType(type: string | undefined): string | undefined {\n if (!type) return undefined;\n if (type === 'integer') return 'number';\n if (type === 'boolean') return 'string';\n return type;\n}\n\nfunction buildColumnFromField(\n field: string,\n typeInfo: DataVisTypeInfoMap\n): TableColumn {\n const info = typeInfo[field];\n const normalizedType = normalizeFieldType(info?.type);\n\n return {\n field,\n header: info?.displayText ?? field,\n sortable: true,\n filterable: true,\n resizable: true,\n reorderable: true,\n ...(normalizedType\n ? {\n typeInfo: {\n type: normalizedType,\n ...(info?.format !== undefined ? { format: info.format } : {}),\n ...(info?.internalType !== undefined\n ? { internalType: info.internalType }\n : {}),\n },\n }\n : {}),\n };\n}\n\nfunction mergeColumnWithTypeInfo(\n column: TableColumn,\n typeInfo: DataVisTypeInfoMap\n): TableColumn {\n const fallbackColumn = buildColumnFromField(column.field, typeInfo);\n return {\n ...fallbackColumn,\n ...column,\n header: column.header ?? fallbackColumn.header,\n typeInfo: column.typeInfo ?? fallbackColumn.typeInfo,\n };\n}\n\nfunction buildResolvedColumns(\n columns: DataVisNitroColumn[] | undefined,\n fallbackFields: string[],\n typeInfo: DataVisTypeInfoMap\n): TableColumn[] {\n if (columns && columns.length > 0) {\n return columns.map((column) => {\n if (typeof column === 'string') {\n return buildColumnFromField(column, typeInfo);\n }\n\n return mergeColumnWithTypeInfo(column, typeInfo);\n });\n }\n\n return fallbackFields.map((field) => buildColumnFromField(field, typeInfo));\n}\n\nfunction buildFallbackFieldOrder(\n typeInfo: DataVisTypeInfoMap,\n data: unknown[] | null\n): string[] {\n const rows = Array.isArray(data)\n ? data.filter((row): row is Record<string, unknown> => isObject(row))\n : null;\n\n const normalizedEntries = Object.fromEntries(\n Object.entries(typeInfo).map(([field, info]) => [\n field,\n {\n type: normalizeFieldType(info.type) ?? 'string',\n ...(info.displayText !== undefined\n ? { displayText: info.displayText }\n : {}),\n },\n ])\n );\n\n return determineColumns(null, normalizedEntries, rows);\n}\n\nfunction buildControlFields(\n columns: TableColumn[]\n): NonNullable<DataGridProps['controlFields']> {\n return columns.map((column) => ({\n field: column.field,\n displayName: column.header,\n type: column.typeInfo?.type,\n }));\n}\n\nfunction buildAggregateFields(\n columns: TableColumn[]\n): NonNullable<DataGridProps['aggregateFields']> {\n return columns.map((column) => ({\n field: column.field,\n displayName: column.header,\n }));\n}\n\nfunction mergeTableDef(\n tableDef: GridTableDef | undefined,\n features: TableFeatures | undefined\n): GridTableDef | undefined {\n if (!tableDef && !features) {\n return undefined;\n }\n\n const { rowMode, ...featureFlags } = features ?? {};\n const mergedFeatures =\n Object.keys(featureFlags).length > 0\n ? ({\n ...(tableDef?.features ?? {}),\n ...featureFlags,\n } as GridTableDef['features'])\n : undefined;\n\n return {\n ...tableDef,\n ...(rowMode !== undefined ? { rowMode } : {}),\n ...(mergedFeatures ? { features: mergedFeatures } : {}),\n };\n}\n\nfunction DataVisNitroSource(props: DataVisNitroSourceProps) {\n const { type, children } = props;\n const url = props.type === 'http' ? props.url : undefined;\n const varName = props.type === 'local' ? props.varName : undefined;\n const viewRef = useRef<TrackedViewInstance | null>(null);\n\n if (\n viewRef.current === null ||\n viewRef.current._dvType !== type ||\n viewRef.current._dvUrl !== url ||\n (viewRef.current as TrackedViewInstance & { _dvVarName?: string })\n ._dvVarName !== varName\n ) {\n const source =\n props.type === 'http'\n ? new Source({ type, url: props.url })\n : new Source(\n props.type === 'local' && props.varName\n ? { type, varName: props.varName }\n : { type }\n );\n\n viewRef.current = Object.assign(\n new ComputedView(source) as unknown as ViewInstance,\n { _dvType: type, _dvUrl: url, _dvVarName: varName }\n );\n }\n\n return (\n <DataVisNitroContext.Provider value={viewRef.current}>\n {children}\n </DataVisNitroContext.Provider>\n );\n}\n\nfunction DataVisNitroGridInner({\n computedView,\n columns,\n allColumns,\n features,\n filterColumns,\n controlFields,\n aggregateFields,\n aggregateFunctions,\n groupFunctionDefs,\n tableDef,\n formatCell,\n onColumnReorder,\n onColumnResize,\n onHeaderContextMenu,\n onRowClick,\n onRowDoubleClick,\n onSelectionChange,\n style,\n trans,\n ...dataGridProps\n}: DataVisNitroGridProps & { computedView: ViewInstance }) {\n const viewState = useView(computedView, false);\n\n const normalizedTypeInfo = useMemo(\n () =>\n normalizeTypeInfo(viewState.typeInfo ?? computedView?.typeInfo ?? null),\n [computedView, viewState.typeInfo]\n );\n\n const fallbackFields = useMemo(\n () =>\n buildFallbackFieldOrder(normalizedTypeInfo, viewState.data?.data ?? null),\n [normalizedTypeInfo, viewState.data?.data]\n );\n\n const resolvedAllColumns = useMemo(() => {\n if (allColumns && allColumns.length > 0) {\n return allColumns.map((column) =>\n mergeColumnWithTypeInfo(column, normalizedTypeInfo)\n );\n }\n\n return buildResolvedColumns(columns, fallbackFields, normalizedTypeInfo);\n }, [allColumns, columns, fallbackFields, normalizedTypeInfo]);\n\n const resolvedColumns = useMemo(() => {\n if (columns && columns.length > 0) {\n return buildResolvedColumns(\n columns,\n fallbackFields,\n normalizedTypeInfo\n ).filter((column) => column.visible !== false);\n }\n\n return resolvedAllColumns.filter((column) => column.visible !== false);\n }, [columns, fallbackFields, normalizedTypeInfo, resolvedAllColumns]);\n\n const effectiveAggregateFunctions = useMemo(\n () => aggregateFunctions ?? buildAggregateFunctions(),\n [aggregateFunctions]\n );\n\n const effectiveGroupFunctionDefs = useMemo(\n () =>\n groupFunctionDefs ??\n getBuiltinGroupFunctions(trans as TranslateFn | undefined),\n [groupFunctionDefs, trans]\n );\n\n const effectiveTableDef = useMemo(\n () => mergeTableDef(tableDef, features),\n [tableDef, features]\n );\n\n const aggFnLabels = useMemo(\n () =>\n Object.fromEntries(\n effectiveAggregateFunctions.map((fn) => [fn.name, fn.label])\n ),\n [effectiveAggregateFunctions]\n );\n\n return (\n <div style={style}>\n <DataGrid\n {...dataGridProps}\n view={computedView}\n tableDef={effectiveTableDef}\n allColumns={resolvedAllColumns}\n filterColumns={filterColumns ?? []}\n controlFields={controlFields ?? buildControlFields(resolvedAllColumns)}\n aggregateFields={\n aggregateFields ?? buildAggregateFields(resolvedAllColumns)\n }\n aggregateFunctions={effectiveAggregateFunctions}\n groupFunctionDefs={effectiveGroupFunctionDefs}\n >\n <TableRenderer\n viewData={viewState.data}\n columns={resolvedColumns}\n features={\n (effectiveTableDef?.features as TableFeatures | undefined) ??\n features\n }\n totalRows={viewState.totalRowCount ?? viewState.rowCount}\n loading={viewState.loading || !viewState.ready}\n formatCell={formatCell}\n aggFnLabels={aggFnLabels}\n onColumnReorder={onColumnReorder}\n onColumnResize={onColumnResize}\n onHeaderContextMenu={onHeaderContextMenu}\n onRowClick={onRowClick}\n onRowDoubleClick={onRowDoubleClick}\n onSelectionChange={onSelectionChange}\n />\n </DataGrid>\n </div>\n );\n}\n\nfunction DataVisNitroGrid(props: DataVisNitroGridProps) {\n const computedView = useContext(DataVisNitroContext);\n\n if (computedView === null) {\n return null;\n }\n\n return <DataVisNitroGridInner {...props} computedView={computedView} />;\n}\n\nDataVisNitroSource.displayName = 'DataVisNitroSource';\nDataVisNitroGrid.displayName = 'DataVisNitroGrid';\n\nexport { DataVisNitroGrid, DataVisNitroSource };\n","import React, { useCallback, useContext, useMemo, useState } from 'react';\n\nimport {\n GraphView,\n determineColumns,\n useView,\n type GraphConfig,\n type TableColumn,\n type ViewInstance,\n} from '@mieweb/datavis';\n\nimport { DataVisNitroContext } from './DataVisNITRO';\nimport type { DataVisNitroColumn } from './DataVisNITRO';\n\ntype DataVisTypeInfoEntry = {\n type?: string;\n displayText?: string;\n format?: string | Record<string, unknown>;\n internalType?: string;\n};\n\ntype DataVisTypeInfoMap = Record<string, DataVisTypeInfoEntry>;\n\ntype DataVisTypeInfoOrdMap = {\n keys?: () => string[];\n get?: (key: string) => DataVisTypeInfoEntry | undefined;\n};\n\nexport interface DataVisNitroGraphProps {\n /** Column definitions or field names to include in the graph. */\n columns?: DataVisNitroColumn[];\n /** Initial graph configuration (chart type, axes, etc.). */\n config?: Partial<GraphConfig>;\n /** Locale for formatting. */\n locale?: string;\n /** Additional CSS class name. */\n className?: string;\n /** CSS height for the container. */\n height?: string;\n /** Callback when the user changes graph configuration. */\n onConfigChange?: (config: GraphConfig) => void;\n}\n\nfunction isObject(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null;\n}\n\nfunction normalizeTypeInfo(typeInfo: unknown): DataVisTypeInfoMap {\n if (Array.isArray(typeInfo)) {\n return Object.fromEntries(\n typeInfo.filter(isObject).map((entry) => [entry.field, entry])\n ) as DataVisTypeInfoMap;\n }\n\n if (!isObject(typeInfo)) {\n return {};\n }\n\n const maybeOrdMap = typeInfo as DataVisTypeInfoOrdMap;\n if (\n typeof maybeOrdMap.keys === 'function' &&\n typeof maybeOrdMap.get === 'function'\n ) {\n return Object.fromEntries(\n maybeOrdMap.keys().map((field) => [field, maybeOrdMap.get?.(field) ?? {}])\n );\n }\n\n return Object.fromEntries(\n Object.entries(typeInfo).filter(([, value]) => isObject(value))\n ) as DataVisTypeInfoMap;\n}\n\nfunction normalizeFieldType(type: string | undefined): string | undefined {\n if (!type) return undefined;\n if (type === 'integer') return 'number';\n if (type === 'boolean') return 'string';\n return type;\n}\n\nfunction buildColumnFromField(\n field: string,\n typeInfo: DataVisTypeInfoMap\n): TableColumn {\n const info = typeInfo[field];\n const normalizedType = normalizeFieldType(info?.type);\n\n return {\n field,\n header: info?.displayText ?? field,\n sortable: true,\n filterable: true,\n resizable: true,\n reorderable: true,\n ...(normalizedType\n ? {\n typeInfo: {\n type: normalizedType,\n ...(info?.format !== undefined ? { format: info.format } : {}),\n ...(info?.internalType !== undefined\n ? { internalType: info.internalType }\n : {}),\n },\n }\n : {}),\n };\n}\n\nfunction buildResolvedColumns(\n columns: DataVisNitroColumn[] | undefined,\n fallbackFields: string[],\n typeInfo: DataVisTypeInfoMap\n): TableColumn[] {\n if (columns && columns.length > 0) {\n return columns.map((column) => {\n if (typeof column === 'string') {\n return buildColumnFromField(column, typeInfo);\n }\n return column;\n });\n }\n\n return fallbackFields.map((field) => buildColumnFromField(field, typeInfo));\n}\n\nfunction buildFallbackFieldOrder(\n typeInfo: DataVisTypeInfoMap,\n data: unknown[] | null\n): string[] {\n const rows = Array.isArray(data)\n ? data.filter((row): row is Record<string, unknown> => isObject(row))\n : null;\n\n const normalizedEntries = Object.fromEntries(\n Object.entries(typeInfo).map(([field, info]) => [\n field,\n {\n type: normalizeFieldType(info.type) ?? 'string',\n ...(info.displayText !== undefined\n ? { displayText: info.displayText }\n : {}),\n },\n ])\n );\n\n return determineColumns(null, normalizedEntries, rows);\n}\n\nfunction DataVisNitroGraphInner({\n computedView,\n columns,\n config: initialConfig,\n locale,\n className,\n height,\n onConfigChange,\n}: DataVisNitroGraphProps & { computedView: ViewInstance }) {\n const viewState = useView(computedView);\n const [liveConfig, setLiveConfig] = useState<\n Partial<GraphConfig> | undefined\n >(initialConfig);\n\n const handleConfigChange = useCallback(\n (newConfig: GraphConfig) => {\n setLiveConfig(newConfig);\n onConfigChange?.(newConfig);\n },\n [onConfigChange]\n );\n\n const normalizedTypeInfo = useMemo(\n () =>\n normalizeTypeInfo(viewState.typeInfo ?? computedView?.typeInfo ?? null),\n [computedView, viewState.typeInfo]\n );\n\n const fallbackFields = useMemo(\n () =>\n buildFallbackFieldOrder(normalizedTypeInfo, viewState.data?.data ?? null),\n [normalizedTypeInfo, viewState.data?.data]\n );\n\n const resolvedColumns = useMemo(\n () => buildResolvedColumns(columns, fallbackFields, normalizedTypeInfo),\n [columns, fallbackFields, normalizedTypeInfo]\n );\n\n return (\n <div style={height ? { height } : undefined}>\n <GraphView\n viewData={viewState.data}\n columns={resolvedColumns}\n config={liveConfig}\n locale={locale}\n className={className}\n onConfigChange={handleConfigChange}\n />\n </div>\n );\n}\n\nfunction DataVisNitroGraph(props: DataVisNitroGraphProps) {\n const computedView = useContext(DataVisNitroContext);\n\n if (computedView === null) {\n return null;\n }\n\n return <DataVisNitroGraphInner {...props} computedView={computedView} />;\n}\n\nDataVisNitroGraph.displayName = 'DataVisNitroGraph';\n\nexport { DataVisNitroGraph };\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkHMQ2PRTB_cjs = require('../../chunk-HMQ2PRTB.cjs');
|
|
4
4
|
require('../../chunk-OXYFTCRW.cjs');
|
|
5
5
|
require('../../chunk-H4T5T65N.cjs');
|
|
6
6
|
require('../../chunk-A2QVQF54.cjs');
|
|
@@ -14,15 +14,15 @@ require('../../chunk-OR5DRJCW.cjs');
|
|
|
14
14
|
|
|
15
15
|
Object.defineProperty(exports, "RichTextEditor", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunkHMQ2PRTB_cjs.RichTextEditor; }
|
|
18
18
|
});
|
|
19
19
|
Object.defineProperty(exports, "convertAngleBracketsToMustache", {
|
|
20
20
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
21
|
+
get: function () { return chunkHMQ2PRTB_cjs.convertAngleBracketsToMustache; }
|
|
22
22
|
});
|
|
23
23
|
Object.defineProperty(exports, "processDictation", {
|
|
24
24
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
25
|
+
get: function () { return chunkHMQ2PRTB_cjs.processDictation; }
|
|
26
26
|
});
|
|
27
27
|
Object.defineProperty(exports, "isHtmlEmpty", {
|
|
28
28
|
enumerable: true,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { RichTextEditor, convertAngleBracketsToMustache, processDictation } from '../../chunk-
|
|
1
|
+
export { RichTextEditor, convertAngleBracketsToMustache, processDictation } from '../../chunk-EYJDPYOP.js';
|
|
2
2
|
import '../../chunk-BX6BTDTR.js';
|
|
3
3
|
import '../../chunk-M7BLVBL4.js';
|
|
4
4
|
import '../../chunk-ZVSW2KS6.js';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var chunkJFLC7SHM_cjs = require('../../chunk-JFLC7SHM.cjs');
|
|
4
4
|
var chunkIWDQPSJN_cjs = require('../../chunk-IWDQPSJN.cjs');
|
|
5
|
-
var
|
|
5
|
+
var chunkCB4JX5EJ_cjs = require('../../chunk-CB4JX5EJ.cjs');
|
|
6
6
|
var chunkH4T5T65N_cjs = require('../../chunk-H4T5T65N.cjs');
|
|
7
7
|
require('../../chunk-LOTMAKUG.cjs');
|
|
8
8
|
require('../../chunk-MSRU3XBH.cjs');
|
|
@@ -126,7 +126,7 @@ function baseComponents() {
|
|
|
126
126
|
{
|
|
127
127
|
...props,
|
|
128
128
|
className: chunkOR5DRJCW_cjs.cn(
|
|
129
|
-
"text-primary-
|
|
129
|
+
"text-primary-800 hover:text-primary-900 dark:text-primary-300 underline underline-offset-2",
|
|
130
130
|
props.className
|
|
131
131
|
),
|
|
132
132
|
target: props.target ?? "_blank",
|
|
@@ -138,6 +138,7 @@ function baseComponents() {
|
|
|
138
138
|
"pre",
|
|
139
139
|
{
|
|
140
140
|
...props,
|
|
141
|
+
tabIndex: 0,
|
|
141
142
|
className: chunkOR5DRJCW_cjs.cn(
|
|
142
143
|
"overflow-x-auto rounded-lg bg-neutral-900 p-3 text-sm text-neutral-100 dark:bg-neutral-950",
|
|
143
144
|
props.className
|
|
@@ -151,12 +152,24 @@ function baseComponents() {
|
|
|
151
152
|
{
|
|
152
153
|
...props,
|
|
153
154
|
className: chunkOR5DRJCW_cjs.cn(
|
|
154
|
-
!isBlock && "rounded bg-neutral-200 px-1 py-0.5 text-[0.85em] dark:bg-neutral-700",
|
|
155
|
+
!isBlock && "rounded bg-neutral-200 px-1 py-0.5 text-[0.85em] text-neutral-800 dark:bg-neutral-700 dark:text-neutral-100",
|
|
155
156
|
props.className
|
|
156
157
|
)
|
|
157
158
|
}
|
|
158
159
|
);
|
|
159
160
|
},
|
|
161
|
+
input: ({ node: _node, ...props }) => {
|
|
162
|
+
if (props.type === "checkbox") {
|
|
163
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
164
|
+
"input",
|
|
165
|
+
{
|
|
166
|
+
...props,
|
|
167
|
+
"aria-label": props["aria-label"] ?? (props["aria-labelledby"] ? void 0 : "Task list item")
|
|
168
|
+
}
|
|
169
|
+
);
|
|
170
|
+
}
|
|
171
|
+
return /* @__PURE__ */ jsxRuntime.jsx("input", { ...props });
|
|
172
|
+
},
|
|
160
173
|
table: ({ node: _node, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "my-2 overflow-x-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
161
174
|
"table",
|
|
162
175
|
{
|
|
@@ -337,6 +350,43 @@ function lastMessageByTime(thread) {
|
|
|
337
350
|
}
|
|
338
351
|
return latest;
|
|
339
352
|
}
|
|
353
|
+
function parseHexColor(value) {
|
|
354
|
+
const hex = value.trim();
|
|
355
|
+
if (!/^#([0-9a-f]{3}|[0-9a-f]{6})$/i.test(hex)) return null;
|
|
356
|
+
const normalized = hex.length === 4 ? "#" + [...hex.slice(1)].map((char) => char + char).join("") : hex;
|
|
357
|
+
return [1, 3, 5].map(
|
|
358
|
+
(start) => parseInt(normalized.slice(start, start + 2), 16)
|
|
359
|
+
);
|
|
360
|
+
}
|
|
361
|
+
function relativeLuminanceChannel(channel) {
|
|
362
|
+
const normalized = channel / 255;
|
|
363
|
+
return normalized <= 0.03928 ? normalized / 12.92 : ((normalized + 0.055) / 1.055) ** 2.4;
|
|
364
|
+
}
|
|
365
|
+
function relativeLuminance(value) {
|
|
366
|
+
const rgb = parseHexColor(value);
|
|
367
|
+
if (!rgb) return null;
|
|
368
|
+
const [red, green, blue] = rgb;
|
|
369
|
+
return 0.2126 * relativeLuminanceChannel(red) + 0.7152 * relativeLuminanceChannel(green) + 0.0722 * relativeLuminanceChannel(blue);
|
|
370
|
+
}
|
|
371
|
+
function contrastRatio(foreground, background) {
|
|
372
|
+
const foregroundLuminance = relativeLuminance(foreground);
|
|
373
|
+
const backgroundLuminance = relativeLuminance(background);
|
|
374
|
+
if (foregroundLuminance === null || backgroundLuminance === null) return null;
|
|
375
|
+
const lighter = Math.max(foregroundLuminance, backgroundLuminance);
|
|
376
|
+
const darker = Math.min(foregroundLuminance, backgroundLuminance);
|
|
377
|
+
return (lighter + 0.05) / (darker + 0.05);
|
|
378
|
+
}
|
|
379
|
+
function minimumContrastRatio(value, backgrounds) {
|
|
380
|
+
const contrasts = backgrounds.map((background) => contrastRatio(value, background)).filter((contrast) => contrast !== null);
|
|
381
|
+
if (contrasts.length !== backgrounds.length) return null;
|
|
382
|
+
return Math.min(...contrasts);
|
|
383
|
+
}
|
|
384
|
+
function accessibleAccentTextColor(value) {
|
|
385
|
+
if (!value) return void 0;
|
|
386
|
+
const contrast = minimumContrastRatio(value, ["#f5f5f5", "#262626"]);
|
|
387
|
+
if (contrast === null) return value;
|
|
388
|
+
return contrast < 4.5 ? void 0 : value;
|
|
389
|
+
}
|
|
340
390
|
function ParticipantAvatar({
|
|
341
391
|
participant
|
|
342
392
|
}) {
|
|
@@ -578,6 +628,7 @@ var MessageRow = React4__namespace.memo(function MessageRow2({
|
|
|
578
628
|
);
|
|
579
629
|
}
|
|
580
630
|
const accent = participant?.color;
|
|
631
|
+
const accentTextColor = accessibleAccentTextColor(accent);
|
|
581
632
|
const authorName = participant?.name ?? "Unknown";
|
|
582
633
|
const canEdit = !!editable && isSelf && !streaming && typeof message.text === "string" && !message.content?.length;
|
|
583
634
|
const startEdit = () => {
|
|
@@ -658,17 +709,17 @@ ${block.text}
|
|
|
658
709
|
"span",
|
|
659
710
|
{
|
|
660
711
|
className: "text-xs font-medium",
|
|
661
|
-
style:
|
|
712
|
+
style: accentTextColor ? { color: accentTextColor } : void 0,
|
|
662
713
|
children: authorName
|
|
663
714
|
}
|
|
664
715
|
),
|
|
665
|
-
participant?.role && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] text-neutral-400", children: participant.role }),
|
|
666
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] text-neutral-400", children: formatTime(message.time) }),
|
|
716
|
+
participant?.role && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] text-neutral-500 dark:text-neutral-400", children: participant.role }),
|
|
717
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] text-neutral-500 dark:text-neutral-400", children: formatTime(message.time) }),
|
|
667
718
|
message.editedAt && /* @__PURE__ */ jsxRuntime.jsx(
|
|
668
719
|
"span",
|
|
669
720
|
{
|
|
670
721
|
"data-slot": "superchat-edited-indicator",
|
|
671
|
-
className: "text-[10px] text-neutral-400",
|
|
722
|
+
className: "text-[10px] text-neutral-500 dark:text-neutral-400",
|
|
672
723
|
title: `Edited ${formatTime(message.editedAt)}`,
|
|
673
724
|
children: "(edited)"
|
|
674
725
|
}
|
|
@@ -711,7 +762,7 @@ ${block.text}
|
|
|
711
762
|
"data-slot": "superchat-bubble",
|
|
712
763
|
variant: isSelf ? "user" : "assistant",
|
|
713
764
|
hasError: message.status === "error",
|
|
714
|
-
className: "text-sm",
|
|
765
|
+
className: "text-sm has-[[data-slot=superchat-nitro-table]]:w-full has-[[data-slot=superchat-nitro-table]]:max-w-full",
|
|
715
766
|
children: isEditing ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
716
767
|
"div",
|
|
717
768
|
{
|
|
@@ -1113,7 +1164,7 @@ function SuperChat({
|
|
|
1113
1164
|
}
|
|
1114
1165
|
),
|
|
1115
1166
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1116
|
-
|
|
1167
|
+
chunkCB4JX5EJ_cjs.MessageComposer,
|
|
1117
1168
|
{
|
|
1118
1169
|
onSend: handleComposerSend,
|
|
1119
1170
|
disabled: readOnly,
|
|
@@ -1192,7 +1243,7 @@ function SuperChatConversations({
|
|
|
1192
1243
|
children: [
|
|
1193
1244
|
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex-1 truncate", children: [
|
|
1194
1245
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "block truncate font-medium", children: c.title }),
|
|
1195
|
-
last?.text && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "block truncate text-xs text-neutral-400", children: last.text })
|
|
1246
|
+
last?.text && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "block truncate text-xs text-neutral-600 dark:text-neutral-400", children: last.text })
|
|
1196
1247
|
] }),
|
|
1197
1248
|
!!c.unread && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "bg-primary-600 ml-1 inline-flex h-5 min-w-5 items-center justify-center rounded-full px-1.5 text-[10px] font-semibold text-white", children: [
|
|
1198
1249
|
c.unread,
|