@atlaskit/link-datasource 1.9.0 → 1.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/CHANGELOG.md +12 -0
- package/dist/cjs/analytics/constants.js +1 -1
- package/dist/cjs/common/zindex.js +4 -2
- package/dist/cjs/hooks/useValidateAqlText.js +21 -16
- package/dist/cjs/i18n/da.js +1 -1
- package/dist/cjs/i18n/en.js +5 -3
- package/dist/cjs/i18n/en_GB.js +5 -3
- package/dist/cjs/i18n/en_ZZ.js +5 -3
- package/dist/cjs/i18n/es.js +1 -1
- package/dist/cjs/i18n/fi.js +1 -1
- package/dist/cjs/i18n/fr.js +1 -1
- package/dist/cjs/i18n/hu.js +1 -1
- package/dist/cjs/i18n/it.js +1 -1
- package/dist/cjs/i18n/ja.js +1 -1
- package/dist/cjs/i18n/ko.js +1 -1
- package/dist/cjs/i18n/nb.js +5 -3
- package/dist/cjs/i18n/nl.js +1 -1
- package/dist/cjs/i18n/pl.js +1 -1
- package/dist/cjs/i18n/pt_BR.js +1 -1
- package/dist/cjs/i18n/ru.js +1 -1
- package/dist/cjs/i18n/sv.js +1 -1
- package/dist/cjs/i18n/tr.js +1 -1
- package/dist/cjs/i18n/uk.js +3 -3
- package/dist/cjs/i18n/vi.js +2 -2
- package/dist/cjs/i18n/zh.js +1 -1
- package/dist/cjs/i18n/zh_TW.js +1 -1
- package/dist/cjs/ui/assets-modal/modal/index.js +1 -1
- package/dist/cjs/ui/assets-modal/search-container/aql-search-input/index.js +12 -6
- package/dist/cjs/ui/jira-issues-modal/basic-filters/hooks/useFieldValues.js +75 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.js +12 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/hooks/useIsComplexQuery.js +12 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/control.js +28 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/footer.js +42 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/formatOptionLabel.js +76 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +121 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/messages.js +38 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.js +31 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/async-popup-select/types.js +5 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/ui/index.js +40 -0
- package/dist/cjs/ui/jira-issues-modal/basic-filters/utils/index.js +11 -0
- package/dist/cjs/ui/jira-issues-modal/jira-search-container/index.js +4 -2
- package/dist/es2019/analytics/constants.js +1 -1
- package/dist/es2019/common/zindex.js +3 -1
- package/dist/es2019/hooks/useValidateAqlText.js +8 -2
- package/dist/es2019/i18n/da.js +1 -1
- package/dist/es2019/i18n/en.js +5 -3
- package/dist/es2019/i18n/en_GB.js +5 -3
- package/dist/es2019/i18n/en_ZZ.js +5 -3
- package/dist/es2019/i18n/es.js +1 -1
- package/dist/es2019/i18n/fi.js +1 -1
- package/dist/es2019/i18n/fr.js +1 -1
- package/dist/es2019/i18n/hu.js +1 -1
- package/dist/es2019/i18n/it.js +1 -1
- package/dist/es2019/i18n/ja.js +1 -1
- package/dist/es2019/i18n/ko.js +1 -1
- package/dist/es2019/i18n/nb.js +5 -3
- package/dist/es2019/i18n/nl.js +1 -1
- package/dist/es2019/i18n/pl.js +1 -1
- package/dist/es2019/i18n/pt_BR.js +1 -1
- package/dist/es2019/i18n/ru.js +1 -1
- package/dist/es2019/i18n/sv.js +1 -1
- package/dist/es2019/i18n/tr.js +1 -1
- package/dist/es2019/i18n/uk.js +3 -3
- package/dist/es2019/i18n/vi.js +2 -2
- package/dist/es2019/i18n/zh.js +1 -1
- package/dist/es2019/i18n/zh_TW.js +1 -1
- package/dist/es2019/ui/assets-modal/modal/index.js +1 -1
- package/dist/es2019/ui/assets-modal/search-container/aql-search-input/index.js +8 -6
- package/dist/es2019/ui/jira-issues-modal/basic-filters/hooks/useFieldValues.js +39 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.js +6 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/hooks/useIsComplexQuery.js +6 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/control.js +16 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/footer.js +36 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/formatOptionLabel.js +74 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +91 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/messages.js +32 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.js +22 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/types.js +1 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/index.js +26 -0
- package/dist/es2019/ui/jira-issues-modal/basic-filters/utils/index.js +5 -0
- package/dist/es2019/ui/jira-issues-modal/jira-search-container/index.js +4 -2
- package/dist/esm/analytics/constants.js +1 -1
- package/dist/esm/common/zindex.js +3 -1
- package/dist/esm/hooks/useValidateAqlText.js +21 -16
- package/dist/esm/i18n/da.js +1 -1
- package/dist/esm/i18n/en.js +5 -3
- package/dist/esm/i18n/en_GB.js +5 -3
- package/dist/esm/i18n/en_ZZ.js +5 -3
- package/dist/esm/i18n/es.js +1 -1
- package/dist/esm/i18n/fi.js +1 -1
- package/dist/esm/i18n/fr.js +1 -1
- package/dist/esm/i18n/hu.js +1 -1
- package/dist/esm/i18n/it.js +1 -1
- package/dist/esm/i18n/ja.js +1 -1
- package/dist/esm/i18n/ko.js +1 -1
- package/dist/esm/i18n/nb.js +5 -3
- package/dist/esm/i18n/nl.js +1 -1
- package/dist/esm/i18n/pl.js +1 -1
- package/dist/esm/i18n/pt_BR.js +1 -1
- package/dist/esm/i18n/ru.js +1 -1
- package/dist/esm/i18n/sv.js +1 -1
- package/dist/esm/i18n/tr.js +1 -1
- package/dist/esm/i18n/uk.js +3 -3
- package/dist/esm/i18n/vi.js +2 -2
- package/dist/esm/i18n/zh.js +1 -1
- package/dist/esm/i18n/zh_TW.js +1 -1
- package/dist/esm/ui/assets-modal/modal/index.js +1 -1
- package/dist/esm/ui/assets-modal/search-container/aql-search-input/index.js +14 -8
- package/dist/esm/ui/jira-issues-modal/basic-filters/hooks/useFieldValues.js +68 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.js +6 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/hooks/useIsComplexQuery.js +6 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/control.js +21 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/footer.js +35 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/formatOptionLabel.js +69 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.js +111 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/messages.js +32 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.js +21 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/async-popup-select/types.js +1 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/ui/index.js +30 -0
- package/dist/esm/ui/jira-issues-modal/basic-filters/utils/index.js +5 -0
- package/dist/esm/ui/jira-issues-modal/jira-search-container/index.js +4 -2
- package/dist/types/common/zindex.d.ts +1 -0
- package/dist/types/hooks/useValidateAqlText.d.ts +6 -2
- package/dist/types/i18n/en.d.ts +2 -0
- package/dist/types/i18n/en_GB.d.ts +2 -0
- package/dist/types/i18n/en_ZZ.d.ts +2 -0
- package/dist/types/i18n/nb.d.ts +2 -0
- package/dist/types/types/assets/types.d.ts +4 -1
- package/dist/types/ui/jira-issues-modal/basic-filters/hooks/useFieldValues.d.ts +12 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.d.ts +3 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/hooks/useIsComplexQuery.d.ts +3 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/control.d.ts +5 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/footer.d.ts +7 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/formatOptionLabel.d.ts +3 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.d.ts +9 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/messages.d.ts +32 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.d.ts +9 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/types.d.ts +23 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/ui/index.d.ts +6 -0
- package/dist/types/ui/jira-issues-modal/basic-filters/utils/index.d.ts +1 -0
- package/dist/types-ts4.5/common/zindex.d.ts +1 -0
- package/dist/types-ts4.5/hooks/useValidateAqlText.d.ts +6 -2
- package/dist/types-ts4.5/i18n/en.d.ts +2 -0
- package/dist/types-ts4.5/i18n/en_GB.d.ts +2 -0
- package/dist/types-ts4.5/i18n/en_ZZ.d.ts +2 -0
- package/dist/types-ts4.5/i18n/nb.d.ts +2 -0
- package/dist/types-ts4.5/types/assets/types.d.ts +4 -1
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/hooks/useFieldValues.d.ts +12 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/hooks/useHydrateJqlQuery.d.ts +3 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/hooks/useIsComplexQuery.d.ts +3 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/control.d.ts +5 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/footer.d.ts +7 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/formatOptionLabel.d.ts +3 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.d.ts +9 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/messages.d.ts +32 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/trigger.d.ts +9 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/types.d.ts +23 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/index.d.ts +6 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/utils/index.d.ts +1 -0
- package/package.json +8 -6
- package/dist/cjs/ui/jira-issues-modal/jira-search-container/basic-filters/hooks/useBasicFilterHook.js +0 -17
- package/dist/cjs/ui/jira-issues-modal/jira-search-container/basic-filters/ui/common/dropdown/index.js +0 -15
- package/dist/cjs/ui/jira-issues-modal/jira-search-container/basic-filters/ui/containers/project/index.js +0 -13
- package/dist/cjs/ui/jira-issues-modal/jira-search-container/basic-filters/ui/index.js +0 -15
- package/dist/es2019/ui/jira-issues-modal/jira-search-container/basic-filters/hooks/useBasicFilterHook.js +0 -11
- package/dist/es2019/ui/jira-issues-modal/jira-search-container/basic-filters/ui/common/dropdown/index.js +0 -8
- package/dist/es2019/ui/jira-issues-modal/jira-search-container/basic-filters/ui/containers/project/index.js +0 -6
- package/dist/es2019/ui/jira-issues-modal/jira-search-container/basic-filters/ui/index.js +0 -8
- package/dist/esm/ui/jira-issues-modal/jira-search-container/basic-filters/hooks/useBasicFilterHook.js +0 -11
- package/dist/esm/ui/jira-issues-modal/jira-search-container/basic-filters/ui/common/dropdown/index.js +0 -8
- package/dist/esm/ui/jira-issues-modal/jira-search-container/basic-filters/ui/containers/project/index.js +0 -6
- package/dist/esm/ui/jira-issues-modal/jira-search-container/basic-filters/ui/index.js +0 -8
- package/dist/types/ui/jira-issues-modal/jira-search-container/basic-filters/hooks/useBasicFilterHook.d.ts +0 -4
- package/dist/types/ui/jira-issues-modal/jira-search-container/basic-filters/ui/common/dropdown/index.d.ts +0 -3
- package/dist/types/ui/jira-issues-modal/jira-search-container/basic-filters/ui/containers/project/index.d.ts +0 -3
- package/dist/types/ui/jira-issues-modal/jira-search-container/basic-filters/ui/index.d.ts +0 -3
- package/dist/types-ts4.5/ui/jira-issues-modal/jira-search-container/basic-filters/hooks/useBasicFilterHook.d.ts +0 -4
- package/dist/types-ts4.5/ui/jira-issues-modal/jira-search-container/basic-filters/ui/common/dropdown/index.d.ts +0 -3
- package/dist/types-ts4.5/ui/jira-issues-modal/jira-search-container/basic-filters/ui/containers/project/index.d.ts +0 -3
- package/dist/types-ts4.5/ui/jira-issues-modal/jira-search-container/basic-filters/ui/index.d.ts +0 -3
- /package/dist/cjs/ui/jira-issues-modal/{jira-search-container/basic-filters → basic-filters}/index.js +0 -0
- /package/dist/es2019/ui/jira-issues-modal/{jira-search-container/basic-filters → basic-filters}/index.js +0 -0
- /package/dist/esm/ui/jira-issues-modal/{jira-search-container/basic-filters → basic-filters}/index.js +0 -0
- /package/dist/types/ui/jira-issues-modal/{jira-search-container/basic-filters → basic-filters}/index.d.ts +0 -0
- /package/dist/types-ts4.5/ui/jira-issues-modal/{jira-search-container/basic-filters → basic-filters}/index.d.ts +0 -0
package/dist/es2019/i18n/ja.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': '更新',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'アイテムを読み込めません',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': '結果を読み込めません',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'JQL
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'JQL 検索の詳細をご確認ください。',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': '語句を入力するか、JQL を使って検索できます。',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Jira の課題を検索',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'いいえ',
|
package/dist/es2019/i18n/ko.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': '새로 고침',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': '항목을 로드할 수 없음',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': '결과를 로드할 수 없음',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'JQL을 사용한 검색에 대해 자세히
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'JQL을 사용한 검색에 대해 자세히 알아보세요.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': '입력을 시작하거나 JQL을 사용하여 검색합니다.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Jira 이슈 검색',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': '아니요',
|
package/dist/es2019/i18n/nb.js
CHANGED
|
@@ -21,13 +21,14 @@ export default {
|
|
|
21
21
|
'linkDataSource.column-picker.no-all-items-shown-message.line-1': 'Søket ditt gav for mange resultater.',
|
|
22
22
|
'linkDataSource.column-picker.no-all-items-shown-message.line-2': 'Prøv igjen med mer spesifikke nøkkelord.',
|
|
23
23
|
'linkDataSource.column-picker.search': 'Søk etter felt',
|
|
24
|
+
'linkDataSource.column-picker.tooltip': 'Konfigurer kolonner',
|
|
24
25
|
'linkDataSource.jira-issues.accessInstructions': 'Kontakt administratoren for å be om tilgang.',
|
|
25
26
|
'linkDataSource.jira-issues.accessRequired': 'Du har ikke tilgang til dette nettstedet',
|
|
26
27
|
'linkDataSource.jira-issues.accessRequiredWithSite': 'Du har ikke tilgang til {siteName}',
|
|
27
28
|
'linkDataSource.jira-issues.checkConnection': 'Sjekk tilkoblingen og oppdater, eller prøv på nytt senere.',
|
|
28
29
|
'linkDataSource.jira-issues.checkConnectionWithSource': 'Sjekk tilkoblingen og oppdater, eller <a>åpne denne spørringen i Jira</a> for å gjennomgå.',
|
|
29
30
|
'linkDataSource.jira-issues.configmodal.basicModeText': 'Grunnleggende',
|
|
30
|
-
'linkDataSource.jira-issues.configmodal.basicTextSearchPlaceholder': 'Søk',
|
|
31
|
+
'linkDataSource.jira-issues.configmodal.basicTextSearchPlaceholder': 'Søk etter saker med nøkkelord',
|
|
31
32
|
'linkDataSource.jira-issues.configmodal.cancelButtonText': 'Avbryt',
|
|
32
33
|
'linkDataSource.jira-issues.configmodal.countViewModeLabel': 'Antallvisning',
|
|
33
34
|
'linkDataSource.jira-issues.configmodal.dropdownChevronLabel': 'Velg Jira-nettsted',
|
|
@@ -41,8 +42,9 @@ export default {
|
|
|
41
42
|
'linkDataSource.jira-issues.refresh': 'Oppdater',
|
|
42
43
|
'linkDataSource.jira-issues.unableToLoadItems': 'Kan ikke laste inn elementer',
|
|
43
44
|
'linkDataSource.jira-issues.unableToLoadResults': 'Kan ikke laste inn resultater',
|
|
44
|
-
'linkDataSource.modal-initial-state.
|
|
45
|
-
'linkDataSource.modal-initial-state.
|
|
45
|
+
'linkDataSource.modal-initial-state.beta': 'Beta',
|
|
46
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Finn ut hvordan du søker med JQL',
|
|
47
|
+
'linkDataSource.modal-initial-state.searchDescription': 'Bruk JQL (Jira Query Language) for å søke etter saker.',
|
|
46
48
|
'linkDataSource.modal-initial-state.searchTitle': 'Søk etter Jira-saker',
|
|
47
49
|
'linkDataSource.render-type.boolean.false': 'Nei',
|
|
48
50
|
'linkDataSource.render-type.boolean.true': 'Ja',
|
package/dist/es2019/i18n/nl.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Vernieuwen',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Kan items niet laden',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Resultaten kunnen niet worden geladen',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Meer informatie over zoeken met JQL',
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Meer informatie over zoeken met JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Begin met typen of gebruik een JQL om te zoeken.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Zoek naar Jira-issues',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Nee',
|
package/dist/es2019/i18n/pl.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Odśwież',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Nie można załadować elementów',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Nie można załadować wyników',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Dowiedz się więcej
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Dowiedz się więcej o wyszukiwaniu przy użyciu zapytań JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Zacznij wpisywać lub użyj języka JQL, aby wyszukać.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Wyszukaj zgłoszenia Jira',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Nie',
|
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Atualizar',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Não foi possível carregar os itens',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Não é possível carregar os resultados',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Saiba mais sobre
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Saiba mais sobre a pesquisa com o JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Comece a digitar ou use o JQL para pesquisar.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Pesquisar itens do Jira',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Não',
|
package/dist/es2019/i18n/ru.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Обновить',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Не удалось загрузить элементы',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Не удалось загрузить результаты',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Подробнее о поиске с помощью JQL',
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Подробнее о поиске с помощью JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Начните вводить текст или используйте JQL для поиска.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Поиск задач Jira',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Нет',
|
package/dist/es2019/i18n/sv.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Uppdatera',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Det gick inte att läsa in objekten',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Det gick inte att läsa in resultat',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Läs mer om att söka med JQL',
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Läs mer om att söka med JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Börja skriva eller använd JQL för att söka.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Sök efter Jira-ärenden',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Nej',
|
package/dist/es2019/i18n/tr.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Yenile',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Öğeler yüklenemiyor',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Sonuçlar yüklenemiyor',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'JQL ile arama yapmak hakkında daha fazla bilgi edinin',
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'JQL ile arama yapmak hakkında daha fazla bilgi edinin.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Aramak için yazmaya başlayın veya JQL kullanın.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Jira konuları arayın',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Hayır',
|
package/dist/es2019/i18n/uk.js
CHANGED
|
@@ -39,9 +39,9 @@ export default {
|
|
|
39
39
|
'linkDataSource.jira-issues.configmodal.selectedJiraSiteLabel': 'Вибрано сайт {siteName}',
|
|
40
40
|
'linkDataSource.jira-issues.noResultsFound': 'Немає результатів',
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Оновити',
|
|
42
|
-
'linkDataSource.jira-issues.unableToLoadItems': 'Не вдалося завантажити
|
|
42
|
+
'linkDataSource.jira-issues.unableToLoadItems': 'Не вдалося завантажити елементи',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Не вдалося завантажити результати',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Докладніше про пошук засобами JQL',
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Докладніше про пошук засобами JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Почніть вводити запит або скористайтеся JQL для пошуку.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Пошук завдань Jira',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Ні',
|
|
@@ -49,7 +49,7 @@ export default {
|
|
|
49
49
|
'linkDataSource.render-type.user.default.display.name': 'Не призначено',
|
|
50
50
|
'linkDataSource.table-footer.date_formatter.under_one_minute': 'Синхронізовано щойно',
|
|
51
51
|
'linkDataSource.table-footer.date_formatter.under_over_minute': 'Синхронізація: {date}',
|
|
52
|
-
'linkDataSource.table-footer.item': '{itemCount, plural, one {елемент} few {елементи} many {елементів} other {
|
|
52
|
+
'linkDataSource.table-footer.item': '{itemCount, plural, one {елемент} few {елементи} many {елементів} other {елементи}}',
|
|
53
53
|
'linkDataSource.table-footer.loading': 'Завантаження…',
|
|
54
54
|
'linkDataSource.table-footer.refresh': 'Оновити'
|
|
55
55
|
};
|
package/dist/es2019/i18n/vi.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': 'Làm mới',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': 'Không thể tải được các mục',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': 'Không tải được kết quả',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': 'Tìm hiểu thêm về việc tìm kiếm bằng JQL',
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': 'Tìm hiểu thêm về việc tìm kiếm bằng JQL.',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': 'Bắt đầu nhập hoặc sử dụng JQL để tìm kiếm.',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': 'Tìm kiếm vấn đề Jira',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': 'Không',
|
|
@@ -49,7 +49,7 @@ export default {
|
|
|
49
49
|
'linkDataSource.render-type.user.default.display.name': 'Chưa được chỉ định',
|
|
50
50
|
'linkDataSource.table-footer.date_formatter.under_one_minute': 'Vừa mới đồng bộ',
|
|
51
51
|
'linkDataSource.table-footer.date_formatter.under_over_minute': 'Đã đồng bộ trong {date}',
|
|
52
|
-
'linkDataSource.table-footer.item': '{itemCount, plural, other {
|
|
52
|
+
'linkDataSource.table-footer.item': '{itemCount, plural, other {mục}}',
|
|
53
53
|
'linkDataSource.table-footer.loading': 'Đang tải...',
|
|
54
54
|
'linkDataSource.table-footer.refresh': 'Làm mới'
|
|
55
55
|
};
|
package/dist/es2019/i18n/zh.js
CHANGED
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': '刷新',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': '无法加载项目',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': '无法加载结果',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': '详细了解如何使用 JQL
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': '详细了解如何使用 JQL 进行搜索。',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': '开始输入搜索内容或使用 JQL 进行搜索。',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': '搜索 Jira 事务',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': '否',
|
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
'linkDataSource.jira-issues.refresh': '重新整理',
|
|
42
42
|
'linkDataSource.jira-issues.unableToLoadItems': '無法載入項目',
|
|
43
43
|
'linkDataSource.jira-issues.unableToLoadResults': '無法載入結果',
|
|
44
|
-
'linkDataSource.modal-initial-state.learnMoreLink': '進一步了解如何使用 JQL
|
|
44
|
+
'linkDataSource.modal-initial-state.learnMoreLink': '進一步了解如何使用 JQL 進行搜尋。',
|
|
45
45
|
'linkDataSource.modal-initial-state.searchDescription': '開始輸入或使用 JQL 進行搜尋。',
|
|
46
46
|
'linkDataSource.modal-initial-state.searchTitle': '搜尋 Jira 議題',
|
|
47
47
|
'linkDataSource.render-type.boolean.false': '否',
|
|
@@ -194,7 +194,7 @@ const analyticsContextAttributes = {
|
|
|
194
194
|
};
|
|
195
195
|
const analyticsContextData = {
|
|
196
196
|
packageName: "@atlaskit/link-datasource",
|
|
197
|
-
packageVersion: "1.
|
|
197
|
+
packageVersion: "1.10.0",
|
|
198
198
|
source: 'datasourceConfigModal'
|
|
199
199
|
};
|
|
200
200
|
const contextData = {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
/** @jsx jsx */
|
|
3
|
-
import { Fragment, useCallback, useRef } from 'react';
|
|
3
|
+
import { Fragment, useCallback, useRef, useState } from 'react';
|
|
4
4
|
import { css, jsx } from '@emotion/react';
|
|
5
5
|
import { useIntl } from 'react-intl-next';
|
|
6
6
|
import { LoadingButton } from '@atlaskit/button';
|
|
7
|
-
import { Field } from '@atlaskit/form';
|
|
7
|
+
import { ErrorMessage, Field } from '@atlaskit/form';
|
|
8
8
|
import CheckCircleIcon from '@atlaskit/icon/glyph/check-circle';
|
|
9
9
|
import CrossCircleIcon from '@atlaskit/icon/glyph/cross-circle';
|
|
10
10
|
import SearchIcon from '@atlaskit/icon/glyph/editor/search';
|
|
@@ -76,6 +76,7 @@ export const AqlSearchInput = ({
|
|
|
76
76
|
const timeout = useRef();
|
|
77
77
|
const lastValue = useRef(value);
|
|
78
78
|
const lastResult = useRef(Promise.resolve(undefined));
|
|
79
|
+
const [message, setMessage] = useState(null);
|
|
79
80
|
const {
|
|
80
81
|
validateAqlText
|
|
81
82
|
} = useValidateAqlText(workspaceId);
|
|
@@ -85,8 +86,9 @@ export const AqlSearchInput = ({
|
|
|
85
86
|
if (!newUnvalidatedQlQuery) {
|
|
86
87
|
return undefined;
|
|
87
88
|
}
|
|
88
|
-
const
|
|
89
|
-
|
|
89
|
+
const validation = await validateAqlText(newUnvalidatedQlQuery);
|
|
90
|
+
setMessage(validation.message);
|
|
91
|
+
return validation.isValid ? undefined : 'invalid';
|
|
90
92
|
}, [validateAqlText]);
|
|
91
93
|
|
|
92
94
|
/* Debounce async validation for input, validation is also called on every field change
|
|
@@ -119,7 +121,7 @@ export const AqlSearchInput = ({
|
|
|
119
121
|
fieldProps,
|
|
120
122
|
meta,
|
|
121
123
|
error
|
|
122
|
-
}) => jsx(Textfield, _extends({}, fieldProps, {
|
|
124
|
+
}) => jsx(Fragment, null, jsx(Textfield, _extends({}, fieldProps, {
|
|
123
125
|
elemBeforeInput: jsx("span", {
|
|
124
126
|
style: {
|
|
125
127
|
paddingLeft: 6,
|
|
@@ -153,5 +155,5 @@ export const AqlSearchInput = ({
|
|
|
153
155
|
})),
|
|
154
156
|
placeholder: formatMessage(searchInputMessages.placeholder),
|
|
155
157
|
testId: testId
|
|
156
|
-
}))));
|
|
158
|
+
})), fieldProps.value && error && message && jsx(ErrorMessage, null, message))));
|
|
157
159
|
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
import { request } from '@atlaskit/linking-common';
|
|
3
|
+
// TODO: https://product-fabric.atlassian.net/browse/EDM-8118
|
|
4
|
+
export const useFieldValues = ({
|
|
5
|
+
filterType
|
|
6
|
+
}) => {
|
|
7
|
+
const [filterOptions, setFilterOptions] = useState([]);
|
|
8
|
+
const [totalCount] = useState(100);
|
|
9
|
+
const [status, setStatus] = useState('empty');
|
|
10
|
+
const fetchFilterOptions = async () => {
|
|
11
|
+
try {
|
|
12
|
+
setStatus('loading');
|
|
13
|
+
const {
|
|
14
|
+
data
|
|
15
|
+
} = await request('post', '/gateway/api/graphql', {
|
|
16
|
+
operationName: 'fieldValues',
|
|
17
|
+
variables: {
|
|
18
|
+
jqlTerm: filterType
|
|
19
|
+
}
|
|
20
|
+
}, {
|
|
21
|
+
'Content-Type': 'application/json',
|
|
22
|
+
'X-ExperimentalApi': 'JiraJqlBuilder'
|
|
23
|
+
});
|
|
24
|
+
if (data) {
|
|
25
|
+
setFilterOptions(data);
|
|
26
|
+
setStatus('resolved');
|
|
27
|
+
}
|
|
28
|
+
} catch (error) {
|
|
29
|
+
setStatus('error');
|
|
30
|
+
return setFilterOptions([]);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
return {
|
|
34
|
+
filterOptions,
|
|
35
|
+
fetchFilterOptions,
|
|
36
|
+
totalCount,
|
|
37
|
+
status
|
|
38
|
+
};
|
|
39
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { components } from '@atlaskit/select';
|
|
4
|
+
import { N40 } from '@atlaskit/theme/colors';
|
|
5
|
+
const popupCustomControlStyles = () => ({
|
|
6
|
+
display: 'flex',
|
|
7
|
+
padding: "var(--ds-space-050, 4px)",
|
|
8
|
+
borderBottom: `solid 1px ${`var(--ds-border, ${N40})`}`
|
|
9
|
+
});
|
|
10
|
+
export const CustomControl = ({
|
|
11
|
+
children,
|
|
12
|
+
...innerProps
|
|
13
|
+
}) => /*#__PURE__*/React.createElement(components.Control, _extends({}, innerProps, {
|
|
14
|
+
getStyles: popupCustomControlStyles
|
|
15
|
+
}), children);
|
|
16
|
+
export default CustomControl;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { FormattedMessage } from 'react-intl-next';
|
|
4
|
+
import { Flex, Inline, xcss } from '@atlaskit/primitives';
|
|
5
|
+
import { N40 } from '@atlaskit/theme/colors';
|
|
6
|
+
import { asyncPopupSelectMessages } from './messages';
|
|
7
|
+
const footerContainerStyles = xcss({
|
|
8
|
+
paddingTop: 'space.050',
|
|
9
|
+
paddingBottom: 'space.050',
|
|
10
|
+
borderTop: `${`var(--ds-border, ${N40})`} solid 1px`
|
|
11
|
+
});
|
|
12
|
+
const footerPaginationInfoStyles = xcss({
|
|
13
|
+
color: 'color.text.subtlest',
|
|
14
|
+
marginBlock: 'space.100',
|
|
15
|
+
marginInline: 'space.150'
|
|
16
|
+
});
|
|
17
|
+
const PopupFooter = ({
|
|
18
|
+
currentDisplayCount,
|
|
19
|
+
totalCount
|
|
20
|
+
}) => {
|
|
21
|
+
return /*#__PURE__*/React.createElement(Flex, {
|
|
22
|
+
testId: "jlol-basic-filter-popup-select--footer",
|
|
23
|
+
direction: "row",
|
|
24
|
+
alignItems: "center",
|
|
25
|
+
justifyContent: "end",
|
|
26
|
+
xcss: footerContainerStyles
|
|
27
|
+
}, /*#__PURE__*/React.createElement(Inline, {
|
|
28
|
+
xcss: footerPaginationInfoStyles
|
|
29
|
+
}, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, asyncPopupSelectMessages.paginationDetails, {
|
|
30
|
+
values: {
|
|
31
|
+
currentDisplayCount,
|
|
32
|
+
totalCount
|
|
33
|
+
}
|
|
34
|
+
}))));
|
|
35
|
+
};
|
|
36
|
+
export default PopupFooter;
|
package/dist/es2019/ui/jira-issues-modal/basic-filters/ui/async-popup-select/formatOptionLabel.js
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import Avatar from '@atlaskit/avatar';
|
|
3
|
+
import Lozenge from '@atlaskit/lozenge';
|
|
4
|
+
import { Box, Flex, xcss } from '@atlaskit/primitives';
|
|
5
|
+
const commonLabelStyles = xcss({
|
|
6
|
+
overflow: 'hidden',
|
|
7
|
+
textOverflow: 'ellipsis'
|
|
8
|
+
});
|
|
9
|
+
const avatarOptionLabelStyles = xcss({
|
|
10
|
+
marginLeft: 'space.050'
|
|
11
|
+
});
|
|
12
|
+
const IconOptionLabel = ({
|
|
13
|
+
data
|
|
14
|
+
}) => {
|
|
15
|
+
const {
|
|
16
|
+
label,
|
|
17
|
+
icon: avatar,
|
|
18
|
+
value
|
|
19
|
+
} = data;
|
|
20
|
+
const avatarOptionLabelData = {
|
|
21
|
+
label,
|
|
22
|
+
avatar,
|
|
23
|
+
value,
|
|
24
|
+
optionType: 'avatarLabel',
|
|
25
|
+
isSquare: true
|
|
26
|
+
};
|
|
27
|
+
return /*#__PURE__*/React.createElement(AvatarOptionLabel, {
|
|
28
|
+
data: avatarOptionLabelData,
|
|
29
|
+
testId: "jlol-basic-filter-popup-select-option--icon-label"
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
const LozengeOptionLabel = ({
|
|
33
|
+
data
|
|
34
|
+
}) => {
|
|
35
|
+
return /*#__PURE__*/React.createElement(Lozenge, {
|
|
36
|
+
isBold: data.isBold,
|
|
37
|
+
appearance: data.appearance,
|
|
38
|
+
testId: "jlol-basic-filter-popup-select-option--lozenge"
|
|
39
|
+
}, /*#__PURE__*/React.createElement(Box, {
|
|
40
|
+
xcss: [commonLabelStyles]
|
|
41
|
+
}, data.label));
|
|
42
|
+
};
|
|
43
|
+
const AvatarOptionLabel = ({
|
|
44
|
+
data,
|
|
45
|
+
testId
|
|
46
|
+
}) => {
|
|
47
|
+
return /*#__PURE__*/React.createElement(Flex, {
|
|
48
|
+
alignItems: "center",
|
|
49
|
+
testId: testId || 'jlol-basic-filter-popup-select-option--avatar'
|
|
50
|
+
}, /*#__PURE__*/React.createElement(Avatar, {
|
|
51
|
+
appearance: data.isSquare ? 'square' : 'circle',
|
|
52
|
+
src: data.avatar,
|
|
53
|
+
size: "xsmall"
|
|
54
|
+
}), /*#__PURE__*/React.createElement(Box, {
|
|
55
|
+
xcss: [commonLabelStyles, avatarOptionLabelStyles],
|
|
56
|
+
testId: "nidhin"
|
|
57
|
+
}, data.label));
|
|
58
|
+
};
|
|
59
|
+
const formatOptionLabel = data => {
|
|
60
|
+
if (data.optionType === 'lozengeLabel') {
|
|
61
|
+
return /*#__PURE__*/React.createElement(LozengeOptionLabel, {
|
|
62
|
+
data: data
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
if (data.optionType === 'avatarLabel') {
|
|
66
|
+
return /*#__PURE__*/React.createElement(AvatarOptionLabel, {
|
|
67
|
+
data: data
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
return /*#__PURE__*/React.createElement(IconOptionLabel, {
|
|
71
|
+
data: data
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
export default formatOptionLabel;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import { useIntl } from 'react-intl-next';
|
|
4
|
+
import { CheckboxOption, PopupSelect } from '@atlaskit/select';
|
|
5
|
+
import { useFieldValues } from '../../hooks/useFieldValues';
|
|
6
|
+
import CustomControl from './control';
|
|
7
|
+
import PopupFooter from './footer';
|
|
8
|
+
import formatOptionLabel from './formatOptionLabel';
|
|
9
|
+
import { asyncPopupSelectMessages } from './messages';
|
|
10
|
+
import PopupTrigger from './trigger';
|
|
11
|
+
// Needed to disable filtering from react-select
|
|
12
|
+
const noFilterOptions = () => true;
|
|
13
|
+
const AsyncPopupSelect = ({
|
|
14
|
+
filterType,
|
|
15
|
+
selection,
|
|
16
|
+
onSelectionChange = () => {}
|
|
17
|
+
}) => {
|
|
18
|
+
const {
|
|
19
|
+
formatMessage
|
|
20
|
+
} = useIntl();
|
|
21
|
+
const pickerRef = useRef(null);
|
|
22
|
+
const [searchTerm, setSearchTerm] = useState('');
|
|
23
|
+
const [selectedOptions, setSelectedOptions] = useState(selection);
|
|
24
|
+
const {
|
|
25
|
+
filterOptions,
|
|
26
|
+
fetchFilterOptions,
|
|
27
|
+
totalCount,
|
|
28
|
+
status
|
|
29
|
+
} = useFieldValues({
|
|
30
|
+
filterType
|
|
31
|
+
});
|
|
32
|
+
const handleInputChange = useCallback((searchString, actionMeta) => {
|
|
33
|
+
if (actionMeta.action === 'input-change' && searchString !== searchTerm) {
|
|
34
|
+
setSearchTerm(searchString);
|
|
35
|
+
}
|
|
36
|
+
}, [searchTerm]);
|
|
37
|
+
const handleOptionSelection = newValue => {
|
|
38
|
+
setSelectedOptions(newValue);
|
|
39
|
+
onSelectionChange(newValue);
|
|
40
|
+
};
|
|
41
|
+
const handleOpenPopup = useCallback(async () => {
|
|
42
|
+
if (status === 'empty') {
|
|
43
|
+
fetchFilterOptions();
|
|
44
|
+
}
|
|
45
|
+
}, [fetchFilterOptions, status]);
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
if (status === 'resolved') {
|
|
48
|
+
var _pickerRef$current, _pickerRef$current$se, _pickerRef$current$se2;
|
|
49
|
+
// necessary to refocus the search input after the loading state
|
|
50
|
+
pickerRef === null || pickerRef === void 0 ? void 0 : (_pickerRef$current = pickerRef.current) === null || _pickerRef$current === void 0 ? void 0 : (_pickerRef$current$se = _pickerRef$current.selectRef) === null || _pickerRef$current$se === void 0 ? void 0 : (_pickerRef$current$se2 = _pickerRef$current$se.inputRef) === null || _pickerRef$current$se2 === void 0 ? void 0 : _pickerRef$current$se2.focus();
|
|
51
|
+
}
|
|
52
|
+
}, [status]);
|
|
53
|
+
return /*#__PURE__*/React.createElement(PopupSelect, {
|
|
54
|
+
isMulti: true,
|
|
55
|
+
maxMenuWidth: 300,
|
|
56
|
+
minMenuWidth: 300,
|
|
57
|
+
ref: pickerRef,
|
|
58
|
+
testId: "jlol-basic-filter-popup-select",
|
|
59
|
+
inputId: "jlol-basic-filter-popup-select--input",
|
|
60
|
+
searchThreshold: 0,
|
|
61
|
+
inputValue: searchTerm,
|
|
62
|
+
closeMenuOnSelect: false,
|
|
63
|
+
hideSelectedOptions: false,
|
|
64
|
+
isLoading: status === 'loading',
|
|
65
|
+
placeholder: formatMessage(asyncPopupSelectMessages.selectPlaceholder),
|
|
66
|
+
components: {
|
|
67
|
+
/* @ts-expect-error - This component has stricter OptionType, hence a temp setup untill its made generic */
|
|
68
|
+
Option: CheckboxOption,
|
|
69
|
+
Control: CustomControl
|
|
70
|
+
},
|
|
71
|
+
options: filterOptions,
|
|
72
|
+
value: selectedOptions,
|
|
73
|
+
filterOption: noFilterOptions,
|
|
74
|
+
formatOptionLabel: formatOptionLabel,
|
|
75
|
+
onChange: handleOptionSelection,
|
|
76
|
+
onInputChange: handleInputChange,
|
|
77
|
+
target: ({
|
|
78
|
+
isOpen,
|
|
79
|
+
...triggerProps
|
|
80
|
+
}) => /*#__PURE__*/React.createElement(PopupTrigger, _extends({}, triggerProps, {
|
|
81
|
+
filterType: filterType,
|
|
82
|
+
isSelected: isOpen,
|
|
83
|
+
onClick: handleOpenPopup
|
|
84
|
+
})),
|
|
85
|
+
footer: /*#__PURE__*/React.createElement(PopupFooter, {
|
|
86
|
+
currentDisplayCount: filterOptions.length,
|
|
87
|
+
totalCount: totalCount
|
|
88
|
+
})
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
export default AsyncPopupSelect;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export const asyncPopupSelectMessages = {
|
|
2
|
+
selectPlaceholder: {
|
|
3
|
+
id: 'linkDataSource.basic-filter.dropdown.select.placeholder',
|
|
4
|
+
description: 'Placeholder text to be displayed for the search input box.',
|
|
5
|
+
defaultMessage: 'Search'
|
|
6
|
+
},
|
|
7
|
+
paginationDetails: {
|
|
8
|
+
id: 'linkDataSource.basic-filter.footer.pagination-details',
|
|
9
|
+
description: 'Text to indicate page count and total count information.',
|
|
10
|
+
defaultMessage: '{currentDisplayCount} of {totalCount}'
|
|
11
|
+
},
|
|
12
|
+
projectLabel: {
|
|
13
|
+
id: 'linkDataSource.basic-filter.project.label',
|
|
14
|
+
description: 'Label to be displayed for project filter dropdown button.',
|
|
15
|
+
defaultMessage: 'Project'
|
|
16
|
+
},
|
|
17
|
+
statusLabel: {
|
|
18
|
+
id: 'linkDataSource.basic-filter.status.label',
|
|
19
|
+
description: 'Label to be displayed for status filter dropdown button.',
|
|
20
|
+
defaultMessage: 'Status'
|
|
21
|
+
},
|
|
22
|
+
issuetypeLabel: {
|
|
23
|
+
id: 'linkDataSource.basic-filter.issuetype.label',
|
|
24
|
+
description: 'Label to be displayed for issuetype filter dropdown button.',
|
|
25
|
+
defaultMessage: 'Type'
|
|
26
|
+
},
|
|
27
|
+
assigneeLabel: {
|
|
28
|
+
id: 'linkDataSource.basic-filter.assignee.label',
|
|
29
|
+
description: 'Label to be displayed for assignee filter dropdown button.',
|
|
30
|
+
defaultMessage: 'Assignee'
|
|
31
|
+
}
|
|
32
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React, { forwardRef } from 'react';
|
|
2
|
+
import { FormattedMessage } from 'react-intl-next';
|
|
3
|
+
import Button from '@atlaskit/button/standard-button';
|
|
4
|
+
import ChevronDownIcon from '@atlaskit/icon/glyph/chevron-down';
|
|
5
|
+
import { asyncPopupSelectMessages } from './messages';
|
|
6
|
+
const PopupTrigger = /*#__PURE__*/forwardRef(({
|
|
7
|
+
filterType,
|
|
8
|
+
isSelected,
|
|
9
|
+
onClick
|
|
10
|
+
}, ref) => {
|
|
11
|
+
return /*#__PURE__*/React.createElement(Button, {
|
|
12
|
+
ref: ref,
|
|
13
|
+
appearance: "default",
|
|
14
|
+
isSelected: isSelected,
|
|
15
|
+
onClick: onClick,
|
|
16
|
+
testId: `jlol-basic-filter-${filterType}-trigger`,
|
|
17
|
+
iconAfter: /*#__PURE__*/React.createElement(ChevronDownIcon, {
|
|
18
|
+
label: ""
|
|
19
|
+
})
|
|
20
|
+
}, /*#__PURE__*/React.createElement(FormattedMessage, asyncPopupSelectMessages[`${filterType}Label`]));
|
|
21
|
+
});
|
|
22
|
+
export default PopupTrigger;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
|
+
import { Flex } from '@atlaskit/primitives';
|
|
3
|
+
import { isValidJql } from '../utils';
|
|
4
|
+
import AsyncPopupSelect from './async-popup-select';
|
|
5
|
+
const availableBasicFilterTypes = ['project', 'issuetype', 'status', 'assignee'];
|
|
6
|
+
const BasicFilterContainer = ({
|
|
7
|
+
jql
|
|
8
|
+
}) => {
|
|
9
|
+
const [selection] = useState([]);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
if (isValidJql(jql)) {
|
|
12
|
+
// hydrate hook call goes in here
|
|
13
|
+
}
|
|
14
|
+
}, [jql]);
|
|
15
|
+
const handleSelectionChange = () => {};
|
|
16
|
+
return /*#__PURE__*/React.createElement(Flex, {
|
|
17
|
+
gap: "space.100",
|
|
18
|
+
testId: "jlol-basic-filter-container"
|
|
19
|
+
}, availableBasicFilterTypes.map(filter => /*#__PURE__*/React.createElement(AsyncPopupSelect, {
|
|
20
|
+
filterType: filter,
|
|
21
|
+
key: filter,
|
|
22
|
+
selection: selection,
|
|
23
|
+
onSelectionChange: handleSelectionChange
|
|
24
|
+
})));
|
|
25
|
+
};
|
|
26
|
+
export default BasicFilterContainer;
|
|
@@ -4,10 +4,10 @@ import { css, jsx } from '@emotion/react';
|
|
|
4
4
|
import { useIntl } from 'react-intl-next';
|
|
5
5
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
6
6
|
import { useDatasourceAnalyticsEvents } from '../../../analytics';
|
|
7
|
+
import { BasicFilters } from '../basic-filters';
|
|
7
8
|
import { BasicSearchInput } from '../basic-search-input';
|
|
8
9
|
import { JiraJQLEditor } from '../jql-editor';
|
|
9
10
|
import { ModeSwitcher } from '../mode-switcher';
|
|
10
|
-
import { BasicFilters } from './basic-filters';
|
|
11
11
|
import { buildJQL } from './buildJQL';
|
|
12
12
|
import { modeSwitcherMessages } from './messages';
|
|
13
13
|
const inputContainerStyles = css({
|
|
@@ -92,7 +92,9 @@ export const JiraSearchContainer = props => {
|
|
|
92
92
|
onChange: handleBasicSearchChange,
|
|
93
93
|
onSearch: handleSearch,
|
|
94
94
|
searchTerm: basicSearchTerm
|
|
95
|
-
}), showBasicFilters && jsx(BasicFilters,
|
|
95
|
+
}), showBasicFilters && jsx(BasicFilters, {
|
|
96
|
+
jql: jql
|
|
97
|
+
})), currentSearchMethod === 'jql' && jsx(JiraJQLEditor, {
|
|
96
98
|
cloudId: cloudId || '',
|
|
97
99
|
isSearching: isSearching,
|
|
98
100
|
onChange: onQueryChange,
|