@atlaskit/link-datasource 1.27.4 → 1.28.1
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/services/mocks.js +152 -1
- package/dist/cjs/services/useBasicFilterAGG.js +9 -2
- package/dist/cjs/services/utils.js +3 -2
- package/dist/cjs/ui/common/modal/popup-select/formatOptionLabel.js +6 -3
- package/dist/cjs/ui/common/modal/popup-select/index.js +2 -1
- package/dist/cjs/ui/common/modal/popup-select/trigger.js +1 -2
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.js +19 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.js +89 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js +49 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.js +75 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +32 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js +110 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js +14 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.js +48 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.js +120 -0
- package/dist/cjs/ui/confluence-search-modal/basic-filters/index.js +14 -3
- package/dist/cjs/ui/confluence-search-modal/basic-filters/types.js +11 -0
- package/dist/cjs/ui/confluence-search-modal/confluence-search-container/index.js +25 -1
- package/dist/cjs/ui/confluence-search-modal/modal/index.js +41 -11
- package/dist/cjs/ui/datasource-table-view/datasourceTableView.js +1 -0
- package/dist/cjs/ui/table-footer/index.js +8 -2
- package/dist/cjs/ui/table-footer/messages.js +5 -0
- package/dist/cjs/ui/table-footer/powered-by-jsm-assets/index.js +53 -0
- package/dist/es2019/services/mocks.js +151 -0
- package/dist/es2019/services/useBasicFilterAGG.js +8 -3
- package/dist/es2019/services/utils.js +8 -0
- package/dist/es2019/ui/common/modal/popup-select/formatOptionLabel.js +6 -3
- package/dist/es2019/ui/common/modal/popup-select/index.js +1 -1
- package/dist/es2019/ui/common/modal/popup-select/trigger.js +1 -2
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.js +7 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.js +68 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js +43 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.js +66 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +26 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js +82 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js +8 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.js +25 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.js +74 -0
- package/dist/es2019/ui/confluence-search-modal/basic-filters/index.js +17 -2
- package/dist/es2019/ui/confluence-search-modal/basic-filters/types.js +5 -0
- package/dist/es2019/ui/confluence-search-modal/confluence-search-container/index.js +20 -1
- package/dist/es2019/ui/confluence-search-modal/modal/index.js +27 -3
- package/dist/es2019/ui/datasource-table-view/datasourceTableView.js +1 -0
- package/dist/es2019/ui/table-footer/index.js +7 -1
- package/dist/es2019/ui/table-footer/messages.js +5 -0
- package/dist/es2019/ui/table-footer/powered-by-jsm-assets/index.js +45 -0
- package/dist/esm/services/mocks.js +151 -0
- package/dist/esm/services/useBasicFilterAGG.js +10 -3
- package/dist/esm/services/utils.js +2 -1
- package/dist/esm/ui/common/modal/popup-select/formatOptionLabel.js +6 -3
- package/dist/esm/ui/common/modal/popup-select/index.js +2 -1
- package/dist/esm/ui/common/modal/popup-select/trigger.js +1 -2
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.js +9 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.js +79 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js +43 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.js +68 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +25 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js +100 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js +8 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.js +41 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.js +113 -0
- package/dist/esm/ui/confluence-search-modal/basic-filters/index.js +14 -3
- package/dist/esm/ui/confluence-search-modal/basic-filters/types.js +5 -0
- package/dist/esm/ui/confluence-search-modal/confluence-search-container/index.js +25 -1
- package/dist/esm/ui/confluence-search-modal/modal/index.js +41 -11
- package/dist/esm/ui/datasource-table-view/datasourceTableView.js +1 -0
- package/dist/esm/ui/table-footer/index.js +8 -2
- package/dist/esm/ui/table-footer/messages.js +5 -0
- package/dist/esm/ui/table-footer/powered-by-jsm-assets/index.js +46 -0
- package/dist/types/analytics/generated/analytics.types.d.ts +7 -0
- package/dist/types/services/mocks.d.ts +51 -0
- package/dist/types/services/useBasicFilterAGG.d.ts +2 -0
- package/dist/types/services/utils.d.ts +1 -0
- package/dist/types/ui/common/modal/popup-select/index.d.ts +1 -1
- package/dist/types/ui/common/modal/popup-select/types.d.ts +6 -1
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.d.ts +3 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.d.ts +8 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.d.ts +42 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.d.ts +31 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.d.ts +10 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.d.ts +10 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.d.ts +7 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.d.ts +7 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.d.ts +16 -0
- package/dist/types/ui/confluence-search-modal/basic-filters/index.d.ts +6 -1
- package/dist/types/ui/confluence-search-modal/basic-filters/types.d.ts +20 -0
- package/dist/types/ui/confluence-search-modal/confluence-search-container/index.d.ts +2 -1
- package/dist/types/ui/confluence-search-modal/types.d.ts +2 -1
- package/dist/types/ui/table-footer/index.d.ts +2 -1
- package/dist/types/ui/table-footer/messages.d.ts +5 -0
- package/dist/types/ui/table-footer/powered-by-jsm-assets/index.d.ts +4 -0
- package/dist/types-ts4.5/analytics/generated/analytics.types.d.ts +7 -0
- package/dist/types-ts4.5/services/mocks.d.ts +51 -0
- package/dist/types-ts4.5/services/useBasicFilterAGG.d.ts +2 -0
- package/dist/types-ts4.5/services/utils.d.ts +1 -0
- package/dist/types-ts4.5/ui/common/modal/popup-select/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/common/modal/popup-select/types.d.ts +6 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.d.ts +3 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.d.ts +42 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/styled.d.ts +31 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.d.ts +10 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.d.ts +10 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/hooks/useCurrentUserInfo.d.ts +7 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/hooks/useRecommendation.d.ts +16 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/index.d.ts +6 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/types.d.ts +20 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/confluence-search-container/index.d.ts +2 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/types.d.ts +2 -1
- package/dist/types-ts4.5/ui/table-footer/index.d.ts +2 -1
- package/dist/types-ts4.5/ui/table-footer/messages.d.ts +5 -0
- package/dist/types-ts4.5/ui/table-footer/powered-by-jsm-assets/index.d.ts +4 -0
- package/examples-helpers/buildAssetsIssuesTable.tsx +71 -0
- package/examples-helpers/useAssetsTableProps.tsx +57 -0
- package/package.json +8 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @atlaskit/link-datasource
|
|
2
2
|
|
|
3
|
+
## 1.28.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#91884](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/91884) [`e6c2b9a64494`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/e6c2b9a64494) - The changes here adds `Edited or Created by` filter to the confluence list of links config modal.
|
|
8
|
+
|
|
9
|
+
## 1.28.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [#90515](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/90515) [`cc097687c554`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/cc097687c554) - [ux] Add Powered by Assets Label to the Assets LOL
|
|
14
|
+
|
|
3
15
|
## 1.27.4
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.mockHydrateJqlResponse = exports.mockFieldValuesResponse = void 0;
|
|
6
|
+
exports.mockUserRecommendationsResponse = exports.mockHydrateJqlResponse = exports.mockFieldValuesResponse = void 0;
|
|
7
7
|
var mockHydrateJqlResponse = exports.mockHydrateJqlResponse = {
|
|
8
8
|
data: {
|
|
9
9
|
jira: {
|
|
@@ -131,4 +131,155 @@ var mockFieldValuesResponse = exports.mockFieldValuesResponse = {
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
+
};
|
|
135
|
+
var mockUserRecommendationsResponse = exports.mockUserRecommendationsResponse = {
|
|
136
|
+
recommendedUsers: [{
|
|
137
|
+
entityType: 'USER',
|
|
138
|
+
id: '5ffe1efc34847e0069446bf8',
|
|
139
|
+
name: 'Atlassian Assist (staging)',
|
|
140
|
+
avatarUrl: '',
|
|
141
|
+
nickname: 'Atlassian Assist (staging)',
|
|
142
|
+
matchPositions: {},
|
|
143
|
+
accessLevel: 'CONTAINER',
|
|
144
|
+
accountStatus: 'ACTIVE',
|
|
145
|
+
notMentionable: false,
|
|
146
|
+
userType: 'APP',
|
|
147
|
+
attributes: {
|
|
148
|
+
isConfluenceExternalCollaborator: false
|
|
149
|
+
}
|
|
150
|
+
}, {
|
|
151
|
+
entityType: 'USER',
|
|
152
|
+
id: '62df272c3aaeedcae755c533',
|
|
153
|
+
name: 'Atlas for Jira (staging)',
|
|
154
|
+
avatarUrl: '',
|
|
155
|
+
nickname: 'Atlas for Jira (staging)',
|
|
156
|
+
matchPositions: {},
|
|
157
|
+
accessLevel: 'CONTAINER',
|
|
158
|
+
accountStatus: 'ACTIVE',
|
|
159
|
+
notMentionable: false,
|
|
160
|
+
userType: 'APP',
|
|
161
|
+
attributes: {
|
|
162
|
+
isConfluenceExternalCollaborator: false
|
|
163
|
+
}
|
|
164
|
+
}, {
|
|
165
|
+
entityType: 'USER',
|
|
166
|
+
id: '6232be743eacc50071fe13ba',
|
|
167
|
+
name: 'Stephen',
|
|
168
|
+
email: 'sdemontfort+10@atlassian.com',
|
|
169
|
+
avatarUrl: '',
|
|
170
|
+
nickname: 'Stephen',
|
|
171
|
+
matchPositions: {},
|
|
172
|
+
accessLevel: 'CONTAINER',
|
|
173
|
+
accountStatus: 'ACTIVE',
|
|
174
|
+
notMentionable: false,
|
|
175
|
+
locale: 'en-GB',
|
|
176
|
+
userType: 'DEFAULT',
|
|
177
|
+
attributes: {
|
|
178
|
+
isConfluenceExternalCollaborator: false
|
|
179
|
+
}
|
|
180
|
+
}, {
|
|
181
|
+
entityType: 'USER',
|
|
182
|
+
id: '608b253e2911000071b6e6d6',
|
|
183
|
+
name: 'Pranay Test 1773',
|
|
184
|
+
email: 'pmarella+1773@atlassian.com',
|
|
185
|
+
avatarUrl: '',
|
|
186
|
+
nickname: 'Pranay Test 1773',
|
|
187
|
+
matchPositions: {},
|
|
188
|
+
accessLevel: 'CONTAINER',
|
|
189
|
+
accountStatus: 'ACTIVE',
|
|
190
|
+
notMentionable: false,
|
|
191
|
+
locale: 'en-US',
|
|
192
|
+
userType: 'DEFAULT',
|
|
193
|
+
attributes: {
|
|
194
|
+
isConfluenceExternalCollaborator: false
|
|
195
|
+
}
|
|
196
|
+
}, {
|
|
197
|
+
entityType: 'USER',
|
|
198
|
+
id: '6202a8cfc4e2c9006ae620b1',
|
|
199
|
+
name: 'Jacob Test3',
|
|
200
|
+
email: 'jbrunson+test3@atlassian.com',
|
|
201
|
+
avatarUrl: '',
|
|
202
|
+
nickname: 'Jacob Test3',
|
|
203
|
+
matchPositions: {},
|
|
204
|
+
accessLevel: 'CONTAINER',
|
|
205
|
+
accountStatus: 'ACTIVE',
|
|
206
|
+
notMentionable: false,
|
|
207
|
+
locale: 'en-US',
|
|
208
|
+
userType: 'DEFAULT',
|
|
209
|
+
attributes: {
|
|
210
|
+
isConfluenceExternalCollaborator: false
|
|
211
|
+
}
|
|
212
|
+
}, {
|
|
213
|
+
entityType: 'USER',
|
|
214
|
+
id: '61428180ff23ba00717b7d78',
|
|
215
|
+
name: 'Test Themes',
|
|
216
|
+
avatarUrl: '',
|
|
217
|
+
nickname: 'Test Themes',
|
|
218
|
+
matchPositions: {},
|
|
219
|
+
accessLevel: 'CONTAINER',
|
|
220
|
+
accountStatus: 'ACTIVE',
|
|
221
|
+
notMentionable: false,
|
|
222
|
+
userType: 'APP',
|
|
223
|
+
attributes: {
|
|
224
|
+
isConfluenceExternalCollaborator: false
|
|
225
|
+
}
|
|
226
|
+
}, {
|
|
227
|
+
entityType: 'USER',
|
|
228
|
+
id: '5d9e2c300d44fc0dca5428bb',
|
|
229
|
+
name: 'Confluence Connect Test - AP methods',
|
|
230
|
+
avatarUrl: '',
|
|
231
|
+
nickname: 'Confluence Connect Test - AP methods',
|
|
232
|
+
matchPositions: {},
|
|
233
|
+
accessLevel: 'CONTAINER',
|
|
234
|
+
accountStatus: 'ACTIVE',
|
|
235
|
+
notMentionable: false,
|
|
236
|
+
userType: 'APP',
|
|
237
|
+
attributes: {
|
|
238
|
+
isConfluenceExternalCollaborator: false
|
|
239
|
+
}
|
|
240
|
+
}, {
|
|
241
|
+
entityType: 'USER',
|
|
242
|
+
id: '655363:1276a696-f0d0-4f3a-a022-636723eb5148',
|
|
243
|
+
name: 'Confluence Google Drive',
|
|
244
|
+
avatarUrl: '',
|
|
245
|
+
nickname: 'Confluence Google Drive',
|
|
246
|
+
matchPositions: {},
|
|
247
|
+
accessLevel: 'CONTAINER',
|
|
248
|
+
accountStatus: 'ACTIVE',
|
|
249
|
+
notMentionable: false,
|
|
250
|
+
userType: 'APP',
|
|
251
|
+
attributes: {
|
|
252
|
+
isConfluenceExternalCollaborator: false
|
|
253
|
+
}
|
|
254
|
+
}, {
|
|
255
|
+
entityType: 'USER',
|
|
256
|
+
id: '712020:413e43c0-7202-4016-a318-a004892e7f8c',
|
|
257
|
+
name: 'arthur chen nth user',
|
|
258
|
+
avatarUrl: '',
|
|
259
|
+
nickname: 'arthur chen nth user',
|
|
260
|
+
matchPositions: {},
|
|
261
|
+
accessLevel: 'CONTAINER',
|
|
262
|
+
accountStatus: 'ACTIVE',
|
|
263
|
+
notMentionable: false,
|
|
264
|
+
locale: 'en-US',
|
|
265
|
+
userType: 'DEFAULT',
|
|
266
|
+
attributes: {
|
|
267
|
+
isConfluenceExternalCollaborator: false
|
|
268
|
+
}
|
|
269
|
+
}, {
|
|
270
|
+
entityType: 'USER',
|
|
271
|
+
id: '712020:9219bf5f-0358-4782-99dc-bc73258b2ddc',
|
|
272
|
+
name: 'jeff mellis',
|
|
273
|
+
avatarUrl: '',
|
|
274
|
+
nickname: 'jeff mellis',
|
|
275
|
+
matchPositions: {},
|
|
276
|
+
accessLevel: 'CONTAINER',
|
|
277
|
+
accountStatus: 'ACTIVE',
|
|
278
|
+
notMentionable: false,
|
|
279
|
+
locale: 'en-US',
|
|
280
|
+
userType: 'DEFAULT',
|
|
281
|
+
attributes: {
|
|
282
|
+
isConfluenceExternalCollaborator: false
|
|
283
|
+
}
|
|
284
|
+
}]
|
|
134
285
|
};
|
|
@@ -61,10 +61,17 @@ var useBasicFilterAGG = exports.useBasicFilterAGG = function useBasicFilterAGG()
|
|
|
61
61
|
query: _utils.fieldValuesQuery
|
|
62
62
|
});
|
|
63
63
|
}, [requestCall]);
|
|
64
|
+
var getCurrentUserInfo = (0, _react.useCallback)(function () {
|
|
65
|
+
return requestCall({
|
|
66
|
+
operationName: 'userQuery',
|
|
67
|
+
query: _utils.userQuery
|
|
68
|
+
});
|
|
69
|
+
}, [requestCall]);
|
|
64
70
|
return (0, _react.useMemo)(function () {
|
|
65
71
|
return {
|
|
66
72
|
getHydratedJQL: getHydratedJQL,
|
|
67
|
-
getFieldValues: getFieldValues
|
|
73
|
+
getFieldValues: getFieldValues,
|
|
74
|
+
getCurrentUserInfo: getCurrentUserInfo
|
|
68
75
|
};
|
|
69
|
-
}, [getHydratedJQL, getFieldValues]);
|
|
76
|
+
}, [getHydratedJQL, getFieldValues, getCurrentUserInfo]);
|
|
70
77
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.hydrateJQLQuery = exports.fieldValuesQuery = void 0;
|
|
6
|
+
exports.userQuery = exports.hydrateJQLQuery = exports.fieldValuesQuery = void 0;
|
|
7
7
|
/**
|
|
8
8
|
* HELLO DEV :wave
|
|
9
9
|
* If you are here to change these queries, please also remember to update the query in jira/src/packages/platform/linking/link-datasource/src/index.tsx
|
|
@@ -12,4 +12,5 @@ exports.hydrateJQLQuery = exports.fieldValuesQuery = void 0;
|
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
var hydrateJQLQuery = exports.hydrateJQLQuery = "query hydrate($cloudId: ID!, $jql: String!) {\n jira {\n jqlBuilder(cloudId: $cloudId) {\n hydrateJqlQuery(query: $jql) {\n ... on JiraJqlHydratedQuery {\n fields {\n ... on JiraJqlQueryHydratedField {\n jqlTerm\n values {\n ... on JiraJqlQueryHydratedValue {\n values {\n ... on JiraJqlProjectFieldValue {\n jqlTerm\n displayName\n project {\n avatar {\n small\n }\n }\n }\n ... on JiraJqlStatusFieldValue {\n jqlTerm\n displayName\n statusCategory {\n colorName\n }\n }\n ... on JiraJqlIssueTypeFieldValue {\n jqlTerm\n displayName\n issueTypes {\n avatar {\n small\n }\n }\n }\n ... on JiraJqlUserFieldValue {\n jqlTerm\n displayName\n user {\n picture\n }\n }\n ... on JiraJqlGroupFieldValue {\n jqlTerm\n displayName\n group {\n name\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}";
|
|
15
|
-
var fieldValuesQuery = exports.fieldValuesQuery = "query fieldValues($cloudId: ID!, $first: Int = 10, $jqlTerm: String!, $jql: String!, $searchString: String!, $after: String) {\n jira {\n jqlBuilder(cloudId: $cloudId) {\n fieldValues(\n first: $first\n jqlTerm: $jqlTerm\n jqlContext: $jql\n searchString: $searchString\n after: $after\n ) {\n totalCount\n pageInfo {\n endCursor\n }\n edges {\n node {\n jqlTerm\n displayName\n ... on JiraJqlProjectFieldValue {\n project {\n avatar {\n small\n }\n }\n }\n ... on JiraJqlIssueTypeFieldValue {\n issueTypes {\n avatar {\n small\n }\n }\n }\n ... on JiraJqlStatusFieldValue {\n statusCategory {\n colorName\n }\n }\n ... on JiraJqlUserFieldValue {\n user {\n picture\n }\n }\n ... on JiraJqlGroupFieldValue {\n group {\n name\n }\n }\n }\n }\n }\n }\n }\n}";
|
|
15
|
+
var fieldValuesQuery = exports.fieldValuesQuery = "query fieldValues($cloudId: ID!, $first: Int = 10, $jqlTerm: String!, $jql: String!, $searchString: String!, $after: String) {\n jira {\n jqlBuilder(cloudId: $cloudId) {\n fieldValues(\n first: $first\n jqlTerm: $jqlTerm\n jqlContext: $jql\n searchString: $searchString\n after: $after\n ) {\n totalCount\n pageInfo {\n endCursor\n }\n edges {\n node {\n jqlTerm\n displayName\n ... on JiraJqlProjectFieldValue {\n project {\n avatar {\n small\n }\n }\n }\n ... on JiraJqlIssueTypeFieldValue {\n issueTypes {\n avatar {\n small\n }\n }\n }\n ... on JiraJqlStatusFieldValue {\n statusCategory {\n colorName\n }\n }\n ... on JiraJqlUserFieldValue {\n user {\n picture\n }\n }\n ... on JiraJqlGroupFieldValue {\n group {\n name\n }\n }\n }\n }\n }\n }\n }\n}";
|
|
16
|
+
var userQuery = exports.userQuery = "query userQuery {\n me {\n user {\n id\n accountId\n }\n }\n}";
|
|
@@ -80,8 +80,11 @@ var formatOptionLabel = function formatOptionLabel(data) {
|
|
|
80
80
|
data: data
|
|
81
81
|
});
|
|
82
82
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
if (data.optionType === 'iconLabel') {
|
|
84
|
+
return /*#__PURE__*/_react.default.createElement(IconOptionLabel, {
|
|
85
|
+
data: data
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
86
89
|
};
|
|
87
90
|
var _default = exports.default = formatOptionLabel;
|
|
@@ -33,7 +33,8 @@ var noFilterOptions = function noFilterOptions() {
|
|
|
33
33
|
};
|
|
34
34
|
var FilterPopupSelect = exports.FilterPopupSelect = function FilterPopupSelect(_ref) {
|
|
35
35
|
var filterName = _ref.filterName,
|
|
36
|
-
totalCount = _ref.totalCount,
|
|
36
|
+
_ref$totalCount = _ref.totalCount,
|
|
37
|
+
totalCount = _ref$totalCount === void 0 ? 0 : _ref$totalCount,
|
|
37
38
|
status = _ref.status,
|
|
38
39
|
buttonLabel = _ref.buttonLabel,
|
|
39
40
|
_ref$showLoading = _ref.showLoading,
|
|
@@ -18,8 +18,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
18
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
19
|
var triggerButtonLabelStyles = (0, _primitives.xcss)({
|
|
20
20
|
textOverflow: 'ellipsis',
|
|
21
|
-
overflow: 'hidden'
|
|
22
|
-
maxWidth: '150px'
|
|
21
|
+
overflow: 'hidden'
|
|
23
22
|
});
|
|
24
23
|
var badgeStyles = (0, _primitives.xcss)({
|
|
25
24
|
marginLeft: 'space.050'
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.PopupComponent = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _styled = require("./styled");
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
|
+
var PopupComponent = exports.PopupComponent = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
15
|
+
return /*#__PURE__*/_react.default.createElement(_styled.PopupComponentContainer, (0, _extends2.default)({}, props, {
|
|
16
|
+
"data-testId": 'confluence-search-datasource-popup-container',
|
|
17
|
+
ref: ref
|
|
18
|
+
}));
|
|
19
|
+
});
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.DateRangePicker = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _reactIntlNext = require("react-intl-next");
|
|
12
|
+
var _popup = _interopRequireDefault(require("@atlaskit/popup"));
|
|
13
|
+
var _constants = require("@atlaskit/theme/constants");
|
|
14
|
+
var _types = require("../../types");
|
|
15
|
+
var _messages = require("./messages");
|
|
16
|
+
var _PopupComponent = require("./PopupComponent");
|
|
17
|
+
var _styled = require("./styled");
|
|
18
|
+
var _trigger = require("./trigger");
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
+
var lastModifiedValues = ['anyTime', 'today', 'yesterday', 'past7Days', 'past30Days', 'pastYear', 'custom'];
|
|
22
|
+
var defaultOptionValue = 'anyTime';
|
|
23
|
+
var filterName = _types.CLOLBasicFilters.lastModified;
|
|
24
|
+
var DateRangePicker = exports.DateRangePicker = function DateRangePicker(_ref) {
|
|
25
|
+
var onSelectionChange = _ref.onSelectionChange;
|
|
26
|
+
var _useState = (0, _react.useState)(null),
|
|
27
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
28
|
+
currentOption = _useState2[0],
|
|
29
|
+
setCurrentOption = _useState2[1];
|
|
30
|
+
var _useState3 = (0, _react.useState)(false),
|
|
31
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
32
|
+
isPickerOpen = _useState4[0],
|
|
33
|
+
setIsPickerOpen = _useState4[1];
|
|
34
|
+
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
35
|
+
formatMessage = _useIntl.formatMessage;
|
|
36
|
+
var onClickFilterOption = (0, _react.useCallback)(function (option) {
|
|
37
|
+
setCurrentOption(option);
|
|
38
|
+
setIsPickerOpen(false);
|
|
39
|
+
onSelectionChange(filterName, [{
|
|
40
|
+
optionType: 'defaultOption',
|
|
41
|
+
label: option,
|
|
42
|
+
value: option
|
|
43
|
+
}]);
|
|
44
|
+
}, [onSelectionChange]);
|
|
45
|
+
var handleTogglePopup = (0, _react.useCallback)(function () {
|
|
46
|
+
setIsPickerOpen(!isPickerOpen);
|
|
47
|
+
}, [isPickerOpen]);
|
|
48
|
+
return /*#__PURE__*/_react.default.createElement(_popup.default, {
|
|
49
|
+
isOpen: isPickerOpen,
|
|
50
|
+
onClose: handleTogglePopup,
|
|
51
|
+
popupComponent: _PopupComponent.PopupComponent,
|
|
52
|
+
zIndex: _constants.layers.modal(),
|
|
53
|
+
content: function content() {
|
|
54
|
+
return /*#__PURE__*/_react.default.createElement(_styled.CustomDropdown, null, lastModifiedValues.map(function (option) {
|
|
55
|
+
return /*#__PURE__*/_react.default.createElement(_styled.CustomDropdownItem, {
|
|
56
|
+
key: option
|
|
57
|
+
//want to show Anytime as selected if none of the other options are selected
|
|
58
|
+
,
|
|
59
|
+
isSelected: currentOption ? option === currentOption : option === defaultOptionValue,
|
|
60
|
+
onClick: function onClick() {
|
|
61
|
+
return onClickFilterOption(option);
|
|
62
|
+
}
|
|
63
|
+
}, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, getCurrentOptionLabel(option)));
|
|
64
|
+
}));
|
|
65
|
+
},
|
|
66
|
+
placement: "bottom-start",
|
|
67
|
+
trigger: function trigger(triggerProps) {
|
|
68
|
+
return /*#__PURE__*/_react.default.createElement(_trigger.PopupTrigger, {
|
|
69
|
+
triggerProps: triggerProps,
|
|
70
|
+
optionSelected: !!currentOption,
|
|
71
|
+
label: formatMessage(_messages.dateRangeMessages.dateRangeTitle),
|
|
72
|
+
selectedLabel: formatMessage(getCurrentOptionLabel(currentOption)),
|
|
73
|
+
onClickButton: handleTogglePopup
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
var getCurrentOptionLabel = function getCurrentOptionLabel(option) {
|
|
79
|
+
var mapping = {
|
|
80
|
+
anyTime: 'dateRangeAnyTime',
|
|
81
|
+
today: 'dateRangeToday',
|
|
82
|
+
yesterday: 'dateRangeYesterday',
|
|
83
|
+
past7Days: 'dateRangeLastWeek',
|
|
84
|
+
past30Days: 'dateRangeLastMonth',
|
|
85
|
+
pastYear: 'dateRangeLastYear',
|
|
86
|
+
custom: 'dateRangeCustom'
|
|
87
|
+
};
|
|
88
|
+
return option ? _messages.dateRangeMessages[mapping[option]] : _messages.dateRangeMessages[mapping['anyTime']];
|
|
89
|
+
};
|
package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/messages.js
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.dateRangeMessages = void 0;
|
|
7
|
+
var _reactIntlNext = require("react-intl-next");
|
|
8
|
+
var dateRangeMessages = exports.dateRangeMessages = (0, _reactIntlNext.defineMessages)({
|
|
9
|
+
dateRangeTitle: {
|
|
10
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.title',
|
|
11
|
+
defaultMessage: 'Last updated',
|
|
12
|
+
description: 'Filter by the date content was modified'
|
|
13
|
+
},
|
|
14
|
+
dateRangeAnyTime: {
|
|
15
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.any.time',
|
|
16
|
+
defaultMessage: 'Anytime',
|
|
17
|
+
description: 'Option to show content from any time'
|
|
18
|
+
},
|
|
19
|
+
dateRangeToday: {
|
|
20
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.today',
|
|
21
|
+
defaultMessage: 'Today',
|
|
22
|
+
description: 'Date range of content modified today'
|
|
23
|
+
},
|
|
24
|
+
dateRangeYesterday: {
|
|
25
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.yesterday',
|
|
26
|
+
defaultMessage: 'Yesterday',
|
|
27
|
+
description: 'Date range of content modified yesterday'
|
|
28
|
+
},
|
|
29
|
+
dateRangeLastWeek: {
|
|
30
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.last.week',
|
|
31
|
+
defaultMessage: 'Past 7 days',
|
|
32
|
+
description: 'Date range of content modified in the last 7 days'
|
|
33
|
+
},
|
|
34
|
+
dateRangeLastMonth: {
|
|
35
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.last.month',
|
|
36
|
+
defaultMessage: 'Past 30 days',
|
|
37
|
+
description: 'Date range of content modified in the last 30 days'
|
|
38
|
+
},
|
|
39
|
+
dateRangeLastYear: {
|
|
40
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.last.year',
|
|
41
|
+
defaultMessage: 'Past year',
|
|
42
|
+
description: 'Date range of content modified in the last 365 days'
|
|
43
|
+
},
|
|
44
|
+
dateRangeCustom: {
|
|
45
|
+
id: 'linkDataSource.confluence-search.configmodal.date.range.custom',
|
|
46
|
+
defaultMessage: 'Custom',
|
|
47
|
+
description: 'Custom date range'
|
|
48
|
+
}
|
|
49
|
+
});
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.SelectDateRangeButton = exports.PopupComponentContainer = exports.DateRangeErrorMessage = exports.DatePickersWrapper = exports.CustomDropdownItem = exports.CustomDropdown = exports.CustomDateWrapper = void 0;
|
|
8
|
+
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
9
|
+
var _colors = require("@atlaskit/theme/colors");
|
|
10
|
+
var PopupComponentContainer = exports.PopupComponentContainer = _styled.default.div({
|
|
11
|
+
boxSizing: 'border-box',
|
|
12
|
+
display: 'block',
|
|
13
|
+
flex: '1 1 auto',
|
|
14
|
+
overflow: 'visible',
|
|
15
|
+
background: "var(--ds-background-input, ".concat(_colors.N0, ")"),
|
|
16
|
+
':focus': {
|
|
17
|
+
outline: 'none'
|
|
18
|
+
},
|
|
19
|
+
boxShadow: "var(--ds-shadow-overlay, 0px 0px 1px 0px rgba(9, 30, 66, 0.31), 0px 3px 5px 0px rgba(9, 30, 66, 0.20))"
|
|
20
|
+
});
|
|
21
|
+
var CustomDropdown = exports.CustomDropdown = _styled.default.div({
|
|
22
|
+
width: '360px',
|
|
23
|
+
background: "var(--ds-background-input, ".concat(_colors.N0, ")"),
|
|
24
|
+
borderRadius: '3px',
|
|
25
|
+
boxShadow: "var(--ds-shadow-overlay, 0px 0px 1px 0px rgba(9, 30, 66, 0.31), 0px 3px 5px 0px rgba(9, 30, 66, 0.20))",
|
|
26
|
+
zIndex: '900'
|
|
27
|
+
});
|
|
28
|
+
var CustomDropdownItem = exports.CustomDropdownItem = _styled.default.div(function (props) {
|
|
29
|
+
return {
|
|
30
|
+
height: '36px',
|
|
31
|
+
width: '100%',
|
|
32
|
+
display: 'flex',
|
|
33
|
+
justifyContent: 'flex-start',
|
|
34
|
+
alignItems: 'center',
|
|
35
|
+
paddingLeft: props.isSelected ? '15px' : '16px',
|
|
36
|
+
boxSizing: 'border-box',
|
|
37
|
+
color: props.isSelected ? "var(--ds-text-selected, ".concat(_colors.B400, ")") : 'inherit',
|
|
38
|
+
background: props.isSelected ? "var(--ds-background-accent-blue-subtlest, ".concat(_colors.B50, ")") : 'transparent',
|
|
39
|
+
borderLeft: props.isSelected ? "2px solid ".concat("var(--ds-text-selected, ".concat(_colors.B400, ")")) : 'none',
|
|
40
|
+
'&:hover': {
|
|
41
|
+
background: props.isSelected ? "var(--ds-background-accent-blue-subtlest, ".concat(_colors.B50, ")") : "var(--ds-background-input-hovered, ".concat(_colors.N20, ")"),
|
|
42
|
+
cursor: 'default'
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
});
|
|
46
|
+
var CustomDateWrapper = exports.CustomDateWrapper = _styled.default.div({
|
|
47
|
+
padding: "var(--ds-space-150, 12px)",
|
|
48
|
+
boxSizing: 'border-box'
|
|
49
|
+
});
|
|
50
|
+
var DatePickersWrapper = exports.DatePickersWrapper = _styled.default.div({
|
|
51
|
+
display: 'flex',
|
|
52
|
+
justifyContent: 'space-between',
|
|
53
|
+
alignItems: 'center',
|
|
54
|
+
width: '100%'
|
|
55
|
+
});
|
|
56
|
+
var SelectDateRangeButton = exports.SelectDateRangeButton = _styled.default.button({
|
|
57
|
+
background: "var(--ds-background-accent-gray-subtler, ".concat(_colors.N20, ")"),
|
|
58
|
+
border: 'none',
|
|
59
|
+
font: 'inherit',
|
|
60
|
+
width: '70px',
|
|
61
|
+
height: '40px',
|
|
62
|
+
marginTop: "var(--ds-space-150, 12px)",
|
|
63
|
+
borderRadius: '3px',
|
|
64
|
+
'&:hover': {
|
|
65
|
+
background: "var(--ds-background-accent-gray-subtler, ".concat(_colors.N30, ")"),
|
|
66
|
+
cursor: 'pointer'
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
var DateRangeErrorMessage = exports.DateRangeErrorMessage = _styled.default.div({
|
|
70
|
+
display: 'flex',
|
|
71
|
+
lineHeight: 1.3333,
|
|
72
|
+
marginTop: "var(--ds-space-050, 4px)",
|
|
73
|
+
fontSize: '12px',
|
|
74
|
+
color: "var(--ds-text-danger, ".concat(_colors.R400, ")")
|
|
75
|
+
});
|
package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PopupTrigger = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _standardButton = _interopRequireDefault(require("@atlaskit/button/standard-button"));
|
|
11
|
+
var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/glyph/chevron-down"));
|
|
12
|
+
var PopupTrigger = exports.PopupTrigger = function PopupTrigger(_ref) {
|
|
13
|
+
var triggerProps = _ref.triggerProps,
|
|
14
|
+
optionSelected = _ref.optionSelected,
|
|
15
|
+
label = _ref.label,
|
|
16
|
+
selectedLabel = _ref.selectedLabel,
|
|
17
|
+
onClickButton = _ref.onClickButton;
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement(_standardButton.default, (0, _extends2.default)({}, triggerProps, {
|
|
19
|
+
testId: 'confluence-search-modal--date-range-button',
|
|
20
|
+
onClick: onClickButton,
|
|
21
|
+
isSelected: optionSelected,
|
|
22
|
+
iconAfter: /*#__PURE__*/_react.default.createElement("span", {
|
|
23
|
+
style: {
|
|
24
|
+
display: 'flex',
|
|
25
|
+
alignItems: 'center'
|
|
26
|
+
}
|
|
27
|
+
}, /*#__PURE__*/_react.default.createElement(_chevronDown.default, {
|
|
28
|
+
size: "medium",
|
|
29
|
+
label: ""
|
|
30
|
+
}))
|
|
31
|
+
}), label, selectedLabel ? ": ".concat(selectedLabel) : '');
|
|
32
|
+
};
|
package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/index.js
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var _reactIntlNext = require("react-intl-next");
|
|
14
|
+
var _useDebounce = require("use-debounce");
|
|
15
|
+
var _popupSelect = require("../../../../common/modal/popup-select");
|
|
16
|
+
var _constants = require("../../../../common/modal/popup-select/constants");
|
|
17
|
+
var _useCurrentUserInfo2 = require("../../hooks/useCurrentUserInfo");
|
|
18
|
+
var _useRecommendation2 = _interopRequireDefault(require("../../hooks/useRecommendation"));
|
|
19
|
+
var _types = require("../../types");
|
|
20
|
+
var _messages = require("./messages");
|
|
21
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
22
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
23
|
+
var filterName = "clol-basic-filter-".concat(_types.CLOLBasicFilters.editedOrCreatedBy);
|
|
24
|
+
var EditedOrCreatedByFilter = function EditedOrCreatedByFilter(_ref) {
|
|
25
|
+
var cloudId = _ref.cloudId,
|
|
26
|
+
onSelectionChange = _ref.onSelectionChange,
|
|
27
|
+
_ref$selection = _ref.selection,
|
|
28
|
+
selection = _ref$selection === void 0 ? [] : _ref$selection;
|
|
29
|
+
var _useCurrentUserInfo = (0, _useCurrentUserInfo2.useCurrentUserInfo)(),
|
|
30
|
+
user = _useCurrentUserInfo.user;
|
|
31
|
+
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
32
|
+
formatMessage = _useIntl.formatMessage;
|
|
33
|
+
var _useRecommendation = (0, _useRecommendation2.default)(),
|
|
34
|
+
status = _useRecommendation.status,
|
|
35
|
+
filterOptions = _useRecommendation.filterOptions,
|
|
36
|
+
fetchFilterOptions = _useRecommendation.fetchFilterOptions,
|
|
37
|
+
errors = _useRecommendation.errors;
|
|
38
|
+
var _useState = (0, _react.useState)(''),
|
|
39
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
40
|
+
searchTerm = _useState2[0],
|
|
41
|
+
setSearchTerm = _useState2[1];
|
|
42
|
+
var _useDebouncedCallback = (0, _useDebounce.useDebouncedCallback)(function (searchTerm) {
|
|
43
|
+
if (cloudId && user !== null && user !== void 0 && user.accountId) {
|
|
44
|
+
fetchFilterOptions({
|
|
45
|
+
searchTerm: searchTerm,
|
|
46
|
+
cloudId: cloudId,
|
|
47
|
+
userId: user.accountId
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}, _constants.SEARCH_DEBOUNCE_MS),
|
|
51
|
+
_useDebouncedCallback2 = (0, _slicedToArray2.default)(_useDebouncedCallback, 1),
|
|
52
|
+
handleDebouncedFetchFilterOptions = _useDebouncedCallback2[0];
|
|
53
|
+
var handleInputChange = (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
54
|
+
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(newSearchTerm) {
|
|
55
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
56
|
+
while (1) switch (_context.prev = _context.next) {
|
|
57
|
+
case 0:
|
|
58
|
+
setSearchTerm(newSearchTerm);
|
|
59
|
+
handleDebouncedFetchFilterOptions(newSearchTerm);
|
|
60
|
+
case 2:
|
|
61
|
+
case "end":
|
|
62
|
+
return _context.stop();
|
|
63
|
+
}
|
|
64
|
+
}, _callee);
|
|
65
|
+
}));
|
|
66
|
+
return function (_x) {
|
|
67
|
+
return _ref2.apply(this, arguments);
|
|
68
|
+
};
|
|
69
|
+
}(), [handleDebouncedFetchFilterOptions]);
|
|
70
|
+
var handleOptionSelection = (0, _react.useCallback)(function (newValue) {
|
|
71
|
+
onSelectionChange(_types.CLOLBasicFilters.editedOrCreatedBy, newValue);
|
|
72
|
+
}, [onSelectionChange]);
|
|
73
|
+
var handleMenuOpen = (0, _react.useCallback)(function () {
|
|
74
|
+
if ((status === 'empty' || status === 'rejected') && cloudId && user !== null && user !== void 0 && user.accountId) {
|
|
75
|
+
// if user searches and gets status as rejected, we want the dropdown to try load the request with searchString when the user reopens the dropdown
|
|
76
|
+
fetchFilterOptions({
|
|
77
|
+
cloudId: cloudId,
|
|
78
|
+
userId: user.accountId,
|
|
79
|
+
searchTerm: searchTerm
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}, [fetchFilterOptions, status, cloudId, user === null || user === void 0 ? void 0 : user.accountId, searchTerm]);
|
|
83
|
+
var filterOptionsLength = filterOptions.length;
|
|
84
|
+
var isError = status === 'rejected';
|
|
85
|
+
var isLoading = status === 'loading' || status === 'empty';
|
|
86
|
+
var isEmpty = status === 'resolved' && filterOptionsLength === 0;
|
|
87
|
+
var isDisabled = !cloudId || !(user !== null && user !== void 0 && user.accountId);
|
|
88
|
+
return /*#__PURE__*/_react.default.createElement(_popupSelect.FilterPopupSelect, {
|
|
89
|
+
buttonLabel: formatMessage(_messages.editedOrCreatedByMessage.buttonLabel),
|
|
90
|
+
filterName: filterName,
|
|
91
|
+
isDisabled: isDisabled,
|
|
92
|
+
options: filterOptions,
|
|
93
|
+
showLoading: isLoading,
|
|
94
|
+
selectedOptions: selection,
|
|
95
|
+
onSelectionChange: handleOptionSelection,
|
|
96
|
+
onInputChange: handleInputChange,
|
|
97
|
+
showHydrating: false,
|
|
98
|
+
shouldShowFooter: false,
|
|
99
|
+
status: status,
|
|
100
|
+
onMenuOpen: handleMenuOpen,
|
|
101
|
+
menuListProps: {
|
|
102
|
+
filterName: filterName,
|
|
103
|
+
errors: errors,
|
|
104
|
+
isLoading: isLoading,
|
|
105
|
+
isError: isError,
|
|
106
|
+
isEmpty: isEmpty
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
var _default = exports.default = EditedOrCreatedByFilter;
|
package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/edited-or-created-by/messages.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.editedOrCreatedByMessage = void 0;
|
|
7
|
+
var _reactIntlNext = require("react-intl-next");
|
|
8
|
+
var editedOrCreatedByMessage = exports.editedOrCreatedByMessage = (0, _reactIntlNext.defineMessages)({
|
|
9
|
+
buttonLabel: {
|
|
10
|
+
id: 'linkDataSource.clol-basic-filter.editedOrCreatedBy.label',
|
|
11
|
+
description: 'Label to be displayed for "Edited or created by" filter dropdown button.',
|
|
12
|
+
defaultMessage: 'Edited or created by'
|
|
13
|
+
}
|
|
14
|
+
});
|