@symbiote-native/slider 5.0.3 → 5.1.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.
Files changed (37) hide show
  1. package/build/angular/slider/index.android.js +3 -1
  2. package/build/angular/slider/index.ios.js +3 -1
  3. package/build/angular/slider/shared.d.ts +6 -1
  4. package/build/angular/slider/shared.js +19 -0
  5. package/build/core/slider-props.js +4 -6
  6. package/build/svelte/index.d.ts +3 -0
  7. package/build/svelte/index.js +9 -0
  8. package/build/svelte/slider/index.svelte +274 -0
  9. package/build/svelte/slider/index.svelte.d.ts +5 -0
  10. package/build/svelte/slider/slider-platform.android.d.ts +2 -0
  11. package/build/svelte/slider/slider-platform.android.js +11 -0
  12. package/build/svelte/slider/slider-platform.d.ts +1 -0
  13. package/build/svelte/slider/slider-platform.ios.d.ts +2 -0
  14. package/build/svelte/slider/slider-platform.ios.js +12 -0
  15. package/build/svelte/slider/slider-platform.js +5 -0
  16. package/build/svelte/slider/slider-props.d.ts +7 -0
  17. package/build/svelte/slider/slider-props.js +1 -0
  18. package/build-ngc/angular/slider/index.android.js +6 -4
  19. package/build-ngc/angular/slider/index.android.js.map +1 -1
  20. package/build-ngc/angular/slider/index.ios.js +6 -4
  21. package/build-ngc/angular/slider/index.ios.js.map +1 -1
  22. package/build-ngc/angular/slider/shared.d.ts +6 -1
  23. package/build-ngc/angular/slider/shared.js +22 -3
  24. package/build-ngc/angular/slider/shared.js.map +1 -1
  25. package/build-ngc/core/slider-props.js +4 -6
  26. package/build-ngc/core/slider-props.js.map +1 -1
  27. package/package.json +33 -14
  28. package/src/angular/slider/index.android.ts +3 -1
  29. package/src/angular/slider/index.ios.ts +3 -1
  30. package/src/angular/slider/shared.ts +25 -1
  31. package/src/core/slider-props.ts +12 -16
  32. package/src/svelte/index.ts +12 -0
  33. package/src/svelte/slider/index.svelte +274 -0
  34. package/src/svelte/slider/slider-platform.android.ts +14 -0
  35. package/src/svelte/slider/slider-platform.ios.ts +15 -0
  36. package/src/svelte/slider/slider-platform.ts +5 -0
  37. package/src/svelte/slider/slider-props.ts +14 -0
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/angular/slider/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/angular/slider/shared.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,6 @@
1
- // Slider prop types. Every field of the slider's public surface is framework-agnostic EXCEPT the
2
- // custom `StepMarker`, which is a render component returning a framework element (React FC vs Vue
3
- // slot) — since that element type is framework-specific, it can't live in a shared type, so it
4
- // stays in each adapter's own flavored prop type. ISliderProps here is the shared agnostic base
5
- // every adapter re-exports and extends; ISliderViewProps is the pre-resolved input the render fn
6
- // paints.
1
+ // Slider prop types. ISliderProps is the shared agnostic base every adapter re-exports and
2
+ // extends; ISliderViewProps is the pre-resolved input the render fn paints. The custom
3
+ // `StepMarker` field is per-adapter (a framework element return type can't live here) - see
4
+ // CLAUDE.md's <prop_types_split_agnostic_vs_per_adapter>.
7
5
  export {};
8
6
  //# sourceMappingURL=slider-props.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider-props.js","sourceRoot":"","sources":["../../src/core/slider-props.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,kGAAkG;AAClG,+FAA+F;AAC/F,gGAAgG;AAChG,iGAAiG;AACjG,UAAU"}
1
+ {"version":3,"file":"slider-props.js","sourceRoot":"","sources":["../../src/core/slider-props.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,uFAAuF;AACvF,4FAA4F;AAC5F,0DAA0D"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@symbiote-native/slider",
3
- "version": "5.0.3",
4
- "description": "Third-party native Slider view wrapped for SymbioteNative — one framework-agnostic core, built once and reachable from the React, Vue, and Angular adapters.",
3
+ "version": "5.1.0",
4
+ "description": "Third-party native Slider view wrapped for SymbioteNative — one framework-agnostic core, built once and reachable from the React, Vue, Angular, and Svelte adapters.",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -30,6 +30,10 @@
30
30
  "types": "./build/react/index.d.ts",
31
31
  "default": "./build/react/index.js"
32
32
  },
33
+ "./svelte": {
34
+ "types": "./build/svelte/index.d.ts",
35
+ "default": "./build/svelte/index.js"
36
+ },
33
37
  "./angular": {
34
38
  "types": "./build-ngc/angular/index.d.ts",
35
39
  "react-native": "./build-ngc/angular/index.js",
@@ -65,18 +69,21 @@
65
69
  },
66
70
  "dependencies": {
67
71
  "@react-native-community/slider": "5.2.0",
68
- "@symbiote-native/components": "0.3.0"
72
+ "@symbiote-native/components": "0.4.0"
69
73
  },
70
74
  "peerDependencies": {
75
+ "@symbiote-native/angular": ">=0.6.2",
71
76
  "@symbiote-native/engine": ">=0.1.7",
77
+ "@symbiote-native/react": ">=0.2.8",
78
+ "@symbiote-native/svelte": ">=0.1.0",
79
+ "@symbiote-native/vue": ">=0.3.8",
72
80
  "@angular/core": ">=20",
81
+ "@angular/forms": ">=20",
73
82
  "@vue/runtime-core": "^3.5.13",
74
83
  "react": ">=19.0.0",
75
84
  "react-native": ">=0.86",
76
- "vue": ">=3.5.0",
77
- "@symbiote-native/angular": "0.6.2",
78
- "@symbiote-native/react": "0.2.8",
79
- "@symbiote-native/vue": "0.3.8"
85
+ "svelte": ">=5.56.0",
86
+ "vue": ">=3.5.0"
80
87
  },
81
88
  "peerDependenciesMeta": {
82
89
  "@symbiote-native/angular": {
@@ -85,36 +92,48 @@
85
92
  "@symbiote-native/react": {
86
93
  "optional": true
87
94
  },
95
+ "@symbiote-native/svelte": {
96
+ "optional": true
97
+ },
88
98
  "@symbiote-native/vue": {
89
99
  "optional": true
90
100
  },
91
101
  "@angular/core": {
92
102
  "optional": true
93
103
  },
104
+ "@angular/forms": {
105
+ "optional": true
106
+ },
94
107
  "@vue/runtime-core": {
95
108
  "optional": true
96
109
  },
97
110
  "react": {
98
111
  "optional": true
99
112
  },
113
+ "svelte": {
114
+ "optional": true
115
+ },
100
116
  "vue": {
101
117
  "optional": true
102
118
  }
103
119
  },
104
120
  "devDependencies": {
105
- "@angular/compiler": "^22",
106
- "@angular/compiler-cli": "^22",
107
- "@angular/core": "^22",
121
+ "@angular/compiler": "~22.0.8",
122
+ "@angular/compiler-cli": "~22.0.8",
123
+ "@angular/core": "~22.0.8",
124
+ "@angular/forms": "~22.0.8",
108
125
  "@types/node": "^26.0.0",
109
126
  "@types/react": "^19.2.0",
110
127
  "@vue/runtime-core": "^3.5.13",
111
128
  "react": "19.2.3",
129
+ "svelte": "^5.56.0",
112
130
  "typescript": "~6.0.0",
113
- "@symbiote-native/angular": "0.6.2",
114
- "@symbiote-native/engine": "0.1.7",
115
- "@symbiote-native/react": "0.2.8",
131
+ "@symbiote-native/angular": "0.7.0",
132
+ "@symbiote-native/engine": "0.2.0",
133
+ "@symbiote-native/react": "0.3.0",
134
+ "@symbiote-native/svelte": "0.2.0",
116
135
  "@symbiote-native/test-utils": "0.1.6",
117
- "@symbiote-native/vue": "0.3.8"
136
+ "@symbiote-native/vue": "0.4.0"
118
137
  },
119
138
  "scripts": {
120
139
  "typecheck": "tsc --build",
@@ -1,7 +1,8 @@
1
1
  // Slider on Android: the native view sizes itself (no default height), lays out implicit steps at
2
2
  // 128-point resolution, and keeps the step row at the top. Mirrors the library's Android branches.
3
3
 
4
- import { ChangeDetectionStrategy, Component } from '@angular/core';
4
+ import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';
5
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
5
6
  import { DescriptorOutlet } from '@symbiote-native/angular';
6
7
  import { SliderBase } from './shared';
7
8
  import { SLIDER_STEP_RESOLUTION_ANDROID } from '../../core';
@@ -14,6 +15,7 @@ const ANDROID_STEPS_CONTAINER_TOP = 0;
14
15
  standalone: true,
15
16
  imports: [DescriptorOutlet],
16
17
  changeDetection: ChangeDetectionStrategy.OnPush,
18
+ providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => Slider), multi: true }],
17
19
  template: `<symbiote-descriptor-outlet [node]="descriptor" />`,
18
20
  })
19
21
  export class Slider extends SliderBase {
@@ -2,7 +2,8 @@
2
2
  // default), lays out implicit steps at 1000-point resolution, and nudges the step row down 10pt.
3
3
  // Also the base (./index re-exports it) for headless. Mirrors the library's iOS branches.
4
4
 
5
- import { ChangeDetectionStrategy, Component } from '@angular/core';
5
+ import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';
6
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
7
  import { DescriptorOutlet } from '@symbiote-native/angular';
7
8
  import { SliderBase } from './shared';
8
9
  import { SLIDER_IOS_DEFAULT_HEIGHT, SLIDER_STEP_RESOLUTION_IOS } from '../../core';
@@ -15,6 +16,7 @@ const IOS_STEPS_CONTAINER_TOP = 10;
15
16
  standalone: true,
16
17
  imports: [DescriptorOutlet],
17
18
  changeDetection: ChangeDetectionStrategy.OnPush,
19
+ providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => Slider), multi: true }],
18
20
  template: `<symbiote-descriptor-outlet [node]="descriptor" />`,
19
21
  })
20
22
  export class Slider extends SliderBase {
@@ -33,6 +33,7 @@ import {
33
33
  Output,
34
34
  type OnChanges,
35
35
  } from '@angular/core';
36
+ import type { ControlValueAccessor } from '@angular/forms';
36
37
  import { anchorHostStyle } from '@symbiote-native/angular';
37
38
  import { resolveAccessibilityProps } from '@symbiote-native/components';
38
39
  import type {
@@ -87,7 +88,7 @@ function asStyle(value: unknown): ISliderProps['style'] {
87
88
  }
88
89
 
89
90
  @Directive()
90
- export abstract class SliderBase implements ISliderProps, OnChanges {
91
+ export abstract class SliderBase implements ISliderProps, OnChanges, ControlValueAccessor {
91
92
  @Input() value?: number;
92
93
  @Input() minimumValue?: number;
93
94
  @Input() maximumValue?: number;
@@ -215,6 +216,29 @@ export abstract class SliderBase implements ISliderProps, OnChanges {
215
216
  }
216
217
  };
217
218
 
219
+ // ControlValueAccessor — `value`/`disabled` are plain @Input() fields feeding the `descriptor`
220
+ // getter (re-evaluated on every OnPush check, no fold/commit dance), so writeValue()/
221
+ // setDisabledState() can set them straight, no TextInput-style stale-safe seam needed.
222
+ writeValue(value: number | null): void {
223
+ this.value = value ?? undefined;
224
+ this.changeDetector.markForCheck();
225
+ }
226
+
227
+ registerOnChange(fn: (value: number) => void): void {
228
+ this.valueChange.subscribe(fn);
229
+ }
230
+
231
+ registerOnTouched(fn: () => void): void {
232
+ // Slider has no blur concept (it's a drag control, not a text field) — the thumb release is
233
+ // the closest "the user is done interacting" signal.
234
+ this.slidingComplete.subscribe(() => fn());
235
+ }
236
+
237
+ setDisabledState(isDisabled: boolean): void {
238
+ this.disabled = isDisabled;
239
+ this.changeDetector.markForCheck();
240
+ }
241
+
218
242
  private inputProps(): ISliderProps {
219
243
  return {
220
244
  value: this.value,
@@ -1,9 +1,7 @@
1
- // Slider prop types. Every field of the slider's public surface is framework-agnostic EXCEPT the
2
- // custom `StepMarker`, which is a render component returning a framework element (React FC vs Vue
3
- // slot) — since that element type is framework-specific, it can't live in a shared type, so it
4
- // stays in each adapter's own flavored prop type. ISliderProps here is the shared agnostic base
5
- // every adapter re-exports and extends; ISliderViewProps is the pre-resolved input the render fn
6
- // paints.
1
+ // Slider prop types. ISliderProps is the shared agnostic base every adapter re-exports and
2
+ // extends; ISliderViewProps is the pre-resolved input the render fn paints. The custom
3
+ // `StepMarker` field is per-adapter (a framework element return type can't live here) - see
4
+ // CLAUDE.md's <prop_types_split_agnostic_vs_per_adapter>.
7
5
 
8
6
  import type { IColorValue, IStyleProp, IViewStyle } from '@symbiote-native/engine';
9
7
  import type {
@@ -14,8 +12,7 @@ import type {
14
12
  import type { ISliderAccessibilityState } from './slider-state';
15
13
 
16
14
  // The agnostic public surface, shared by every adapter. Callbacks take a plain number (the
17
- // adapter unwraps nativeEvent.value), colors/images/style are agnostic value types. The custom
18
- // `StepMarker` component is deliberately absent — adapters add it to their own flavored type.
15
+ // adapter unwraps nativeEvent.value); colors/images/style are agnostic value types.
19
16
  export interface ISliderProps extends IAccessibilityProps, IAriaProps {
20
17
  value?: number;
21
18
  minimumValue?: number;
@@ -55,14 +52,13 @@ export type ISliderPlatform = {
55
52
  stepsContainerTop: number;
56
53
  };
57
54
 
58
- // Pre-resolved inputs the native render paints from. Only the fields that need FOLDING are
59
- // explicit here (value sanitized, disabled/accessibilityState resolved, limits defaulted, the
60
- // thumb tint/image resolved against the StepMarker decision); everything that just passes through
61
- // untouched — minimum/maximumTrackTintColor, the track images, thumbSize, tapToSeek, vertical,
62
- // accessibility*/testID/aria-*, AND the native event handlers — rides in `passthrough` and lands
63
- // on the host node verbatim (the engine routes the on*-keyed handlers and runs the ViewConfig
64
- // color processors). `width` is set only when a step overlay needs it, so the common case has no
65
- // width:0 first-paint flash.
55
+ // Pre-resolved inputs the native render paints from. Only fields that need FOLDING are explicit
56
+ // here (value sanitized, disabled/accessibilityState resolved, limits defaulted, thumb
57
+ // tint/image resolved against the StepMarker decision); everything else - track colors/images,
58
+ // thumbSize, tapToSeek, vertical, accessibility*/testID/aria-*, and the native event handlers -
59
+ // rides in `passthrough` verbatim (the engine routes on*-keyed handlers and ViewConfig color
60
+ // processors). `width` is set only when a step overlay needs it, avoiding a width:0 first-paint
61
+ // flash in the common case.
66
62
  export type ISliderViewProps = {
67
63
  value?: number;
68
64
  minimumValue: number;
@@ -0,0 +1,12 @@
1
+ // @symbiote-native/slider/svelte: Svelte wrapper over the @react-native-community/slider native
2
+ // view. Importing this barrel first registers the native view's ViewConfig (../register, a
3
+ // side-effect import of the codegen spec, never the library's React component), then exposes
4
+ // Slider. Mirrors vue/index.ts, except the platform split lives one level down
5
+ // (slider/slider-platform.ts, Metro-filename-selected) - matching this adapter's own
6
+ // Switch/ActivityIndicator convention, since Svelte components are compiled `.svelte` files, not
7
+ // factories like Vue's per-platform `createSlider(platform)`.
8
+
9
+ import '../register';
10
+
11
+ export { default as Slider } from './slider/index.svelte';
12
+ export type { ISliderProps } from './slider/slider-props';
@@ -0,0 +1,274 @@
1
+ <script lang="ts" module>
2
+ // Slider, the Svelte lifecycle half. Logic (value/limit/disabled folds, step-option layout) and
3
+ // the native render live in @symbiote-native/slider core, shared with every adapter; Svelte
4
+ // supplies reactivity (`$state`/`$derived`) and the descriptor bridge for the native
5
+ // `RNCSlider` leaf. The native view carries no symbiote metadata - the engine derives its
6
+ // events/color/image processors from the library's ViewConfig at runtime, registered by the
7
+ // side-effect import in ../index (not here, so this module and its tests stay free of the
8
+ // third-party spec).
9
+ //
10
+ // The leaf is bridged rather than written as `<RNCSlider>` because 'RNCSlider' is neither
11
+ // hyphenated nor lowercase-leading, so Svelte's compiler parses a literal tag as a COMPONENT
12
+ // reference, not an element (confirmed against the compiled output). The descriptor bridge
13
+ // (`native-view-bridge`'s `mountDescriptorChildren`, svelte-adapter-dom-shim skill §19)
14
+ // sidesteps this by calling `document.createElement(child.type)` programmatically, which the
15
+ // compiler never inspects. Imported from `native-view-bridge`, not the package's main barrel -
16
+ // the main barrel pulls in the whole `.svelte` module graph, fatal under vitest's plain
17
+ // svelte-plugin-free transform (this component's own smoke test).
18
+ //
19
+ // The custom-marker overlay's thumb-image cell uses the raw `symbiote-image` host tag rather
20
+ // than the framework's `Image` component: core's `render-steps-indicator.ts` paints the same
21
+ // default-overlay thumb with a bare `el('symbiote-image', {source, style})` Descriptor, and
22
+ // importing another `.svelte` component here would reintroduce the same main-barrel problem
23
+ // one level down.
24
+ import type { ISliderProps } from './slider-props';
25
+
26
+ export type { ISliderProps };
27
+ </script>
28
+
29
+ <script lang="ts">
30
+ import { dlog, type ISymbioteEvent } from '@symbiote-native/engine';
31
+ import {
32
+ mountDescriptorChildren,
33
+ createDescriptorChildrenSync,
34
+ type IDescriptorChildrenMount,
35
+ type ShimElement,
36
+ } from '@symbiote-native/svelte/native-view-bridge';
37
+ import type { IDescriptorChild } from '@symbiote-native/components';
38
+ import {
39
+ sanitizeSliderValue,
40
+ resolveSliderDisabled,
41
+ resolveSliderAccessibilityState,
42
+ resolveSliderLowerLimit,
43
+ resolveSliderUpperLimit,
44
+ valueFromSliderEvent,
45
+ shouldRenderStepsIndicator,
46
+ resolveThumbTintColor,
47
+ shouldPassNativeThumbImage,
48
+ isInvalidLimitConfig,
49
+ computeStepOptions,
50
+ orderStepOptions,
51
+ stepNumberFontSize,
52
+ renderSlider,
53
+ renderSliderNative,
54
+ resolveSliderWrapperStyle,
55
+ resolveStepsContainerStyle,
56
+ renderStepsIndicator,
57
+ STEP_INDICATOR_ELEMENT_STYLE,
58
+ TRACK_MARK_CONTAINER_STYLE,
59
+ THUMB_IMAGE_CONTAINER_STYLE,
60
+ THUMB_IMAGE_STYLE,
61
+ STEP_NUMBER_CONTAINER_STYLE,
62
+ SLIDER_DEFAULT_MINIMUM_VALUE,
63
+ SLIDER_DEFAULT_MAXIMUM_VALUE,
64
+ SLIDER_DEFAULT_STEP,
65
+ SLIDER_ON_CHANGE,
66
+ SLIDER_ON_VALUE_CHANGE,
67
+ SLIDER_ON_SLIDING_START,
68
+ SLIDER_ON_SLIDING_COMPLETE,
69
+ SLIDER_ON_ACCESSIBILITY_ACTION,
70
+ type ISliderViewProps,
71
+ } from '../../core';
72
+ import { PLATFORM } from './slider-platform';
73
+
74
+ function isRecord(value: unknown): value is Record<string, unknown> {
75
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
76
+ }
77
+
78
+ let {
79
+ value = $bindable(),
80
+ minimumValue,
81
+ maximumValue,
82
+ step,
83
+ lowerLimit,
84
+ upperLimit,
85
+ disabled,
86
+ inverted = false,
87
+ thumbTintColor,
88
+ thumbImage,
89
+ accessibilityState,
90
+ renderStepNumber,
91
+ style,
92
+ class: className,
93
+ stepMarker,
94
+ onValueChange,
95
+ onSlidingStart,
96
+ onSlidingComplete,
97
+ onAccessibilityAction,
98
+ ...passthrough
99
+ }: ISliderProps = $props();
100
+
101
+ // Last value native reported, kept only to mark the active step - not the controlled value (the
102
+ // slider is uncontrolled during a drag, unlike Switch: native owns the thumb position). A plain
103
+ // number, not an engine-node reference, so `$state` (not `.raw`) is fine here; only `hostShim*`
104
+ // below needs `.raw`'s no-deep-proxy guarantee for the engine's WeakMap-keyed identity lookups.
105
+ let reportedValue = $state<number | undefined>(undefined);
106
+ // The measured wrapper width the step indicator lays out against; 0 until the first layout.
107
+ let width = $state(0);
108
+
109
+ function handleValueChange(event: ISymbioteEvent): void {
110
+ const next = valueFromSliderEvent(event);
111
+ if (next === undefined) return;
112
+ reportedValue = next;
113
+ // Additive `bind:value` sugar (svelte-adapter-dom-shim skill): reassigning a `$bindable()`
114
+ // prop pushes it to the caller's bound variable, on the same report path as `onValueChange`
115
+ // below (matches the Vue adapter's `emitModelUpdate` timing) - never replacing the
116
+ // `value`/`onValueChange` contract.
117
+ value = next;
118
+ onValueChange?.(next);
119
+ }
120
+ function handleSlidingStart(event: ISymbioteEvent): void {
121
+ const next = valueFromSliderEvent(event);
122
+ if (next !== undefined) onSlidingStart?.(next);
123
+ }
124
+ function handleSlidingComplete(event: ISymbioteEvent): void {
125
+ const next = valueFromSliderEvent(event);
126
+ if (next !== undefined) onSlidingComplete?.(next);
127
+ }
128
+ function handleAccessibilityAction(event: ISymbioteEvent): void {
129
+ onAccessibilityAction?.(event);
130
+ }
131
+ function handleLayout(event: ISymbioteEvent): void {
132
+ const layout = event.nativeEvent.layout;
133
+ if (isRecord(layout) && typeof layout.width === 'number') width = layout.width;
134
+ }
135
+
136
+ const minimum = $derived(minimumValue ?? SLIDER_DEFAULT_MINIMUM_VALUE);
137
+ const maximum = $derived(maximumValue ?? SLIDER_DEFAULT_MAXIMUM_VALUE);
138
+ const resolvedStep = $derived(step ?? SLIDER_DEFAULT_STEP);
139
+ const lower = $derived(resolveSliderLowerLimit(lowerLimit));
140
+ const upper = $derived(resolveSliderUpperLimit(upperLimit));
141
+
142
+ $effect(() => {
143
+ if (isInvalidLimitConfig(lower, upper)) {
144
+ dlog('Slider: lowerLimit must be smaller than upperLimit');
145
+ }
146
+ });
147
+
148
+ const hasStepMarker = $derived(stepMarker !== undefined);
149
+ const hasThumbImage = $derived(thumbImage !== undefined);
150
+ const showSteps = $derived(shouldRenderStepsIndicator(hasStepMarker, renderStepNumber));
151
+
152
+ // The native view gets a thumbImage only when there is one AND no custom marker (which draws
153
+ // its own thumb), matching the library. Passed raw — the engine runs the image processor
154
+ // derived from RNCSlider's ViewConfig (same path as the color tints).
155
+ const nativeThumbImage = $derived(
156
+ shouldPassNativeThumbImage(hasStepMarker, hasThumbImage) ? thumbImage : undefined,
157
+ );
158
+
159
+ const view = $derived<ISliderViewProps>({
160
+ value: sanitizeSliderValue(value),
161
+ minimumValue: minimum,
162
+ maximumValue: maximum,
163
+ step: resolvedStep,
164
+ lowerLimit: lower,
165
+ upperLimit: upper,
166
+ disabled: resolveSliderDisabled(disabled, accessibilityState),
167
+ inverted,
168
+ thumbTintColor: resolveThumbTintColor(thumbTintColor, hasStepMarker, hasThumbImage),
169
+ thumbImage: nativeThumbImage,
170
+ accessibilityState: resolveSliderAccessibilityState(disabled, accessibilityState),
171
+ width,
172
+ style,
173
+ passthrough: {
174
+ ...passthrough,
175
+ [SLIDER_ON_CHANGE]: handleValueChange,
176
+ [SLIDER_ON_VALUE_CHANGE]: handleValueChange,
177
+ [SLIDER_ON_SLIDING_START]: handleSlidingStart,
178
+ [SLIDER_ON_SLIDING_COMPLETE]: handleSlidingComplete,
179
+ [SLIDER_ON_ACCESSIBILITY_ACTION]: handleAccessibilityAction,
180
+ },
181
+ });
182
+
183
+ const options = $derived(computeStepOptions(minimum, maximum, resolvedStep, PLATFORM.stepResolution));
184
+ const currentValue = $derived(reportedValue ?? view.value ?? minimum);
185
+
186
+ // --- No custom marker: renderSlider() is the single source of truth (wrapper + optional
187
+ // default steps overlay + the native leaf), ALL pure Descriptor — mounted via the bridge.
188
+ // Unlike every fixed-shape component elsewhere in this adapter, this Descriptor's own shape
189
+ // genuinely varies with `renderStepNumber` (1 child with no overlay, 2 with one), so the sync
190
+ // below tolerates a child-count change with a clean rebuild instead of assuming constant shape.
191
+ const defaultDescriptor = $derived(
192
+ hasStepMarker
193
+ ? undefined
194
+ : renderSlider(
195
+ view,
196
+ PLATFORM,
197
+ showSteps
198
+ ? {
199
+ steps: renderStepsIndicator({
200
+ options,
201
+ currentValue,
202
+ width,
203
+ renderStepNumber: renderStepNumber === true,
204
+ thumbImage,
205
+ inverted,
206
+ platform: PLATFORM,
207
+ }),
208
+ onLayout: handleLayout,
209
+ }
210
+ : { onLayout: handleLayout },
211
+ ),
212
+ );
213
+
214
+ let hostShimDefault = $state.raw<ShimElement | null>(null);
215
+ let mountedDefault: IDescriptorChildrenMount | undefined;
216
+ let mountedDefaultCount = -1;
217
+
218
+ function syncDefaultChildren(children: IDescriptorChild[]): void {
219
+ if (hostShimDefault === null) return;
220
+ if (mountedDefault === undefined || mountedDefaultCount !== children.length) {
221
+ for (const child of hostShimDefault.children.slice()) hostShimDefault.removeChild(child);
222
+ mountedDefault = mountDescriptorChildren(hostShimDefault, children);
223
+ mountedDefaultCount = children.length;
224
+ } else {
225
+ mountedDefault.update(children);
226
+ }
227
+ }
228
+
229
+ $effect(() => {
230
+ const descriptor = defaultDescriptor;
231
+ if (descriptor === undefined) return;
232
+ syncDefaultChildren(descriptor.children);
233
+ });
234
+
235
+ // --- Custom marker: the overlay is hand-authored live template content below (it hosts the
236
+ // caller's `stepMarker` Snippet, a live child no Descriptor can carry — component-render-fn-
237
+ // boundary rule). Only the native leaf (always exactly one, constant shape) is bridged.
238
+ const fontSize = $derived(stepNumberFontSize(options.length));
239
+ const orderedOptions = $derived(orderStepOptions(options, inverted));
240
+ const minOption = $derived(options[0]);
241
+ const maxOption = $derived(options[options.length - 1]);
242
+ const nativeLeafDescriptor = $derived(renderSliderNative(view, PLATFORM));
243
+ const markerWrapperBag = $derived({
244
+ style: resolveSliderWrapperStyle(style, PLATFORM),
245
+ class: className,
246
+ onLayout: handleLayout,
247
+ });
248
+
249
+ let hostShimMarker = $state.raw<ShimElement | null>(null);
250
+ const syncMarkerLeaf = createDescriptorChildrenSync();
251
+
252
+ $effect(() => {
253
+ if (!hasStepMarker) return;
254
+ syncMarkerLeaf(hostShimMarker, [nativeLeafDescriptor]);
255
+ });
256
+ </script>
257
+
258
+ {#if hasStepMarker}
259
+ <symbiote-view p={markerWrapperBag} bind:this={hostShimMarker}>
260
+ <symbiote-view
261
+ p={{
262
+ pointerEvents: 'none',
263
+ testID: 'StepsIndicator-Container',
264
+ style: resolveStepsContainerStyle(width, PLATFORM),
265
+ }}
266
+ >
267
+ {#each orderedOptions as optionValue, index (optionValue)}
268
+ <symbiote-view p={{ style: STEP_INDICATOR_ELEMENT_STYLE }}><symbiote-view p={{ style: TRACK_MARK_CONTAINER_STYLE }}>{@render stepMarker?.({ stepMarked: optionValue === currentValue, currentValue, index, min: minOption, max: maxOption })}{#if thumbImage !== undefined && optionValue === currentValue}<symbiote-view p={{ style: THUMB_IMAGE_CONTAINER_STYLE, testID: 'sliderTrackMark-thumbImage' }}><symbiote-image p={{ source: thumbImage, style: THUMB_IMAGE_STYLE }} /></symbiote-view>{/if}</symbiote-view>{#if renderStepNumber}<symbiote-view p={{ style: STEP_NUMBER_CONTAINER_STYLE }}><symbiote-text p={{ testID: `${index}th-step`, style: { fontSize } }}>{String(optionValue)}</symbiote-text></symbiote-view>{/if}</symbiote-view>
269
+ {/each}
270
+ </symbiote-view>
271
+ </symbiote-view>
272
+ {:else}
273
+ <symbiote-view p={{ ...defaultDescriptor?.props, class: className }} bind:this={hostShimDefault} />
274
+ {/if}
@@ -0,0 +1,14 @@
1
+ // Slider on Android: the native view sizes itself (no default height), lays out implicit steps
2
+ // at 128-point resolution, and keeps the step row at the top. Mirrors
3
+ // packages/slider/src/vue/slider/index.android.ts exactly, one level down (platform CONSTANT
4
+ // here — see index.svelte's header).
5
+ import { SLIDER_STEP_RESOLUTION_ANDROID } from '../../core';
6
+ import type { ISliderPlatform } from '../../core';
7
+
8
+ const ANDROID_STEPS_CONTAINER_TOP = 0;
9
+
10
+ export const PLATFORM: ISliderPlatform = {
11
+ defaultStyle: {},
12
+ stepResolution: SLIDER_STEP_RESOLUTION_ANDROID,
13
+ stepsContainerTop: ANDROID_STEPS_CONTAINER_TOP,
14
+ };
@@ -0,0 +1,15 @@
1
+ // Slider on iOS: the native view has an intrinsic 40pt height (the wrapper applies it as the
2
+ // default), lays out implicit steps at 1000-point resolution, and nudges the step row down 10pt.
3
+ // Also the base (./slider-platform re-exports it) for headless. Mirrors
4
+ // packages/slider/src/vue/slider/index.ios.ts exactly, one level down (platform CONSTANT here,
5
+ // not a per-platform component — see index.svelte's header).
6
+ import { SLIDER_IOS_DEFAULT_HEIGHT, SLIDER_STEP_RESOLUTION_IOS } from '../../core';
7
+ import type { ISliderPlatform } from '../../core';
8
+
9
+ const IOS_STEPS_CONTAINER_TOP = 10;
10
+
11
+ export const PLATFORM: ISliderPlatform = {
12
+ defaultStyle: { height: SLIDER_IOS_DEFAULT_HEIGHT },
13
+ stepResolution: SLIDER_STEP_RESOLUTION_IOS,
14
+ stepsContainerTop: IOS_STEPS_CONTAINER_TOP,
15
+ };
@@ -0,0 +1,5 @@
1
+ // Base / default: re-exports the iOS build. Metro overrides this with slider-platform.ios.ts /
2
+ // slider-platform.android.ts on a real host; under tsc/vitest the host config resolves here.
3
+ // Filename is the selector, no Platform.OS read — same convention as adapters/svelte's own
4
+ // switch-platform.ts.
5
+ export * from './slider-platform.ios';
@@ -0,0 +1,14 @@
1
+ // `ISliderProps`'s canonical home: reuses the shared @symbiote-native/slider core base verbatim
2
+ // (already framework-agnostic - no children, no ref-as-prop) and adds two Svelte-only fields,
3
+ // per CLAUDE.md's <prop_types_split_agnostic_vs_per_adapter>:
4
+ // - `class`, matching every component in this adapter (View/Text/Switch/…).
5
+ // - `stepMarker`, a Snippet<[IStepMarkerProps]> — the framework-specific render-callback field
6
+ // Vue takes as a `#stepMarker` scoped slot, React as `StepMarker: FC<IStepMarkerProps>`.
7
+ import type { Snippet } from 'svelte';
8
+ import type { IClassNameValue } from '@symbiote-native/engine';
9
+ import type { ISliderProps as ISliderBaseProps, IStepMarkerProps } from '../../core';
10
+
11
+ export type ISliderProps = ISliderBaseProps & {
12
+ class?: IClassNameValue;
13
+ stepMarker?: Snippet<[IStepMarkerProps]>;
14
+ };