yukit-web 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +97 -10
- package/fesm2022/yukit-web-chart.mjs +650 -0
- package/fesm2022/yukit-web-chart.mjs.map +1 -0
- package/fesm2022/yukit-web-helm-autocomplete.mjs +1 -1
- package/fesm2022/yukit-web-helm-autocomplete.mjs.map +1 -1
- package/fesm2022/yukit-web-helm-calendar.mjs +3 -3
- package/fesm2022/yukit-web-helm-calendar.mjs.map +1 -1
- package/fesm2022/yukit-web-helm-select.mjs +1 -1
- package/fesm2022/yukit-web-helm-select.mjs.map +1 -1
- package/fesm2022/yukit-web-helm-switch.mjs +1 -1
- package/fesm2022/yukit-web-helm-switch.mjs.map +1 -1
- package/fesm2022/yukit-web.mjs +278 -10
- package/fesm2022/yukit-web.mjs.map +1 -1
- package/package.json +16 -2
- package/src/lib/theme/spartan-overwrites/accordion.css +2 -1
- package/src/lib/theme/tokens/color.css +23 -0
- package/types/yukit-web-chart.d.ts +219 -0
- package/types/yukit-web.d.ts +140 -5
- package/.npm/_cacache/content-v2/sha512/12/b2/45271ab4776eed53a96bb88c93b6347ee7509ad0c3fa78204e7d5a93b2c01630d945bddedf05169c6ba568cf82dc60ac2846fabe107bfeaac1d6810ecd32 +0 -1
- package/.npm/_cacache/index-v5/64/dc/73c7a26f2e6eb0c711133d96c247da5ecf0eba708cd37c450a7b3c7cb488 +0 -2
- package/.npm/_logs/2026-10-15T07_02_08_999Z-debug-0.log +0 -35
- package/.npm/_logs/2026-10-15T07_02_09_460Z-debug-0.log +0 -14
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yukit-web-chart.mjs","sources":["../../../projects/yukit-web/chart/src/lib/chart.interface.ts","../../../projects/yukit-web/chart/src/lib/layouts/chart-geometry.ts","../../../projects/yukit-web/chart/src/lib/layouts/cartesian-axis.ts","../../../projects/yukit-web/chart/src/lib/layouts/cartesian-values.ts","../../../projects/yukit-web/chart/src/lib/layouts/cartesian.layout.ts","../../../projects/yukit-web/chart/src/lib/layouts/pie.layout.ts","../../../projects/yukit-web/chart/src/lib/chart.registry.ts","../../../projects/yukit-web/chart/src/lib/chart-size.ts","../../../projects/yukit-web/chart/src/lib/chart.variants.ts","../../../projects/yukit-web/chart/src/lib/chart.component.ts","../../../projects/yukit-web/chart/src/lib/chart.component.html","../../../projects/yukit-web/chart/src/yukit-web-chart.ts"],"sourcesContent":["/** Theme token a series is painted with; `chart-n` resolves to the `--chart-n` custom property of `yukit-web/theme.css`. */\nexport type YuwChartColorDto =\n 'chart-1' | 'chart-2' | 'chart-3' | 'chart-4' | 'chart-5' | 'chart-6' | 'chart-7' | 'chart-8';\n\n/** Every chart token, in palette order. */\nexport const YUW_CHART_COLORS: readonly YuwChartColorDto[] = [\n 'chart-1',\n 'chart-2',\n 'chart-3',\n 'chart-4',\n 'chart-5',\n 'chart-6',\n 'chart-7',\n 'chart-8',\n];\n\n/**\n * How one series is shown: its label, already translated by the consumer, and its color token.\n */\nexport interface YuwChartSeriesDto {\n readonly color: YuwChartColorDto;\n readonly label: string;\n}\n\n/**\n * Series of a chart keyed by the data field holding their values. The key order is the drawing, stacking, legend\n * and tooltip order.\n */\nexport type YuwChartConfigDto = Readonly<Record<string, YuwChartSeriesDto>>;\n\n/** One data row: the category under `categoryKey` and one number per series key. */\nexport type YuwChartRowDto = Readonly<Record<string, unknown>>;\n\n/**\n * Chart kind. Bars group their series side by side unless the kind is `-stacked`; `bar-horizontal` lays the categories\n * on the vertical axis. `pie` and `donut` draw one slice per series, its value summed across every row.\n */\nexport type YuwChartKindDto =\n | 'area'\n | 'area-stacked'\n | 'bar'\n | 'bar-horizontal'\n | 'bar-horizontal-stacked'\n | 'bar-stacked'\n | 'donut'\n | 'line'\n | 'pie';\n\n/** Turns a value into the text shown on axes, tooltips and the accessible table, e.g. a localized currency. */\nexport type YuwChartValueFormatDto = (value: number) => string;\n\n/** Turns the value under `categoryKey` into its label, e.g. a localized month name. */\nexport type YuwChartCategoryFormatDto = (category: unknown) => string;\n\n/** Color token of the series at `index`, cycling through the palette: builds a config for a dynamic set of series. */\nexport function yuwChartColorAt(index: number): YuwChartColorDto {\n const count = YUW_CHART_COLORS.length;\n\n return YUW_CHART_COLORS[((index % count) + count) % count];\n}\n","import type { YuwChartColorDto, YuwChartConfigDto, YuwChartRowDto } from '../chart.interface';\nimport type { YuwChartScene, YuwChartTable } from '../chart-scene.interface';\n\n/** Average advance of a glyph at the `text-xs` size axis labels use, to reserve room without measuring text. */\nexport const CHART_CHAR_WIDTH = 7;\n\nexport interface YuwChartSeries {\n readonly color: string;\n readonly key: string;\n readonly label: string;\n}\n\nexport function cssColor(color: YuwChartColorDto): string {\n return `var(--${color})`;\n}\n\nexport function seriesOf(config: YuwChartConfigDto): YuwChartSeries[] {\n return Object.entries(config).map(([key, series]) => ({ key, label: series.label, color: cssColor(series.color) }));\n}\n\n/** A finite number, or `null` for anything else: a missing value is a gap, never a zero. */\nexport function valueOf(row: YuwChartRowDto, key: string): number | null {\n const value = row[key];\n\n return typeof value === 'number' && Number.isFinite(value) ? value : null;\n}\n\nexport function textWidth(labels: readonly string[]): number {\n return labels.reduce((widest, label) => Math.max(widest, label.length), 0) * CHART_CHAR_WIDTH;\n}\n\nexport function rectPath(x: number, y: number, width: number, height: number, radius = 0): string {\n const r = Math.max(0, Math.min(radius, width / 2, height / 2));\n\n return (\n `M${x + r},${y}h${width - 2 * r}a${r},${r} 0 0 1 ${r},${r}v${height - 2 * r}` +\n `a${r},${r} 0 0 1 ${-r},${r}h${2 * r - width}a${r},${r} 0 0 1 ${-r},${-r}` +\n `v${2 * r - height}a${r},${r} 0 0 1 ${r},${-r}Z`\n );\n}\n\nexport function emptyScene(table: YuwChartTable): YuwChartScene {\n return { cursorPaint: 'band', empty: true, grid: [], hits: [], marks: [], origin: { x: 0, y: 0 }, table, ticks: [] };\n}\n","import { area, type CurveFactory, curveMonotoneX, curveMonotoneY } from 'd3-shape';\nimport type { YuwChartTick } from '../chart-scene.interface';\nimport { CHART_CHAR_WIDTH, rectPath } from './chart-geometry';\n\n/** Pixel edges of the plot, inside the room reserved for the axis labels. */\nexport interface CartesianPlot {\n readonly bottom: number;\n readonly left: number;\n readonly right: number;\n readonly top: number;\n}\n\n/** Room reserved around the plot for the axis labels. */\nexport interface CartesianMargins {\n readonly bottom: number;\n readonly left: number;\n readonly right: number;\n readonly top: number;\n}\n\n/** A value interval at one category, in pixels: what a bar or an area covers. */\nexport interface CartesianSpan {\n readonly base: number;\n readonly category: number;\n readonly top: number;\n}\n\n/**\n * Everything that changes when a cartesian chart is turned on its side. Layouts speak of categories and values, and\n * the orientation alone decides which of them is `x`.\n */\nexport interface CartesianOrientation {\n readonly curve: CurveFactory;\n anchor(plot: CartesianPlot, category: number): { x: number; y: number };\n area(spans: readonly CartesianSpan[]): string;\n band(plot: CartesianPlot, start: number, end: number): string;\n bar(category: number, size: number, base: number, top: number, radius: number): string;\n categoryRange(plot: CartesianPlot): [number, number];\n categoryTick(plot: CartesianPlot, category: number, label: string): YuwChartTick;\n cursor(plot: CartesianPlot, category: number): string;\n grid(plot: CartesianPlot, value: number): string;\n categoryLabelChars(margins: CartesianMargins): number;\n categoryLabelRoom(categoryLabelWidth: number): number;\n margins(width: number, valueLabelWidth: number, categoryLabelWidth: number): CartesianMargins;\n point(category: number, value: number): [number, number];\n valueRange(plot: CartesianPlot): [number, number];\n valueTick(plot: CartesianPlot, value: number, label: string): YuwChartTick;\n valueTickCount(plot: CartesianPlot, valueLabelWidth: number): number;\n}\n\nconst LABEL_GAP = 8;\nconst AXIS_ROOM = 24;\nconst LINE_HEIGHT = 16;\nconst MAX_VALUE_TICKS = 5;\n\nfunction tickCount(length: number, room: number): number {\n return Math.max(2, Math.min(MAX_VALUE_TICKS, Math.floor(length / room)));\n}\n\nexport const VERTICAL: CartesianOrientation = {\n curve: curveMonotoneX,\n anchor: (plot, category) => ({ x: category, y: (plot.top + plot.bottom) / 2 }),\n area: (spans) =>\n area<CartesianSpan>()\n .x((span) => span.category)\n .y0((span) => span.base)\n .y1((span) => span.top)\n .curve(curveMonotoneX)(spans) ?? '',\n band: (plot, start, end) => rectPath(start, plot.top, end - start, plot.bottom - plot.top),\n bar: (category, size, base, top, radius) =>\n rectPath(category, Math.min(base, top), size, Math.abs(base - top), radius),\n categoryLabelChars: () => Number.POSITIVE_INFINITY,\n categoryLabelRoom: (categoryLabelWidth) => categoryLabelWidth + LABEL_GAP,\n categoryRange: (plot) => [plot.left, plot.right],\n categoryTick: (plot, category, label) => ({ anchor: 'middle', label, x: category, y: plot.bottom + AXIS_ROOM - 6 }),\n cursor: (plot, category) => `M${category},${plot.top}V${plot.bottom}`,\n grid: (plot, value) => `M${plot.left},${value}H${plot.right}`,\n margins: (_width, valueLabelWidth) => ({\n top: LABEL_GAP,\n right: LABEL_GAP,\n bottom: AXIS_ROOM,\n left: valueLabelWidth + LABEL_GAP,\n }),\n point: (category, value) => [category, value],\n valueRange: (plot) => [plot.bottom, plot.top],\n valueTick: (plot, value, label) => ({ anchor: 'end', label, x: plot.left - LABEL_GAP, y: value }),\n valueTickCount: (plot) => tickCount(plot.bottom - plot.top, 2 * LINE_HEIGHT),\n};\n\nexport const HORIZONTAL: CartesianOrientation = {\n curve: curveMonotoneY,\n anchor: (plot, category) => ({ x: plot.right, y: category }),\n area: (spans) =>\n area<CartesianSpan>()\n .y((span) => span.category)\n .x0((span) => span.base)\n .x1((span) => span.top)\n .curve(curveMonotoneY)(spans) ?? '',\n band: (plot, start, end) => rectPath(plot.left, start, plot.right - plot.left, end - start),\n bar: (category, size, base, top, radius) =>\n rectPath(Math.min(base, top), category, Math.abs(base - top), size, radius),\n categoryLabelChars: (margins) => Math.max(1, Math.floor((margins.left - LABEL_GAP) / CHART_CHAR_WIDTH)),\n categoryLabelRoom: () => LINE_HEIGHT,\n categoryRange: (plot) => [plot.top, plot.bottom],\n categoryTick: (plot, category, label) => ({ anchor: 'end', label, x: plot.left - LABEL_GAP, y: category }),\n cursor: (plot, category) => `M${plot.left},${category}H${plot.right}`,\n grid: (plot, value) => `M${value},${plot.top}V${plot.bottom}`,\n margins: (width, valueLabelWidth, categoryLabelWidth) => ({\n top: LABEL_GAP,\n right: Math.max(LABEL_GAP, valueLabelWidth / 2),\n bottom: AXIS_ROOM,\n left: Math.min(categoryLabelWidth, width * 0.4) + LABEL_GAP,\n }),\n point: (category, value) => [value, category],\n valueRange: (plot) => [plot.left, plot.right],\n valueTick: (plot, value, label) => ({ anchor: 'middle', label, x: value, y: plot.bottom + AXIS_ROOM - 6 }),\n valueTickCount: (plot, valueLabelWidth) => tickCount(plot.right - plot.left, valueLabelWidth + 2 * LABEL_GAP),\n};\n","import { stack, stackOffsetDiverging, stackOffsetNone } from 'd3-shape';\nimport type { YuwChartRowDto } from '../chart.interface';\nimport { valueOf } from './chart-geometry';\n\n/**\n * Where one series sits at one category, in data units: from `base` to `top`. `value` is what the row holds, `null`\n * when it holds none and the series only keeps its place in a stack.\n */\nexport interface CartesianValue {\n readonly base: number;\n readonly top: number;\n readonly value: number | null;\n}\n\n/** The value of every series at every category (`null` for a missing one) and the extent they span. */\nexport interface CartesianValues {\n readonly domain: [number, number];\n readonly byKey: ReadonlyMap<string, readonly (CartesianValue | null)[]>;\n}\n\nexport type CartesianValueModel = (rows: readonly YuwChartRowDto[], keys: readonly string[]) => CartesianValues;\n\nfunction extentWithZero(values: readonly (CartesianValue | null)[][]): [number, number] {\n const ends = values.flat().flatMap((value) => (value ? [value.base, value.top] : []));\n const min = Math.min(0, ...ends);\n const max = Math.max(0, ...ends);\n\n return [min, max === min ? min + 1 : max];\n}\n\n/** Every series starts from zero. */\nexport const sideBySide: CartesianValueModel = (rows, keys) => {\n const columns = keys.map((key) =>\n rows.map((row) => {\n const value = valueOf(row, key);\n\n return value === null ? null : { base: 0, top: value, value };\n }),\n );\n\n return { domain: extentWithZero(columns), byKey: new Map(keys.map((key, index) => [key, columns[index]])) };\n};\n\n/** Each series starts where the previous one ended, following `offset`. */\nfunction stackedBy(offset: typeof stackOffsetNone): CartesianValueModel {\n return (rows, keys) => {\n const layers = stack<YuwChartRowDto, string>()\n .keys(keys)\n .value((row, key) => valueOf(row, key) ?? 0)\n .offset(offset)(rows);\n const columns = layers.map((layer) =>\n layer.map(([base, top], index) => ({ base, top, value: valueOf(rows[index], layer.key) })),\n );\n\n return { domain: extentWithZero(columns), byKey: new Map(keys.map((key, index) => [key, columns[index]])) };\n };\n}\n\n/** A continuous stack, so an area keeps its height where a series holds nothing. */\nexport const stacked = stackedBy(stackOffsetNone);\n\n/** Positive values stack upwards and negative ones downwards from zero, as bars need. */\nexport const stackedDiverging = stackedBy(stackOffsetDiverging);\n","import { scaleBand, scaleLinear, scalePoint } from 'd3-scale';\nimport { line } from 'd3-shape';\nimport type { YuwChartRowDto } from '../chart.interface';\nimport type {\n YuwChartLayout,\n YuwChartMark,\n YuwChartPoint,\n YuwChartScene,\n YuwChartSceneInput,\n YuwChartTable,\n YuwChartTick,\n YuwChartTooltip,\n} from '../chart-scene.interface';\nimport type { CartesianOrientation, CartesianPlot, CartesianSpan } from './cartesian-axis';\nimport type { CartesianValue, CartesianValueModel, CartesianValues } from './cartesian-values';\nimport { emptyScene, seriesOf, textWidth, valueOf, type YuwChartSeries } from './chart-geometry';\n\nconst VALUE_TICKS = 5;\nconst BAR_RADIUS = 4;\n\n/** What highlights the active category: its whole band behind bars, a rule across lines and areas. */\nconst CURSORS: Record<\n YuwChartScene['cursorPaint'],\n (orientation: CartesianOrientation, plot: CartesianPlot, start: number, end: number, center: number) => string\n> = {\n band: (orientation, plot, start, end) => orientation.band(plot, start, end),\n line: (orientation, plot, _start, _end, center) => orientation.cursor(plot, center),\n};\n\n/** Where each category sits along its axis: `starts` and `size` frame its bars, `centers` place its points. */\nexport interface CartesianCategories {\n readonly centers: readonly number[];\n readonly size: number;\n readonly starts: readonly number[];\n}\n\nexport type CartesianCategoryScale = (count: number, range: [number, number]) => CartesianCategories;\n\n/** What a mark builder draws with: the measured plot, the scaled values and where every category sits. */\nexport interface CartesianFrame {\n readonly categories: CartesianCategories;\n readonly orientation: CartesianOrientation;\n readonly scale: (value: number) => number;\n readonly series: readonly YuwChartSeries[];\n readonly values: CartesianValues;\n}\n\nexport interface CartesianMarkBuilder {\n readonly cursor: YuwChartScene['cursorPaint'];\n readonly points: boolean;\n marks(frame: CartesianFrame): YuwChartMark[];\n}\n\nexport interface CartesianOptions {\n readonly categories: CartesianCategoryScale;\n readonly marks: CartesianMarkBuilder;\n readonly orientation: CartesianOrientation;\n readonly values: CartesianValueModel;\n}\n\n/** Categories as bands, so bars have a width. */\nexport const bands: CartesianCategoryScale = (count, range) => {\n const scale = scaleBand<number>().domain(indices(count)).range(range).paddingInner(0.2).paddingOuter(0.1);\n const starts = indices(count).map((index) => scale(index) ?? 0);\n\n return { starts, size: scale.bandwidth(), centers: starts.map((start) => start + scale.bandwidth() / 2) };\n};\n\n/** Categories as points spanning the whole axis, so lines reach both edges. */\nexport const points: CartesianCategoryScale = (count, range) => {\n const scale = scalePoint<number>().domain(indices(count)).range(range);\n const centers = indices(count).map((index) => scale(index) ?? 0);\n\n return { starts: centers, size: 0, centers };\n};\n\n/** Bars of every series side by side inside the category band. */\nexport const groupedBars: CartesianMarkBuilder = {\n cursor: 'band',\n points: false,\n marks: ({ categories, orientation, scale, series, values }) => {\n const inner = scaleBand<string>()\n .domain(series.map((item) => item.key))\n .range([0, categories.size])\n .padding(0.1);\n\n return series.flatMap((item) =>\n barsOf(values, item).map(({ index, value }) => ({\n color: item.color,\n d: orientation.bar(\n categories.starts[index] + (inner(item.key) ?? 0),\n inner.bandwidth(),\n scale(value.base),\n scale(value.top),\n BAR_RADIUS,\n ),\n hit: index,\n key: item.key,\n paint: 'fill' as const,\n })),\n );\n },\n};\n\n/** One bar per category, each series a segment of it. */\nexport const stackedBars: CartesianMarkBuilder = {\n cursor: 'band',\n points: false,\n marks: ({ categories, orientation, scale, series, values }) =>\n series.flatMap((item) =>\n barsOf(values, item).map(({ index, value }) => ({\n color: item.color,\n d: orientation.bar(categories.starts[index], categories.size, scale(value.base), scale(value.top), 0),\n hit: index,\n key: item.key,\n paint: 'fill' as const,\n })),\n ),\n};\n\nexport const lines: CartesianMarkBuilder = {\n cursor: 'line',\n points: true,\n marks: (frame) => frame.series.map((item) => strokeOf(frame, item)),\n};\n\n/** A translucent band under each series, outlined by its line. */\nexport const areas: CartesianMarkBuilder = {\n cursor: 'line',\n points: true,\n marks: (frame) =>\n frame.series.flatMap((item) => [\n {\n color: item.color,\n d: frame.orientation.area(spansOf(frame, item)),\n hit: null,\n key: item.key,\n paint: 'area' as const,\n },\n strokeOf(frame, item),\n ]),\n};\n\n/** A bar, line or area chart: the categories along one axis, the values along the other. */\nexport function cartesianLayout(options: CartesianOptions): YuwChartLayout {\n return (input) => {\n const series = seriesOf(input.config);\n const table = tableOf(input, series);\n\n if (input.data.length === 0 || series.length === 0) {\n return emptyScene(table);\n }\n\n return sceneOf(options, input, series, table);\n };\n}\n\nfunction sceneOf(\n options: CartesianOptions,\n input: YuwChartSceneInput,\n series: readonly YuwChartSeries[],\n table: YuwChartTable,\n): YuwChartScene {\n const { orientation } = options;\n const values = options.values(\n input.data,\n series.map((item) => item.key),\n );\n const value = scaleLinear().domain(values.domain).nice();\n const labelWidth = textWidth(value.ticks(VALUE_TICKS).map((tick) => input.valueFormat(tick)));\n const titles = input.data.map((row) => titleOf(input, row));\n const margins = orientation.margins(input.width, labelWidth, textWidth(titles));\n const plot: CartesianPlot = {\n top: margins.top,\n left: margins.left,\n right: Math.max(margins.left + 1, input.width - margins.right),\n bottom: Math.max(margins.top + 1, input.height - margins.bottom),\n };\n const tickCount = orientation.valueTickCount(plot, labelWidth);\n const candidates = value.ticks(tickCount);\n const tickValues = candidates.filter((_tick, index) => index % Math.ceil(candidates.length / tickCount) === 0);\n const valueLabels = tickValues.map((tick) => input.valueFormat(tick));\n const scale = value.range(orientation.valueRange(plot));\n const range = orientation.categoryRange(plot);\n const categories = options.categories(input.data.length, range);\n const frame: CartesianFrame = { categories, orientation, scale, series, values };\n const boundaries = boundariesOf(categories.centers, range);\n\n return {\n cursorPaint: options.marks.cursor,\n empty: false,\n grid: tickValues.map((tick) => orientation.grid(plot, scale(tick))),\n hits: categories.centers.map((center, index) => ({\n anchor: orientation.anchor(plot, center),\n cursor: CURSORS[options.marks.cursor](orientation, plot, boundaries[index], boundaries[index + 1], center),\n d: orientation.band(plot, boundaries[index], boundaries[index + 1]),\n points: options.marks.points ? pointsOf(frame, index) : [],\n tooltip: tooltipOf(input, series, values, index, titles[index]),\n })),\n marks: options.marks.marks(frame),\n origin: { x: 0, y: 0 },\n table,\n ticks: [\n ...tickValues.map((tick, index) => orientation.valueTick(plot, scale(tick), valueLabels[index])),\n ...categoryTicksOf(orientation, plot, margins, categories.centers, range, titles),\n ],\n };\n}\n\nfunction categoryTicksOf(\n orientation: CartesianOrientation,\n plot: CartesianPlot,\n margins: Parameters<CartesianOrientation['categoryLabelChars']>[0],\n centers: readonly number[],\n range: [number, number],\n titles: readonly string[],\n): YuwChartTick[] {\n const step = Math.abs(range[1] - range[0]) / Math.max(1, centers.length);\n const every = Math.max(1, Math.ceil(orientation.categoryLabelRoom(textWidth(titles)) / Math.max(step, 1)));\n const chars = orientation.categoryLabelChars(margins);\n\n return centers\n .map((center, index) => orientation.categoryTick(plot, center, truncate(titles[index], chars)))\n .filter((_tick, index) => index % every === 0);\n}\n\nfunction pointsOf({ categories, orientation, scale, series, values }: CartesianFrame, index: number): YuwChartPoint[] {\n return series.flatMap((item) => {\n const value = values.byKey.get(item.key)?.[index];\n\n if (!value || value.value === null) {\n return [];\n }\n\n const [cx, cy] = orientation.point(categories.centers[index], scale(value.top));\n\n return [{ color: item.color, cx, cy, key: item.key }];\n });\n}\n\nfunction strokeOf({ categories, orientation, scale, values }: CartesianFrame, item: YuwChartSeries): YuwChartMark {\n const coordinates = (values.byKey.get(item.key) ?? []).map((value, index) =>\n value ? orientation.point(categories.centers[index], scale(value.top)) : null,\n );\n const path = line<[number, number] | null>()\n .defined((point) => point !== null)\n .x((point) => point?.[0] ?? 0)\n .y((point) => point?.[1] ?? 0)\n .curve(orientation.curve);\n\n return { color: item.color, d: path(coordinates) ?? '', hit: null, key: item.key, paint: 'stroke' };\n}\n\nfunction spansOf({ categories, scale, values }: CartesianFrame, item: YuwChartSeries): CartesianSpan[] {\n return (values.byKey.get(item.key) ?? []).flatMap((value, index) =>\n value ? [{ base: scale(value.base), category: categories.centers[index], top: scale(value.top) }] : [],\n );\n}\n\nfunction barsOf(values: CartesianValues, item: YuwChartSeries): { index: number; value: CartesianValue }[] {\n return (values.byKey.get(item.key) ?? []).flatMap((value, index) =>\n value && value.value !== null && value.base !== value.top ? [{ index, value }] : [],\n );\n}\n\nfunction tooltipOf(\n input: YuwChartSceneInput,\n series: readonly YuwChartSeries[],\n values: CartesianValues,\n index: number,\n title: string,\n): YuwChartTooltip {\n return {\n title: input.categoryKey === undefined ? null : title,\n items: series.flatMap((item) => {\n const value = values.byKey.get(item.key)?.[index]?.value ?? null;\n\n return value === null\n ? []\n : [{ color: item.color, key: item.key, label: item.label, value: input.valueFormat(value) }];\n }),\n };\n}\n\nfunction tableOf(input: YuwChartSceneInput, series: readonly YuwChartSeries[]): YuwChartTable {\n return {\n corner: input.categoryLabel ?? '',\n head: series.map((item) => item.label),\n rows: input.data.map((row) => ({\n header: titleOf(input, row),\n cells: series.map((item) => {\n const value = valueOf(row, item.key);\n\n return value === null ? '' : input.valueFormat(value);\n }),\n })),\n };\n}\n\nfunction titleOf(input: YuwChartSceneInput, row: YuwChartRowDto): string {\n return input.categoryKey === undefined ? '' : input.categoryFormat(row[input.categoryKey]);\n}\n\n/** Edges between consecutive categories, so every pixel of the axis activates the nearest one. */\nfunction boundariesOf(centers: readonly number[], range: [number, number]): number[] {\n const middles = centers.slice(1).map((center, index) => (centers[index] + center) / 2);\n\n return [range[0], ...middles, range[1]];\n}\n\nfunction truncate(label: string, chars: number): string {\n return label.length > chars ? `${label.slice(0, Math.max(1, chars - 1))}…` : label;\n}\n\nfunction indices(count: number): number[] {\n return Array.from({ length: count }, (_, index) => index);\n}\n","import { arc, pie, type PieArcDatum } from 'd3-shape';\nimport type { YuwChartLayout, YuwChartSceneInput, YuwChartTable } from '../chart-scene.interface';\nimport { emptyScene, seriesOf, valueOf, type YuwChartSeries } from './chart-geometry';\n\nconst EDGE = 4;\n\nexport interface PieOptions {\n /** Inner radius as a share of the outer one: `0` is a pie, anything above a donut. */\n readonly hole: number;\n}\n\ninterface Slice extends YuwChartSeries {\n readonly total: number;\n}\n\n/** One slice per series, sized by its value summed across every row. */\nexport function pieLayout(options: PieOptions): YuwChartLayout {\n return (input) => {\n const slices = slicesOf(input);\n const table = tableOf(input, slices);\n const shown = slices.filter((slice) => slice.total > 0);\n\n if (shown.length === 0) {\n return emptyScene(table);\n }\n\n const radius = Math.max(1, Math.min(input.width, input.height) / 2 - EDGE);\n const centerX = input.width / 2;\n const centerY = input.height / 2;\n const arcs = pie<Slice>()\n .sort(null)\n .value((slice) => slice.total)(shown);\n const shape = arc<PieArcDatum<Slice>>()\n .innerRadius(radius * options.hole)\n .outerRadius(radius)\n .padAngle(options.hole > 0 ? 0.01 : 0)\n .cornerRadius(options.hole > 0 ? 3 : 0);\n const paths = arcs.map((datum) => shape(datum) ?? '');\n\n return {\n cursorPaint: 'band',\n empty: false,\n grid: [],\n origin: { x: centerX, y: centerY },\n hits: arcs.map((datum, index) => {\n const [x, y] = shape.centroid(datum);\n\n return {\n anchor: { x: centerX + x, y: centerY + y },\n cursor: null,\n d: paths[index],\n points: [],\n tooltip: {\n title: null,\n items: [\n {\n color: datum.data.color,\n key: datum.data.key,\n label: datum.data.label,\n value: input.valueFormat(datum.data.total),\n },\n ],\n },\n };\n }),\n marks: arcs.map((datum, index) => ({\n color: datum.data.color,\n d: paths[index],\n hit: index,\n key: datum.data.key,\n paint: 'fill' as const,\n })),\n table,\n ticks: [],\n };\n };\n}\n\nfunction slicesOf(input: YuwChartSceneInput): Slice[] {\n return seriesOf(input.config).map((series) => ({\n ...series,\n total: input.data.reduce((sum, row) => sum + Math.max(0, valueOf(row, series.key) ?? 0), 0),\n }));\n}\n\nfunction tableOf(input: YuwChartSceneInput, slices: readonly Slice[]): YuwChartTable {\n return {\n corner: null,\n head: slices.map((slice) => slice.label),\n rows:\n input.data.length === 0 ? [] : [{ header: null, cells: slices.map((slice) => input.valueFormat(slice.total)) }],\n };\n}\n","import type { YuwChartKindDto } from './chart.interface';\nimport type { YuwChartLayout } from './chart-scene.interface';\nimport { HORIZONTAL, VERTICAL } from './layouts/cartesian-axis';\nimport { sideBySide, stacked, stackedDiverging } from './layouts/cartesian-values';\nimport { areas, bands, cartesianLayout, groupedBars, lines, points, stackedBars } from './layouts/cartesian.layout';\nimport { pieLayout } from './layouts/pie.layout';\n\n/** The layout drawing each chart kind. A new kind is one entry here, built from the same parts. */\nexport const YUW_CHART_LAYOUTS: Readonly<Record<YuwChartKindDto, YuwChartLayout>> = {\n area: cartesianLayout({ categories: points, marks: areas, orientation: VERTICAL, values: sideBySide }),\n 'area-stacked': cartesianLayout({ categories: points, marks: areas, orientation: VERTICAL, values: stacked }),\n bar: cartesianLayout({ categories: bands, marks: groupedBars, orientation: VERTICAL, values: sideBySide }),\n 'bar-horizontal': cartesianLayout({\n categories: bands,\n marks: groupedBars,\n orientation: HORIZONTAL,\n values: sideBySide,\n }),\n 'bar-horizontal-stacked': cartesianLayout({\n categories: bands,\n marks: stackedBars,\n orientation: HORIZONTAL,\n values: stackedDiverging,\n }),\n 'bar-stacked': cartesianLayout({\n categories: bands,\n marks: stackedBars,\n orientation: VERTICAL,\n values: stackedDiverging,\n }),\n donut: pieLayout({ hole: 0.6 }),\n line: cartesianLayout({ categories: points, marks: lines, orientation: VERTICAL, values: sideBySide }),\n pie: pieLayout({ hole: 0 }),\n};\n","import { afterNextRender, DestroyRef, type ElementRef, inject, type Signal, signal } from '@angular/core';\n\nexport interface YuwChartSize {\n readonly height: number;\n readonly width: number;\n}\n\nconst UNMEASURED: YuwChartSize = { height: 0, width: 0 };\n\n/**\n * Tracks the content box of `element` as a signal. Stays at zero on the server and wherever `ResizeObserver` is\n * missing, so nothing is drawn until there is a real box to draw into. Must be called in an injection context.\n */\nexport function injectChartSize(element: Signal<ElementRef<HTMLElement> | undefined>): Signal<YuwChartSize> {\n const size = signal(UNMEASURED, { equal: (a, b) => a.width === b.width && a.height === b.height });\n const destroyRef = inject(DestroyRef);\n\n afterNextRender(() => {\n const target = element()?.nativeElement;\n\n if (!target || typeof ResizeObserver === 'undefined') {\n return;\n }\n\n const observer = new ResizeObserver(([entry]) =>\n size.set({ width: Math.floor(entry.contentRect.width), height: Math.floor(entry.contentRect.height) }),\n );\n\n observer.observe(target);\n destroyRef.onDestroy(() => observer.disconnect());\n });\n\n return size.asReadonly();\n}\n","import type { YuwChartMarkPaintDto, YuwChartScene } from './chart-scene.interface';\n\n/** Classes of each kind of mark; the color arrives separately, as a `var(--chart-n)` style. */\nexport const MARK_CLASS: Record<YuwChartMarkPaintDto, string> = {\n area: 'opacity-30',\n fill: 'stroke-background stroke-1 motion-safe:transition-opacity motion-safe:duration-150',\n stroke: 'fill-none stroke-2',\n};\n\n/** Which style property carries the color of each kind of mark. */\nexport const MARK_COLOR_PROPERTY: Record<YuwChartMarkPaintDto, 'fill' | 'stroke'> = {\n area: 'fill',\n fill: 'fill',\n stroke: 'stroke',\n};\n\nexport const MARK_DIMMED_CLASS = 'opacity-40';\n\nexport const CURSOR_CLASS: Record<YuwChartScene['cursorPaint'], string> = {\n band: 'fill-muted',\n line: 'fill-none stroke-border stroke-1',\n};\n\n/** Which side of its anchor the tooltip opens to, so it stays inside the plot. */\nexport const TOOLTIP_SIDE_CLASS: Record<'left' | 'right', string> = {\n left: '-translate-x-[calc(100%+0.75rem)]',\n right: 'translate-x-3',\n};\n\n/** What each key does to the active position, given it and how many there are; `null` hides the tooltip. */\nexport const KEY_MOVES: Readonly<Partial<Record<string, (active: number, count: number) => number | null>>> = {\n ArrowDown: (active, count) => Math.min(active + 1, count - 1),\n ArrowLeft: (active) => Math.max(active - 1, 0),\n ArrowRight: (active, count) => Math.min(active + 1, count - 1),\n ArrowUp: (active) => Math.max(active - 1, 0),\n End: (_active, count) => count - 1,\n Escape: () => null,\n Home: () => 0,\n};\n","import { _IdGenerator } from '@angular/cdk/a11y';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n type ElementRef,\n inject,\n input,\n linkedSignal,\n viewChild,\n} from '@angular/core';\nimport { HlmSkeleton } from 'yukit-web/helm/skeleton';\nimport { hlm } from 'yukit-web/helm/utils';\nimport type {\n YuwChartCategoryFormatDto,\n YuwChartConfigDto,\n YuwChartKindDto,\n YuwChartRowDto,\n YuwChartValueFormatDto,\n} from './chart.interface';\nimport { YUW_CHART_LAYOUTS } from './chart.registry';\nimport { injectChartSize } from './chart-size';\nimport {\n CURSOR_CLASS,\n KEY_MOVES,\n MARK_CLASS,\n MARK_COLOR_PROPERTY,\n MARK_DIMMED_CLASS,\n TOOLTIP_SIDE_CLASS,\n} from './chart.variants';\nimport { cssColor } from './layouts/chart-geometry';\n\n/**\n * Chart drawn as SVG from a series `config` and `data` rows, with a tooltip and a legend that read the same config.\n *\n * Every series is a key of `config` naming the row field that holds its values, plus its label (already translated)\n * and a `chart-n` color token, so light and dark mode recolor through the theme with no redraw. `kind` picks the\n * drawing: bars (grouped, stacked, horizontal), lines, areas, or a pie / donut with one slice per series summed across\n * the rows. The chart fills its root element and redraws when it resizes; size it with `class` (default `h-72`).\n *\n * The pointer and the keyboard (focus the plot, then the arrow keys, Home, End and Escape) move a tooltip across the\n * categories or slices, announced politely to screen readers. The same numbers are always available to assistive\n * technology as a visually hidden table, which also renders on the server, where the plot is not drawn.\n *\n * The library hardcodes no locale: `valueFormat` and `categoryFormat` turn values and categories into text.\n *\n * Inputs:\n * - `ariaLabel`: Required accessible name of the chart, e.g. its title. The app supplies and translates it.\n * - `categoryFormat`: Turns the value under `categoryKey` into its label. Cartesian kinds only. Default is `String`.\n * - `categoryKey`: Row field holding each category, e.g. the period. Cartesian kinds only. Default is `undefined`.\n * - `categoryLabel`: Header of the category column in the accessible table, e.g. \"Month\". Cartesian kinds only.\n * Default is `undefined`.\n * - `config`: Required series, keyed by the row field holding their values (`YuwChartConfigDto`). Its order is the\n * drawing, stacking, legend and tooltip order.\n * - `data`: Required rows (`YuwChartRowDto[]`). A non-numeric value is a gap, never a zero.\n * - `description`: Accessible description, e.g. the period the chart covers. Default is `undefined`.\n * - `emptyText`: Required message shown when there is nothing to draw. The app supplies and translates it.\n * - `kind`: The drawing (`YuwChartKindDto`). Default is `'bar'`.\n * - `legend`: Shows the legend under the plot. Default is `true`.\n * - `loading`: Shows a skeleton instead of the plot and marks the chart busy. Default is `false`.\n * - `valueFormat`: Turns a value into the text of axes, tooltips and the accessible table, e.g. a localized currency.\n * Default is `String`.\n * - `class`: Extra classes merged last onto the root element; set its height here.\n *\n * Usage:\n * ```html\n * <yuw-chart\n * kind=\"bar-stacked\"\n * ariaLabel=\"Purchases per month\"\n * emptyText=\"No purchases in this period\"\n * categoryKey=\"month\"\n * categoryLabel=\"Month\"\n * [config]=\"config\"\n * [data]=\"rows\"\n * [valueFormat]=\"formatEuros\"\n * class=\"h-80\"\n * />\n * ```\n */\n@Component({\n selector: 'yuw-chart',\n imports: [HlmSkeleton],\n host: {\n class: 'contents',\n },\n templateUrl: './chart.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class YuwChartComponent {\n private readonly _id = inject(_IdGenerator).getId('yuw-chart-');\n\n private readonly _plot = viewChild<ElementRef<HTMLElement>>('plot');\n\n readonly ariaLabel = input.required<string>();\n readonly categoryFormat = input<YuwChartCategoryFormatDto>(String);\n readonly categoryKey = input<string>();\n readonly categoryLabel = input<string>();\n readonly config = input.required<YuwChartConfigDto>();\n readonly data = input.required<readonly YuwChartRowDto[]>();\n readonly description = input<string>();\n readonly emptyText = input.required<string>();\n readonly kind = input<YuwChartKindDto>('bar');\n readonly legend = input(true, { transform: booleanAttribute });\n readonly loading = input(false, { transform: booleanAttribute });\n readonly userClass = input<string>('', { alias: 'class' });\n readonly valueFormat = input<YuwChartValueFormatDto>(String);\n\n protected readonly descriptionId = `${this._id}-description`;\n protected readonly size = injectChartSize(this._plot);\n\n protected readonly scene = computed(() =>\n YUW_CHART_LAYOUTS[this.kind()]({\n categoryFormat: this.categoryFormat(),\n categoryKey: this.categoryKey(),\n categoryLabel: this.categoryLabel(),\n config: this.config(),\n data: this.data(),\n height: this.size().height,\n valueFormat: this.valueFormat(),\n width: this.size().width,\n }),\n );\n protected readonly active = linkedSignal<unknown, number | null>({ source: this.scene, computation: () => null });\n protected readonly activeHit = computed(() => {\n const active = this.active();\n\n return active === null ? null : (this.scene().hits[active] ?? null);\n });\n protected readonly activePoints = computed(() => this.activeHit()?.points ?? []);\n protected readonly announcement = computed(() => {\n const tooltip = this.activeHit()?.tooltip;\n\n if (!tooltip) {\n return '';\n }\n\n return [tooltip.title, ...tooltip.items.map((item) => `${item.label}: ${item.value}`)]\n .filter((part) => !!part)\n .join(', ');\n });\n protected readonly cursorClass = computed(() => CURSOR_CLASS[this.scene().cursorPaint]);\n protected readonly describedBy = computed(() => (this.description() ? this.descriptionId : null));\n protected readonly drawable = computed(() => this.size().width > 0 && this.size().height > 0);\n protected readonly interactive = computed(() => !this.loading() && this.scene().hits.length > 0);\n protected readonly legendItems = computed(() =>\n Object.entries(this.config()).map(([key, series]) => ({ key, label: series.label, color: cssColor(series.color) })),\n );\n protected readonly marks = computed(() => {\n const active = this.active();\n\n return this.scene().marks.map((mark) => ({\n d: mark.d,\n key: mark.key,\n class: hlm(\n MARK_CLASS[mark.paint],\n active !== null && mark.hit !== null && mark.hit !== active && MARK_DIMMED_CLASS,\n ),\n style: { [MARK_COLOR_PROPERTY[mark.paint]]: mark.color },\n }));\n });\n protected readonly origin = computed(() => `translate(${this.scene().origin.x},${this.scene().origin.y})`);\n protected readonly rootClass = computed(() => hlm('flex h-72 w-full flex-col gap-3', this.userClass()));\n protected readonly showLegend = computed(() => this.legend() && !this.loading() && !this.scene().empty);\n protected readonly tooltip = computed(() => {\n const hit = this.activeHit();\n\n if (!hit || hit.tooltip.items.length === 0) {\n return null;\n }\n\n return {\n ...hit.tooltip,\n left: hit.anchor.x,\n top: hit.anchor.y,\n class: TOOLTIP_SIDE_CLASS[hit.anchor.x > this.size().width / 2 ? 'left' : 'right'],\n };\n });\n protected readonly viewBox = computed(() => `0 0 ${this.size().width} ${this.size().height}`);\n\n protected activate(index: number): void {\n this.active.set(index);\n }\n\n protected clear(): void {\n this.active.set(null);\n }\n\n protected onFocus(event: FocusEvent): void {\n const target = event.target as HTMLElement;\n\n if (this.active() === null && target.matches(':focus-visible')) {\n this.active.set(0);\n }\n }\n\n protected onKeydown(event: KeyboardEvent): void {\n const move = KEY_MOVES[event.key];\n const count = this.scene().hits.length;\n\n if (!move || count === 0) {\n return;\n }\n\n event.preventDefault();\n this.active.set(move(this.active() ?? -1, count));\n }\n}\n","<div role=\"figure\" [class]=\"rootClass()\" [attr.aria-label]=\"ariaLabel()\" [attr.aria-busy]=\"loading() || null\">\n @if (description(); as text) {\n <p class=\"sr-only\" [id]=\"descriptionId\">{{ text }}</p>\n }\n\n <!-- Plot -->\n <div\n #plot\n role=\"group\"\n class=\"relative min-h-0 flex-1 rounded-md outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-describedby]=\"describedBy()\"\n [attr.tabindex]=\"interactive() ? 0 : null\"\n (focus)=\"onFocus($event)\"\n (blur)=\"clear()\"\n (keydown)=\"onKeydown($event)\"\n (pointerleave)=\"clear()\"\n >\n @if (loading()) {\n <div hlmSkeleton class=\"size-full\" aria-hidden=\"true\"></div>\n } @else if (scene().empty) {\n <div class=\"flex size-full items-center justify-center text-center text-sm text-muted-foreground\">\n {{ emptyText() }}\n </div>\n } @else if (drawable()) {\n <svg\n aria-hidden=\"true\"\n class=\"absolute inset-0 overflow-visible\"\n [attr.width]=\"size().width\"\n [attr.height]=\"size().height\"\n [attr.viewBox]=\"viewBox()\"\n >\n @for (line of scene().grid; track $index) {\n <path class=\"fill-none stroke-border [stroke-dasharray:3_3]\" [attr.d]=\"line\" />\n }\n\n @if (activeHit()?.cursor; as cursor) {\n <path [class]=\"cursorClass()\" [attr.d]=\"cursor\" />\n }\n\n <g [attr.transform]=\"origin()\">\n @for (mark of marks(); track $index) {\n <path [class]=\"mark.class\" [style]=\"mark.style\" [attr.d]=\"mark.d\" />\n }\n </g>\n\n @for (point of activePoints(); track point.key) {\n <circle\n r=\"4\"\n class=\"stroke-background stroke-2\"\n [style.fill]=\"point.color\"\n [attr.cx]=\"point.cx\"\n [attr.cy]=\"point.cy\"\n />\n }\n\n @for (tick of scene().ticks; track $index) {\n <text\n dominant-baseline=\"middle\"\n class=\"fill-muted-foreground text-xs\"\n [attr.x]=\"tick.x\"\n [attr.y]=\"tick.y\"\n [attr.text-anchor]=\"tick.anchor\"\n >\n {{ tick.label }}\n </text>\n }\n\n <g [attr.transform]=\"origin()\">\n @for (hit of scene().hits; track $index) {\n <path class=\"fill-transparent\" [attr.d]=\"hit.d\" (pointerenter)=\"activate($index)\" />\n }\n </g>\n </svg>\n\n @if (tooltip(); as tip) {\n <div\n aria-hidden=\"true\"\n class=\"pointer-events-none absolute z-10 grid min-w-32 -translate-y-1/2 gap-1.5 rounded-md border bg-popover px-2.5 py-1.5 text-xs text-popover-foreground shadow-md motion-safe:transition-[left,top] motion-safe:duration-150\"\n [class]=\"tip.class\"\n [style.left.px]=\"tip.left\"\n [style.top.px]=\"tip.top\"\n >\n @if (tip.title) {\n <span class=\"font-medium\">{{ tip.title }}</span>\n }\n @for (item of tip.items; track item.key) {\n <span class=\"flex items-center gap-2\">\n <span class=\"size-2.5 shrink-0 rounded-[2px]\" [style.background]=\"item.color\"></span>\n <span class=\"text-muted-foreground\">{{ item.label }}</span>\n <span class=\"ml-auto font-mono font-medium tabular-nums\">{{ item.value }}</span>\n </span>\n }\n </div>\n }\n }\n\n <div role=\"status\" class=\"sr-only\">{{ announcement() }}</div>\n </div>\n\n <!-- Legend -->\n @if (showLegend()) {\n <ul class=\"flex flex-wrap items-center justify-center gap-x-4 gap-y-1 text-xs text-muted-foreground\">\n @for (item of legendItems(); track item.key) {\n <li class=\"flex items-center gap-1.5\">\n <span aria-hidden=\"true\" class=\"size-2.5 shrink-0 rounded-[2px]\" [style.background]=\"item.color\"></span>\n {{ item.label }}\n </li>\n }\n </ul>\n }\n\n <!-- Accessible data -->\n <table class=\"sr-only\">\n <caption>\n {{ ariaLabel() }}\n </caption>\n <thead>\n <tr>\n @if (scene().table.corner !== null) {\n <th scope=\"col\">{{ scene().table.corner }}</th>\n }\n @for (head of scene().table.head; track $index) {\n <th scope=\"col\">{{ head }}</th>\n }\n </tr>\n </thead>\n <tbody>\n @for (row of scene().table.rows; track $index) {\n <tr>\n @if (row.header !== null) {\n <th scope=\"row\">{{ row.header }}</th>\n }\n @for (cell of row.cells; track $index) {\n <td>{{ cell }}</td>\n }\n </tr>\n }\n </tbody>\n </table>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["tableOf"],"mappings":"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"}
|
|
@@ -144,7 +144,7 @@ class HlmAutocompleteInput {
|
|
|
144
144
|
</hlm-input-group-addon>
|
|
145
145
|
}
|
|
146
146
|
<ng-content />
|
|
147
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2$1.HlmInputGroupAddon, selector: "[hlmInputGroupAddon],hlm-input-group-addon", inputs: ["align"] }, { kind: "directive", type: i2$1.HlmInputGroupButton, selector: "button[hlmInputGroupButton]", inputs: ["size", "type"] }, { kind: "directive", type: i2$1.HlmInputGroupInput, selector: "input[hlmInputGroupInput]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: BrnAutocompleteClear, selector: "[brnAutocompleteClear]" }, { kind: "directive", type: BrnAutocompleteInput, selector: "input[brnAutocompleteInput]", inputs: ["id", "aria-invalid", "forceInvalid"], exportAs: ["brnAutocompleteInput"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
147
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2$1.HlmInputGroupAddon, selector: "[hlmInputGroupAddon],hlm-input-group-addon", inputs: ["align"] }, { kind: "directive", type: i2$1.HlmInputGroupButton, selector: "button[hlmInputGroupButton]", inputs: ["size", "type"] }, { kind: "directive", type: i2$1.HlmInputGroupInput, selector: "input[hlmInputGroupInput]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: BrnAutocompleteClear, selector: "[brnAutocompleteClear]" }, { kind: "directive", type: BrnAutocompleteInput, selector: "input[brnAutocompleteInput]", inputs: ["id", "autocomplete", "aria-invalid", "forceInvalid"], exportAs: ["brnAutocompleteInput"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
148
148
|
}
|
|
149
149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HlmAutocompleteInput, decorators: [{
|
|
150
150
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yukit-web-helm-autocomplete.mjs","sources":["../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-content.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-empty.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-group.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-input.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-item.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-label.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-list.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-portal.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-search.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-separator.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-status.ts","../../../projects/yukit-web/helm/autocomplete/src/index.ts","../../../projects/yukit-web/helm/autocomplete/src/yukit-web-helm-autocomplete.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { BrnAutocomplete } from '@spartan-ng/brain/autocomplete';\nimport { BrnPopover, provideBrnPopoverConfig, provideBrnPopoverDefaultOptions } from '@spartan-ng/brain/popover';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocomplete],hlm-autocomplete',\n\tproviders: [\n\t\tprovideBrnPopoverConfig({\n\t\t\talign: 'start',\n\t\t\tsideOffset: 6,\n\t\t}),\n\t\tprovideBrnPopoverDefaultOptions({ role: null }),\n\t],\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnAutocomplete,\n\t\t\tinputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString', 'isItemEqualToValue'],\n\t\t\toutputs: ['valueChange', 'searchChange'],\n\t\t},\n\t\t{\n\t\t\tdirective: BrnPopover,\n\t\t\tinputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],\n\t\t\toutputs: ['stateChanged', 'closed'],\n\t\t},\n\t],\n\thost: { 'data-slot': 'autocomplete' },\n})\nexport class HlmAutocomplete {\n\tconstructor() {\n\t\tclasses(() => 'block');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteContent } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteContent],hlm-autocomplete-content',\n\thostDirectives: [BrnAutocompleteContent],\n})\nexport class HlmAutocompleteContent {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() => 'bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 max-h-72 min-w-36 overflow-hidden rounded-lg shadow-md ring-1 duration-100 group/autocomplete-content flex w-(--brn-autocomplete-width) flex-col p-0',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteEmpty } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteEmpty],hlm-autocomplete-empty',\n\thostDirectives: [BrnAutocompleteEmpty],\n\thost: { 'data-slot': 'autocomplete-empty' },\n})\nexport class HlmAutocompleteEmpty {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground hidden w-full items-center justify-center py-2 text-center text-sm group-data-empty/autocomplete-content:flex');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteGroup } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteGroup]',\n\thostDirectives: [BrnAutocompleteGroup],\n\thost: { 'data-slot': 'autocomplete-group' },\n})\nexport class HlmAutocompleteGroup {\n\tconstructor() {\n\t\tclasses(() => 'data-hidden:hidden');\n\t}\n}\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideSearch, lucideX } from '@ng-icons/lucide';\nimport { BrnAutocompleteAnchor, BrnAutocompleteClear, BrnAutocompleteInput } from '@spartan-ng/brain/autocomplete';\nimport { HlmInputGroup, HlmInputGroupImports } from 'yukit-web/helm/input-group';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-autocomplete-input',\n\timports: [HlmInputGroupImports, NgIcon, BrnAutocompleteClear, BrnAutocompleteInput],\n\tproviders: [provideIcons({ lucideSearch, lucideX })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [BrnAutocompleteAnchor, HlmInputGroup],\n\ttemplate: `\n\t\t<input\n\t\t\tbrnAutocompleteInput\n\t\t\t#autocompleteInput=\"brnAutocompleteInput\"\n\t\t\thlmInputGroupInput\n\t\t\t[id]=\"inputId()\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[aria-invalid]=\"ariaInvalidOverride()\"\n\t\t\t[forceInvalid]=\"forceInvalid()\"\n\t\t/>\n\n\t\t@if (showSearch()) {\n\t\t\t<hlm-input-group-addon>\n\t\t\t\t<ng-icon name=\"lucideSearch\" [class.opacity-50]=\"autocompleteInput.disabled()\" />\n\t\t\t</hlm-input-group-addon>\n\t\t}\n\n\t\t@if (showClear()) {\n\t\t\t<hlm-input-group-addon align=\"inline-end\">\n\t\t\t\t<button\n\t\t\t\t\t*brnAutocompleteClear\n\t\t\t\t\thlmInputGroupButton\n\t\t\t\t\tdata-slot=\"autocomplete-clear\"\n\t\t\t\t\t[disabled]=\"autocompleteInput.disabled()\"\n\t\t\t\t\tsize=\"icon-xs\"\n\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t>\n\t\t\t\t\t<ng-icon name=\"lucideX\" />\n\t\t\t\t</button>\n\t\t\t</hlm-input-group-addon>\n\t\t}\n\t\t<ng-content />\n\t`,\n})\nexport class HlmAutocompleteInput {\n\tprivate static _id = 0;\n\n\tpublic readonly inputId = input<string>(`hlm-autocomplete-input-${HlmAutocompleteInput._id++}`);\n\n\tpublic readonly placeholder = input<string>('');\n\n\tpublic readonly showSearch = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\tpublic readonly showClear = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Forces the invalid state visually, regardless of form control state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Manual override for aria-invalid. When not set, auto-detects from the parent autocomplete error state. */\n\tpublic readonly ariaInvalidOverride = input<boolean | undefined, BooleanInput>(undefined, {\n\t\ttransform: (v: BooleanInput) => (v === '' || v === undefined ? undefined : booleanAttribute(v)),\n\t\talias: 'aria-invalid',\n\t});\n\n\tconstructor() {\n\t\tclasses(() => 'w-auto');\n\t}\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideCheck } from '@ng-icons/lucide';\nimport { BrnAutocompleteItem } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-autocomplete-item',\n\timports: [NgIcon],\n\tproviders: [provideIcons({ lucideCheck })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [{ directive: BrnAutocompleteItem, inputs: ['id', 'disabled', 'value'] }],\n\thost: { 'data-slot': 'autocomplete-item' },\n\ttemplate: `\n\t\t<ng-content />\n\t\t@if (_active()) {\n\t\t\t<ng-icon name=\"lucideCheck\" class=\"absolute end-2 flex items-center justify-center text-[length:--spacing(4)]\" aria-hidden=\"true\" />\n\t\t}\n\t`,\n})\nexport class HlmAutocompleteItem {\n\tprivate readonly _brnAutocompleteItem = inject(BrnAutocompleteItem);\n\n\tprotected readonly _active = this._brnAutocompleteItem.active;\n\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground gap-2 rounded-md py-1 ps-1.5 pe-8 text-sm relative flex w-full cursor-default items-center outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-hidden:hidden [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteLabel } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteLabel]',\n\thostDirectives: [{ directive: BrnAutocompleteLabel, inputs: ['id'] }],\n\thost: { 'data-slot': 'autocomplete-label' },\n})\nexport class HlmAutocompleteLabel {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground px-2 py-1.5 text-xs');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteList } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteList]',\n\thostDirectives: [{ directive: BrnAutocompleteList, inputs: ['id'] }],\n\thost: { 'data-slot': 'autocomplete-list' },\n})\nexport class HlmAutocompleteList {\n\tconstructor() {\n\t\tclasses(() => 'no-scrollbar max-h-[calc(--spacing(72)---spacing(9))] scroll-py-1 p-1 data-empty:p-0 overflow-y-auto overscroll-contain');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnPopoverContent } from '@spartan-ng/brain/popover';\n\n@Directive({\n\tselector: '[hlmAutocompletePortal]',\n\thostDirectives: [{ directive: BrnPopoverContent, inputs: ['context', 'class'] }],\n})\nexport class HlmAutocompletePortal {}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteSearch } from '@spartan-ng/brain/autocomplete';\nimport { BrnPopover, provideBrnPopoverConfig, provideBrnPopoverDefaultOptions } from '@spartan-ng/brain/popover';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteSearch],hlm-autocomplete-search',\n\tproviders: [\n\t\tprovideBrnPopoverConfig({\n\t\t\talign: 'start',\n\t\t\tsideOffset: 6,\n\t\t}),\n\t\tprovideBrnPopoverDefaultOptions({ role: null }),\n\t],\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnAutocompleteSearch,\n\t\t\tinputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString'],\n\t\t\toutputs: ['valueChange', 'searchChange'],\n\t\t},\n\t\t{\n\t\t\tdirective: BrnPopover,\n\t\t\tinputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],\n\t\t\toutputs: ['stateChanged', 'closed'],\n\t\t},\n\t],\n\thost: { 'data-slot': 'autocomplete' },\n})\nexport class HlmAutocompleteSearch {\n\tconstructor() {\n\t\tclasses(() => 'block');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteSeparator } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteSeparator]',\n\thostDirectives: [{ directive: BrnAutocompleteSeparator, inputs: ['orientation'] }],\n\thost: { 'data-slot': 'autocomplete-separator' },\n})\nexport class HlmAutocompleteSeparator {\n\tconstructor() {\n\t\tclasses(() => 'bg-border -mx-1 my-1 h-px');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteStatus } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteStatus],hlm-autocomplete-status',\n\thostDirectives: [BrnAutocompleteStatus],\n\thost: { 'data-slot': 'autocomplete-status' },\n})\nexport class HlmAutocompleteStatus {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground gap-2 px-2.5 py-2 text-sm flex w-full items-center justify-center text-center');\n\t}\n}\n","import { HlmAutocomplete } from './lib/hlm-autocomplete';\nimport { HlmAutocompleteContent } from './lib/hlm-autocomplete-content';\nimport { HlmAutocompleteEmpty } from './lib/hlm-autocomplete-empty';\nimport { HlmAutocompleteGroup } from './lib/hlm-autocomplete-group';\nimport { HlmAutocompleteInput } from './lib/hlm-autocomplete-input';\nimport { HlmAutocompleteItem } from './lib/hlm-autocomplete-item';\nimport { HlmAutocompleteLabel } from './lib/hlm-autocomplete-label';\nimport { HlmAutocompleteList } from './lib/hlm-autocomplete-list';\nimport { HlmAutocompletePortal } from './lib/hlm-autocomplete-portal';\nimport { HlmAutocompleteSearch } from './lib/hlm-autocomplete-search';\nimport { HlmAutocompleteSeparator } from './lib/hlm-autocomplete-separator';\nimport { HlmAutocompleteStatus } from './lib/hlm-autocomplete-status';\n\nexport * from './lib/hlm-autocomplete';\nexport * from './lib/hlm-autocomplete-content';\nexport * from './lib/hlm-autocomplete-empty';\nexport * from './lib/hlm-autocomplete-group';\nexport * from './lib/hlm-autocomplete-input';\nexport * from './lib/hlm-autocomplete-item';\nexport * from './lib/hlm-autocomplete-label';\nexport * from './lib/hlm-autocomplete-list';\nexport * from './lib/hlm-autocomplete-portal';\nexport * from './lib/hlm-autocomplete-search';\nexport * from './lib/hlm-autocomplete-separator';\nexport * from './lib/hlm-autocomplete-status';\n\nexport const HlmAutocompleteImports = [\n\tHlmAutocomplete,\n\tHlmAutocompleteContent,\n\tHlmAutocompleteEmpty,\n\tHlmAutocompleteGroup,\n\tHlmAutocompleteInput,\n\tHlmAutocompleteItem,\n\tHlmAutocompleteLabel,\n\tHlmAutocompleteList,\n\tHlmAutocompletePortal,\n\tHlmAutocompleteSearch,\n\tHlmAutocompleteSeparator,\n\tHlmAutocompleteStatus,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"yukit-web-helm-autocomplete.mjs","sources":["../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-content.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-empty.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-group.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-input.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-item.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-label.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-list.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-portal.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-search.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-separator.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-status.ts","../../../projects/yukit-web/helm/autocomplete/src/index.ts","../../../projects/yukit-web/helm/autocomplete/src/yukit-web-helm-autocomplete.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { BrnAutocomplete } from '@spartan-ng/brain/autocomplete';\nimport { BrnPopover, provideBrnPopoverConfig, provideBrnPopoverDefaultOptions } from '@spartan-ng/brain/popover';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocomplete],hlm-autocomplete',\n\tproviders: [\n\t\tprovideBrnPopoverConfig({\n\t\t\talign: 'start',\n\t\t\tsideOffset: 6,\n\t\t}),\n\t\tprovideBrnPopoverDefaultOptions({ role: null }),\n\t],\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnAutocomplete,\n\t\t\tinputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString', 'isItemEqualToValue'],\n\t\t\toutputs: ['valueChange', 'searchChange'],\n\t\t},\n\t\t{\n\t\t\tdirective: BrnPopover,\n\t\t\tinputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],\n\t\t\toutputs: ['stateChanged', 'closed'],\n\t\t},\n\t],\n\thost: { 'data-slot': 'autocomplete' },\n})\nexport class HlmAutocomplete {\n\tconstructor() {\n\t\tclasses(() => 'block');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteContent } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteContent],hlm-autocomplete-content',\n\thostDirectives: [BrnAutocompleteContent],\n})\nexport class HlmAutocompleteContent {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() => 'bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 max-h-72 min-w-36 overflow-hidden rounded-lg shadow-md ring-1 duration-100 group/autocomplete-content flex w-(--brn-autocomplete-width) flex-col p-0',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteEmpty } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteEmpty],hlm-autocomplete-empty',\n\thostDirectives: [BrnAutocompleteEmpty],\n\thost: { 'data-slot': 'autocomplete-empty' },\n})\nexport class HlmAutocompleteEmpty {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground hidden w-full items-center justify-center py-2 text-center text-sm group-data-empty/autocomplete-content:flex');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteGroup } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteGroup]',\n\thostDirectives: [BrnAutocompleteGroup],\n\thost: { 'data-slot': 'autocomplete-group' },\n})\nexport class HlmAutocompleteGroup {\n\tconstructor() {\n\t\tclasses(() => 'data-hidden:hidden');\n\t}\n}\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideSearch, lucideX } from '@ng-icons/lucide';\nimport { BrnAutocompleteAnchor, BrnAutocompleteClear, BrnAutocompleteInput } from '@spartan-ng/brain/autocomplete';\nimport { HlmInputGroup, HlmInputGroupImports } from 'yukit-web/helm/input-group';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-autocomplete-input',\n\timports: [HlmInputGroupImports, NgIcon, BrnAutocompleteClear, BrnAutocompleteInput],\n\tproviders: [provideIcons({ lucideSearch, lucideX })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [BrnAutocompleteAnchor, HlmInputGroup],\n\ttemplate: `\n\t\t<input\n\t\t\tbrnAutocompleteInput\n\t\t\t#autocompleteInput=\"brnAutocompleteInput\"\n\t\t\thlmInputGroupInput\n\t\t\t[id]=\"inputId()\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[aria-invalid]=\"ariaInvalidOverride()\"\n\t\t\t[forceInvalid]=\"forceInvalid()\"\n\t\t/>\n\n\t\t@if (showSearch()) {\n\t\t\t<hlm-input-group-addon>\n\t\t\t\t<ng-icon name=\"lucideSearch\" [class.opacity-50]=\"autocompleteInput.disabled()\" />\n\t\t\t</hlm-input-group-addon>\n\t\t}\n\n\t\t@if (showClear()) {\n\t\t\t<hlm-input-group-addon align=\"inline-end\">\n\t\t\t\t<button\n\t\t\t\t\t*brnAutocompleteClear\n\t\t\t\t\thlmInputGroupButton\n\t\t\t\t\tdata-slot=\"autocomplete-clear\"\n\t\t\t\t\t[disabled]=\"autocompleteInput.disabled()\"\n\t\t\t\t\tsize=\"icon-xs\"\n\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t>\n\t\t\t\t\t<ng-icon name=\"lucideX\" />\n\t\t\t\t</button>\n\t\t\t</hlm-input-group-addon>\n\t\t}\n\t\t<ng-content />\n\t`,\n})\nexport class HlmAutocompleteInput {\n\tprivate static _id = 0;\n\n\tpublic readonly inputId = input<string>(`hlm-autocomplete-input-${HlmAutocompleteInput._id++}`);\n\n\tpublic readonly placeholder = input<string>('');\n\n\tpublic readonly showSearch = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\tpublic readonly showClear = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Forces the invalid state visually, regardless of form control state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Manual override for aria-invalid. When not set, auto-detects from the parent autocomplete error state. */\n\tpublic readonly ariaInvalidOverride = input<boolean | undefined, BooleanInput>(undefined, {\n\t\ttransform: (v: BooleanInput) => (v === '' || v === undefined ? undefined : booleanAttribute(v)),\n\t\talias: 'aria-invalid',\n\t});\n\n\tconstructor() {\n\t\tclasses(() => 'w-auto');\n\t}\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideCheck } from '@ng-icons/lucide';\nimport { BrnAutocompleteItem } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-autocomplete-item',\n\timports: [NgIcon],\n\tproviders: [provideIcons({ lucideCheck })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [{ directive: BrnAutocompleteItem, inputs: ['id', 'disabled', 'value'] }],\n\thost: { 'data-slot': 'autocomplete-item' },\n\ttemplate: `\n\t\t<ng-content />\n\t\t@if (_active()) {\n\t\t\t<ng-icon name=\"lucideCheck\" class=\"absolute end-2 flex items-center justify-center text-[length:--spacing(4)]\" aria-hidden=\"true\" />\n\t\t}\n\t`,\n})\nexport class HlmAutocompleteItem {\n\tprivate readonly _brnAutocompleteItem = inject(BrnAutocompleteItem);\n\n\tprotected readonly _active = this._brnAutocompleteItem.active;\n\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground gap-2 rounded-md py-1 ps-1.5 pe-8 text-sm relative flex w-full cursor-default items-center outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-hidden:hidden [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteLabel } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteLabel]',\n\thostDirectives: [{ directive: BrnAutocompleteLabel, inputs: ['id'] }],\n\thost: { 'data-slot': 'autocomplete-label' },\n})\nexport class HlmAutocompleteLabel {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground px-2 py-1.5 text-xs');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteList } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteList]',\n\thostDirectives: [{ directive: BrnAutocompleteList, inputs: ['id'] }],\n\thost: { 'data-slot': 'autocomplete-list' },\n})\nexport class HlmAutocompleteList {\n\tconstructor() {\n\t\tclasses(() => 'no-scrollbar max-h-[calc(--spacing(72)---spacing(9))] scroll-py-1 p-1 data-empty:p-0 overflow-y-auto overscroll-contain');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnPopoverContent } from '@spartan-ng/brain/popover';\n\n@Directive({\n\tselector: '[hlmAutocompletePortal]',\n\thostDirectives: [{ directive: BrnPopoverContent, inputs: ['context', 'class'] }],\n})\nexport class HlmAutocompletePortal {}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteSearch } from '@spartan-ng/brain/autocomplete';\nimport { BrnPopover, provideBrnPopoverConfig, provideBrnPopoverDefaultOptions } from '@spartan-ng/brain/popover';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteSearch],hlm-autocomplete-search',\n\tproviders: [\n\t\tprovideBrnPopoverConfig({\n\t\t\talign: 'start',\n\t\t\tsideOffset: 6,\n\t\t}),\n\t\tprovideBrnPopoverDefaultOptions({ role: null }),\n\t],\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnAutocompleteSearch,\n\t\t\tinputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString'],\n\t\t\toutputs: ['valueChange', 'searchChange'],\n\t\t},\n\t\t{\n\t\t\tdirective: BrnPopover,\n\t\t\tinputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],\n\t\t\toutputs: ['stateChanged', 'closed'],\n\t\t},\n\t],\n\thost: { 'data-slot': 'autocomplete' },\n})\nexport class HlmAutocompleteSearch {\n\tconstructor() {\n\t\tclasses(() => 'block');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteSeparator } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteSeparator]',\n\thostDirectives: [{ directive: BrnAutocompleteSeparator, inputs: ['orientation'] }],\n\thost: { 'data-slot': 'autocomplete-separator' },\n})\nexport class HlmAutocompleteSeparator {\n\tconstructor() {\n\t\tclasses(() => 'bg-border -mx-1 my-1 h-px');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteStatus } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteStatus],hlm-autocomplete-status',\n\thostDirectives: [BrnAutocompleteStatus],\n\thost: { 'data-slot': 'autocomplete-status' },\n})\nexport class HlmAutocompleteStatus {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground gap-2 px-2.5 py-2 text-sm flex w-full items-center justify-center text-center');\n\t}\n}\n","import { HlmAutocomplete } from './lib/hlm-autocomplete';\nimport { HlmAutocompleteContent } from './lib/hlm-autocomplete-content';\nimport { HlmAutocompleteEmpty } from './lib/hlm-autocomplete-empty';\nimport { HlmAutocompleteGroup } from './lib/hlm-autocomplete-group';\nimport { HlmAutocompleteInput } from './lib/hlm-autocomplete-input';\nimport { HlmAutocompleteItem } from './lib/hlm-autocomplete-item';\nimport { HlmAutocompleteLabel } from './lib/hlm-autocomplete-label';\nimport { HlmAutocompleteList } from './lib/hlm-autocomplete-list';\nimport { HlmAutocompletePortal } from './lib/hlm-autocomplete-portal';\nimport { HlmAutocompleteSearch } from './lib/hlm-autocomplete-search';\nimport { HlmAutocompleteSeparator } from './lib/hlm-autocomplete-separator';\nimport { HlmAutocompleteStatus } from './lib/hlm-autocomplete-status';\n\nexport * from './lib/hlm-autocomplete';\nexport * from './lib/hlm-autocomplete-content';\nexport * from './lib/hlm-autocomplete-empty';\nexport * from './lib/hlm-autocomplete-group';\nexport * from './lib/hlm-autocomplete-input';\nexport * from './lib/hlm-autocomplete-item';\nexport * from './lib/hlm-autocomplete-label';\nexport * from './lib/hlm-autocomplete-list';\nexport * from './lib/hlm-autocomplete-portal';\nexport * from './lib/hlm-autocomplete-search';\nexport * from './lib/hlm-autocomplete-separator';\nexport * from './lib/hlm-autocomplete-status';\n\nexport const HlmAutocompleteImports = [\n\tHlmAutocomplete,\n\tHlmAutocompleteContent,\n\tHlmAutocompleteEmpty,\n\tHlmAutocompleteGroup,\n\tHlmAutocompleteInput,\n\tHlmAutocompleteItem,\n\tHlmAutocompleteLabel,\n\tHlmAutocompleteList,\n\tHlmAutocompletePortal,\n\tHlmAutocompleteSearch,\n\tHlmAutocompleteSeparator,\n\tHlmAutocompleteStatus,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":";;;;;;;;;;;;MA4Ba,eAAe,CAAA;AAC3B,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,OAAO,CAAC;IACvB;+GAHY,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,cAAA,EAAA,EAAA,EAAA,SAAA,EArBhB;AACV,YAAA,uBAAuB,CAAC;AACvB,gBAAA,KAAK,EAAE,OAAO;AACd,gBAAA,UAAU,EAAE,CAAC;aACb,CAAC;AACF,YAAA,+BAA+B,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC/C,SAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,cAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,6BAAA,EAAA,6BAAA,EAAA,YAAA,EAAA,YAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAeW,eAAe,EAAA,UAAA,EAAA,CAAA;kBAvB3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,oCAAoC;AAC9C,oBAAA,SAAS,EAAE;AACV,wBAAA,uBAAuB,CAAC;AACvB,4BAAA,KAAK,EAAE,OAAO;AACd,4BAAA,UAAU,EAAE,CAAC;yBACb,CAAC;AACF,wBAAA,+BAA+B,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC/C,qBAAA;AACD,oBAAA,cAAc,EAAE;AACf,wBAAA;AACC,4BAAA,SAAS,EAAE,eAAe;AAC1B,4BAAA,MAAM,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,oBAAoB,CAAC;AAC9F,4BAAA,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC;AACxC,yBAAA;AACD,wBAAA;AACC,4BAAA,SAAS,EAAE,UAAU;4BACrB,MAAM,EAAE,CAAC,OAAO,EAAE,6BAA6B,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,CAAC;AAClF,4BAAA,OAAO,EAAE,CAAC,cAAc,EAAE,QAAQ,CAAC;AACnC,yBAAA;AACD,qBAAA;AACD,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE;AACrC,iBAAA;;;MCnBY,sBAAsB,CAAA;AAClC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CACN,MAAM,6eAA6e,CACnf;IACF;+GALY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mDAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,mDAAmD;oBAC7D,cAAc,EAAE,CAAC,sBAAsB,CAAC;AACxC,iBAAA;;;MCEY,oBAAoB,CAAA;AAChC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,qIAAqI,CAAC;IACrJ;+GAHY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,+CAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,+CAA+C;oBACzD,cAAc,EAAE,CAAC,oBAAoB,CAAC;AACtC,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE;AAC3C,iBAAA;;;MCCY,oBAAoB,CAAA;AAChC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,oBAAoB,CAAC;IACpC;+GAHY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,wBAAwB;oBAClC,cAAc,EAAE,CAAC,oBAAoB,CAAC;AACtC,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE;AAC3C,iBAAA;;;MCwCY,oBAAoB,CAAA;aACjB,IAAA,CAAA,GAAG,GAAG,CAAH,CAAK;AAkBvB,IAAA,WAAA,GAAA;QAhBgB,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,CAAA,uBAAA,EAA0B,oBAAoB,CAAC,GAAG,EAAE,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AAE/E,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAS,EAAE,kFAAC;QAE/B,IAAA,CAAA,UAAU,GAAG,KAAK,CAAwB,IAAI,kFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;QAChF,IAAA,CAAA,SAAS,GAAG,KAAK,CAAwB,KAAK,iFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;QAGhF,IAAA,CAAA,YAAY,GAAG,KAAK,CAAwB,KAAK,oFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;AAGnF,QAAA,IAAA,CAAA,mBAAmB,GAAG,KAAK,CAAoC,SAAS,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,8BAAA,EAAA,CAAA,EACvF,SAAS,EAAE,CAAC,CAAe,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,SAAS,GAAG,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YAC/F,KAAK,EAAE,cAAc,EAAA,CACpB;AAGD,QAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;IACxB;+GArBY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EArCrB,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,EAAA,EAAA,SAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAG1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCT,CAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,4CAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EApC+B,MAAM,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,aAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,oBAAoB,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,oBAAoB,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,sBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAsCtE,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAxChC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,wBAAwB;oBAClC,OAAO,EAAE,CAAC,oBAAoB,EAAE,MAAM,EAAE,oBAAoB,EAAE,oBAAoB,CAAC;oBACnF,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;oBACpD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,cAAc,EAAE,CAAC,qBAAqB,EAAE,aAAa,CAAC;AACtD,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCT,CAAA,CAAA;AACD,iBAAA;;;MC3BY,mBAAmB,CAAA;AAK/B,IAAA,WAAA,GAAA;AAJiB,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAEhD,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM;AAG5D,QAAA,OAAO,CACN,MACC,uYAAuY,CACxY;IACF;+GAVY,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,SAAA,EAXpB,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAIhC;;;;;AAKT,CAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAVS,MAAM,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,aAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAYJ,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAd/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,uBAAuB;oBACjC,OAAO,EAAE,CAAC,MAAM,CAAC;oBACjB,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;oBAC1C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;AACzF,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE;AAC1C,oBAAA,QAAQ,EAAE;;;;;AAKT,CAAA,CAAA;AACD,iBAAA;;;MCVY,oBAAoB,CAAA;AAChC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,2CAA2C,CAAC;IAC3D;+GAHY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;AACrE,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE;AAC3C,iBAAA;;;MCCY,mBAAmB,CAAA;AAC/B,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,yHAAyH,CAAC;IACzI;+GAHY,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;AACpE,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE;AAC1C,iBAAA;;;MCDY,qBAAqB,CAAA;+GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAC,EAAA,CAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,OAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;AAChF,iBAAA;;;MCsBY,qBAAqB,CAAA;AACjC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,OAAO,CAAC;IACvB;+GAHY,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iDAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,cAAA,EAAA,EAAA,EAAA,SAAA,EArBtB;AACV,YAAA,uBAAuB,CAAC;AACvB,gBAAA,KAAK,EAAE,OAAO;AACd,gBAAA,UAAU,EAAE,CAAC;aACb,CAAC;AACF,YAAA,+BAA+B,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC/C,SAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,6BAAA,EAAA,6BAAA,EAAA,YAAA,EAAA,YAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAeW,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAvBjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,iDAAiD;AAC3D,oBAAA,SAAS,EAAE;AACV,wBAAA,uBAAuB,CAAC;AACvB,4BAAA,KAAK,EAAE,OAAO;AACd,4BAAA,UAAU,EAAE,CAAC;yBACb,CAAC;AACF,wBAAA,+BAA+B,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC/C,qBAAA;AACD,oBAAA,cAAc,EAAE;AACf,wBAAA;AACC,4BAAA,SAAS,EAAE,qBAAqB;4BAChC,MAAM,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC;AACxE,4BAAA,OAAO,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC;AACxC,yBAAA;AACD,wBAAA;AACC,4BAAA,SAAS,EAAE,UAAU;4BACrB,MAAM,EAAE,CAAC,OAAO,EAAE,6BAA6B,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,CAAC;AAClF,4BAAA,OAAO,EAAE,CAAC,cAAc,EAAE,QAAQ,CAAC;AACnC,yBAAA;AACD,qBAAA;AACD,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE;AACrC,iBAAA;;;MClBY,wBAAwB,CAAA;AACpC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,2BAA2B,CAAC;IAC3C;+GAHY,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;AAClF,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE;AAC/C,iBAAA;;;MCCY,qBAAqB,CAAA;AACjC,IAAA,WAAA,GAAA;AACC,QAAA,OAAO,CAAC,MAAM,qGAAqG,CAAC;IACrH;+GAHY,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iDAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,iDAAiD;oBAC3D,cAAc,EAAE,CAAC,qBAAqB,CAAC;AACvC,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,qBAAqB,EAAE;AAC5C,iBAAA;;;ACkBM,MAAM,sBAAsB,GAAG;IACrC,eAAe;IACf,sBAAsB;IACtB,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,qBAAqB;IACrB,qBAAqB;IACrB,wBAAwB;IACxB,qBAAqB;;;ACtCtB;;AAEG;;"}
|
|
@@ -138,7 +138,7 @@ class HlmCalendar {
|
|
|
138
138
|
</tbody>
|
|
139
139
|
</table>
|
|
140
140
|
</div>
|
|
141
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.BrnCalendarCellButton, selector: "button[brnCalendarCellButton]", inputs: ["date"] }, { kind: "directive", type: i1.BrnCalendarGrid, selector: "[brnCalendarGrid]" }, { kind: "directive", type: i1.BrnCalendarHeader, selector: "[brnCalendarHeader]", inputs: ["id"] }, { kind: "directive", type: i1.BrnCalendarNextButton, selector: "[brnCalendarNextButton]" }, { kind: "directive", type: i1.BrnCalendarPreviousButton, selector: "[brnCalendarPreviousButton]" }, { kind: "directive", type: i1.BrnCalendarWeek, selector: "[brnCalendarWeek]" }, { kind: "directive", type: i1.BrnCalendarWeekday, selector: "[brnCalendarWeekday]" }, { kind: "directive", type: i1.BrnCalendarCell, selector: "[brnCalendarCell]" }, { kind: "directive", type: i1.BrnCalendarMonthSelect, selector: "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]" }, { kind: "directive", type: i1.BrnCalendarYearSelect, selector: "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: i2.HlmSelect, selector: "[hlmSelect],hlm-select" }, { kind: "component", type: i2.HlmSelectContent, selector: "hlm-select-content", inputs: ["showScroll"] }, { kind: "directive", type: i2.HlmSelectGroup, selector: "[hlmSelectGroup],hlm-select-group" }, { kind: "component", type: i2.HlmSelectItem, selector: "hlm-select-item" }, { kind: "directive", type: i2.HlmSelectPortal, selector: "[hlmSelectPortal]" }, { kind: "component", type: i2.HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "buttonId", "size", "forceInvalid"] }, { kind: "directive", type: i2.HlmSelectValue, selector: "[hlmSelectValue],hlm-select-value" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.HlmButton, selector: "button[hlmBtn], a[hlmBtn]", inputs: ["variant", "size"], exportAs: ["hlmBtn"] }], viewProviders: [provideIcons({ lucideChevronLeft, lucideChevronRight })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
141
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.BrnCalendarCellButton, selector: "button[brnCalendarCellButton]", inputs: ["date"] }, { kind: "directive", type: i1.BrnCalendarGrid, selector: "[brnCalendarGrid]" }, { kind: "directive", type: i1.BrnCalendarHeader, selector: "[brnCalendarHeader]", inputs: ["id"] }, { kind: "directive", type: i1.BrnCalendarNextButton, selector: "button[brnCalendarNextButton]" }, { kind: "directive", type: i1.BrnCalendarPreviousButton, selector: "button[brnCalendarPreviousButton]" }, { kind: "directive", type: i1.BrnCalendarWeek, selector: "[brnCalendarWeek]" }, { kind: "directive", type: i1.BrnCalendarWeekday, selector: "[brnCalendarWeekday]" }, { kind: "directive", type: i1.BrnCalendarCell, selector: "[brnCalendarCell]" }, { kind: "directive", type: i1.BrnCalendarMonthSelect, selector: "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]" }, { kind: "directive", type: i1.BrnCalendarYearSelect, selector: "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: i2.HlmSelect, selector: "[hlmSelect],hlm-select" }, { kind: "component", type: i2.HlmSelectContent, selector: "hlm-select-content", inputs: ["showScroll"] }, { kind: "directive", type: i2.HlmSelectGroup, selector: "[hlmSelectGroup],hlm-select-group" }, { kind: "component", type: i2.HlmSelectItem, selector: "hlm-select-item" }, { kind: "directive", type: i2.HlmSelectPortal, selector: "[hlmSelectPortal]" }, { kind: "component", type: i2.HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "buttonId", "size", "forceInvalid"] }, { kind: "directive", type: i2.HlmSelectValue, selector: "[hlmSelectValue],hlm-select-value" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.HlmButton, selector: "button[hlmBtn], a[hlmBtn]", inputs: ["variant", "size"], exportAs: ["hlmBtn"] }], viewProviders: [provideIcons({ lucideChevronLeft, lucideChevronRight })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
142
142
|
}
|
|
143
143
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HlmCalendar, decorators: [{
|
|
144
144
|
type: Component,
|
|
@@ -386,7 +386,7 @@ class HlmCalendarMulti {
|
|
|
386
386
|
</tbody>
|
|
387
387
|
</table>
|
|
388
388
|
</div>
|
|
389
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.BrnCalendarCellButton, selector: "button[brnCalendarCellButton]", inputs: ["date"] }, { kind: "directive", type: i1.BrnCalendarGrid, selector: "[brnCalendarGrid]" }, { kind: "directive", type: i1.BrnCalendarHeader, selector: "[brnCalendarHeader]", inputs: ["id"] }, { kind: "directive", type: i1.BrnCalendarNextButton, selector: "[brnCalendarNextButton]" }, { kind: "directive", type: i1.BrnCalendarPreviousButton, selector: "[brnCalendarPreviousButton]" }, { kind: "directive", type: i1.BrnCalendarWeek, selector: "[brnCalendarWeek]" }, { kind: "directive", type: i1.BrnCalendarWeekday, selector: "[brnCalendarWeekday]" }, { kind: "directive", type: i1.BrnCalendarCell, selector: "[brnCalendarCell]" }, { kind: "directive", type: i1.BrnCalendarMonthSelect, selector: "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]" }, { kind: "directive", type: i1.BrnCalendarYearSelect, selector: "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.HlmSelect, selector: "[hlmSelect],hlm-select" }, { kind: "component", type: i2.HlmSelectContent, selector: "hlm-select-content", inputs: ["showScroll"] }, { kind: "directive", type: i2.HlmSelectGroup, selector: "[hlmSelectGroup],hlm-select-group" }, { kind: "component", type: i2.HlmSelectItem, selector: "hlm-select-item" }, { kind: "directive", type: i2.HlmSelectPortal, selector: "[hlmSelectPortal]" }, { kind: "component", type: i2.HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "buttonId", "size", "forceInvalid"] }, { kind: "directive", type: i2.HlmSelectValue, selector: "[hlmSelectValue],hlm-select-value" }, { kind: "directive", type: i3.HlmButton, selector: "button[hlmBtn], a[hlmBtn]", inputs: ["variant", "size"], exportAs: ["hlmBtn"] }], viewProviders: [provideIcons({ lucideChevronLeft, lucideChevronRight })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
389
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.BrnCalendarCellButton, selector: "button[brnCalendarCellButton]", inputs: ["date"] }, { kind: "directive", type: i1.BrnCalendarGrid, selector: "[brnCalendarGrid]" }, { kind: "directive", type: i1.BrnCalendarHeader, selector: "[brnCalendarHeader]", inputs: ["id"] }, { kind: "directive", type: i1.BrnCalendarNextButton, selector: "button[brnCalendarNextButton]" }, { kind: "directive", type: i1.BrnCalendarPreviousButton, selector: "button[brnCalendarPreviousButton]" }, { kind: "directive", type: i1.BrnCalendarWeek, selector: "[brnCalendarWeek]" }, { kind: "directive", type: i1.BrnCalendarWeekday, selector: "[brnCalendarWeekday]" }, { kind: "directive", type: i1.BrnCalendarCell, selector: "[brnCalendarCell]" }, { kind: "directive", type: i1.BrnCalendarMonthSelect, selector: "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]" }, { kind: "directive", type: i1.BrnCalendarYearSelect, selector: "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.HlmSelect, selector: "[hlmSelect],hlm-select" }, { kind: "component", type: i2.HlmSelectContent, selector: "hlm-select-content", inputs: ["showScroll"] }, { kind: "directive", type: i2.HlmSelectGroup, selector: "[hlmSelectGroup],hlm-select-group" }, { kind: "component", type: i2.HlmSelectItem, selector: "hlm-select-item" }, { kind: "directive", type: i2.HlmSelectPortal, selector: "[hlmSelectPortal]" }, { kind: "component", type: i2.HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "buttonId", "size", "forceInvalid"] }, { kind: "directive", type: i2.HlmSelectValue, selector: "[hlmSelectValue],hlm-select-value" }, { kind: "directive", type: i3.HlmButton, selector: "button[hlmBtn], a[hlmBtn]", inputs: ["variant", "size"], exportAs: ["hlmBtn"] }], viewProviders: [provideIcons({ lucideChevronLeft, lucideChevronRight })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
390
390
|
}
|
|
391
391
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HlmCalendarMulti, decorators: [{
|
|
392
392
|
type: Component,
|
|
@@ -645,7 +645,7 @@ class HlmCalendarRange {
|
|
|
645
645
|
</tbody>
|
|
646
646
|
</table>
|
|
647
647
|
</div>
|
|
648
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.BrnCalendarCellButton, selector: "button[brnCalendarCellButton]", inputs: ["date"] }, { kind: "directive", type: i1.BrnCalendarGrid, selector: "[brnCalendarGrid]" }, { kind: "directive", type: i1.BrnCalendarHeader, selector: "[brnCalendarHeader]", inputs: ["id"] }, { kind: "directive", type: i1.BrnCalendarNextButton, selector: "[brnCalendarNextButton]" }, { kind: "directive", type: i1.BrnCalendarPreviousButton, selector: "[brnCalendarPreviousButton]" }, { kind: "directive", type: i1.BrnCalendarWeek, selector: "[brnCalendarWeek]" }, { kind: "directive", type: i1.BrnCalendarWeekday, selector: "[brnCalendarWeekday]" }, { kind: "directive", type: i1.BrnCalendarCell, selector: "[brnCalendarCell]" }, { kind: "directive", type: i1.BrnCalendarMonthSelect, selector: "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]" }, { kind: "directive", type: i1.BrnCalendarYearSelect, selector: "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: i2.HlmSelect, selector: "[hlmSelect],hlm-select" }, { kind: "component", type: i2.HlmSelectContent, selector: "hlm-select-content", inputs: ["showScroll"] }, { kind: "directive", type: i2.HlmSelectGroup, selector: "[hlmSelectGroup],hlm-select-group" }, { kind: "component", type: i2.HlmSelectItem, selector: "hlm-select-item" }, { kind: "directive", type: i2.HlmSelectPortal, selector: "[hlmSelectPortal]" }, { kind: "component", type: i2.HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "buttonId", "size", "forceInvalid"] }, { kind: "directive", type: i2.HlmSelectValue, selector: "[hlmSelectValue],hlm-select-value" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.HlmButton, selector: "button[hlmBtn], a[hlmBtn]", inputs: ["variant", "size"], exportAs: ["hlmBtn"] }], viewProviders: [provideIcons({ lucideChevronLeft, lucideChevronRight })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
648
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.BrnCalendarCellButton, selector: "button[brnCalendarCellButton]", inputs: ["date"] }, { kind: "directive", type: i1.BrnCalendarGrid, selector: "[brnCalendarGrid]" }, { kind: "directive", type: i1.BrnCalendarHeader, selector: "[brnCalendarHeader]", inputs: ["id"] }, { kind: "directive", type: i1.BrnCalendarNextButton, selector: "button[brnCalendarNextButton]" }, { kind: "directive", type: i1.BrnCalendarPreviousButton, selector: "button[brnCalendarPreviousButton]" }, { kind: "directive", type: i1.BrnCalendarWeek, selector: "[brnCalendarWeek]" }, { kind: "directive", type: i1.BrnCalendarWeekday, selector: "[brnCalendarWeekday]" }, { kind: "directive", type: i1.BrnCalendarCell, selector: "[brnCalendarCell]" }, { kind: "directive", type: i1.BrnCalendarMonthSelect, selector: "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]" }, { kind: "directive", type: i1.BrnCalendarYearSelect, selector: "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: i2.HlmSelect, selector: "[hlmSelect],hlm-select" }, { kind: "component", type: i2.HlmSelectContent, selector: "hlm-select-content", inputs: ["showScroll"] }, { kind: "directive", type: i2.HlmSelectGroup, selector: "[hlmSelectGroup],hlm-select-group" }, { kind: "component", type: i2.HlmSelectItem, selector: "hlm-select-item" }, { kind: "directive", type: i2.HlmSelectPortal, selector: "[hlmSelectPortal]" }, { kind: "component", type: i2.HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "buttonId", "size", "forceInvalid"] }, { kind: "directive", type: i2.HlmSelectValue, selector: "[hlmSelectValue],hlm-select-value" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.HlmButton, selector: "button[hlmBtn], a[hlmBtn]", inputs: ["variant", "size"], exportAs: ["hlmBtn"] }], viewProviders: [provideIcons({ lucideChevronLeft, lucideChevronRight })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
649
649
|
}
|
|
650
650
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HlmCalendarRange, decorators: [{
|
|
651
651
|
type: Component,
|