@gjsify/adwaita-core 0.40.0 → 0.41.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/lib/esm/carousel.js +1 -1
- package/lib/esm/conformance/carousel.js +1 -1
- package/lib/esm/conformance/dialog.js +1 -1
- package/lib/esm/conformance/index.js +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/scrolling.js +1 -0
- package/lib/types/carousel.d.ts +43 -0
- package/lib/types/conformance/carousel.d.ts +24 -1
- package/lib/types/conformance/index.d.ts +2 -2
- package/lib/types/index.d.ts +4 -2
- package/lib/types/scrolling.d.ts +70 -0
- package/lib/types/scrolling.spec.d.ts +2 -0
- package/package.json +3 -3
package/lib/esm/carousel.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./_virtual/_rolldown/runtime.js";import{glibClamp as e}from"./glib.js";const t=150,n=.01;function approx(e,t){return Math.abs(e-t)<2**-52}function carouselSnapPoints(e){let t=0;return e.map(e=>{let n=t+e-1;return t+=e,n})}function carouselSizesFromSnapPoints(e){if(e.length===0)return[];let t=[e[0]+1];for(let n=1;n<e.length;n++)t.push(e[n]-e[n-1]);return t}function carouselRange(e,t=0){let n=e.length>0?e[e.length-1]:0;return{lower:0,upper:Math.max(0,t+n)}}function carouselClampPosition(t,n,r=0){let i=carouselRange(n,r);return e(t,i.lower,i.upper)}function carouselClosestSnapPoint(e,t){if(t.length===0)return-1;let n=0;for(let r=1;r<t.length;r++)Math.abs(t[n]-e)>Math.abs(t[r]-e)&&(n=r);return n}function carouselPageAtPosition(e,t){return carouselClosestSnapPoint(carouselClampPosition(e,t),t)}function cRound(e){return Math.sign(e)*Math.round(Math.abs(e))}function carouselNavigateTarget(e,t,n){if(t<=0)return null;let r=cRound(e);return n===`back`?r>0?r-1:null:r<t-1?r+1:null}function carouselWheelStep(e){if(e.source===`touchpad`)return 0;let t=e.source===`mouse`,n=0;return(e.orientation===`vertical`||t)&&(e.deltaY>0?n=1:e.deltaY<0&&(n=-1)),e.orientation===`horizontal`&&n===0&&(e.deltaX>0?n=1:e.deltaX<0&&(n=-1)),n}function carouselReorderShift(e){let{closestPoint:t,oldPoint:n,newPoint:r,size:i}=e;return approx(t,n)?r-n:(approx(n,t)||n>t)&&(approx(t,r)||t>r)?i:(approx(r,t)||r>t)&&(approx(t,n)||t>n)?-i:0}function nthPageDiagnostic(e,t){return`adw_carousel_get_nth_page: assertion 'n < adw_carousel_get_n_pages (self)' failed (n = ${e}, n_pages = ${t})`}function positionDiagnostic(e,t){return`${e}: assertion 'position >= -1' failed (position = ${t})`}function unknownPageDiagnostic(e){return`AdwCarousel: no page with id '${e}'`}function nonFiniteDiagnostic(e,t){return`AdwCarousel: ${e} must be a finite double (got ${t})`}var CarouselState=class{constructor(e={}){this._children=[],this._position=0,this._wheelLockedAt=null,this._settledPage=null,this._listeners=new Set,this._pageChangedListeners=new Set,this._diagnostics=[],this._orientation=e.orientation??`horizontal`,this._interactive=e.interactive??!0,this._allowScrollWheel=e.allowScrollWheel??!0,this._allowLongSwipes=e.allowLongSwipes??!1,this._spacing=e.spacing??0,this._revealDuration=e.revealDuration??0,this._now=e.now??(()=>Date.now()),this._onScrollTo=e.onScrollTo,this._animateScroll=e.animateScroll??!1}subscribe(e){return this._listeners.add(e),()=>{this._listeners.delete(e)}}onPageChanged(e){return this._pageChangedListeners.add(e),()=>{this._pageChangedListeners.delete(e)}}_emit(e,t){let n={position:this._position,nPages:this.nPages,page:this.pageAt(this._position),interactive:t,reason:e};for(let e of[...this._listeners])e(n)}get nPages(){let e=0;for(let t of this._children)t.removing||e++;return e}get ids(){return this._children.filter(e=>!e.removing).map(e=>e.id)}get position(){return this._position}get sizes(){return this._children.map(e=>e.size)}get snapPoints(){return carouselSnapPoints(this.sizes)}get range(){return carouselRange(this.snapPoints)}_visibleSnapPoints(){return this.snapPoints.filter((e,t)=>!this._children[t].removing)}pageAt(e){return carouselPageAtPosition(e,this._visibleSnapPoints())}indexOf(e){let t=0;for(let n of this._children)if(!n.removing){if(n.id===e)return t;t++}return-1}snapPointOf(e){let t=this._nthLink(e);return t<0?void 0:this.snapPoints[t]}_nthLink(e){let t=e;for(let e=0;e<this._children.length;e++)if(!this._children[e].removing&&t--===0)return e;return-1}_closestChildIndex(e,t,n){let r=this.snapPoints,i=[],a=[];this._children.forEach((e,o)=>{e.adding&&!t||e.removing&&!n||(i.push(o),a.push(r[o]))});let o=carouselClosestSnapPoint(e,a);return o<0?-1:i[o]}_updateShiftPositionFlag(e){let t=this._closestChildIndex(this._position,!1,!0);t<0||(this._children[e].shiftPosition=t>=e)}_updateShiftFlags(){this._children.forEach((e,t)=>{(e.adding||e.removing)&&this._updateShiftPositionFlag(t)})}setPosition(e,t=!1){if(!Number.isFinite(e))return this._diagnostics.push(nonFiniteDiagnostic(`position`,e)),!1;let n=carouselClampPosition(e,this.snapPoints),r=n!==this._position;return this._position=n,this._updateShiftFlags(),this._emit(`position`,t),r}scrollTo(e,t={}){let n=this.nPages;if(!Number.isInteger(e)||e<0||e>=n)return this._diagnostics.push(nthPageDiagnostic(e,n)),!1;let r=t.interactive??!1,i=t.animate??this._animateScroll,a=this.snapPointOf(e);return this._onScrollTo?.({index:e,position:a,interactive:r,animate:i}),i||(this.setPosition(a,r),this.settle()),!0}settle(){let e=this.pageAt(this._position);this._settledPage=e;for(let t of[...this._pageChangedListeners])t(e)}settleIfArrived(e=n){let t=this.pageAt(this._position),r=this.snapPointOf(t);return r===void 0||Math.abs(this._position-r)>=e?(this._settledPage=null,!1):this._settledPage===t?!1:(this.settle(),!0)}navigate(e){if(!this._interactive)return!1;let t=carouselNavigateTarget(this._position,this.nPages,e);return t===null?!1:this.scrollTo(t,{interactive:!0})}handleWheel(t){if(!this._allowScrollWheel||this._wheelLockedAt!==null&&this._now()-this._wheelLockedAt<150||!this._interactive)return 0;let n=this.nPages;if(n===0)return 0;let r=carouselWheelStep({...t,orientation:this._orientation});if(r===0)return 0;let i=e(this.pageAt(this._position)+r,0,n-1);return this.scrollTo(i,{interactive:!0}),this._wheelLockedAt=this._now(),r}insertPage(e,t=-1){if(!Number.isInteger(t)||t<-1)return this._diagnostics.push(positionDiagnostic(`adw_carousel_insert`,t)),!1;let n={id:e,size:0,adding:!0,removing:!1,shiftPosition:!1},r=t>=0?this._nthLink(t):-1,i=r<0?this._children.length:r;return this._children.splice(i,0,n),this._updateShiftPositionFlag(i),this._emit(`n-pages`,!1),!0}removePage(e){let t=this._children.findIndex(t=>t.id===e&&!t.removing);if(t<0)return this._diagnostics.push(unknownPageDiagnostic(e)),!1;let n=this._children[t];return n.removing=!0,this._updateShiftPositionFlag(t),n.adding&&this._children.splice(t,1),this._emit(`n-pages`,!1),!0}reorderPage(e,t){if(!Number.isInteger(t)||t<-1)return this._diagnostics.push(positionDiagnostic(`adw_carousel_reorder`,t)),!1;let n=this._children.findIndex(t=>t.id===e);if(n<0)return this._diagnostics.push(unknownPageDiagnostic(e)),!1;if(t===n)return!1;let r=this._closestChildIndex(this._position,!0,!0),i=this.snapPoints,a=r<0?0:i[r],o=i[n],s=this.nPages,c=t<0||t>s?s:t;if(n===s-1&&c===s)return!1;let l;l=c===s?-1:c>n?this._nthLink(c+1):this._nthLink(c);let u;u=l>=0?c>n?i[l-1]:i[l]:i[i.length-1];let[d]=this._children.splice(n,1);l<0?this._children.push(d):this._children.splice(l>n?l-1:l,0,d);let f=carouselReorderShift({closestPoint:a,oldPoint:o,newPoint:u,size:d.size});return f===0?(this._emit(`geometry`,!1),!0):(this._position=carouselClampPosition(this._position+f,this.snapPoints),this._updateShiftFlags(),this._emit(`position`,!1),!0)}setPageSize(e,t){if(!Number.isFinite(t))return this._diagnostics.push(nonFiniteDiagnostic(`size of page '${e}'`,t)),!1;let n=this._children.findIndex(t=>t.id===e);if(n<0)return this._diagnostics.push(unknownPageDiagnostic(e)),!1;let r=this._children[n],i=t-r.size,a=r.shiftPosition&&i!==0;return r.size=t,r.removing&&t<=0?this._children.splice(n,1):r.adding&&t>=1&&(r.adding=!1),a?(this._position=carouselClampPosition(this._position+i,this.snapPoints),this._updateShiftFlags(),this._emit(`position`,!1),!0):(this._emit(`geometry`,!1),!0)}skipReveal(e){let t=this._children.find(t=>t.id===e);return!t||!t.adding&&!t.removing?!1:this.setPageSize(e,+!t.removing)}get orientation(){return this._orientation}setOrientation(e){return e===this._orientation?!1:(this._orientation=e,this._emit(`geometry`,!1),!0)}get interactive(){return this._interactive}setInteractive(e){let t=!!e;return t===this._interactive?!1:(this._interactive=t,!0)}get allowScrollWheel(){return this._allowScrollWheel}setAllowScrollWheel(e){let t=!!e;return t===this._allowScrollWheel?!1:(this._allowScrollWheel=t,!0)}get allowLongSwipes(){return this._allowLongSwipes}setAllowLongSwipes(e){let t=!!e;return t===this._allowLongSwipes?!1:(this._allowLongSwipes=t,!0)}get spacing(){return this._spacing}setSpacing(e){return!Number.isFinite(e)||e<0?(this._diagnostics.push(nonFiniteDiagnostic(`spacing`,e)),!1):e===this._spacing?!1:(this._spacing=e,this._emit(`geometry`,!1),!0)}get revealDuration(){return this._revealDuration}setRevealDuration(e){return!Number.isFinite(e)||e<0?(this._diagnostics.push(nonFiniteDiagnostic(`reveal-duration`,e)),!1):e===this._revealDuration?!1:(this._revealDuration=e,!0)}pageDistance(e){return e+this._spacing}get diagnostics(){return this._diagnostics}};export{t as CAROUSEL_SCROLL_TIMEOUT_MS,n as CAROUSEL_SETTLE_EPSILON,CarouselState,carouselClampPosition,carouselClosestSnapPoint,carouselNavigateTarget,carouselPageAtPosition,carouselRange,carouselReorderShift,carouselSizesFromSnapPoints,carouselSnapPoints,carouselWheelStep};
|
|
1
|
+
import"./_virtual/_rolldown/runtime.js";import{glibClamp as e}from"./glib.js";const t=150,n=.01;function approx(e,t){return Math.abs(e-t)<2**-52}function carouselSnapPoints(e){let t=0;return e.map(e=>{let n=t+e-1;return t+=e,n})}function carouselSizesFromSnapPoints(e){if(e.length===0)return[];let t=[e[0]+1];for(let n=1;n<e.length;n++)t.push(e[n]-e[n-1]);return t}function carouselPageAllocation(t,n){let r=0;for(let i of n){let n=i.expand?t:e(i.natural,i.minimum??0,t);r=Math.max(r,n)}return{pageSize:r,leadingInset:(t-r)/2}}function carouselRange(e,t=0){let n=e.length>0?e[e.length-1]:0;return{lower:0,upper:Math.max(0,t+n)}}function carouselClampPosition(t,n,r=0){let i=carouselRange(n,r);return e(t,i.lower,i.upper)}function carouselClosestSnapPoint(e,t){if(t.length===0)return-1;let n=0;for(let r=1;r<t.length;r++)Math.abs(t[n]-e)>Math.abs(t[r]-e)&&(n=r);return n}function carouselPageAtPosition(e,t){return carouselClosestSnapPoint(carouselClampPosition(e,t),t)}function cRound(e){return Math.sign(e)*Math.round(Math.abs(e))}function carouselNavigateTarget(e,t,n){if(t<=0)return null;let r=cRound(e);return n===`back`?r>0?r-1:null:r<t-1?r+1:null}function carouselWheelStep(e){if(e.source===`touchpad`)return 0;let t=e.source===`mouse`,n=0;return(e.orientation===`vertical`||t)&&(e.deltaY>0?n=1:e.deltaY<0&&(n=-1)),e.orientation===`horizontal`&&n===0&&(e.deltaX>0?n=1:e.deltaX<0&&(n=-1)),n}function carouselReorderShift(e){let{closestPoint:t,oldPoint:n,newPoint:r,size:i}=e;return approx(t,n)?r-n:(approx(n,t)||n>t)&&(approx(t,r)||t>r)?i:(approx(r,t)||r>t)&&(approx(t,n)||t>n)?-i:0}function nthPageDiagnostic(e,t){return`adw_carousel_get_nth_page: assertion 'n < adw_carousel_get_n_pages (self)' failed (n = ${e}, n_pages = ${t})`}function positionDiagnostic(e,t){return`${e}: assertion 'position >= -1' failed (position = ${t})`}function unknownPageDiagnostic(e){return`AdwCarousel: no page with id '${e}'`}function nonFiniteDiagnostic(e,t){return`AdwCarousel: ${e} must be a finite double (got ${t})`}var CarouselState=class{constructor(e={}){this._children=[],this._position=0,this._wheelLockedAt=null,this._settledPage=null,this._listeners=new Set,this._pageChangedListeners=new Set,this._diagnostics=[],this._orientation=e.orientation??`horizontal`,this._interactive=e.interactive??!0,this._allowScrollWheel=e.allowScrollWheel??!0,this._allowLongSwipes=e.allowLongSwipes??!1,this._spacing=e.spacing??0,this._revealDuration=e.revealDuration??0,this._now=e.now??(()=>Date.now()),this._onScrollTo=e.onScrollTo,this._animateScroll=e.animateScroll??!1}subscribe(e){return this._listeners.add(e),()=>{this._listeners.delete(e)}}onPageChanged(e){return this._pageChangedListeners.add(e),()=>{this._pageChangedListeners.delete(e)}}_emit(e,t){let n={position:this._position,nPages:this.nPages,page:this.pageAt(this._position),interactive:t,reason:e};for(let e of[...this._listeners])e(n)}get nPages(){let e=0;for(let t of this._children)t.removing||e++;return e}get ids(){return this._children.filter(e=>!e.removing).map(e=>e.id)}get position(){return this._position}get sizes(){return this._children.map(e=>e.size)}get snapPoints(){return carouselSnapPoints(this.sizes)}get range(){return carouselRange(this.snapPoints)}_visibleSnapPoints(){return this.snapPoints.filter((e,t)=>!this._children[t].removing)}pageAt(e){return carouselPageAtPosition(e,this._visibleSnapPoints())}indexOf(e){let t=0;for(let n of this._children)if(!n.removing){if(n.id===e)return t;t++}return-1}snapPointOf(e){let t=this._nthLink(e);return t<0?void 0:this.snapPoints[t]}_nthLink(e){let t=e;for(let e=0;e<this._children.length;e++)if(!this._children[e].removing&&t--===0)return e;return-1}_closestChildIndex(e,t,n){let r=this.snapPoints,i=[],a=[];this._children.forEach((e,o)=>{e.adding&&!t||e.removing&&!n||(i.push(o),a.push(r[o]))});let o=carouselClosestSnapPoint(e,a);return o<0?-1:i[o]}_updateShiftPositionFlag(e){let t=this._closestChildIndex(this._position,!1,!0);t<0||(this._children[e].shiftPosition=t>=e)}_updateShiftFlags(){this._children.forEach((e,t)=>{(e.adding||e.removing)&&this._updateShiftPositionFlag(t)})}setPosition(e,t=!1){if(!Number.isFinite(e))return this._diagnostics.push(nonFiniteDiagnostic(`position`,e)),!1;let n=carouselClampPosition(e,this.snapPoints),r=n!==this._position;return this._position=n,this._updateShiftFlags(),this._emit(`position`,t),r}scrollTo(e,t={}){let n=this.nPages;if(!Number.isInteger(e)||e<0||e>=n)return this._diagnostics.push(nthPageDiagnostic(e,n)),!1;let r=t.interactive??!1,i=t.animate??this._animateScroll,a=this.snapPointOf(e);return this._onScrollTo?.({index:e,position:a,interactive:r,animate:i}),i||(this.setPosition(a,r),this.settle()),!0}settle(){let e=this.pageAt(this._position);this._settledPage=e;for(let t of[...this._pageChangedListeners])t(e)}settleIfArrived(e=n){let t=this.pageAt(this._position),r=this.snapPointOf(t);return r===void 0||Math.abs(this._position-r)>=e?(this._settledPage=null,!1):this._settledPage===t?!1:(this.settle(),!0)}navigate(e){if(!this._interactive)return!1;let t=carouselNavigateTarget(this._position,this.nPages,e);return t===null?!1:this.scrollTo(t,{interactive:!0})}handleWheel(t){if(!this._allowScrollWheel||this._wheelLockedAt!==null&&this._now()-this._wheelLockedAt<150||!this._interactive)return 0;let n=this.nPages;if(n===0)return 0;let r=carouselWheelStep({...t,orientation:this._orientation});if(r===0)return 0;let i=e(this.pageAt(this._position)+r,0,n-1);return this.scrollTo(i,{interactive:!0}),this._wheelLockedAt=this._now(),r}insertPage(e,t=-1){if(!Number.isInteger(t)||t<-1)return this._diagnostics.push(positionDiagnostic(`adw_carousel_insert`,t)),!1;let n={id:e,size:0,adding:!0,removing:!1,shiftPosition:!1},r=t>=0?this._nthLink(t):-1,i=r<0?this._children.length:r;return this._children.splice(i,0,n),this._updateShiftPositionFlag(i),this._emit(`n-pages`,!1),!0}removePage(e){let t=this._children.findIndex(t=>t.id===e&&!t.removing);if(t<0)return this._diagnostics.push(unknownPageDiagnostic(e)),!1;let n=this._children[t];return n.removing=!0,this._updateShiftPositionFlag(t),n.adding&&this._children.splice(t,1),this._emit(`n-pages`,!1),!0}reorderPage(e,t){if(!Number.isInteger(t)||t<-1)return this._diagnostics.push(positionDiagnostic(`adw_carousel_reorder`,t)),!1;let n=this._children.findIndex(t=>t.id===e);if(n<0)return this._diagnostics.push(unknownPageDiagnostic(e)),!1;if(t===n)return!1;let r=this._closestChildIndex(this._position,!0,!0),i=this.snapPoints,a=r<0?0:i[r],o=i[n],s=this.nPages,c=t<0||t>s?s:t;if(n===s-1&&c===s)return!1;let l;l=c===s?-1:c>n?this._nthLink(c+1):this._nthLink(c);let u;u=l>=0?c>n?i[l-1]:i[l]:i[i.length-1];let[d]=this._children.splice(n,1);l<0?this._children.push(d):this._children.splice(l>n?l-1:l,0,d);let f=carouselReorderShift({closestPoint:a,oldPoint:o,newPoint:u,size:d.size});return f===0?(this._emit(`geometry`,!1),!0):(this._position=carouselClampPosition(this._position+f,this.snapPoints),this._updateShiftFlags(),this._emit(`position`,!1),!0)}setPageSize(e,t){if(!Number.isFinite(t))return this._diagnostics.push(nonFiniteDiagnostic(`size of page '${e}'`,t)),!1;let n=this._children.findIndex(t=>t.id===e);if(n<0)return this._diagnostics.push(unknownPageDiagnostic(e)),!1;let r=this._children[n],i=t-r.size,a=r.shiftPosition&&i!==0;return r.size=t,r.removing&&t<=0?this._children.splice(n,1):r.adding&&t>=1&&(r.adding=!1),a?(this._position=carouselClampPosition(this._position+i,this.snapPoints),this._updateShiftFlags(),this._emit(`position`,!1),!0):(this._emit(`geometry`,!1),!0)}skipReveal(e){let t=this._children.find(t=>t.id===e);return!t||!t.adding&&!t.removing?!1:this.setPageSize(e,+!t.removing)}get orientation(){return this._orientation}setOrientation(e){return e===this._orientation?!1:(this._orientation=e,this._emit(`geometry`,!1),!0)}get interactive(){return this._interactive}setInteractive(e){let t=!!e;return t===this._interactive?!1:(this._interactive=t,!0)}get allowScrollWheel(){return this._allowScrollWheel}setAllowScrollWheel(e){let t=!!e;return t===this._allowScrollWheel?!1:(this._allowScrollWheel=t,!0)}get allowLongSwipes(){return this._allowLongSwipes}setAllowLongSwipes(e){let t=!!e;return t===this._allowLongSwipes?!1:(this._allowLongSwipes=t,!0)}get spacing(){return this._spacing}setSpacing(e){return!Number.isFinite(e)||e<0?(this._diagnostics.push(nonFiniteDiagnostic(`spacing`,e)),!1):e===this._spacing?!1:(this._spacing=e,this._emit(`geometry`,!1),!0)}get revealDuration(){return this._revealDuration}setRevealDuration(e){return!Number.isFinite(e)||e<0?(this._diagnostics.push(nonFiniteDiagnostic(`reveal-duration`,e)),!1):e===this._revealDuration?!1:(this._revealDuration=e,!0)}pageDistance(e){return e+this._spacing}get diagnostics(){return this._diagnostics}};export{t as CAROUSEL_SCROLL_TIMEOUT_MS,n as CAROUSEL_SETTLE_EPSILON,CarouselState,carouselClampPosition,carouselClosestSnapPoint,carouselNavigateTarget,carouselPageAllocation,carouselPageAtPosition,carouselRange,carouselReorderShift,carouselSizesFromSnapPoints,carouselSnapPoints,carouselWheelStep};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=[{sizes:[1,1,1],snapPoints:[0,1,2],rule:`settled pages sit one unit apart, starting at 0`},{sizes:[1],snapPoints:[0],rule:`a single page is always at position 0`},{sizes:[1,.5,1],snapPoints:[0,.5,1.5],rule:`a half-revealed page makes the snap points fractional`},{sizes:[0,1,1],snapPoints:[-1,0,1],rule:`a page inserted at 0 starts at size 0 (:1385), so its snap point is NEGATIVE — which is what keeps the pages behind it in place`},{sizes:[1,1,0],snapPoints:[0,1,1],rule:`a trailing size-0 page shares its predecessor’s snap point`},{sizes:[],snapPoints:[],rule:`no pages, no snap points — the swipeable view pads this to [0] (:1269)`}],t=[{snapPoints:[0,1,2],sizes:[1,1,1],rule:`settled pages round-trip to size 1`},{snapPoints:[0,.5,1.5],sizes:[1,.5,1],rule:`a mid-reveal page is recovered as a fraction`},{snapPoints:[-1,0,1],sizes:[0,1,1],rule:`the +1 offset recovers a just-inserted page as size 0`},{snapPoints:[0],sizes:[1],rule:`an EMPTY carousel still measures as one page (:1269 pads to a single 0)`},{snapPoints:[],sizes:[],rule:`nothing in, nothing out`}],n=[{snapPoints:[0,1,2],positionShift:0,lower:0,upper:2,rule:`the last snap point is the upper bound`},{snapPoints:[],positionShift:0,lower:0,upper:0,rule:`an empty carousel cannot scroll (:212-219)`},{snapPoints:[0],positionShift:0,lower:0,upper:0,rule:`one page cannot scroll either`},{snapPoints:[0,1,2],positionShift:-5,lower:0,upper:0,rule:`MAX(0, …) floors the bound — a large pending shift collapses the range instead of inverting it`},{snapPoints:[-1,0,1],positionShift:0,lower:0,upper:1,rule:`a negative FIRST snap point does not lower the bound; only the last one is read`}],r=[{position:5,snapPoints:[0,1,2],clamped:2,rule:`past the end clamps to the last snap point`},{position:-3,snapPoints:[0,1,2],clamped:0,rule:`below the start clamps to 0`},{position:1.7,snapPoints:[0,1,2],clamped:1.7,rule:`the clamp BOUNDS the scroll, it does not snap — a fractional position passes through`},{position:5,snapPoints:[],clamped:0,rule:`an empty carousel clamps everything to 0`},{position:0,snapPoints:[0,1,2],clamped:0,rule:`an in-range position is untouched`}],i=[{position:0,snapPoints:[0,1,2],page:0,rule:`exactly on a snap point`},{position:2,snapPoints:[0,1,2],page:2,rule:`exactly on the last snap point`},{position:.5,snapPoints:[0,1,2],page:0,rule:`an exact tie resolves to the LOWER page — Math.round would answer 1 here, and both ports did`},{position:.5000001,snapPoints:[0,1,2],page:1,rule:`a hair past the tie flips to the later page`},{position:.4999999,snapPoints:[0,1,2],page:0,rule:`a hair before the tie stays on the earlier page`},{position:1.5,snapPoints:[0,1,2],page:1,rule:`the tie-break is the same at every boundary`},{position:9,snapPoints:[0,1,2],page:2,rule:`the position is clamped into the range BEFORE the search`},{position:-1,snapPoints:[0,1,2],page:0,rule:`clamped from below the same way`},{position:0,snapPoints:[],page:-1,rule:"an empty carousel has no current page — the -1 `page-changed` documents (:1150-1151)"},{position:.5,snapPoints:[-1,0,1],page:1,rule:`mid-insert geometry: the search runs on snap points, not on indices`}],a=[{position:0,nPages:3,direction:`back`,target:null,rule:`already at the first page (:489-494)`},{position:2,nPages:3,direction:`forward`,target:null,rule:`already at the last page (:495-499)`},{position:0,nPages:3,direction:`forward`,target:1,rule:`one page forward`},{position:2,nPages:3,direction:`back`,target:1,rule:`one page back`},{position:.5,nPages:3,direction:`forward`,target:2,rule:`round(0.5) = 1 — half AWAY FROM ZERO, where the page lookup would have answered 0`},{position:.5,nPages:3,direction:`back`,target:0,rule:`the same rounding backwards: 1 − 1`},{position:1.4,nPages:3,direction:`back`,target:0,rule:`round(1.4) = 1, then −1`},{position:1.6,nPages:3,direction:`forward`,target:null,rule:`round(1.6) = 2, already the last page`},{position:0,nPages:0,direction:`forward`,target:null,rule:`an empty carousel never navigates (:482-484)`},{position:0,nPages:1,direction:`forward`,target:null,rule:`a single page is both bounds`}],o=[{deltaX:0,deltaY:53,orientation:`horizontal`,source:`mouse`,step:1,rule:`a mouse wheel pages a HORIZONTAL carousel — mice rarely have a horizontal wheel (:540-542)`},{deltaX:0,deltaY:-53,orientation:`horizontal`,source:`mouse`,step:-1,rule:`the same, backwards`},{deltaX:-30,deltaY:0,orientation:`horizontal`,source:`mouse`,step:-1,rule:`the dx FALLBACK the web port dropped: it returned early on |dy| <= |dx|, so this did nothing`},{deltaX:30,deltaY:-53,orientation:`horizontal`,source:`mouse`,step:-1,rule:`dx is only consulted when the vertical branch produced nothing (:554)`},{deltaX:-30,deltaY:0,orientation:`horizontal`,source:`touchpad`,step:0,rule:`a touchpad always propagates — its kinetic scroll drives the swipe tracker (:537-538)`},{deltaX:0,deltaY:53,orientation:`horizontal`,source:`other`,step:0,rule:`a non-mouse device may only scroll ALONG the carousel’s axis`},{deltaX:53,deltaY:0,orientation:`horizontal`,source:`other`,step:1,rule:`and along the axis it works for any source`},{deltaX:0,deltaY:-10,orientation:`vertical`,source:`other`,step:-1,rule:`a vertical carousel reads dy`},{deltaX:53,deltaY:0,orientation:`vertical`,source:`mouse`,step:0,rule:`a vertical carousel NEVER reads dx — the fallback branch requires GTK_ORIENTATION_HORIZONTAL (:554)`},{deltaX:0,deltaY:0,orientation:`horizontal`,source:`mouse`,step:0,rule:`a null event propagates`}],s=[{pages:3,steps:[{at:1e3,deltaY:53,step:1,position:1},{at:1100,deltaY:53,step:0,position:1},{at:1150,deltaY:53,step:1,position:2}],rule:`a notch 100 ms later propagates; at exactly 150 ms the lockout has expired (g_timeout_add_once fires AT the duration)`},{pages:3,steps:[{at:0,deltaY:30,step:1,position:1},{at:200,deltaY:-30,step:-1,position:0}],rule:`opposite notches page BOTH ways — the accumulator the web port used cancelled them out instead`},{pages:2,steps:[{at:0,deltaY:53,step:1,position:1},{at:500,deltaY:53,step:1,position:1}],rule:`a notch at the last page still consumes the event and still arms the lockout (:561-576, :567)`}],c=[{closestPoint:1,oldPoint:2,newPoint:0,size:1,shift:1,rule:`a page from AFTER the current one moved BEFORE it: one page of content appeared ahead (:1490-1492)`},{closestPoint:1,oldPoint:0,newPoint:2,size:1,shift:-1,rule:`a page from BEFORE moved AFTER: one page of content disappeared ahead (:1493-1495)`},{closestPoint:1,oldPoint:1,newPoint:2,size:1,shift:1,rule:`the CURRENT page is the one moved, so the position follows it (:1488-1489)`},{closestPoint:0,oldPoint:1,newPoint:2,size:1,shift:0,rule:`a move entirely on one side of the position changes nothing`},{closestPoint:1,oldPoint:2,newPoint:0,size:.5,shift:.5,rule:`the shift is the moved page’s SIZE, so a half-revealed page shifts by half`}],l=[{pages:[`a`,`b`,`c`],ops:[],opResults:[],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`three settled pages sit one unit apart and start on page 0`},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`,`c`,`d`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:0,page:0},rule:"append — `adw_carousel_append` is insert at -1 (:1349-1357)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:7}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`,`c`,`d`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:0,page:0},rule:"a position past the end appends — `get_nth_link` returns NULL there (:1388-1391)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:0}],opResults:[!0],pageChanged:[],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:1,page:1},rule:"prepend — `adw_carousel_prepend` is insert at 0 (:1330-1339). The position moves to 1 so the page on screen is still `a`: a page revealed AT OR BEFORE the current one drags the position with it (`shift_position`, :241-258, :293-294)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:-2}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`below -1 fails C’s own precondition (:1381) and adds nothing`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`insert`,id:`d`,position:0}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:3,page:3},rule:"inserting BEFORE the current page moves the position with it, so the same page stays on screen (`shift_position`, :241-258)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:2}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`,`d`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:0,page:0},rule:`inserting AFTER the current page leaves the position alone`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`a`}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`b`,`c`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:1,page:1},rule:"removing a page BEFORE the current one pulls the position back so `c` stays on screen"},{pages:[`a`,`b`,`c`],ops:[{kind:`remove`,id:`c`}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:0,page:0},rule:`removing a page AFTER the current one leaves the position alone`},{pages:[`a`,`b`,`c`],ops:[{kind:`remove`,id:`zz`}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`removing a page that is not there changes nothing`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`reorder`,id:`c`,position:0}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`c`,`a`,`b`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:2},rule:"a page from after the current one moved before it shifts the position +size, so `b` is still shown (:1490-1492)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`reorder`,id:`a`,position:2}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`b`,`c`,`a`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:"a page from before the current one moved after it shifts −size, so `b` is still shown (:1493-1495)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`reorder`,id:`b`,position:2}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`a`,`c`,`b`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:2},rule:`moving the CURRENT page carries the position along with it (:1488-1489)`},{pages:[`a`,`b`,`c`],ops:[{kind:`reorder`,id:`a`,position:0}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`reordering a page to where it already is returns before doing anything (:1439-1440)`},{pages:[`a`,`b`,`c`],ops:[{kind:`reorder`,id:`c`,position:-1}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`moving the LAST page to the end is the second early-out, checked after normalisation (:1448-1449)`},{pages:[`a`,`b`,`c`],ops:[{kind:`scrollTo`,index:2}],opResults:[!0],pageChanged:[2],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:2},rule:"a completed scroll emits `page-changed` (:363-376)"},{pages:[`a`,`b`,`c`],ops:[{kind:`scrollTo`,index:1},{kind:`scrollTo`,index:1}],opResults:[!0,!0],pageChanged:[1,1],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:1,page:1},rule:`settling back onto the SAME page emits again — the web port’s index-change gate swallowed this`},{pages:[`a`,`b`,`c`],ops:[{kind:`scrollTo`,index:99},{kind:`scrollTo`,index:-1},{kind:`scrollTo`,index:1.5},{kind:`scrollTo`,index:NaN}],opResults:[!1,!1,!1,!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:"out-of-range, fractional and NaN targets are REFUSED, not clamped — `get_nth_page` fails its precondition and `scroll_to` returns on the NULL widget (:1616, :385-386). NaN used to set the NS position to NaN"},{pages:[],ops:[{kind:`settle`}],opResults:[!0],pageChanged:[-1],expected:{ids:[],nPages:0,sizes:[],snapPoints:[],position:0,page:-1},rule:`an empty carousel reports index -1, the case the signal documents (:1150-1151) and neither port could produce`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:.5},{kind:`settle`}],opResults:[!0,!0],pageChanged:[0],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:.5,page:0},rule:`settling half-way reports the LOWER page; both ports reported 1`}],u=[{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:0}],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[0,1,1,1],snapPoints:[-1,0,1,2],position:0,page:1},rule:"immediately after the insert the page has size 0 and a NEGATIVE snap point, and the carousel still shows `a` (:1385-1386, :782)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`insert`,id:`d`,position:0},{kind:`size`,id:`d`,size:.5}],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[.5,1,1,1],snapPoints:[-.5,.5,1.5,2.5],position:1.5,page:2},rule:"half-way through the reveal the position has moved half a page, so `b` has not slid sideways (`resize_animation_value_cb`, :284-297)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`insert`,id:`d`,position:0},{kind:`reveal`,id:`d`}],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:2,page:2},rule:"once revealed the shift has moved a full page and `b` is still the current one"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`b`}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:1},rule:`a removed page leaves n-pages at once (:1522, :1640-1645) but keeps its geometry, so the pages after it have not moved yet`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`b`},{kind:`size`,id:`b`,size:.5}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,.5,1],snapPoints:[0,.5,1.5],position:1.5,page:1},rule:"while it shrinks the position follows, keeping `c` on screen"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`b`},{kind:`reveal`,id:`b`}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:1,page:1},rule:"reaching size 0 drops the entry from the geometry entirely (`resize_animation_done_cb`, :309-313)"},{pages:[`a`,`b`],ops:[{kind:`insert`,id:`c`},{kind:`remove`,id:`c`}],expected:{ids:[`a`,`b`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:0,page:0},rule:`removing a page that is still revealing frees it on the spot — the skip finishes the animation, which runs the done handler (:329-337 → :309-313)`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`remove`,id:`b`},{kind:`reveal`,id:`b`}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:0,page:0},rule:"removing the CURRENT page shifts too — `update_shift_position_flag` counts removing children on purpose (:248-249)"}],d=[{property:`orientation`,value:`horizontal`,rule:`adw_carousel_init (:1205)`},{property:`interactive`,value:!0,rule:`AdwCarousel:interactive defaults TRUE (:1051-1054)`},{property:`allowScrollWheel`,value:!0,rule:`AdwCarousel:allow-scroll-wheel defaults TRUE (:1103-1106, :1201) — the web port defaulted it FALSE`},{property:`allowLongSwipes`,value:!1,rule:`AdwCarousel:allow-long-swipes defaults FALSE (:1115-1118) — one flick, one page`},{property:`spacing`,value:0,rule:`AdwCarousel:spacing defaults 0 (:1061-1066)`},{property:`revealDuration`,value:0,rule:`AdwCarousel:reveal-duration defaults 0 (:1127-1132, :1206)`}];export{r as CAROUSEL_CLAMP_VECTORS,a as CAROUSEL_NAVIGATE_VECTORS,i as CAROUSEL_PAGE_AT_POSITION_VECTORS,l as CAROUSEL_PAGE_LIST_VECTORS,d as CAROUSEL_PROPERTY_DEFAULT_VECTORS,n as CAROUSEL_RANGE_VECTORS,c as CAROUSEL_REORDER_SHIFT_VECTORS,u as CAROUSEL_REVEAL_VECTORS,t as CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS,e as CAROUSEL_SNAP_POINT_VECTORS,s as CAROUSEL_WHEEL_LOCKOUT_VECTORS,o as CAROUSEL_WHEEL_VECTORS};
|
|
1
|
+
const e=[{sizes:[1,1,1],snapPoints:[0,1,2],rule:`settled pages sit one unit apart, starting at 0`},{sizes:[1],snapPoints:[0],rule:`a single page is always at position 0`},{sizes:[1,.5,1],snapPoints:[0,.5,1.5],rule:`a half-revealed page makes the snap points fractional`},{sizes:[0,1,1],snapPoints:[-1,0,1],rule:`a page inserted at 0 starts at size 0 (:1385), so its snap point is NEGATIVE — which is what keeps the pages behind it in place`},{sizes:[1,1,0],snapPoints:[0,1,1],rule:`a trailing size-0 page shares its predecessor’s snap point`},{sizes:[],snapPoints:[],rule:`no pages, no snap points — the swipeable view pads this to [0] (:1269)`}],t=[{snapPoints:[0,1,2],sizes:[1,1,1],rule:`settled pages round-trip to size 1`},{snapPoints:[0,.5,1.5],sizes:[1,.5,1],rule:`a mid-reveal page is recovered as a fraction`},{snapPoints:[-1,0,1],sizes:[0,1,1],rule:`the +1 offset recovers a just-inserted page as size 0`},{snapPoints:[0],sizes:[1],rule:`an EMPTY carousel still measures as one page (:1269 pads to a single 0)`},{snapPoints:[],sizes:[],rule:`nothing in, nothing out`}],n=[{available:480,pages:[{natural:440},{natural:440},{natural:440}],pageSize:440,leadingInset:20,rule:`a page narrower than the carousel keeps its natural size, and the 40px left over is split so BOTH neighbours peek in by 20px`},{available:480,pages:[{natural:200},{natural:440},{natural:300}],pageSize:440,leadingInset:20,rule:`every page is allocated the SAME size, the largest of them (:764)`},{available:480,pages:[{natural:900}],pageSize:480,leadingInset:0,rule:`a page wider than the carousel is capped at it (:754), the only case in which a page IS the carousel width`},{available:480,pages:[{natural:200,expand:!0},{natural:200}],pageSize:480,leadingInset:0,rule:`an expanding page takes the whole carousel (:751-752), and one expanding page sizes them all`},{available:480,pages:[{natural:450,minimum:600}],pageSize:600,leadingInset:-60,rule:`CLAMP tests the HIGH bound first, so a page whose MINIMUM exceeds the carousel gets its minimum and the strip overhangs both edges`},{available:0,pages:[{natural:440}],pageSize:0,leadingInset:0,rule:`a carousel with no width allocates no page, which is why a renderer must wait for its first layout before measuring anything`},{available:480,pages:[],pageSize:0,leadingInset:240,rule:"no pages, no size: `size` starts at 0 (:738) with nothing to MAX it against"}],r=[{snapPoints:[0,1,2],positionShift:0,lower:0,upper:2,rule:`the last snap point is the upper bound`},{snapPoints:[],positionShift:0,lower:0,upper:0,rule:`an empty carousel cannot scroll (:212-219)`},{snapPoints:[0],positionShift:0,lower:0,upper:0,rule:`one page cannot scroll either`},{snapPoints:[0,1,2],positionShift:-5,lower:0,upper:0,rule:`MAX(0, …) floors the bound — a large pending shift collapses the range instead of inverting it`},{snapPoints:[-1,0,1],positionShift:0,lower:0,upper:1,rule:`a negative FIRST snap point does not lower the bound; only the last one is read`}],i=[{position:5,snapPoints:[0,1,2],clamped:2,rule:`past the end clamps to the last snap point`},{position:-3,snapPoints:[0,1,2],clamped:0,rule:`below the start clamps to 0`},{position:1.7,snapPoints:[0,1,2],clamped:1.7,rule:`the clamp BOUNDS the scroll, it does not snap — a fractional position passes through`},{position:5,snapPoints:[],clamped:0,rule:`an empty carousel clamps everything to 0`},{position:0,snapPoints:[0,1,2],clamped:0,rule:`an in-range position is untouched`}],a=[{position:0,snapPoints:[0,1,2],page:0,rule:`exactly on a snap point`},{position:2,snapPoints:[0,1,2],page:2,rule:`exactly on the last snap point`},{position:.5,snapPoints:[0,1,2],page:0,rule:`an exact tie resolves to the LOWER page — Math.round would answer 1 here, and both ports did`},{position:.5000001,snapPoints:[0,1,2],page:1,rule:`a hair past the tie flips to the later page`},{position:.4999999,snapPoints:[0,1,2],page:0,rule:`a hair before the tie stays on the earlier page`},{position:1.5,snapPoints:[0,1,2],page:1,rule:`the tie-break is the same at every boundary`},{position:9,snapPoints:[0,1,2],page:2,rule:`the position is clamped into the range BEFORE the search`},{position:-1,snapPoints:[0,1,2],page:0,rule:`clamped from below the same way`},{position:0,snapPoints:[],page:-1,rule:"an empty carousel has no current page — the -1 `page-changed` documents (:1150-1151)"},{position:.5,snapPoints:[-1,0,1],page:1,rule:`mid-insert geometry: the search runs on snap points, not on indices`}],o=[{position:0,nPages:3,direction:`back`,target:null,rule:`already at the first page (:489-494)`},{position:2,nPages:3,direction:`forward`,target:null,rule:`already at the last page (:495-499)`},{position:0,nPages:3,direction:`forward`,target:1,rule:`one page forward`},{position:2,nPages:3,direction:`back`,target:1,rule:`one page back`},{position:.5,nPages:3,direction:`forward`,target:2,rule:`round(0.5) = 1 — half AWAY FROM ZERO, where the page lookup would have answered 0`},{position:.5,nPages:3,direction:`back`,target:0,rule:`the same rounding backwards: 1 − 1`},{position:1.4,nPages:3,direction:`back`,target:0,rule:`round(1.4) = 1, then −1`},{position:1.6,nPages:3,direction:`forward`,target:null,rule:`round(1.6) = 2, already the last page`},{position:0,nPages:0,direction:`forward`,target:null,rule:`an empty carousel never navigates (:482-484)`},{position:0,nPages:1,direction:`forward`,target:null,rule:`a single page is both bounds`}],s=[{deltaX:0,deltaY:53,orientation:`horizontal`,source:`mouse`,step:1,rule:`a mouse wheel pages a HORIZONTAL carousel — mice rarely have a horizontal wheel (:540-542)`},{deltaX:0,deltaY:-53,orientation:`horizontal`,source:`mouse`,step:-1,rule:`the same, backwards`},{deltaX:-30,deltaY:0,orientation:`horizontal`,source:`mouse`,step:-1,rule:`the dx FALLBACK the web port dropped: it returned early on |dy| <= |dx|, so this did nothing`},{deltaX:30,deltaY:-53,orientation:`horizontal`,source:`mouse`,step:-1,rule:`dx is only consulted when the vertical branch produced nothing (:554)`},{deltaX:-30,deltaY:0,orientation:`horizontal`,source:`touchpad`,step:0,rule:`a touchpad always propagates — its kinetic scroll drives the swipe tracker (:537-538)`},{deltaX:0,deltaY:53,orientation:`horizontal`,source:`other`,step:0,rule:`a non-mouse device may only scroll ALONG the carousel’s axis`},{deltaX:53,deltaY:0,orientation:`horizontal`,source:`other`,step:1,rule:`and along the axis it works for any source`},{deltaX:0,deltaY:-10,orientation:`vertical`,source:`other`,step:-1,rule:`a vertical carousel reads dy`},{deltaX:53,deltaY:0,orientation:`vertical`,source:`mouse`,step:0,rule:`a vertical carousel NEVER reads dx — the fallback branch requires GTK_ORIENTATION_HORIZONTAL (:554)`},{deltaX:0,deltaY:0,orientation:`horizontal`,source:`mouse`,step:0,rule:`a null event propagates`}],c=[{pages:3,steps:[{at:1e3,deltaY:53,step:1,position:1},{at:1100,deltaY:53,step:0,position:1},{at:1150,deltaY:53,step:1,position:2}],rule:`a notch 100 ms later propagates; at exactly 150 ms the lockout has expired (g_timeout_add_once fires AT the duration)`},{pages:3,steps:[{at:0,deltaY:30,step:1,position:1},{at:200,deltaY:-30,step:-1,position:0}],rule:`opposite notches page BOTH ways — the accumulator the web port used cancelled them out instead`},{pages:2,steps:[{at:0,deltaY:53,step:1,position:1},{at:500,deltaY:53,step:1,position:1}],rule:`a notch at the last page still consumes the event and still arms the lockout (:561-576, :567)`}],l=[{closestPoint:1,oldPoint:2,newPoint:0,size:1,shift:1,rule:`a page from AFTER the current one moved BEFORE it: one page of content appeared ahead (:1490-1492)`},{closestPoint:1,oldPoint:0,newPoint:2,size:1,shift:-1,rule:`a page from BEFORE moved AFTER: one page of content disappeared ahead (:1493-1495)`},{closestPoint:1,oldPoint:1,newPoint:2,size:1,shift:1,rule:`the CURRENT page is the one moved, so the position follows it (:1488-1489)`},{closestPoint:0,oldPoint:1,newPoint:2,size:1,shift:0,rule:`a move entirely on one side of the position changes nothing`},{closestPoint:1,oldPoint:2,newPoint:0,size:.5,shift:.5,rule:`the shift is the moved page’s SIZE, so a half-revealed page shifts by half`}],u=[{pages:[`a`,`b`,`c`],ops:[],opResults:[],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`three settled pages sit one unit apart and start on page 0`},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`,`c`,`d`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:0,page:0},rule:"append — `adw_carousel_append` is insert at -1 (:1349-1357)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:7}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`,`c`,`d`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:0,page:0},rule:"a position past the end appends — `get_nth_link` returns NULL there (:1388-1391)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:0}],opResults:[!0],pageChanged:[],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:1,page:1},rule:"prepend — `adw_carousel_prepend` is insert at 0 (:1330-1339). The position moves to 1 so the page on screen is still `a`: a page revealed AT OR BEFORE the current one drags the position with it (`shift_position`, :241-258, :293-294)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:-2}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`below -1 fails C’s own precondition (:1381) and adds nothing`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`insert`,id:`d`,position:0}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:3,page:3},rule:"inserting BEFORE the current page moves the position with it, so the same page stays on screen (`shift_position`, :241-258)"},{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:2}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`,`d`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:0,page:0},rule:`inserting AFTER the current page leaves the position alone`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`a`}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`b`,`c`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:1,page:1},rule:"removing a page BEFORE the current one pulls the position back so `c` stays on screen"},{pages:[`a`,`b`,`c`],ops:[{kind:`remove`,id:`c`}],opResults:[!0],pageChanged:[],expected:{ids:[`a`,`b`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:0,page:0},rule:`removing a page AFTER the current one leaves the position alone`},{pages:[`a`,`b`,`c`],ops:[{kind:`remove`,id:`zz`}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`removing a page that is not there changes nothing`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`reorder`,id:`c`,position:0}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`c`,`a`,`b`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:2},rule:"a page from after the current one moved before it shifts the position +size, so `b` is still shown (:1490-1492)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`reorder`,id:`a`,position:2}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`b`,`c`,`a`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:"a page from before the current one moved after it shifts −size, so `b` is still shown (:1493-1495)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`reorder`,id:`b`,position:2}],opResults:[!0,!0],pageChanged:[],expected:{ids:[`a`,`c`,`b`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:2},rule:`moving the CURRENT page carries the position along with it (:1488-1489)`},{pages:[`a`,`b`,`c`],ops:[{kind:`reorder`,id:`a`,position:0}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`reordering a page to where it already is returns before doing anything (:1439-1440)`},{pages:[`a`,`b`,`c`],ops:[{kind:`reorder`,id:`c`,position:-1}],opResults:[!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:`moving the LAST page to the end is the second early-out, checked after normalisation (:1448-1449)`},{pages:[`a`,`b`,`c`],ops:[{kind:`scrollTo`,index:2}],opResults:[!0],pageChanged:[2],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:2},rule:"a completed scroll emits `page-changed` (:363-376)"},{pages:[`a`,`b`,`c`],ops:[{kind:`scrollTo`,index:1},{kind:`scrollTo`,index:1}],opResults:[!0,!0],pageChanged:[1,1],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:1,page:1},rule:`settling back onto the SAME page emits again — the web port’s index-change gate swallowed this`},{pages:[`a`,`b`,`c`],ops:[{kind:`scrollTo`,index:99},{kind:`scrollTo`,index:-1},{kind:`scrollTo`,index:1.5},{kind:`scrollTo`,index:NaN}],opResults:[!1,!1,!1,!1],pageChanged:[],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:0,page:0},rule:"out-of-range, fractional and NaN targets are REFUSED, not clamped — `get_nth_page` fails its precondition and `scroll_to` returns on the NULL widget (:1616, :385-386). NaN used to set the NS position to NaN"},{pages:[],ops:[{kind:`settle`}],opResults:[!0],pageChanged:[-1],expected:{ids:[],nPages:0,sizes:[],snapPoints:[],position:0,page:-1},rule:`an empty carousel reports index -1, the case the signal documents (:1150-1151) and neither port could produce`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:.5},{kind:`settle`}],opResults:[!0,!0],pageChanged:[0],expected:{ids:[`a`,`b`,`c`],nPages:3,sizes:[1,1,1],snapPoints:[0,1,2],position:.5,page:0},rule:`settling half-way reports the LOWER page; both ports reported 1`}],d=[{pages:[`a`,`b`,`c`],ops:[{kind:`insert`,id:`d`,position:0}],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[0,1,1,1],snapPoints:[-1,0,1,2],position:0,page:1},rule:"immediately after the insert the page has size 0 and a NEGATIVE snap point, and the carousel still shows `a` (:1385-1386, :782)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`insert`,id:`d`,position:0},{kind:`size`,id:`d`,size:.5}],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[.5,1,1,1],snapPoints:[-.5,.5,1.5,2.5],position:1.5,page:2},rule:"half-way through the reveal the position has moved half a page, so `b` has not slid sideways (`resize_animation_value_cb`, :284-297)"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`insert`,id:`d`,position:0},{kind:`reveal`,id:`d`}],expected:{ids:[`d`,`a`,`b`,`c`],nPages:4,sizes:[1,1,1,1],snapPoints:[0,1,2,3],position:2,page:2},rule:"once revealed the shift has moved a full page and `b` is still the current one"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`b`}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,1,1],snapPoints:[0,1,2],position:2,page:1},rule:`a removed page leaves n-pages at once (:1522, :1640-1645) but keeps its geometry, so the pages after it have not moved yet`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`b`},{kind:`size`,id:`b`,size:.5}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,.5,1],snapPoints:[0,.5,1.5],position:1.5,page:1},rule:"while it shrinks the position follows, keeping `c` on screen"},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:2},{kind:`remove`,id:`b`},{kind:`reveal`,id:`b`}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:1,page:1},rule:"reaching size 0 drops the entry from the geometry entirely (`resize_animation_done_cb`, :309-313)"},{pages:[`a`,`b`],ops:[{kind:`insert`,id:`c`},{kind:`remove`,id:`c`}],expected:{ids:[`a`,`b`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:0,page:0},rule:`removing a page that is still revealing frees it on the spot — the skip finishes the animation, which runs the done handler (:329-337 → :309-313)`},{pages:[`a`,`b`,`c`],ops:[{kind:`setPosition`,position:1},{kind:`remove`,id:`b`},{kind:`reveal`,id:`b`}],expected:{ids:[`a`,`c`],nPages:2,sizes:[1,1],snapPoints:[0,1],position:0,page:0},rule:"removing the CURRENT page shifts too — `update_shift_position_flag` counts removing children on purpose (:248-249)"}],f=[{property:`orientation`,value:`horizontal`,rule:`adw_carousel_init (:1205)`},{property:`interactive`,value:!0,rule:`AdwCarousel:interactive defaults TRUE (:1051-1054)`},{property:`allowScrollWheel`,value:!0,rule:`AdwCarousel:allow-scroll-wheel defaults TRUE (:1103-1106, :1201) — the web port defaulted it FALSE`},{property:`allowLongSwipes`,value:!1,rule:`AdwCarousel:allow-long-swipes defaults FALSE (:1115-1118) — one flick, one page`},{property:`spacing`,value:0,rule:`AdwCarousel:spacing defaults 0 (:1061-1066)`},{property:`revealDuration`,value:0,rule:`AdwCarousel:reveal-duration defaults 0 (:1127-1132, :1206)`}];export{i as CAROUSEL_CLAMP_VECTORS,o as CAROUSEL_NAVIGATE_VECTORS,n as CAROUSEL_PAGE_ALLOCATION_VECTORS,a as CAROUSEL_PAGE_AT_POSITION_VECTORS,u as CAROUSEL_PAGE_LIST_VECTORS,f as CAROUSEL_PROPERTY_DEFAULT_VECTORS,r as CAROUSEL_RANGE_VECTORS,l as CAROUSEL_REORDER_SHIFT_VECTORS,d as CAROUSEL_REVEAL_VECTORS,t as CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS,e as CAROUSEL_SNAP_POINT_VECTORS,c as CAROUSEL_WHEEL_LOCKOUT_VECTORS,s as CAROUSEL_WHEEL_VECTORS};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../_virtual/_rolldown/runtime.js";const e=[{source:`dimming`,open:!0,canClose:!0,outcome:`close`,rule:`a scrim click on an unlocked open sheet closes it`,derivedFrom:`released_cb, adw-bottom-sheet.c:236-240`},{source:`dimming`,open:!0,canClose:!1,outcome:`close-attempt`,rule:`a locked sheet SIGNALS the scrim click instead of swallowing it`,derivedFrom:`released_cb, adw-bottom-sheet.c:237-238`},{source:`dimming`,open:!1,canClose:!0,outcome:`ignored`,rule:`the scrim is not an event target while the sheet is closed, so nothing happens and nothing is signalled`,derivedFrom:`gtk_widget_set_can_target (self->dimming, open), adw-bottom-sheet.c:1148 + 1692`},{source:`dimming`,open:!1,canClose:!1,outcome:`ignored`,rule:`unreachable-while-closed beats the can-close signal — a locked CLOSED sheet says nothing`,derivedFrom:`adw-bottom-sheet.c:1692 (reachability) before released_cb:237`},{source:`escape`,open:!0,canClose:!0,outcome:`close`,rule:`Escape closes an unlocked open sheet`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:393-395`},{source:`escape`,open:!0,canClose:!1,outcome:`close-attempt`,rule:`Escape on a locked sheet signals`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:398`},{source:`escape`,open:!1,canClose:!0,outcome:`close-attempt`,rule:`THE SURPRISING ONE: Escape on a closed-but-focused sheet still signals, because the emit is the fallthrough for every case that is not (can_close && open). The sheet bin stays focusable while it shows a bottom bar. Both ports returned nothing here`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:393-399`},{source:`escape`,open:!1,canClose:!1,outcome:`close-attempt`,rule:`the fallthrough covers this corner too`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:398`},{source:`close-button`,open:!0,canClose:!0,outcome:`close`,rule:`the sheet.close action closes an unlocked open sheet`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:377-380`},{source:`close-button`,open:!0,canClose:!1,outcome:`close-attempt`,rule:`can_close is tested FIRST, before the open check`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:372-375`},{source:`close-button`,open:!1,canClose:!0,outcome:`delegate`,rule:`sheet.close on an already-closed sheet forwards the action to the PARENT (a sheet inside a sheet closes the outer one) rather than doing nothing`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:382-385`},{source:`close-button`,open:!1,canClose:!1,outcome:`close-attempt`,rule:`a locked sheet never reaches the delegation branch — the can_close guard returns first`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:372-375`},{source:`drag-handle`,open:!0,canClose:!0,outcome:`ignored`,rule:`THE SHARED MISTAKE: the drag handle is not an event target in libadwaita, so it closes nothing. Both ports had wired it to close the sheet`,derivedFrom:`gtk_widget_set_can_focus/can_target (self->drag_handle, FALSE), adw-bottom-sheet.c:1197-1198`},{source:`drag-handle`,open:!0,canClose:!1,outcome:`ignored`,rule:`not a can-close question at all — a decorative widget cannot attempt anything`,derivedFrom:`adw-bottom-sheet.c:1197-1198`},{source:`drag-handle`,open:!1,canClose:!0,outcome:`ignored`,rule:`its only behavioural role is elsewhere: allow_mouse_drag = show_drag_handle || bottom_bar`,derivedFrom:`adw-bottom-sheet.c:1197-1198 + update_swipe_tracker:455-457`},{source:`swipe`,open:!0,canClose:!0,outcome:`close`,rule:`a downward swipe past the midpoint closes an unlocked open sheet`,derivedFrom:`prepare_cb adw-bottom-sheet.c:1050 → end_swipe_cb adw-bottom-sheet.c:1099-1103`},{source:`swipe`,open:!0,canClose:!1,outcome:`ignored`,rule:`a locked sheet swallows the swipe SILENTLY — prepare_cb refuses to detect it, so unlike the scrim and Escape there is no close-attempt`,derivedFrom:`prepare_cb, adw-bottom-sheet.c:1050-1051`},{source:`swipe`,open:!1,canClose:!0,outcome:`ignored`,rule:`a swipe on a closed sheet is an OPEN gesture (gated by can-open), never a close one`,derivedFrom:`prepare_cb, adw-bottom-sheet.c:1052-1053`}];function runBottomSheetSteps(e,t){let n=[];for(let r of t)switch(r.kind){case`setOpen`:e.setOpen(r.open);break;case`setCanClose`:e.setCanClose(r.canClose);break;case`requestClose`:n.push(e.requestClose(r.source));break}return n}const t=[{steps:[],outcomes:[],notifications:[],callbacks:[],open:!1,hasBeenOpen:!1,rule:`a fresh sheet is closed, unlocked and has never been open`,derivedFrom:`adw_bottom_sheet_init adw-bottom-sheet.c:1125-1133 + the open pspec default at :852-855`},{steps:[{kind:`setOpen`,open:!0}],outcomes:[],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`opening notifies once and latches has_been_open`,derivedFrom:`adw-bottom-sheet.c:1684-1689 + the notify at :1777`},{steps:[{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!0}],outcomes:[],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`setting the current value again is a no-op — no second notification`,derivedFrom:`adw-bottom-sheet.c:1672-1682`},{steps:[{kind:`setOpen`,open:!1}],outcomes:[],notifications:[],callbacks:[`closing`,`closed`],open:!1,hasBeenOpen:!1,rule:`THE REPLAY: closing a sheet that was NEVER open changes nothing and notifies nothing, but still fires closing+closed — this is how a dialog dismissed before it ever animated in gets torn down`,derivedFrom:`adw-bottom-sheet.c:1672-1682`},{steps:[{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!1},{kind:`setOpen`,open:!1}],outcomes:[],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`once has_been_open is set the replay branch is skipped: the third call fires NOTHING`,derivedFrom:`adw-bottom-sheet.c:1673 (the !has_been_open guard) + :1689`},{steps:[{kind:`setCanClose`,canClose:!1},{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!1}],outcomes:[],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`can-close does NOT gate the programmatic path — "Bottom sheet can still be closed using [property@BottomSheet:open]"`,derivedFrom:`adw_bottom_sheet_set_open adw-bottom-sheet.c:1661-1778 (never reads can_close) + the doc at :2071`},{steps:[{kind:`setOpen`,open:!0},{kind:`requestClose`,source:`dimming`}],outcomes:[`close`],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`an accepted dismissal runs the same close path as the programmatic one`,derivedFrom:`released_cb adw-bottom-sheet.c:239 → adw_bottom_sheet_set_open`},{steps:[{kind:`setOpen`,open:!0},{kind:`setCanClose`,canClose:!1},{kind:`requestClose`,source:`dimming`},{kind:`requestClose`,source:`escape`},{kind:`requestClose`,source:`swipe`}],outcomes:[`close-attempt`,`close-attempt`,`ignored`],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`a locked sheet signals the scrim and Escape but swallows the swipe — three affordances, two different answers`,derivedFrom:`released_cb:237-238 + maybe_close_cb:398 + prepare_cb:1050-1051`},{steps:[{kind:`setOpen`,open:!0},{kind:`requestClose`,source:`drag-handle`}],outcomes:[`ignored`],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`REGRESSION PIN: tapping the drag handle leaves an open sheet open. Both ports closed it here`,derivedFrom:`adw-bottom-sheet.c:1197-1198`},{steps:[{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!1},{kind:`requestClose`,source:`escape`},{kind:`requestClose`,source:`close-button`}],outcomes:[`close-attempt`,`delegate`],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`REGRESSION PIN: on a closed sheet Escape still signals and sheet.close delegates upward — neither port did either`,derivedFrom:`maybe_close_cb:393-399 + sheet_close_cb:382-385`},{steps:[{kind:`setOpen`,open:!0},{kind:`setCanClose`,canClose:!1},{kind:`requestClose`,source:`escape`},{kind:`setCanClose`,canClose:!0},{kind:`requestClose`,source:`escape`}],outcomes:[`close-attempt`,`close`],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`unlocking mid-life makes the same affordance start closing`,derivedFrom:`adw_bottom_sheet_set_can_close adw-bottom-sheet.c:2076-2091`}];export{e as BOTTOM_SHEET_CLOSE_VECTORS,t as BOTTOM_SHEET_PRESENTATION_VECTORS,runBottomSheetSteps};
|
|
1
|
+
import"../_virtual/_rolldown/runtime.js";const e=[{source:`dimming`,open:!0,canClose:!0,outcome:`close`,rule:`a scrim click on an unlocked open sheet closes it`,derivedFrom:`released_cb, adw-bottom-sheet.c:236-240`},{source:`dimming`,open:!0,canClose:!1,outcome:`close-attempt`,rule:`a locked sheet SIGNALS the scrim click instead of swallowing it`,derivedFrom:`released_cb, adw-bottom-sheet.c:237-238`},{source:`dimming`,open:!1,canClose:!0,outcome:`ignored`,rule:`the scrim is not an event target while the sheet is closed, so nothing happens and nothing is signalled`,derivedFrom:`gtk_widget_set_can_target (self->dimming, open), adw-bottom-sheet.c:1148 + 1692`},{source:`dimming`,open:!1,canClose:!1,outcome:`ignored`,rule:`unreachable-while-closed beats the can-close signal — a locked CLOSED sheet says nothing`,derivedFrom:`adw-bottom-sheet.c:1692 (reachability) before released_cb:237`},{source:`escape`,open:!0,canClose:!0,outcome:`close`,rule:`Escape closes an unlocked open sheet`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:393-395`},{source:`escape`,open:!0,canClose:!1,outcome:`close-attempt`,rule:`Escape on a locked sheet signals`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:398`},{source:`escape`,open:!1,canClose:!0,outcome:`close-attempt`,rule:`THE SURPRISING ONE: Escape on a closed-but-focused sheet still signals, because the emit is the fallthrough for every case that is not (can_close && open). The sheet bin stays focusable while it shows a bottom bar. Both ports returned nothing here`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:393-399`},{source:`escape`,open:!1,canClose:!1,outcome:`close-attempt`,rule:`the fallthrough covers this corner too`,derivedFrom:`maybe_close_cb, adw-bottom-sheet.c:398`},{source:`close-button`,open:!0,canClose:!0,outcome:`close`,rule:`the sheet.close action closes an unlocked open sheet`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:377-380`},{source:`close-button`,open:!0,canClose:!1,outcome:`close-attempt`,rule:`can_close is tested FIRST, before the open check`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:372-375`},{source:`close-button`,open:!1,canClose:!0,outcome:`delegate`,rule:`sheet.close on an already-closed sheet forwards the action to the PARENT (a sheet inside a sheet closes the outer one) rather than doing nothing`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:382-385`},{source:`close-button`,open:!1,canClose:!1,outcome:`close-attempt`,rule:`a locked sheet never reaches the delegation branch — the can_close guard returns first`,derivedFrom:`sheet_close_cb, adw-bottom-sheet.c:372-375`},{source:`drag-handle`,open:!0,canClose:!0,outcome:`ignored`,rule:`THE SHARED MISTAKE: the drag handle is not an event target in libadwaita, so it closes nothing. Both ports had wired it to close the sheet`,derivedFrom:`gtk_widget_set_can_focus/can_target (self->drag_handle, FALSE), adw-bottom-sheet.c:1197-1198`},{source:`drag-handle`,open:!0,canClose:!1,outcome:`ignored`,rule:`not a can-close question at all — a decorative widget cannot attempt anything`,derivedFrom:`adw-bottom-sheet.c:1197-1198`},{source:`drag-handle`,open:!1,canClose:!0,outcome:`ignored`,rule:`its only behavioural role is elsewhere: allow_mouse_drag = show_drag_handle || bottom_bar`,derivedFrom:`adw-bottom-sheet.c:1197-1198 + update_swipe_tracker:455-457`},{source:`swipe`,open:!0,canClose:!0,outcome:`close`,rule:`a downward swipe past the midpoint closes an unlocked open sheet`,derivedFrom:`prepare_cb adw-bottom-sheet.c:1050 → end_swipe_cb adw-bottom-sheet.c:1099-1103`},{source:`swipe`,open:!0,canClose:!1,outcome:`ignored`,rule:`a locked sheet swallows the swipe SILENTLY — prepare_cb refuses to detect it, so unlike the scrim and Escape there is no close-attempt`,derivedFrom:`prepare_cb, adw-bottom-sheet.c:1050-1051`},{source:`swipe`,open:!1,canClose:!0,outcome:`ignored`,rule:`a swipe on a closed sheet is an OPEN gesture (gated by can-open), never a close one`,derivedFrom:`prepare_cb, adw-bottom-sheet.c:1052-1053`}];function runBottomSheetSteps(e,t){let n=[];for(let r of t)switch(r.kind){case`setOpen`:e.setOpen(r.open);break;case`setCanClose`:e.setCanClose(r.canClose);break;case`requestClose`:n.push(e.requestClose(r.source));break}return n}const t=[{steps:[],outcomes:[],notifications:[],callbacks:[],open:!1,hasBeenOpen:!1,rule:`a fresh sheet is closed, unlocked and has never been open`,derivedFrom:`adw_bottom_sheet_init adw-bottom-sheet.c:1125-1133 + the open pspec default at :852-855`},{steps:[{kind:`setOpen`,open:!0}],outcomes:[],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`opening notifies once and latches has_been_open`,derivedFrom:`adw-bottom-sheet.c:1684-1689 + the notify at :1777`},{steps:[{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!0}],outcomes:[],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`setting the current value again is a no-op — no second notification`,derivedFrom:`adw-bottom-sheet.c:1672-1682`},{steps:[{kind:`setOpen`,open:!1}],outcomes:[],notifications:[],callbacks:[`closing`,`closed`],open:!1,hasBeenOpen:!1,rule:`THE REPLAY: closing a sheet that was NEVER open changes nothing and notifies nothing, but still fires closing+closed — this is how a dialog dismissed before it ever animated in gets torn down`,derivedFrom:`adw-bottom-sheet.c:1672-1682`},{steps:[{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!1},{kind:`setOpen`,open:!1}],outcomes:[],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`once has_been_open is set the replay branch is skipped: the third call fires NOTHING`,derivedFrom:`adw-bottom-sheet.c:1673 (the !has_been_open guard) + :1689`},{steps:[{kind:`setCanClose`,canClose:!1},{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!1}],outcomes:[],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`can-close does NOT gate the programmatic path — "Bottom sheet can still be closed using [property@BottomSheet:open]"`,derivedFrom:`adw_bottom_sheet_set_open adw-bottom-sheet.c:1661-1778 (never reads can_close) + the doc at :2071`},{steps:[{kind:`setOpen`,open:!0},{kind:`requestClose`,source:`dimming`}],outcomes:[`close`],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`an accepted dismissal runs the same close path as the programmatic one`,derivedFrom:`released_cb adw-bottom-sheet.c:239 → adw_bottom_sheet_set_open`},{steps:[{kind:`setOpen`,open:!0},{kind:`requestClose`,source:`dimming`},{kind:`setOpen`,open:!0}],outcomes:[`close`],notifications:[!0,!1,!0],callbacks:[`closing`],open:!0,hasBeenOpen:!0,rule:`a dismissed sheet re-opens, and notifies a third time. Every other row stops at its first close, so a close path that latched (a listener torn down and never re-attached, a state that only travels one way) would leave the whole table green`,derivedFrom:`adw_bottom_sheet_set_open adw-bottom-sheet.c:1661-1778: has_been_open (:1673) gates only the teardown replay, never a later open`},{steps:[{kind:`setOpen`,open:!0},{kind:`setCanClose`,canClose:!1},{kind:`requestClose`,source:`dimming`},{kind:`requestClose`,source:`escape`},{kind:`requestClose`,source:`swipe`}],outcomes:[`close-attempt`,`close-attempt`,`ignored`],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`a locked sheet signals the scrim and Escape but swallows the swipe — three affordances, two different answers`,derivedFrom:`released_cb:237-238 + maybe_close_cb:398 + prepare_cb:1050-1051`},{steps:[{kind:`setOpen`,open:!0},{kind:`requestClose`,source:`drag-handle`}],outcomes:[`ignored`],notifications:[!0],callbacks:[],open:!0,hasBeenOpen:!0,rule:`REGRESSION PIN: tapping the drag handle leaves an open sheet open. Both ports closed it here`,derivedFrom:`adw-bottom-sheet.c:1197-1198`},{steps:[{kind:`setOpen`,open:!0},{kind:`setOpen`,open:!1},{kind:`requestClose`,source:`escape`},{kind:`requestClose`,source:`close-button`}],outcomes:[`close-attempt`,`delegate`],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`REGRESSION PIN: on a closed sheet Escape still signals and sheet.close delegates upward — neither port did either`,derivedFrom:`maybe_close_cb:393-399 + sheet_close_cb:382-385`},{steps:[{kind:`setOpen`,open:!0},{kind:`setCanClose`,canClose:!1},{kind:`requestClose`,source:`escape`},{kind:`setCanClose`,canClose:!0},{kind:`requestClose`,source:`escape`}],outcomes:[`close-attempt`,`close`],notifications:[!0,!1],callbacks:[`closing`],open:!1,hasBeenOpen:!0,rule:`unlocking mid-life makes the same affordance start closing`,derivedFrom:`adw_bottom_sheet_set_can_close adw-bottom-sheet.c:2076-2091`}];export{e as BOTTOM_SHEET_CLOSE_VECTORS,t as BOTTOM_SHEET_PRESENTATION_VECTORS,runBottomSheetSteps};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ABOUT_DIALOG_CREDITS_LEGAL_VECTORS as e,ABOUT_DIALOG_DETAILS_VECTORS as t,ABOUT_DIALOG_HEADER_VECTORS as n,ABOUT_DIALOG_LABEL_VECTORS as r,ABOUT_DIALOG_SUPPORT_VECTORS as i,CREDITS_SECTIONS_VECTORS as a,CREDIT_PERSON_VECTORS as o,LEGAL_SECTION_VECTORS as s,LICENSE_INFO_VECTORS as c,LICENSE_SETTER_VECTORS as l,LICENSE_SPDX_VECTORS as u,LICENSE_TEXT_VECTORS as d,TRANSLATOR_CREDITS_VECTORS as f}from"./about-dialog.js";import{ACCENT_COLOR_VECTORS as p}from"./accent.js";import{ACTION_ROW_ACTIVATION_VECTORS as m,BUTTON_ROW_ACTIVATABLE_VECTORS as h,BUTTON_ROW_ICON_VECTORS as g,LABEL_VISIBILITY_VECTORS as _,SWITCH_ROW_NOTIFY_VECTORS as v,WINDOW_TITLE_VECTORS as y}from"./action-row.js";import{AVATAR_COLOR_VECTORS as b,AVATAR_FONT_SIZE_VECTORS as x,AVATAR_INITIALS_VECTORS as S,AVATAR_MODE_VECTORS as C}from"./avatar.js";import{BANNER_BUTTON_STYLE_PARSE_VECTORS as w,BANNER_BUTTON_STYLE_VECTORS as T,BANNER_BUTTON_TEXT_VECTORS as E,BANNER_BUTTON_VISIBLE_VECTORS as D,BANNER_DEFAULT_VECTORS as O}from"./banner.js";import{BUTTON_CONTENT_DEFAULT_VECTORS as k,BUTTON_CONTENT_ELLIPSIZE_VECTORS as A,BUTTON_CONTENT_ICON_VECTORS as j,BUTTON_CONTENT_LABEL_VECTORS as M,BUTTON_CONTENT_STYLE_TARGET_VECTORS as N,BUTTON_CONTENT_TEXT_VECTORS as P}from"./button-content.js";import{BUTTON_STYLE_CLASS_VECTORS as F}from"./button.js";import{CAROUSEL_CLAMP_VECTORS as I,CAROUSEL_NAVIGATE_VECTORS as L,CAROUSEL_PAGE_AT_POSITION_VECTORS as R,CAROUSEL_PAGE_LIST_VECTORS as z,CAROUSEL_PROPERTY_DEFAULT_VECTORS as B,CAROUSEL_RANGE_VECTORS as V,CAROUSEL_REORDER_SHIFT_VECTORS as H,CAROUSEL_REVEAL_VECTORS as U,CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS as W,CAROUSEL_SNAP_POINT_VECTORS as G,CAROUSEL_WHEEL_LOCKOUT_VECTORS as K,CAROUSEL_WHEEL_VECTORS as q}from"./carousel.js";import{RADIO_GROUP_VECTORS as J}from"./checks.js";import{CLAMP_ALLOCATE_VECTORS as Y,CLAMP_CHILD_SIZE_VECTORS as X,CLAMP_PROPERTY_VECTORS as Z,CLAMP_SIZE_FROM_CHILD_VECTORS as Q,CLAMP_THRESHOLD_VECTORS as $,SPINNER_GEOMETRY_VECTORS as ee,SPINNER_SIZE_VECTORS as te,TOOLBAR_VIEW_ALLOCATE_VECTORS as ne,TOOLBAR_VIEW_CLASS_VECTORS as re,TOOLBAR_VIEW_CONTENT_FOR_SIZE_VECTORS as ie,TOOLBAR_VIEW_MEASURE_VECTORS as ae}from"./chrome.js";import{DATA_GRID_CELL_TEXT_VECTORS as oe,DATA_GRID_COLUMN_CLASS_VECTORS as se,DATA_GRID_COLUMN_NORMALIZE_VECTORS as ce,DATA_GRID_INTERACTIVE_VECTORS as le,DATA_GRID_TRACK_VECTORS as ue,DATA_GRID_VARIANT_VECTORS as de}from"./data-grid.js";import{BOTTOM_SHEET_CLOSE_VECTORS as fe,BOTTOM_SHEET_PRESENTATION_VECTORS as pe,runBottomSheetSteps as me}from"./dialog.js";import{ENTRY_MAX_LENGTH_VECTORS as he,ENTRY_ROW_ACTIVATION_VECTORS as ge,ENTRY_ROW_GUARD_VECTORS as _e,ENTRY_ROW_STATE_VECTORS as ve,ENTRY_TEXT_LENGTH_VECTORS as ye,PASSWORD_ENTRY_ROW_VECTORS as be,PASSWORD_REVEAL_GUARD_VECTORS as xe}from"./entry-row.js";import{COMBO_CHOOSER_VECTORS as Se,COMBO_SELECTION_VECTORS as Ce}from"./rows.js";import{VIEW_STACK_ICON_NAME_VECTORS as we,VIEW_STACK_PAGE_VECTORS as Te,VIEW_STACK_VECTORS as Ee}from"./view-stack.js";import{NAVIGATION_VIEW_VECTORS as De,collectNavigationState as Oe,navigationEventLog as ke,runNavigationSteps as Ae}from"./navigation-view.js";import{SIDEBAR_ACTIVATION_VECTORS as je,SIDEBAR_CLAMP_VECTORS as Me,SIDEBAR_FILTER_VECTORS as Ne,SIDEBAR_ITEMS_CHANGED_VECTORS as Pe,SIDEBAR_ITEM_FLAG_VECTORS as Fe,SIDEBAR_MODEL_VECTORS as Ie,SIDEBAR_MODE_VECTORS as Le}from"./sidebar.js";import{ADW_LENGTH_UNIT_VECTORS as Re,GLIB_CLAMP_VECTORS as ze,NATURAL_SIDEBAR_WIDTH_VECTORS as Be,NAVIGATION_ACTION_VECTORS as Ve,NAVIGATION_SPLIT_VIEW_LAYOUT_VECTORS as He,NAVIGATION_STACK_VECTORS as Ue,OVERLAY_COLLAPSE_VECTORS as We,OVERLAY_SPLIT_VIEW_LAYOUT_VECTORS as Ge,OVERLAY_SWIPE_AREA_VECTORS as Ke,OVERLAY_SWIPE_CANCEL_VECTORS as qe,OVERLAY_SWIPE_RELEASE_VECTORS as Je,OVERLAY_SWIPE_SNAP_POINT_VECTORS as Ye,OVERLAY_SWIPE_START_VECTORS as Xe,SIDEBAR_BOUNDS_VECTORS as Ze,SIDEBAR_WIDTH_VECTORS as Qe,SPLIT_VIEW_MEASURE_VECTORS as $e,TAGS_CONFLICT_VECTORS as et}from"./split-view.js";import{MENU_BUTTON_DIRECTION_VECTORS as tt,SPLIT_BUTTON_CONTENT_VECTORS as nt,SPLIT_BUTTON_DIRECTION_VECTORS as rt,SPLIT_BUTTON_DROPDOWN_VECTORS as it,SPLIT_BUTTON_MENU_ACTIVATION_VECTORS as at,SPLIT_BUTTON_MENU_PARSE_VECTORS as ot,SPLIT_BUTTON_ROOT_STATE_VECTORS as st,SPLIT_BUTTON_STYLE_CLASS_VECTORS as ct,SPLIT_BUTTON_TOOLTIP_VECTORS as lt}from"./split-button.js";import{INLINE_TOGGLE_VECTORS as ut,INLINE_TOOLTIP_VECTORS as dt,VIEW_SWITCHER_BADGE_VECTORS as ft,VIEW_SWITCHER_BAR_REVEAL_VECTORS as pt,VIEW_SWITCHER_BAR_VECTORS as mt,VIEW_SWITCHER_BUTTON_VECTORS as ht,VIEW_SWITCHER_BUTTON_VISIBILITY_VECTORS as gt,VIEW_SWITCHER_DRAG_VECTORS as _t,VIEW_SWITCHER_ICON_VECTORS as vt,VIEW_SWITCHER_MNEMONIC_VECTORS as yt,VIEW_SWITCHER_REBUILD_VECTORS as bt,VIEW_SWITCHER_SELECTION_VECTORS as xt,createViewSwitcherClock as St}from"./view-switcher.js";import{TABS_REVEALED_VECTORS as Ct,TAB_CLOSE_VISIBLE_VECTORS as wt,TAB_DESCENDANT_VECTORS as Tt,TAB_ICON_STATE_VECTORS as Et,TAB_PAGE_DESCRIPTOR_VECTORS as Dt,TAB_SUCCESSOR_VECTORS as Ot,TAB_TOOLTIP_VECTORS as kt,TAB_VIEW_VECTORS as At,applyTabViewOp as jt,seedTabViewPages as Mt,tabViewClosing as Nt,tabViewOrder as Pt}from"./tab-view.js";import{CASE_FOLD_VECTORS as Ft,MAKE_COMPARABLE_VECTORS as It,PREFERENCES_GROUP_HEADER_VECTORS as Lt,PREFERENCES_SEARCH_PAGES as Rt,PREFERENCES_SEARCH_VECTORS as zt,ROW_MATCH_VECTORS as Bt,SEARCH_CORPUS_VECTORS as Vt,SEARCH_ROW_SUBTITLE_VECTORS as Ht,STRIP_MARKUP_VECTORS as Ut,STRIP_MNEMONIC_VECTORS as Wt}from"./preferences.js";import{POPOVER_KEY_VECTORS as Gt,POPOVER_SURFACE_VECTORS as Kt}from"./popover.js";import{SHORTCUT_LABEL_VECTORS as qt,formatShortcutLabelNodes as Jt}from"./shortcut-label.js";import{SPINNER_ARC_ENVELOPE as Yt,SPINNER_ARC_PHASE_VECTORS as Xt,SPINNER_ARC_TOLERANCE as Zt,SPINNER_CONSTANT_VECTORS as Qt}from"./spinner.js";import{WRAP_BOX_CHILD_ORDER_VECTORS as $t,WRAP_BOX_LENGTH_VECTORS as en,WRAP_BOX_LINE_VECTORS as tn,WRAP_BOX_NATURAL_LENGTH_VECTORS as nn,WRAP_BOX_NOTIFY_PROPERTIES as rn,WRAP_BOX_POLICY_VECTORS as an,WRAP_BOX_SPACING_NOTIFY_VECTORS as on,WRAP_BOX_SPACING_VECTORS as sn}from"./wrap-box.js";export{e as ABOUT_DIALOG_CREDITS_LEGAL_VECTORS,t as ABOUT_DIALOG_DETAILS_VECTORS,n as ABOUT_DIALOG_HEADER_VECTORS,r as ABOUT_DIALOG_LABEL_VECTORS,i as ABOUT_DIALOG_SUPPORT_VECTORS,p as ACCENT_COLOR_VECTORS,m as ACTION_ROW_ACTIVATION_VECTORS,Re as ADW_LENGTH_UNIT_VECTORS,b as AVATAR_COLOR_VECTORS,x as AVATAR_FONT_SIZE_VECTORS,S as AVATAR_INITIALS_VECTORS,C as AVATAR_MODE_VECTORS,w as BANNER_BUTTON_STYLE_PARSE_VECTORS,T as BANNER_BUTTON_STYLE_VECTORS,E as BANNER_BUTTON_TEXT_VECTORS,D as BANNER_BUTTON_VISIBLE_VECTORS,O as BANNER_DEFAULT_VECTORS,fe as BOTTOM_SHEET_CLOSE_VECTORS,pe as BOTTOM_SHEET_PRESENTATION_VECTORS,k as BUTTON_CONTENT_DEFAULT_VECTORS,A as BUTTON_CONTENT_ELLIPSIZE_VECTORS,j as BUTTON_CONTENT_ICON_VECTORS,M as BUTTON_CONTENT_LABEL_VECTORS,N as BUTTON_CONTENT_STYLE_TARGET_VECTORS,P as BUTTON_CONTENT_TEXT_VECTORS,h as BUTTON_ROW_ACTIVATABLE_VECTORS,g as BUTTON_ROW_ICON_VECTORS,F as BUTTON_STYLE_CLASS_VECTORS,I as CAROUSEL_CLAMP_VECTORS,L as CAROUSEL_NAVIGATE_VECTORS,R as CAROUSEL_PAGE_AT_POSITION_VECTORS,z as CAROUSEL_PAGE_LIST_VECTORS,B as CAROUSEL_PROPERTY_DEFAULT_VECTORS,V as CAROUSEL_RANGE_VECTORS,H as CAROUSEL_REORDER_SHIFT_VECTORS,U as CAROUSEL_REVEAL_VECTORS,W as CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS,G as CAROUSEL_SNAP_POINT_VECTORS,K as CAROUSEL_WHEEL_LOCKOUT_VECTORS,q as CAROUSEL_WHEEL_VECTORS,Ft as CASE_FOLD_VECTORS,Y as CLAMP_ALLOCATE_VECTORS,X as CLAMP_CHILD_SIZE_VECTORS,Z as CLAMP_PROPERTY_VECTORS,Q as CLAMP_SIZE_FROM_CHILD_VECTORS,$ as CLAMP_THRESHOLD_VECTORS,Se as COMBO_CHOOSER_VECTORS,Ce as COMBO_SELECTION_VECTORS,a as CREDITS_SECTIONS_VECTORS,o as CREDIT_PERSON_VECTORS,oe as DATA_GRID_CELL_TEXT_VECTORS,se as DATA_GRID_COLUMN_CLASS_VECTORS,ce as DATA_GRID_COLUMN_NORMALIZE_VECTORS,le as DATA_GRID_INTERACTIVE_VECTORS,ue as DATA_GRID_TRACK_VECTORS,de as DATA_GRID_VARIANT_VECTORS,he as ENTRY_MAX_LENGTH_VECTORS,ge as ENTRY_ROW_ACTIVATION_VECTORS,_e as ENTRY_ROW_GUARD_VECTORS,ve as ENTRY_ROW_STATE_VECTORS,ye as ENTRY_TEXT_LENGTH_VECTORS,ze as GLIB_CLAMP_VECTORS,ut as INLINE_TOGGLE_VECTORS,dt as INLINE_TOOLTIP_VECTORS,_ as LABEL_VISIBILITY_VECTORS,s as LEGAL_SECTION_VECTORS,c as LICENSE_INFO_VECTORS,l as LICENSE_SETTER_VECTORS,u as LICENSE_SPDX_VECTORS,d as LICENSE_TEXT_VECTORS,It as MAKE_COMPARABLE_VECTORS,tt as MENU_BUTTON_DIRECTION_VECTORS,Be as NATURAL_SIDEBAR_WIDTH_VECTORS,Ve as NAVIGATION_ACTION_VECTORS,He as NAVIGATION_SPLIT_VIEW_LAYOUT_VECTORS,Ue as NAVIGATION_STACK_VECTORS,De as NAVIGATION_VIEW_VECTORS,We as OVERLAY_COLLAPSE_VECTORS,Ge as OVERLAY_SPLIT_VIEW_LAYOUT_VECTORS,Ke as OVERLAY_SWIPE_AREA_VECTORS,qe as OVERLAY_SWIPE_CANCEL_VECTORS,Je as OVERLAY_SWIPE_RELEASE_VECTORS,Ye as OVERLAY_SWIPE_SNAP_POINT_VECTORS,Xe as OVERLAY_SWIPE_START_VECTORS,be as PASSWORD_ENTRY_ROW_VECTORS,xe as PASSWORD_REVEAL_GUARD_VECTORS,Gt as POPOVER_KEY_VECTORS,Kt as POPOVER_SURFACE_VECTORS,Lt as PREFERENCES_GROUP_HEADER_VECTORS,Rt as PREFERENCES_SEARCH_PAGES,zt as PREFERENCES_SEARCH_VECTORS,J as RADIO_GROUP_VECTORS,Bt as ROW_MATCH_VECTORS,Vt as SEARCH_CORPUS_VECTORS,Ht as SEARCH_ROW_SUBTITLE_VECTORS,qt as SHORTCUT_LABEL_VECTORS,je as SIDEBAR_ACTIVATION_VECTORS,Ze as SIDEBAR_BOUNDS_VECTORS,Me as SIDEBAR_CLAMP_VECTORS,Ne as SIDEBAR_FILTER_VECTORS,Pe as SIDEBAR_ITEMS_CHANGED_VECTORS,Fe as SIDEBAR_ITEM_FLAG_VECTORS,Ie as SIDEBAR_MODEL_VECTORS,Le as SIDEBAR_MODE_VECTORS,Qe as SIDEBAR_WIDTH_VECTORS,Yt as SPINNER_ARC_ENVELOPE,Xt as SPINNER_ARC_PHASE_VECTORS,Zt as SPINNER_ARC_TOLERANCE,Qt as SPINNER_CONSTANT_VECTORS,ee as SPINNER_GEOMETRY_VECTORS,te as SPINNER_SIZE_VECTORS,nt as SPLIT_BUTTON_CONTENT_VECTORS,rt as SPLIT_BUTTON_DIRECTION_VECTORS,it as SPLIT_BUTTON_DROPDOWN_VECTORS,at as SPLIT_BUTTON_MENU_ACTIVATION_VECTORS,ot as SPLIT_BUTTON_MENU_PARSE_VECTORS,st as SPLIT_BUTTON_ROOT_STATE_VECTORS,ct as SPLIT_BUTTON_STYLE_CLASS_VECTORS,lt as SPLIT_BUTTON_TOOLTIP_VECTORS,$e as SPLIT_VIEW_MEASURE_VECTORS,Ut as STRIP_MARKUP_VECTORS,Wt as STRIP_MNEMONIC_VECTORS,v as SWITCH_ROW_NOTIFY_VECTORS,Ct as TABS_REVEALED_VECTORS,wt as TAB_CLOSE_VISIBLE_VECTORS,Tt as TAB_DESCENDANT_VECTORS,Et as TAB_ICON_STATE_VECTORS,Dt as TAB_PAGE_DESCRIPTOR_VECTORS,Ot as TAB_SUCCESSOR_VECTORS,kt as TAB_TOOLTIP_VECTORS,At as TAB_VIEW_VECTORS,et as TAGS_CONFLICT_VECTORS,ne as TOOLBAR_VIEW_ALLOCATE_VECTORS,re as TOOLBAR_VIEW_CLASS_VECTORS,ie as TOOLBAR_VIEW_CONTENT_FOR_SIZE_VECTORS,ae as TOOLBAR_VIEW_MEASURE_VECTORS,f as TRANSLATOR_CREDITS_VECTORS,we as VIEW_STACK_ICON_NAME_VECTORS,Te as VIEW_STACK_PAGE_VECTORS,Ee as VIEW_STACK_VECTORS,ft as VIEW_SWITCHER_BADGE_VECTORS,pt as VIEW_SWITCHER_BAR_REVEAL_VECTORS,mt as VIEW_SWITCHER_BAR_VECTORS,ht as VIEW_SWITCHER_BUTTON_VECTORS,gt as VIEW_SWITCHER_BUTTON_VISIBILITY_VECTORS,_t as VIEW_SWITCHER_DRAG_VECTORS,vt as VIEW_SWITCHER_ICON_VECTORS,yt as VIEW_SWITCHER_MNEMONIC_VECTORS,bt as VIEW_SWITCHER_REBUILD_VECTORS,xt as VIEW_SWITCHER_SELECTION_VECTORS,y as WINDOW_TITLE_VECTORS,$t as WRAP_BOX_CHILD_ORDER_VECTORS,en as WRAP_BOX_LENGTH_VECTORS,tn as WRAP_BOX_LINE_VECTORS,nn as WRAP_BOX_NATURAL_LENGTH_VECTORS,rn as WRAP_BOX_NOTIFY_PROPERTIES,an as WRAP_BOX_POLICY_VECTORS,on as WRAP_BOX_SPACING_NOTIFY_VECTORS,sn as WRAP_BOX_SPACING_VECTORS,jt as applyTabViewOp,Oe as collectNavigationState,St as createViewSwitcherClock,Jt as formatShortcutLabelNodes,ke as navigationEventLog,me as runBottomSheetSteps,Ae as runNavigationSteps,Mt as seedTabViewPages,Nt as tabViewClosing,Pt as tabViewOrder};
|
|
1
|
+
import{ABOUT_DIALOG_CREDITS_LEGAL_VECTORS as e,ABOUT_DIALOG_DETAILS_VECTORS as t,ABOUT_DIALOG_HEADER_VECTORS as n,ABOUT_DIALOG_LABEL_VECTORS as r,ABOUT_DIALOG_SUPPORT_VECTORS as i,CREDITS_SECTIONS_VECTORS as a,CREDIT_PERSON_VECTORS as o,LEGAL_SECTION_VECTORS as s,LICENSE_INFO_VECTORS as c,LICENSE_SETTER_VECTORS as l,LICENSE_SPDX_VECTORS as u,LICENSE_TEXT_VECTORS as d,TRANSLATOR_CREDITS_VECTORS as f}from"./about-dialog.js";import{ACCENT_COLOR_VECTORS as p}from"./accent.js";import{ACTION_ROW_ACTIVATION_VECTORS as m,BUTTON_ROW_ACTIVATABLE_VECTORS as h,BUTTON_ROW_ICON_VECTORS as g,LABEL_VISIBILITY_VECTORS as _,SWITCH_ROW_NOTIFY_VECTORS as v,WINDOW_TITLE_VECTORS as y}from"./action-row.js";import{AVATAR_COLOR_VECTORS as b,AVATAR_FONT_SIZE_VECTORS as x,AVATAR_INITIALS_VECTORS as S,AVATAR_MODE_VECTORS as C}from"./avatar.js";import{BANNER_BUTTON_STYLE_PARSE_VECTORS as w,BANNER_BUTTON_STYLE_VECTORS as T,BANNER_BUTTON_TEXT_VECTORS as E,BANNER_BUTTON_VISIBLE_VECTORS as D,BANNER_DEFAULT_VECTORS as O}from"./banner.js";import{BUTTON_CONTENT_DEFAULT_VECTORS as k,BUTTON_CONTENT_ELLIPSIZE_VECTORS as A,BUTTON_CONTENT_ICON_VECTORS as j,BUTTON_CONTENT_LABEL_VECTORS as M,BUTTON_CONTENT_STYLE_TARGET_VECTORS as N,BUTTON_CONTENT_TEXT_VECTORS as P}from"./button-content.js";import{BUTTON_STYLE_CLASS_VECTORS as F}from"./button.js";import{CAROUSEL_CLAMP_VECTORS as I,CAROUSEL_NAVIGATE_VECTORS as L,CAROUSEL_PAGE_ALLOCATION_VECTORS as R,CAROUSEL_PAGE_AT_POSITION_VECTORS as z,CAROUSEL_PAGE_LIST_VECTORS as B,CAROUSEL_PROPERTY_DEFAULT_VECTORS as V,CAROUSEL_RANGE_VECTORS as H,CAROUSEL_REORDER_SHIFT_VECTORS as U,CAROUSEL_REVEAL_VECTORS as W,CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS as G,CAROUSEL_SNAP_POINT_VECTORS as K,CAROUSEL_WHEEL_LOCKOUT_VECTORS as q,CAROUSEL_WHEEL_VECTORS as J}from"./carousel.js";import{RADIO_GROUP_VECTORS as Y}from"./checks.js";import{CLAMP_ALLOCATE_VECTORS as X,CLAMP_CHILD_SIZE_VECTORS as Z,CLAMP_PROPERTY_VECTORS as Q,CLAMP_SIZE_FROM_CHILD_VECTORS as $,CLAMP_THRESHOLD_VECTORS as ee,SPINNER_GEOMETRY_VECTORS as te,SPINNER_SIZE_VECTORS as ne,TOOLBAR_VIEW_ALLOCATE_VECTORS as re,TOOLBAR_VIEW_CLASS_VECTORS as ie,TOOLBAR_VIEW_CONTENT_FOR_SIZE_VECTORS as ae,TOOLBAR_VIEW_MEASURE_VECTORS as oe}from"./chrome.js";import{DATA_GRID_CELL_TEXT_VECTORS as se,DATA_GRID_COLUMN_CLASS_VECTORS as ce,DATA_GRID_COLUMN_NORMALIZE_VECTORS as le,DATA_GRID_INTERACTIVE_VECTORS as ue,DATA_GRID_TRACK_VECTORS as de,DATA_GRID_VARIANT_VECTORS as fe}from"./data-grid.js";import{BOTTOM_SHEET_CLOSE_VECTORS as pe,BOTTOM_SHEET_PRESENTATION_VECTORS as me,runBottomSheetSteps as he}from"./dialog.js";import{ENTRY_MAX_LENGTH_VECTORS as ge,ENTRY_ROW_ACTIVATION_VECTORS as _e,ENTRY_ROW_GUARD_VECTORS as ve,ENTRY_ROW_STATE_VECTORS as ye,ENTRY_TEXT_LENGTH_VECTORS as be,PASSWORD_ENTRY_ROW_VECTORS as xe,PASSWORD_REVEAL_GUARD_VECTORS as Se}from"./entry-row.js";import{COMBO_CHOOSER_VECTORS as Ce,COMBO_SELECTION_VECTORS as we}from"./rows.js";import{VIEW_STACK_ICON_NAME_VECTORS as Te,VIEW_STACK_PAGE_VECTORS as Ee,VIEW_STACK_VECTORS as De}from"./view-stack.js";import{NAVIGATION_VIEW_VECTORS as Oe,collectNavigationState as ke,navigationEventLog as Ae,runNavigationSteps as je}from"./navigation-view.js";import{SIDEBAR_ACTIVATION_VECTORS as Me,SIDEBAR_CLAMP_VECTORS as Ne,SIDEBAR_FILTER_VECTORS as Pe,SIDEBAR_ITEMS_CHANGED_VECTORS as Fe,SIDEBAR_ITEM_FLAG_VECTORS as Ie,SIDEBAR_MODEL_VECTORS as Le,SIDEBAR_MODE_VECTORS as Re}from"./sidebar.js";import{ADW_LENGTH_UNIT_VECTORS as ze,GLIB_CLAMP_VECTORS as Be,NATURAL_SIDEBAR_WIDTH_VECTORS as Ve,NAVIGATION_ACTION_VECTORS as He,NAVIGATION_SPLIT_VIEW_LAYOUT_VECTORS as Ue,NAVIGATION_STACK_VECTORS as We,OVERLAY_COLLAPSE_VECTORS as Ge,OVERLAY_SPLIT_VIEW_LAYOUT_VECTORS as Ke,OVERLAY_SWIPE_AREA_VECTORS as qe,OVERLAY_SWIPE_CANCEL_VECTORS as Je,OVERLAY_SWIPE_RELEASE_VECTORS as Ye,OVERLAY_SWIPE_SNAP_POINT_VECTORS as Xe,OVERLAY_SWIPE_START_VECTORS as Ze,SIDEBAR_BOUNDS_VECTORS as Qe,SIDEBAR_WIDTH_VECTORS as $e,SPLIT_VIEW_MEASURE_VECTORS as et,TAGS_CONFLICT_VECTORS as tt}from"./split-view.js";import{MENU_BUTTON_DIRECTION_VECTORS as nt,SPLIT_BUTTON_CONTENT_VECTORS as rt,SPLIT_BUTTON_DIRECTION_VECTORS as it,SPLIT_BUTTON_DROPDOWN_VECTORS as at,SPLIT_BUTTON_MENU_ACTIVATION_VECTORS as ot,SPLIT_BUTTON_MENU_PARSE_VECTORS as st,SPLIT_BUTTON_ROOT_STATE_VECTORS as ct,SPLIT_BUTTON_STYLE_CLASS_VECTORS as lt,SPLIT_BUTTON_TOOLTIP_VECTORS as ut}from"./split-button.js";import{INLINE_TOGGLE_VECTORS as dt,INLINE_TOOLTIP_VECTORS as ft,VIEW_SWITCHER_BADGE_VECTORS as pt,VIEW_SWITCHER_BAR_REVEAL_VECTORS as mt,VIEW_SWITCHER_BAR_VECTORS as ht,VIEW_SWITCHER_BUTTON_VECTORS as gt,VIEW_SWITCHER_BUTTON_VISIBILITY_VECTORS as _t,VIEW_SWITCHER_DRAG_VECTORS as vt,VIEW_SWITCHER_ICON_VECTORS as yt,VIEW_SWITCHER_MNEMONIC_VECTORS as bt,VIEW_SWITCHER_REBUILD_VECTORS as xt,VIEW_SWITCHER_SELECTION_VECTORS as St,createViewSwitcherClock as Ct}from"./view-switcher.js";import{TABS_REVEALED_VECTORS as wt,TAB_CLOSE_VISIBLE_VECTORS as Tt,TAB_DESCENDANT_VECTORS as Et,TAB_ICON_STATE_VECTORS as Dt,TAB_PAGE_DESCRIPTOR_VECTORS as Ot,TAB_SUCCESSOR_VECTORS as kt,TAB_TOOLTIP_VECTORS as At,TAB_VIEW_VECTORS as jt,applyTabViewOp as Mt,seedTabViewPages as Nt,tabViewClosing as Pt,tabViewOrder as Ft}from"./tab-view.js";import{CASE_FOLD_VECTORS as It,MAKE_COMPARABLE_VECTORS as Lt,PREFERENCES_GROUP_HEADER_VECTORS as Rt,PREFERENCES_SEARCH_PAGES as zt,PREFERENCES_SEARCH_VECTORS as Bt,ROW_MATCH_VECTORS as Vt,SEARCH_CORPUS_VECTORS as Ht,SEARCH_ROW_SUBTITLE_VECTORS as Ut,STRIP_MARKUP_VECTORS as Wt,STRIP_MNEMONIC_VECTORS as Gt}from"./preferences.js";import{POPOVER_KEY_VECTORS as Kt,POPOVER_SURFACE_VECTORS as qt}from"./popover.js";import{SHORTCUT_LABEL_VECTORS as Jt,formatShortcutLabelNodes as Yt}from"./shortcut-label.js";import{SPINNER_ARC_ENVELOPE as Xt,SPINNER_ARC_PHASE_VECTORS as Zt,SPINNER_ARC_TOLERANCE as Qt,SPINNER_CONSTANT_VECTORS as $t}from"./spinner.js";import{WRAP_BOX_CHILD_ORDER_VECTORS as en,WRAP_BOX_LENGTH_VECTORS as tn,WRAP_BOX_LINE_VECTORS as nn,WRAP_BOX_NATURAL_LENGTH_VECTORS as rn,WRAP_BOX_NOTIFY_PROPERTIES as an,WRAP_BOX_POLICY_VECTORS as on,WRAP_BOX_SPACING_NOTIFY_VECTORS as sn,WRAP_BOX_SPACING_VECTORS as cn}from"./wrap-box.js";export{e as ABOUT_DIALOG_CREDITS_LEGAL_VECTORS,t as ABOUT_DIALOG_DETAILS_VECTORS,n as ABOUT_DIALOG_HEADER_VECTORS,r as ABOUT_DIALOG_LABEL_VECTORS,i as ABOUT_DIALOG_SUPPORT_VECTORS,p as ACCENT_COLOR_VECTORS,m as ACTION_ROW_ACTIVATION_VECTORS,ze as ADW_LENGTH_UNIT_VECTORS,b as AVATAR_COLOR_VECTORS,x as AVATAR_FONT_SIZE_VECTORS,S as AVATAR_INITIALS_VECTORS,C as AVATAR_MODE_VECTORS,w as BANNER_BUTTON_STYLE_PARSE_VECTORS,T as BANNER_BUTTON_STYLE_VECTORS,E as BANNER_BUTTON_TEXT_VECTORS,D as BANNER_BUTTON_VISIBLE_VECTORS,O as BANNER_DEFAULT_VECTORS,pe as BOTTOM_SHEET_CLOSE_VECTORS,me as BOTTOM_SHEET_PRESENTATION_VECTORS,k as BUTTON_CONTENT_DEFAULT_VECTORS,A as BUTTON_CONTENT_ELLIPSIZE_VECTORS,j as BUTTON_CONTENT_ICON_VECTORS,M as BUTTON_CONTENT_LABEL_VECTORS,N as BUTTON_CONTENT_STYLE_TARGET_VECTORS,P as BUTTON_CONTENT_TEXT_VECTORS,h as BUTTON_ROW_ACTIVATABLE_VECTORS,g as BUTTON_ROW_ICON_VECTORS,F as BUTTON_STYLE_CLASS_VECTORS,I as CAROUSEL_CLAMP_VECTORS,L as CAROUSEL_NAVIGATE_VECTORS,R as CAROUSEL_PAGE_ALLOCATION_VECTORS,z as CAROUSEL_PAGE_AT_POSITION_VECTORS,B as CAROUSEL_PAGE_LIST_VECTORS,V as CAROUSEL_PROPERTY_DEFAULT_VECTORS,H as CAROUSEL_RANGE_VECTORS,U as CAROUSEL_REORDER_SHIFT_VECTORS,W as CAROUSEL_REVEAL_VECTORS,G as CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS,K as CAROUSEL_SNAP_POINT_VECTORS,q as CAROUSEL_WHEEL_LOCKOUT_VECTORS,J as CAROUSEL_WHEEL_VECTORS,It as CASE_FOLD_VECTORS,X as CLAMP_ALLOCATE_VECTORS,Z as CLAMP_CHILD_SIZE_VECTORS,Q as CLAMP_PROPERTY_VECTORS,$ as CLAMP_SIZE_FROM_CHILD_VECTORS,ee as CLAMP_THRESHOLD_VECTORS,Ce as COMBO_CHOOSER_VECTORS,we as COMBO_SELECTION_VECTORS,a as CREDITS_SECTIONS_VECTORS,o as CREDIT_PERSON_VECTORS,se as DATA_GRID_CELL_TEXT_VECTORS,ce as DATA_GRID_COLUMN_CLASS_VECTORS,le as DATA_GRID_COLUMN_NORMALIZE_VECTORS,ue as DATA_GRID_INTERACTIVE_VECTORS,de as DATA_GRID_TRACK_VECTORS,fe as DATA_GRID_VARIANT_VECTORS,ge as ENTRY_MAX_LENGTH_VECTORS,_e as ENTRY_ROW_ACTIVATION_VECTORS,ve as ENTRY_ROW_GUARD_VECTORS,ye as ENTRY_ROW_STATE_VECTORS,be as ENTRY_TEXT_LENGTH_VECTORS,Be as GLIB_CLAMP_VECTORS,dt as INLINE_TOGGLE_VECTORS,ft as INLINE_TOOLTIP_VECTORS,_ as LABEL_VISIBILITY_VECTORS,s as LEGAL_SECTION_VECTORS,c as LICENSE_INFO_VECTORS,l as LICENSE_SETTER_VECTORS,u as LICENSE_SPDX_VECTORS,d as LICENSE_TEXT_VECTORS,Lt as MAKE_COMPARABLE_VECTORS,nt as MENU_BUTTON_DIRECTION_VECTORS,Ve as NATURAL_SIDEBAR_WIDTH_VECTORS,He as NAVIGATION_ACTION_VECTORS,Ue as NAVIGATION_SPLIT_VIEW_LAYOUT_VECTORS,We as NAVIGATION_STACK_VECTORS,Oe as NAVIGATION_VIEW_VECTORS,Ge as OVERLAY_COLLAPSE_VECTORS,Ke as OVERLAY_SPLIT_VIEW_LAYOUT_VECTORS,qe as OVERLAY_SWIPE_AREA_VECTORS,Je as OVERLAY_SWIPE_CANCEL_VECTORS,Ye as OVERLAY_SWIPE_RELEASE_VECTORS,Xe as OVERLAY_SWIPE_SNAP_POINT_VECTORS,Ze as OVERLAY_SWIPE_START_VECTORS,xe as PASSWORD_ENTRY_ROW_VECTORS,Se as PASSWORD_REVEAL_GUARD_VECTORS,Kt as POPOVER_KEY_VECTORS,qt as POPOVER_SURFACE_VECTORS,Rt as PREFERENCES_GROUP_HEADER_VECTORS,zt as PREFERENCES_SEARCH_PAGES,Bt as PREFERENCES_SEARCH_VECTORS,Y as RADIO_GROUP_VECTORS,Vt as ROW_MATCH_VECTORS,Ht as SEARCH_CORPUS_VECTORS,Ut as SEARCH_ROW_SUBTITLE_VECTORS,Jt as SHORTCUT_LABEL_VECTORS,Me as SIDEBAR_ACTIVATION_VECTORS,Qe as SIDEBAR_BOUNDS_VECTORS,Ne as SIDEBAR_CLAMP_VECTORS,Pe as SIDEBAR_FILTER_VECTORS,Fe as SIDEBAR_ITEMS_CHANGED_VECTORS,Ie as SIDEBAR_ITEM_FLAG_VECTORS,Le as SIDEBAR_MODEL_VECTORS,Re as SIDEBAR_MODE_VECTORS,$e as SIDEBAR_WIDTH_VECTORS,Xt as SPINNER_ARC_ENVELOPE,Zt as SPINNER_ARC_PHASE_VECTORS,Qt as SPINNER_ARC_TOLERANCE,$t as SPINNER_CONSTANT_VECTORS,te as SPINNER_GEOMETRY_VECTORS,ne as SPINNER_SIZE_VECTORS,rt as SPLIT_BUTTON_CONTENT_VECTORS,it as SPLIT_BUTTON_DIRECTION_VECTORS,at as SPLIT_BUTTON_DROPDOWN_VECTORS,ot as SPLIT_BUTTON_MENU_ACTIVATION_VECTORS,st as SPLIT_BUTTON_MENU_PARSE_VECTORS,ct as SPLIT_BUTTON_ROOT_STATE_VECTORS,lt as SPLIT_BUTTON_STYLE_CLASS_VECTORS,ut as SPLIT_BUTTON_TOOLTIP_VECTORS,et as SPLIT_VIEW_MEASURE_VECTORS,Wt as STRIP_MARKUP_VECTORS,Gt as STRIP_MNEMONIC_VECTORS,v as SWITCH_ROW_NOTIFY_VECTORS,wt as TABS_REVEALED_VECTORS,Tt as TAB_CLOSE_VISIBLE_VECTORS,Et as TAB_DESCENDANT_VECTORS,Dt as TAB_ICON_STATE_VECTORS,Ot as TAB_PAGE_DESCRIPTOR_VECTORS,kt as TAB_SUCCESSOR_VECTORS,At as TAB_TOOLTIP_VECTORS,jt as TAB_VIEW_VECTORS,tt as TAGS_CONFLICT_VECTORS,re as TOOLBAR_VIEW_ALLOCATE_VECTORS,ie as TOOLBAR_VIEW_CLASS_VECTORS,ae as TOOLBAR_VIEW_CONTENT_FOR_SIZE_VECTORS,oe as TOOLBAR_VIEW_MEASURE_VECTORS,f as TRANSLATOR_CREDITS_VECTORS,Te as VIEW_STACK_ICON_NAME_VECTORS,Ee as VIEW_STACK_PAGE_VECTORS,De as VIEW_STACK_VECTORS,pt as VIEW_SWITCHER_BADGE_VECTORS,mt as VIEW_SWITCHER_BAR_REVEAL_VECTORS,ht as VIEW_SWITCHER_BAR_VECTORS,gt as VIEW_SWITCHER_BUTTON_VECTORS,_t as VIEW_SWITCHER_BUTTON_VISIBILITY_VECTORS,vt as VIEW_SWITCHER_DRAG_VECTORS,yt as VIEW_SWITCHER_ICON_VECTORS,bt as VIEW_SWITCHER_MNEMONIC_VECTORS,xt as VIEW_SWITCHER_REBUILD_VECTORS,St as VIEW_SWITCHER_SELECTION_VECTORS,y as WINDOW_TITLE_VECTORS,en as WRAP_BOX_CHILD_ORDER_VECTORS,tn as WRAP_BOX_LENGTH_VECTORS,nn as WRAP_BOX_LINE_VECTORS,rn as WRAP_BOX_NATURAL_LENGTH_VECTORS,an as WRAP_BOX_NOTIFY_PROPERTIES,on as WRAP_BOX_POLICY_VECTORS,sn as WRAP_BOX_SPACING_NOTIFY_VECTORS,cn as WRAP_BOX_SPACING_VECTORS,Mt as applyTabViewOp,ke as collectNavigationState,Ct as createViewSwitcherClock,Yt as formatShortcutLabelNodes,Ae as navigationEventLog,he as runBottomSheetSteps,je as runNavigationSteps,Nt as seedTabViewPages,Pt as tabViewClosing,Ft as tabViewOrder};
|
package/lib/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{gStrStrip as e,glibClamp as t,stringIsNotEmpty as n,stripMnemonic as r}from"./glib.js";import{ADW_ABOUT_DIALOG_LABELS as i,ADW_CREDITS_SECTION_TITLES as a,ADW_LICENSES as o,ADW_LICENSE_ALIASES as s,ADW_LICENSE_DEFAULTS as c,ADW_LICENSE_WARRANTY_TEMPLATE as l,ADW_TRANSLATOR_CREDITS_SENTINELS as u,GTK_LICENSE as d,aboutDialogVisibility as f,creditsSections as p,isLicenseType as m,legalSectionVisible as h,licenseText as g,licenseTypeForSpdxId as _,parseCreditPerson as v,setLicense as y,setLicenseType as b,translatorCreditsPeople as x}from"./about-dialog.js";import{ADW_ACCENT_BG_COLORS as S,ADW_ACCENT_COLOR_NAMES as C,ADW_ACCENT_FG_COLOR as w,ADW_DEFAULT_ACCENT_COLOR as T,adwaitaAccent as E,adwaitaAccentBgColor as D,adwaitaAccentColor as O,adwaitaStandaloneColor as k,isAdwAccentColorName as A,onAdwaitaAccentChanged as j,setAdwaitaAccent as M}from"./accent.js";import{ActionRowState as N,BUTTON_ROW_ACTIVATABLE as P,ButtonRowState as F,SwitchRowState as I,WindowTitleState as L,deriveRowLabels as R}from"./action-row.js";import{AVATAR_COLORS as z,AVATAR_COLOR_COUNT as B,avatarColor as V,avatarColorClass as H,avatarFontSize as U,avatarInitials as W,avatarMaxFontSize as G,avatarMode as K,flattenAvatarGradient as q,gStrHash as J,randomAvatarColorClass as Y}from"./avatar.js";import{ADW_BANNER_BUTTON_STYLES as X,ADW_BANNER_BUTTON_STYLE_CLASSES as Z,ADW_BANNER_DEFAULTS as Q,bannerButtonStyleClasses as $,bannerButtonText as ee,bannerButtonVisible as te,bannerRenderState as ne,isBannerButtonStyle as re,parseBannerButtonStyle as ie}from"./banner.js";import{AdwBreakpoint as ae,evaluateBreakpointCondition as oe,parseBreakpointCondition as se}from"./breakpoint.js";import{ADW_BUTTON_CONTENT_DEFAULTS as ce,BUTTON_CONTENT_FALLBACK_ICON as le,BUTTON_CONTENT_STYLE_CLASS as ue,buttonContentEllipsize as de,buttonContentIconExpands as fe,buttonContentIconIsEmpty as pe,buttonContentIconName as me,buttonContentLabelText as he,buttonContentLabelVisible as ge,buttonContentRenderState as _e,buttonContentStyleTargetIndex as ve}from"./button-content.js";import{ADW_BUTTON_STYLE_ALIASES as ye,ADW_BUTTON_STYLE_CLASSES as be,buttonStyleClass as xe,buttonStyleClasses as Se}from"./button.js";import{CAROUSEL_SCROLL_TIMEOUT_MS as Ce,CAROUSEL_SETTLE_EPSILON as we,CarouselState as Te,carouselClampPosition as Ee,carouselClosestSnapPoint as De,carouselNavigateTarget as Oe,carouselPageAtPosition as ke,carouselRange as Ae,carouselReorderShift as je,carouselSizesFromSnapPoints as Me,carouselSnapPoints as Ne,carouselWheelStep as Pe}from"./carousel.js";import{RadioGroupState as Fe,resolveCheckState as Ie}from"./checks.js";import{adwLerp as Le,easeInOutSine as Re,easeOutCubic as ze,inverseLerp as Be}from"./easing.js";import{ADW_CLAMP_DEFAULTS as Ve,ADW_CLAMP_SIZE_CLASSES as He,ADW_SPINNER_MAX_SIZE as Ue,ADW_SPINNER_MIN_SIZE as We,ADW_TOOLBAR_BAR_CLASSES as Ge,ADW_TOOLBAR_VIEW_CLASSES as Ke,ADW_TOOLBAR_VIEW_DEFAULTS as qe,clampAllocate as Je,clampChildSize as Ye,clampSizeFromChild as Xe,clampThresholds as Ze,normalizeClampSize as Qe,parseToolbarStyle as $e,resolveSpinnerSize as et,spinnerGeometry as tt,toolbarBarStyleClasses as nt,toolbarViewAllocate as rt,toolbarViewClasses as it,toolbarViewContentForSize as at,toolbarViewMeasure as ot}from"./chrome.js";import{DEFAULT_ICON_COLOR as st,DEFAULT_ICON_COLOR_DARK as ct,adwaitaColorScheme as lt,isThemeIconColor as ut,onAdwaitaColorSchemeChanged as dt,setAdwaitaColorScheme as ft,themeIconColor as pt,toggleAdwaitaColorScheme as mt}from"./color-scheme.js";import{ADW_DATA_GRID_ROW_VARIANTS as ht,DATA_GRID_CELL_CLASS as gt,DATA_GRID_ROW_CLASS as _t,dataGridCellText as vt,dataGridColumnAlign as yt,dataGridColumnClasses as bt,dataGridRowInteractive as xt,dataGridTrackTemplate as St,dataGridTracks as Ct,normalizeDataGridColumns as wt,normalizeDataGridVariant as Tt}from"./data-grid.js";import{AdwAlertResponses as Et,BottomSheetPresentation as Dt,resolveBottomSheetClose as Ot}from"./dialog.js";import{CAPS_LOCK_ICON_NAME as kt,CAPS_LOCK_TOOLTIP as At,EMPTY_ANIMATION_DURATION_MS as jt,ENTRY_ROW_APPLY_ICON_NAME as Mt,ENTRY_ROW_APPLY_TOOLTIP as Nt,ENTRY_ROW_EDIT_ICON_NAME as Pt,ENTRY_ROW_MAX_LENGTH_LIMIT as Ft,ENTRY_ROW_TITLE_SPACING as It,EntryRowState as Lt,PASSWORD_CONCEAL_ICON_NAME as Rt,PASSWORD_CONCEAL_LABEL as zt,PASSWORD_REVEAL_ICON_NAME as Bt,PASSWORD_REVEAL_LABEL as Vt,PasswordEntryRowState as Ht,clampEntryText as Ut,entryTextLength as Wt}from"./entry-row.js";import{AdwToast as Gt,AdwToastQueue as Kt,DEFAULT_TOAST_TIMEOUT as qt}from"./toast.js";import{ADW_COMBO_NO_SELECTION as Jt,ComboState as Yt,ExpanderState as Xt,SpinState as Zt,ToggleGroupState as Qt,normalizeComboOptions as $t}from"./rows.js";import{ViewStackState as en,normalizeIconName as tn,resolvePageTitle as nn}from"./view-stack.js";import{BACK_BUTTON_FALLBACK_TOOLTIP as rn,NavigationViewState as an,describeNavigationDiagnostic as on}from"./navigation-view.js";import{ADW_SIDEBAR_NO_SELECTION as sn,SidebarState as cn,adjustSidebarSelection as ln,clampSidebarSelection as un,flattenSidebarItems as dn,sidebarHeaders as fn}from"./sidebar.js";import{ADW_SPINNER_CONTRACT_DISTANCE as pn,ADW_SPINNER_CYCLES_PER_LOOP as mn,ADW_SPINNER_CYCLE_LENGTH as hn,ADW_SPINNER_EXTEND_DISTANCE as gn,ADW_SPINNER_IDLE_DISTANCE as _n,ADW_SPINNER_MAX_ARC_LENGTH as vn,ADW_SPINNER_MIN_ARC_LENGTH as yn,ADW_SPINNER_N_CYCLES as bn,ADW_SPINNER_OVERLAP_DISTANCE as xn,ADW_SPINNER_SPIN_DURATION_MS as Sn,ADW_SPINNER_START_ANGLE as Cn,ADW_SPINNER_STILL_PROGRESS as wn,ADW_SPINNER_TRACK_OPACITY as Tn,normalizeSpinnerAngle as En,spinnerArc as Dn,spinnerArcEnd as On,spinnerArcStart as kn,spinnerProgressAt as An}from"./spinner.js";import{parseAccelerator as jn,parseShortcutLabel as Mn,shortcutKeycaps as Nn}from"./shortcut-label.js";import{ADW_LENGTH_UNITS as Pn,DEFAULT_DPI as Fn,adwLengthToPx as In,normalizeLengthUnit as Ln}from"./length-unit.js";import{ADW_SWIPE_BORDER as Rn,DEFAULT_MAX_SIDEBAR_WIDTH as zn,DEFAULT_MIN_SIDEBAR_WIDTH as Bn,DEFAULT_SIDEBAR_WIDTH_FRACTION as Vn,DEFAULT_SIDEBAR_WIDTH_UNIT as Hn,INSTANT_SPLIT_VIEW_ANIMATOR as Un,NAVIGATION_SPLIT_VIEW_CRITICALS as Wn,NavigationSplitViewState as Gn,OverlaySplitViewState as Kn,isSidebarAtVisualStart as qn,layoutNavigationSplitView as Jn,layoutOverlaySplitView as Yn,measureSplitViewHorizontal as Xn,resolveNaturalSidebarWidth as Zn,resolveNavigationAction as Qn,resolveNavigationSidebarWidth as $n,resolveNavigationStack as er,resolveOverlaySidebarWidth as tr,resolveSidebarBounds as nr,resolveSwipeArea as rr,resolveSwipeRelease as ir,resolveSwipeSnapPoints as ar,resolveSwipeStart as or,swipeCancelProgress as sr,tagsConflict as cr}from"./split-view.js";import{DEFAULT_DROPDOWN_TOOLTIP as lr,SPLIT_BUTTON_DISABLED_OPACITY as ur,SplitButtonState as dr,isSplitButtonDirection as fr,menuButtonArrowIcon as pr,menuButtonPopupDirection as mr,parseMenuEntries as hr,resolveDropdownTooltip as gr,splitButtonArrowIcon as _r,splitButtonPopupDirection as vr,splitButtonRootState as yr,splitButtonStyleClasses as br}from"./split-button.js";import{DEFAULT_INDICATOR_DESCRIPTION_STRINGS as xr,INLINE_VIEW_SWITCHER_DISPLAY_MODES as Sr,VIEW_SWITCHER_BADGE_LIMIT as Cr,VIEW_SWITCHER_DRAG_SWITCH_DELAY as wr,VIEW_SWITCHER_FALLBACK_ICON as Tr,VIEW_SWITCHER_NO_SELECTION as Er,VIEW_SWITCHER_POLICIES as Dr,ViewSwitcherBarState as Or,ViewSwitcherDragSwitch as kr,ViewSwitcherState as Ar,buildInlineToggles as jr,buildViewSwitcherButtons as Mr,createViewSwitcherPage as Nr,inlineToggleTooltip as Pr,isInlineViewSwitcherDisplayMode as Fr,isViewSwitcherButtonVisible as Ir,isViewSwitcherPolicy as Lr,pageIndexForToggle as Rr,shouldRevealViewSwitcherBar as zr,toggleIndexForPage as Br,viewSwitcherBadgeLabel as Vr,viewSwitcherButtonOrientation as Hr,viewSwitcherIconName as Ur,viewSwitcherIndicatorDescription as Wr,viewSwitcherLabel as Gr,viewSwitcherPageFromStackPage as Kr,viewSwitcherPagesFromStack as qr}from"./view-switcher.js";import{DEFAULT_TAB_AUTOHIDE as Jr,TabViewState as Yr,isDescendantOfPage as Xr,successorAfterClose as Zr,tabCloseVisible as Qr,tabIconState as $r,tabTooltip as ei,tabTooltipIsMarkup as ti,tabsRevealed as ni}from"./tab-view.js";import{UNTITLED_PAGE_LABEL as ri,collectSearchRows as ii,countVisiblePages as ai,createSearchRowSubtitle as oi,defaultCaseFolder as si,derivePreferencesGroupHeader as ci,escapeMarkup as li,makeComparable as ui,rowMatchesQuery as di,searchPreferences as fi,stripMarkup as pi}from"./preferences.js";import{POPOVER_ITEM_RADIUS as mi,POPOVER_MENU_PADDING as hi,POPOVER_PADDING as gi,POPOVER_RADIUS as _i,PopoverState as vi,resolvePopoverKey as yi}from"./popover.js";import{ADW_WRAP_BOX_DEFAULT_ALIGN as bi,ADW_WRAP_BOX_DEFAULT_JUSTIFY as xi,ADW_WRAP_BOX_DEFAULT_JUSTIFY_LAST_LINE as Si,ADW_WRAP_BOX_DEFAULT_LENGTH_UNIT as Ci,ADW_WRAP_BOX_DEFAULT_PACK_DIRECTION as wi,ADW_WRAP_BOX_DEFAULT_SPACING as Ti,ADW_WRAP_BOX_DEFAULT_WRAP_POLICY as Ei,ADW_WRAP_BOX_JUSTIFY_MODES as Di,ADW_WRAP_BOX_NATURAL_LINE_LENGTH_UNSET as Oi,ADW_WRAP_BOX_PACK_DIRECTIONS as ki,ADW_WRAP_POLICIES as Ai,normalizeNaturalLineLength as ji,normalizeWrapBoxAlign as Mi,normalizeWrapBoxJustify as Ni,normalizeWrapBoxLengthUnit as Pi,normalizeWrapBoxPackDirection as Fi,normalizeWrapBoxSpacing as Ii,normalizeWrapPolicy as Li,resolveWrapBoxChildOrder as Ri,resolveWrapBoxLine as zi,wrapBoxLengthToPx as Bi,wrapPolicyFlexShrink as Vi}from"./wrap-box.js";export{i as ADW_ABOUT_DIALOG_LABELS,S as ADW_ACCENT_BG_COLORS,C as ADW_ACCENT_COLOR_NAMES,w as ADW_ACCENT_FG_COLOR,X as ADW_BANNER_BUTTON_STYLES,Z as ADW_BANNER_BUTTON_STYLE_CLASSES,Q as ADW_BANNER_DEFAULTS,ce as ADW_BUTTON_CONTENT_DEFAULTS,ye as ADW_BUTTON_STYLE_ALIASES,be as ADW_BUTTON_STYLE_CLASSES,Ve as ADW_CLAMP_DEFAULTS,He as ADW_CLAMP_SIZE_CLASSES,Jt as ADW_COMBO_NO_SELECTION,a as ADW_CREDITS_SECTION_TITLES,ht as ADW_DATA_GRID_ROW_VARIANTS,T as ADW_DEFAULT_ACCENT_COLOR,Pn as ADW_LENGTH_UNITS,o as ADW_LICENSES,s as ADW_LICENSE_ALIASES,c as ADW_LICENSE_DEFAULTS,l as ADW_LICENSE_WARRANTY_TEMPLATE,sn as ADW_SIDEBAR_NO_SELECTION,pn as ADW_SPINNER_CONTRACT_DISTANCE,mn as ADW_SPINNER_CYCLES_PER_LOOP,hn as ADW_SPINNER_CYCLE_LENGTH,gn as ADW_SPINNER_EXTEND_DISTANCE,_n as ADW_SPINNER_IDLE_DISTANCE,vn as ADW_SPINNER_MAX_ARC_LENGTH,Ue as ADW_SPINNER_MAX_SIZE,yn as ADW_SPINNER_MIN_ARC_LENGTH,We as ADW_SPINNER_MIN_SIZE,bn as ADW_SPINNER_N_CYCLES,xn as ADW_SPINNER_OVERLAP_DISTANCE,Sn as ADW_SPINNER_SPIN_DURATION_MS,Cn as ADW_SPINNER_START_ANGLE,wn as ADW_SPINNER_STILL_PROGRESS,Tn as ADW_SPINNER_TRACK_OPACITY,Rn as ADW_SWIPE_BORDER,Ge as ADW_TOOLBAR_BAR_CLASSES,Ke as ADW_TOOLBAR_VIEW_CLASSES,qe as ADW_TOOLBAR_VIEW_DEFAULTS,u as ADW_TRANSLATOR_CREDITS_SENTINELS,bi as ADW_WRAP_BOX_DEFAULT_ALIGN,xi as ADW_WRAP_BOX_DEFAULT_JUSTIFY,Si as ADW_WRAP_BOX_DEFAULT_JUSTIFY_LAST_LINE,Ci as ADW_WRAP_BOX_DEFAULT_LENGTH_UNIT,wi as ADW_WRAP_BOX_DEFAULT_PACK_DIRECTION,Ti as ADW_WRAP_BOX_DEFAULT_SPACING,Ei as ADW_WRAP_BOX_DEFAULT_WRAP_POLICY,Di as ADW_WRAP_BOX_JUSTIFY_MODES,Oi as ADW_WRAP_BOX_NATURAL_LINE_LENGTH_UNSET,ki as ADW_WRAP_BOX_PACK_DIRECTIONS,Ai as ADW_WRAP_POLICIES,z as AVATAR_COLORS,B as AVATAR_COLOR_COUNT,N as ActionRowState,Et as AdwAlertResponses,ae as AdwBreakpoint,Gt as AdwToast,Kt as AdwToastQueue,rn as BACK_BUTTON_FALLBACK_TOOLTIP,le as BUTTON_CONTENT_FALLBACK_ICON,ue as BUTTON_CONTENT_STYLE_CLASS,P as BUTTON_ROW_ACTIVATABLE,Dt as BottomSheetPresentation,F as ButtonRowState,kt as CAPS_LOCK_ICON_NAME,At as CAPS_LOCK_TOOLTIP,Ce as CAROUSEL_SCROLL_TIMEOUT_MS,we as CAROUSEL_SETTLE_EPSILON,Te as CarouselState,Yt as ComboState,gt as DATA_GRID_CELL_CLASS,_t as DATA_GRID_ROW_CLASS,Fn as DEFAULT_DPI,lr as DEFAULT_DROPDOWN_TOOLTIP,st as DEFAULT_ICON_COLOR,ct as DEFAULT_ICON_COLOR_DARK,xr as DEFAULT_INDICATOR_DESCRIPTION_STRINGS,zn as DEFAULT_MAX_SIDEBAR_WIDTH,Bn as DEFAULT_MIN_SIDEBAR_WIDTH,Vn as DEFAULT_SIDEBAR_WIDTH_FRACTION,Hn as DEFAULT_SIDEBAR_WIDTH_UNIT,Jr as DEFAULT_TAB_AUTOHIDE,qt as DEFAULT_TOAST_TIMEOUT,jt as EMPTY_ANIMATION_DURATION_MS,Mt as ENTRY_ROW_APPLY_ICON_NAME,Nt as ENTRY_ROW_APPLY_TOOLTIP,Pt as ENTRY_ROW_EDIT_ICON_NAME,Ft as ENTRY_ROW_MAX_LENGTH_LIMIT,It as ENTRY_ROW_TITLE_SPACING,Lt as EntryRowState,Xt as ExpanderState,d as GTK_LICENSE,Sr as INLINE_VIEW_SWITCHER_DISPLAY_MODES,Un as INSTANT_SPLIT_VIEW_ANIMATOR,Wn as NAVIGATION_SPLIT_VIEW_CRITICALS,Gn as NavigationSplitViewState,an as NavigationViewState,Kn as OverlaySplitViewState,Rt as PASSWORD_CONCEAL_ICON_NAME,zt as PASSWORD_CONCEAL_LABEL,Bt as PASSWORD_REVEAL_ICON_NAME,Vt as PASSWORD_REVEAL_LABEL,mi as POPOVER_ITEM_RADIUS,hi as POPOVER_MENU_PADDING,gi as POPOVER_PADDING,_i as POPOVER_RADIUS,Ht as PasswordEntryRowState,vi as PopoverState,Fe as RadioGroupState,ur as SPLIT_BUTTON_DISABLED_OPACITY,cn as SidebarState,Zt as SpinState,dr as SplitButtonState,I as SwitchRowState,Yr as TabViewState,Qt as ToggleGroupState,ri as UNTITLED_PAGE_LABEL,Cr as VIEW_SWITCHER_BADGE_LIMIT,wr as VIEW_SWITCHER_DRAG_SWITCH_DELAY,Tr as VIEW_SWITCHER_FALLBACK_ICON,Er as VIEW_SWITCHER_NO_SELECTION,Dr as VIEW_SWITCHER_POLICIES,en as ViewStackState,Or as ViewSwitcherBarState,kr as ViewSwitcherDragSwitch,Ar as ViewSwitcherState,L as WindowTitleState,f as aboutDialogVisibility,ln as adjustSidebarSelection,In as adwLengthToPx,Le as adwLerp,E as adwaitaAccent,D as adwaitaAccentBgColor,O as adwaitaAccentColor,lt as adwaitaColorScheme,k as adwaitaStandaloneColor,V as avatarColor,H as avatarColorClass,U as avatarFontSize,W as avatarInitials,G as avatarMaxFontSize,K as avatarMode,$ as bannerButtonStyleClasses,ee as bannerButtonText,te as bannerButtonVisible,ne as bannerRenderState,jr as buildInlineToggles,Mr as buildViewSwitcherButtons,de as buttonContentEllipsize,fe as buttonContentIconExpands,pe as buttonContentIconIsEmpty,me as buttonContentIconName,he as buttonContentLabelText,ge as buttonContentLabelVisible,_e as buttonContentRenderState,ve as buttonContentStyleTargetIndex,xe as buttonStyleClass,Se as buttonStyleClasses,Ee as carouselClampPosition,De as carouselClosestSnapPoint,Oe as carouselNavigateTarget,ke as carouselPageAtPosition,Ae as carouselRange,je as carouselReorderShift,Me as carouselSizesFromSnapPoints,Ne as carouselSnapPoints,Pe as carouselWheelStep,Je as clampAllocate,Ye as clampChildSize,Ut as clampEntryText,un as clampSidebarSelection,Xe as clampSizeFromChild,Ze as clampThresholds,ii as collectSearchRows,ai as countVisiblePages,oi as createSearchRowSubtitle,Nr as createViewSwitcherPage,p as creditsSections,vt as dataGridCellText,yt as dataGridColumnAlign,bt as dataGridColumnClasses,xt as dataGridRowInteractive,St as dataGridTrackTemplate,Ct as dataGridTracks,si as defaultCaseFolder,ci as derivePreferencesGroupHeader,R as deriveRowLabels,on as describeNavigationDiagnostic,Re as easeInOutSine,ze as easeOutCubic,Wt as entryTextLength,li as escapeMarkup,oe as evaluateBreakpointCondition,q as flattenAvatarGradient,dn as flattenSidebarItems,J as gStrHash,e as gStrStrip,t as glibClamp,Pr as inlineToggleTooltip,Be as inverseLerp,A as isAdwAccentColorName,re as isBannerButtonStyle,Xr as isDescendantOfPage,Fr as isInlineViewSwitcherDisplayMode,m as isLicenseType,qn as isSidebarAtVisualStart,fr as isSplitButtonDirection,ut as isThemeIconColor,Ir as isViewSwitcherButtonVisible,Lr as isViewSwitcherPolicy,Jn as layoutNavigationSplitView,Yn as layoutOverlaySplitView,h as legalSectionVisible,g as licenseText,_ as licenseTypeForSpdxId,ui as makeComparable,Xn as measureSplitViewHorizontal,pr as menuButtonArrowIcon,mr as menuButtonPopupDirection,Qe as normalizeClampSize,$t as normalizeComboOptions,wt as normalizeDataGridColumns,Tt as normalizeDataGridVariant,tn as normalizeIconName,Ln as normalizeLengthUnit,ji as normalizeNaturalLineLength,En as normalizeSpinnerAngle,Mi as normalizeWrapBoxAlign,Ni as normalizeWrapBoxJustify,Pi as normalizeWrapBoxLengthUnit,Fi as normalizeWrapBoxPackDirection,Ii as normalizeWrapBoxSpacing,Li as normalizeWrapPolicy,j as onAdwaitaAccentChanged,dt as onAdwaitaColorSchemeChanged,Rr as pageIndexForToggle,jn as parseAccelerator,ie as parseBannerButtonStyle,se as parseBreakpointCondition,v as parseCreditPerson,hr as parseMenuEntries,Mn as parseShortcutLabel,$e as parseToolbarStyle,Y as randomAvatarColorClass,Ot as resolveBottomSheetClose,Ie as resolveCheckState,gr as resolveDropdownTooltip,Zn as resolveNaturalSidebarWidth,Qn as resolveNavigationAction,$n as resolveNavigationSidebarWidth,er as resolveNavigationStack,tr as resolveOverlaySidebarWidth,nn as resolvePageTitle,yi as resolvePopoverKey,nr as resolveSidebarBounds,et as resolveSpinnerSize,rr as resolveSwipeArea,ir as resolveSwipeRelease,ar as resolveSwipeSnapPoints,or as resolveSwipeStart,Ri as resolveWrapBoxChildOrder,zi as resolveWrapBoxLine,di as rowMatchesQuery,fi as searchPreferences,M as setAdwaitaAccent,ft as setAdwaitaColorScheme,y as setLicense,b as setLicenseType,Nn as shortcutKeycaps,zr as shouldRevealViewSwitcherBar,fn as sidebarHeaders,Dn as spinnerArc,On as spinnerArcEnd,kn as spinnerArcStart,tt as spinnerGeometry,An as spinnerProgressAt,_r as splitButtonArrowIcon,vr as splitButtonPopupDirection,yr as splitButtonRootState,br as splitButtonStyleClasses,n as stringIsNotEmpty,pi as stripMarkup,r as stripMnemonic,Zr as successorAfterClose,sr as swipeCancelProgress,Qr as tabCloseVisible,$r as tabIconState,ei as tabTooltip,ti as tabTooltipIsMarkup,ni as tabsRevealed,cr as tagsConflict,pt as themeIconColor,mt as toggleAdwaitaColorScheme,Br as toggleIndexForPage,nt as toolbarBarStyleClasses,rt as toolbarViewAllocate,it as toolbarViewClasses,at as toolbarViewContentForSize,ot as toolbarViewMeasure,x as translatorCreditsPeople,Vr as viewSwitcherBadgeLabel,Hr as viewSwitcherButtonOrientation,Ur as viewSwitcherIconName,Wr as viewSwitcherIndicatorDescription,Gr as viewSwitcherLabel,Kr as viewSwitcherPageFromStackPage,qr as viewSwitcherPagesFromStack,Bi as wrapBoxLengthToPx,Vi as wrapPolicyFlexShrink};
|
|
1
|
+
import{gStrStrip as e,glibClamp as t,stringIsNotEmpty as n,stripMnemonic as r}from"./glib.js";import{ADW_ABOUT_DIALOG_LABELS as i,ADW_CREDITS_SECTION_TITLES as a,ADW_LICENSES as o,ADW_LICENSE_ALIASES as s,ADW_LICENSE_DEFAULTS as c,ADW_LICENSE_WARRANTY_TEMPLATE as l,ADW_TRANSLATOR_CREDITS_SENTINELS as u,GTK_LICENSE as d,aboutDialogVisibility as f,creditsSections as p,isLicenseType as m,legalSectionVisible as h,licenseText as g,licenseTypeForSpdxId as _,parseCreditPerson as v,setLicense as y,setLicenseType as b,translatorCreditsPeople as x}from"./about-dialog.js";import{ADW_ACCENT_BG_COLORS as S,ADW_ACCENT_COLOR_NAMES as C,ADW_ACCENT_FG_COLOR as w,ADW_DEFAULT_ACCENT_COLOR as T,adwaitaAccent as E,adwaitaAccentBgColor as D,adwaitaAccentColor as O,adwaitaStandaloneColor as k,isAdwAccentColorName as A,onAdwaitaAccentChanged as j,setAdwaitaAccent as M}from"./accent.js";import{ActionRowState as N,BUTTON_ROW_ACTIVATABLE as P,ButtonRowState as F,SwitchRowState as I,WindowTitleState as L,deriveRowLabels as R}from"./action-row.js";import{AVATAR_COLORS as z,AVATAR_COLOR_COUNT as B,avatarColor as V,avatarColorClass as H,avatarFontSize as U,avatarInitials as W,avatarMaxFontSize as G,avatarMode as K,flattenAvatarGradient as q,gStrHash as J,randomAvatarColorClass as Y}from"./avatar.js";import{ADW_BANNER_BUTTON_STYLES as X,ADW_BANNER_BUTTON_STYLE_CLASSES as Z,ADW_BANNER_DEFAULTS as Q,bannerButtonStyleClasses as $,bannerButtonText as ee,bannerButtonVisible as te,bannerRenderState as ne,isBannerButtonStyle as re,parseBannerButtonStyle as ie}from"./banner.js";import{AdwBreakpoint as ae,evaluateBreakpointCondition as oe,parseBreakpointCondition as se}from"./breakpoint.js";import{ADW_BUTTON_CONTENT_DEFAULTS as ce,BUTTON_CONTENT_FALLBACK_ICON as le,BUTTON_CONTENT_STYLE_CLASS as ue,buttonContentEllipsize as de,buttonContentIconExpands as fe,buttonContentIconIsEmpty as pe,buttonContentIconName as me,buttonContentLabelText as he,buttonContentLabelVisible as ge,buttonContentRenderState as _e,buttonContentStyleTargetIndex as ve}from"./button-content.js";import{ADW_BUTTON_STYLE_ALIASES as ye,ADW_BUTTON_STYLE_CLASSES as be,buttonStyleClass as xe,buttonStyleClasses as Se}from"./button.js";import{CAROUSEL_SCROLL_TIMEOUT_MS as Ce,CAROUSEL_SETTLE_EPSILON as we,CarouselState as Te,carouselClampPosition as Ee,carouselClosestSnapPoint as De,carouselNavigateTarget as Oe,carouselPageAllocation as ke,carouselPageAtPosition as Ae,carouselRange as je,carouselReorderShift as Me,carouselSizesFromSnapPoints as Ne,carouselSnapPoints as Pe,carouselWheelStep as Fe}from"./carousel.js";import{RadioGroupState as Ie,resolveCheckState as Le}from"./checks.js";import{adwLerp as Re,easeInOutSine as ze,easeOutCubic as Be,inverseLerp as Ve}from"./easing.js";import{ADW_CLAMP_DEFAULTS as He,ADW_CLAMP_SIZE_CLASSES as Ue,ADW_SPINNER_MAX_SIZE as We,ADW_SPINNER_MIN_SIZE as Ge,ADW_TOOLBAR_BAR_CLASSES as Ke,ADW_TOOLBAR_VIEW_CLASSES as qe,ADW_TOOLBAR_VIEW_DEFAULTS as Je,clampAllocate as Ye,clampChildSize as Xe,clampSizeFromChild as Ze,clampThresholds as Qe,normalizeClampSize as $e,parseToolbarStyle as et,resolveSpinnerSize as tt,spinnerGeometry as nt,toolbarBarStyleClasses as rt,toolbarViewAllocate as it,toolbarViewClasses as at,toolbarViewContentForSize as ot,toolbarViewMeasure as st}from"./chrome.js";import{DEFAULT_ICON_COLOR as ct,DEFAULT_ICON_COLOR_DARK as lt,adwaitaColorScheme as ut,isThemeIconColor as dt,onAdwaitaColorSchemeChanged as ft,setAdwaitaColorScheme as pt,themeIconColor as mt,toggleAdwaitaColorScheme as ht}from"./color-scheme.js";import{ADW_DATA_GRID_ROW_VARIANTS as gt,DATA_GRID_CELL_CLASS as _t,DATA_GRID_ROW_CLASS as vt,dataGridCellText as yt,dataGridColumnAlign as bt,dataGridColumnClasses as xt,dataGridRowInteractive as St,dataGridTrackTemplate as Ct,dataGridTracks as wt,normalizeDataGridColumns as Tt,normalizeDataGridVariant as Et}from"./data-grid.js";import{AdwAlertResponses as Dt,BottomSheetPresentation as Ot,resolveBottomSheetClose as kt}from"./dialog.js";import{CAPS_LOCK_ICON_NAME as At,CAPS_LOCK_TOOLTIP as jt,EMPTY_ANIMATION_DURATION_MS as Mt,ENTRY_ROW_APPLY_ICON_NAME as Nt,ENTRY_ROW_APPLY_TOOLTIP as Pt,ENTRY_ROW_EDIT_ICON_NAME as Ft,ENTRY_ROW_MAX_LENGTH_LIMIT as It,ENTRY_ROW_TITLE_SPACING as Lt,EntryRowState as Rt,PASSWORD_CONCEAL_ICON_NAME as zt,PASSWORD_CONCEAL_LABEL as Bt,PASSWORD_REVEAL_ICON_NAME as Vt,PASSWORD_REVEAL_LABEL as Ht,PasswordEntryRowState as Ut,clampEntryText as Wt,entryTextLength as Gt}from"./entry-row.js";import{AdwToast as Kt,AdwToastQueue as qt,DEFAULT_TOAST_TIMEOUT as Jt}from"./toast.js";import{ADW_COMBO_NO_SELECTION as Yt,ComboState as Xt,ExpanderState as Zt,SpinState as Qt,ToggleGroupState as $t,normalizeComboOptions as en}from"./rows.js";import{ViewStackState as tn,normalizeIconName as nn,resolvePageTitle as rn}from"./view-stack.js";import{BACK_BUTTON_FALLBACK_TOOLTIP as an,NavigationViewState as on,describeNavigationDiagnostic as sn}from"./navigation-view.js";import{ADW_SIDEBAR_NO_SELECTION as cn,SidebarState as ln,adjustSidebarSelection as un,clampSidebarSelection as dn,flattenSidebarItems as fn,sidebarHeaders as pn}from"./sidebar.js";import{ADW_SPINNER_CONTRACT_DISTANCE as mn,ADW_SPINNER_CYCLES_PER_LOOP as hn,ADW_SPINNER_CYCLE_LENGTH as gn,ADW_SPINNER_EXTEND_DISTANCE as _n,ADW_SPINNER_IDLE_DISTANCE as vn,ADW_SPINNER_MAX_ARC_LENGTH as yn,ADW_SPINNER_MIN_ARC_LENGTH as bn,ADW_SPINNER_N_CYCLES as xn,ADW_SPINNER_OVERLAP_DISTANCE as Sn,ADW_SPINNER_SPIN_DURATION_MS as Cn,ADW_SPINNER_START_ANGLE as wn,ADW_SPINNER_STILL_PROGRESS as Tn,ADW_SPINNER_TRACK_OPACITY as En,normalizeSpinnerAngle as Dn,spinnerArc as On,spinnerArcEnd as kn,spinnerArcStart as An,spinnerProgressAt as jn}from"./spinner.js";import{parseAccelerator as Mn,parseShortcutLabel as Nn,shortcutKeycaps as Pn}from"./shortcut-label.js";import{ADW_LENGTH_UNITS as Fn,DEFAULT_DPI as In,adwLengthToPx as Ln,normalizeLengthUnit as Rn}from"./length-unit.js";import{ADW_SWIPE_BORDER as zn,DEFAULT_MAX_SIDEBAR_WIDTH as Bn,DEFAULT_MIN_SIDEBAR_WIDTH as Vn,DEFAULT_SIDEBAR_WIDTH_FRACTION as Hn,DEFAULT_SIDEBAR_WIDTH_UNIT as Un,INSTANT_SPLIT_VIEW_ANIMATOR as Wn,NAVIGATION_SPLIT_VIEW_CRITICALS as Gn,NavigationSplitViewState as Kn,OverlaySplitViewState as qn,isSidebarAtVisualStart as Jn,layoutNavigationSplitView as Yn,layoutOverlaySplitView as Xn,measureSplitViewHorizontal as Zn,resolveNaturalSidebarWidth as Qn,resolveNavigationAction as $n,resolveNavigationSidebarWidth as er,resolveNavigationStack as tr,resolveOverlaySidebarWidth as nr,resolveSidebarBounds as rr,resolveSwipeArea as ir,resolveSwipeRelease as ar,resolveSwipeSnapPoints as or,resolveSwipeStart as sr,swipeCancelProgress as cr,tagsConflict as lr}from"./split-view.js";import{DEFAULT_DROPDOWN_TOOLTIP as ur,SPLIT_BUTTON_DISABLED_OPACITY as dr,SplitButtonState as fr,isSplitButtonDirection as pr,menuButtonArrowIcon as mr,menuButtonPopupDirection as hr,parseMenuEntries as gr,resolveDropdownTooltip as _r,splitButtonArrowIcon as vr,splitButtonPopupDirection as yr,splitButtonRootState as br,splitButtonStyleClasses as xr}from"./split-button.js";import{DEFAULT_INDICATOR_DESCRIPTION_STRINGS as Sr,INLINE_VIEW_SWITCHER_DISPLAY_MODES as Cr,VIEW_SWITCHER_BADGE_LIMIT as wr,VIEW_SWITCHER_DRAG_SWITCH_DELAY as Tr,VIEW_SWITCHER_FALLBACK_ICON as Er,VIEW_SWITCHER_NO_SELECTION as Dr,VIEW_SWITCHER_POLICIES as Or,ViewSwitcherBarState as kr,ViewSwitcherDragSwitch as Ar,ViewSwitcherState as jr,buildInlineToggles as Mr,buildViewSwitcherButtons as Nr,createViewSwitcherPage as Pr,inlineToggleTooltip as Fr,isInlineViewSwitcherDisplayMode as Ir,isViewSwitcherButtonVisible as Lr,isViewSwitcherPolicy as Rr,pageIndexForToggle as zr,shouldRevealViewSwitcherBar as Br,toggleIndexForPage as Vr,viewSwitcherBadgeLabel as Hr,viewSwitcherButtonOrientation as Ur,viewSwitcherIconName as Wr,viewSwitcherIndicatorDescription as Gr,viewSwitcherLabel as Kr,viewSwitcherPageFromStackPage as qr,viewSwitcherPagesFromStack as Jr}from"./view-switcher.js";import{DEFAULT_TAB_AUTOHIDE as Yr,TabViewState as Xr,isDescendantOfPage as Zr,successorAfterClose as Qr,tabCloseVisible as $r,tabIconState as ei,tabTooltip as ti,tabTooltipIsMarkup as ni,tabsRevealed as ri}from"./tab-view.js";import{UNTITLED_PAGE_LABEL as ii,collectSearchRows as ai,countVisiblePages as oi,createSearchRowSubtitle as si,defaultCaseFolder as ci,derivePreferencesGroupHeader as li,escapeMarkup as ui,makeComparable as di,rowMatchesQuery as fi,searchPreferences as pi,stripMarkup as mi}from"./preferences.js";import{ADW_MAX_OVERSHOOT_DISTANCE as hi,ADW_OVERSHOOT_SETTLE_MS as gi,ADW_UNDERSHOOT_CLASSES as _i,ADW_UNDERSHOOT_SIZE as vi,accumulateOvershoot as yi,isScrolledFromEnd as bi,isScrolledFromStart as xi,overshootDistance as Si,scrollMaxValue as Ci,scrollUndershootClasses as wi}from"./scrolling.js";import{POPOVER_ITEM_RADIUS as Ti,POPOVER_MENU_PADDING as Ei,POPOVER_PADDING as Di,POPOVER_RADIUS as Oi,PopoverState as ki,resolvePopoverKey as Ai}from"./popover.js";import{ADW_WRAP_BOX_DEFAULT_ALIGN as ji,ADW_WRAP_BOX_DEFAULT_JUSTIFY as Mi,ADW_WRAP_BOX_DEFAULT_JUSTIFY_LAST_LINE as Ni,ADW_WRAP_BOX_DEFAULT_LENGTH_UNIT as Pi,ADW_WRAP_BOX_DEFAULT_PACK_DIRECTION as Fi,ADW_WRAP_BOX_DEFAULT_SPACING as Ii,ADW_WRAP_BOX_DEFAULT_WRAP_POLICY as Li,ADW_WRAP_BOX_JUSTIFY_MODES as Ri,ADW_WRAP_BOX_NATURAL_LINE_LENGTH_UNSET as zi,ADW_WRAP_BOX_PACK_DIRECTIONS as Bi,ADW_WRAP_POLICIES as Vi,normalizeNaturalLineLength as Hi,normalizeWrapBoxAlign as Ui,normalizeWrapBoxJustify as Wi,normalizeWrapBoxLengthUnit as Gi,normalizeWrapBoxPackDirection as Ki,normalizeWrapBoxSpacing as qi,normalizeWrapPolicy as Ji,resolveWrapBoxChildOrder as Yi,resolveWrapBoxLine as Xi,wrapBoxLengthToPx as Zi,wrapPolicyFlexShrink as Qi}from"./wrap-box.js";export{i as ADW_ABOUT_DIALOG_LABELS,S as ADW_ACCENT_BG_COLORS,C as ADW_ACCENT_COLOR_NAMES,w as ADW_ACCENT_FG_COLOR,X as ADW_BANNER_BUTTON_STYLES,Z as ADW_BANNER_BUTTON_STYLE_CLASSES,Q as ADW_BANNER_DEFAULTS,ce as ADW_BUTTON_CONTENT_DEFAULTS,ye as ADW_BUTTON_STYLE_ALIASES,be as ADW_BUTTON_STYLE_CLASSES,He as ADW_CLAMP_DEFAULTS,Ue as ADW_CLAMP_SIZE_CLASSES,Yt as ADW_COMBO_NO_SELECTION,a as ADW_CREDITS_SECTION_TITLES,gt as ADW_DATA_GRID_ROW_VARIANTS,T as ADW_DEFAULT_ACCENT_COLOR,Fn as ADW_LENGTH_UNITS,o as ADW_LICENSES,s as ADW_LICENSE_ALIASES,c as ADW_LICENSE_DEFAULTS,l as ADW_LICENSE_WARRANTY_TEMPLATE,hi as ADW_MAX_OVERSHOOT_DISTANCE,gi as ADW_OVERSHOOT_SETTLE_MS,cn as ADW_SIDEBAR_NO_SELECTION,mn as ADW_SPINNER_CONTRACT_DISTANCE,hn as ADW_SPINNER_CYCLES_PER_LOOP,gn as ADW_SPINNER_CYCLE_LENGTH,_n as ADW_SPINNER_EXTEND_DISTANCE,vn as ADW_SPINNER_IDLE_DISTANCE,yn as ADW_SPINNER_MAX_ARC_LENGTH,We as ADW_SPINNER_MAX_SIZE,bn as ADW_SPINNER_MIN_ARC_LENGTH,Ge as ADW_SPINNER_MIN_SIZE,xn as ADW_SPINNER_N_CYCLES,Sn as ADW_SPINNER_OVERLAP_DISTANCE,Cn as ADW_SPINNER_SPIN_DURATION_MS,wn as ADW_SPINNER_START_ANGLE,Tn as ADW_SPINNER_STILL_PROGRESS,En as ADW_SPINNER_TRACK_OPACITY,zn as ADW_SWIPE_BORDER,Ke as ADW_TOOLBAR_BAR_CLASSES,qe as ADW_TOOLBAR_VIEW_CLASSES,Je as ADW_TOOLBAR_VIEW_DEFAULTS,u as ADW_TRANSLATOR_CREDITS_SENTINELS,_i as ADW_UNDERSHOOT_CLASSES,vi as ADW_UNDERSHOOT_SIZE,ji as ADW_WRAP_BOX_DEFAULT_ALIGN,Mi as ADW_WRAP_BOX_DEFAULT_JUSTIFY,Ni as ADW_WRAP_BOX_DEFAULT_JUSTIFY_LAST_LINE,Pi as ADW_WRAP_BOX_DEFAULT_LENGTH_UNIT,Fi as ADW_WRAP_BOX_DEFAULT_PACK_DIRECTION,Ii as ADW_WRAP_BOX_DEFAULT_SPACING,Li as ADW_WRAP_BOX_DEFAULT_WRAP_POLICY,Ri as ADW_WRAP_BOX_JUSTIFY_MODES,zi as ADW_WRAP_BOX_NATURAL_LINE_LENGTH_UNSET,Bi as ADW_WRAP_BOX_PACK_DIRECTIONS,Vi as ADW_WRAP_POLICIES,z as AVATAR_COLORS,B as AVATAR_COLOR_COUNT,N as ActionRowState,Dt as AdwAlertResponses,ae as AdwBreakpoint,Kt as AdwToast,qt as AdwToastQueue,an as BACK_BUTTON_FALLBACK_TOOLTIP,le as BUTTON_CONTENT_FALLBACK_ICON,ue as BUTTON_CONTENT_STYLE_CLASS,P as BUTTON_ROW_ACTIVATABLE,Ot as BottomSheetPresentation,F as ButtonRowState,At as CAPS_LOCK_ICON_NAME,jt as CAPS_LOCK_TOOLTIP,Ce as CAROUSEL_SCROLL_TIMEOUT_MS,we as CAROUSEL_SETTLE_EPSILON,Te as CarouselState,Xt as ComboState,_t as DATA_GRID_CELL_CLASS,vt as DATA_GRID_ROW_CLASS,In as DEFAULT_DPI,ur as DEFAULT_DROPDOWN_TOOLTIP,ct as DEFAULT_ICON_COLOR,lt as DEFAULT_ICON_COLOR_DARK,Sr as DEFAULT_INDICATOR_DESCRIPTION_STRINGS,Bn as DEFAULT_MAX_SIDEBAR_WIDTH,Vn as DEFAULT_MIN_SIDEBAR_WIDTH,Hn as DEFAULT_SIDEBAR_WIDTH_FRACTION,Un as DEFAULT_SIDEBAR_WIDTH_UNIT,Yr as DEFAULT_TAB_AUTOHIDE,Jt as DEFAULT_TOAST_TIMEOUT,Mt as EMPTY_ANIMATION_DURATION_MS,Nt as ENTRY_ROW_APPLY_ICON_NAME,Pt as ENTRY_ROW_APPLY_TOOLTIP,Ft as ENTRY_ROW_EDIT_ICON_NAME,It as ENTRY_ROW_MAX_LENGTH_LIMIT,Lt as ENTRY_ROW_TITLE_SPACING,Rt as EntryRowState,Zt as ExpanderState,d as GTK_LICENSE,Cr as INLINE_VIEW_SWITCHER_DISPLAY_MODES,Wn as INSTANT_SPLIT_VIEW_ANIMATOR,Gn as NAVIGATION_SPLIT_VIEW_CRITICALS,Kn as NavigationSplitViewState,on as NavigationViewState,qn as OverlaySplitViewState,zt as PASSWORD_CONCEAL_ICON_NAME,Bt as PASSWORD_CONCEAL_LABEL,Vt as PASSWORD_REVEAL_ICON_NAME,Ht as PASSWORD_REVEAL_LABEL,Ti as POPOVER_ITEM_RADIUS,Ei as POPOVER_MENU_PADDING,Di as POPOVER_PADDING,Oi as POPOVER_RADIUS,Ut as PasswordEntryRowState,ki as PopoverState,Ie as RadioGroupState,dr as SPLIT_BUTTON_DISABLED_OPACITY,ln as SidebarState,Qt as SpinState,fr as SplitButtonState,I as SwitchRowState,Xr as TabViewState,$t as ToggleGroupState,ii as UNTITLED_PAGE_LABEL,wr as VIEW_SWITCHER_BADGE_LIMIT,Tr as VIEW_SWITCHER_DRAG_SWITCH_DELAY,Er as VIEW_SWITCHER_FALLBACK_ICON,Dr as VIEW_SWITCHER_NO_SELECTION,Or as VIEW_SWITCHER_POLICIES,tn as ViewStackState,kr as ViewSwitcherBarState,Ar as ViewSwitcherDragSwitch,jr as ViewSwitcherState,L as WindowTitleState,f as aboutDialogVisibility,yi as accumulateOvershoot,un as adjustSidebarSelection,Ln as adwLengthToPx,Re as adwLerp,E as adwaitaAccent,D as adwaitaAccentBgColor,O as adwaitaAccentColor,ut as adwaitaColorScheme,k as adwaitaStandaloneColor,V as avatarColor,H as avatarColorClass,U as avatarFontSize,W as avatarInitials,G as avatarMaxFontSize,K as avatarMode,$ as bannerButtonStyleClasses,ee as bannerButtonText,te as bannerButtonVisible,ne as bannerRenderState,Mr as buildInlineToggles,Nr as buildViewSwitcherButtons,de as buttonContentEllipsize,fe as buttonContentIconExpands,pe as buttonContentIconIsEmpty,me as buttonContentIconName,he as buttonContentLabelText,ge as buttonContentLabelVisible,_e as buttonContentRenderState,ve as buttonContentStyleTargetIndex,xe as buttonStyleClass,Se as buttonStyleClasses,Ee as carouselClampPosition,De as carouselClosestSnapPoint,Oe as carouselNavigateTarget,ke as carouselPageAllocation,Ae as carouselPageAtPosition,je as carouselRange,Me as carouselReorderShift,Ne as carouselSizesFromSnapPoints,Pe as carouselSnapPoints,Fe as carouselWheelStep,Ye as clampAllocate,Xe as clampChildSize,Wt as clampEntryText,dn as clampSidebarSelection,Ze as clampSizeFromChild,Qe as clampThresholds,ai as collectSearchRows,oi as countVisiblePages,si as createSearchRowSubtitle,Pr as createViewSwitcherPage,p as creditsSections,yt as dataGridCellText,bt as dataGridColumnAlign,xt as dataGridColumnClasses,St as dataGridRowInteractive,Ct as dataGridTrackTemplate,wt as dataGridTracks,ci as defaultCaseFolder,li as derivePreferencesGroupHeader,R as deriveRowLabels,sn as describeNavigationDiagnostic,ze as easeInOutSine,Be as easeOutCubic,Gt as entryTextLength,ui as escapeMarkup,oe as evaluateBreakpointCondition,q as flattenAvatarGradient,fn as flattenSidebarItems,J as gStrHash,e as gStrStrip,t as glibClamp,Fr as inlineToggleTooltip,Ve as inverseLerp,A as isAdwAccentColorName,re as isBannerButtonStyle,Zr as isDescendantOfPage,Ir as isInlineViewSwitcherDisplayMode,m as isLicenseType,bi as isScrolledFromEnd,xi as isScrolledFromStart,Jn as isSidebarAtVisualStart,pr as isSplitButtonDirection,dt as isThemeIconColor,Lr as isViewSwitcherButtonVisible,Rr as isViewSwitcherPolicy,Yn as layoutNavigationSplitView,Xn as layoutOverlaySplitView,h as legalSectionVisible,g as licenseText,_ as licenseTypeForSpdxId,di as makeComparable,Zn as measureSplitViewHorizontal,mr as menuButtonArrowIcon,hr as menuButtonPopupDirection,$e as normalizeClampSize,en as normalizeComboOptions,Tt as normalizeDataGridColumns,Et as normalizeDataGridVariant,nn as normalizeIconName,Rn as normalizeLengthUnit,Hi as normalizeNaturalLineLength,Dn as normalizeSpinnerAngle,Ui as normalizeWrapBoxAlign,Wi as normalizeWrapBoxJustify,Gi as normalizeWrapBoxLengthUnit,Ki as normalizeWrapBoxPackDirection,qi as normalizeWrapBoxSpacing,Ji as normalizeWrapPolicy,j as onAdwaitaAccentChanged,ft as onAdwaitaColorSchemeChanged,Si as overshootDistance,zr as pageIndexForToggle,Mn as parseAccelerator,ie as parseBannerButtonStyle,se as parseBreakpointCondition,v as parseCreditPerson,gr as parseMenuEntries,Nn as parseShortcutLabel,et as parseToolbarStyle,Y as randomAvatarColorClass,kt as resolveBottomSheetClose,Le as resolveCheckState,_r as resolveDropdownTooltip,Qn as resolveNaturalSidebarWidth,$n as resolveNavigationAction,er as resolveNavigationSidebarWidth,tr as resolveNavigationStack,nr as resolveOverlaySidebarWidth,rn as resolvePageTitle,Ai as resolvePopoverKey,rr as resolveSidebarBounds,tt as resolveSpinnerSize,ir as resolveSwipeArea,ar as resolveSwipeRelease,or as resolveSwipeSnapPoints,sr as resolveSwipeStart,Yi as resolveWrapBoxChildOrder,Xi as resolveWrapBoxLine,fi as rowMatchesQuery,Ci as scrollMaxValue,wi as scrollUndershootClasses,pi as searchPreferences,M as setAdwaitaAccent,pt as setAdwaitaColorScheme,y as setLicense,b as setLicenseType,Pn as shortcutKeycaps,Br as shouldRevealViewSwitcherBar,pn as sidebarHeaders,On as spinnerArc,kn as spinnerArcEnd,An as spinnerArcStart,nt as spinnerGeometry,jn as spinnerProgressAt,vr as splitButtonArrowIcon,yr as splitButtonPopupDirection,br as splitButtonRootState,xr as splitButtonStyleClasses,n as stringIsNotEmpty,mi as stripMarkup,r as stripMnemonic,Qr as successorAfterClose,cr as swipeCancelProgress,$r as tabCloseVisible,ei as tabIconState,ti as tabTooltip,ni as tabTooltipIsMarkup,ri as tabsRevealed,lr as tagsConflict,mt as themeIconColor,ht as toggleAdwaitaColorScheme,Vr as toggleIndexForPage,rt as toolbarBarStyleClasses,it as toolbarViewAllocate,at as toolbarViewClasses,ot as toolbarViewContentForSize,st as toolbarViewMeasure,x as translatorCreditsPeople,Hr as viewSwitcherBadgeLabel,Ur as viewSwitcherButtonOrientation,Wr as viewSwitcherIconName,Gr as viewSwitcherIndicatorDescription,Kr as viewSwitcherLabel,qr as viewSwitcherPageFromStackPage,Jr as viewSwitcherPagesFromStack,Zi as wrapBoxLengthToPx,Qi as wrapPolicyFlexShrink};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./_virtual/_rolldown/runtime.js";const e=40,t=100,n=50;function scrollMaxValue(e){return e.upper-e.pageSize}function isScrolledFromStart(e){return e.value>e.lower}function isScrolledFromEnd(e){return e.value<scrollMaxValue(e)}const r=[`undershoot-top`,`undershoot-bottom`,`undershoot-start`,`undershoot-end`];function scrollUndershootClasses(e){let t=[],{vertical:n,horizontal:r}=e;return n&&(isScrolledFromStart(n)&&t.push(`undershoot-top`),isScrolledFromEnd(n)&&t.push(`undershoot-bottom`)),r&&(isScrolledFromStart(r)&&t.push(`undershoot-start`),isScrolledFromEnd(r)&&t.push(`undershoot-end`)),t}function overshootDistance(e,t){let n=scrollMaxValue(t);return e<t.lower?e-t.lower:e>n?e-n:0}function accumulateOvershoot(e,t,n){let r=n.lower-100,i=scrollMaxValue(n)+100;return Math.min(Math.max(e+t,r),i)}export{t as ADW_MAX_OVERSHOOT_DISTANCE,n as ADW_OVERSHOOT_SETTLE_MS,r as ADW_UNDERSHOOT_CLASSES,e as ADW_UNDERSHOOT_SIZE,accumulateOvershoot,isScrolledFromEnd,isScrolledFromStart,overshootDistance,scrollMaxValue,scrollUndershootClasses};
|
package/lib/types/carousel.d.ts
CHANGED
|
@@ -61,6 +61,49 @@ export declare function carouselSnapPoints(sizes: readonly number[]): number[];
|
|
|
61
61
|
* per-page reveal state, since `AdwSwipeable` hands out snap points and never sizes.
|
|
62
62
|
*/
|
|
63
63
|
export declare function carouselSizesFromSnapPoints(points: readonly number[]): number[];
|
|
64
|
+
/**
|
|
65
|
+
* One page's measurement along the carousel's axis, in the terms
|
|
66
|
+
* `adw_carousel_size_allocate` asks each child for.
|
|
67
|
+
*/
|
|
68
|
+
export interface CarouselPageMeasurement {
|
|
69
|
+
/** What `gtk_widget_measure` reports as the natural size along that axis. */
|
|
70
|
+
natural: number;
|
|
71
|
+
/** What it reports as the minimum, `CLAMP`'s LOW bound. Defaults to 0. */
|
|
72
|
+
minimum?: number;
|
|
73
|
+
/** `gtk_widget_get_hexpand` (`get_vexpand` when vertical): this page wants the whole carousel. */
|
|
74
|
+
expand?: boolean;
|
|
75
|
+
}
|
|
76
|
+
/** The two lengths `adw_carousel_size_allocate` settles before it places anything. */
|
|
77
|
+
export interface CarouselPageAllocation {
|
|
78
|
+
/** `child_width` / `child_height`: the size EVERY page is allocated, not just the current one. */
|
|
79
|
+
pageSize: number;
|
|
80
|
+
/** `(width − child_width) / 2`: the empty half-gap the page strip starts at. */
|
|
81
|
+
leadingInset: number;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* How big every page is, and how far in from the carousel's edge the strip of pages
|
|
85
|
+
* starts (`adw_carousel_size_allocate`, adw-carousel.c:748-767 and :796-806).
|
|
86
|
+
*
|
|
87
|
+
* A page is NOT "the carousel's size". Every page is allocated the SAME size, the
|
|
88
|
+
* largest of what the pages ask for and never more than the carousel has: a page that
|
|
89
|
+
* expands takes the whole carousel, any other takes `CLAMP (natural, minimum,
|
|
90
|
+
* available)`. Whatever is left over is then split in half, because the strip is drawn
|
|
91
|
+
* at an offset of `-(width - child_width) / 2`, which centres the current page and lets
|
|
92
|
+
* the two neighbours show through at the edges by `leadingInset - spacing` each.
|
|
93
|
+
*
|
|
94
|
+
* That peek is why this is core arithmetic rather than a renderer's CSS: the web port
|
|
95
|
+
* pinned its pages at 100% of the carousel, which is right only when `leadingInset`
|
|
96
|
+
* happens to be 0, so a 440px page in a 480px carousel had both neighbours entirely off
|
|
97
|
+
* screen where GTK shows 20px of each.
|
|
98
|
+
*
|
|
99
|
+
* `glibClamp`, not `Math.min`/`Math.max`: `CLAMP` tests its HIGH bound first, so a page
|
|
100
|
+
* whose MINIMUM exceeds the carousel gets its minimum and the strip legitimately
|
|
101
|
+
* overhangs, with `leadingInset` going negative.
|
|
102
|
+
*
|
|
103
|
+
* The gap BETWEEN pages is not here: that is `spacing`, which
|
|
104
|
+
* {@link CarouselState.pageDistance} adds to this size to get `self->distance`.
|
|
105
|
+
*/
|
|
106
|
+
export declare function carouselPageAllocation(available: number, pages: readonly CarouselPageMeasurement[]): CarouselPageAllocation;
|
|
64
107
|
/**
|
|
65
108
|
* The scrollable range — `get_range`. `positionShift` is the pending compensation an
|
|
66
109
|
* insert/remove/reorder accumulates before the next allocation, and is part of the bound
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CarouselDirection, CarouselOrientation, CarouselScrollSource } from '../carousel.js';
|
|
1
|
+
import type { CarouselDirection, CarouselOrientation, CarouselPageMeasurement, CarouselScrollSource } from '../carousel.js';
|
|
2
2
|
/** One `carouselSnapPoints` expectation. */
|
|
3
3
|
export interface CarouselSnapPointVector {
|
|
4
4
|
/** Per-page reveal sizes: 0 while a page animates in, 1 once settled. */
|
|
@@ -28,6 +28,29 @@ export interface CarouselSizesFromSnapPointsVector {
|
|
|
28
28
|
* CORE-ONLY: an internal step of a pipeline whose COMPOSED result is renderer-driven — driving it separately would assert the same thing twice (CAROUSEL_PAGE_LIST_VECTORS)
|
|
29
29
|
*/
|
|
30
30
|
export declare const CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS: ReadonlyArray<CarouselSizesFromSnapPointsVector>;
|
|
31
|
+
/** One `carouselPageAllocation` expectation. */
|
|
32
|
+
export interface CarouselPageAllocationVector {
|
|
33
|
+
/** The carousel's own size along its axis: `width` as `size_allocate` receives it. */
|
|
34
|
+
available: number;
|
|
35
|
+
/** What each page measures, in C's terms. */
|
|
36
|
+
pages: readonly CarouselPageMeasurement[];
|
|
37
|
+
/** `child_width`: the size every page is allocated. */
|
|
38
|
+
pageSize: number;
|
|
39
|
+
/** `(available − pageSize) / 2`, the half-gap the strip starts at. */
|
|
40
|
+
leadingInset: number;
|
|
41
|
+
rule: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* `adw_carousel_size_allocate`'s page sizing (:748-767) and the centring offset it
|
|
45
|
+
* feeds (:796-806).
|
|
46
|
+
*
|
|
47
|
+
* The regression pin for the peek: in GTK the pages of the Carousel story (440px cards
|
|
48
|
+
* in a 480px carousel) leave 20px of the previous and next page showing at the two
|
|
49
|
+
* edges, and the web port showed neither, because its pages were CSS `flex: 0 0 100%`.
|
|
50
|
+
* A row here is a page size and the inset that follows from it; where the neighbours
|
|
51
|
+
* then land is `distance` away from that, which CAROUSEL_PAGE_LIST_VECTORS already owns.
|
|
52
|
+
*/
|
|
53
|
+
export declare const CAROUSEL_PAGE_ALLOCATION_VECTORS: ReadonlyArray<CarouselPageAllocationVector>;
|
|
31
54
|
/** One `carouselRange` expectation. */
|
|
32
55
|
export interface CarouselRangeVector {
|
|
33
56
|
snapPoints: readonly number[];
|
|
@@ -30,8 +30,8 @@ export { INLINE_TOGGLE_VECTORS, INLINE_TOOLTIP_VECTORS, VIEW_SWITCHER_BADGE_VECT
|
|
|
30
30
|
export type { ExpectedInlineToggle, ExpectedViewSwitcherButton, InlineToggleVector, InlineTooltipVector, MnemonicVector, ViewSwitcherBadgeVector, ViewSwitcherBarRevealVector, ViewSwitcherBarSnapshot, ViewSwitcherBarStep, ViewSwitcherBarVector, ViewSwitcherButtonVector, ViewSwitcherButtonVisibilityVector, ViewSwitcherClock, ViewSwitcherDragStep, ViewSwitcherDragVector, ViewSwitcherIconVector, ViewSwitcherRebuildVector, ViewSwitcherSelectionVector, ViewSwitcherVectorChange, ViewSwitcherVectorOp, ViewSwitcherVectorPage, } from './view-switcher.js';
|
|
31
31
|
export { TABS_REVEALED_VECTORS, TAB_CLOSE_VISIBLE_VECTORS, TAB_DESCENDANT_VECTORS, TAB_ICON_STATE_VECTORS, TAB_PAGE_DESCRIPTOR_VECTORS, TAB_SUCCESSOR_VECTORS, TAB_TOOLTIP_VECTORS, TAB_VIEW_VECTORS, applyTabViewOp, seedTabViewPages, tabViewClosing, tabViewOrder, } from './tab-view.js';
|
|
32
32
|
export type { TabCloseVisibleVector, TabDescendantVector, TabIconStateVector, TabPageDescriptorVector, TabSuccessorVector, TabTooltipVector, TabViewVector, TabViewVectorHandler, TabViewVectorOp, TabViewVectorPage, TabViewVectorPagesChange, TabViewVectorSelection, TabViewVectorTarget, TabsRevealedVector, } from './tab-view.js';
|
|
33
|
-
export { CAROUSEL_CLAMP_VECTORS, CAROUSEL_NAVIGATE_VECTORS, CAROUSEL_PAGE_AT_POSITION_VECTORS, CAROUSEL_PAGE_LIST_VECTORS, CAROUSEL_PROPERTY_DEFAULT_VECTORS, CAROUSEL_RANGE_VECTORS, CAROUSEL_REORDER_SHIFT_VECTORS, CAROUSEL_REVEAL_VECTORS, CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS, CAROUSEL_SNAP_POINT_VECTORS, CAROUSEL_WHEEL_LOCKOUT_VECTORS, CAROUSEL_WHEEL_VECTORS, } from './carousel.js';
|
|
34
|
-
export type { CarouselClampVector, CarouselNavigateVector, CarouselPageAtPositionVector, CarouselPageListVector, CarouselPageOp, CarouselPropertyDefaultVector, CarouselRangeVector, CarouselReorderShiftVector, CarouselRevealOp, CarouselRevealVector, CarouselSizesFromSnapPointsVector, CarouselSnapPointVector, CarouselStateSnapshot, CarouselWheelLockoutStep, CarouselWheelLockoutVector, CarouselWheelVector, } from './carousel.js';
|
|
33
|
+
export { CAROUSEL_CLAMP_VECTORS, CAROUSEL_NAVIGATE_VECTORS, CAROUSEL_PAGE_ALLOCATION_VECTORS, CAROUSEL_PAGE_AT_POSITION_VECTORS, CAROUSEL_PAGE_LIST_VECTORS, CAROUSEL_PROPERTY_DEFAULT_VECTORS, CAROUSEL_RANGE_VECTORS, CAROUSEL_REORDER_SHIFT_VECTORS, CAROUSEL_REVEAL_VECTORS, CAROUSEL_SIZES_FROM_SNAP_POINTS_VECTORS, CAROUSEL_SNAP_POINT_VECTORS, CAROUSEL_WHEEL_LOCKOUT_VECTORS, CAROUSEL_WHEEL_VECTORS, } from './carousel.js';
|
|
34
|
+
export type { CarouselClampVector, CarouselNavigateVector, CarouselPageAllocationVector, CarouselPageAtPositionVector, CarouselPageListVector, CarouselPageOp, CarouselPropertyDefaultVector, CarouselRangeVector, CarouselReorderShiftVector, CarouselRevealOp, CarouselRevealVector, CarouselSizesFromSnapPointsVector, CarouselSnapPointVector, CarouselStateSnapshot, CarouselWheelLockoutStep, CarouselWheelLockoutVector, CarouselWheelVector, } from './carousel.js';
|
|
35
35
|
export { DATA_GRID_CELL_TEXT_VECTORS, DATA_GRID_COLUMN_CLASS_VECTORS, DATA_GRID_COLUMN_NORMALIZE_VECTORS, DATA_GRID_INTERACTIVE_VECTORS, DATA_GRID_TRACK_VECTORS, DATA_GRID_VARIANT_VECTORS, } from './data-grid.js';
|
|
36
36
|
export type { DataGridCellTextVector, DataGridColumnClassVector, DataGridColumnNormalizeVector, DataGridInteractiveVector, DataGridTrackVector, DataGridVariantVector, } from './data-grid.js';
|
|
37
37
|
export { CASE_FOLD_VECTORS, MAKE_COMPARABLE_VECTORS, PREFERENCES_GROUP_HEADER_VECTORS, PREFERENCES_SEARCH_PAGES, PREFERENCES_SEARCH_VECTORS, ROW_MATCH_VECTORS, SEARCH_CORPUS_VECTORS, SEARCH_ROW_SUBTITLE_VECTORS, STRIP_MARKUP_VECTORS, STRIP_MNEMONIC_VECTORS, } from './preferences.js';
|
package/lib/types/index.d.ts
CHANGED
|
@@ -50,12 +50,14 @@ export { DEFAULT_INDICATOR_DESCRIPTION_STRINGS, INLINE_VIEW_SWITCHER_DISPLAY_MOD
|
|
|
50
50
|
export type { AdwInlineViewSwitcherDisplayMode, AdwViewSwitcherPage, AdwViewSwitcherPageInit, AdwViewSwitcherPolicy, IndicatorDescriptionStrings, InlineToggleModel, ViewSwitcherBarChange, ViewSwitcherBarListener, ViewSwitcherButtonModel, ViewSwitcherDragSwitchOptions, ViewSwitcherScheduler, ViewSwitcherStateChange, ViewSwitcherStateListener, ViewSwitcherStateOptions, ViewSwitcherTimerHandle, } from './view-switcher.js';
|
|
51
51
|
export { DEFAULT_TAB_AUTOHIDE, TabViewState, isDescendantOfPage, successorAfterClose, tabCloseVisible, tabIconState, tabTooltip, tabTooltipIsMarkup, tabsRevealed, } from './tab-view.js';
|
|
52
52
|
export type { AdwTabPageSpec, AdwTabPageState, TabIconState, TabViewHandlers, TabViewPagesChange, TabViewPagesChangeKind, TabViewPagesListener, TabViewSelectionChange, TabViewSelectionListener, } from './tab-view.js';
|
|
53
|
-
export { CAROUSEL_SCROLL_TIMEOUT_MS, CAROUSEL_SETTLE_EPSILON, CarouselState, carouselClampPosition, carouselClosestSnapPoint, carouselNavigateTarget, carouselPageAtPosition, carouselRange, carouselReorderShift, carouselSizesFromSnapPoints, carouselSnapPoints, carouselWheelStep, } from './carousel.js';
|
|
54
|
-
export type { CarouselChangeReason, CarouselDirection, CarouselOrientation, CarouselPageChangedListener, CarouselRange, CarouselReorderShiftInput, CarouselScrollOptions, CarouselScrollRequest, CarouselScrollSource, CarouselStateChange, CarouselStateListener, CarouselStateOptions, CarouselWheelInput, } from './carousel.js';
|
|
53
|
+
export { CAROUSEL_SCROLL_TIMEOUT_MS, CAROUSEL_SETTLE_EPSILON, CarouselState, carouselClampPosition, carouselClosestSnapPoint, carouselNavigateTarget, carouselPageAllocation, carouselPageAtPosition, carouselRange, carouselReorderShift, carouselSizesFromSnapPoints, carouselSnapPoints, carouselWheelStep, } from './carousel.js';
|
|
54
|
+
export type { CarouselChangeReason, CarouselDirection, CarouselOrientation, CarouselPageAllocation, CarouselPageChangedListener, CarouselPageMeasurement, CarouselRange, CarouselReorderShiftInput, CarouselScrollOptions, CarouselScrollRequest, CarouselScrollSource, CarouselStateChange, CarouselStateListener, CarouselStateOptions, CarouselWheelInput, } from './carousel.js';
|
|
55
55
|
export { UNTITLED_PAGE_LABEL, collectSearchRows, countVisiblePages, createSearchRowSubtitle, defaultCaseFolder, derivePreferencesGroupHeader, escapeMarkup, makeComparable, rowMatchesQuery, searchPreferences, stripMarkup, } from './preferences.js';
|
|
56
56
|
export type { CaseFolder, MakeComparableOptions, PreferencesGroupHeaderInput, PreferencesGroupHeaderState, PreferencesSearchEntry, PreferencesSearchGroup, PreferencesSearchPage, PreferencesSearchResult, PreferencesSearchRow, SearchPreferencesOptions, SearchRowSubtitleInput, } from './preferences.js';
|
|
57
57
|
export { ADW_CLAMP_DEFAULTS, ADW_CLAMP_SIZE_CLASSES, ADW_SPINNER_MAX_SIZE, ADW_SPINNER_MIN_SIZE, ADW_TOOLBAR_BAR_CLASSES, ADW_TOOLBAR_VIEW_CLASSES, ADW_TOOLBAR_VIEW_DEFAULTS, clampAllocate, clampChildSize, clampSizeFromChild, clampThresholds, normalizeClampSize, parseToolbarStyle, resolveSpinnerSize, spinnerGeometry, toolbarBarStyleClasses, toolbarViewAllocate, toolbarViewClasses, toolbarViewContentForSize, toolbarViewMeasure, } from './chrome.js';
|
|
58
58
|
export type { AdwClampSizeClass, AdwMeasurement, AdwToolbarStyle, ClampAllocation, ClampParams, ClampThresholds, SpinnerGeometry, ToolbarViewAllocateInput, ToolbarViewAllocation, ToolbarViewClassInput, ToolbarViewClasses, ToolbarViewContentForSize, ToolbarViewContentForSizeInput, ToolbarViewMeasureInput, } from './chrome.js';
|
|
59
|
+
export { ADW_MAX_OVERSHOOT_DISTANCE, ADW_OVERSHOOT_SETTLE_MS, ADW_UNDERSHOOT_CLASSES, ADW_UNDERSHOOT_SIZE, accumulateOvershoot, isScrolledFromEnd, isScrolledFromStart, overshootDistance, scrollMaxValue, scrollUndershootClasses, } from './scrolling.js';
|
|
60
|
+
export type { ScrollAdjustment, ScrollAdjustments } from './scrolling.js';
|
|
59
61
|
export { POPOVER_ITEM_RADIUS, POPOVER_MENU_PADDING, POPOVER_PADDING, POPOVER_RADIUS, PopoverState, resolvePopoverKey, } from './popover.js';
|
|
60
62
|
export type { PopoverKeyAction, PopoverKeyContext, PopoverKeyResolution, PopoverStateChange, PopoverStateListener, } from './popover.js';
|
|
61
63
|
export { ADW_WRAP_BOX_DEFAULT_ALIGN, ADW_WRAP_BOX_DEFAULT_JUSTIFY, ADW_WRAP_BOX_DEFAULT_JUSTIFY_LAST_LINE, ADW_WRAP_BOX_DEFAULT_LENGTH_UNIT, ADW_WRAP_BOX_DEFAULT_PACK_DIRECTION, ADW_WRAP_BOX_DEFAULT_SPACING, ADW_WRAP_BOX_DEFAULT_WRAP_POLICY, ADW_WRAP_BOX_JUSTIFY_MODES, ADW_WRAP_BOX_NATURAL_LINE_LENGTH_UNSET, ADW_WRAP_BOX_PACK_DIRECTIONS, ADW_WRAP_POLICIES, normalizeNaturalLineLength, normalizeWrapBoxAlign, normalizeWrapBoxJustify, normalizeWrapBoxLengthUnit, normalizeWrapBoxPackDirection, normalizeWrapBoxSpacing, normalizeWrapPolicy, resolveWrapBoxChildOrder, resolveWrapBoxLine, wrapBoxLengthToPx, wrapPolicyFlexShrink, } from './wrap-box.js';
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `UNDERSHOOT_SIZE` — the band the undershoot node is allocated, in px.
|
|
3
|
+
*
|
|
4
|
+
* Larger than what is visible on purpose: the gradient over it fades out after 4px,
|
|
5
|
+
* so the band is mostly transparent. A renderer sizing the element to the visible
|
|
6
|
+
* 4px would be describing the gradient, not the node.
|
|
7
|
+
*/
|
|
8
|
+
export declare const ADW_UNDERSHOOT_SIZE = 40;
|
|
9
|
+
/** `MAX_OVERSHOOT_DISTANCE` — how far past an edge the position may travel, in px. */
|
|
10
|
+
export declare const ADW_MAX_OVERSHOOT_DISTANCE = 100;
|
|
11
|
+
/**
|
|
12
|
+
* The idle gap after which a non-smooth scroll starts decelerating, in ms.
|
|
13
|
+
*
|
|
14
|
+
* `scrolled_window_scroll` arms this timeout on every wheel event that left an
|
|
15
|
+
* overshoot standing, so the spring-back happens once the wheel STOPS rather than
|
|
16
|
+
* between two detents of the same gesture.
|
|
17
|
+
*/
|
|
18
|
+
export declare const ADW_OVERSHOOT_SETTLE_MS = 50;
|
|
19
|
+
/** One axis of a `GtkAdjustment`, as a scrollport reports it. */
|
|
20
|
+
export interface ScrollAdjustment {
|
|
21
|
+
/** `gtk_adjustment_get_value` — the current scroll position. */
|
|
22
|
+
value: number;
|
|
23
|
+
/** `gtk_adjustment_get_lower` — the position of the start edge, normally 0. */
|
|
24
|
+
lower: number;
|
|
25
|
+
/** `gtk_adjustment_get_upper` — the full content length. */
|
|
26
|
+
upper: number;
|
|
27
|
+
/** `gtk_adjustment_get_page_size` — the visible length. */
|
|
28
|
+
pageSize: number;
|
|
29
|
+
}
|
|
30
|
+
/** The highest position an adjustment can hold — `upper - page_size`. */
|
|
31
|
+
export declare function scrollMaxValue(adjustment: ScrollAdjustment): number;
|
|
32
|
+
/** Whether content is hidden BEFORE the current position, i.e. `value > lower`. */
|
|
33
|
+
export declare function isScrolledFromStart(adjustment: ScrollAdjustment): boolean;
|
|
34
|
+
/** Whether content is hidden AFTER the current position, i.e. `value < upper - page_size`. */
|
|
35
|
+
export declare function isScrolledFromEnd(adjustment: ScrollAdjustment): boolean;
|
|
36
|
+
/** The four undershoot classes a scroller owns, so a renderer can clear them. */
|
|
37
|
+
export declare const ADW_UNDERSHOOT_CLASSES: ReadonlyArray<string>;
|
|
38
|
+
/** The adjustments of a scroller, either axis optional (an axis that cannot scroll). */
|
|
39
|
+
export interface ScrollAdjustments {
|
|
40
|
+
/** The vertical axis — drives `undershoot-top` / `undershoot-bottom`. */
|
|
41
|
+
vertical?: ScrollAdjustment;
|
|
42
|
+
/** The horizontal axis — drives `undershoot-start` / `undershoot-end`. */
|
|
43
|
+
horizontal?: ScrollAdjustment;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Which undershoot indicators a scroller shows at its current position.
|
|
47
|
+
*
|
|
48
|
+
* The horizontal pair is named start/end rather than left/right because the
|
|
49
|
+
* stylesheet resolves them per text direction (`_scrolling.scss:158-166`); the
|
|
50
|
+
* arithmetic is direction-blind, which is why it lives here and the flip lives in
|
|
51
|
+
* CSS.
|
|
52
|
+
*/
|
|
53
|
+
export declare function scrollUndershootClasses(adjustments: ScrollAdjustments): string[];
|
|
54
|
+
/**
|
|
55
|
+
* `_gtk_scrolled_window_get_overshoot` for one axis: how far the unclamped position
|
|
56
|
+
* lies past an edge.
|
|
57
|
+
*
|
|
58
|
+
* Signed — negative past the start edge, positive past the end edge, `0` in range —
|
|
59
|
+
* so one number carries both which edge glows and how much.
|
|
60
|
+
*/
|
|
61
|
+
export declare function overshootDistance(unclamped: number, adjustment: ScrollAdjustment): number;
|
|
62
|
+
/**
|
|
63
|
+
* `_gtk_scrolled_window_set_adjustment_value`: advance the unclamped position by a
|
|
64
|
+
* scroll delta, held within one overshoot distance of either edge.
|
|
65
|
+
*
|
|
66
|
+
* A hard CLAMP, not a spring: upstream damps nothing on the way out, so pushing
|
|
67
|
+
* twice as hard past the edge does not glow twice as far — it stops at
|
|
68
|
+
* {@link ADW_MAX_OVERSHOOT_DISTANCE} and stays there until the gesture ends.
|
|
69
|
+
*/
|
|
70
|
+
export declare function accumulateOvershoot(unclamped: number, delta: number, adjustment: ScrollAdjustment): number;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gjsify/adwaita-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.41.0",
|
|
4
4
|
"description": "Headless Adwaita widget behavior (breakpoint condition grammar + apply/unapply state machine, color-scheme observable, avatar derivation) shared by the web and NativeScript Adwaita renderers — pure TS, no platform imports",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "lib/esm/index.js",
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"headless"
|
|
47
47
|
],
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@gjsify/cli": "^0.
|
|
50
|
-
"@gjsify/unit": "^0.
|
|
49
|
+
"@gjsify/cli": "^0.41.0",
|
|
50
|
+
"@gjsify/unit": "^0.41.0",
|
|
51
51
|
"@types/node": "^25.9.2",
|
|
52
52
|
"typescript": "^6.0.3"
|
|
53
53
|
},
|