@sps-woodland/sorting-header 7.9.1 → 7.10.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/index.cjs.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const O=require("react"),a=require("@sps-woodland/core"),D=require("@spscommerce/utils");function H(e){if(e&&e.__esModule)return e;const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const f=H(O);function _(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function g(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function b(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?g(Object(t),!0).forEach(function(o){_(e,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):g(Object(t)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})}return e}var h=(e,r,t)=>{for(var o of Object.keys(e)){var n;if(e[o]!==((n=r[o])!==null&&n!==void 0?n:t[o]))return!1}return!0},v=e=>r=>{var t=e.defaultClassName,o=b(b({},e.defaultVariants),r);for(var n in o){var i,l=(i=o[n])!==null&&i!==void 0?i:e.defaultVariants[n];if(l!=null){var s=l;typeof s=="boolean"&&(s=s===!0?"true":"false");var c=e.variantClassNames[n][s];c&&(t+=" "+c)}}for(var[p,S]of e.compoundVariants)h(p,o,e.defaultVariants)&&(t+=" "+S);return t},E=v({defaultClassName:"_7ljhcs0",variantClassNames:{up:{true:"_7ljhcs1"},down:{true:"_7ljhcs2"}},defaultVariants:{},compoundVariants:[]});var I=v({defaultClassName:"_1crs4gl0",variantClassNames:{disabled:{true:"_1crs4gl1"},active:{true:"_1crs4gl2"}},defaultVariants:{disabled:!1,active:!1},compoundVariants:[]});function m({className:e,sortKey:r,sort:t,sortDisabled:o,onSortChange:n,onClick:i,children:l,style:s,widthPx:c,widthRem:p,...S}){const d=f.useMemo(()=>{const u=!!r&&!o&&Array.isArray(t)&&t.find(N=>N.key===r);return u?u.direction:void 0},[t,r,o]),C=c?c/16:p,w=C?{...s,width:`${C}rem`}:s;return f.createElement("div",{className:a.cl(e,I({disabled:o,active:!!d}),d&&E({up:d===a.SortDirection.ASCENDING,down:d===a.SortDirection.DESCENDING})),onClick:u=>{r&&!o&&n&&n([{key:r,direction:d===a.SortDirection.ASCENDING?a.SortDirection.DESCENDING:a.SortDirection.ASCENDING}]),i&&i(u)},style:w,...S},l)}a.Metadata.set(m,{name:"Sorting Header Cell",props:{sortKey:{type:"string"},sort:{type:"SortedColumn[]"},sortDisabled:{type:"boolean"},onSortChange:{type:"SortChangeHandler"},widthPx:{type:"number"},widthRem:{type:"number"}}});var P="sk81640";function y({sort:e,onSortChange:r,children:t,className:o,...n}){const[i]=a.selectChildren(t,[{type:m}]),l=a.modChildren(i,()=>[{sort:e,onSortChange:r}]);return f.createElement("div",{className:a.cl(o,P),...n},l)}a.Metadata.set(y,{name:"Sorting Header",props:{sort:{type:"SortedColumn[]"},onSortChange:{type:"SortChangeHandler"}}});const R={components:[y,m],examples:{basic:{label:"Sorting Header",examples:{basic:{react:D.code`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const _=require("react"),c=require("@sps-woodland/core"),R=require("@spscommerce/utils");function H(e){if(e&&e.__esModule)return e;const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const a=H(_);function P(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function N(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,r)}return t}function O(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?N(Object(t),!0).forEach(function(r){P(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):N(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}var A=(e,n,t)=>{for(var r of Object.keys(e)){var i;if(e[r]!==((i=n[r])!==null&&i!==void 0?i:t[r]))return!1}return!0},v=e=>n=>{var t=e.defaultClassName,r=O(O({},e.defaultVariants),n);for(var i in r){var l,f=(l=r[i])!==null&&l!==void 0?l:e.defaultVariants[i];if(f!=null){var m=f;typeof m=="boolean"&&(m=m===!0?"true":"false");var d=e.variantClassNames[i][m];d&&(t+=" "+d)}}for(var[p,s]of e.compoundVariants)A(p,r,e.defaultVariants)&&(t+=" "+s);return t},T=v({defaultClassName:"_7ljhcs0",variantClassNames:{up:{true:"_7ljhcs1"},down:{true:"_7ljhcs2"}},defaultVariants:{},compoundVariants:[]});var V=v({defaultClassName:"_1crs4gl0",variantClassNames:{disabled:{true:"_1crs4gl1"},active:{true:"_1crs4gl2"}},defaultVariants:{disabled:!1,active:!1},compoundVariants:[]});function w({className:e,sortKey:n,sort:t,sortDisabled:r,onSortChange:i,onClick:l,children:f,style:m,widthPx:d,widthRem:p,...s}){const u=a.useMemo(()=>{const y=!!n&&!r&&Array.isArray(t)&&t.find(o=>o.key===n);return y?y.direction:void 0},[t,n,r]),g=d?d/16:p,h=g?{...m,width:`${g}rem`}:m;return a.createElement("div",{className:c.cl(e,V({disabled:r,active:!!u}),u&&T({up:u===c.SortDirection.ASCENDING,down:u===c.SortDirection.DESCENDING})),onClick:y=>{n&&!r&&i&&i([{key:n,direction:u===c.SortDirection.ASCENDING?c.SortDirection.DESCENDING:c.SortDirection.ASCENDING}]),l&&l(y)},style:h,...s},f)}c.Metadata.set(w,{name:"Sorting Header Cell",props:{sortKey:{type:"string"},sort:{type:"SortedColumn[]"},sortDisabled:{type:"boolean"},onSortChange:{type:"SortChangeHandler"},widthPx:{type:"number"},widthRem:{type:"number"}}});var D=v({defaultClassName:"sk81640",variantClassNames:{pinned:{true:"sk81641",false:"sk81642"}},defaultVariants:{pinned:!1},compoundVariants:[]});function E({sort:e,onSortChange:n,children:t,className:r,pinSortingHeader:i=!1,...l}){const[f,m]=a.useState(!1),d=a.useRef(null),p=a.useRef(null),s=a.useRef({height:"",width:"",unpinAtTop:0,unpinAtBottom:0,cellWidths:[]}),u=a.useCallback(()=>{var o;if(i&&d.current){const C=(o=d.current.parentElement)==null?void 0:o.getBoundingClientRect();if(C){const S=d.current.getBoundingClientRect();s.current.height=`${S.height}px`,s.current.width=`${S.width}px`,s.current.unpinAtBottom=C.bottom+window.scrollY-S.height*2,s.current.unpinAtTop=S.top+window.scrollY-S.height,s.current.cellWidths=[],d.current.childNodes.forEach((b,I)=>{b instanceof HTMLElement&&(s.current.cellWidths[I]=`${b.getBoundingClientRect().width}px`)})}}},[i]),g=a.useCallback(()=>{p.current&&(p.current.style.width=s.current.width,p.current.style.height=s.current.height,p.current.childNodes.forEach((o,C)=>{o instanceof HTMLElement&&(o.style.width=s.current.cellWidths[C]||"")}))},[]);a.useLayoutEffect(()=>{u()}),a.useLayoutEffect(()=>{let o;return i&&(o=R.lockToAnimationFrames(()=>{u();const{unpinAtTop:C,unpinAtBottom:S}=s.current;C&&S&&(window.scrollY>=C&&window.scrollY<=S?m(!0):m(!1))}),window.addEventListener("scroll",o),o()),()=>{o&&window.removeEventListener("scroll",o)}},[i,u]),a.useLayoutEffect(()=>{let o;return f&&(o=()=>{u(),g()},window.addEventListener("resize",o),o()),()=>{o&&window.removeEventListener("resize",o)}},[f,u,g]);const[h]=c.selectChildren(t,[{type:w}]),y=c.modChildren(h,()=>[{sort:e,onSortChange:n}]);return a.createElement(a.Fragment,null,a.createElement("div",{ref:d,className:c.cl(r,D({pinned:!1})),...l},y),f&&a.createElement("div",{ref:p,className:c.cl(r,D({pinned:!0})),...l,id:l.id?`pinned-${l.id}`:void 0,"data-testid":l["data-testid"]?`pinned-${l["data-testid"]}`:void 0},y))}c.Metadata.set(E,{name:"Sorting Header",props:{sort:{type:"SortedColumn[]"},onSortChange:{type:"SortChangeHandler"}}});const M={components:[E,w],examples:{basic:{label:"Sorting Header",examples:{basic:{react:R.code`
2
2
  import { SortingHeader, SortingHeaderCell } from "@sps-woodland/sorting-header";
3
3
  import { Icon } from "@sps-woodland/core";
4
4
  import { ContentRow } from "@sps-woodland/content-row";
@@ -92,4 +92,4 @@
92
92
  </>
93
93
  );
94
94
  }
95
- `}}}}},V={"Sorting Header":R};exports.MANIFEST=V;exports.SortingHeader=y;exports.SortingHeaderCell=m;
95
+ `}}}}},j={"Sorting Header":M};exports.MANIFEST=j;exports.SortingHeader=E;exports.SortingHeaderCell=w;
package/lib/index.es.js CHANGED
@@ -1,101 +1,101 @@
1
- import * as S from "react";
2
- import { Metadata as v, cl as w, SortDirection as m, selectChildren as H, modChildren as I } from "@sps-woodland/core";
3
- import { code as D } from "@spscommerce/utils";
4
- function O(e, o, t) {
5
- return o in e ? Object.defineProperty(e, o, {
6
- value: t,
1
+ import * as a from "react";
2
+ import { Metadata as D, cl as h, SortDirection as w, selectChildren as A, modChildren as P } from "@sps-woodland/core";
3
+ import { lockToAnimationFrames as V, code as T } from "@spscommerce/utils";
4
+ function _(e, n, r) {
5
+ return n in e ? Object.defineProperty(e, n, {
6
+ value: r,
7
7
  enumerable: !0,
8
8
  configurable: !0,
9
9
  writable: !0
10
- }) : e[o] = t, e;
10
+ }) : e[n] = r, e;
11
11
  }
12
- function C(e, o) {
13
- var t = Object.keys(e);
12
+ function b(e, n) {
13
+ var r = Object.keys(e);
14
14
  if (Object.getOwnPropertySymbols) {
15
- var r = Object.getOwnPropertySymbols(e);
16
- o && (r = r.filter(function(n) {
17
- return Object.getOwnPropertyDescriptor(e, n).enumerable;
18
- })), t.push.apply(t, r);
15
+ var t = Object.getOwnPropertySymbols(e);
16
+ n && (t = t.filter(function(i) {
17
+ return Object.getOwnPropertyDescriptor(e, i).enumerable;
18
+ })), r.push.apply(r, t);
19
19
  }
20
- return t;
20
+ return r;
21
21
  }
22
- function g(e) {
23
- for (var o = 1; o < arguments.length; o++) {
24
- var t = arguments[o] != null ? arguments[o] : {};
25
- o % 2 ? C(Object(t), !0).forEach(function(r) {
26
- O(e, r, t[r]);
27
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : C(Object(t)).forEach(function(r) {
28
- Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
22
+ function R(e) {
23
+ for (var n = 1; n < arguments.length; n++) {
24
+ var r = arguments[n] != null ? arguments[n] : {};
25
+ n % 2 ? b(Object(r), !0).forEach(function(t) {
26
+ _(e, t, r[t]);
27
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : b(Object(r)).forEach(function(t) {
28
+ Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t));
29
29
  });
30
30
  }
31
31
  return e;
32
32
  }
33
- var V = (e, o, t) => {
34
- for (var r of Object.keys(e)) {
35
- var n;
36
- if (e[r] !== ((n = o[r]) !== null && n !== void 0 ? n : t[r]))
33
+ var K = (e, n, r) => {
34
+ for (var t of Object.keys(e)) {
35
+ var i;
36
+ if (e[t] !== ((i = n[t]) !== null && i !== void 0 ? i : r[t]))
37
37
  return !1;
38
38
  }
39
39
  return !0;
40
- }, N = (e) => (o) => {
41
- var t = e.defaultClassName, r = g(g({}, e.defaultVariants), o);
42
- for (var n in r) {
43
- var a, s = (a = r[n]) !== null && a !== void 0 ? a : e.defaultVariants[n];
44
- if (s != null) {
45
- var i = s;
46
- typeof i == "boolean" && (i = i === !0 ? "true" : "false");
47
- var l = e.variantClassNames[n][i];
48
- l && (t += " " + l);
40
+ }, v = (e) => (n) => {
41
+ var r = e.defaultClassName, t = R(R({}, e.defaultVariants), n);
42
+ for (var i in t) {
43
+ var l, p = (l = t[i]) !== null && l !== void 0 ? l : e.defaultVariants[i];
44
+ if (p != null) {
45
+ var u = p;
46
+ typeof u == "boolean" && (u = u === !0 ? "true" : "false");
47
+ var d = e.variantClassNames[i][u];
48
+ d && (r += " " + d);
49
49
  }
50
50
  }
51
- for (var [p, u] of e.compoundVariants)
52
- V(p, r, e.defaultVariants) && (t += " " + u);
53
- return t;
54
- }, R = N({ defaultClassName: "_7ljhcs0", variantClassNames: { up: { true: "_7ljhcs1" }, down: { true: "_7ljhcs2" } }, defaultVariants: {}, compoundVariants: [] });
55
- var _ = N({ defaultClassName: "_1crs4gl0", variantClassNames: { disabled: { true: "_1crs4gl1" }, active: { true: "_1crs4gl2" } }, defaultVariants: { disabled: !1, active: !1 }, compoundVariants: [] });
56
- function f({
51
+ for (var [m, s] of e.compoundVariants)
52
+ K(m, t, e.defaultVariants) && (r += " " + s);
53
+ return r;
54
+ }, k = v({ defaultClassName: "_7ljhcs0", variantClassNames: { up: { true: "_7ljhcs1" }, down: { true: "_7ljhcs2" } }, defaultVariants: {}, compoundVariants: [] });
55
+ var j = v({ defaultClassName: "_1crs4gl0", variantClassNames: { disabled: { true: "_1crs4gl1" }, active: { true: "_1crs4gl2" } }, defaultVariants: { disabled: !1, active: !1 }, compoundVariants: [] });
56
+ function E({
57
57
  className: e,
58
- sortKey: o,
59
- sort: t,
60
- sortDisabled: r,
61
- onSortChange: n,
62
- onClick: a,
63
- children: s,
64
- style: i,
65
- widthPx: l,
66
- widthRem: p,
67
- ...u
58
+ sortKey: n,
59
+ sort: r,
60
+ sortDisabled: t,
61
+ onSortChange: i,
62
+ onClick: l,
63
+ children: p,
64
+ style: u,
65
+ widthPx: d,
66
+ widthRem: m,
67
+ ...s
68
68
  }) {
69
- const d = S.useMemo(() => {
70
- const c = !!o && !r && Array.isArray(t) && t.find((E) => E.key === o);
71
- return c ? c.direction : void 0;
69
+ const c = a.useMemo(() => {
70
+ const S = !!n && !t && Array.isArray(r) && r.find((o) => o.key === n);
71
+ return S ? S.direction : void 0;
72
72
  }, [
73
- t,
74
- o,
75
- r
76
- ]), y = l ? l / 16 : p, h = y ? { ...i, width: `${y}rem` } : i;
77
- return /* @__PURE__ */ S.createElement("div", {
78
- className: w(
73
+ r,
74
+ n,
75
+ t
76
+ ]), C = d ? d / 16 : m, g = C ? { ...u, width: `${C}rem` } : u;
77
+ return /* @__PURE__ */ a.createElement("div", {
78
+ className: h(
79
79
  e,
80
- _({ disabled: r, active: !!d }),
81
- d && R({
82
- up: d === m.ASCENDING,
83
- down: d === m.DESCENDING
80
+ j({ disabled: t, active: !!c }),
81
+ c && k({
82
+ up: c === w.ASCENDING,
83
+ down: c === w.DESCENDING
84
84
  })
85
85
  ),
86
- onClick: (c) => {
87
- o && !r && n && n([
86
+ onClick: (S) => {
87
+ n && !t && i && i([
88
88
  {
89
- key: o,
90
- direction: d === m.ASCENDING ? m.DESCENDING : m.ASCENDING
89
+ key: n,
90
+ direction: c === w.ASCENDING ? w.DESCENDING : w.ASCENDING
91
91
  }
92
- ]), a && a(c);
92
+ ]), l && l(S);
93
93
  },
94
- style: h,
95
- ...u
96
- }, s);
94
+ style: g,
95
+ ...s
96
+ }, p);
97
97
  }
98
- v.set(f, {
98
+ D.set(E, {
99
99
  name: "Sorting Header Cell",
100
100
  props: {
101
101
  sortKey: { type: "string" },
@@ -106,35 +106,88 @@ v.set(f, {
106
106
  widthRem: { type: "number" }
107
107
  }
108
108
  });
109
- var P = "sk81640";
110
- function b({
109
+ var I = v({ defaultClassName: "sk81640", variantClassNames: { pinned: { true: "sk81641", false: "sk81642" } }, defaultVariants: { pinned: !1 }, compoundVariants: [] });
110
+ function H({
111
111
  sort: e,
112
- onSortChange: o,
113
- children: t,
114
- className: r,
115
- ...n
112
+ onSortChange: n,
113
+ children: r,
114
+ className: t,
115
+ pinSortingHeader: i = !1,
116
+ ...l
116
117
  }) {
117
- const [a] = H(t, [{ type: f }]), s = I(a, () => [{ sort: e, onSortChange: o }]);
118
- return /* @__PURE__ */ S.createElement("div", {
119
- className: w(r, P),
120
- ...n
121
- }, s);
118
+ const [p, u] = a.useState(!1), d = a.useRef(null), m = a.useRef(null), s = a.useRef({
119
+ height: "",
120
+ width: "",
121
+ unpinAtTop: 0,
122
+ unpinAtBottom: 0,
123
+ cellWidths: []
124
+ }), c = a.useCallback(() => {
125
+ var o;
126
+ if (i && d.current) {
127
+ const y = (o = d.current.parentElement) == null ? void 0 : o.getBoundingClientRect();
128
+ if (y) {
129
+ const f = d.current.getBoundingClientRect();
130
+ s.current.height = `${f.height}px`, s.current.width = `${f.width}px`, s.current.unpinAtBottom = y.bottom + window.scrollY - f.height * 2, s.current.unpinAtTop = f.top + window.scrollY - f.height, s.current.cellWidths = [], d.current.childNodes.forEach((N, O) => {
131
+ N instanceof HTMLElement && (s.current.cellWidths[O] = `${N.getBoundingClientRect().width}px`);
132
+ });
133
+ }
134
+ }
135
+ }, [i]), C = a.useCallback(() => {
136
+ m.current && (m.current.style.width = s.current.width, m.current.style.height = s.current.height, m.current.childNodes.forEach((o, y) => {
137
+ o instanceof HTMLElement && (o.style.width = s.current.cellWidths[y] || "");
138
+ }));
139
+ }, []);
140
+ a.useLayoutEffect(() => {
141
+ c();
142
+ }), a.useLayoutEffect(() => {
143
+ let o;
144
+ return i && (o = V(() => {
145
+ c();
146
+ const { unpinAtTop: y, unpinAtBottom: f } = s.current;
147
+ y && f && (window.scrollY >= y && window.scrollY <= f ? u(!0) : u(!1));
148
+ }), window.addEventListener("scroll", o), o()), () => {
149
+ o && window.removeEventListener("scroll", o);
150
+ };
151
+ }, [i, c]), a.useLayoutEffect(() => {
152
+ let o;
153
+ return p && (o = () => {
154
+ c(), C();
155
+ }, window.addEventListener("resize", o), o()), () => {
156
+ o && window.removeEventListener("resize", o);
157
+ };
158
+ }, [
159
+ p,
160
+ c,
161
+ C
162
+ ]);
163
+ const [g] = A(r, [{ type: E }]), S = P(g, () => [{ sort: e, onSortChange: n }]);
164
+ return /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement("div", {
165
+ ref: d,
166
+ className: h(t, I({ pinned: !1 })),
167
+ ...l
168
+ }, S), p && /* @__PURE__ */ a.createElement("div", {
169
+ ref: m,
170
+ className: h(t, I({ pinned: !0 })),
171
+ ...l,
172
+ id: l.id ? `pinned-${l.id}` : void 0,
173
+ "data-testid": l["data-testid"] ? `pinned-${l["data-testid"]}` : void 0
174
+ }, S));
122
175
  }
123
- v.set(b, {
176
+ D.set(H, {
124
177
  name: "Sorting Header",
125
178
  props: {
126
179
  sort: { type: "SortedColumn[]" },
127
180
  onSortChange: { type: "SortChangeHandler" }
128
181
  }
129
182
  });
130
- const K = {
131
- components: [b, f],
183
+ const L = {
184
+ components: [H, E],
132
185
  examples: {
133
186
  basic: {
134
187
  label: "Sorting Header",
135
188
  examples: {
136
189
  basic: {
137
- react: D`
190
+ react: T`
138
191
  import { SortingHeader, SortingHeaderCell } from "@sps-woodland/sorting-header";
139
192
  import { Icon } from "@sps-woodland/core";
140
193
  import { ContentRow } from "@sps-woodland/content-row";
@@ -233,11 +286,11 @@ const K = {
233
286
  }
234
287
  }
235
288
  }
236
- }, T = {
237
- "Sorting Header": K
289
+ }, G = {
290
+ "Sorting Header": L
238
291
  };
239
292
  export {
240
- T as MANIFEST,
241
- b as SortingHeader,
242
- f as SortingHeaderCell
293
+ G as MANIFEST,
294
+ H as SortingHeader,
295
+ E as SortingHeaderCell
243
296
  };
@@ -1 +1,23 @@
1
- export declare const sortingHeader: string;
1
+ export declare const sortingHeader: import("@vanilla-extract/recipes/dist/declarations/src/types").RuntimeFn<{
2
+ pinned: {
3
+ true: {
4
+ borderRadius: number;
5
+ position: "fixed";
6
+ top: string;
7
+ zIndex: number;
8
+ selectors: {
9
+ "&:after": {
10
+ background: "linear-gradient(180deg, rgba(0, 0, 0, 0.1), transparent)";
11
+ content: "";
12
+ display: "block";
13
+ height: string;
14
+ position: "absolute";
15
+ top: "calc(100%)";
16
+ left: string;
17
+ width: string;
18
+ };
19
+ };
20
+ };
21
+ false: {};
22
+ };
23
+ }>;
@@ -1,6 +1,7 @@
1
1
  import * as React from "react";
2
2
  import type { ComponentProps, SortChangeHandler, SortedColumn } from "@sps-woodland/core";
3
- export declare function SortingHeader({ sort, onSortChange, children, className, ...rest }: ComponentProps<{
3
+ export declare function SortingHeader({ sort, onSortChange, children, className, pinSortingHeader, ...rest }: ComponentProps<{
4
4
  sort: SortedColumn[];
5
5
  onSortChange: SortChangeHandler;
6
+ pinSortingHeader?: boolean;
6
7
  }, HTMLDivElement>): React.ReactElement;
package/lib/style.css CHANGED
@@ -1 +1 @@
1
- ._7ljhcs0:after{content:"";border-left-color:transparent;border-right-color:transparent;border-style:solid;border-width:.375rem .25rem;height:0;position:absolute;right:.5rem}._7ljhcs1:after{border-bottom-color:#1f282c;border-top-color:transparent;top:calc(50% - 9px)}._7ljhcs2:after{border-top-color:#1f282c;border-bottom-color:transparent;top:calc(50% - 3px)}._1crs4gl0{display:table-cell;vertical-align:middle;color:#4b5356;font-size:.75rem;font-weight:600;line-height:1.25rem;padding:.5rem;position:relative}._1crs4gl0:hover{background-color:#f3f4f4}._1crs4gl1{cursor:default}._1crs4gl2{color:#1f282c;background-color:#d2d4d4}.sk81640{display:table;table-layout:fixed;width:100%;padding:0;border-radius:.25rem;vertical-align:bottom;cursor:pointer;background-color:#e9e9ea}
1
+ ._7ljhcs0:after{content:"";border-left-color:transparent;border-right-color:transparent;border-style:solid;border-width:.375rem .25rem;height:0;position:absolute;right:.5rem}._7ljhcs1:after{border-bottom-color:#1f282c;border-top-color:transparent;top:calc(50% - 9px)}._7ljhcs2:after{border-top-color:#1f282c;border-bottom-color:transparent;top:calc(50% - 3px)}._1crs4gl0{display:table-cell;vertical-align:middle;color:#4b5356;font-size:.75rem;font-weight:600;line-height:1.25rem;padding:.5rem;position:relative}._1crs4gl0:hover{background-color:#f3f4f4}._1crs4gl1{cursor:default}._1crs4gl2{color:#1f282c;background-color:#d2d4d4}.sk81640{display:table;table-layout:fixed;width:100%;padding:0;border-radius:.25rem;vertical-align:bottom;cursor:pointer;background-color:#e9e9ea}.sk81641{border-radius:0;position:fixed;top:3.75rem;z-index:999}.sk81641:after{content:"";background:linear-gradient(180deg,rgba(0,0,0,.1),transparent);display:block;height:.625rem;position:absolute;top:100%;left:-.0625rem;width:100%}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sps-woodland/sorting-header",
3
3
  "description": "SPS Woodland Design System sorting-header and sorting-header cell components",
4
- "version": "7.9.1",
4
+ "version": "7.10.0",
5
5
  "author": "SPS Commerce",
6
6
  "license": "UNLICENSED",
7
7
  "repository": "https://github.com/SPSCommerce/woodland/tree/main/packages/@sps-woodland/sorting-header",
@@ -26,15 +26,15 @@
26
26
  "access": "public"
27
27
  },
28
28
  "peerDependencies": {
29
- "@sps-woodland/core": "7.9.1",
30
- "@sps-woodland/tokens": "7.9.1",
29
+ "@sps-woodland/core": "7.10.0",
30
+ "@sps-woodland/tokens": "7.10.0",
31
31
  "@spscommerce/utils": "^6.12.1",
32
32
  "react": "^16.14.0",
33
33
  "react-dom": "^16.14.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@sps-woodland/core": "7.9.1",
37
- "@sps-woodland/tokens": "7.9.1",
36
+ "@sps-woodland/core": "7.10.0",
37
+ "@sps-woodland/tokens": "7.10.0",
38
38
  "@spscommerce/utils": "^6.12.1",
39
39
  "@vanilla-extract/css": "^1.9.3",
40
40
  "@vanilla-extract/css-utils": "^0.1.3",