@alpinejs/docs 3.9.1-revision.1 → 3.9.4-revision.1

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alpinejs/docs",
3
- "version": "3.9.1-revision.1",
3
+ "version": "3.9.4-revision.1",
4
4
  "description": "The documentation for Alpine",
5
5
  "author": "Caleb Porzio",
6
6
  "license": "MIT"
@@ -5,9 +5,7 @@ title: modelable
5
5
 
6
6
  # x-modelable
7
7
 
8
- `x-modelable` allows you to expose any value by name as the target of the `x-model` directive.
9
-
10
- Typically this feature would be used in conjunction with a backend templating framework like Laravel Blade. It's useful for abstracting away Alpine components into backend templates and exposing state to the outside through `x-model` as if it were a native input.
8
+ `x-modelable` allows you to expose any Alpine property as the target of the `x-model` directive.
11
9
 
12
10
  Here's a simple example of using `x-modelable` to expose a variable for binding with `x-model`.
13
11
 
@@ -17,7 +15,7 @@ Here's a simple example of using `x-modelable` to expose a variable for binding
17
15
  <button @click="count++">Increment</button>
18
16
  </div>
19
17
 
20
- Some Number: <span x-text="number"></span>
18
+ Number: <span x-text="number"></span>
21
19
  </div>
22
20
  ```
23
21
 
@@ -35,3 +33,4 @@ Here's a simple example of using `x-modelable` to expose a variable for binding
35
33
 
36
34
  As you can see the outer scope property "number" is now bound to the inner scope property "count".
37
35
 
36
+ Typically this feature would be used in conjunction with a backend templating framework like Laravel Blade. It's useful for abstracting away Alpine components into backend templates and exposing state to the outside through `x-model` as if it were a native input.
@@ -33,7 +33,7 @@ This is by far the simplest way to get started with Alpine. Include the followin
33
33
  Notice the `@3.x.x` in the provided CDN link. This will pull the latest version of Alpine version 3. For stability in production, it's recommended that you hardcode the latest version in the CDN link.
34
34
 
35
35
  ```alpine
36
- <script defer src="https://unpkg.com/alpinejs@3.9.1/dist/cdn.min.js"></script>
36
+ <script defer src="https://unpkg.com/alpinejs@3.9.4/dist/cdn.min.js"></script>
37
37
  ```
38
38
 
39
39
  That's it! Alpine is now available for use inside your page.
@@ -110,7 +110,7 @@ Sometimes it's useful to evaluate an expression only the first time an element e
110
110
  <a name="half"></a>
111
111
  ### .half
112
112
 
113
- Evaluates the expression once the intersection threshold exceeds `0.5`.
113
+ Evaluates the expression once the intersection threshold exceeds `0.5`.
114
114
 
115
115
  Useful for elements where it's important to show at least part of the element.
116
116
 
@@ -121,7 +121,7 @@ Useful for elements where it's important to show at least part of the element.
121
121
  <a name="full"></a>
122
122
  ### .full
123
123
 
124
- Evaluates the expression once the intersection threshold exceeds `0.99`.
124
+ Evaluates the expression once the intersection threshold exceeds `0.99`.
125
125
 
126
126
  Useful for elements where it's important to show the whole element.
127
127
 
@@ -129,6 +129,23 @@ Useful for elements where it's important to show the whole element.
129
129
  <div x-intersect.full="shown = true">...</div> // when `0.99` of the element is in the viewport
130
130
  ```
131
131
 
132
+ <a name="threshold"></a>
133
+ ### .threshold
134
+
135
+ Allows you to control the `threshold` property of the underlying `IntersectionObserver`:
136
+
137
+ This value should be in the range of "0-100". A value of "0" means: trigger an "intersection" if ANY part of the element enters the viewport (the default behavior). While a value of "100" means: don't trigger an "intersection" unless the entire element has entered the viewport.
138
+
139
+ Any value in between is a percentage of those two extremes.
140
+
141
+ For example if you want to trigger an intersection after half of the element has entered the page, you can use `.threshold.50`:
142
+
143
+ ```alpine
144
+ <div x-intersect.threshold.50="shown = true">...</div> // when 50% of the element is in the viewport
145
+ ```
146
+
147
+ If you wanted to trigger only when 5% of the element has entered the viewport, you could use: `.threshold.05`, and so on and so forth.
148
+
132
149
  <a name="margin"></a>
133
150
  ### .margin
134
151