Skip to content

Commit 1cb5d1e

Browse files
authored
Merge branch 'primefaces:master' into new-feature-primefaces#4134
2 parents a42bd36 + 64903b4 commit 1cb5d1e

File tree

153 files changed

+3153
-1179
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

153 files changed

+3153
-1179
lines changed

CHANGELOG.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,40 @@
11
# Changelog
22

3+
## [9.5.0](https://github.com/primefaces/primereact/tree/9.5.0) (2023-05-24)
4+
5+
[Full Changelog](https://github.com/primefaces/primereact/compare/9.4.0...9.5.0)
6+
7+
**Implemented New Features and Enhancements:**
8+
9+
- Add `hideOverlaysOnDocumentScrolling` option to PrimeReact config [\#4448](https://github.com/primefaces/primereact/issues/4448)
10+
- Icons: clipPath improvements [\#4441](https://github.com/primefaces/primereact/issues/4441)
11+
- AutoComplete: panelFooterTemplate prop [\#4426](https://github.com/primefaces/primereact/issues/4426)
12+
- MultiSelect: No way to disable filter auto focus [\#4423](https://github.com/primefaces/primereact/issues/4423)
13+
- New passthrough\(pt\) property implementation for Media Components [\#4393](https://github.com/primefaces/primereact/issues/4393)
14+
- New passthrough\(pt\) property implementation for Chart & FileUpload & Message Components [\#4392](https://github.com/primefaces/primereact/issues/4392)
15+
- New passthrough\(pt\) property implementation for Menu Components [\#4391](https://github.com/primefaces/primereact/issues/4391)
16+
- Mention: suggestion panel to hide when scrolling away [\#4223](https://github.com/primefaces/primereact/issues/4223)
17+
- Messages-Toast: Inconsistency [\#4077](https://github.com/primefaces/primereact/issues/4077)
18+
- Menu: Add ability to right align [\#3753](https://github.com/primefaces/primereact/issues/3753)
19+
20+
**Fixed bugs:**
21+
22+
- Dropdown: Footer using incorrect style name [\#4446](https://github.com/primefaces/primereact/issues/4446)
23+
- InputNumber: preventing ripple on buttons [\#4443](https://github.com/primefaces/primereact/issues/4443)
24+
- Datatable: filterIcon and filterClearIcon not propagated [\#4439](https://github.com/primefaces/primereact/issues/4439)
25+
- BreadCrumb: SVG location of the DOM [\#4438](https://github.com/primefaces/primereact/issues/4438)
26+
- DataTable: Filter Clear icon is missing [\#4437](https://github.com/primefaces/primereact/issues/4437)
27+
- Datatable: Setting rowEditorInitIcon has no effect. [\#4430](https://github.com/primefaces/primereact/issues/4430)
28+
- MultiSelect clear icon not aligned correctly [\#4427](https://github.com/primefaces/primereact/issues/4427)
29+
- TriStateCheckbox: "undefined" value render checkbox highlighted but without value [\#4422](https://github.com/primefaces/primereact/issues/4422)
30+
- Checkbox: Toggling value by clicking the label broken [\#4402](https://github.com/primefaces/primereact/issues/4402)
31+
- Image: Zoom out action disabled when fully zoomed in [\#4400](https://github.com/primefaces/primereact/issues/4400)
32+
- ConfirmDialog: Missing dialog header [\#4397](https://github.com/primefaces/primereact/issues/4397)
33+
- Autocomplete: multiple + forceSelection [\#4363](https://github.com/primefaces/primereact/issues/4363)
34+
- DataTable: resizableColumns with stateStorage will not adjust saved column width after refresh. [\#4211](https://github.com/primefaces/primereact/issues/4211)
35+
- Autocomplete clears selected values onBlur when forceSelection and multiple are true [\#4203](https://github.com/primefaces/primereact/issues/4203)
36+
- Dropdown: rendering problem when used in a Dialog [\#2683](https://github.com/primefaces/primereact/issues/2683)
37+
338
## [9.4.0](https://github.com/primefaces/primereact/tree/9.4.0) (2023-05-12)
439

540
[Full Changelog](https://github.com/primefaces/primereact/compare/9.3.1...9.4.0)

components/doc/autocomplete/templatedoc.js

Lines changed: 51 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,30 @@ export function TemplateDoc(props) {
3535
);
3636
};
3737

38+
const panelFooterTemplate = () => {
39+
const isCountrySelected = (filteredCountries || []).some((country) => country['name'] === selectedCountry);
40+
41+
return (
42+
<div className="py-2 px-3">
43+
{isCountrySelected ? (
44+
<span>
45+
<b>{selectedCountry}</b> selected.
46+
</span>
47+
) : (
48+
'No country selected.'
49+
)}
50+
</div>
51+
);
52+
};
53+
3854
useEffect(() => {
3955
CountryService.getCountries().then((data) => setCountries(data));
4056
}, []); // eslint-disable-line react-hooks/exhaustive-deps
4157

4258
const code = {
4359
basic: `
44-
<AutoComplete field="name" value={selectedCountry} suggestions={filteredCountries}
45-
completeMethod={search} onChange={(e) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} />
60+
<AutoComplete field="name" value={selectedCountry} suggestions={filteredCountries}
61+
completeMethod={search} onChange={(e) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} panelFooterTemplate={panelFooterTemplate} />
4662
`,
4763
javascript: `
4864
import React, { useEffect, useState } from 'react';
@@ -54,6 +70,21 @@ export default function TemplateDemo() {
5470
const [selectedCountry, setSelectedCountry] = useState(null);
5571
const [filteredCountries, setFilteredCountries] = useState(null);
5672
73+
const panelFooterTemplate = () => {
74+
const isCountrySelected = (filteredCountries || []).some( country => country['name'] === selectedCountry );
75+
return (
76+
<div className="py-2 px-3">
77+
{isCountrySelected ? (
78+
<span>
79+
<b>{selectedCountry}</b> selected.
80+
</span>
81+
) : (
82+
'No country selected.'
83+
)}
84+
</div>
85+
);
86+
};
87+
5788
const search = (event) => {
5889
// Timeout to emulate a network connection
5990
setTimeout(() => {
@@ -93,7 +124,7 @@ export default function TemplateDemo() {
93124
return (
94125
<div className="card flex justify-content-center">
95126
<AutoComplete field="name" value={selectedCountry} suggestions={filteredCountries}
96-
completeMethod={search} onChange={(e) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} />
127+
completeMethod={search} onChange={(e) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} panelFooterTemplate={panelFooterTemplate} />
97128
</div>
98129
)
99130
}
@@ -144,6 +175,21 @@ export default function TemplateDemo() {
144175
</div>
145176
);
146177
};
178+
179+
const panelFooterTemplate = () => {
180+
const isCountrySelected = (filteredCountries || []).some( country => country['name'] === selectedCountry );
181+
return (
182+
<div className="py-2 px-3">
183+
{isCountrySelected ? (
184+
<span>
185+
<b>{selectedCountry}</b> selected.
186+
</span>
187+
) : (
188+
'No country selected.'
189+
)}
190+
</div>
191+
);
192+
};
147193
148194
useEffect(() => {
149195
CountryService.getCountries().then((data) => setCountries(data));
@@ -152,7 +198,7 @@ export default function TemplateDemo() {
152198
return (
153199
<div className="card flex justify-content-center">
154200
<AutoComplete field="name" value={selectedCountry} suggestions={filteredCountries}
155-
completeMethod={search} onChange={(e: AutoCompleteChangeEvent) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} />
201+
completeMethod={search} onChange={(e: AutoCompleteChangeEvent) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} panelFooterTemplate={panelFooterTemplate} />
156202
</div>
157203
)
158204
}
@@ -175,7 +221,7 @@ export default function TemplateDemo() {
175221
</p>
176222
</DocSectionText>
177223
<div className="card flex justify-content-center">
178-
<AutoComplete field="name" value={selectedCountry} suggestions={filteredCountries} completeMethod={search} onChange={(e) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} />
224+
<AutoComplete field="name" value={selectedCountry} suggestions={filteredCountries} completeMethod={search} onChange={(e) => setSelectedCountry(e.value)} itemTemplate={itemTemplate} panelFooterTemplate={panelFooterTemplate} />
179225
</div>
180226
<DocSectionCode code={code} service={['CountryService']} />
181227
</>

0 commit comments

Comments
 (0)