react-native-ruler-date-picker 0.1.0 → 0.2.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 +186 -60
- package/lib/commonjs/LensTick.js +83 -0
- package/lib/commonjs/LensTick.js.map +1 -0
- package/lib/commonjs/Ruler.js +38 -0
- package/lib/commonjs/Ruler.js.map +1 -0
- package/lib/commonjs/RulerContext.js +17 -0
- package/lib/commonjs/RulerContext.js.map +1 -0
- package/lib/commonjs/RulerDatePicker.js +38 -351
- package/lib/commonjs/RulerDatePicker.js.map +1 -1
- package/lib/commonjs/RulerDateRangePicker.js +56 -0
- package/lib/commonjs/RulerDateRangePicker.js.map +1 -0
- package/lib/commonjs/RulerHeader.js +106 -0
- package/lib/commonjs/RulerHeader.js.map +1 -0
- package/lib/commonjs/RulerIndicator.js +67 -0
- package/lib/commonjs/RulerIndicator.js.map +1 -0
- package/lib/commonjs/RulerLensTicks.js +55 -0
- package/lib/commonjs/RulerLensTicks.js.map +1 -0
- package/lib/commonjs/RulerLensTrack.js +52 -0
- package/lib/commonjs/RulerLensTrack.js.map +1 -0
- package/lib/commonjs/RulerRange.js +39 -0
- package/lib/commonjs/RulerRange.js.map +1 -0
- package/lib/commonjs/RulerRangeContext.js +17 -0
- package/lib/commonjs/RulerRangeContext.js.map +1 -0
- package/lib/commonjs/RulerRangeHeader.js +154 -0
- package/lib/commonjs/RulerRangeHeader.js.map +1 -0
- package/lib/commonjs/RulerRangeHighlight.js +50 -0
- package/lib/commonjs/RulerRangeHighlight.js.map +1 -0
- package/lib/commonjs/RulerRangeIndicator.js +71 -0
- package/lib/commonjs/RulerRangeIndicator.js.map +1 -0
- package/lib/commonjs/RulerRangeRoot.js +80 -0
- package/lib/commonjs/RulerRangeRoot.js.map +1 -0
- package/lib/commonjs/RulerRangeTicks.js +57 -0
- package/lib/commonjs/RulerRangeTicks.js.map +1 -0
- package/lib/commonjs/RulerRangeTrack.js +46 -0
- package/lib/commonjs/RulerRangeTrack.js.map +1 -0
- package/lib/commonjs/RulerResetButton.js +46 -0
- package/lib/commonjs/RulerResetButton.js.map +1 -0
- package/lib/commonjs/RulerRoot.js +87 -0
- package/lib/commonjs/RulerRoot.js.map +1 -0
- package/lib/commonjs/RulerTicks.js +51 -0
- package/lib/commonjs/RulerTicks.js.map +1 -0
- package/lib/commonjs/RulerTrack.js +46 -0
- package/lib/commonjs/RulerTrack.js.map +1 -0
- package/lib/commonjs/Tick.js +41 -36
- package/lib/commonjs/Tick.js.map +1 -1
- package/lib/commonjs/defaults.js +20 -19
- package/lib/commonjs/defaults.js.map +1 -1
- package/lib/commonjs/index.js +287 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/presets.js +108 -0
- package/lib/commonjs/presets.js.map +1 -0
- package/lib/commonjs/tickResolver.js +101 -0
- package/lib/commonjs/tickResolver.js.map +1 -0
- package/lib/commonjs/useHaptics.js +1 -1
- package/lib/commonjs/useHaptics.web.js +43 -0
- package/lib/commonjs/useHaptics.web.js.map +1 -0
- package/lib/commonjs/useRulerDatePicker.js +264 -0
- package/lib/commonjs/useRulerDatePicker.js.map +1 -0
- package/lib/commonjs/useRulerDateRangePicker.js +313 -0
- package/lib/commonjs/useRulerDateRangePicker.js.map +1 -0
- package/lib/commonjs/utils.js +61 -47
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/LensTick.js +77 -0
- package/lib/module/LensTick.js.map +1 -0
- package/lib/module/Ruler.js +35 -0
- package/lib/module/Ruler.js.map +1 -0
- package/lib/module/RulerContext.js +12 -0
- package/lib/module/RulerContext.js.map +1 -0
- package/lib/module/RulerDatePicker.js +38 -350
- package/lib/module/RulerDatePicker.js.map +1 -1
- package/lib/module/RulerDateRangePicker.js +52 -0
- package/lib/module/RulerDateRangePicker.js.map +1 -0
- package/lib/module/RulerHeader.js +101 -0
- package/lib/module/RulerHeader.js.map +1 -0
- package/lib/module/RulerIndicator.js +62 -0
- package/lib/module/RulerIndicator.js.map +1 -0
- package/lib/module/RulerLensTicks.js +50 -0
- package/lib/module/RulerLensTicks.js.map +1 -0
- package/lib/module/RulerLensTrack.js +47 -0
- package/lib/module/RulerLensTrack.js.map +1 -0
- package/lib/module/RulerRange.js +36 -0
- package/lib/module/RulerRange.js.map +1 -0
- package/lib/module/RulerRangeContext.js +12 -0
- package/lib/module/RulerRangeContext.js.map +1 -0
- package/lib/module/RulerRangeHeader.js +149 -0
- package/lib/module/RulerRangeHeader.js.map +1 -0
- package/lib/module/RulerRangeHighlight.js +45 -0
- package/lib/module/RulerRangeHighlight.js.map +1 -0
- package/lib/module/RulerRangeIndicator.js +66 -0
- package/lib/module/RulerRangeIndicator.js.map +1 -0
- package/lib/module/RulerRangeRoot.js +75 -0
- package/lib/module/RulerRangeRoot.js.map +1 -0
- package/lib/module/RulerRangeTicks.js +51 -0
- package/lib/module/RulerRangeTicks.js.map +1 -0
- package/lib/module/RulerRangeTrack.js +41 -0
- package/lib/module/RulerRangeTrack.js.map +1 -0
- package/lib/module/RulerResetButton.js +41 -0
- package/lib/module/RulerResetButton.js.map +1 -0
- package/lib/module/RulerRoot.js +82 -0
- package/lib/module/RulerRoot.js.map +1 -0
- package/lib/module/RulerTicks.js +45 -0
- package/lib/module/RulerTicks.js.map +1 -0
- package/lib/module/RulerTrack.js +41 -0
- package/lib/module/RulerTrack.js.map +1 -0
- package/lib/module/Tick.js +41 -36
- package/lib/module/Tick.js.map +1 -1
- package/lib/module/defaults.js +19 -18
- package/lib/module/defaults.js.map +1 -1
- package/lib/module/index.js +46 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/presets.js +103 -0
- package/lib/module/presets.js.map +1 -0
- package/lib/module/tickResolver.js +97 -0
- package/lib/module/tickResolver.js.map +1 -0
- package/lib/module/useHaptics.js +1 -1
- package/lib/module/useHaptics.js.map +1 -1
- package/lib/module/useHaptics.web.js +39 -0
- package/lib/module/useHaptics.web.js.map +1 -0
- package/lib/module/useRulerDatePicker.js +260 -0
- package/lib/module/useRulerDatePicker.js.map +1 -0
- package/lib/module/useRulerDateRangePicker.js +310 -0
- package/lib/module/useRulerDateRangePicker.js.map +1 -0
- package/lib/module/utils.js +59 -45
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/LensTick.d.ts +20 -0
- package/lib/typescript/LensTick.d.ts.map +1 -0
- package/lib/typescript/Ruler.d.ts +31 -0
- package/lib/typescript/Ruler.d.ts.map +1 -0
- package/lib/typescript/RulerContext.d.ts +11 -0
- package/lib/typescript/RulerContext.d.ts.map +1 -0
- package/lib/typescript/RulerDatePicker.d.ts +10 -7
- package/lib/typescript/RulerDatePicker.d.ts.map +1 -1
- package/lib/typescript/RulerDateRangePicker.d.ts +26 -0
- package/lib/typescript/RulerDateRangePicker.d.ts.map +1 -0
- package/lib/typescript/RulerHeader.d.ts +14 -0
- package/lib/typescript/RulerHeader.d.ts.map +1 -0
- package/lib/typescript/RulerIndicator.d.ts +17 -0
- package/lib/typescript/RulerIndicator.d.ts.map +1 -0
- package/lib/typescript/RulerLensTicks.d.ts +12 -0
- package/lib/typescript/RulerLensTicks.d.ts.map +1 -0
- package/lib/typescript/RulerLensTrack.d.ts +13 -0
- package/lib/typescript/RulerLensTrack.d.ts.map +1 -0
- package/lib/typescript/RulerRange.d.ts +32 -0
- package/lib/typescript/RulerRange.d.ts.map +1 -0
- package/lib/typescript/RulerRangeContext.d.ts +11 -0
- package/lib/typescript/RulerRangeContext.d.ts.map +1 -0
- package/lib/typescript/RulerRangeHeader.d.ts +12 -0
- package/lib/typescript/RulerRangeHeader.d.ts.map +1 -0
- package/lib/typescript/RulerRangeHighlight.d.ts +8 -0
- package/lib/typescript/RulerRangeHighlight.d.ts.map +1 -0
- package/lib/typescript/RulerRangeIndicator.d.ts +17 -0
- package/lib/typescript/RulerRangeIndicator.d.ts.map +1 -0
- package/lib/typescript/RulerRangeRoot.d.ts +7 -0
- package/lib/typescript/RulerRangeRoot.d.ts.map +1 -0
- package/lib/typescript/RulerRangeTicks.d.ts +14 -0
- package/lib/typescript/RulerRangeTicks.d.ts.map +1 -0
- package/lib/typescript/RulerRangeTrack.d.ts +8 -0
- package/lib/typescript/RulerRangeTrack.d.ts.map +1 -0
- package/lib/typescript/RulerResetButton.d.ts +10 -0
- package/lib/typescript/RulerResetButton.d.ts.map +1 -0
- package/lib/typescript/RulerRoot.d.ts +7 -0
- package/lib/typescript/RulerRoot.d.ts.map +1 -0
- package/lib/typescript/RulerTicks.d.ts +9 -0
- package/lib/typescript/RulerTicks.d.ts.map +1 -0
- package/lib/typescript/RulerTrack.d.ts +8 -0
- package/lib/typescript/RulerTrack.d.ts.map +1 -0
- package/lib/typescript/Tick.d.ts +3 -16
- package/lib/typescript/Tick.d.ts.map +1 -1
- package/lib/typescript/defaults.d.ts +6 -9
- package/lib/typescript/defaults.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +37 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/presets.d.ts +27 -0
- package/lib/typescript/presets.d.ts.map +1 -0
- package/lib/typescript/tickResolver.d.ts +10 -0
- package/lib/typescript/tickResolver.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +302 -85
- package/lib/typescript/types.d.ts.map +1 -1
- package/lib/typescript/useHaptics.web.d.ts +17 -0
- package/lib/typescript/useHaptics.web.d.ts.map +1 -0
- package/lib/typescript/useRulerDatePicker.d.ts +26 -0
- package/lib/typescript/useRulerDatePicker.d.ts.map +1 -0
- package/lib/typescript/useRulerDateRangePicker.d.ts +40 -0
- package/lib/typescript/useRulerDateRangePicker.d.ts.map +1 -0
- package/lib/typescript/utils.d.ts +14 -12
- package/lib/typescript/utils.d.ts.map +1 -1
- package/package.json +25 -7
- package/src/LensTick.tsx +90 -0
- package/src/Ruler.ts +32 -0
- package/src/RulerContext.tsx +20 -0
- package/src/RulerDatePicker.tsx +41 -439
- package/src/RulerDateRangePicker.tsx +53 -0
- package/src/RulerHeader.tsx +125 -0
- package/src/RulerIndicator.tsx +84 -0
- package/src/RulerLensTicks.tsx +50 -0
- package/src/RulerLensTrack.tsx +45 -0
- package/src/RulerRange.ts +33 -0
- package/src/RulerRangeContext.tsx +20 -0
- package/src/RulerRangeHeader.tsx +180 -0
- package/src/RulerRangeHighlight.tsx +47 -0
- package/src/RulerRangeIndicator.tsx +85 -0
- package/src/RulerRangeRoot.tsx +87 -0
- package/src/RulerRangeTicks.tsx +68 -0
- package/src/RulerRangeTrack.tsx +39 -0
- package/src/RulerResetButton.tsx +59 -0
- package/src/RulerRoot.tsx +93 -0
- package/src/RulerTicks.tsx +57 -0
- package/src/RulerTrack.tsx +39 -0
- package/src/Tick.tsx +60 -49
- package/src/defaults.ts +21 -19
- package/src/index.ts +83 -1
- package/src/presets.ts +108 -0
- package/src/tickResolver.ts +123 -0
- package/src/types.ts +354 -102
- package/src/useHaptics.web.ts +55 -0
- package/src/useRulerDatePicker.ts +373 -0
- package/src/useRulerDateRangePicker.ts +468 -0
- package/src/utils.ts +67 -68
- package/lib/commonjs/package.json +0 -1
- package/lib/module/package.json +0 -1
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { RulerDateRangePickerProps } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* A performant, customizable horizontal ruler date range picker for React Native & Expo.
|
|
5
|
+
*
|
|
6
|
+
* @experimental This component is experimental. The API surface, options, and physics
|
|
7
|
+
* mechanics may undergo breaking changes in future minor releases as dual-handle
|
|
8
|
+
* interactions and gestures are refined.
|
|
9
|
+
*
|
|
10
|
+
* Features:
|
|
11
|
+
* - Dual-handle windowed date range selection with connecting highlight strip
|
|
12
|
+
* - Active handle auto-switching (tap near a handle or tap between to focus)
|
|
13
|
+
* - 60 FPS scrolling via Reanimated 3 decay physics & snap alignment
|
|
14
|
+
* - Min/max selectable span in days (`minSpanDays`, `maxSpanDays`)
|
|
15
|
+
* - Automatic Dark/Light mode theme detection
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <RulerDateRangePicker
|
|
20
|
+
* value={{ start: new Date(), end: new Date(Date.now() + 7 * 86400000) }}
|
|
21
|
+
* onChange={({ startDate, endDate }) => console.log(startDate, endDate)}
|
|
22
|
+
* />
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function RulerDateRangePicker(props: RulerDateRangePickerProps): React.JSX.Element;
|
|
26
|
+
//# sourceMappingURL=RulerDateRangePicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerDateRangePicker.d.ts","sourceRoot":"","sources":["../../src/RulerDateRangePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAKzD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,qBAwBpE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle, type TextStyle } from 'react-native';
|
|
3
|
+
export interface RulerHeaderProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
dateStyle?: StyleProp<TextStyle>;
|
|
7
|
+
yearStyle?: StyleProp<TextStyle>;
|
|
8
|
+
showResetToToday?: boolean;
|
|
9
|
+
resetLabel?: string;
|
|
10
|
+
format?: (date: Date) => string;
|
|
11
|
+
render?: (selectedDate: Date, isToday: boolean, resetToToday: () => void) => React.ReactNode;
|
|
12
|
+
}
|
|
13
|
+
export declare function RulerHeader({ children, style, dateStyle, yearStyle, showResetToToday: customShowReset, resetLabel: customResetLabel, format: customFormat, render, }?: RulerHeaderProps): React.JSX.Element;
|
|
14
|
+
//# sourceMappingURL=RulerHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerHeader.d.ts","sourceRoot":"","sources":["../../src/RulerHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA0B,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAItG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;IAChC,MAAM,CAAC,EAAE,CACP,YAAY,EAAE,IAAI,EAClB,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,MAAM,IAAI,KACrB,KAAK,CAAC,SAAS,CAAC;CACtB;AAED,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,KAAK,EACL,SAAS,EACT,SAAS,EACT,gBAAgB,EAAE,eAAe,EACjC,UAAU,EAAE,gBAAgB,EAC5B,MAAM,EAAE,YAAY,EACpB,MAAM,GACP,GAAE,gBAAqB,qBAkEvB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
export interface RulerIndicatorProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
width?: number;
|
|
6
|
+
height?: number;
|
|
7
|
+
color?: string;
|
|
8
|
+
/**
|
|
9
|
+
* Offset [x, y] in pixels of the center needle pointer.
|
|
10
|
+
* Default: [0, 0] (anchored to bottom).
|
|
11
|
+
*/
|
|
12
|
+
offset?: [number, number];
|
|
13
|
+
style?: StyleProp<ViewStyle>;
|
|
14
|
+
render?: () => React.ReactNode;
|
|
15
|
+
}
|
|
16
|
+
export declare function RulerIndicator({ children, width: customWidth, height: customHeight, color: customColor, offset: customOffset, style, render, }?: RulerIndicatorProps): React.JSX.Element;
|
|
17
|
+
//# sourceMappingURL=RulerIndicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerIndicator.d.ts","sourceRoot":"","sources":["../../src/RulerIndicator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIhF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,YAAY,EACpB,KAAK,EACL,MAAM,GACP,GAAE,mBAAwB,qBA+C1B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
import type { LensConfig } from './types';
|
|
4
|
+
export interface RulerLensTicksProps {
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
config?: LensConfig;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Ticks container rendering ticks with dynamic non-linear fisheye lens spacing.
|
|
10
|
+
*/
|
|
11
|
+
export declare function RulerLensTicks({ style, config: propConfig }?: RulerLensTicksProps): React.JSX.Element;
|
|
12
|
+
//# sourceMappingURL=RulerLensTicks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerLensTicks.d.ts","sourceRoot":"","sources":["../../src/RulerLensTicks.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,GAAE,mBAAwB,qBAwBrF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
import type { LensConfig } from './types';
|
|
4
|
+
export interface RulerLensTrackProps {
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
style?: StyleProp<ViewStyle>;
|
|
7
|
+
config?: LensConfig;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Horizontal ruler track with pan gesture detection and non-linear fisheye lens distortion.
|
|
11
|
+
*/
|
|
12
|
+
export declare function RulerLensTrack({ children, style, config }?: RulerLensTrackProps): React.JSX.Element;
|
|
13
|
+
//# sourceMappingURL=RulerLensTrack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerLensTrack.d.ts","sourceRoot":"","sources":["../../src/RulerLensTrack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,GAAE,mBAAwB,qBAiBnF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { RulerRangeRoot } from './RulerRangeRoot';
|
|
2
|
+
import { RulerRangeTrack } from './RulerRangeTrack';
|
|
3
|
+
import { RulerRangeHeader } from './RulerRangeHeader';
|
|
4
|
+
import { RulerRangeIndicator } from './RulerRangeIndicator';
|
|
5
|
+
import { RulerRangeHighlight } from './RulerRangeHighlight';
|
|
6
|
+
import { RulerRangeTicks } from './RulerRangeTicks';
|
|
7
|
+
/**
|
|
8
|
+
* Compound Anatomy API for Date Range Ruler Picker.
|
|
9
|
+
*
|
|
10
|
+
* @experimental This compound API is experimental and subject to breaking changes.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```tsx
|
|
14
|
+
* <RulerRange.Root value={range} onChange={setRange}>
|
|
15
|
+
* <RulerRange.Header />
|
|
16
|
+
* <RulerRange.Track>
|
|
17
|
+
* <RulerRange.Indicator />
|
|
18
|
+
* <RulerRange.Ticks />
|
|
19
|
+
* </RulerRange.Track>
|
|
20
|
+
* </RulerRange.Root>
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare const RulerRange: {
|
|
24
|
+
Root: typeof RulerRangeRoot;
|
|
25
|
+
Track: typeof RulerRangeTrack;
|
|
26
|
+
Indicator: typeof RulerRangeIndicator;
|
|
27
|
+
Header: typeof RulerRangeHeader;
|
|
28
|
+
Highlight: typeof RulerRangeHighlight;
|
|
29
|
+
Ticks: typeof RulerRangeTicks;
|
|
30
|
+
Tick: import("react").NamedExoticComponent<import("./Tick").TickProps>;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=RulerRange.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRange.d.ts","sourceRoot":"","sources":["../../src/RulerRange.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,UAAU;;;;;;;;CAQtB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { UseRulerDateRangePickerReturn } from './useRulerDateRangePicker';
|
|
2
|
+
import type { RangeIndicatorConfig, RangeHeaderConfig, RangeHighlightConfig } from './types';
|
|
3
|
+
export interface RulerRangeContextValue extends UseRulerDateRangePickerReturn {
|
|
4
|
+
indicatorConfig?: RangeIndicatorConfig;
|
|
5
|
+
headerConfig?: RangeHeaderConfig;
|
|
6
|
+
highlightConfig?: RangeHighlightConfig;
|
|
7
|
+
locale?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const RulerRangeContext: import("react").Context<RulerRangeContextValue | null>;
|
|
10
|
+
export declare function useRulerRangeContext(): RulerRangeContextValue;
|
|
11
|
+
//# sourceMappingURL=RulerRangeContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeContext.d.ts","sourceRoot":"","sources":["../../src/RulerRangeContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE7F,MAAM,WAAW,sBAAuB,SAAQ,6BAA6B;IAC3E,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,iBAAiB,wDAAqD,CAAC;AAEpF,wBAAgB,oBAAoB,IAAI,sBAAsB,CAM7D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle, type TextStyle } from 'react-native';
|
|
3
|
+
import type { RangeHeaderContext } from './types';
|
|
4
|
+
export interface RulerRangeHeaderProps {
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
style?: StyleProp<ViewStyle>;
|
|
7
|
+
dateStyle?: StyleProp<TextStyle>;
|
|
8
|
+
format?: (date: Date) => string;
|
|
9
|
+
render?: (context: RangeHeaderContext) => React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
export declare function RulerRangeHeader({ children, style, dateStyle, format: customFormat, render, }?: RulerRangeHeaderProps): React.JSX.Element;
|
|
12
|
+
//# sourceMappingURL=RulerRangeHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeHeader.d.ts","sourceRoot":"","sources":["../../src/RulerRangeHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;IAChC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,KAAK,CAAC,SAAS,CAAC;CAC3D;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,SAAS,EACT,MAAM,EAAE,YAAY,EACpB,MAAM,GACP,GAAE,qBAA0B,qBA6G5B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
export interface RulerRangeHighlightProps {
|
|
4
|
+
style?: StyleProp<ViewStyle>;
|
|
5
|
+
color?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function RulerRangeHighlight({ style, color }?: RulerRangeHighlightProps): React.JSX.Element;
|
|
8
|
+
//# sourceMappingURL=RulerRangeHighlight.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeHighlight.d.ts","sourceRoot":"","sources":["../../src/RulerRangeHighlight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAGhF,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,mBAAmB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAE,wBAA6B,qBA4BlF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
export interface RulerRangeIndicatorProps {
|
|
4
|
+
width?: number;
|
|
5
|
+
height?: number;
|
|
6
|
+
color?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Offset [x, y] in pixels of the range handle needle.
|
|
9
|
+
* Default: [0, 0] (anchored to bottom).
|
|
10
|
+
*/
|
|
11
|
+
offset?: [number, number];
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
style?: StyleProp<ViewStyle>;
|
|
14
|
+
render?: (handle: 'start' | 'end', date: Date) => React.ReactNode;
|
|
15
|
+
}
|
|
16
|
+
export declare function RulerRangeIndicator({ children, width: customWidth, height: customHeight, color: customColor, offset: customOffset, style, render, }?: RulerRangeIndicatorProps): React.JSX.Element;
|
|
17
|
+
//# sourceMappingURL=RulerRangeIndicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeIndicator.d.ts","sourceRoot":"","sources":["../../src/RulerRangeIndicator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIhF,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC;CACnE;AAED,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,YAAY,EACpB,KAAK,EACL,MAAM,GACP,GAAE,wBAA6B,qBAgD/B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { RulerDateRangePickerProps } from './types';
|
|
3
|
+
export interface RulerRangeRootProps extends RulerDateRangePickerProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
}
|
|
6
|
+
export declare function RulerRangeRoot(props: RulerRangeRootProps): React.JSX.Element;
|
|
7
|
+
//# sourceMappingURL=RulerRangeRoot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeRoot.d.ts","sourceRoot":"","sources":["../../src/RulerRangeRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,yBAAyB,EAAwB,MAAM,SAAS,CAAC;AAI/E,MAAM,WAAW,mBAAoB,SAAQ,yBAAyB;IACpE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,qBAkExD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
import type { ResolvedTick } from './types';
|
|
4
|
+
export interface RulerRangeTicksProps {
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
renderTick?: (tick: ResolvedTick, tickSpacing: number, rulerHeight: number) => React.ReactNode;
|
|
7
|
+
showHighlight?: boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Animated ticks container for the date range picker with Reanimated transform
|
|
11
|
+
* and connected highlight span.
|
|
12
|
+
*/
|
|
13
|
+
export declare function RulerRangeTicks({ style, renderTick, showHighlight, }?: RulerRangeTicksProps): React.JSX.Element;
|
|
14
|
+
//# sourceMappingURL=RulerRangeTicks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeTicks.d.ts","sourceRoot":"","sources":["../../src/RulerRangeTicks.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IAC/F,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,UAAU,EACV,aAAoB,GACrB,GAAE,oBAAyB,qBAqC3B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
export interface RulerRangeTrackProps {
|
|
4
|
+
style?: StyleProp<ViewStyle>;
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export declare function RulerRangeTrack({ style, children }?: RulerRangeTrackProps): React.JSX.Element;
|
|
8
|
+
//# sourceMappingURL=RulerRangeTrack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRangeTrack.d.ts","sourceRoot":"","sources":["../../src/RulerRangeTrack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMhF,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAE,oBAAyB,qBAe7E"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle, type TextStyle } from 'react-native';
|
|
3
|
+
export interface RulerResetButtonProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
textStyle?: StyleProp<TextStyle>;
|
|
7
|
+
label?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function RulerResetButton({ children, style, textStyle, label, }?: RulerResetButtonProps): React.JSX.Element;
|
|
10
|
+
//# sourceMappingURL=RulerResetButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerResetButton.d.ts","sourceRoot":"","sources":["../../src/RulerResetButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,SAAS,EACT,KAAe,GAChB,GAAE,qBAA0B,qBAsB5B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { RulerDatePickerProps } from './types';
|
|
3
|
+
export interface RulerRootProps extends RulerDatePickerProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
}
|
|
6
|
+
export declare function RulerRoot(props: RulerRootProps): React.JSX.Element;
|
|
7
|
+
//# sourceMappingURL=RulerRoot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerRoot.d.ts","sourceRoot":"","sources":["../../src/RulerRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,oBAAoB,EAAmB,MAAM,SAAS,CAAC;AAKrE,MAAM,WAAW,cAAe,SAAQ,oBAAoB;IAC1D,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,qBAuE9C"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
import type { ResolvedTick } from './types';
|
|
4
|
+
export interface RulerTicksProps {
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
renderTick?: (tick: ResolvedTick, tickSpacing: number, rulerHeight: number) => React.ReactNode;
|
|
7
|
+
}
|
|
8
|
+
export declare function RulerTicks({ style, renderTick }?: RulerTicksProps): React.JSX.Element;
|
|
9
|
+
//# sourceMappingURL=RulerTicks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerTicks.d.ts","sourceRoot":"","sources":["../../src/RulerTicks.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAI1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;CAChG;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,GAAE,eAAoB,qBAoCrE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
export interface RulerTrackProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
style?: StyleProp<ViewStyle>;
|
|
6
|
+
}
|
|
7
|
+
export declare function RulerTrack({ children, style }?: RulerTrackProps): React.JSX.Element;
|
|
8
|
+
//# sourceMappingURL=RulerTrack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RulerTrack.d.ts","sourceRoot":"","sources":["../../src/RulerTrack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOhF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAE,eAAoB,qBAenE"}
|
package/lib/typescript/Tick.d.ts
CHANGED
|
@@ -1,26 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { ResolvedTick } from './types';
|
|
2
3
|
export interface TickProps {
|
|
3
|
-
|
|
4
|
-
isLabeled: boolean;
|
|
5
|
-
isToday: boolean;
|
|
6
|
-
isHighlighted: boolean;
|
|
7
|
-
dateStr: string;
|
|
4
|
+
tick: ResolvedTick;
|
|
8
5
|
tickSpacing: number;
|
|
9
|
-
tickHeight: number;
|
|
10
|
-
tickTallHeight: number;
|
|
11
|
-
tickThickness: number;
|
|
12
|
-
tickColor: string;
|
|
13
|
-
tickTallColor: string;
|
|
14
|
-
labelColor: string;
|
|
15
|
-
accentColor: string;
|
|
16
|
-
todayDotSize: number;
|
|
17
|
-
labelFontSize: number;
|
|
18
6
|
rulerHeight: number;
|
|
19
7
|
}
|
|
20
8
|
/**
|
|
21
9
|
* Memoized single tick component.
|
|
22
|
-
* Renders a vertical bar with optional label
|
|
23
|
-
* Small and large ticks can be independently colored.
|
|
10
|
+
* Renders a vertical tick bar with optional label, dot indicator, or custom render element.
|
|
24
11
|
*/
|
|
25
12
|
export declare const Tick: React.NamedExoticComponent<TickProps>;
|
|
26
13
|
//# sourceMappingURL=Tick.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tick.d.ts","sourceRoot":"","sources":["../../src/Tick.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Tick.d.ts","sourceRoot":"","sources":["../../src/Tick.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,YAAY,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,uCAqFf,CAAC"}
|
|
@@ -1,24 +1,21 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ResolvedRulerTheme, LensConfig } from './types';
|
|
2
2
|
export declare const MS_PER_DAY = 86400000;
|
|
3
3
|
export declare const DEFAULT_DAY_RANGE = 365;
|
|
4
4
|
export declare const DEFAULTS: {
|
|
5
5
|
readonly tickSpacing: 24;
|
|
6
|
-
readonly
|
|
7
|
-
readonly tickTallHeight: 24;
|
|
8
|
-
readonly tickThickness: 4;
|
|
6
|
+
readonly tickWidth: 3;
|
|
9
7
|
readonly height: 120;
|
|
10
8
|
readonly rulerHeight: 60;
|
|
11
9
|
readonly indicatorWidth: 2;
|
|
12
10
|
readonly indicatorHeight: 40;
|
|
13
11
|
readonly todayDotSize: 6;
|
|
14
|
-
readonly labelFontSize: 10;
|
|
15
12
|
readonly bufferTicks: 10;
|
|
16
|
-
readonly
|
|
13
|
+
readonly debounceMs: 100;
|
|
17
14
|
readonly fastSwipeTickThreshold: 1;
|
|
18
15
|
readonly continuousHapticIntervalMs: 20;
|
|
19
|
-
readonly enableHaptics: true;
|
|
20
16
|
readonly showResetToToday: false;
|
|
21
17
|
};
|
|
22
|
-
export declare const
|
|
23
|
-
export declare const
|
|
18
|
+
export declare const DEFAULT_LENS_CONFIG: Required<LensConfig>;
|
|
19
|
+
export declare const LIGHT_THEME: ResolvedRulerTheme;
|
|
20
|
+
export declare const DARK_THEME: ResolvedRulerTheme;
|
|
24
21
|
//# sourceMappingURL=defaults.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG9D,eAAO,MAAM,UAAU,WAAa,CAAC;AACrC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAGrC,eAAO,MAAM,QAAQ;;;;;;;;;;;;;CAaX,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,UAAU,CAIpD,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,kBAOzB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,kBAOxB,CAAC"}
|
|
@@ -1,3 +1,39 @@
|
|
|
1
1
|
export { RulerDatePicker } from './RulerDatePicker';
|
|
2
|
-
|
|
2
|
+
/** @experimental */
|
|
3
|
+
export { RulerDateRangePicker } from './RulerDateRangePicker';
|
|
4
|
+
export { Ruler } from './Ruler';
|
|
5
|
+
/** @experimental */
|
|
6
|
+
export { RulerRange } from './RulerRange';
|
|
7
|
+
export { Tick } from './Tick';
|
|
8
|
+
export { RulerLensTrack } from './RulerLensTrack';
|
|
9
|
+
export { RulerLensTicks } from './RulerLensTicks';
|
|
10
|
+
export { LensTick } from './LensTick';
|
|
11
|
+
export { RulerRoot, type RulerRootProps } from './RulerRoot';
|
|
12
|
+
export { RulerTrack, type RulerTrackProps } from './RulerTrack';
|
|
13
|
+
export { RulerIndicator, type RulerIndicatorProps } from './RulerIndicator';
|
|
14
|
+
export { RulerTicks, type RulerTicksProps } from './RulerTicks';
|
|
15
|
+
export { RulerHeader, type RulerHeaderProps } from './RulerHeader';
|
|
16
|
+
export { RulerResetButton, type RulerResetButtonProps } from './RulerResetButton';
|
|
17
|
+
export { RulerRangeRoot, type RulerRangeRootProps } from './RulerRangeRoot';
|
|
18
|
+
export { RulerRangeTrack, type RulerRangeTrackProps } from './RulerRangeTrack';
|
|
19
|
+
export { RulerRangeIndicator, type RulerRangeIndicatorProps } from './RulerRangeIndicator';
|
|
20
|
+
export { RulerRangeHeader, type RulerRangeHeaderProps } from './RulerRangeHeader';
|
|
21
|
+
export { RulerRangeHighlight, type RulerRangeHighlightProps } from './RulerRangeHighlight';
|
|
22
|
+
export { RulerRangeTicks, type RulerRangeTicksProps } from './RulerRangeTicks';
|
|
23
|
+
export { useRulerDatePicker, type UseRulerDatePickerReturn } from './useRulerDatePicker';
|
|
24
|
+
/** @experimental */
|
|
25
|
+
export { useRulerDateRangePicker, type UseRulerDateRangePickerReturn } from './useRulerDateRangePicker';
|
|
26
|
+
export { useHaptics } from './useHaptics';
|
|
27
|
+
export { RulerContext, useRulerContext, type RulerContextValue } from './RulerContext';
|
|
28
|
+
/** @experimental */
|
|
29
|
+
export { RulerRangeContext, useRulerRangeContext, type RulerRangeContextValue } from './RulerRangeContext';
|
|
30
|
+
export { DEFAULT_CALENDAR_TICKS, DEFAULT_METRIC_TICKS, DEFAULT_MINIMAL_TICKS, resolveTickRules, } from './presets';
|
|
31
|
+
export { resolveTick, matchesCondition } from './tickResolver';
|
|
32
|
+
export { formatDateString, normalizeDate, dateToDayOffset, dayOffsetToDate, computeDayRange, useResolvedTheme, } from './utils';
|
|
33
|
+
export { DEFAULTS, DEFAULT_LENS_CONFIG, LIGHT_THEME, DARK_THEME, MS_PER_DAY } from './defaults';
|
|
34
|
+
export type { TickContext, TickCondition, TickLabelConfig, TickDotConfig, TickRule, ResolvedTick, RulerTheme, ResolvedRulerTheme, IndicatorConfig, HeaderConfig, RangeHeaderConfig, RangeHeaderContext, RangeHighlightConfig, RangeIndicatorConfig, HapticConfig, RulerDatePickerProps, LensConfig, DateRange, DateRangeChangePayload, RulerDateRangePickerProps, } from './types';
|
|
35
|
+
export type { LensTickProps } from './LensTick';
|
|
36
|
+
export type { RulerLensTrackProps } from './RulerLensTrack';
|
|
37
|
+
export type { RulerLensTicksProps } from './RulerLensTicks';
|
|
38
|
+
export type { TickProps } from './Tick';
|
|
3
39
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { TickRule } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Calendar preset:
|
|
4
|
+
* - 1st of month: tall (30px), bold, month name + day label
|
|
5
|
+
* - Weekly (every 7th day): medium-tall (24px), labeled with day number
|
|
6
|
+
* - Weekends (Saturday & Sunday): medium (18px)
|
|
7
|
+
* - Base daily ticks: short (12px)
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_CALENDAR_TICKS: TickRule[];
|
|
10
|
+
/**
|
|
11
|
+
* Metric preset:
|
|
12
|
+
* - Every 10th day: tall (28px), labeled
|
|
13
|
+
* - Every 5th day: medium (18px)
|
|
14
|
+
* - Daily: short (12px)
|
|
15
|
+
*/
|
|
16
|
+
export declare const DEFAULT_METRIC_TICKS: TickRule[];
|
|
17
|
+
/**
|
|
18
|
+
* Minimal preset:
|
|
19
|
+
* - Weekly (7-day): tall (24px), labeled
|
|
20
|
+
* - Daily: short (12px)
|
|
21
|
+
*/
|
|
22
|
+
export declare const DEFAULT_MINIMAL_TICKS: TickRule[];
|
|
23
|
+
/**
|
|
24
|
+
* Resolves a tick configuration prop (preset string or rule array) into an array of TickRule objects.
|
|
25
|
+
*/
|
|
26
|
+
export declare function resolveTickRules(ticks?: TickRule[] | 'calendar' | 'metric' | 'minimal'): TickRule[];
|
|
27
|
+
//# sourceMappingURL=presets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,EA+B5C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,QAAQ,EAoB1C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,EAc3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,CAAC,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GACrD,QAAQ,EAAE,CAWZ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TickContext, TickCondition, TickRule, ResolvedTick, ResolvedRulerTheme } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Checks whether a given TickCondition matches the provided TickContext.
|
|
4
|
+
*/
|
|
5
|
+
export declare function matchesCondition(condition: TickCondition | undefined, ctx: TickContext): boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Resolves visual attributes for a tick by evaluating the rule array in order (first match wins).
|
|
8
|
+
*/
|
|
9
|
+
export declare function resolveTick(ctx: TickContext, rules: TickRule[], theme: ResolvedRulerTheme, defaultWidth?: number): ResolvedTick;
|
|
10
|
+
//# sourceMappingURL=tickResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tickResolver.d.ts","sourceRoot":"","sources":["../../src/tickResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAGjB;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,aAAa,GAAG,SAAS,EACpC,GAAG,EAAE,WAAW,GACf,OAAO,CA+BT;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,QAAQ,EAAE,EACjB,KAAK,EAAE,kBAAkB,EACzB,YAAY,GAAE,MAAU,GACvB,YAAY,CAkEd"}
|