@planningcenter/tapestry 2.8.0-rc.0 → 2.8.0-rc.2
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/dist/components/page-header/PageHeader.d.ts.map +1 -1
- package/dist/components/page-header/PageHeader.js +39 -7
- package/dist/components/page-header/PageHeader.js.map +1 -1
- package/dist/components/page-header/index.js +1 -1
- package/dist/components/sidenav/index.js +1 -1
- package/dist/index.css +2 -2
- package/dist/reactRender.css +4 -4
- package/dist/reactRender.css.map +1 -1
- package/dist/reactRenderLegacy.css +4 -4
- package/dist/reactRenderLegacy.css.map +1 -1
- package/dist/tapestry-wc/dist/components/{p-BtiFAx29.js → p-BOK3Ug3R.js} +3 -3
- package/dist/tapestry-wc/dist/components/{p-BtiFAx29.js.map → p-BOK3Ug3R.js.map} +1 -1
- package/dist/tapestry-wc/dist/components/{p-DUlaSfAK.js → p-B_pHATKd.js} +2 -2
- package/dist/tapestry-wc/dist/components/{p-DUlaSfAK.js.map → p-B_pHATKd.js.map} +1 -1
- package/dist/tapestry-wc/dist/components/{p-DlJlgD4v.js → p-Co5O3Zwp.js} +3 -3
- package/dist/tapestry-wc/dist/components/{p-DlJlgD4v.js.map → p-Co5O3Zwp.js.map} +1 -1
- package/dist/tapestry-wc/dist/components/{p-DXj6H3y8.js → p-DpJwQ31h.js} +3 -3
- package/dist/tapestry-wc/dist/components/{p-DXj6H3y8.js.map → p-DpJwQ31h.js.map} +1 -1
- package/dist/tapestry-wc/dist/components/{p-CnoHx_GB.js → p-nrviAsLj.js} +2 -2
- package/dist/tapestry-wc/dist/components/{p-CnoHx_GB.js.map → p-nrviAsLj.js.map} +1 -1
- package/dist/tapestry-wc/dist/components/tds-page-header-nav.js +2 -2
- package/dist/tapestry-wc/dist/components/tds-page-header-nav.js.map +1 -1
- package/dist/tapestry-wc/dist/components/tds-page-header.js +3 -3
- package/dist/tapestry-wc/dist/components/tds-page-header.js.map +1 -1
- package/dist/tapestry-wc/dist/components/tds-sidenav-item.js +3 -3
- package/dist/tapestry-wc/dist/components/tds-sidenav-item.js.map +1 -1
- package/dist/tapestry-wc/dist/components/tds-sidenav-responsive-header.js +2 -2
- package/dist/tapestry-wc/dist/components/tds-sidenav-responsive-header.js.map +1 -1
- package/dist/tapestry-wc/dist/components/tds-sidenav-section.js +3 -3
- package/dist/tapestry-wc/dist/components/tds-sidenav-section.js.map +1 -1
- package/dist/tapestry-wc/dist/components/tds-sidenav.js +5 -5
- package/dist/tapestry-wc/dist/components/tds-sidenav.js.map +1 -1
- package/dist/unstable.css +4 -4
- package/dist/unstable.css.map +1 -1
- package/dist/unstable.js +1 -0
- package/dist/unstable.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHeader.d.ts","sourceRoot":"","sources":["../../../src/components/page-header/PageHeader.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PageHeader.d.ts","sourceRoot":"","sources":["../../../src/components/page-header/PageHeader.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAEhD,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAgB,EAChB,OAAe,GAChB,EAAE;IACD;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,qBA+BA"}
|
|
@@ -1,12 +1,44 @@
|
|
|
1
|
-
import
|
|
1
|
+
import classNames from 'classnames';
|
|
2
|
+
import React, { useRef, useEffect } from 'react';
|
|
2
3
|
|
|
3
4
|
function PageHeader({ children, actions, navigation, className, inactive = false, profile = false, }) {
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
const hasMultiActions = actions
|
|
6
|
+
? React.isValidElement(actions) && actions.type === React.Fragment
|
|
7
|
+
? React.Children.count(actions.props.children) > 1
|
|
8
|
+
: React.Children.count(actions) > 1
|
|
9
|
+
: false;
|
|
10
|
+
const nav = useScrollToSelected(navigation);
|
|
11
|
+
return (React.createElement("header", { className: classNames("tds-page-header", className, {
|
|
12
|
+
"has-multi-actions": hasMultiActions,
|
|
13
|
+
"has-nav": !!navigation,
|
|
14
|
+
inactive,
|
|
15
|
+
"tds-page-header--profile": profile,
|
|
16
|
+
}) },
|
|
17
|
+
React.createElement("div", { className: "tds-page-header__title-bar" },
|
|
18
|
+
React.createElement("div", { className: "tds-page-header__primary" }, children),
|
|
19
|
+
actions && (React.createElement("div", { className: "tds-page-header__actions tds-no-print" }, actions))),
|
|
20
|
+
navigation && (React.createElement("nav", { ref: nav, className: "tds-page-header__nav tds-no-print" }, navigation))));
|
|
21
|
+
}
|
|
22
|
+
function useScrollToSelected(navigation) {
|
|
23
|
+
const nav = useRef(null);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (!nav.current)
|
|
26
|
+
return;
|
|
27
|
+
const ulElement = nav.current.querySelector("ul");
|
|
28
|
+
if (!ulElement)
|
|
29
|
+
return;
|
|
30
|
+
const selectedItem = ulElement.querySelector(".selected");
|
|
31
|
+
if (selectedItem) {
|
|
32
|
+
const bounds = selectedItem.getBoundingClientRect();
|
|
33
|
+
const ulBounds = ulElement.getBoundingClientRect();
|
|
34
|
+
if (bounds.right > ulBounds.right || bounds.left < ulBounds.left) {
|
|
35
|
+
ulElement.scrollTo({
|
|
36
|
+
left: ulElement.scrollLeft + bounds.left - ulBounds.left,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}, [navigation]);
|
|
41
|
+
return nav;
|
|
10
42
|
}
|
|
11
43
|
|
|
12
44
|
export { PageHeader };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHeader.js","sources":["../../../src/components/page-header/PageHeader.tsx"],"sourcesContent":["import React from \"react\"\n\nexport function PageHeader({\n children,\n actions,\n navigation,\n className,\n inactive = false,\n profile = false,\n}: {\n /**\n * Additional content (typically actions) that complements the primary slot.\n */\n actions?: React.ReactNode\n /**\n * The main content of the page header. It will be displayed prominently. For simple pages, providing a h1 will suffice.\n */\n children: React.ReactNode\n className?: string\n /**\n * Indicates whether the page header is inactive or not. When set to true, the page header is visually inactive\n */\n inactive?: boolean\n /**\n * Navigation for the page. Should contain an unstyled unordered list (ul)\n * that contains a list of links or buttons.\n */\n navigation?: React.ReactNode\n /**\n * Indicates whether the page header is a profile page header or not. When set to true, the page header will visually center the title and actions at mobile breakpoints.\n */\n profile?: boolean\n}) {\n const
|
|
1
|
+
{"version":3,"file":"PageHeader.js","sources":["../../../src/components/page-header/PageHeader.tsx"],"sourcesContent":["import classNames from \"classnames\"\nimport React, { useEffect, useRef } from \"react\"\n\nexport function PageHeader({\n children,\n actions,\n navigation,\n className,\n inactive = false,\n profile = false,\n}: {\n /**\n * Additional content (typically actions) that complements the primary slot.\n */\n actions?: React.ReactNode\n /**\n * The main content of the page header. It will be displayed prominently. For simple pages, providing a h1 will suffice.\n */\n children: React.ReactNode\n className?: string\n /**\n * Indicates whether the page header is inactive or not. When set to true, the page header is visually inactive\n */\n inactive?: boolean\n /**\n * Navigation for the page. Should contain an unstyled unordered list (ul)\n * that contains a list of links or buttons.\n */\n navigation?: React.ReactNode\n /**\n * Indicates whether the page header is a profile page header or not. When set to true, the page header will visually center the title and actions at mobile breakpoints.\n */\n profile?: boolean\n}) {\n const hasMultiActions = actions\n ? React.isValidElement(actions) && actions.type === React.Fragment\n ? React.Children.count(actions.props.children) > 1\n : React.Children.count(actions) > 1\n : false\n\n const nav = useScrollToSelected(navigation)\n\n return (\n <header\n className={classNames(\"tds-page-header\", className, {\n \"has-multi-actions\": hasMultiActions,\n \"has-nav\": !!navigation,\n inactive,\n \"tds-page-header--profile\": profile,\n })}\n >\n <div className=\"tds-page-header__title-bar\">\n <div className=\"tds-page-header__primary\">{children}</div>\n {actions && (\n <div className=\"tds-page-header__actions tds-no-print\">{actions}</div>\n )}\n </div>\n {navigation && (\n <nav ref={nav} className=\"tds-page-header__nav tds-no-print\">\n {navigation}\n </nav>\n )}\n </header>\n )\n}\n\nfunction useScrollToSelected(navigation: React.ReactNode) {\n const nav = useRef<HTMLElement>(null)\n useEffect(() => {\n if (!nav.current) return\n const ulElement = nav.current.querySelector(\"ul\")\n if (!ulElement) return\n const selectedItem = ulElement.querySelector(\".selected\")\n if (selectedItem) {\n const bounds = selectedItem.getBoundingClientRect()\n const ulBounds = ulElement.getBoundingClientRect()\n if (bounds.right > ulBounds.right || bounds.left < ulBounds.left) {\n ulElement.scrollTo({\n left: ulElement.scrollLeft + bounds.left - ulBounds.left,\n })\n }\n }\n }, [navigation])\n return nav\n}\n"],"names":[],"mappings":";;;SAGgB,UAAU,CAAC,EACzB,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,KAAK,GAwBhB,EAAA;IACC,MAAM,eAAe,GAAG;AACtB,UAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC;AACxD,cAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG;cAC/C,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG;UAClC,KAAK;AAET,IAAA,MAAM,GAAG,GAAG,mBAAmB,CAAC,UAAU,CAAC;IAE3C,QACE,gCACE,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,EAAE;AAClD,YAAA,mBAAmB,EAAE,eAAe;YACpC,SAAS,EAAE,CAAC,CAAC,UAAU;YACvB,QAAQ;AACR,YAAA,0BAA0B,EAAE,OAAO;SACpC,CAAC,EAAA;QAEF,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,4BAA4B,EAAA;AACzC,YAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,0BAA0B,EAAA,EAAE,QAAQ,CAAO;YACzD,OAAO,KACN,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,uCAAuC,EAAA,EAAE,OAAO,CAAO,CACvE,CACG;AACL,QAAA,UAAU,KACT,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,mCAAmC,IACzD,UAAU,CACP,CACP,CACM;AAEb;AAEA,SAAS,mBAAmB,CAAC,UAA2B,EAAA;AACtD,IAAA,MAAM,GAAG,GAAG,MAAM,CAAc,IAAI,CAAC;IACrC,SAAS,CAAC,MAAK;QACb,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE;QAClB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC;AACjD,QAAA,IAAI,CAAC,SAAS;YAAE;QAChB,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC;QACzD,IAAI,YAAY,EAAE;AAChB,YAAA,MAAM,MAAM,GAAG,YAAY,CAAC,qBAAqB,EAAE;AACnD,YAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,qBAAqB,EAAE;AAClD,YAAA,IAAI,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE;gBAChE,SAAS,CAAC,QAAQ,CAAC;oBACjB,IAAI,EAAE,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI;AACzD,iBAAA,CAAC;YACJ;QACF;AACF,IAAA,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAChB,IAAA,OAAO,GAAG;AACZ;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import '../../tapestry-wc/dist/components/p-
|
|
1
|
+
import '../../tapestry-wc/dist/components/p-nrviAsLj.js';
|
|
2
2
|
import { defineCustomElement } from '../../tapestry-wc/dist/components/tds-page-header.js';
|
|
3
3
|
import { defineCustomElement as defineCustomElement$1 } from '../../tapestry-wc/dist/components/tds-page-header-nav.js';
|
|
4
4
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import '../../tapestry-wc/dist/components/p-
|
|
1
|
+
import '../../tapestry-wc/dist/components/p-nrviAsLj.js';
|
|
2
2
|
import { defineCustomElement } from '../../tapestry-wc/dist/components/tds-sidenav.js';
|
|
3
3
|
import { defineCustomElement as defineCustomElement$1 } from '../../tapestry-wc/dist/components/tds-sidenav-item.js';
|
|
4
4
|
import { defineCustomElement as defineCustomElement$3 } from '../../tapestry-wc/dist/components/tds-sidenav-responsive-header.js';
|
package/dist/index.css
CHANGED
|
@@ -1077,7 +1077,7 @@
|
|
|
1077
1077
|
overflow-wrap:break-word;
|
|
1078
1078
|
}
|
|
1079
1079
|
|
|
1080
|
-
.tds-page-header [slot="actions"]{
|
|
1080
|
+
.tds-page-header [slot="actions"], .tds-page-header .tds-page-header__actions{
|
|
1081
1081
|
width:100%;
|
|
1082
1082
|
}
|
|
1083
1083
|
|
|
@@ -1206,7 +1206,7 @@
|
|
|
1206
1206
|
align-items:flex-start;
|
|
1207
1207
|
}
|
|
1208
1208
|
|
|
1209
|
-
.tds-page-header [slot="actions"]{
|
|
1209
|
+
.tds-page-header [slot="actions"], .tds-page-header .tds-page-header__actions{
|
|
1210
1210
|
width:auto;
|
|
1211
1211
|
}
|
|
1212
1212
|
|
package/dist/reactRender.css
CHANGED
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
overflow-wrap:break-word;
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
.tds-page-header [slot="actions"]{
|
|
109
|
+
.tds-page-header [slot="actions"], .tds-page-header .tds-page-header__actions{
|
|
110
110
|
width:100%;
|
|
111
111
|
}
|
|
112
112
|
|
|
@@ -235,7 +235,7 @@
|
|
|
235
235
|
align-items:flex-start;
|
|
236
236
|
}
|
|
237
237
|
|
|
238
|
-
.tds-page-header [slot="actions"]{
|
|
238
|
+
.tds-page-header [slot="actions"], .tds-page-header .tds-page-header__actions{
|
|
239
239
|
width:auto;
|
|
240
240
|
}
|
|
241
241
|
|
|
@@ -2152,8 +2152,8 @@ a[class="tds-btn"]{
|
|
|
2152
2152
|
}
|
|
2153
2153
|
|
|
2154
2154
|
:is(.tds-checkbox input[type="checkbox"]):focus-visible{
|
|
2155
|
-
outline:solid
|
|
2156
|
-
outline-offset:
|
|
2155
|
+
outline:solid var(--t-spacing-fourth) var(--t-border-color-status-info);
|
|
2156
|
+
outline-offset:var(--t-spacing-fourth);
|
|
2157
2157
|
}
|
|
2158
2158
|
|
|
2159
2159
|
:is(.tds-checkbox input[type="checkbox"]):checked,:is(.tds-checkbox input[type="checkbox"]):indeterminate{
|