intergalactic 15.49.1-prerelease-0cc3d204 → 15.50.0-prerelease-950f60a4
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/CHANGELOG.md +7 -1
- package/accordion/index.d.ts +14 -3
- package/accordion/lib/cjs/Accordion.js +5 -1
- package/accordion/lib/cjs/Accordion.js.map +1 -1
- package/accordion/lib/cjs/index.d.js.map +1 -1
- package/accordion/lib/es6/Accordion.js +3 -0
- package/accordion/lib/es6/Accordion.js.map +1 -1
- package/accordion/lib/es6/index.d.js.map +1 -1
- package/accordion/lib/types/index.d.ts +14 -3
- package/components.json +1 -1
- package/core/Component.d.ts +14 -2
- package/core/lib/cjs/Component.js +5 -1
- package/core/lib/cjs/Component.js.map +1 -1
- package/core/lib/cjs/index.js.map +1 -1
- package/core/lib/es6/Component.js +3 -0
- package/core/lib/es6/Component.js.map +1 -1
- package/core/lib/es6/index.js.map +1 -1
- package/core/lib/types/Component.d.ts +14 -2
- package/d3-chart/Plot.d.ts +1 -1
- package/d3-chart/RadialTree.d.ts +2 -2
- package/d3-chart/Tooltip.d.ts +5 -1
- package/d3-chart/lib/cjs/RadialTree.js.map +1 -1
- package/d3-chart/lib/cjs/types/Plot.d.js.map +1 -1
- package/d3-chart/lib/cjs/types/Tooltip.d.js.map +1 -1
- package/d3-chart/lib/es6/RadialTree.js.map +1 -1
- package/d3-chart/lib/es6/types/Plot.d.js.map +1 -1
- package/d3-chart/lib/es6/types/Tooltip.d.js.map +1 -1
- package/d3-chart/lib/types/Plot.d.ts +1 -1
- package/d3-chart/lib/types/RadialTree.d.ts +2 -2
- package/d3-chart/lib/types/Tooltip.d.ts +5 -1
- package/data-table/DataTable.d.ts +71 -7
- package/data-table/lib/cjs/DataTable.js +13 -1
- package/data-table/lib/cjs/DataTable.js.map +1 -1
- package/data-table/lib/es6/DataTable.js +9 -0
- package/data-table/lib/es6/DataTable.js.map +1 -1
- package/data-table/lib/types/DataTable.d.ts +71 -7
- package/input-mask/InputMask.d.ts +1 -1
- package/input-mask/lib/types/InputMask.d.ts +1 -1
- package/input-tags/InputTags.d.ts +1 -1
- package/input-tags/lib/types/InputTags.d.ts +1 -1
- package/package.json +1 -1
- package/pills/index.d.ts +14 -3
- package/pills/lib/cjs/Pills.js +5 -1
- package/pills/lib/cjs/Pills.js.map +1 -1
- package/pills/lib/cjs/index.d.js.map +1 -1
- package/pills/lib/cjs/index.js +14 -2
- package/pills/lib/cjs/index.js.map +1 -1
- package/pills/lib/es6/Pills.js +3 -0
- package/pills/lib/es6/Pills.js.map +1 -1
- package/pills/lib/es6/index.d.js.map +1 -1
- package/pills/lib/es6/index.js +1 -0
- package/pills/lib/es6/index.js.map +1 -1
- package/pills/lib/types/index.d.ts +14 -3
- package/product-head/Info.d.ts +1 -1
- package/product-head/ProductHead.d.ts +1 -1
- package/product-head/Title.d.ts +1 -1
- package/product-head/lib/types/Info.d.ts +1 -1
- package/product-head/lib/types/ProductHead.d.ts +1 -1
- package/product-head/lib/types/Title.d.ts +1 -1
- package/radio/index.d.ts +14 -3
- package/radio/lib/cjs/Radio.js +19 -14
- package/radio/lib/cjs/Radio.js.map +1 -1
- package/radio/lib/cjs/index.d.js.map +1 -1
- package/radio/lib/es6/Radio.js +17 -14
- package/radio/lib/es6/Radio.js.map +1 -1
- package/radio/lib/es6/index.d.js.map +1 -1
- package/radio/lib/types/index.d.ts +14 -3
- package/select/index.d.ts +15 -5
- package/select/lib/cjs/Select.js +5 -1
- package/select/lib/cjs/Select.js.map +1 -1
- package/select/lib/cjs/index.d.js.map +1 -1
- package/select/lib/cjs/index.js +16 -1
- package/select/lib/cjs/index.js.map +1 -1
- package/select/lib/es6/Select.js +3 -0
- package/select/lib/es6/Select.js.map +1 -1
- package/select/lib/es6/index.d.js.map +1 -1
- package/select/lib/es6/index.js +1 -0
- package/select/lib/es6/index.js.map +1 -1
- package/select/lib/types/index.d.ts +15 -5
- package/slider/index.d.ts +14 -3
- package/slider/lib/cjs/Slider.js +5 -1
- package/slider/lib/cjs/Slider.js.map +1 -1
- package/slider/lib/cjs/index.d.js.map +1 -1
- package/slider/lib/cjs/index.js +14 -2
- package/slider/lib/cjs/index.js.map +1 -1
- package/slider/lib/es6/Slider.js +3 -0
- package/slider/lib/es6/Slider.js.map +1 -1
- package/slider/lib/es6/index.d.js.map +1 -1
- package/slider/lib/es6/index.js +1 -0
- package/slider/lib/es6/index.js.map +1 -1
- package/slider/lib/types/index.d.ts +14 -3
- package/tab-line/index.d.ts +14 -3
- package/tab-line/lib/cjs/TabLine.js +5 -1
- package/tab-line/lib/cjs/TabLine.js.map +1 -1
- package/tab-line/lib/cjs/index.d.js.map +1 -1
- package/tab-line/lib/cjs/index.js +14 -2
- package/tab-line/lib/cjs/index.js.map +1 -1
- package/tab-line/lib/es6/TabLine.js +3 -0
- package/tab-line/lib/es6/TabLine.js.map +1 -1
- package/tab-line/lib/es6/index.d.js.map +1 -1
- package/tab-line/lib/es6/index.js +1 -0
- package/tab-line/lib/es6/index.js.map +1 -1
- package/tab-line/lib/types/index.d.ts +14 -3
- package/tab-panel/index.d.ts +14 -3
- package/tab-panel/lib/cjs/TabPanel.js +5 -1
- package/tab-panel/lib/cjs/TabPanel.js.map +1 -1
- package/tab-panel/lib/cjs/index.d.js.map +1 -1
- package/tab-panel/lib/cjs/index.js +14 -2
- package/tab-panel/lib/cjs/index.js.map +1 -1
- package/tab-panel/lib/es6/TabPanel.js +3 -0
- package/tab-panel/lib/es6/TabPanel.js.map +1 -1
- package/tab-panel/lib/es6/index.d.js.map +1 -1
- package/tab-panel/lib/es6/index.js +1 -0
- package/tab-panel/lib/es6/index.js.map +1 -1
- package/tab-panel/lib/types/index.d.ts +14 -3
- package/wizard/index.d.ts +14 -3
- package/wizard/lib/cjs/Wizard.js +5 -1
- package/wizard/lib/cjs/Wizard.js.map +1 -1
- package/wizard/lib/cjs/index.d.js.map +1 -1
- package/wizard/lib/cjs/index.js +14 -2
- package/wizard/lib/cjs/index.js.map +1 -1
- package/wizard/lib/es6/Wizard.js +3 -0
- package/wizard/lib/es6/Wizard.js.map +1 -1
- package/wizard/lib/es6/index.d.js.map +1 -1
- package/wizard/lib/es6/index.js +1 -0
- package/wizard/lib/es6/index.js.map +1 -1
- package/wizard/lib/types/index.d.ts +14 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Plot.d.js","names":[],"sources":["../../../src/types/Plot.d.ts"],"sourcesContent":["import { BoxProps } from '@semcore/flex-box';\nimport { UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Context } from './context';\nimport { DataStructureHints } from './a11y/hints';\n\n/** @deprecated */\nexport interface IPlotProps extends PlotProps, UnknownProperties {}\nexport type PlotProps = Context &\n BoxProps & {\n /** Width of the svg element\n * @default 0*/\n width?: number;\n /** Height of the svg element\n * @default 0*/\n height?: number;\n /** Human readable chart name (e.g \"Last market trends\") */\n label?: string;\n /**\n * Locale for displaying the days of a week and months, to be transferred to `Intl`\n * @default en\n * */\n locale?: NavigatorLanguage['language'];\n /**\n * Optional container for data hints (use it if you have a legend component upper in tree)\n */\n dataHints?: DataStructureHints;\n /** Optional prop to tune up alt text generating for charts */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /** @deprecated */\n eventEmitter?: unknown;\n };\n\nexport type PlotSummarizerConfig = {\n /** Totally disable automatic data summarization */\n disable?: boolean;\n /** Disable automatic data summarization and use provided text */\n override?: string;\n /** Tuning up time series trends analyzing. Represents angle tangens of time series change of different strength */\n trendTangens?: {\n /** Angle tangens of time series that have meaningful trending change\n * @default 1/15\n */\n static?: number;\n /** Angle tangens of time series that have weak trending change\n * @default 1/10\n */\n weak?: number;\n /** Angle tangens of time series that have medium trending change\n * @default 1/5\n */\n medium?: number;\n /** Angle tangens of time series that have strong trending change\n * @default Infinity\n */\n strong?: number;\n };\n /** Tuning up time series local trends detection based on moving averages */\n movingAverage?: {\n /** Frame size of long moving average\n * @default Math.sqrt(data.length)\n */\n longSize?: number;\n /** Frame size of short moving average\n * @default Math.sqrt(data.length)/2\n */\n shortSize?: number;\n /** Absolute difference between values on moving averages crossing to\n * be handled as local trend change.\n * @default StandardDeviation/10\n */\n notableDiff?: number;\n };\n /** The way data to be interpreted as. By default is based on used used Plot elements and data structure.\n */\n dataType?: 'time-series' | 'points-cloud' | 'values-set';\n /** Grid size to split data of point clouds into clusters.\n */\n clustersGridSize?: number;\n /** Limits some output lists in chart alt text\n * @default 100\n * **/\n maxListSymbols?: number;\n /** Always add time to dates in chart alt text **/\n datesWithTime?: boolean;\n /** Described clusters count before text \"and X more\"\n * @default false\n * **/\n clustersLimit?: number;\n /** Described values count before text \"and X more\"\n * @default false\n * **/\n valuesLimit?: number;\n /** Described grouped value groups count before text \"and X more\"\n * @default false\n * **/\n groupsLimit?: number;\n /** Additional field for extra text description to the data\n * **/\n additionalFields?: string[];\n};\n\n/** @deprecated */\nexport type MapProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?:\n | ((props: Props & Ctx, handlers: UCProps) => Props | React.PropsWithChildren)\n | React.ReactNode;\n};\n\nexport type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = BaseTag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;\n\ndeclare const Plot: IntergalacticD3Component<'svg', PlotProps, Context>;\nexport default Plot;\n"],"mappings":""}
|
1
|
+
{"version":3,"file":"Plot.d.js","names":[],"sources":["../../../src/types/Plot.d.ts"],"sourcesContent":["import { BoxProps } from '@semcore/flex-box';\nimport { UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Context } from './context';\nimport { DataStructureHints } from './a11y/hints';\n\n/** @deprecated */\nexport interface IPlotProps extends PlotProps, UnknownProperties {}\nexport type PlotProps = Context &\n BoxProps & {\n /** Width of the svg element\n * @default 0*/\n width?: number;\n /** Height of the svg element\n * @default 0*/\n height?: number;\n /** Human readable chart name (e.g \"Last market trends\") */\n label?: string;\n /**\n * Locale for displaying the days of a week and months, to be transferred to `Intl`\n * @default en\n * */\n locale?: NavigatorLanguage['language'];\n /**\n * Optional container for data hints (use it if you have a legend component upper in tree)\n */\n dataHints?: DataStructureHints;\n /** Optional prop to tune up alt text generating for charts */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /** @deprecated */\n eventEmitter?: unknown;\n };\n\nexport type PlotSummarizerConfig = {\n /** Totally disable automatic data summarization */\n disable?: boolean;\n /** Disable automatic data summarization and use provided text */\n override?: string;\n /** Tuning up time series trends analyzing. Represents angle tangens of time series change of different strength */\n trendTangens?: {\n /** Angle tangens of time series that have meaningful trending change\n * @default 1/15\n */\n static?: number;\n /** Angle tangens of time series that have weak trending change\n * @default 1/10\n */\n weak?: number;\n /** Angle tangens of time series that have medium trending change\n * @default 1/5\n */\n medium?: number;\n /** Angle tangens of time series that have strong trending change\n * @default Infinity\n */\n strong?: number;\n };\n /** Tuning up time series local trends detection based on moving averages */\n movingAverage?: {\n /** Frame size of long moving average\n * @default Math.sqrt(data.length)\n */\n longSize?: number;\n /** Frame size of short moving average\n * @default Math.sqrt(data.length)/2\n */\n shortSize?: number;\n /** Absolute difference between values on moving averages crossing to\n * be handled as local trend change.\n * @default StandardDeviation/10\n */\n notableDiff?: number;\n };\n /** The way data to be interpreted as. By default is based on used used Plot elements and data structure.\n */\n dataType?: 'time-series' | 'points-cloud' | 'values-set';\n /** Grid size to split data of point clouds into clusters.\n */\n clustersGridSize?: number;\n /** Limits some output lists in chart alt text\n * @default 100\n * **/\n maxListSymbols?: number;\n /** Always add time to dates in chart alt text **/\n datesWithTime?: boolean;\n /** Described clusters count before text \"and X more\"\n * @default false\n * **/\n clustersLimit?: number;\n /** Described values count before text \"and X more\"\n * @default false\n * **/\n valuesLimit?: number;\n /** Described grouped value groups count before text \"and X more\"\n * @default false\n * **/\n groupsLimit?: number;\n /** Additional field for extra text description to the data\n * **/\n additionalFields?: string[];\n};\n\n/** @deprecated */\nexport type MapProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?:\n | ((props: Props & Ctx, handlers: UCProps) => Props | React.PropsWithChildren)\n | React.ReactNode;\n};\n\nexport type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = BaseTag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag, BaseTag, Props>;\n\ndeclare const Plot: IntergalacticD3Component<'svg', PlotProps, Context>;\nexport default Plot;\n"],"mappings":""}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Tooltip.d.js","names":[],"sources":["../../../src/types/Tooltip.d.ts"],"sourcesContent":["import Popper, { PopperProps, PopperTriggerProps } from '@semcore/popper';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Box, BoxProps } from '@semcore/flex-box';\nimport { Context } from './context';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface ITooltipChartProps extends TooltipChartProps, UnknownProperties {}\nexport type TooltipChartProps = PopperProps &\n PopperTriggerProps &\n Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n };\n\n/** @deprecated */\nexport interface ITooltipChartContext extends TooltipChartContext, UnknownProperties {\n /** Index active value for Axis x */\n xIndex: number | null;\n /** Index active value for Axis y */\n yIndex: number | null;\n}\nexport type TooltipChartContext = {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n};\n\nexport type TooltipTypeBase = {\n Trigger: typeof Popper.Trigger;\n Popper: typeof Popper.Popper;\n Title: typeof Box;\n Dot: IntergalacticD3Component<'div', BoxProps & { color?: string }, TooltipChartContext>;\n Footer: typeof Box;\n};\n\nexport type TooltipType<ChildrenRenderProps = {}, TooltipProps = {}> = (<\n Tag extends Intergalactic.Tag = typeof Box,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n TooltipProps,\n ChildrenRenderProps & TooltipChartContext\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive
|
1
|
+
{"version":3,"file":"Tooltip.d.js","names":[],"sources":["../../../src/types/Tooltip.d.ts"],"sourcesContent":["import Popper, { PopperProps, PopperTriggerProps } from '@semcore/popper';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Box, BoxProps } from '@semcore/flex-box';\nimport { Context } from './context';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface ITooltipChartProps extends TooltipChartProps, UnknownProperties {}\nexport type TooltipChartProps = PopperProps &\n PopperTriggerProps &\n Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n };\n\n/** @deprecated */\nexport interface ITooltipChartContext extends TooltipChartContext, UnknownProperties {\n /** Index active value for Axis x */\n xIndex: number | null;\n /** Index active value for Axis y */\n yIndex: number | null;\n}\nexport type TooltipChartContext = {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n};\n\nexport type TooltipTypeBase = {\n Trigger: typeof Popper.Trigger;\n Popper: typeof Popper.Popper;\n Title: typeof Box;\n Dot: IntergalacticD3Component<'div', BoxProps & { color?: string }, TooltipChartContext>;\n Footer: typeof Box;\n};\n\nexport type TooltipType<ChildrenRenderProps = {}, TooltipProps = {}> = (<\n Tag extends Intergalactic.Tag = typeof Box,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n TooltipProps,\n ChildrenRenderProps & TooltipChartContext\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<\n Intergalactic.Tag,\n Intergalactic.Tag,\n TooltipProps\n > &\n TooltipTypeBase;\n\n/**\n * @deprecated Consider migration to better typed Bubble.Tooltip, HoverLine.Tooltip,\n * HoverRect.Tooltip, Donut.Tooltip, Radar.Tooltip,\n * ScatterPlot.Tooltip or Venn.Tooltip.\n *\n * Migration examples:\n * 1. `<Tooltip tag={HoverLine}>...</Tooltip>` => `<HoverLine.Tooltip>...</HoverLine.Tooltip>`\n * 2. `<Tooltip tag={HoverRect}>...</Tooltip>` => `<HoverRect.Tooltip>...</HoverRect.Tooltip>`\n * 3. `<Tooltip tag={Radar.Hover}>...</Tooltip>` => `<Radar.Tooltip>...</Radar.Tooltip>`\n * 4. `<Tooltip>...</Tooltip>` => `<Bubble.Tooltip>...</Bubble.Tooltip>`\n * 5. `<Tooltip>...</Tooltip>` => `<Donut.Tooltip>...</Donut.Tooltip>`\n * 6. `<Tooltip>...</Tooltip>` => `<ScatterPlot.Tooltip>...</ScatterPlot.Tooltip>`\n * 7. `<Tooltip>...</Tooltip>` => `<Venn.Tooltip>...</Venn.Tooltip>`\n */\ndeclare const Tooltip: TooltipType;\n\nexport default Tooltip;\n"],"mappings":""}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RadialTree.js","names":["React","transition","Component","sstyled","uniqueIDEnhancement","assignProps","getOriginChildren","canUseDOM","createElement","measureText","style","_sstyled","insert","baseAngle","Math","PI","RadialTreeBase","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","handleRadianClick","bind","_createClass","key","value","uncontrolledProps","activeKey","runAppearAnimation","_window$matchMedia","_this$asProps","asProps","duration","uid","preferReduceMotion","window","matchMedia","matches","circlesAnimation","selection","selectAll","concat","interrupt","iconsAnimation","linesAnimation","labelsAnimation","circlesNodes","nodes","iconsNodes","linesNodes","labelsNodes","length","attrs","map","node","_lineNode$x","_lineNode$x$baseVal","_lineNode$y","_lineNode$y$baseVal","radianIndex","parseInt","dataset","lineNode","from","cx","x1","baseVal","cy","y1","to","attr","_","index","_attrs$index$from","_attrs$index$from2","_attrs$index$to","_attrs$index$to2","_node$width","_node$width$baseVal","_node$height","_node$height$baseVal","_lineNode$x2","_lineNode$x2$baseVal","_lineNode$y2","_lineNode$y2$baseVal","width","height","x","y","_attrs$index$from3","_attrs$index$from4","_attrs$index$to3","_attrs$index$to4","_node$x","_node$x$baseVal","_node$y","_node$y$baseVal","x2","y2","_attrs2$index$from","_attrs2$index$from2","_attrs2$index$to","_attrs2$index$to2","componentDidUpdate","prevProps","$rootProps","data","componentDidMount","_this2","event","newKey","handlers","computeTextWidth","_this$asProps2","textSize","widths","_ref9","label","max","apply","_toConsumableArray","getTitleProps","_this$asProps3","size","_size","_slicedToArray","center","getRadianProps","_this$asProps4","restRootProps","_objectWithoutProperties","_excluded","textWidth","_objectSpread","radiansCount","onRadianClick","render","_ref","SRadialTree","Element","Children","dataHintsHandler","establishDataType","styles","cn","angleOffset","centralMargin","labelMargin","iconColor","capSize","iconSize","defaultActiveKey","RadialTreeRadian","_Component2","_super2","_this3","renderRadian","getInteractiveAreaProps","_ref11","_$rootProps$data","_this$computeRadianPo","computeRadianPosition","xStart","yStart","xLabelCenter","yLabelCenter","strokeWidth","getLineProps","_ref12","_$rootProps$data2","_color","_ref13","_this$computeRadianPo2","xEnd","yEnd","_this$asProps5","transparent","resolveColor","color","stroke","getCapProps","_ref14","_$rootProps$data3","_color2","_ref15","_this$computeRadianPo3","_this$asProps6","getIconProps","_ref16","_$rootProps$data4","_iconColor","_iconSize","_icon","_ref17","_this$computeRadianPo4","isActive","_this$asProps7","icon","getLabelProps","_ref18","_$rootProps$data5","_color3","_ref20","_this$computeRadianPo5","labelAngle","isHorizontal","_this$asProps8","_ref19","angle","getRadianKey","_data$key","_data$capSize","_this$asProps9","_size2","baseCapSize","minDemSize","min","topAngle","xCenter","yCenter","start","cos","sin","end","labelCenter","_ref2","_this$asProps10","SRadian","children","_child","mergedProps","describeValueEntity","InteractiveArea","RadialTree","Radian","_ref3","_this4","SRadianList","_ref21","_ref4","SInteractiveArea","Line","_ref22","_ref5","SLine","Cap","_ref23","_ref6","SCap","radius","Icon","_ref24","_ref7","SIcon","tag","Label","_ref25","SLabel","lines","String","split","linesCount","SLabelLine","angleDegs","toFixed","transformOrigin","transform","join","sstyles","sLabelStyles","textAnchor","dominantBaseline","className","lineText","lineIndex","Title","_ref26","_ref8","STitle","setTitle"],"sources":["../../src/RadialTree.tsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled, ReturnEl, UnknownProperties, Intergalactic } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport createElement from './createElement';\nimport { measureText } from './utils';\nimport { DataHintsHandler } from './a11y/hints';\n\nimport style from './style/radial-tree.shadow.css';\n\nconst baseAngle = -Math.PI / 2; // The top vertical line\n\ntype RadianData = {\n /**\n * Text label on the end of radian.\n */\n label: string;\n /**\n * Radian key. Radian, which `key` is equal to `activeKey` is displayed as active.\n */\n key: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n};\n\n/** @deprecated */\nexport interface IRadialTreeProps extends RadialTreeProps, UnknownProperties {}\nexport type RadialTreeProps = {\n /**\n * List of radians. `{ label: string; key: string; capSize?: number; icon?: React.FC; color?: string; iconColor?: string; iconSize?: number; }`\n */\n data?: RadianData[];\n /**\n * Angel (in rads) that rotates chart. 0 means that first radian is exactly on top vertical line.\n * @default 0\n */\n angleOffset?: number;\n /**\n * Duration of appear and update animation.\n * @default 300\n */\n duration?: number;\n /**\n * Gap between the chart center and radians start point.\n * @default 50\n */\n centralMargin?: number;\n /**\n * Gap around text label.\n * @default 2\n */\n labelMargin?: number;\n /**\n * Color of all radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n /**\n * Text size in radians' labels. 1.5x is used as default text size of center text.\n * @default 14\n */\n textSize?: number;\n /**\n * Used to define the active radian in controlled way. Active radian is highlighted with inreased cap size.\n */\n activeKey?: string | null;\n onActiveKeyChange?: (activeKey: string | null) => void;\n /**\n * Default value for `activeKey` property.\n */\n defaultActiveKey?: string | null;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\ntype RootAsProps = IRadialTreeProps & {\n uid: string;\n styles: React.CSSProperties;\n activeKey: string | null;\n Children: React.FC;\n size: [width: number, height: number];\n data: RadianData[];\n duration: number;\n textSize: number;\n capSize: number;\n centralMargin: number;\n labelMargin: number;\n angleOffset: number;\n transparent: boolean;\n $rootProps: RootAsProps;\n dataHintsHandler: DataHintsHandler;\n};\n\nclass RadialTreeBase extends Component<RootAsProps> {\n static displayName = 'RadialTree';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps: Partial<IRadialTreeProps> = {\n angleOffset: 0,\n duration: 300,\n centralMargin: 50,\n labelMargin: 5,\n iconColor: '#fff',\n capSize: 8,\n iconSize: 8,\n textSize: 14,\n defaultActiveKey: null,\n };\n\n Element!: React.FC<{ children?: React.ReactNode; render: string }>;\n\n constructor(props: any) {\n super(props);\n this.handleRadianClick = this.handleRadianClick.bind(this);\n }\n\n uncontrolledProps() {\n return {\n activeKey: null,\n };\n }\n\n runAppearAnimation() {\n const { duration, uid } = this.asProps;\n if (!canUseDOM()) return;\n const preferReduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)')?.matches;\n\n /** using `!(>)` instead of `<=` to get true on NaN and non numbers stuff */\n if (!(duration > 0)) return;\n if (preferReduceMotion) return;\n\n const circlesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-circle]`)\n .interrupt();\n const iconsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-icon]`)\n .interrupt();\n const linesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-line]`)\n .interrupt();\n const labelsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-label]`)\n .interrupt();\n const circlesNodes = circlesAnimation.nodes() as SVGCircleElement[];\n const iconsNodes = iconsAnimation.nodes() as SVGRectElement[];\n const linesNodes = linesAnimation.nodes() as SVGLineElement[];\n const labelsNodes = linesAnimation.nodes() as SVGTextElement[];\n\n if (circlesNodes.length > 0) {\n const attrs = circlesNodes.map((node) => {\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n cx: lineNode.x1?.baseVal?.value,\n cy: lineNode.y1?.baseVal?.value,\n },\n to: {\n cx: node.dataset['cx'],\n cy: node.dataset['cy'],\n },\n };\n });\n\n circlesAnimation\n .attr('opacity', 0)\n .attr('cx', (_, index) => attrs[index].from?.cx)\n .attr('cy', (_, index) => attrs[index].from?.cy)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('cx', (_, index) => attrs[index].to?.cx!)\n .attr('cy', (_, index) => attrs[index].to?.cy!);\n }\n if (iconsNodes.length > 0) {\n const attrs = iconsNodes.map((node) => {\n const width = node.width?.baseVal?.value;\n const height = node.height?.baseVal?.value;\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n x: lineNode.x1?.baseVal?.value - width / 2,\n y: lineNode.y1?.baseVal?.value - height / 2,\n },\n to: {\n x: node.dataset['x'],\n y: node.dataset['y'],\n },\n };\n });\n\n iconsAnimation\n .attr('opacity', 0)\n .attr('x', (_, index) => attrs[index].from?.x!)\n .attr('y', (_, index) => attrs[index].from?.y!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x', (_, index) => attrs[index].to?.x!)\n .attr('y', (_, index) => attrs[index].to?.y!);\n }\n if (linesNodes.length > 0) {\n const attrs = linesNodes.map((node) => {\n return {\n from: {\n x2: node.x1?.baseVal?.value,\n y2: node.y1?.baseVal?.value,\n },\n to: {\n x2: node.dataset['x2'],\n y2: node.dataset['y2'],\n },\n };\n });\n\n linesAnimation\n .attr('opacity', 0)\n .attr('x2', (_, index) => attrs[index].from?.x2!)\n .attr('y2', (_, index) => attrs[index].from?.y2!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x2', (_, index) => attrs[index].to?.x2!)\n .attr('y2', (_, index) => attrs[index].to?.y2!);\n }\n if (labelsNodes.length > 0) {\n labelsAnimation.attr('opacity', 0);\n labelsAnimation.transition().duration(duration).attr('opacity', 1);\n }\n }\n\n componentDidUpdate(prevProps: RootAsProps) {\n if (prevProps.$rootProps.data !== this.asProps.data) {\n this.runAppearAnimation();\n }\n }\n\n componentDidMount() {\n this.runAppearAnimation();\n }\n\n handleRadianClick(key: string) {\n return (event: React.MouseEvent) => {\n const newKey = key !== this.asProps.activeKey ? key : null;\n this.handlers.activeKey(newKey, event);\n };\n }\n\n computeTextWidth() {\n const { data, textSize } = this.asProps;\n const widths = data.map(({ label }) => measureText(label, textSize));\n\n return Math.max(...widths);\n }\n\n getTitleProps() {\n const { uid, size, textSize } = this.asProps;\n\n const [width, height] = size;\n const center = [width / 2, height / 2];\n const [x, y] = center;\n return {\n x,\n y,\n textSize: textSize * 1.5,\n ['data-radial-animation']: `${uid}-label`,\n } as IRadialTreeTitleProps;\n }\n\n getRadianProps() {\n const { data, ...restRootProps } = this.asProps;\n const textWidth = this.computeTextWidth();\n\n return {\n ...restRootProps,\n radiansCount: data.length,\n data,\n textWidth,\n onRadianClick: this.handleRadianClick,\n } as IRadialTreeRadianProps;\n }\n\n render() {\n const SRadialTree = this.Element;\n const { Children } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n\n return sstyled(this.asProps.styles)(\n <SRadialTree render='g'>\n <Children />\n </SRadialTree>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianProps extends RadialTreeRadianProps, UnknownProperties {}\nexport type RadialTreeRadianProps = RadialTreeProps & {\n radiansCount?: number;\n textWidth?: number;\n onRadianClick?: (key: string) => (event: React.MouseEvent) => void;\n};\n\ntype RadianAsProps = RootAsProps & {\n radiansCount: number;\n textWidth: number;\n onRadianClick: (key: string) => (event: React.MouseEvent) => void;\n};\n\nclass RadialTreeRadian extends Component<RadianAsProps> {\n static displayName = 'RadialTreeRadian';\n static style = style;\n\n static defaultProps: Partial<IRadialTreeRadianProps> = {\n centralMargin: 50,\n labelMargin: 2,\n iconColor: '#fff',\n capSize: 16,\n iconSize: 16,\n textSize: 14,\n };\n Element!: React.FC<{ render: string }>;\n\n constructor(props: any) {\n super(props);\n this.renderRadian = this.renderRadian.bind(this);\n }\n\n getInteractiveAreaProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xLabelCenter, yLabelCenter, capSize } = this.computeRadianPosition(\n data!,\n index,\n );\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xLabelCenter,\n y2: yLabelCenter,\n strokeWidth: capSize * 3,\n } as IRadialTreeRadianInteractiveAreaProps;\n }\n\n getLineProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xEnd, yEnd } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xEnd,\n y2: yEnd,\n stroke: color,\n resolveColor,\n transparent,\n ['data-x1']: xStart,\n ['data-y1']: yStart,\n ['data-x2']: xEnd,\n ['data-y2']: yEnd,\n ['data-radial-animation']: `${uid}-line`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianLineProps;\n }\n\n getCapProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, capSize } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xEnd,\n y: yEnd,\n ['data-cx']: xEnd,\n ['data-cy']: yEnd,\n radius: capSize,\n color,\n resolveColor,\n transparent,\n ['data-radial-animation']: `${uid}-cap-circle`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianCapProps;\n }\n\n getIconProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, isActive } = this.computeRadianPosition(data!, index);\n const { uid, resolveColor } = this.asProps;\n const iconColor = data!.iconColor ?? this.asProps.iconColor;\n const iconSize = data!.iconSize ?? this.asProps.iconSize;\n const icon = data!.icon ?? this.asProps.icon;\n const x = xEnd - iconSize! / 2;\n const y = yEnd - iconSize! / 2;\n return {\n x,\n y,\n ['data-x']: x,\n ['data-y']: y,\n iconSize,\n color: iconColor ?? '#fff',\n resolveColor,\n ['data-radial-animation']: `${uid}-cap-icon`,\n ['data-radian-index']: index,\n icon,\n tag: icon,\n isActive,\n } as IRadialTreeRadianIconProps;\n }\n\n getLabelProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xLabelCenter, yLabelCenter, labelAngle, isHorizontal } = this.computeRadianPosition(\n data!,\n index,\n );\n const { uid, textSize, transparent, resolveColor } = this.asProps;\n const { label } = data!;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xLabelCenter,\n y: yLabelCenter,\n angle: labelAngle,\n ['data-radial-animation']: `${uid}-label`,\n ['data-radian-index']: index,\n label,\n color,\n resolveColor,\n isHorizontal,\n textSize,\n transparent,\n } as IRadialTreeRadianLabelProps;\n }\n\n getRadianKey(data: RadianData, index: number) {\n return data.key ?? `radian-${index}`;\n }\n\n computeRadianPosition(data: RadianData, index: number) {\n const { centralMargin, labelMargin, angleOffset, activeKey, size, radiansCount, textWidth } =\n this.asProps;\n const [width, height] = size;\n const key = this.getRadianKey(data, index);\n const isActive = activeKey === key;\n const baseCapSize = data.capSize ?? this.asProps.capSize;\n const capSize = baseCapSize * (isActive ? 1 : 0.5);\n\n const minDemSize = Math.min(width, height) / 2;\n const length = Math.max(\n minDemSize - textWidth - baseCapSize - centralMargin - labelMargin * 2,\n 10,\n );\n\n const angle = baseAngle + angleOffset + (index / radiansCount) * (Math.PI * 2);\n const isHorizontal =\n (angle - baseAngle > (1 / 6) * Math.PI && angle - baseAngle < (5 / 6) * Math.PI) ||\n (angle - baseAngle > (7 / 6) * Math.PI && angle - baseAngle < (11 / 6) * Math.PI);\n const topAngle = -Math.PI / 2;\n const labelAngle = ((angle - topAngle) % Math.PI) + topAngle;\n\n const center = [width / 2, height / 2];\n const [xCenter, yCenter] = center;\n const start = [\n xCenter + Math.cos(angle) * centralMargin,\n yCenter + Math.sin(angle) * centralMargin,\n ];\n const end = [\n xCenter + Math.cos(angle) * (centralMargin + length),\n yCenter + Math.sin(angle) * (centralMargin + length),\n ];\n const [xStart, yStart] = start;\n const [xEnd, yEnd] = end;\n\n const labelCenter = [\n xCenter +\n Math.cos(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n yCenter +\n Math.sin(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n ];\n const [xLabelCenter, yLabelCenter] = labelCenter;\n\n return {\n xStart,\n yStart,\n xEnd,\n yEnd,\n xLabelCenter,\n yLabelCenter,\n labelAngle,\n isHorizontal,\n capSize,\n isActive,\n };\n }\n\n renderRadian(data: RadianData, index: number) {\n const { styles, Children, onRadianClick } = this.asProps;\n const key = this.getRadianKey(data, index);\n const SRadian = 'g';\n\n let children = getOriginChildren(Children);\n\n if (typeof children === 'function') {\n const _child = this.asProps.children;\n const mergedProps = assignProps(children(this.asProps), this.asProps as any);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n this.asProps.dataHintsHandler.describeValueEntity(`${index}.${data.label}`, data.label);\n\n // hidden from publicly typed export\n const InteractiveArea = (RadialTree.Radian as any).InteractiveArea;\n\n return sstyled(styles)(\n <SRadian aria-hidden key={key} onClick={onRadianClick(key)}>\n <InteractiveArea />\n {children}\n </SRadian>,\n );\n }\n\n render() {\n const { data } = this.asProps;\n const SRadianList = 'g';\n\n return sstyled(this.asProps.styles)(\n <SRadianList>{data.map((data, index) => this.renderRadian(data, index))}</SRadianList>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianInteractiveAreaProps\n extends RadialTreeRadianInteractiveAreaProps {}\nexport type RadialTreeRadianInteractiveAreaProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n strokeWidth?: number;\n};\n\ntype RadialTreeRadianInteractiveAreaAsProps = IRadialTreeRadianInteractiveAreaProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n};\nconst InteractiveArea: React.FC<RadialTreeRadianInteractiveAreaAsProps> = ({\n Element: SInteractiveArea,\n styles,\n}) => {\n return sstyled(styles)(\n <SInteractiveArea stroke='transparent' render='line' />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLineProps extends RadialTreeRadianLineProps, UnknownProperties {}\nexport type RadialTreeRadianLineProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n stroke?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-line`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianLineAsProps = IRadialTreeRadianLineProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Line: React.FC<RadialTreeRadianLineAsProps> = ({\n Element: SLine,\n styles,\n stroke,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SLine render='line' stroke={resolveColor(stroke)} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianCapProps extends RadialTreeRadianCapProps, UnknownProperties {}\nexport type RadialTreeRadianCapProps = {\n x?: number;\n y?: number;\n radius?: number;\n color?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-cap-circle`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianCapAsProps = IRadialTreeRadianCapProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Cap: React.FC<RadialTreeRadianCapAsProps> = ({\n Element: SCap,\n styles,\n x,\n y,\n radius,\n color,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SCap\n render='circle'\n cx={x}\n cy={y}\n r={radius}\n fill={resolveColor(color)}\n transparent={transparent!}\n />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianIconProps extends RadialTreeRadianIconProps, UnknownProperties {}\nexport type RadialTreeRadianIconProps = {\n x?: number;\n y?: number;\n iconSize?: number;\n color?: string;\n ['data-radial-animation']?: `${string}-cap-icon`;\n ['data-radian-index']?: number;\n isActive?: boolean;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianIconAsProps = IRadialTreeRadianIconProps & {\n Element: React.FC<{ render: string | React.FC; transparent: boolean } & React.SVGProps<any>>;\n x: number;\n y: number;\n iconSize: number;\n styles: React.CSSProperties;\n tag?: React.FC;\n};\nconst Icon: React.FC<RadialTreeRadianIconAsProps> = ({\n Element: SIcon,\n styles,\n isActive,\n tag,\n x,\n y,\n iconSize,\n transparent,\n}) => {\n if (!(isActive && tag)) return null;\n const width = iconSize;\n const height = iconSize;\n return sstyled(styles)(\n <SIcon x={x} y={y} width={width} height={height} render={tag} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLabelProps\n extends RadialTreeRadianLabelProps,\n UnknownProperties {}\nexport type RadialTreeRadianLabelProps = {\n x?: number;\n y?: number;\n color?: string;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n ['data-radian-index']?: number;\n label?: string;\n isHorizontal?: boolean;\n angle?: number;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianLabelAsProps = IRadialTreeRadianLabelProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n styles: React.CSSProperties;\n x: number;\n y: number;\n angle: number;\n textSize: number;\n resolveColor: (color?: string) => string;\n};\nconst Label: React.FC<RadialTreeRadianLabelAsProps> = ({\n Element: SLabel,\n Children,\n styles,\n label,\n color,\n resolveColor,\n isHorizontal,\n x,\n y,\n textSize,\n angle,\n transparent,\n}) => {\n const lines = String(label).split('\\n');\n const linesCount = lines.length;\n const SLabelLine = 'tspan';\n\n const angleDegs = ((angle / Math.PI) * 180).toFixed(2);\n const transformOrigin = [x.toFixed(2), y.toFixed(2)];\n const transform = `rotate(${[angleDegs, ...transformOrigin].join(', ')})`;\n\n const sstyles = sstyled(styles);\n const sLabelStyles = sstyles.cn('SLabel', {\n color: resolveColor(color),\n 'text-cursor': isHorizontal ? 'text' : 'vertical-text',\n transparent,\n });\n\n return (\n <SLabel\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n className={sLabelStyles.className}\n style={sLabelStyles.style}\n x={x.toFixed(2)}\n y={y.toFixed(2)}\n transform={transform}\n >\n {lines.map((lineText, lineIndex) => (\n <SLabelLine\n x={x}\n y={y + (lineIndex - (linesCount - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </SLabelLine>\n ))}\n <Children />\n </SLabel>\n ) as React.ReactElement;\n};\n\nconst Radian = createElement(RadialTreeRadian, {\n InteractiveArea,\n Line,\n Cap,\n Icon,\n Label,\n});\n\n/** @deprecated */\nexport interface IRadialTreeTitleProps extends RadialTreeTitleProps, UnknownProperties {}\nexport type RadialTreeTitleProps = {\n x?: number;\n y?: number;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n color?: string;\n};\n\ntype RadialTreeTitleAsProps = IRadialTreeTitleProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n children: React.ReactNode;\n styles: React.CSSProperties;\n dataHintsHandler: DataHintsHandler;\n resolveColor: (color?: string) => string;\n};\nconst Title: React.FC<RadialTreeTitleAsProps> = ({\n Element: STitle,\n Children,\n children,\n styles,\n textSize,\n color,\n resolveColor,\n x,\n y,\n dataHintsHandler,\n}) => {\n if (typeof children === 'string') {\n dataHintsHandler.setTitle('vertical', children);\n }\n return sstyled(styles)(\n <STitle\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n fontSize={textSize}\n fill={resolveColor(color)}\n x={x}\n y={y}\n >\n <Children />\n </STitle>,\n ) as React.ReactElement;\n};\n\ntype IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = Intergalactic.Tag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;\n\nconst RadialTree = createElement(RadialTreeBase, { Title, Radian }) as IntergalacticD3Component<\n 'g',\n RadialTreeProps\n> & {\n Title: IntergalacticD3Component<'text', RadialTreeTitleProps>;\n Radian: IntergalacticD3Component<'g', RadialTreeRadianProps> & {\n Line: IntergalacticD3Component<'line', RadialTreeRadianLineProps>;\n Cap: IntergalacticD3Component<'circle', RadialTreeRadianCapProps>;\n Icon: IntergalacticD3Component<'g', RadialTreeRadianIconProps>;\n Label: IntergalacticD3Component<'text', RadialTreeRadianLabelProps>;\n };\n};\n\nexport default RadialTree;\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"RadialTree.js","names":["React","transition","Component","sstyled","uniqueIDEnhancement","assignProps","getOriginChildren","canUseDOM","createElement","measureText","style","_sstyled","insert","baseAngle","Math","PI","RadialTreeBase","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","handleRadianClick","bind","_createClass","key","value","uncontrolledProps","activeKey","runAppearAnimation","_window$matchMedia","_this$asProps","asProps","duration","uid","preferReduceMotion","window","matchMedia","matches","circlesAnimation","selection","selectAll","concat","interrupt","iconsAnimation","linesAnimation","labelsAnimation","circlesNodes","nodes","iconsNodes","linesNodes","labelsNodes","length","attrs","map","node","_lineNode$x","_lineNode$x$baseVal","_lineNode$y","_lineNode$y$baseVal","radianIndex","parseInt","dataset","lineNode","from","cx","x1","baseVal","cy","y1","to","attr","_","index","_attrs$index$from","_attrs$index$from2","_attrs$index$to","_attrs$index$to2","_node$width","_node$width$baseVal","_node$height","_node$height$baseVal","_lineNode$x2","_lineNode$x2$baseVal","_lineNode$y2","_lineNode$y2$baseVal","width","height","x","y","_attrs$index$from3","_attrs$index$from4","_attrs$index$to3","_attrs$index$to4","_node$x","_node$x$baseVal","_node$y","_node$y$baseVal","x2","y2","_attrs2$index$from","_attrs2$index$from2","_attrs2$index$to","_attrs2$index$to2","componentDidUpdate","prevProps","$rootProps","data","componentDidMount","_this2","event","newKey","handlers","computeTextWidth","_this$asProps2","textSize","widths","_ref9","label","max","apply","_toConsumableArray","getTitleProps","_this$asProps3","size","_size","_slicedToArray","center","getRadianProps","_this$asProps4","restRootProps","_objectWithoutProperties","_excluded","textWidth","_objectSpread","radiansCount","onRadianClick","render","_ref","SRadialTree","Element","Children","dataHintsHandler","establishDataType","styles","cn","angleOffset","centralMargin","labelMargin","iconColor","capSize","iconSize","defaultActiveKey","RadialTreeRadian","_Component2","_super2","_this3","renderRadian","getInteractiveAreaProps","_ref11","_$rootProps$data","_this$computeRadianPo","computeRadianPosition","xStart","yStart","xLabelCenter","yLabelCenter","strokeWidth","getLineProps","_ref12","_$rootProps$data2","_color","_ref13","_this$computeRadianPo2","xEnd","yEnd","_this$asProps5","transparent","resolveColor","color","stroke","getCapProps","_ref14","_$rootProps$data3","_color2","_ref15","_this$computeRadianPo3","_this$asProps6","getIconProps","_ref16","_$rootProps$data4","_iconColor","_iconSize","_icon","_ref17","_this$computeRadianPo4","isActive","_this$asProps7","icon","getLabelProps","_ref18","_$rootProps$data5","_color3","_ref20","_this$computeRadianPo5","labelAngle","isHorizontal","_this$asProps8","_ref19","angle","getRadianKey","_data$key","_data$capSize","_this$asProps9","_size2","baseCapSize","minDemSize","min","topAngle","xCenter","yCenter","start","cos","sin","end","labelCenter","_ref2","_this$asProps10","SRadian","children","_child","mergedProps","describeValueEntity","InteractiveArea","RadialTree","Radian","_ref3","_this4","SRadianList","_ref21","_ref4","SInteractiveArea","Line","_ref22","_ref5","SLine","Cap","_ref23","_ref6","SCap","radius","Icon","_ref24","_ref7","SIcon","tag","Label","_ref25","SLabel","lines","String","split","linesCount","SLabelLine","angleDegs","toFixed","transformOrigin","transform","join","sstyles","sLabelStyles","textAnchor","dominantBaseline","className","lineText","lineIndex","Title","_ref26","_ref8","STitle","setTitle"],"sources":["../../src/RadialTree.tsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled, ReturnEl, UnknownProperties, Intergalactic } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport createElement from './createElement';\nimport { measureText } from './utils';\nimport { DataHintsHandler } from './a11y/hints';\n\nimport style from './style/radial-tree.shadow.css';\n\nconst baseAngle = -Math.PI / 2; // The top vertical line\n\ntype RadianData = {\n /**\n * Text label on the end of radian.\n */\n label: string;\n /**\n * Radian key. Radian, which `key` is equal to `activeKey` is displayed as active.\n */\n key: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n};\n\n/** @deprecated */\nexport interface IRadialTreeProps extends RadialTreeProps, UnknownProperties {}\nexport type RadialTreeProps = {\n /**\n * List of radians. `{ label: string; key: string; capSize?: number; icon?: React.FC; color?: string; iconColor?: string; iconSize?: number; }`\n */\n data?: RadianData[];\n /**\n * Angel (in rads) that rotates chart. 0 means that first radian is exactly on top vertical line.\n * @default 0\n */\n angleOffset?: number;\n /**\n * Duration of appear and update animation.\n * @default 300\n */\n duration?: number;\n /**\n * Gap between the chart center and radians start point.\n * @default 50\n */\n centralMargin?: number;\n /**\n * Gap around text label.\n * @default 2\n */\n labelMargin?: number;\n /**\n * Color of all radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n /**\n * Text size in radians' labels. 1.5x is used as default text size of center text.\n * @default 14\n */\n textSize?: number;\n /**\n * Used to define the active radian in controlled way. Active radian is highlighted with inreased cap size.\n */\n activeKey?: string | null;\n onActiveKeyChange?: (activeKey: string | null) => void;\n /**\n * Default value for `activeKey` property.\n */\n defaultActiveKey?: string | null;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\ntype RootAsProps = IRadialTreeProps & {\n uid: string;\n styles: React.CSSProperties;\n activeKey: string | null;\n Children: React.FC;\n size: [width: number, height: number];\n data: RadianData[];\n duration: number;\n textSize: number;\n capSize: number;\n centralMargin: number;\n labelMargin: number;\n angleOffset: number;\n transparent: boolean;\n $rootProps: RootAsProps;\n dataHintsHandler: DataHintsHandler;\n};\n\nclass RadialTreeBase extends Component<RootAsProps> {\n static displayName = 'RadialTree';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps: Partial<IRadialTreeProps> = {\n angleOffset: 0,\n duration: 300,\n centralMargin: 50,\n labelMargin: 5,\n iconColor: '#fff',\n capSize: 8,\n iconSize: 8,\n textSize: 14,\n defaultActiveKey: null,\n };\n\n Element!: React.FC<{ children?: React.ReactNode; render: string }>;\n\n constructor(props: any) {\n super(props);\n this.handleRadianClick = this.handleRadianClick.bind(this);\n }\n\n uncontrolledProps() {\n return {\n activeKey: null,\n };\n }\n\n runAppearAnimation() {\n const { duration, uid } = this.asProps;\n if (!canUseDOM()) return;\n const preferReduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)')?.matches;\n\n /** using `!(>)` instead of `<=` to get true on NaN and non numbers stuff */\n if (!(duration > 0)) return;\n if (preferReduceMotion) return;\n\n const circlesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-circle]`)\n .interrupt();\n const iconsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-icon]`)\n .interrupt();\n const linesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-line]`)\n .interrupt();\n const labelsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-label]`)\n .interrupt();\n const circlesNodes = circlesAnimation.nodes() as SVGCircleElement[];\n const iconsNodes = iconsAnimation.nodes() as SVGRectElement[];\n const linesNodes = linesAnimation.nodes() as SVGLineElement[];\n const labelsNodes = linesAnimation.nodes() as SVGTextElement[];\n\n if (circlesNodes.length > 0) {\n const attrs = circlesNodes.map((node) => {\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n cx: lineNode.x1?.baseVal?.value,\n cy: lineNode.y1?.baseVal?.value,\n },\n to: {\n cx: node.dataset['cx'],\n cy: node.dataset['cy'],\n },\n };\n });\n\n circlesAnimation\n .attr('opacity', 0)\n .attr('cx', (_, index) => attrs[index].from?.cx)\n .attr('cy', (_, index) => attrs[index].from?.cy)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('cx', (_, index) => attrs[index].to?.cx!)\n .attr('cy', (_, index) => attrs[index].to?.cy!);\n }\n if (iconsNodes.length > 0) {\n const attrs = iconsNodes.map((node) => {\n const width = node.width?.baseVal?.value;\n const height = node.height?.baseVal?.value;\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n x: lineNode.x1?.baseVal?.value - width / 2,\n y: lineNode.y1?.baseVal?.value - height / 2,\n },\n to: {\n x: node.dataset['x'],\n y: node.dataset['y'],\n },\n };\n });\n\n iconsAnimation\n .attr('opacity', 0)\n .attr('x', (_, index) => attrs[index].from?.x!)\n .attr('y', (_, index) => attrs[index].from?.y!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x', (_, index) => attrs[index].to?.x!)\n .attr('y', (_, index) => attrs[index].to?.y!);\n }\n if (linesNodes.length > 0) {\n const attrs = linesNodes.map((node) => {\n return {\n from: {\n x2: node.x1?.baseVal?.value,\n y2: node.y1?.baseVal?.value,\n },\n to: {\n x2: node.dataset['x2'],\n y2: node.dataset['y2'],\n },\n };\n });\n\n linesAnimation\n .attr('opacity', 0)\n .attr('x2', (_, index) => attrs[index].from?.x2!)\n .attr('y2', (_, index) => attrs[index].from?.y2!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x2', (_, index) => attrs[index].to?.x2!)\n .attr('y2', (_, index) => attrs[index].to?.y2!);\n }\n if (labelsNodes.length > 0) {\n labelsAnimation.attr('opacity', 0);\n labelsAnimation.transition().duration(duration).attr('opacity', 1);\n }\n }\n\n componentDidUpdate(prevProps: RootAsProps) {\n if (prevProps.$rootProps.data !== this.asProps.data) {\n this.runAppearAnimation();\n }\n }\n\n componentDidMount() {\n this.runAppearAnimation();\n }\n\n handleRadianClick(key: string) {\n return (event: React.MouseEvent) => {\n const newKey = key !== this.asProps.activeKey ? key : null;\n this.handlers.activeKey(newKey, event);\n };\n }\n\n computeTextWidth() {\n const { data, textSize } = this.asProps;\n const widths = data.map(({ label }) => measureText(label, textSize));\n\n return Math.max(...widths);\n }\n\n getTitleProps() {\n const { uid, size, textSize } = this.asProps;\n\n const [width, height] = size;\n const center = [width / 2, height / 2];\n const [x, y] = center;\n return {\n x,\n y,\n textSize: textSize * 1.5,\n ['data-radial-animation']: `${uid}-label`,\n } as IRadialTreeTitleProps;\n }\n\n getRadianProps() {\n const { data, ...restRootProps } = this.asProps;\n const textWidth = this.computeTextWidth();\n\n return {\n ...restRootProps,\n radiansCount: data.length,\n data,\n textWidth,\n onRadianClick: this.handleRadianClick,\n } as IRadialTreeRadianProps;\n }\n\n render() {\n const SRadialTree = this.Element;\n const { Children } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n\n return sstyled(this.asProps.styles)(\n <SRadialTree render='g'>\n <Children />\n </SRadialTree>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianProps extends RadialTreeRadianProps, UnknownProperties {}\nexport type RadialTreeRadianProps = RadialTreeProps & {\n radiansCount?: number;\n textWidth?: number;\n onRadianClick?: (key: string) => (event: React.MouseEvent) => void;\n};\n\ntype RadianAsProps = RootAsProps & {\n radiansCount: number;\n textWidth: number;\n onRadianClick: (key: string) => (event: React.MouseEvent) => void;\n};\n\nclass RadialTreeRadian extends Component<RadianAsProps> {\n static displayName = 'RadialTreeRadian';\n static style = style;\n\n static defaultProps: Partial<IRadialTreeRadianProps> = {\n centralMargin: 50,\n labelMargin: 2,\n iconColor: '#fff',\n capSize: 16,\n iconSize: 16,\n textSize: 14,\n };\n Element!: React.FC<{ render: string }>;\n\n constructor(props: any) {\n super(props);\n this.renderRadian = this.renderRadian.bind(this);\n }\n\n getInteractiveAreaProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xLabelCenter, yLabelCenter, capSize } = this.computeRadianPosition(\n data!,\n index,\n );\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xLabelCenter,\n y2: yLabelCenter,\n strokeWidth: capSize * 3,\n } as IRadialTreeRadianInteractiveAreaProps;\n }\n\n getLineProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xEnd, yEnd } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xEnd,\n y2: yEnd,\n stroke: color,\n resolveColor,\n transparent,\n ['data-x1']: xStart,\n ['data-y1']: yStart,\n ['data-x2']: xEnd,\n ['data-y2']: yEnd,\n ['data-radial-animation']: `${uid}-line`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianLineProps;\n }\n\n getCapProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, capSize } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xEnd,\n y: yEnd,\n ['data-cx']: xEnd,\n ['data-cy']: yEnd,\n radius: capSize,\n color,\n resolveColor,\n transparent,\n ['data-radial-animation']: `${uid}-cap-circle`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianCapProps;\n }\n\n getIconProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, isActive } = this.computeRadianPosition(data!, index);\n const { uid, resolveColor } = this.asProps;\n const iconColor = data!.iconColor ?? this.asProps.iconColor;\n const iconSize = data!.iconSize ?? this.asProps.iconSize;\n const icon = data!.icon ?? this.asProps.icon;\n const x = xEnd - iconSize! / 2;\n const y = yEnd - iconSize! / 2;\n return {\n x,\n y,\n ['data-x']: x,\n ['data-y']: y,\n iconSize,\n color: iconColor ?? '#fff',\n resolveColor,\n ['data-radial-animation']: `${uid}-cap-icon`,\n ['data-radian-index']: index,\n icon,\n tag: icon,\n isActive,\n } as IRadialTreeRadianIconProps;\n }\n\n getLabelProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xLabelCenter, yLabelCenter, labelAngle, isHorizontal } = this.computeRadianPosition(\n data!,\n index,\n );\n const { uid, textSize, transparent, resolveColor } = this.asProps;\n const { label } = data!;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xLabelCenter,\n y: yLabelCenter,\n angle: labelAngle,\n ['data-radial-animation']: `${uid}-label`,\n ['data-radian-index']: index,\n label,\n color,\n resolveColor,\n isHorizontal,\n textSize,\n transparent,\n } as IRadialTreeRadianLabelProps;\n }\n\n getRadianKey(data: RadianData, index: number) {\n return data.key ?? `radian-${index}`;\n }\n\n computeRadianPosition(data: RadianData, index: number) {\n const { centralMargin, labelMargin, angleOffset, activeKey, size, radiansCount, textWidth } =\n this.asProps;\n const [width, height] = size;\n const key = this.getRadianKey(data, index);\n const isActive = activeKey === key;\n const baseCapSize = data.capSize ?? this.asProps.capSize;\n const capSize = baseCapSize * (isActive ? 1 : 0.5);\n\n const minDemSize = Math.min(width, height) / 2;\n const length = Math.max(\n minDemSize - textWidth - baseCapSize - centralMargin - labelMargin * 2,\n 10,\n );\n\n const angle = baseAngle + angleOffset + (index / radiansCount) * (Math.PI * 2);\n const isHorizontal =\n (angle - baseAngle > (1 / 6) * Math.PI && angle - baseAngle < (5 / 6) * Math.PI) ||\n (angle - baseAngle > (7 / 6) * Math.PI && angle - baseAngle < (11 / 6) * Math.PI);\n const topAngle = -Math.PI / 2;\n const labelAngle = ((angle - topAngle) % Math.PI) + topAngle;\n\n const center = [width / 2, height / 2];\n const [xCenter, yCenter] = center;\n const start = [\n xCenter + Math.cos(angle) * centralMargin,\n yCenter + Math.sin(angle) * centralMargin,\n ];\n const end = [\n xCenter + Math.cos(angle) * (centralMargin + length),\n yCenter + Math.sin(angle) * (centralMargin + length),\n ];\n const [xStart, yStart] = start;\n const [xEnd, yEnd] = end;\n\n const labelCenter = [\n xCenter +\n Math.cos(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n yCenter +\n Math.sin(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n ];\n const [xLabelCenter, yLabelCenter] = labelCenter;\n\n return {\n xStart,\n yStart,\n xEnd,\n yEnd,\n xLabelCenter,\n yLabelCenter,\n labelAngle,\n isHorizontal,\n capSize,\n isActive,\n };\n }\n\n renderRadian(data: RadianData, index: number) {\n const { styles, Children, onRadianClick } = this.asProps;\n const key = this.getRadianKey(data, index);\n const SRadian = 'g';\n\n let children = getOriginChildren(Children);\n\n if (typeof children === 'function') {\n const _child = this.asProps.children;\n const mergedProps = assignProps(children(this.asProps), this.asProps as any);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n this.asProps.dataHintsHandler.describeValueEntity(`${index}.${data.label}`, data.label);\n\n // hidden from publicly typed export\n const InteractiveArea = (RadialTree.Radian as any).InteractiveArea;\n\n return sstyled(styles)(\n <SRadian aria-hidden key={key} onClick={onRadianClick(key)}>\n <InteractiveArea />\n {children}\n </SRadian>,\n );\n }\n\n render() {\n const { data } = this.asProps;\n const SRadianList = 'g';\n\n return sstyled(this.asProps.styles)(\n <SRadianList>{data.map((data, index) => this.renderRadian(data, index))}</SRadianList>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianInteractiveAreaProps\n extends RadialTreeRadianInteractiveAreaProps {}\nexport type RadialTreeRadianInteractiveAreaProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n strokeWidth?: number;\n};\n\ntype RadialTreeRadianInteractiveAreaAsProps = IRadialTreeRadianInteractiveAreaProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n};\nconst InteractiveArea: React.FC<RadialTreeRadianInteractiveAreaAsProps> = ({\n Element: SInteractiveArea,\n styles,\n}) => {\n return sstyled(styles)(\n <SInteractiveArea stroke='transparent' render='line' />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLineProps extends RadialTreeRadianLineProps, UnknownProperties {}\nexport type RadialTreeRadianLineProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n stroke?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-line`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianLineAsProps = IRadialTreeRadianLineProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Line: React.FC<RadialTreeRadianLineAsProps> = ({\n Element: SLine,\n styles,\n stroke,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SLine render='line' stroke={resolveColor(stroke)} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianCapProps extends RadialTreeRadianCapProps, UnknownProperties {}\nexport type RadialTreeRadianCapProps = {\n x?: number;\n y?: number;\n radius?: number;\n color?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-cap-circle`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianCapAsProps = IRadialTreeRadianCapProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Cap: React.FC<RadialTreeRadianCapAsProps> = ({\n Element: SCap,\n styles,\n x,\n y,\n radius,\n color,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SCap\n render='circle'\n cx={x}\n cy={y}\n r={radius}\n fill={resolveColor(color)}\n transparent={transparent!}\n />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianIconProps extends RadialTreeRadianIconProps, UnknownProperties {}\nexport type RadialTreeRadianIconProps = {\n x?: number;\n y?: number;\n iconSize?: number;\n color?: string;\n ['data-radial-animation']?: `${string}-cap-icon`;\n ['data-radian-index']?: number;\n isActive?: boolean;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianIconAsProps = IRadialTreeRadianIconProps & {\n Element: React.FC<{ render: string | React.FC; transparent: boolean } & React.SVGProps<any>>;\n x: number;\n y: number;\n iconSize: number;\n styles: React.CSSProperties;\n tag?: React.FC;\n};\nconst Icon: React.FC<RadialTreeRadianIconAsProps> = ({\n Element: SIcon,\n styles,\n isActive,\n tag,\n x,\n y,\n iconSize,\n transparent,\n}) => {\n if (!(isActive && tag)) return null;\n const width = iconSize;\n const height = iconSize;\n return sstyled(styles)(\n <SIcon x={x} y={y} width={width} height={height} render={tag} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLabelProps\n extends RadialTreeRadianLabelProps,\n UnknownProperties {}\nexport type RadialTreeRadianLabelProps = {\n x?: number;\n y?: number;\n color?: string;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n ['data-radian-index']?: number;\n label?: string;\n isHorizontal?: boolean;\n angle?: number;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianLabelAsProps = IRadialTreeRadianLabelProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n styles: React.CSSProperties;\n x: number;\n y: number;\n angle: number;\n textSize: number;\n resolveColor: (color?: string) => string;\n};\nconst Label: React.FC<RadialTreeRadianLabelAsProps> = ({\n Element: SLabel,\n Children,\n styles,\n label,\n color,\n resolveColor,\n isHorizontal,\n x,\n y,\n textSize,\n angle,\n transparent,\n}) => {\n const lines = String(label).split('\\n');\n const linesCount = lines.length;\n const SLabelLine = 'tspan';\n\n const angleDegs = ((angle / Math.PI) * 180).toFixed(2);\n const transformOrigin = [x.toFixed(2), y.toFixed(2)];\n const transform = `rotate(${[angleDegs, ...transformOrigin].join(', ')})`;\n\n const sstyles = sstyled(styles);\n const sLabelStyles = sstyles.cn('SLabel', {\n color: resolveColor(color),\n 'text-cursor': isHorizontal ? 'text' : 'vertical-text',\n transparent,\n });\n\n return (\n <SLabel\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n className={sLabelStyles.className}\n style={sLabelStyles.style}\n x={x.toFixed(2)}\n y={y.toFixed(2)}\n transform={transform}\n >\n {lines.map((lineText, lineIndex) => (\n <SLabelLine\n x={x}\n y={y + (lineIndex - (linesCount - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </SLabelLine>\n ))}\n <Children />\n </SLabel>\n ) as React.ReactElement;\n};\n\nconst Radian = createElement(RadialTreeRadian, {\n InteractiveArea,\n Line,\n Cap,\n Icon,\n Label,\n});\n\n/** @deprecated */\nexport interface IRadialTreeTitleProps extends RadialTreeTitleProps, UnknownProperties {}\nexport type RadialTreeTitleProps = {\n x?: number;\n y?: number;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n color?: string;\n};\n\ntype RadialTreeTitleAsProps = IRadialTreeTitleProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n children: React.ReactNode;\n styles: React.CSSProperties;\n dataHintsHandler: DataHintsHandler;\n resolveColor: (color?: string) => string;\n};\nconst Title: React.FC<RadialTreeTitleAsProps> = ({\n Element: STitle,\n Children,\n children,\n styles,\n textSize,\n color,\n resolveColor,\n x,\n y,\n dataHintsHandler,\n}) => {\n if (typeof children === 'string') {\n dataHintsHandler.setTitle('vertical', children);\n }\n return sstyled(styles)(\n <STitle\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n fontSize={textSize}\n fill={resolveColor(color)}\n x={x}\n y={y}\n >\n <Children />\n </STitle>,\n ) as React.ReactElement;\n};\n\ntype IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = Intergalactic.Tag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag, BaseTag, Props>;\n\nconst RadialTree = createElement(RadialTreeBase, { Title, Radian }) as IntergalacticD3Component<\n 'g',\n RadialTreeProps\n> & {\n Title: IntergalacticD3Component<'text', RadialTreeTitleProps>;\n Radian: IntergalacticD3Component<'g', RadialTreeRadianProps> & {\n Line: IntergalacticD3Component<'line', RadialTreeRadianLineProps>;\n Cap: IntergalacticD3Component<'circle', RadialTreeRadianCapProps>;\n Icon: IntergalacticD3Component<'g', RadialTreeRadianIconProps>;\n Label: IntergalacticD3Component<'text', RadialTreeRadianLabelProps>;\n };\n};\n\nexport default RadialTree;\n"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Plot.d.js","names":[],"sources":["../../../src/types/Plot.d.ts"],"sourcesContent":["import { BoxProps } from '@semcore/flex-box';\nimport { UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Context } from './context';\nimport { DataStructureHints } from './a11y/hints';\n\n/** @deprecated */\nexport interface IPlotProps extends PlotProps, UnknownProperties {}\nexport type PlotProps = Context &\n BoxProps & {\n /** Width of the svg element\n * @default 0*/\n width?: number;\n /** Height of the svg element\n * @default 0*/\n height?: number;\n /** Human readable chart name (e.g \"Last market trends\") */\n label?: string;\n /**\n * Locale for displaying the days of a week and months, to be transferred to `Intl`\n * @default en\n * */\n locale?: NavigatorLanguage['language'];\n /**\n * Optional container for data hints (use it if you have a legend component upper in tree)\n */\n dataHints?: DataStructureHints;\n /** Optional prop to tune up alt text generating for charts */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /** @deprecated */\n eventEmitter?: unknown;\n };\n\nexport type PlotSummarizerConfig = {\n /** Totally disable automatic data summarization */\n disable?: boolean;\n /** Disable automatic data summarization and use provided text */\n override?: string;\n /** Tuning up time series trends analyzing. Represents angle tangens of time series change of different strength */\n trendTangens?: {\n /** Angle tangens of time series that have meaningful trending change\n * @default 1/15\n */\n static?: number;\n /** Angle tangens of time series that have weak trending change\n * @default 1/10\n */\n weak?: number;\n /** Angle tangens of time series that have medium trending change\n * @default 1/5\n */\n medium?: number;\n /** Angle tangens of time series that have strong trending change\n * @default Infinity\n */\n strong?: number;\n };\n /** Tuning up time series local trends detection based on moving averages */\n movingAverage?: {\n /** Frame size of long moving average\n * @default Math.sqrt(data.length)\n */\n longSize?: number;\n /** Frame size of short moving average\n * @default Math.sqrt(data.length)/2\n */\n shortSize?: number;\n /** Absolute difference between values on moving averages crossing to\n * be handled as local trend change.\n * @default StandardDeviation/10\n */\n notableDiff?: number;\n };\n /** The way data to be interpreted as. By default is based on used used Plot elements and data structure.\n */\n dataType?: 'time-series' | 'points-cloud' | 'values-set';\n /** Grid size to split data of point clouds into clusters.\n */\n clustersGridSize?: number;\n /** Limits some output lists in chart alt text\n * @default 100\n * **/\n maxListSymbols?: number;\n /** Always add time to dates in chart alt text **/\n datesWithTime?: boolean;\n /** Described clusters count before text \"and X more\"\n * @default false\n * **/\n clustersLimit?: number;\n /** Described values count before text \"and X more\"\n * @default false\n * **/\n valuesLimit?: number;\n /** Described grouped value groups count before text \"and X more\"\n * @default false\n * **/\n groupsLimit?: number;\n /** Additional field for extra text description to the data\n * **/\n additionalFields?: string[];\n};\n\n/** @deprecated */\nexport type MapProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?:\n | ((props: Props & Ctx, handlers: UCProps) => Props | React.PropsWithChildren)\n | React.ReactNode;\n};\n\nexport type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = BaseTag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;\n\ndeclare const Plot: IntergalacticD3Component<'svg', PlotProps, Context>;\nexport default Plot;\n"],"mappings":""}
|
1
|
+
{"version":3,"file":"Plot.d.js","names":[],"sources":["../../../src/types/Plot.d.ts"],"sourcesContent":["import { BoxProps } from '@semcore/flex-box';\nimport { UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Context } from './context';\nimport { DataStructureHints } from './a11y/hints';\n\n/** @deprecated */\nexport interface IPlotProps extends PlotProps, UnknownProperties {}\nexport type PlotProps = Context &\n BoxProps & {\n /** Width of the svg element\n * @default 0*/\n width?: number;\n /** Height of the svg element\n * @default 0*/\n height?: number;\n /** Human readable chart name (e.g \"Last market trends\") */\n label?: string;\n /**\n * Locale for displaying the days of a week and months, to be transferred to `Intl`\n * @default en\n * */\n locale?: NavigatorLanguage['language'];\n /**\n * Optional container for data hints (use it if you have a legend component upper in tree)\n */\n dataHints?: DataStructureHints;\n /** Optional prop to tune up alt text generating for charts */\n a11yAltTextConfig?: PlotSummarizerConfig;\n\n /** @deprecated */\n eventEmitter?: unknown;\n };\n\nexport type PlotSummarizerConfig = {\n /** Totally disable automatic data summarization */\n disable?: boolean;\n /** Disable automatic data summarization and use provided text */\n override?: string;\n /** Tuning up time series trends analyzing. Represents angle tangens of time series change of different strength */\n trendTangens?: {\n /** Angle tangens of time series that have meaningful trending change\n * @default 1/15\n */\n static?: number;\n /** Angle tangens of time series that have weak trending change\n * @default 1/10\n */\n weak?: number;\n /** Angle tangens of time series that have medium trending change\n * @default 1/5\n */\n medium?: number;\n /** Angle tangens of time series that have strong trending change\n * @default Infinity\n */\n strong?: number;\n };\n /** Tuning up time series local trends detection based on moving averages */\n movingAverage?: {\n /** Frame size of long moving average\n * @default Math.sqrt(data.length)\n */\n longSize?: number;\n /** Frame size of short moving average\n * @default Math.sqrt(data.length)/2\n */\n shortSize?: number;\n /** Absolute difference between values on moving averages crossing to\n * be handled as local trend change.\n * @default StandardDeviation/10\n */\n notableDiff?: number;\n };\n /** The way data to be interpreted as. By default is based on used used Plot elements and data structure.\n */\n dataType?: 'time-series' | 'points-cloud' | 'values-set';\n /** Grid size to split data of point clouds into clusters.\n */\n clustersGridSize?: number;\n /** Limits some output lists in chart alt text\n * @default 100\n * **/\n maxListSymbols?: number;\n /** Always add time to dates in chart alt text **/\n datesWithTime?: boolean;\n /** Described clusters count before text \"and X more\"\n * @default false\n * **/\n clustersLimit?: number;\n /** Described values count before text \"and X more\"\n * @default false\n * **/\n valuesLimit?: number;\n /** Described grouped value groups count before text \"and X more\"\n * @default false\n * **/\n groupsLimit?: number;\n /** Additional field for extra text description to the data\n * **/\n additionalFields?: string[];\n};\n\n/** @deprecated */\nexport type MapProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?:\n | ((props: Props & Ctx, handlers: UCProps) => Props | React.PropsWithChildren)\n | React.ReactNode;\n};\n\nexport type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = BaseTag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag, BaseTag, Props>;\n\ndeclare const Plot: IntergalacticD3Component<'svg', PlotProps, Context>;\nexport default Plot;\n"],"mappings":""}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Tooltip.d.js","names":[],"sources":["../../../src/types/Tooltip.d.ts"],"sourcesContent":["import Popper, { PopperProps, PopperTriggerProps } from '@semcore/popper';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Box, BoxProps } from '@semcore/flex-box';\nimport { Context } from './context';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface ITooltipChartProps extends TooltipChartProps, UnknownProperties {}\nexport type TooltipChartProps = PopperProps &\n PopperTriggerProps &\n Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n };\n\n/** @deprecated */\nexport interface ITooltipChartContext extends TooltipChartContext, UnknownProperties {\n /** Index active value for Axis x */\n xIndex: number | null;\n /** Index active value for Axis y */\n yIndex: number | null;\n}\nexport type TooltipChartContext = {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n};\n\nexport type TooltipTypeBase = {\n Trigger: typeof Popper.Trigger;\n Popper: typeof Popper.Popper;\n Title: typeof Box;\n Dot: IntergalacticD3Component<'div', BoxProps & { color?: string }, TooltipChartContext>;\n Footer: typeof Box;\n};\n\nexport type TooltipType<ChildrenRenderProps = {}, TooltipProps = {}> = (<\n Tag extends Intergalactic.Tag = typeof Box,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n TooltipProps,\n ChildrenRenderProps & TooltipChartContext\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive
|
1
|
+
{"version":3,"file":"Tooltip.d.js","names":[],"sources":["../../../src/types/Tooltip.d.ts"],"sourcesContent":["import Popper, { PopperProps, PopperTriggerProps } from '@semcore/popper';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Box, BoxProps } from '@semcore/flex-box';\nimport { Context } from './context';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface ITooltipChartProps extends TooltipChartProps, UnknownProperties {}\nexport type TooltipChartProps = PopperProps &\n PopperTriggerProps &\n Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n };\n\n/** @deprecated */\nexport interface ITooltipChartContext extends TooltipChartContext, UnknownProperties {\n /** Index active value for Axis x */\n xIndex: number | null;\n /** Index active value for Axis y */\n yIndex: number | null;\n}\nexport type TooltipChartContext = {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n};\n\nexport type TooltipTypeBase = {\n Trigger: typeof Popper.Trigger;\n Popper: typeof Popper.Popper;\n Title: typeof Box;\n Dot: IntergalacticD3Component<'div', BoxProps & { color?: string }, TooltipChartContext>;\n Footer: typeof Box;\n};\n\nexport type TooltipType<ChildrenRenderProps = {}, TooltipProps = {}> = (<\n Tag extends Intergalactic.Tag = typeof Box,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n TooltipProps,\n ChildrenRenderProps & TooltipChartContext\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<\n Intergalactic.Tag,\n Intergalactic.Tag,\n TooltipProps\n > &\n TooltipTypeBase;\n\n/**\n * @deprecated Consider migration to better typed Bubble.Tooltip, HoverLine.Tooltip,\n * HoverRect.Tooltip, Donut.Tooltip, Radar.Tooltip,\n * ScatterPlot.Tooltip or Venn.Tooltip.\n *\n * Migration examples:\n * 1. `<Tooltip tag={HoverLine}>...</Tooltip>` => `<HoverLine.Tooltip>...</HoverLine.Tooltip>`\n * 2. `<Tooltip tag={HoverRect}>...</Tooltip>` => `<HoverRect.Tooltip>...</HoverRect.Tooltip>`\n * 3. `<Tooltip tag={Radar.Hover}>...</Tooltip>` => `<Radar.Tooltip>...</Radar.Tooltip>`\n * 4. `<Tooltip>...</Tooltip>` => `<Bubble.Tooltip>...</Bubble.Tooltip>`\n * 5. `<Tooltip>...</Tooltip>` => `<Donut.Tooltip>...</Donut.Tooltip>`\n * 6. `<Tooltip>...</Tooltip>` => `<ScatterPlot.Tooltip>...</ScatterPlot.Tooltip>`\n * 7. `<Tooltip>...</Tooltip>` => `<Venn.Tooltip>...</Venn.Tooltip>`\n */\ndeclare const Tooltip: TooltipType;\n\nexport default Tooltip;\n"],"mappings":""}
|
@@ -112,7 +112,7 @@ export type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, C
|
|
112
112
|
>(
|
113
113
|
props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,
|
114
114
|
) => Intergalactic.InternalTypings.ComponentRenderingResults) &
|
115
|
-
Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;
|
115
|
+
Intergalactic.InternalTypings.ComponentAdditive<BaseTag, BaseTag, Props>;
|
116
116
|
|
117
117
|
declare const Plot: IntergalacticD3Component<'svg', PlotProps, Context>;
|
118
118
|
export default Plot;
|
@@ -227,8 +227,8 @@ export type RadialTreeTitleProps = {
|
|
227
227
|
['data-radial-animation']?: `${string}-label`;
|
228
228
|
color?: string;
|
229
229
|
};
|
230
|
-
type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<Tag extends Intergalactic.Tag = Intergalactic.Tag>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;
|
231
|
-
declare const RadialTree: (<Tag extends Intergalactic.InternalTypings.ComponentTag = Intergalactic.InternalTypings.ComponentTag>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, RadialTreeProps, {}, never[]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<"g"> & {
|
230
|
+
type IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<Tag extends Intergalactic.Tag = Intergalactic.Tag>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<BaseTag, BaseTag, Props>;
|
231
|
+
declare const RadialTree: (<Tag extends Intergalactic.InternalTypings.ComponentTag = Intergalactic.InternalTypings.ComponentTag>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, RadialTreeProps, {}, never[]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<"g", "g", RadialTreeProps, {}, {}> & {
|
232
232
|
Title: IntergalacticD3Component<'text', RadialTreeTitleProps>;
|
233
233
|
Radian: IntergalacticD3Component<'g', RadialTreeRadianProps> & {
|
234
234
|
Line: IntergalacticD3Component<'line', RadialTreeRadianLineProps>;
|
@@ -44,7 +44,11 @@ export type TooltipType<ChildrenRenderProps = {}, TooltipProps = {}> = (<
|
|
44
44
|
ChildrenRenderProps & TooltipChartContext
|
45
45
|
>,
|
46
46
|
) => Intergalactic.InternalTypings.ComponentRenderingResults) &
|
47
|
-
Intergalactic.InternalTypings.ComponentAdditive<
|
47
|
+
Intergalactic.InternalTypings.ComponentAdditive<
|
48
|
+
Intergalactic.Tag,
|
49
|
+
Intergalactic.Tag,
|
50
|
+
TooltipProps
|
51
|
+
> &
|
48
52
|
TooltipTypeBase;
|
49
53
|
|
50
54
|
/**
|
@@ -124,29 +124,81 @@ type DataTableCtx = {
|
|
124
124
|
getHeadProps: PropGetterFn;
|
125
125
|
getBodyProps: PropGetterFn;
|
126
126
|
};
|
127
|
-
type
|
127
|
+
type IntergalacticDataTableComponent<PropsExtending extends {} = {}> = (<Data extends DataTableData[], Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableProps<Data> & PropsExtending, DataTableCtx, never>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps>;
|
128
|
+
type IntergalacticDataTableRowComponent<PropsExtending extends {} = {}> = (<Data extends DataTableData[], Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, DataTableRowProps & {
|
128
129
|
/**
|
129
130
|
* That property is ONLY used for the component strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.
|
130
131
|
*/
|
131
132
|
data?: Data;
|
132
|
-
}, DataTableCtx & {
|
133
|
+
} & PropsExtending, DataTableCtx & {
|
133
134
|
data: Data;
|
134
135
|
}, [
|
135
136
|
row: Data[0],
|
136
137
|
index: number
|
137
|
-
]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div'>;
|
138
|
-
type IntergalacticDataTableCellComponent = (<Data extends DataTableData[] = [], Name extends string = string, Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, DataTableCellProps<Name> & {
|
138
|
+
]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps>;
|
139
|
+
type IntergalacticDataTableCellComponent<PropsExtending extends {} = {}> = (<Data extends DataTableData[] = [], Name extends string = string, Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, DataTableCellProps<Name> & {
|
139
140
|
/**
|
140
141
|
* That property is ONLY used for the componenct strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.
|
141
142
|
*/
|
142
143
|
data?: Data;
|
143
|
-
}, DataTableCtx & {
|
144
|
+
} & PropsExtending, DataTableCtx & {
|
144
145
|
data: Data;
|
145
146
|
}, [
|
146
147
|
row: Data[0],
|
147
148
|
index: number
|
148
|
-
]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div'>;
|
149
|
-
declare const DefinitionTable: (<Data extends DataTableData[], Tag extends Intergalactic.InternalTypings.ComponentTag = "div">(props: Intergalactic.InternalTypings.ComponentProps<Tag, "div",
|
149
|
+
]>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableCellProps>;
|
150
|
+
declare const DefinitionTable: (<Data extends DataTableData[], Tag extends Intergalactic.InternalTypings.ComponentTag = "div">(props: Intergalactic.InternalTypings.ComponentProps<Tag, "div", import("@semcore/core").StyledProps & {
|
151
|
+
display?: Property.Display | undefined;
|
152
|
+
inline?: boolean | undefined;
|
153
|
+
boxSizing?: boolean | "border-box" | undefined;
|
154
|
+
flex?: Property.Flex<string> | undefined;
|
155
|
+
m?: string | number | undefined;
|
156
|
+
mt?: string | number | undefined;
|
157
|
+
mr?: string | number | undefined;
|
158
|
+
mb?: string | number | undefined;
|
159
|
+
ml?: string | number | undefined;
|
160
|
+
mx?: string | number | undefined;
|
161
|
+
my?: string | number | undefined;
|
162
|
+
p?: string | number | undefined;
|
163
|
+
pt?: string | number | undefined;
|
164
|
+
pr?: string | number | undefined;
|
165
|
+
pb?: string | number | undefined;
|
166
|
+
pl?: string | number | undefined;
|
167
|
+
px?: string | number | undefined;
|
168
|
+
py?: string | number | undefined;
|
169
|
+
w?: string | number | undefined;
|
170
|
+
wMin?: string | number | undefined;
|
171
|
+
wMax?: string | number | undefined;
|
172
|
+
h?: string | number | undefined;
|
173
|
+
hMin?: string | number | undefined;
|
174
|
+
hMax?: string | number | undefined;
|
175
|
+
scaleIndent?: number | undefined;
|
176
|
+
css?: React.CSSProperties | undefined;
|
177
|
+
position?: Property.Position | undefined;
|
178
|
+
top?: string | number | undefined;
|
179
|
+
left?: string | number | undefined;
|
180
|
+
bottom?: string | number | undefined;
|
181
|
+
right?: string | number | undefined;
|
182
|
+
zIndex?: number | undefined;
|
183
|
+
children?: React.ReactNode;
|
184
|
+
} & {
|
185
|
+
/** Table theme according to visual hierarchy on the page
|
186
|
+
* @default primary
|
187
|
+
* */
|
188
|
+
use?: DataTableUse | undefined;
|
189
|
+
/** Data for table */
|
190
|
+
data?: Data | undefined;
|
191
|
+
/** Active sort object */
|
192
|
+
sort?: DataTableSort<keyof Data[0]> | undefined;
|
193
|
+
/** Handler call when request will change sort */
|
194
|
+
onSortChange?: ((sort: DataTableSort<keyof Data[0]>, e?: React.SyntheticEvent) => void) | undefined;
|
195
|
+
/** Field name in one data entity that is unique accross all dataset
|
196
|
+
* @default id
|
197
|
+
*/
|
198
|
+
uniqueKey?: keyof Data[0] | undefined;
|
199
|
+
/** Make cells compact by changing left and right paddings to smaller ones*/
|
200
|
+
compact?: boolean | undefined;
|
201
|
+
}, DataTableCtx, never>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<"div", "div", DataTableProps<UnknownProperties[]>, {}, {}> & {
|
150
202
|
Head: Intergalactic.Component<'div', DataTableHeadProps>;
|
151
203
|
Body: Intergalactic.Component<'div', DataTableBodyProps>;
|
152
204
|
Column: Intergalactic.Component<'div', DataTableColumnProps>;
|
@@ -155,3 +207,15 @@ declare const DefinitionTable: (<Data extends DataTableData[], Tag extends Inter
|
|
155
207
|
};
|
156
208
|
export { ROW_GROUP };
|
157
209
|
export default DefinitionTable;
|
210
|
+
export declare const wrapDataTable: <PropsExtending extends {}>(wrapper: (props: Intergalactic.InternalTypings.EfficientOmit<Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableComponent<{}>>, "ref" | "tag"> & {
|
211
|
+
ref: React.Ref<any>;
|
212
|
+
tag: Intergalactic.InternalTypings.ComponentTag;
|
213
|
+
} & PropsExtending) => React.ReactNode) => IntergalacticDataTableComponent<PropsExtending>;
|
214
|
+
export declare const wrapDataTableRow: <PropsExtending extends {}>(wrapper: (props: Intergalactic.InternalTypings.EfficientOmit<Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableRowComponent<{}>>, "ref" | "tag"> & {
|
215
|
+
ref: React.Ref<any>;
|
216
|
+
tag: Intergalactic.InternalTypings.ComponentTag;
|
217
|
+
} & PropsExtending) => React.ReactNode) => IntergalacticDataTableRowComponent<PropsExtending>;
|
218
|
+
export declare const wrapDataTableCell: <PropsExtending extends {}>(wrapper: (props: Intergalactic.InternalTypings.EfficientOmit<Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableCellComponent<{}>>, "ref" | "tag"> & {
|
219
|
+
ref: React.Ref<any>;
|
220
|
+
tag: Intergalactic.InternalTypings.ComponentTag;
|
221
|
+
} & PropsExtending) => React.ReactNode) => IntergalacticDataTableCellComponent<PropsExtending>;
|
@@ -5,7 +5,7 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
6
6
|
value: true
|
7
7
|
});
|
8
|
-
exports["default"] = exports.ROW_GROUP = void 0;
|
8
|
+
exports.wrapDataTableRow = exports.wrapDataTableCell = exports.wrapDataTable = exports["default"] = exports.ROW_GROUP = void 0;
|
9
9
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
10
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
11
11
|
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
|
@@ -427,4 +427,16 @@ var DefinitionTable = (0, _core["default"])(RootDefinitionTable, {
|
|
427
427
|
}, {});
|
428
428
|
var _default = DefinitionTable;
|
429
429
|
exports["default"] = _default;
|
430
|
+
var wrapDataTable = function wrapDataTable(wrapper) {
|
431
|
+
return wrapper;
|
432
|
+
};
|
433
|
+
exports.wrapDataTable = wrapDataTable;
|
434
|
+
var wrapDataTableRow = function wrapDataTableRow(wrapper) {
|
435
|
+
return wrapper;
|
436
|
+
};
|
437
|
+
exports.wrapDataTableRow = wrapDataTableRow;
|
438
|
+
var wrapDataTableCell = function wrapDataTableCell(wrapper) {
|
439
|
+
return wrapper;
|
440
|
+
};
|
441
|
+
exports.wrapDataTableCell = wrapDataTableCell;
|
430
442
|
//# sourceMappingURL=DataTable.js.map
|