Skip to content

Commit 6913544

Browse files
committed
fixed search, some styling
1 parent a9ed216 commit 6913544

File tree

2 files changed

+12
-11
lines changed

2 files changed

+12
-11
lines changed

src/controls/sitePicker/SitePicker.tsx

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ const styles = mergeStyleSets({
1616
width: '100%',
1717
textAlign: 'center'
1818
},
19+
searchBox: {
20+
margin: '4px 0'
21+
},
1922
siteOption: {
2023
display: 'flex',
2124
whiteSpace: 'nowrap',
@@ -81,16 +84,14 @@ export const SitePicker: React.FunctionComponent<ISitePickerProps> = (props: Rea
8184
const newFilteredSites = allSites.filter(s => s.title && s.title.toLowerCase().indexOf(loweredNewSearchQuery) !== -1);
8285

8386
setSearchQuery(newSearchQuery);
84-
// hack to make dropdown update
85-
setFilteredSites([]);
8687
setFilteredSites(newFilteredSites);
8788
}, [allSites]);
8889

8990
const onSelectionChange = React.useCallback((e, item: IDropdownOption, index: number) => {
9091
const newSelectedSites = selectedSites ? [...selectedSites] : [];
9192

9293
if (multiSelect !== false) {
93-
const existingIndex = findIndex(newSelectedSites, s => s.id === item.key);
94+
const existingIndex = findIndex(newSelectedSites, s => s.url === item.key);
9495

9596
if (existingIndex >= 0) {
9697
newSelectedSites.splice(existingIndex, 1);
@@ -121,20 +122,19 @@ export const SitePicker: React.FunctionComponent<ISitePickerProps> = (props: Rea
121122
});
122123
}
123124

124-
const selectedSitesIds: string[] = selectedSites ? selectedSites.map(s => s.id!) : [];
125+
const selectedSitesIds: string[] = selectedSites ? selectedSites.map(s => s.url!) : [];
125126

126127
if (filteredSites) {
127128
filteredSites.forEach(s => {
128129
result.push({
129-
key: s.id,
130+
key: s.url,
130131
text: s.title,
131132
data: s,
132-
selected: selectedSitesIds.indexOf(s.id) !== -1
133+
selected: selectedSitesIds.indexOf(s.url) !== -1
133134
});
134135
});
135136
}
136137

137-
console.log(result);
138138
return result;
139139
}, [allowSearch, selectedSites, filteredSites]);
140140

@@ -147,7 +147,8 @@ export const SitePicker: React.FunctionComponent<ISitePickerProps> = (props: Rea
147147
return <SearchBox
148148
placeholder={searchPlaceholder}
149149
value={searchQuery}
150-
onChange={async.debounce(onSearchChange, deferredSearchTime || 200)} />;
150+
onChange={async.debounce(onSearchChange, deferredSearchTime || 200)}
151+
className={styles.searchBox} />;
151152
}
152153
// {multiSelect !== false && <Checkbox className={styles.siteOptionCheckbox} checked={option.selected} disabled={option.disabled} />}
153154
return <div className={styles.siteOption}>
@@ -226,8 +227,8 @@ export const SitePicker: React.FunctionComponent<ISitePickerProps> = (props: Rea
226227
label={label}
227228
placeholder={placeholder}
228229
options={getOptions()}
229-
selectedKey={multiSelect === false && !!selectedSites && !!selectedSites[0] ? selectedSites[0].id : undefined}
230-
selectedKeys = { multiSelect !== false && !!selectedSites ? selectedSites.map(s => s.id) : undefined }
230+
selectedKey={multiSelect === false && !!selectedSites && !!selectedSites[0] ? selectedSites[0].url : undefined}
231+
selectedKeys = { multiSelect !== false && !!selectedSites ? selectedSites.map(s => s.url) : undefined }
231232
disabled={disabled}
232233
multiSelect={multiSelect !== false}
233234
onRenderOption={onRenderOption}

src/webparts/controlsTest/components/ControlsTest.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1317,7 +1317,7 @@ export default class ControlsTest extends React.Component<IControlsTestProps, IC
13171317
label={'select sites'}
13181318
mode={'web'}
13191319
allowSearch={true}
1320-
multiSelect={true}
1320+
multiSelect={false}
13211321
onChange={(sites) => { console.log(sites); }} />
13221322
</div>
13231323

0 commit comments

Comments
 (0)