@tailng-ui/primitives 0.54.0 → 0.56.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/package.json +2 -2
- package/src/lib/form/date-range-picker/__tests__/tng-date-range-picker.test-helpers.d.ts +25 -0
- package/src/lib/form/date-range-picker/__tests__/tng-date-range-picker.test-helpers.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/__tests__/tng-date-range-picker.test-helpers.js +109 -0
- package/src/lib/form/date-range-picker/__tests__/tng-date-range-picker.test-helpers.js.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.adapters.d.ts +5 -0
- package/src/lib/form/date-range-picker/date-range-picker.adapters.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.adapters.js +9 -0
- package/src/lib/form/date-range-picker/date-range-picker.adapters.js.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.state.d.ts +10 -0
- package/src/lib/form/date-range-picker/date-range-picker.state.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.state.js +35 -0
- package/src/lib/form/date-range-picker/date-range-picker.state.js.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.types.d.ts +280 -0
- package/src/lib/form/date-range-picker/date-range-picker.types.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.types.js +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.types.js.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.utils.d.ts +54 -0
- package/src/lib/form/date-range-picker/date-range-picker.utils.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/date-range-picker.utils.js +37 -0
- package/src/lib/form/date-range-picker/date-range-picker.utils.js.map +1 -0
- package/src/lib/form/date-range-picker/index.d.ts +7 -0
- package/src/lib/form/date-range-picker/index.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/index.js +7 -0
- package/src/lib/form/date-range-picker/index.js.map +1 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.d.ts +5 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.js +1970 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.js.map +1 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.overlay.d.ts +87 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.overlay.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.overlay.js +447 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.overlay.js.map +1 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.parts.d.ts +3155 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.parts.d.ts.map +1 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.parts.js +940 -0
- package/src/lib/form/date-range-picker/tng-date-range-picker.parts.js.map +1 -0
- package/src/lib/form/datepicker/datepicker.adapters.d.ts.map +1 -1
- package/src/lib/form/datepicker/datepicker.adapters.js +4 -189
- package/src/lib/form/datepicker/datepicker.adapters.js.map +1 -1
- package/src/lib/form/datepicker/datepicker.state.d.ts.map +1 -1
- package/src/lib/form/datepicker/datepicker.state.js +7 -86
- package/src/lib/form/datepicker/datepicker.state.js.map +1 -1
- package/src/lib/form/datepicker/datepicker.utils.d.ts +6 -28
- package/src/lib/form/datepicker/datepicker.utils.d.ts.map +1 -1
- package/src/lib/form/datepicker/datepicker.utils.js +14 -228
- package/src/lib/form/datepicker/datepicker.utils.js.map +1 -1
- package/src/lib/form/index.d.ts +2 -0
- package/src/lib/form/index.d.ts.map +1 -1
- package/src/lib/form/index.js +2 -0
- package/src/lib/form/index.js.map +1 -1
- package/src/lib/form/number-range/index.d.ts +3 -0
- package/src/lib/form/number-range/index.d.ts.map +1 -0
- package/src/lib/form/number-range/index.js +3 -0
- package/src/lib/form/number-range/index.js.map +1 -0
- package/src/lib/form/number-range/tng-number-range.d.ts +26 -0
- package/src/lib/form/number-range/tng-number-range.d.ts.map +1 -0
- package/src/lib/form/number-range/tng-number-range.js +49 -0
- package/src/lib/form/number-range/tng-number-range.js.map +1 -0
- package/src/lib/form/number-range/tng-number-range.types.d.ts +12 -0
- package/src/lib/form/number-range/tng-number-range.types.d.ts.map +1 -0
- package/src/lib/form/number-range/tng-number-range.types.js +1 -0
- package/src/lib/form/number-range/tng-number-range.types.js.map +1 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { TngDateAdapter, TngDateCell, TngDateValue, TngMonthOption, TngWeekdayIndex, TngYearOption } from './date-range-picker.types';
|
|
2
|
+
type TngMonthGridOptions<TDate> = Readonly<{
|
|
3
|
+
activeDate: TDate;
|
|
4
|
+
adapter: Readonly<TngDateAdapter<TDate>>;
|
|
5
|
+
createCellId: (date: TDate) => string;
|
|
6
|
+
fixedWeeks: boolean;
|
|
7
|
+
focusStrategy: 'active-descendant' | 'roving';
|
|
8
|
+
focusedDate: TDate | null;
|
|
9
|
+
inRange: (date: TDate) => boolean;
|
|
10
|
+
isDisabled: (date: TDate) => boolean;
|
|
11
|
+
isPreviewRange: (date: TDate) => boolean;
|
|
12
|
+
isRangeEnd: (date: TDate) => boolean;
|
|
13
|
+
isRangeStart: (date: TDate) => boolean;
|
|
14
|
+
isSelected: (date: TDate) => boolean;
|
|
15
|
+
locale?: string;
|
|
16
|
+
showOutsideDays: boolean;
|
|
17
|
+
today: TDate;
|
|
18
|
+
visibleMonth: TDate;
|
|
19
|
+
weekStartsOn: TngWeekdayIndex;
|
|
20
|
+
}>;
|
|
21
|
+
type TngMonthOptionsConfig<TDate> = Readonly<{
|
|
22
|
+
activeDate: TDate;
|
|
23
|
+
adapter: Readonly<TngDateAdapter<TDate>>;
|
|
24
|
+
createId: (month: number) => string;
|
|
25
|
+
disabledMonth: (month: number) => boolean;
|
|
26
|
+
focusedDate: TDate | null;
|
|
27
|
+
focusedSection: 'day' | 'month' | 'year';
|
|
28
|
+
locale?: string;
|
|
29
|
+
selectedMonth: (month: number) => boolean;
|
|
30
|
+
visibleMonth: TDate;
|
|
31
|
+
}>;
|
|
32
|
+
type TngYearOptionsConfig<TDate> = Readonly<{
|
|
33
|
+
activeDate: TDate;
|
|
34
|
+
adapter: Readonly<TngDateAdapter<TDate>>;
|
|
35
|
+
createId: (year: number) => string;
|
|
36
|
+
disabledYear: (year: number) => boolean;
|
|
37
|
+
focusedDate: TDate | null;
|
|
38
|
+
focusedSection: 'day' | 'month' | 'year';
|
|
39
|
+
locale?: string;
|
|
40
|
+
selectedYear: (year: number) => boolean;
|
|
41
|
+
startYear: number;
|
|
42
|
+
totalYears: number;
|
|
43
|
+
visibleMonth: TDate;
|
|
44
|
+
}>;
|
|
45
|
+
export { clampDateToMonth, compareMonthIdentity, compareYearIdentity, datesEqual, findFirstEnabledDateInMonth, hasCompleteRange, hasPartialRange, hasSelectableDateInMonth, includesView, isDateAfter, isDateBefore, isDateBetween, isDateValueInMonth, isSameDate, moveDateSkippingDisabled, normalizeDateRange, normalizeRangeOrder, resolveInitialFocusedSection, resolveLocaleWeekStartsOn, resolveViewForEscape, sortAndUniqueDates, startOfDate, toDateKey, } from '@tailng-ui/cdk';
|
|
46
|
+
type TngWeekBoundary = 'end' | 'start';
|
|
47
|
+
export declare function isValueSelected<TDate>(adapter: Readonly<TngDateAdapter<TDate>>, _selectionMode: 'range', value: Readonly<TngDateValue<TDate>>, date: TDate): boolean;
|
|
48
|
+
export declare function isDateInRange<TDate>(adapter: Readonly<TngDateAdapter<TDate>>, value: Readonly<TngDateValue<TDate>>, date: TDate): boolean;
|
|
49
|
+
export declare function buildMonthGrid<TDate>(options: Readonly<TngMonthGridOptions<TDate>>): readonly TngDateCell<TDate>[];
|
|
50
|
+
export declare function buildMonthOptions<TDate>(options: Readonly<TngMonthOptionsConfig<TDate>>): readonly TngMonthOption<TDate>[];
|
|
51
|
+
export declare function buildYearOptions<TDate>(options: Readonly<TngYearOptionsConfig<TDate>>): readonly TngYearOption<TDate>[];
|
|
52
|
+
export declare function resolveWeekBoundaryDate<TDate>(adapter: Readonly<TngDateAdapter<TDate>>, date: TDate, weekStartsOn: TngWeekdayIndex, boundary: TngWeekBoundary): TDate;
|
|
53
|
+
export declare function hasSelectableDateInYear<TDate>(adapter: Readonly<TngDateAdapter<TDate>>, year: number, _currentMonth: TDate, isDisabled: (date: TDate) => boolean): boolean;
|
|
54
|
+
//# sourceMappingURL=date-range-picker.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-range-picker.utils.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/date-range-picker/date-range-picker.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/* eslint-disable max-params -- Date range picker utility facades preserve the existing public positional API. */
|
|
2
|
+
import { buildMonthGrid as buildTngMonthGrid, buildMonthOptions as buildTngMonthOptions, buildYearOptions as buildTngYearOptions, hasSelectableDateInYear as hasTngSelectableDateInYear, isDateInRange as isTngDateInRange, resolveWeekBoundaryDate as resolveTngWeekBoundaryDate, } from '@tailng-ui/cdk';
|
|
3
|
+
export { clampDateToMonth, compareMonthIdentity, compareYearIdentity, datesEqual, findFirstEnabledDateInMonth, hasCompleteRange, hasPartialRange, hasSelectableDateInMonth, includesView, isDateAfter, isDateBefore, isDateBetween, isDateValueInMonth, isSameDate, moveDateSkippingDisabled, normalizeDateRange, normalizeRangeOrder, resolveInitialFocusedSection, resolveLocaleWeekStartsOn, resolveViewForEscape, sortAndUniqueDates, startOfDate, toDateKey, } from '@tailng-ui/cdk';
|
|
4
|
+
export function isValueSelected(adapter, _selectionMode, value, date) {
|
|
5
|
+
if (value === null) {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
const range = value;
|
|
9
|
+
if (range.start === null || range.end === null) {
|
|
10
|
+
return range.start !== null && adapter.compare(range.start, date) === 0;
|
|
11
|
+
}
|
|
12
|
+
return adapter.compare(range.start, date) === 0 || adapter.compare(range.end, date) === 0;
|
|
13
|
+
}
|
|
14
|
+
export function isDateInRange(adapter, value, date) {
|
|
15
|
+
return isTngDateInRange({ adapter, date, includeEndpoints: false, value });
|
|
16
|
+
}
|
|
17
|
+
export function buildMonthGrid(options) {
|
|
18
|
+
return buildTngMonthGrid({
|
|
19
|
+
...options,
|
|
20
|
+
getCellState: ({ date }) => Object.freeze({
|
|
21
|
+
previewRange: options.isPreviewRange(date),
|
|
22
|
+
}),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
export function buildMonthOptions(options) {
|
|
26
|
+
return buildTngMonthOptions(options);
|
|
27
|
+
}
|
|
28
|
+
export function buildYearOptions(options) {
|
|
29
|
+
return buildTngYearOptions(options);
|
|
30
|
+
}
|
|
31
|
+
export function resolveWeekBoundaryDate(adapter, date, weekStartsOn, boundary) {
|
|
32
|
+
return resolveTngWeekBoundaryDate({ adapter, boundary, date, weekStartsOn });
|
|
33
|
+
}
|
|
34
|
+
export function hasSelectableDateInYear(adapter, year, _currentMonth, isDisabled) {
|
|
35
|
+
return hasTngSelectableDateInYear({ adapter, isDisabled, year });
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=date-range-picker.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-range-picker.utils.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/date-range-picker/date-range-picker.utils.ts"],"names":[],"mappings":"AAAA,iHAAiH;AACjH,OAAO,EACL,cAAc,IAAI,iBAAiB,EACnC,iBAAiB,IAAI,oBAAoB,EACzC,gBAAgB,IAAI,mBAAmB,EACvC,uBAAuB,IAAI,0BAA0B,EACrD,aAAa,IAAI,gBAAgB,EACjC,uBAAuB,IAAI,0BAA0B,GACtD,MAAM,gBAAgB,CAAC;AAyDxB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,2BAA2B,EAC3B,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,4BAA4B,EAC5B,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,SAAS,GACV,MAAM,gBAAgB,CAAC;AAIxB,MAAM,UAAU,eAAe,CAC7B,OAAwC,EACxC,cAAuB,EACvB,KAAoC,EACpC,IAAW;IAEX,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,KAA4B,CAAC;IAC3C,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAAwC,EACxC,KAAoC,EACpC,IAAW;IAEX,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,OAA6C;IAE7C,OAAO,iBAAiB,CAAC;QACvB,GAAG,OAAO;QACV,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CACzB,MAAM,CAAC,MAAM,CAAC;YACZ,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;SAC3C,CAAC;KACL,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAA+C;IAE/C,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAA8C;IAE9C,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,OAAwC,EACxC,IAAW,EACX,YAA6B,EAC7B,QAAyB;IAEzB,OAAO,0BAA0B,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,OAAwC,EACxC,IAAY,EACZ,aAAoB,EACpB,UAAoC;IAEpC,OAAO,0BAA0B,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AACnE,CAAC","sourcesContent":["/* eslint-disable max-params -- Date range picker utility facades preserve the existing public positional API. */\nimport {\n buildMonthGrid as buildTngMonthGrid,\n buildMonthOptions as buildTngMonthOptions,\n buildYearOptions as buildTngYearOptions,\n hasSelectableDateInYear as hasTngSelectableDateInYear,\n isDateInRange as isTngDateInRange,\n resolveWeekBoundaryDate as resolveTngWeekBoundaryDate,\n} from '@tailng-ui/cdk';\nimport type {\n TngDateAdapter,\n TngDateCell,\n TngDateRange,\n TngDateValue,\n TngMonthOption,\n TngWeekdayIndex,\n TngYearOption,\n} from './date-range-picker.types';\n\ntype TngMonthGridOptions<TDate> = Readonly<{\n activeDate: TDate;\n adapter: Readonly<TngDateAdapter<TDate>>;\n createCellId: (date: TDate) => string;\n fixedWeeks: boolean;\n focusStrategy: 'active-descendant' | 'roving';\n focusedDate: TDate | null;\n inRange: (date: TDate) => boolean;\n isDisabled: (date: TDate) => boolean;\n isPreviewRange: (date: TDate) => boolean;\n isRangeEnd: (date: TDate) => boolean;\n isRangeStart: (date: TDate) => boolean;\n isSelected: (date: TDate) => boolean;\n locale?: string;\n showOutsideDays: boolean;\n today: TDate;\n visibleMonth: TDate;\n weekStartsOn: TngWeekdayIndex;\n}>;\n\ntype TngMonthOptionsConfig<TDate> = Readonly<{\n activeDate: TDate;\n adapter: Readonly<TngDateAdapter<TDate>>;\n createId: (month: number) => string;\n disabledMonth: (month: number) => boolean;\n focusedDate: TDate | null;\n focusedSection: 'day' | 'month' | 'year';\n locale?: string;\n selectedMonth: (month: number) => boolean;\n visibleMonth: TDate;\n}>;\n\ntype TngYearOptionsConfig<TDate> = Readonly<{\n activeDate: TDate;\n adapter: Readonly<TngDateAdapter<TDate>>;\n createId: (year: number) => string;\n disabledYear: (year: number) => boolean;\n focusedDate: TDate | null;\n focusedSection: 'day' | 'month' | 'year';\n locale?: string;\n selectedYear: (year: number) => boolean;\n startYear: number;\n totalYears: number;\n visibleMonth: TDate;\n}>;\n\nexport {\n clampDateToMonth,\n compareMonthIdentity,\n compareYearIdentity,\n datesEqual,\n findFirstEnabledDateInMonth,\n hasCompleteRange,\n hasPartialRange,\n hasSelectableDateInMonth,\n includesView,\n isDateAfter,\n isDateBefore,\n isDateBetween,\n isDateValueInMonth,\n isSameDate,\n moveDateSkippingDisabled,\n normalizeDateRange,\n normalizeRangeOrder,\n resolveInitialFocusedSection,\n resolveLocaleWeekStartsOn,\n resolveViewForEscape,\n sortAndUniqueDates,\n startOfDate,\n toDateKey,\n} from '@tailng-ui/cdk';\n\ntype TngWeekBoundary = 'end' | 'start';\n\nexport function isValueSelected<TDate>(\n adapter: Readonly<TngDateAdapter<TDate>>,\n _selectionMode: 'range',\n value: Readonly<TngDateValue<TDate>>,\n date: TDate,\n): boolean {\n if (value === null) {\n return false;\n }\n\n const range = value as TngDateRange<TDate>;\n if (range.start === null || range.end === null) {\n return range.start !== null && adapter.compare(range.start, date) === 0;\n }\n\n return adapter.compare(range.start, date) === 0 || adapter.compare(range.end, date) === 0;\n}\n\nexport function isDateInRange<TDate>(\n adapter: Readonly<TngDateAdapter<TDate>>,\n value: Readonly<TngDateValue<TDate>>,\n date: TDate,\n): boolean {\n return isTngDateInRange({ adapter, date, includeEndpoints: false, value });\n}\n\nexport function buildMonthGrid<TDate>(\n options: Readonly<TngMonthGridOptions<TDate>>,\n): readonly TngDateCell<TDate>[] {\n return buildTngMonthGrid({\n ...options,\n getCellState: ({ date }) =>\n Object.freeze({\n previewRange: options.isPreviewRange(date),\n }),\n });\n}\n\nexport function buildMonthOptions<TDate>(\n options: Readonly<TngMonthOptionsConfig<TDate>>,\n): readonly TngMonthOption<TDate>[] {\n return buildTngMonthOptions(options);\n}\n\nexport function buildYearOptions<TDate>(\n options: Readonly<TngYearOptionsConfig<TDate>>,\n): readonly TngYearOption<TDate>[] {\n return buildTngYearOptions(options);\n}\n\nexport function resolveWeekBoundaryDate<TDate>(\n adapter: Readonly<TngDateAdapter<TDate>>,\n date: TDate,\n weekStartsOn: TngWeekdayIndex,\n boundary: TngWeekBoundary,\n): TDate {\n return resolveTngWeekBoundaryDate({ adapter, boundary, date, weekStartsOn });\n}\n\nexport function hasSelectableDateInYear<TDate>(\n adapter: Readonly<TngDateAdapter<TDate>>,\n year: number,\n _currentMonth: TDate,\n isDisabled: (date: TDate) => boolean,\n): boolean {\n return hasTngSelectableDateInYear({ adapter, isDisabled, year });\n}\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { defaultDateRangePickerDateAdapter } from './date-range-picker.adapters';
|
|
2
|
+
export * from './date-range-picker.state';
|
|
3
|
+
export * from './date-range-picker.utils';
|
|
4
|
+
export * from './tng-date-range-picker';
|
|
5
|
+
export * from './tng-date-range-picker.overlay';
|
|
6
|
+
export * from './tng-date-range-picker.parts';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/date-range-picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,8BAA8B,CAAC;AACjF,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { defaultDateRangePickerDateAdapter } from './date-range-picker.adapters';
|
|
2
|
+
export * from './date-range-picker.state';
|
|
3
|
+
export * from './date-range-picker.utils';
|
|
4
|
+
export * from './tng-date-range-picker';
|
|
5
|
+
export * from './tng-date-range-picker.overlay';
|
|
6
|
+
export * from './tng-date-range-picker.parts';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/date-range-picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,8BAA8B,CAAC;AACjF,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC","sourcesContent":["export { defaultDateRangePickerDateAdapter } from './date-range-picker.adapters';\nexport * from './date-range-picker.state';\nexport * from './date-range-picker.utils';\nexport * from './tng-date-range-picker';\nexport * from './tng-date-range-picker.overlay';\nexport * from './tng-date-range-picker.parts';\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { TngDateRangePickerConfig, TngDateRangePickerController } from './date-range-picker.types';
|
|
2
|
+
export declare function createDateRangePickerController<TDate = Date>(config?: Readonly<TngDateRangePickerConfig<TDate>>): TngDateRangePickerController<TDate>;
|
|
3
|
+
export type { TngDateRangeValue, TngDateRangePickerAttributeMap, TngDateRangePickerCloseReason, TngDateRangePickerConfig, TngDateRangePickerController, TngDateRangePickerDirection, TngDateRangePickerEvent, TngDateRangePickerFocusedSection, TngDateRangePickerFocusStrategy, TngDateRangePickerLayout, TngDateRangePickerListener, TngDateRangePickerOutputs, TngDateRangePickerPosition, TngDateRangePickerState, TngDateRangePickerStatePatch, } from './date-range-picker.types';
|
|
4
|
+
export { defaultDateRangePickerDateAdapter } from './date-range-picker.adapters';
|
|
5
|
+
//# sourceMappingURL=tng-date-range-picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tng-date-range-picker.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/date-range-picker/tng-date-range-picker.ts"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EAYV,wBAAwB,EACxB,4BAA4B,EAiB7B,MAAM,2BAA2B,CAAC;AA6hFnC,wBAAgB,+BAA+B,CAAC,KAAK,GAAG,IAAI,EAC1D,MAAM,GAAE,QAAQ,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAM,GACrD,4BAA4B,CAAC,KAAK,CAAC,CAErC;AAED,YAAY,EACV,iBAAiB,EACjB,8BAA8B,EAC9B,6BAA6B,EAC7B,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,uBAAuB,EACvB,gCAAgC,EAChC,+BAA+B,EAC/B,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,iCAAiC,EAAE,MAAM,8BAA8B,CAAC"}
|