{"version":3,"sources":["webpack:///./issuable/components/issue_assignees.vue","webpack:///./issuable/components/issue_assignees.vue?30e3","webpack:///issuable/components/issue_assignees.vue","webpack:///./issuable/components/issue_assignees.vue?8e0e","webpack:///./vue_shared/components/user_avatar/user_avatar_image.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_image.vue?5b71","webpack:///vue_shared/components/user_avatar/user_avatar_image.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_image.vue?7c05","webpack:///./vue_shared/components/work_item_attribute.vue","webpack:///./vue_shared/components/work_item_attribute.vue?cd7f","webpack:///vue_shared/components/work_item_attribute.vue","webpack:///./vue_shared/components/work_item_attribute.vue?aa8c","webpack:///./vue_shared/components/page_size_selector.vue","webpack:///vue_shared/components/page_size_selector.vue","webpack:///./vue_shared/components/page_size_selector.vue?9bb9","webpack:///./vue_shared/components/page_size_selector.vue?726c","webpack:///./vue_shared/components/modal_copy_button.vue","webpack:///./vue_shared/components/modal_copy_button.vue?eab4","webpack:///vue_shared/components/modal_copy_button.vue","webpack:///./vue_shared/components/modal_copy_button.vue?ef3f","webpack:///./issues/list/components/empty_state_without_any_issues.vue","webpack:////build/source/node_modules/@gitlab/svgs/dist/illustrations/empty-state/empty-issues-add-md.svg","webpack:///./issues/list/components/empty_state_without_any_issues.vue?94c3","webpack:///issues/list/components/empty_state_without_any_issues.vue","webpack:///./issues/list/components/empty_state_without_any_issues.vue?8b27","webpack:////build/source/ee/app/assets/javascripts/issues/list/components/issue_card_statistics.vue","webpack:///./issues/list/components/issue_card_statistics.vue?b89e","webpack:///issues/list/components/issue_card_statistics.vue","webpack:///./issues/list/components/issue_card_statistics.vue?177c","webpack:///./issues/list/components/issue_card_statistics.vue","webpack:////build/source/ee/app/assets/javascripts/issues/components/blocking_issues_count.vue?e3b6","webpack:///../../../ee/app/assets/javascripts/issues/components/blocking_issues_count.vue","webpack:////build/source/ee/app/assets/javascripts/issues/list/components/issue_card_statistics.vue?a1a2","webpack:///../../../ee/app/assets/javascripts/issues/list/components/issue_card_statistics.vue","webpack:////build/source/ee/app/assets/javascripts/issues/components/blocking_issues_count.vue?3de6","webpack:////build/source/ee/app/assets/javascripts/issues/components/blocking_issues_count.vue","webpack:////build/source/ee/app/assets/javascripts/issues/list/components/issue_card_statistics.vue?d029","webpack:////build/source/ee/app/assets/javascripts/issues/list/utils.js","webpack:///./vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue","webpack:///./vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue?9e55","webpack:///vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue","webpack:///./vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue?c72e","webpack:////build/source/ee/app/assets/javascripts/sidebar/constants.js","webpack:///./issues/list/eventhub.js","webpack:///./issuable/components/issuable_by_email.vue","webpack:///./issuable/components/issuable_by_email.vue?0ec9","webpack:///issuable/components/issuable_by_email.vue","webpack:///./issuable/components/issuable_by_email.vue?603b","webpack:///./issues/list/queries/set_sort_preference.mutation.graphql","webpack:///./issues/list/queries/reorder_issues.mutation.graphql","webpack:///./filtered_search/services/recent_searches_service_error.js","webpack:///./filtered_search/services/recent_searches_service.js","webpack:////build/source/ee/app/assets/javascripts/related_items_tree/components/issue_health_status.vue","webpack:////build/source/ee/app/assets/javascripts/related_items_tree/components/issue_health_status.vue?6a70","webpack:///../../../ee/app/assets/javascripts/related_items_tree/components/issue_health_status.vue","webpack:////build/source/ee/app/assets/javascripts/related_items_tree/components/issue_health_status.vue?ce73","webpack:///../images/no_avatar.png","webpack:///./vue_shared/components/new_resource_dropdown/new_resource_dropdown.vue","webpack:///./vue_shared/components/new_resource_dropdown/new_resource_dropdown.vue?301a","webpack:///vue_shared/components/new_resource_dropdown/new_resource_dropdown.vue","webpack:///./vue_shared/components/new_resource_dropdown/new_resource_dropdown.vue?e350","webpack:////build/source/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/input-group/input-group-text.js","webpack:////build/source/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/input-group/input-group-addon.js","webpack:////build/source/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/input-group/input-group-append.js","webpack:////build/source/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.js","webpack:////build/source/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/input-group/input-group.js","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/form/form_input_group/form_input_group_mixin.js","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/form/form_input_group/form_input_group.js","webpack:////build/source/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.js","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/dropdown/dropdown_text.js","webpack:///./work_items/components/work_item_type_icon.vue","webpack:///./work_items/components/work_item_type_icon.vue?4fe7","webpack:///work_items/components/work_item_type_icon.vue","webpack:///./work_items/components/work_item_type_icon.vue?1c28","webpack:////build/source/node_modules/@gitlab/svgs/dist/illustrations/empty-state/empty-epic-md.svg","webpack:///./work_items/components/work_item_drawer.vue","webpack:///./work_items/components/work_item_drawer.vue?52f7","webpack:///work_items/components/work_item_drawer.vue","webpack:///./work_items/components/work_item_drawer.vue?b93e","webpack:///./vue_shared/components/filtered_search_bar/filtered_search_utils.js","webpack:////build/source/ee/app/assets/javascripts/issues/list/components/issue_card_time_info.vue","webpack:///./issues/list/components/issue_card_time_info.vue?247e","webpack:///issues/list/components/issue_card_time_info.vue","webpack:////build/source/ee/app/assets/javascripts/issues/list/components/issue_card_time_info.vue?ae50","webpack:///../../../ee/app/assets/javascripts/issues/list/components/issue_card_time_info.vue","webpack:///./issues/list/components/issue_card_time_info.vue?3fc4","webpack:///./issues/list/components/issue_card_time_info.vue","webpack:////build/source/ee/app/assets/javascripts/issues/list/components/issue_card_time_info.vue?752c","webpack:///./filtered_search/stores/recent_searches_store.js","webpack:////build/source/node_modules/@gitlab/svgs/dist/illustrations/empty-state/empty-search-md.svg","webpack:///./work_items/graphql/delete_work_item.mutation.graphql","webpack:///./sortable/constants.js","webpack:///./issues/list/queries/search_labels.query.graphql","webpack:////build/source/ee/app/assets/javascripts/filtered_search/recent_searches_storage_keys.js","webpack:///./issuable/components/csv_import_export_buttons.vue","webpack:///./issuable/components/csv_export_modal.vue?ca45","webpack:///issuable/components/csv_export_modal.vue","webpack:///./issuable/components/csv_export_modal.vue?09d3","webpack:///./issuable/components/csv_export_modal.vue","webpack:///./issuable/components/csv_import_modal.vue?9736","webpack:///issuable/components/csv_import_modal.vue","webpack:///./issuable/components/csv_import_modal.vue?0e79","webpack:///./issuable/components/csv_import_modal.vue","webpack:///./issuable/components/csv_import_export_buttons.vue?2b71","webpack:///issuable/components/csv_import_export_buttons.vue","webpack:///./issuable/components/csv_import_export_buttons.vue?01a0","webpack:///./vue_shared/components/user_avatar/user_avatar_link.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_link.vue?c50c","webpack:///vue_shared/components/user_avatar/user_avatar_link.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_link.vue?d6b5","webpack:///./vue_shared/components/new_resource_dropdown/graphql/search_user_projects_with_issues_enabled.query.graphql","webpack:///./issues/list/components/empty_state_with_any_issues.vue","webpack:////build/source/node_modules/@gitlab/svgs/dist/illustrations/empty-state/empty-issues-md.svg","webpack:///./issues/list/components/empty_state_with_any_issues.vue?26f3","webpack:///issues/list/components/empty_state_with_any_issues.vue","webpack:///./issues/list/components/empty_state_with_any_issues.vue?a4d9","webpack:///./issues/list/queries/label.fragment.graphql","webpack:///./issues/list/queries/search_projects.query.graphql","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/token/token.js","webpack:///./issues/show/utils/issuable_data.js","webpack:////build/source/ee/app/assets/javascripts/issues/list/queries/get_issues_counts.query.graphql","webpack:///./vue_shared/issuable/list/components/issuable_list_root.vue","webpack:///vue_shared/issuable/list/components/issuable_bulk_edit_sidebar.vue","webpack:///./vue_shared/issuable/list/components/issuable_bulk_edit_sidebar.vue?f19c","webpack:///./vue_shared/issuable/list/components/issuable_bulk_edit_sidebar.vue?1abf","webpack:///./vue_shared/issuable/list/components/issuable_bulk_edit_sidebar.vue","webpack:///./work_items/components/work_item_prefetch.vue?4fbc","webpack:///work_items/components/work_item_prefetch.vue","webpack:///./work_items/components/work_item_prefetch.vue","webpack:///./vue_shared/issuable/list/components/issuable_item.vue?2307","webpack:///vue_shared/issuable/list/components/issuable_item.vue","webpack:///./vue_shared/issuable/list/components/issuable_item.vue?04ad","webpack:///./vue_shared/issuable/list/components/issuable_item.vue","webpack:///./vue_shared/issuable/list/components/issuable_tabs.vue?956f","webpack:///vue_shared/issuable/list/components/issuable_tabs.vue","webpack:///./vue_shared/issuable/list/components/issuable_tabs.vue?7f05","webpack:///./vue_shared/issuable/list/components/issuable_tabs.vue","webpack:///./vue_shared/issuable/list/components/issuable_grid.vue?ac2a","webpack:///./vue_shared/issuable/list/components/issuable_grid.vue","webpack:///vue_shared/issuable/list/components/issuable_list_root.vue","webpack:///./vue_shared/issuable/list/components/issuable_list_root.vue?35e8","webpack:///./vue_shared/issuable/list/components/issuable_list_root.vue?0fbe","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/keyset_pagination/keyset_pagination.js","webpack:///./vue_shared/issuable/list/components/issuable_milestone.vue","webpack:///./vue_shared/issuable/list/components/issuable_milestone.vue?4c9a","webpack:///vue_shared/issuable/list/components/issuable_milestone.vue","webpack:///./vue_shared/issuable/list/components/issuable_milestone.vue?5c04","webpack:///./filtered_search/constants.js","webpack:///./issues/list/has_new_issue_dropdown_mixin.js","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/pagination/pagination.js","webpack:///./lib/utils/scroll_utils.js","webpack:///./vue_shared/components/new_resource_dropdown/constants.js","webpack:///./filtered_search/recent_searches_storage_keys.js","webpack:///./issues/list/components/issues_list_app.vue","webpack:///issues/list/components/issues_list_app.vue","webpack:///./issues/list/components/issues_list_app.vue?bb75","webpack:///./issues/list/components/issues_list_app.vue?5d85","webpack:///./vue_shared/components/empty_result.vue","webpack:///vue_shared/components/empty_result.vue","webpack:///./vue_shared/components/empty_result.vue?01ca","webpack:///./vue_shared/components/empty_result.vue?6a49"],"names":["components","UserAvatarLink","directives","GlTooltip","GlTooltipDirective","props","assignees","type","Array","required","iconSize","Number","default","imgCssClasses","String","maxVisible","data","maxAssignees","computed","assigneesToShow","numShownAssignees","length","numHiddenAssignees","slice","assigneesCounterTooltip","sprintf","__","count","assigneeCounterLabel","methods","avatarUrlTitle","assignee","assigneeName","name","assigneeHref","web_path","webPath","avatarUrl","avatar_url","component","_vm","this","_c","_self","_l","key","id","staticClass","attrs","_v","_s","s__","username","_e","rawName","modifiers","GlAvatar","lazy","Boolean","imgSrc","defaultAvatarUrl","cssClasses","imgAlt","size","Object","tooltipText","tooltipPlacement","pseudo","sanitizedSource","baseSrc","indexOf","includes","maximumSize","_isObject","Math","max","values","resultantSrcAttribute","placeholderImage","ref","class","style","backgroundImage","undefined","$scopedSlots","$refs","userAvatar","_t","GlIcon","GlLink","anchorId","wrapperComponent","wrapperComponentClass","title","titleComponentClass","iconName","iconClass","isLink","href","tag","wrapperRef","PAGE_SIZES","map","value","text","n__","GlCollapsibleListbox","selectedItem","_this","find","toggleText","emitInput","pageSize","$emit","$options","on","$event","GlButton","_uniqueId","container","modalId","target","tooltipContainer","category","modalDomId","mounted","$nextTick","clipboard","ClipboardJS","$el","document","querySelector","getElementById","body","e","$root","BV_HIDE_TOOLTIP","clearSelection","trigger","blur","destroyed","destroy","placement","expression","i18n","jiraIntegrationMessage","emptyStateSvg","issuesHelpPagePath","helpPagePath","jiraIntegrationPath","anchor","CsvImportExportButtons","GlDisclosureDropdown","GlEmptyState","GlSprintf","NewResourceDropdown","mixins","hasNewIssueDropdown","inject","currentTabCount","exportCsvPathWithQuery","showCsvButtons","showNewIssueDropdown","showIssuableByEmail","createProjectMessage","isSignedIn","isProject","scopedSlots","_u","fn","canCreateProjects","proxy","searchProjectsQuery","newIssueDropdownQueryVariables","extractProjects","groupId","showNewIssueLink","newIssuePath","newProjectPath","content","signInPath","issue","downvotes","_findAwardEmojiWidget","findAwardEmojiWidget","upvotes","_findAwardEmojiWidget2","mergeRequestsCount","hasBlockedIssuesFeature","blockingIssuesCount","isListItem","showBlockingIssuesCount","BlockingIssuesCount","IssueCardStatistics","blockingCount","getDefaultWorkItemTypes","hasEpicsFeature","hasOkrsFeature","hasQualityManagementFeature","types","getDefaultWorkItemTypesCE","push","WORK_ITEM_TYPE_ENUM_EPIC","WORK_ITEM_TYPE_ENUM_KEY_RESULT","WORK_ITEM_TYPE_ENUM_OBJECTIVE","WORK_ITEM_TYPE_ENUM_TEST_CASE","getTypeTokenOptions","options","getTypeTokenOptionsCE","icon","GlFilteredSearch","GlSorting","GlFormCheckbox","namespace","recentSearchesStorageKey","tokens","sortOptions","initialFilterValue","initialSortBy","validator","test","showCheckbox","checkboxChecked","searchInputPlaceholder","suggestionsListClass","searchButtonAttributes","searchInputAttributes","showFriendlyText","syncFilterAndSort","termsAsTokens","searchTextOptionLabel","showSearchButton","initialRender","recentSearchesPromise","recentSearches","filterValue","getInitialSort","tokenSymbols","reduce","token","symbol","tokenTitles","transformedSortOptions","selectedSortDirection","sortDirectionAscending","SORT_DIRECTION","ascending","descending","selectedSortOption","sortOption","sortById","filteredRecentSearches","knownItems","historyItems","item","sanitizedItem","uniqueTokens","itemString","JSON","stringify","watch","newValue","newInitialSortBy","updateSelectedSortValues","handler","immediate","setupRecentSearch","_this2","recentSearchesService","RecentSearchesService","RecentSearchesStorageKeys","recentSearchesStore","RecentSearchesStore","isLocalStorageAvailable","isAvailable","allowedKeys","fetch","catch","error","createAlert","message","then","searches","resultantSearches","setRecentSearches","state","concat","filterEmptySearchTerm","addRecentSearch","save","blurSearchInput","searchInputEl","filteredSearchInput","removeQuotesEnclosure","filters","filter","valueString","stripQuotes","operator","handleSortByChange","sortDirection","handleSortDirectionChange","isAscending","handleHistoryItemSelected","handleClearHistory","_this3","filterTokens","historyTokenOptionTitle","historyToken","_this$tokens$find","tokenOption","option","onClear","assign","_this$sortOptions$","onInput","handleFilterSubmit","historyItem","index","model","callback","$$v","none","HEALTH_STATUS_I18N_ASSIGN_HEALTH_STATUS","HEALTH_STATUS_I18N_FETCH_ERROR","HEALTH_STATUS_I18N_HEALTH_STATUS","HEALTH_STATUS_I18N_NO_STATUS","HEALTH_STATUS_I18N_NONE","HEALTH_STATUS_I18N_SELECT_HEALTH_STATUS","HEALTH_STATUS_I18N_UPDATE_ERROR","HEALTH_STATUS_OPEN_DROPDOWN_DELAY","HEALTH_STATUS_AT_RISK","HEALTH_STATUS_NEEDS_ATTENTION","HEALTH_STATUS_ON_TRACK","healthStatusTextMap","healthStatusVariantMap","healthStatusIconMap","healthStatusColorMap","healthStatusForRestApi","NO_STATUS","healthStatusDropdownOptions","healthStatusTracking","event","Tracking","editEvent","label","rightSidebarLabel","property","iterationSelectTextMap","iteration","noIteration","assignIteration","iterationSelectFail","currentIterationFetchError","iterationsFetchError","noIterationsFound","noAttributeId","noEpic","placeholderEpic","SIDEBAR_ESCALATION_POLICY_TITLE","MAX_DISPLAY_WEIGHT","CVE_ID_REQUEST_SIDEBAR_I18N","action","description","createRequest","whyRequest","whyText1","whyText2","learnMore","IssuableAttributeType","IssuableAttributeTypeFoss","Iteration","Epic","EscalationPolicy","Parent","LocalizedIssuableAttributeType","LocalizedIssuableAttributeTypeFoss","IssuableAttributeTypeKeyMap","_invert","IssuableAttributeState","IssuableAttributeStateFoss","dropdowni18nText","issuableAttribute","issuableType","noAttributesFound","dropdowni18nTextFoss","i18nHelpText","detail","linkText","i18nPolicyText","paged","i18nStatusHeaderText","STOPS_PAGING","STATUS_SUBTEXTS","STATUS_TRIGGERED","STATUS_ACKNOWLEDGED","STATUS_RESOLVED","createEventHub","sendEmail","GlModal","GlFormInputGroup","HelpIcon","ModalCopyButton","GlModalDirective","initialEmail","TYPE_ISSUE","emailsHelpPagePath","quickActionsHelpPath","markdownHelpPath","resetPath","email","issuableName","mailToLink","subject","new_address","newAddress","axios","put","$toast","show","cancelHandler","modal","hide","resetIncomingEmailToken","doc","loc","source","definitionRefs","findOperation","i","definitions","element","forEach","def","refs","Set","collectFragmentReferences","node","kind","add","selectionSet","selections","selection","variableDefinitions","module","exports","operationName","newDoc","hasOwnProperty","opRefs","allRefs","newRefs","refName","prevRefs","has","childRef","op","oneQuery","RecentSearchesServiceError","Error","constructor","super","localStorageKey","Promise","reject","input","window","localStorage","getItem","parse","err","resolve","setItem","AccessorUtilities","canUseLocalStorage","GlBadge","healthStatus","keys","displayAsText","textSize","disableTooltip","statusText","statusClass","statusIcon","statusColor","textSizeClass","disabled","noMatchesFound","toggleButtonLabel","GlDropdown","GlDropdownItem","GlDropdownText","GlLoadingIcon","GlSearchBoxByType","LocalStorageSync","resourceType","RESOURCE_TYPE_ISSUE","RESOURCE_TYPES","query","searchUserProjectsWithIssuesEnabled","queryVariables","Function","_data$projects","projects","nodes","withLocalStorage","search","selectedProject","shouldSkipQuery","apollo","variables","update","captureError","skip","debounce","DEBOUNCE_DELAY","resourceOptions","RESOURCE_OPTIONS","defaultDropdownText","dropdownHref","hasSelectedProject","joinPaths","webUrl","DASH_SCOPE","path","dropdownText","project","showNoSearchResultsText","selectedProjectForLocalStorage","handleDropdownClick","dropdown","handleDropdownShown","focusInput","selectProject","initFromLocalStorage","storedProject","url","endsWith","dashSuffix","trim","$apollo","queries","loading","nameWithNamespace","BInputGroupText","functional","h","_ref","children","append","isText","BInputGroupAddon","BInputGroupAppend","BInputGroupPrepend","appendHtml","prepend","prependHtml","BInputGroup","slots","$slots","slotScope","$prepend","hasPrependSlot","domProps","html","$append","hasAppendSlot","role","InputGroupMixin","localValue","stringifyValue","newVal","activeOption","predefinedOptions","opt","__vue_script__","BFormInput","inheritAttrs","selectOnClick","every","inputClass","select","__vue_component__","render","_h","$createElement","updateValue","_g","_b","handleClick","$attrs","$listeners","staticRenderFns","textClass","variant","BDropdownText","workItemType","showText","workItemIconName","showTooltipOnHover","iconVariant","workItemTypeUppercase","toUpperCase","split","join","_WORK_ITEMS_TYPE_MAP$","WORK_ITEMS_TYPE_MAP","workItemTypeName","_WORK_ITEMS_TYPE_MAP$2","workItemTooltipTitle","GlOutside","GlOutsideDirective","GlDrawer","WorkItemDetail","glFeatureFlagMixin","open","activeItem","clickOutsideExcludeSelector","copyTooltipText","activeItemFullPath","makeDrawerItemFullPath","fullPath","modalIsGroup","toLowerCase","TYPE_EPIC","headerReference","substring","lastIndexOf","iid","issueAsWorkItem","isGroup","glFeatures","workItemsViewPreference","gon","current_user_use_work_items_view","deep","setDrawerParams","focusOnHeaderLink","workItemId","_data$workItemDelete$","mutate","mutation","deleteWorkItemMutation","workItemDelete","errors","Sentry","redirectToWorkItem","workItem","metaKey","ctrlKey","preventDefault","preventRouterNav","$router","canRouterNav","params","visitUrl","handleCopyToClipboard","copiedTooltipText","setTimeout","makeDrawerUrlParam","updateHistory","setUrlParams","DETAIL_VIEW_QUERY_PARAM_NAME","handleClose","isClickedOutside","_document$getElementB","removeParams","getIdFromGraphQLId","focus","handleClickOutside","selector","defaultExcludedSelectors","excludedElements","querySelectorAll","parent","contains","_this$$refs","workItemUrl","openTooltipText","deleteWorkItem","knownTokens","uniques","FILTERED_SEARCH_TERM","tokenString","createToken","prepareTokens","memo","isArray","processFilters","acc","_token$value","_token$value2","filteredSearchQueryParam","filterToQueryObject","filteredSearchTermKey","customOperators","shouldExcludeEmpty","operators","prefix","result","applyOnlyToKey","_value","_isEmpty","filteredSearchTermValue","term","urlQueryToFilter","filterNamesAllowList","_isString","queryToObject","gatherArrays","filterName","startsWith","extractNameAndOperator","previousValues","newAdditions","getRecentlyUsedSuggestions","recentSuggestionsStorageKey","appliedTokens","valueIdentifier","recentlyUsedSuggestions","suggestion","some","appliedToken","setTokenValueToRecentlyUsed","tokenValue","splice","_uniqWith","_isEqual","MAX_RECENT_TOKENS_SIZE","IssuableMilestone","WorkItemAttribute","isWorkItemList","milestone","_this$issue$widgets","widgets","isMilestoneWidget","dueDate","_this$issue$widgets2","isStartAndDueDateWidget","dueDateText","startDate","humanTimeframe","newDate","localeDateFormat","asDate","format","isClosed","STATUS_CLOSED","STATE_CLOSED","isOverdue","isInPast","dueDateTitle","dateIcon","_this$issue$widgets3","timeEstimate","_this$issue$timeStats","humanTimeEstimate","timeStats","IssueCardTimeInfo","IssueHealthStatus","isHealthStatusWidget","showHealthStatus","hasIssuableHealthStatusFeature","weight","isWeightWidget","showWeight","hasIssueWeightsFeature","initialState","newSearch","trimmedSearches","MAX_HISTORY_SIZE","DRAG_CLASS","DRAG_DELAY","defaultSortableOptions","animation","forceFallback","fallbackClass","fallbackOnBody","ghostClass","fallbackTolerance","names","recentSearchesStorageKeysCE","epics","requirements","test_cases","jira_issues","actionCancel","exportText","exportCsvPath","issuableCount","actionPrimary","attributes","dataTrackLabel","isIssue","issuableCountText","maximumFileSizeText","importIssuesText","uploadCsvFileText","mainText","helpText","GlFormGroup","importCsvIssuesPath","maxAttachmentSize","maxFileSizeText","submitForm","form","submit","csrf","GlDisclosureDropdownItem","CsvExportModal","CsvImportModal","showExportButton","showImportButton","canEdit","projectImportJiraPath","trackImportClick","dropdownItems","exportAsCSV","importCSV","importFromJIRA","exportModalId","importModalId","UserAvatarImage","GlAvatarLink","linkHref","imgCssWrapperClasses","imgSize","popoverUserId","popoverUsername","userId","shouldShowUsername","avatarTooltipText","stopPropagation","hasSearch","isEpic","isOpenTab","closedTabTitle","openTabTitle","svgPath","epicEmptyStateSvg","issuesEmptyStateSvg","CloseButton","viewOnly","removeLabel","variantClass","viewOnlyClass","close","SUPPORT_BOT_USERNAME","issuableInitialDataById","_el$dataset","el","dataset","initial","isLegacyIssueType","issuableData","issueType","authorUsername","isIssuableServiceDeskIssue","getLayoutPage","expanded","layoutPageEl","classList","toggle","workItemIid","workItemFullPath","skipQuery","workItemByIidQuery","_data$workspace$workI","workspace","prefetchWorkItem","prefetch","DEFAULT_DEBOUNCE_AND_THROTTLE_MS","clearPrefetching","clearTimeout","GlLabel","IssuableAssignees","WorkItemTypeIcon","WorkItemPrefetch","WorkItemRelationshipIcons","timeagoMixin","hasScopedLabelsFeature","issuableSymbol","issuable","labelFilterParam","checked","showWorkItemTypeIcon","isActive","preventRedirect","issuableId","issuableIid","_this$issuable$namesp","_this$issuable$refere","reference","isIncident","_this$issuable$workIt","WORK_ITEM_TYPE_VALUE_INCIDENT","isServiceDeskIssue","_this$issuable$workIt2","_this$issuable","WORK_ITEM_TYPE_VALUE_ISSUE","author","externalAuthor","issuableLinkHref","gitlabWebUrl","authorId","isIssuableUrlExternal","_this$issuableLinkHre","isExternal","_this$issuable$workIt3","labels","_this$issuable$labels","_this$issuable$widget","isLabelsWidget","labelIdsString","_this$issuable$assign","_this$issuable$widget2","isAssigneesWidget","filteredLinkedItems","_findLinkedItemsWidge","findLinkedItemsWidget","linkedItems","linkType","LINKED_CATEGORIES_MAP","RELATES_TO","createdAt","timeFormatted","isOpen","STATUS_OPEN","STATE_OPEN","statusTooltip","mergedAt","tooltipTitle","timestamp","closedAt","updatedAt","formattedTimestamp","timeago","timeAgo","issuableTitleProps","taskStatus","completedCount","taskCompletionStatus","notesCount","_this$issuable$userDi","userDiscussionsCount","userNotesCount","showDiscussions","showIssuableMeta","hasSlotContents","issuableNotesLink","setUrlFragment","statusBadgeVariant","isMergeRequest","__typename","hiddenIssuableTitle","listItemUniqueId","slotName","scopedLabel","_this$issuable$widget3","allowsScopedLabels","isScopedLabel","labelTitle","labelTarget","encodeURIComponent","getAuthorPopoverTarget","authorLink","handleIssuableItemClick","button","navigateToIssuable","handleRowClick","closed","confidential","hidden","apply","arguments","nativeOn","color","status","GlTabs","GlTab","tabs","tabCounts","currentTab","truncateCounts","isTabActive","tabName","isTabCountNumeric","tab","isInteger","formatNumber","numberToMetricPrefix","titleTooltip","VueDraggable","vueDraggableAttributes","delay","delayOnTouchOnly","GlAlert","GlKeysetPagination","GlSkeletonLoader","IssuableTabs","FilteredSearchBar","IssuableItem","IssuableGrid","IssuableBulkEditSidebar","GlPagination","PageSizeSelector","EmptyResult","searchTokens","urlParams","issuables","issuablesLoading","showPaginationControls","showBulkEditSidebar","defaultPageSize","totalItems","currentPage","previousPage","nextPage","isManualOrdering","useKeysetPagination","hasNextPage","hasPreviousPage","showFilteredSearchFriendlyText","showPageSizeSelector","isGridView","activeIssuable","issuableItemClass","checkedIssuableIds","skeletonItemCount","totalPages","ceil","DEFAULT_SKELETON_COUNT","allIssuablesChecked","checkedIssuables","issuablesWrapper","gridViewFeatureEnabled","_this$glFeatures","issuesGridView","hasItems","location","replace","isIssuableChecked","updateCheckedIssuableIds","toCheck","isIdChecked","indexToDelete","findIndex","handleIssuableCheckedInput","issuableEventHub","handleAllIssuablesCheckedInput","handleVueDraggableUpdate","newIndex","oldIndex","handlePageSizeChange","newPageSize","isIssuableActive","_this$activeIssuable","PAGE_SIZE_STORAGE_KEY","n","GlButtonGroup","startCursor","endCursor","prevText","prevButtonLink","navigationLabel","nextText","nextButtonLink","milestoneDate","milestoneRemainingTime","milestoneLink","due","start","isToday","isInFuture","getTimeRemainingInWords","USER_TOKEN_TYPES","TOKEN_TYPE_AUTHOR","TOKEN_TYPE_ASSIGNEE","TOKEN_TYPE_APPROVED_BY","TOKEN_TYPE_MERGE_USER","TOKEN_TYPE_REVIEWER","DROPDOWN_TYPE","hint","FILTER_TYPE","any","FILTERED_SEARCH","MERGE_REQUESTS","ISSUES","_data$group","group","prop","x","perPage","limits","xs","sm","md","linkGen","prevPage","ellipsisText","labelNav","labelFirstPage","labelPrevPage","labelNextPage","labelLastPage","labelPage","align","left","breakpoint","getBreakpointSize","minTotalPagesToCollapse","isCompactPagination","paginationLimit","fill","classes","center","right","isFillAlign","diff","maxAdjacentPages","items","firstPage","shouldCollapseLeftSide","min","lastPage","shouldCollapseRightSide","from","to","page","getPageItem","getEllipsisItem","pageIsDisabled","prevPageIsDisabled","labelForPage","nextPageIsDisabled","isLinkBased","addEventListener","setBreakpoint","removeEventListener","commonAttrs","isActivePage","isDisabled","listeners","click","slot","slotData","active","side","wrapperClasses","prevPageAriaLabel","prevPageHref","handlePrevious","nextPageAriaLabel","nextPageHref","handleNext","canScroll","$","height","isScrolledToBottom","scrollHeight","scrollTop","clientHeight","documentElement","isScrolledToTop","scrollDown","$document","scrollUp","RESOURCE_TYPE_MERGE_REQUEST","RESOURCE_TYPE_MILESTONE","RECENT_SEARCHES_STORAGE_KEY_GROUPS","RECENT_SEARCHES_STORAGE_KEY_PROJECTS","issues","merge_requests","group_members","group_invited_members","project_members","project_group_links","UserToken","EmojiToken","LabelToken","MilestoneToken","ReleaseToken","CrmContactToken","CrmOrganizationToken","DateToken","issuableListTabs","ISSUES_VIEW_TYPE_KEY","ISSUES_GRID_VIEW_KEY","ISSUES_LIST_VIEW_KEY","GlDisclosureDropdownGroup","EmptyStateWithAnyIssues","EmptyStateWithoutAnyIssues","IssuableByEmail","IssuableList","WorkItemDrawer","eeSearchTokens","getExportCsvPathWithQuery","issuesCounts","issuesError","pageInfo","pageParams","sortKey","CREATED_DESC","DEFAULT_PAGE_SIZE","viewType","subscribeDropdownOptions","rssPath","extraAttrs","calendarPath","getIssuesQuery","_data$this$namespace$","_data$this$namespace","fetchPolicy","fetchPolicies","CACHE_AND_NETWORK","nextFetchPolicy","CACHE_FIRST","notifyOnNetworkStatusChange","_data$this$namespace$2","_data$this$namespace2","checkDrawerParams","errorFetchingIssues","hasAnyIssues","getIssuesCountsQuery","_data$this$namespace3","errorFetchingCounts","isIidSearch","ISSUE_REFERENCE","searchQuery","hideUsers","isPublicVisibilityRestricted","sort","apiFilterParams","defaultWorkItemTypes","WORKSPACE_PROJECT","WORKSPACE_GROUP","urlFilterParams","afterCursor","beforeCursor","isBulkEditButtonDisabled","RELATIVE_POSITION_ASC","canCreateIssue","hasAnyProjects","convertToApiParams","convertToUrlParams","convertToSearchQuery","preloadedUsers","current_user_id","convertToGraphQLId","TYPENAME_USER","current_user_fullname","current_username","current_user_avatar_url","TOKEN_TYPE_SEARCH_WITHIN","TOKEN_TITLE_SEARCH_WITHIN","GlFilteredSearchToken","unique","OPERATORS_IS","titles","descriptions","TOKEN_TITLE_AUTHOR","dataType","defaultUsers","OPERATORS_IS_NOT_OR","multiSelect","TOKEN_TITLE_ASSIGNEE","TOKEN_TYPE_MILESTONE","TOKEN_TITLE_MILESTONE","shouldSkipSort","TOKEN_TYPE_LABEL","TOKEN_TITLE_LABEL","fetchLabels","fetchLatestLabels","frontendCaching","TOKEN_TYPE_TYPE","TOKEN_TITLE_TYPE","typeTokenOptions","TOKEN_TYPE_RELEASE","TOKEN_TITLE_RELEASE","fetchReleases","TOKEN_TYPE_MY_REACTION","TOKEN_TITLE_MY_REACTION","fetchEmojis","TOKEN_TYPE_CONFIDENTIAL","TOKEN_TITLE_CONFIDENTIAL","confidentialYes","confidentialNo","hasIssueDateFilterFeature","TOKEN_TYPE_CREATED","TOKEN_TITLE_CREATED","OPERATORS_AFTER_BEFORE","TOKEN_TYPE_CLOSED","TOKEN_TITLE_CLOSED","canReadCrmContact","TOKEN_TYPE_CONTACT","TOKEN_TITLE_CONTACT","canReadCrmOrganization","TOKEN_TYPE_ORGANIZATION","TOKEN_TITLE_ORGANIZATION","a","b","localeCompare","isLoading","getSortOptions","openedIssues","closedIssues","allIssues","STATUS_ALL","_this$tabCounts$this$","_this$pageParams$afte","_this$pageParams$befo","base","urlSortParams","first_page_size","firstPageSize","last_page_size","lastPageSize","page_after","page_before","provider","clients","defaultClient","readQuery","isIssuableSelected","issuesDrawerEnabled","_this$glFeatures2","issuesListDrawer","$route","oldValue","updateData","getParameterByName","PARAM_SORT","created","initialSort","cache","eventHub","$on","toggleBulkEditSidebar","beforeDestroy","$off","fetchWithCache","cacheName","searchKey","fuzzaldrinPlus","MAX_LIST_SIZE","get","autocompleteAwardEmojisPath","releasesPath","fetchLabelsWithFetchPolicy","searchLabelsQuery","_data$_this2$namespac","NETWORK_ONLY","getStatus","moved","closedMoved","handleUpdateLegacyBulkEdit","hasInitBulkEdit","initBulkUpdateSidebar","handleClickTab","getInitialPageParams","handleDismissAlert","handleFilter","handleNextPage","handlePreviousPage","handleReorder","issueToMove","isDragDropDownwards","isMovingToBeginning","isMovingToEnd","moveBeforeId","moveAfterId","afterIndex","beforeIndex","move_before_id","move_after_id","serializedVariables","reorderIssuesMutation","handleSort","isIssueRepositioningDisabled","showIssueRepositioningMessage","saveSortPreference","setSortPreferenceMutation","issuesSort","userPreferencesUpdate","issueRepositioningMessage","VARIANT_INFO","_getParameterByName","_getParameterByName2","PARAM_FIRST_PAGE_SIZE","PARAM_LAST_PAGE_SIZE","PARAM_STATE","deriveSortKey","UPDATED_DESC","getFilterTokens","groupMultiSelectFilterTokens","isPositiveInteger","parseInt","PARAM_PAGE_AFTER","PARAM_PAGE_BEFORE","switchViewType","handleSelectIssuable","updateIssuablesCache","client","issuesList","refetchIssuables","mapWorkItemWidgetsToIssuableFields","list","writeQuery","promoteToObjective","_this4","updateQuery","produce","draftData","refetch","deleteIssuable","updateIssuableEmojis","updateUpvotesCount","queryParam","atob","full_path","canBulkUpdate","handleBulkUpdateClick","actionsLabel","TYPES","titleSearch","descriptionSearch","titleFilter","descriptionFilter","emptyStateSvgPath"],"mappings":"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","file":"1184.1cf06fdc.chunk.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_vm._l((_vm.assigneesToShow),function(assignee){return _c('user-avatar-link',{key:assignee.id,staticClass:\"js-no-trigger author-link\",attrs:{\"link-href\":_vm.assigneeHref(assignee),\"img-alt\":_vm.avatarUrlTitle(assignee),\"img-css-classes\":_vm.imgCssClasses,\"img-css-wrapper-classes\":\"gl-inline-flex\",\"img-src\":_vm.avatarUrl(assignee),\"img-size\":_vm.iconSize,\"tooltip-placement\":\"bottom\",\"data-testid\":\"assignee-link\"}},[_c('span',{staticClass:\"js-assignee-tooltip\"},[_c('span',{staticClass:\"gl-block gl-font-bold\"},[_vm._v(_vm._s(_vm.s__('Label|Assignee')))]),_vm._v(\" \"+_vm._s(assignee.name)+\"\\n \"),(assignee.username)?_c('span',[_vm._v(\"@\"+_vm._s(assignee.username))]):_vm._e()])])}),_vm._v(\" \"),(_vm.numHiddenAssignees > 0)?_c('span',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.bottom\",modifiers:{\"bottom\":true}}],staticClass:\"avatar-counter\",attrs:{\"title\":_vm.assigneesCounterTooltip,\"data-testid\":\"avatar-counter-content\"}},[_vm._v(_vm._s(_vm.assigneeCounterLabel))]):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_assignees.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_assignees.vue?vue&type=script&lang=js\"","<script>\nimport { GlTooltipDirective } from '@gitlab/ui';\nimport { __, sprintf } from '~/locale';\nimport UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue';\n\nexport default {\n components: {\n UserAvatarLink,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n props: {\n assignees: {\n type: Array,\n required: true,\n },\n iconSize: {\n type: Number,\n required: false,\n default: 24,\n },\n imgCssClasses: {\n type: String,\n required: false,\n default: '',\n },\n maxVisible: {\n type: Number,\n required: false,\n default: 3,\n },\n },\n data() {\n return {\n maxAssignees: 99,\n };\n },\n computed: {\n assigneesToShow() {\n const numShownAssignees = this.assignees.length - this.numHiddenAssignees;\n return this.assignees.slice(0, numShownAssignees);\n },\n assigneesCounterTooltip() {\n return sprintf(__('%{count} more assignees'), { count: this.numHiddenAssignees });\n },\n numHiddenAssignees() {\n if (this.assignees.length > this.maxVisible) {\n return this.assignees.length - this.maxVisible + 1;\n }\n return 0;\n },\n assigneeCounterLabel() {\n if (this.numHiddenAssignees > this.maxAssignees) {\n return `${this.maxAssignees}+`;\n }\n\n return `+${this.numHiddenAssignees}`;\n },\n },\n methods: {\n avatarUrlTitle(assignee) {\n return sprintf(__('Assigned to %{assigneeName}'), {\n assigneeName: assignee.name,\n });\n },\n // This method is for backward compat\n // since Graph query would return camelCase\n // props while Rails would return snake_case\n assigneeHref(assignee) {\n return assignee.web_path || assignee.webPath;\n },\n avatarUrl(assignee) {\n return assignee.avatar_url || assignee.avatarUrl;\n },\n },\n};\n</script>\n<template>\n <div>\n <user-avatar-link\n v-for=\"assignee in assigneesToShow\"\n :key=\"assignee.id\"\n :link-href=\"assigneeHref(assignee)\"\n :img-alt=\"avatarUrlTitle(assignee)\"\n :img-css-classes=\"imgCssClasses\"\n img-css-wrapper-classes=\"gl-inline-flex\"\n :img-src=\"avatarUrl(assignee)\"\n :img-size=\"iconSize\"\n class=\"js-no-trigger author-link\"\n tooltip-placement=\"bottom\"\n data-testid=\"assignee-link\"\n >\n <span class=\"js-assignee-tooltip\">\n <span class=\"gl-block gl-font-bold\">{{ s__('Label|Assignee') }}</span> {{ assignee.name }}\n <span v-if=\"assignee.username\">@{{ assignee.username }}</span>\n </span>\n </user-avatar-link>\n <span\n v-if=\"numHiddenAssignees > 0\"\n v-gl-tooltip.bottom\n :title=\"assigneesCounterTooltip\"\n class=\"avatar-counter\"\n data-testid=\"avatar-counter-content\"\n >{{ assigneeCounterLabel }}</span\n >\n </div>\n</template>\n","import { render, staticRenderFns } from \"./issue_assignees.vue?vue&type=template&id=055aea2c\"\nimport script from \"./issue_assignees.vue?vue&type=script&lang=js\"\nexport * from \"./issue_assignees.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{ref:\"userAvatar\"},[_c('gl-avatar',{staticClass:\"gl-bg-cover\",class:{\n lazy: _vm.lazy,\n [_vm.cssClasses]: true,\n },style:(_vm.pseudo ? { backgroundImage: `url('${_vm.sanitizedSource}')` } : null),attrs:{\"src\":_vm.pseudo ? undefined : _vm.resultantSrcAttribute,\"data-src\":_vm.sanitizedSource,\"size\":_vm.size,\"alt\":_vm.imgAlt,\"data-testid\":\"user-avatar-image\"}}),_vm._v(\" \"),(_vm.tooltipText || _vm.$scopedSlots.default)?_c('gl-tooltip',{attrs:{\"target\":() => _vm.$refs.userAvatar,\"placement\":_vm.tooltipPlacement,\"boundary\":\"window\"}},[_vm._t(\"default\",function(){return [_vm._v(_vm._s(_vm.tooltipText))]})],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_image.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_image.vue?vue&type=script&lang=js\"","<script>\n/* This is a re-usable vue component for rendering a user avatar that\n does not need to link to the user's profile. The image and an optional\n tooltip can be configured by props passed to this component.\n\n Sample configuration:\n\n <user-avatar\n lazy\n :img-src=\"userAvatarSrc\"\n :img-alt=\"tooltipText\"\n :tooltip-text=\"tooltipText\"\n tooltip-placement=\"top\"\n :size=\"24\"\n />\n\n */\n\nimport { GlTooltip, GlAvatar } from '@gitlab/ui';\nimport { isObject } from 'lodash';\nimport defaultAvatarUrl from 'images/no_avatar.png';\nimport { __ } from '~/locale';\nimport { placeholderImage } from '~/lazy_loader';\n\nexport default {\n name: 'UserAvatarImage',\n components: {\n GlTooltip,\n GlAvatar,\n },\n props: {\n lazy: {\n type: Boolean,\n required: false,\n default: false,\n },\n imgSrc: {\n type: String,\n required: false,\n default: defaultAvatarUrl,\n },\n cssClasses: {\n type: String,\n required: false,\n default: '',\n },\n imgAlt: {\n type: String,\n required: false,\n default: __('user avatar'),\n },\n size: {\n type: [Number, Object],\n required: true,\n },\n tooltipText: {\n type: String,\n required: false,\n default: '',\n },\n tooltipPlacement: {\n type: String,\n required: false,\n default: 'top',\n },\n // Render avatar using pseudo-elements so that they cannot be selected or copied\n pseudo: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n // API response sends null when gravatar is disabled and\n // we provide an empty string when we use it inside user avatar link.\n // In both cases we should render the defaultAvatarUrl\n sanitizedSource() {\n let baseSrc = this.imgSrc === '' || this.imgSrc === null ? defaultAvatarUrl : this.imgSrc;\n // Only adds the width to the URL if its not a base64 data image\n if (!(baseSrc.indexOf('data:') === 0) && !baseSrc.includes('?'))\n baseSrc += `?width=${this.maximumSize}`;\n return baseSrc;\n },\n maximumSize() {\n if (isObject(this.size)) {\n return Math.max(...Object.values(this.size)) * 2;\n }\n return this.size * 2;\n },\n resultantSrcAttribute() {\n return this.lazy ? placeholderImage : this.sanitizedSource;\n },\n },\n};\n</script>\n\n<template>\n <span ref=\"userAvatar\">\n <gl-avatar\n class=\"gl-bg-cover\"\n :class=\"{\n lazy: lazy,\n [cssClasses]: true,\n }\"\n :src=\"pseudo ? undefined : resultantSrcAttribute\"\n :style=\"pseudo ? { backgroundImage: `url('${sanitizedSource}')` } : null\"\n :data-src=\"sanitizedSource\"\n :size=\"size\"\n :alt=\"imgAlt\"\n data-testid=\"user-avatar-image\"\n />\n\n <gl-tooltip\n v-if=\"tooltipText || $scopedSlots.default\"\n :target=\"() => $refs.userAvatar\"\n :placement=\"tooltipPlacement\"\n boundary=\"window\"\n >\n <slot>{{ tooltipText }}</slot>\n </gl-tooltip>\n </span>\n</template>\n","import { render, staticRenderFns } from \"./user_avatar_image.vue?vue&type=template&id=0836472c\"\nimport script from \"./user_avatar_image.vue?vue&type=script&lang=js\"\nexport * from \"./user_avatar_image.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.isLink ? 'gl-link' : 'span',{tag:\"component\",attrs:{\"href\":_vm.href}},[_c(_vm.wrapperComponent,{ref:\"wrapperRef\",tag:\"component\",class:_vm.wrapperComponentClass,attrs:{\"data-testid\":_vm.anchorId}},[_vm._t(\"icon\",function(){return [(_vm.iconName)?_c('gl-icon',{class:_vm.iconClass,attrs:{\"name\":_vm.iconName,\"data-testid\":`${_vm.anchorId}-icon`}}):_vm._e()]}),_vm._v(\" \"),_vm._t(\"title\",function(){return [(_vm.title)?_c('span',{class:_vm.titleComponentClass,attrs:{\"data-testid\":`${_vm.anchorId}-title`}},[_vm._v(\"\\n \"+_vm._s(_vm.title)+\"\\n \")]):_vm._e()]})],2),_vm._v(\" \"),_c('gl-tooltip',{attrs:{\"target\":() => _vm.$refs.wrapperRef,\"placement\":_vm.tooltipPlacement}},[_vm._t(\"tooltip-text\",function(){return [(_vm.tooltipText)?[_vm._v(\"\\n \"+_vm._s(_vm.tooltipText)+\"\\n \")]:_vm._e()]})],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_attribute.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_attribute.vue?vue&type=script&lang=js\"","<script>\nimport { GlTooltip, GlIcon, GlLink } from '@gitlab/ui';\n\nexport default {\n components: {\n GlTooltip,\n GlIcon,\n GlLink,\n },\n props: {\n anchorId: {\n type: String,\n required: false,\n default: '',\n },\n wrapperComponent: {\n type: String,\n required: false,\n default: 'span',\n },\n wrapperComponentClass: {\n type: String,\n required: false,\n default: '',\n },\n title: {\n type: String,\n required: false,\n default: '',\n },\n titleComponentClass: {\n type: String,\n required: false,\n default: '',\n },\n iconName: {\n type: String,\n required: false,\n default: '',\n },\n iconClass: {\n type: String,\n required: false,\n default: '',\n },\n tooltipText: {\n type: String,\n required: false,\n default: '',\n },\n tooltipPlacement: {\n type: String,\n required: false,\n default: 'bottom',\n },\n isLink: {\n type: Boolean,\n required: false,\n default: false,\n },\n href: {\n type: String,\n required: false,\n default: '',\n },\n },\n};\n</script>\n\n<template>\n <component :is=\"isLink ? 'gl-link' : 'span'\" :href=\"href\">\n <!-- wrapper -->\n <component\n :is=\"wrapperComponent\"\n ref=\"wrapperRef\"\n :class=\"wrapperComponentClass\"\n :data-testid=\"anchorId\"\n >\n <!-- icon -->\n <slot name=\"icon\">\n <gl-icon\n v-if=\"iconName\"\n :class=\"iconClass\"\n :name=\"iconName\"\n :data-testid=\"`${anchorId}-icon`\"\n />\n </slot>\n <!-- title -->\n <slot name=\"title\">\n <span v-if=\"title\" :class=\"titleComponentClass\" :data-testid=\"`${anchorId}-title`\">\n {{ title }}\n </span>\n </slot>\n </component>\n <!-- tooltip -->\n <gl-tooltip :target=\"() => $refs.wrapperRef\" :placement=\"tooltipPlacement\">\n <slot name=\"tooltip-text\">\n <template v-if=\"tooltipText\">\n {{ tooltipText }}\n </template>\n </slot>\n </gl-tooltip>\n </component>\n</template>\n","import { render, staticRenderFns } from \"./work_item_attribute.vue?vue&type=template&id=01c1b9ee\"\nimport script from \"./work_item_attribute.vue?vue&type=script&lang=js\"\nexport * from \"./work_item_attribute.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-collapsible-listbox',{attrs:{\"toggle-text\":_vm.toggleText,\"items\":_vm.$options.PAGE_SIZES,\"selected\":_vm.value},on:{\"select\":function($event){return _vm.emitInput($event)}}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<script>\nimport { GlCollapsibleListbox } from '@gitlab/ui';\nimport { n__ } from '~/locale';\n\nexport const PAGE_SIZES = [20, 50, 100].map((value) => ({\n value,\n text: n__('SecurityReports|Show %d item', 'SecurityReports|Show %d items', value),\n}));\n\nexport default {\n components: { GlCollapsibleListbox },\n props: {\n value: {\n type: Number,\n required: true,\n },\n },\n computed: {\n selectedItem() {\n return PAGE_SIZES.find(({ value }) => value === this.value);\n },\n toggleText() {\n return this.selectedItem.text;\n },\n },\n methods: {\n emitInput(pageSize) {\n this.$emit('input', pageSize);\n },\n },\n PAGE_SIZES,\n};\n</script>\n\n<template>\n <gl-collapsible-listbox\n :toggle-text=\"toggleText\"\n :items=\"$options.PAGE_SIZES\"\n :selected=\"value\"\n @select=\"emitInput($event)\"\n />\n</template>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./page_size_selector.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./page_size_selector.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./page_size_selector.vue?vue&type=template&id=28c3d0ea\"\nimport script from \"./page_size_selector.vue?vue&type=script&lang=js\"\nexport * from \"./page_size_selector.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\",value:({ placement: _vm.tooltipPlacement, container: _vm.tooltipContainer }),expression:\"{ placement: tooltipPlacement, container: tooltipContainer }\"}],class:_vm.cssClasses,attrs:{\"id\":_vm.id,\"data-clipboard-target\":_vm.target,\"data-clipboard-text\":_vm.text,\"title\":_vm.title,\"aria-label\":_vm.title,\"category\":_vm.category,\"icon\":\"copy-to-clipboard\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal_copy_button.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal_copy_button.vue?vue&type=script&lang=js\"","<script>\nimport { GlButton, GlTooltipDirective } from '@gitlab/ui';\nimport ClipboardJS from 'clipboard';\nimport { uniqueId } from 'lodash';\nimport { __ } from '~/locale';\nimport { BV_HIDE_TOOLTIP } from '~/lib/utils/constants';\n\nexport default {\n components: {\n GlButton,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n props: {\n text: {\n type: String,\n required: false,\n default: '',\n },\n id: {\n type: String,\n required: false,\n default: () => uniqueId('modal-copy-button-'),\n },\n container: {\n type: String,\n required: false,\n default: '',\n },\n cssClasses: {\n type: String,\n required: false,\n default: '',\n },\n modalId: {\n type: String,\n required: false,\n default: '',\n },\n target: {\n type: String,\n required: false,\n default: '',\n },\n title: {\n type: String,\n required: false,\n default: __('Copy'),\n },\n tooltipPlacement: {\n type: String,\n required: false,\n default: 'top',\n },\n tooltipContainer: {\n type: String,\n required: false,\n default: null,\n },\n category: {\n type: String,\n required: false,\n default: 'primary',\n },\n },\n computed: {\n modalDomId() {\n return this.modalId ? `#${this.modalId}` : '';\n },\n },\n mounted() {\n this.$nextTick(() => {\n this.clipboard = new ClipboardJS(this.$el, {\n container:\n document.querySelector(`${this.modalDomId} div.modal-content`) ||\n document.getElementById(this.container) ||\n document.body,\n });\n this.clipboard\n .on('success', (e) => {\n this.$root.$emit(BV_HIDE_TOOLTIP, this.id);\n this.$emit('success', e);\n // Clear the selection and blur the trigger so it loses its border\n e.clearSelection();\n e.trigger.blur();\n })\n .on('error', (e) => this.$emit('error', e));\n });\n },\n destroyed() {\n if (this.clipboard) {\n this.clipboard.destroy();\n }\n },\n};\n</script>\n<template>\n <gl-button\n :id=\"id\"\n v-gl-tooltip=\"{ placement: tooltipPlacement, container: tooltipContainer }\"\n :class=\"cssClasses\"\n :data-clipboard-target=\"target\"\n :data-clipboard-text=\"text\"\n :title=\"title\"\n :aria-label=\"title\"\n :category=\"category\"\n icon=\"copy-to-clipboard\"\n />\n</template>\n","import { render, staticRenderFns } from \"./modal_copy_button.vue?vue&type=template&id=4c7472d6\"\nimport script from \"./modal_copy_button.vue?vue&type=script&lang=js\"\nexport * from \"./modal_copy_button.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.isSignedIn)?_c('div',{attrs:{\"data-testid\":\"signed-in-empty-state-block\",\"data-track-action\":_vm.isProject && 'render',\"data-track-label\":_vm.isProject && 'project_issues_empty_list'}},[_c('div',[_c('gl-empty-state',{attrs:{\"title\":_vm.__('Use issues to collaborate on ideas, solve problems, and plan work'),\"svg-path\":_vm.$options.emptyStateSvg,\"data-testid\":\"issuable-empty-state\"},scopedSlots:_vm._u([{key:\"description\",fn:function(){return [(_vm.canCreateProjects)?_c('p',{staticClass:\"gl-my-2 gl-text-subtle\",attrs:{\"data-testid\":\"create-project-message\"}},[_vm._v(\"\\n \"+_vm._s(_vm.createProjectMessage)+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('gl-link',{attrs:{\"href\":_vm.$options.issuesHelpPagePath,\"data-track-action\":_vm.isProject && 'click_learn_more_project_issues_empty_list_page',\"data-track-label\":_vm.isProject && 'learn_more_project_issues_empty_list'}},[_vm._v(\"\\n \"+_vm._s(_vm.__('Learn more about issues.'))+\"\\n \")])]},proxy:true},{key:\"actions\",fn:function(){return [_vm._t(\"actions\"),_vm._v(\" \"),(_vm.showNewIssueDropdown)?_c('new-resource-dropdown',{staticClass:\"gl-mx-2 gl-mb-3 gl-self-center\",attrs:{\"query\":_vm.$options.searchProjectsQuery,\"query-variables\":_vm.newIssueDropdownQueryVariables,\"extract-projects\":_vm.extractProjects,\"group-id\":_vm.groupId}}):_vm._e(),_vm._v(\" \"),_vm._t(\"new-issue-button\",function(){return [(_vm.showNewIssueLink)?_c('gl-button',{staticClass:\"gl-mx-2 gl-mb-3\",attrs:{\"href\":_vm.newIssuePath,\"variant\":\"confirm\",\"data-track-action\":\"click_new_issue_project_issues_empty_list_page\",\"data-track-label\":\"new_issue_project_issues_empty_list\"}},[_vm._v(\"\\n \"+_vm._s(_vm.__('New issue'))+\"\\n \")]):_vm._e()]}),_vm._v(\" \"),(_vm.canCreateProjects)?_c('gl-button',{staticClass:\"gl-mx-2 gl-mb-3\",attrs:{\"href\":_vm.newProjectPath,\"variant\":_vm.showNewIssueDropdown ? 'default' : 'confirm'}},[_vm._v(\"\\n \"+_vm._s(_vm.__('New project'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showCsvButtons)?_c('gl-disclosure-dropdown',{staticClass:\"gl-mx-2 gl-mb-3\",attrs:{\"toggle-text\":_vm.__('Import issues'),\"data-testid\":\"import-issues-dropdown\"}},[_c('csv-import-export-buttons',{attrs:{\"export-csv-path\":_vm.exportCsvPathWithQuery,\"issuable-count\":_vm.currentTabCount,\"track-import-click\":\"\"}})],1):_vm._e()]},proxy:true}],null,true)}),_vm._v(\" \"),_c('hr'),_vm._v(\" \"),_c('p',{staticClass:\"gl-mb-0 gl-text-center gl-font-bold\"},[_vm._v(\"\\n \"+_vm._s(_vm.s__('JiraService|Using Jira for issue tracking?'))+\"\\n \")]),_vm._v(\" \"),_c('p',{staticClass:\"gl-mb-0 gl-text-center\"},[_c('gl-sprintf',{attrs:{\"message\":_vm.$options.i18n.jiraIntegrationMessage},scopedSlots:_vm._u([{key:\"jiraDocsLink\",fn:function({ content }){return [_c('gl-link',{attrs:{\"href\":_vm.$options.jiraIntegrationPath,\"data-track-action\":_vm.isProject && 'click_jira_int_project_issues_empty_list_page',\"data-track-label\":_vm.isProject && 'jira_int_project_issues_empty_list'}},[_vm._v(\"\\n \"+_vm._s(content)+\"\\n \")])]}}],null,false,315739561)})],1),_vm._v(\" \"),_c('p',{staticClass:\"gl-text-center gl-text-subtle\"},[_vm._v(\"\\n \"+_vm._s(_vm.s__('JiraService|This feature requires a Premium plan.'))+\"\\n \")])],1)]):_c('gl-empty-state',{attrs:{\"title\":_vm.__('Use issues to collaborate on ideas, solve problems, and plan work'),\"svg-path\":_vm.$options.emptyStateSvg,\"svg-height\":null,\"primary-button-text\":_vm.__('Register / Sign In'),\"primary-button-link\":_vm.signInPath,\"data-testid\":\"issuable-empty-state\"},scopedSlots:_vm._u([{key:\"description\",fn:function(){return [_c('gl-link',{attrs:{\"href\":_vm.$options.issuesHelpPagePath}},[_vm._v(\"\\n \"+_vm._s(_vm.__('Learn more about issues.'))+\"\\n \")])]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default __webpack_public_path__ + \"empty-issues-add-md.201d9f29.svg\";","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empty_state_without_any_issues.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empty_state_without_any_issues.vue?vue&type=script&lang=js\"","<script>\nimport emptyStateSvg from '@gitlab/svgs/dist/illustrations/empty-state/empty-issues-add-md.svg';\nimport { GlButton, GlDisclosureDropdown, GlEmptyState, GlLink, GlSprintf } from '@gitlab/ui';\nimport { helpPagePath } from '~/helpers/help_page_helper';\nimport CsvImportExportButtons from '~/issuable/components/csv_import_export_buttons.vue';\nimport { s__, __ } from '~/locale';\nimport NewResourceDropdown from '~/vue_shared/components/new_resource_dropdown/new_resource_dropdown.vue';\nimport { hasNewIssueDropdown } from '../has_new_issue_dropdown_mixin';\n\nexport default {\n i18n: {\n jiraIntegrationMessage: s__(\n 'JiraService|%{jiraDocsLinkStart}Enable the Jira integration%{jiraDocsLinkEnd} to view your Jira issues in GitLab.',\n ),\n },\n emptyStateSvg,\n issuesHelpPagePath: helpPagePath('user/project/issues/index'),\n jiraIntegrationPath: helpPagePath('integration/jira/configure', { anchor: 'view-jira-issues' }),\n components: {\n CsvImportExportButtons,\n GlButton,\n GlDisclosureDropdown,\n GlEmptyState,\n GlLink,\n GlSprintf,\n NewResourceDropdown,\n },\n mixins: [hasNewIssueDropdown()],\n inject: [\n 'canCreateProjects',\n 'isSignedIn',\n 'newIssuePath',\n 'newProjectPath',\n 'showNewIssueLink',\n 'signInPath',\n 'groupId',\n 'isProject',\n ],\n props: {\n currentTabCount: {\n type: Number,\n required: false,\n default: undefined,\n },\n exportCsvPathWithQuery: {\n type: String,\n required: false,\n default: '',\n },\n showCsvButtons: {\n type: Boolean,\n required: false,\n default: false,\n },\n showNewIssueDropdown: {\n type: Boolean,\n required: false,\n default: false,\n },\n showIssuableByEmail: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n createProjectMessage() {\n return this.showNewIssueDropdown\n ? __('Issues exist in projects. Select a project to create an issue, or create a project.')\n : __('Issues exist in projects. To create an issue, first create a project.');\n },\n },\n};\n</script>\n\n<template>\n <div\n v-if=\"isSignedIn\"\n data-testid=\"signed-in-empty-state-block\"\n :data-track-action=\"isProject && 'render'\"\n :data-track-label=\"isProject && 'project_issues_empty_list'\"\n >\n <div>\n <gl-empty-state\n :title=\"__('Use issues to collaborate on ideas, solve problems, and plan work')\"\n :svg-path=\"$options.emptyStateSvg\"\n data-testid=\"issuable-empty-state\"\n >\n <template #description>\n <p\n v-if=\"canCreateProjects\"\n data-testid=\"create-project-message\"\n class=\"gl-my-2 gl-text-subtle\"\n >\n {{ createProjectMessage }}\n </p>\n <gl-link\n :href=\"$options.issuesHelpPagePath\"\n :data-track-action=\"isProject && 'click_learn_more_project_issues_empty_list_page'\"\n :data-track-label=\"isProject && 'learn_more_project_issues_empty_list'\"\n >\n {{ __('Learn more about issues.') }}\n </gl-link>\n </template>\n <template #actions>\n <slot name=\"actions\"></slot>\n <new-resource-dropdown\n v-if=\"showNewIssueDropdown\"\n class=\"gl-mx-2 gl-mb-3 gl-self-center\"\n :query=\"$options.searchProjectsQuery\"\n :query-variables=\"newIssueDropdownQueryVariables\"\n :extract-projects=\"extractProjects\"\n :group-id=\"groupId\"\n />\n <slot name=\"new-issue-button\">\n <gl-button\n v-if=\"showNewIssueLink\"\n :href=\"newIssuePath\"\n variant=\"confirm\"\n class=\"gl-mx-2 gl-mb-3\"\n data-track-action=\"click_new_issue_project_issues_empty_list_page\"\n data-track-label=\"new_issue_project_issues_empty_list\"\n >\n {{ __('New issue') }}\n </gl-button>\n </slot>\n <gl-button\n v-if=\"canCreateProjects\"\n :href=\"newProjectPath\"\n :variant=\"showNewIssueDropdown ? 'default' : 'confirm'\"\n class=\"gl-mx-2 gl-mb-3\"\n >\n {{ __('New project') }}\n </gl-button>\n\n <gl-disclosure-dropdown\n v-if=\"showCsvButtons\"\n class=\"gl-mx-2 gl-mb-3\"\n :toggle-text=\"__('Import issues')\"\n data-testid=\"import-issues-dropdown\"\n >\n <csv-import-export-buttons\n :export-csv-path=\"exportCsvPathWithQuery\"\n :issuable-count=\"currentTabCount\"\n track-import-click\n />\n </gl-disclosure-dropdown>\n </template>\n </gl-empty-state>\n <hr />\n <p class=\"gl-mb-0 gl-text-center gl-font-bold\">\n {{ s__('JiraService|Using Jira for issue tracking?') }}\n </p>\n <p class=\"gl-mb-0 gl-text-center\">\n <gl-sprintf :message=\"$options.i18n.jiraIntegrationMessage\">\n <template #jiraDocsLink=\"{ content }\">\n <gl-link\n :href=\"$options.jiraIntegrationPath\"\n :data-track-action=\"isProject && 'click_jira_int_project_issues_empty_list_page'\"\n :data-track-label=\"isProject && 'jira_int_project_issues_empty_list'\"\n >\n {{ content }}\n </gl-link>\n </template>\n </gl-sprintf>\n </p>\n <p class=\"gl-text-center gl-text-subtle\">\n {{ s__('JiraService|This feature requires a Premium plan.') }}\n </p>\n </div>\n </div>\n\n <gl-empty-state\n v-else\n :title=\"__('Use issues to collaborate on ideas, solve problems, and plan work')\"\n :svg-path=\"$options.emptyStateSvg\"\n :svg-height=\"null\"\n :primary-button-text=\"__('Register / Sign In')\"\n :primary-button-link=\"signInPath\"\n data-testid=\"issuable-empty-state\"\n >\n <template #description>\n <gl-link :href=\"$options.issuesHelpPagePath\">\n {{ __('Learn more about issues.') }}\n </gl-link>\n </template>\n </gl-empty-state>\n</template>\n","import { render, staticRenderFns } from \"./empty_state_without_any_issues.vue?vue&type=template&id=316e8818\"\nimport script from \"./empty_state_without_any_issues.vue?vue&type=script&lang=js\"\nexport * from \"./empty_state_without_any_issues.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('issue-card-statistics',{attrs:{\"issue\":_vm.issue}},[_c('blocking-issues-count',{staticClass:\"gl-hidden sm:gl-inline-block\",attrs:{\"blocking-issues-count\":_vm.issue.blockingCount,\"is-list-item\":\"\",\"data-testid\":\"blocking-issues\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_statistics.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_statistics.vue?vue&type=script&lang=js\"","<script>\nimport { GlIcon, GlTooltipDirective } from '@gitlab/ui';\nimport { findAwardEmojiWidget } from '~/work_items/utils';\nimport { i18n } from '../constants';\n\nexport default {\n i18n,\n components: {\n GlIcon,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n props: {\n issue: {\n type: Object,\n required: true,\n },\n },\n computed: {\n downvotes() {\n return this.issue.downvotes || findAwardEmojiWidget(this.issue)?.downvotes;\n },\n upvotes() {\n return this.issue.upvotes || findAwardEmojiWidget(this.issue)?.upvotes;\n },\n },\n};\n</script>\n\n<template>\n <ul class=\"gl-contents\">\n <li\n v-if=\"upvotes\"\n v-gl-tooltip\n class=\"gl-hidden sm:gl-block\"\n :title=\"$options.i18n.upvotes\"\n data-testid=\"issuable-upvotes\"\n >\n <gl-icon name=\"thumb-up\" />\n {{ upvotes }}\n </li>\n <li\n v-if=\"downvotes\"\n v-gl-tooltip\n class=\"gl-hidden sm:gl-block\"\n :title=\"$options.i18n.downvotes\"\n data-testid=\"issuable-downvotes\"\n >\n <gl-icon name=\"thumb-down\" />\n {{ downvotes }}\n </li>\n <li\n v-if=\"issue.mergeRequestsCount\"\n v-gl-tooltip\n class=\"gl-hidden sm:gl-block\"\n :title=\"__('Related merge requests')\"\n data-testid=\"merge-requests\"\n >\n <gl-icon name=\"merge-request\" />\n {{ issue.mergeRequestsCount }}\n </li>\n <slot></slot>\n </ul>\n</template>\n","import { render, staticRenderFns } from \"./issue_card_statistics.vue?vue&type=template&id=cc1949f0\"\nimport script from \"./issue_card_statistics.vue?vue&type=script&lang=js\"\nexport * from \"./issue_card_statistics.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{staticClass:\"gl-contents\"},[(_vm.upvotes)?_c('li',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-hidden sm:gl-block\",attrs:{\"title\":_vm.$options.i18n.upvotes,\"data-testid\":\"issuable-upvotes\"}},[_c('gl-icon',{attrs:{\"name\":\"thumb-up\"}}),_vm._v(\"\\n \"+_vm._s(_vm.upvotes)+\"\\n \")],1):_vm._e(),_vm._v(\" \"),(_vm.downvotes)?_c('li',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-hidden sm:gl-block\",attrs:{\"title\":_vm.$options.i18n.downvotes,\"data-testid\":\"issuable-downvotes\"}},[_c('gl-icon',{attrs:{\"name\":\"thumb-down\"}}),_vm._v(\"\\n \"+_vm._s(_vm.downvotes)+\"\\n \")],1):_vm._e(),_vm._v(\" \"),(_vm.issue.mergeRequestsCount)?_c('li',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-hidden sm:gl-block\",attrs:{\"title\":_vm.__('Related merge requests'),\"data-testid\":\"merge-requests\"}},[_c('gl-icon',{attrs:{\"name\":\"merge-request\"}}),_vm._v(\"\\n \"+_vm._s(_vm.issue.mergeRequestsCount)+\"\\n \")],1):_vm._e(),_vm._v(\" \"),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blocking_issues_count.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blocking_issues_count.vue?vue&type=script&lang=js\"","<script>\nimport { GlIcon, GlTooltipDirective } from '@gitlab/ui';\n\nexport default {\n components: {\n GlIcon,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n inject: {\n hasBlockedIssuesFeature: {\n default: false,\n },\n },\n props: {\n blockingIssuesCount: {\n type: Number,\n required: false,\n default: null,\n },\n isListItem: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n showBlockingIssuesCount() {\n return this.hasBlockedIssuesFeature && this.blockingIssuesCount > 0;\n },\n tag() {\n return this.isListItem ? 'li' : 'span';\n },\n },\n};\n</script>\n\n<template>\n <component :is=\"tag\" v-if=\"showBlockingIssuesCount\" v-gl-tooltip :title=\"__('Blocking issues')\">\n <gl-icon name=\"entity-blocking\" variant=\"warning\" />\n {{ blockingIssuesCount }}\n </component>\n</template>\n","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_statistics.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_statistics.vue?vue&type=script&lang=js\"","<script>\nimport IssueCardStatistics from '~/issues/list/components/issue_card_statistics.vue';\nimport BlockingIssuesCount from '../../components/blocking_issues_count.vue';\n\nexport default {\n components: {\n BlockingIssuesCount,\n IssueCardStatistics,\n },\n props: {\n issue: {\n type: Object,\n required: true,\n },\n },\n};\n</script>\n\n<template>\n <issue-card-statistics :issue=\"issue\">\n <blocking-issues-count\n class=\"gl-hidden sm:gl-inline-block\"\n :blocking-issues-count=\"issue.blockingCount\"\n is-list-item\n data-testid=\"blocking-issues\"\n />\n </issue-card-statistics>\n</template>\n","import { render, staticRenderFns } from \"./blocking_issues_count.vue?vue&type=template&id=68b02664\"\nimport script from \"./blocking_issues_count.vue?vue&type=script&lang=js\"\nexport * from \"./blocking_issues_count.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.showBlockingIssuesCount)?_c(_vm.tag,{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],tag:\"component\",attrs:{\"title\":_vm.__('Blocking issues')}},[_c('gl-icon',{attrs:{\"name\":\"entity-blocking\",\"variant\":\"warning\"}}),_vm._v(\"\\n \"+_vm._s(_vm.blockingIssuesCount)+\"\\n\")],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./issue_card_statistics.vue?vue&type=template&id=0052e47a\"\nimport script from \"./issue_card_statistics.vue?vue&type=script&lang=js\"\nexport * from \"./issue_card_statistics.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/* eslint-disable import/export */\nimport {\n getDefaultWorkItemTypes as getDefaultWorkItemTypesCE,\n getTypeTokenOptions as getTypeTokenOptionsCE,\n} from '~/issues/list/utils';\nimport { __, s__ } from '~/locale';\nimport {\n WORK_ITEM_TYPE_ENUM_EPIC,\n WORK_ITEM_TYPE_ENUM_KEY_RESULT,\n WORK_ITEM_TYPE_ENUM_OBJECTIVE,\n WORK_ITEM_TYPE_ENUM_TEST_CASE,\n} from '~/work_items/constants';\n\nexport * from '~/issues/list/utils';\n\n/**\n * Get the types of work items that should be displayed on issues lists.\n * This should be consistent with `Issue::TYPES_FOR_LIST` in the backend.\n *\n * @returns {Array<string>}\n * */\nexport const getDefaultWorkItemTypes = ({\n hasEpicsFeature,\n hasOkrsFeature,\n hasQualityManagementFeature,\n}) => {\n const types = getDefaultWorkItemTypesCE();\n if (hasEpicsFeature) {\n types.push(WORK_ITEM_TYPE_ENUM_EPIC);\n }\n if (hasOkrsFeature) {\n types.push(WORK_ITEM_TYPE_ENUM_KEY_RESULT, WORK_ITEM_TYPE_ENUM_OBJECTIVE);\n }\n if (hasQualityManagementFeature) {\n types.push(WORK_ITEM_TYPE_ENUM_TEST_CASE);\n }\n return types;\n};\n\nexport const getTypeTokenOptions = ({\n hasEpicsFeature,\n hasOkrsFeature,\n hasQualityManagementFeature,\n}) => {\n const options = getTypeTokenOptionsCE();\n if (hasEpicsFeature) {\n options.push({\n icon: 'epic',\n title: __('Epic'),\n value: 'epic',\n });\n }\n if (hasOkrsFeature) {\n options.push(\n { icon: 'issue-type-objective', title: s__('WorkItem|Objective'), value: 'objective' },\n { icon: 'issue-type-keyresult', title: s__('WorkItem|Key Result'), value: 'key_result' },\n );\n }\n if (hasQualityManagementFeature) {\n options.push({\n icon: 'issue-type-test-case',\n title: s__('WorkItem|Test case'),\n value: 'test_case',\n });\n }\n return options;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"vue-filtered-search-bar-container gl-flex gl-flex-col sm:gl-flex-row sm:gl-gap-3\"},[_c('div',{staticClass:\"flex-grow-1 gl-flex gl-min-w-0 gl-gap-3\"},[(_vm.showCheckbox)?_c('gl-form-checkbox',{staticClass:\"gl-min-h-0 gl-self-center\",attrs:{\"checked\":_vm.checkboxChecked},on:{\"change\":function($event){return _vm.$emit('checked-input', $event)}}},[_c('span',{staticClass:\"gl-sr-only\"},[_vm._v(_vm._s(_vm.__('Select all')))])]):_vm._e(),_vm._v(\" \"),_c('gl-filtered-search',{ref:\"filteredSearchInput\",staticClass:\"flex-grow-1\",attrs:{\"placeholder\":_vm.searchInputPlaceholder,\"available-tokens\":_vm.tokens,\"history-items\":_vm.filteredRecentSearches,\"suggestions-list-class\":_vm.suggestionsListClass,\"search-button-attributes\":_vm.searchButtonAttributes,\"search-input-attributes\":_vm.searchInputAttributes,\"recent-searches-header\":_vm.__('Recent searches'),\"clear-button-title\":_vm.__('Clear'),\"close-button-title\":_vm.__('Close'),\"clear-recent-searches-text\":_vm.__('Clear recent searches'),\"no-recent-searches-text\":_vm.__(`You don't have any recent searches`),\"search-text-option-label\":_vm.searchTextOptionLabel,\"show-friendly-text\":_vm.showFriendlyText,\"show-search-button\":_vm.showSearchButton,\"terms-as-tokens\":_vm.termsAsTokens},on:{\"history-item-selected\":_vm.handleHistoryItemSelected,\"clear\":_vm.onClear,\"clear-history\":_vm.handleClearHistory,\"submit\":_vm.handleFilterSubmit,\"input\":_vm.onInput},scopedSlots:_vm._u([{key:\"history-item\",fn:function({ historyItem }){return [_vm._l((historyItem),function(token,index){return [(typeof token === 'string')?_c('span',{key:index,staticClass:\"gl-px-1\"},[_vm._v(\"\\\"\"+_vm._s(token)+\"\\\"\")]):_c('span',{key:`${index}-${token.type}-${token.value.data}`,staticClass:\"gl-px-1\"},[(_vm.tokenTitles[token.type])?_c('span',[_vm._v(_vm._s(_vm.tokenTitles[token.type])+\" :\"+_vm._s(token.value.operator))]):_vm._e(),_vm._v(\" \"),_c('strong',[_vm._v(_vm._s(_vm.tokenSymbols[token.type])+_vm._s(_vm.historyTokenOptionTitle(token)))])])]})]}}]),model:{value:(_vm.filterValue),callback:function ($$v) {_vm.filterValue=$$v},expression:\"filterValue\"}})],1),_vm._v(\" \"),(_vm.selectedSortOption)?_c('gl-sorting',{staticClass:\"sort-dropdown-container gl-w-full sm:!gl-m-0 sm:gl-w-auto\",attrs:{\"sort-options\":_vm.transformedSortOptions,\"sort-by\":_vm.sortById,\"is-ascending\":_vm.sortDirectionAscending,\"dropdown-class\":\"gl-grow\",\"dropdown-toggle-class\":\"gl-grow\",\"sort-direction-toggle-class\":\"!gl-shrink !gl-grow-0\"},on:{\"sortByChange\":_vm.handleSortByChange,\"sortDirectionChange\":_vm.handleSortDirectionChange}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filtered_search_bar_root.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filtered_search_bar_root.vue?vue&type=script&lang=js\"","<script>\nimport { GlFilteredSearch, GlSorting, GlFormCheckbox, GlTooltipDirective } from '@gitlab/ui';\n\nimport RecentSearchesStorageKeys from 'ee_else_ce/filtered_search/recent_searches_storage_keys';\nimport RecentSearchesService from '~/filtered_search/services/recent_searches_service';\nimport RecentSearchesStore from '~/filtered_search/stores/recent_searches_store';\nimport { createAlert } from '~/alert';\nimport { stripQuotes } from '~/lib/utils/text_utility';\nimport { __ } from '~/locale';\n\nimport { SORT_DIRECTION } from './constants';\nimport { filterEmptySearchTerm, uniqueTokens } from './filtered_search_utils';\n\nexport default {\n components: {\n GlFilteredSearch,\n GlSorting,\n GlFormCheckbox,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n props: {\n namespace: {\n type: [Number, String],\n required: true,\n },\n recentSearchesStorageKey: {\n type: String,\n required: false,\n default: '',\n },\n tokens: {\n type: Array,\n required: true,\n },\n sortOptions: {\n type: Array,\n default: () => [],\n required: false,\n },\n initialFilterValue: {\n type: Array,\n required: false,\n default: () => [],\n },\n initialSortBy: {\n type: String,\n required: false,\n default: '',\n validator: (value) => value === '' || /(_desc)|(_asc)/gi.test(value),\n },\n showCheckbox: {\n type: Boolean,\n required: false,\n default: false,\n },\n checkboxChecked: {\n type: Boolean,\n required: false,\n default: false,\n },\n searchInputPlaceholder: {\n type: String,\n required: false,\n default: __('Search or filter results…'),\n },\n suggestionsListClass: {\n type: String,\n required: false,\n default: '',\n },\n searchButtonAttributes: {\n type: Object,\n required: false,\n default: () => ({}),\n },\n searchInputAttributes: {\n type: Object,\n required: false,\n default: () => ({}),\n },\n showFriendlyText: {\n type: Boolean,\n required: false,\n default: false,\n },\n syncFilterAndSort: {\n type: Boolean,\n required: false,\n default: false,\n },\n termsAsTokens: {\n type: Boolean,\n required: false,\n default: false,\n },\n searchTextOptionLabel: {\n type: String,\n required: false,\n default: __('Search for this text'),\n },\n showSearchButton: {\n type: Boolean,\n required: false,\n default: true,\n },\n },\n data() {\n return {\n initialRender: true,\n recentSearchesPromise: null,\n recentSearches: [],\n filterValue: this.initialFilterValue,\n ...this.getInitialSort(),\n };\n },\n computed: {\n tokenSymbols() {\n return this.tokens.reduce(\n (tokenSymbols, token) => ({\n ...tokenSymbols,\n [token.type]: token.symbol,\n }),\n {},\n );\n },\n tokenTitles() {\n return this.tokens.reduce(\n (tokenSymbols, token) => ({\n ...tokenSymbols,\n [token.type]: token.title,\n }),\n {},\n );\n },\n transformedSortOptions() {\n return this.sortOptions.map(({ id: value, title: text }) => ({ value, text }));\n },\n selectedSortDirection() {\n return this.sortDirectionAscending ? SORT_DIRECTION.ascending : SORT_DIRECTION.descending;\n },\n selectedSortOption() {\n return this.sortOptions.find((sortOption) => sortOption.id === this.sortById);\n },\n /**\n * This prop fixes a behaviour affecting GlFilteredSearch\n * where selecting duplicate token values leads to history\n * dropdown also showing that selection.\n */\n filteredRecentSearches() {\n if (this.recentSearchesStorageKey) {\n const knownItems = [];\n return this.recentSearches.reduce((historyItems, item) => {\n // Only include non-string history items (discard items from legacy search)\n if (typeof item !== 'string') {\n const sanitizedItem = uniqueTokens(item);\n const itemString = JSON.stringify(sanitizedItem);\n // Only include items which aren't already part of history\n if (!knownItems.includes(itemString)) {\n historyItems.push(sanitizedItem);\n // We're storing string for comparision as doing direct object compare\n // won't work due to object reference not being the same.\n knownItems.push(itemString);\n }\n }\n return historyItems;\n }, []);\n }\n return undefined;\n },\n },\n watch: {\n initialFilterValue(newValue) {\n if (this.syncFilterAndSort) {\n this.filterValue = newValue;\n }\n },\n initialSortBy(newInitialSortBy) {\n if (this.syncFilterAndSort && newInitialSortBy) {\n this.updateSelectedSortValues();\n }\n },\n recentSearchesStorageKey: {\n handler: 'setupRecentSearch',\n immediate: true,\n },\n },\n methods: {\n /**\n * Initialize service and store instances for\n * getting Recent Search functional.\n */\n setupRecentSearch() {\n this.recentSearchesService = new RecentSearchesService(\n `${this.namespace}-${RecentSearchesStorageKeys[this.recentSearchesStorageKey]}`,\n );\n\n this.recentSearchesStore = new RecentSearchesStore({\n isLocalStorageAvailable: RecentSearchesService.isAvailable(),\n allowedKeys: this.tokens.map((token) => token.type),\n });\n\n this.recentSearchesPromise = this.recentSearchesService\n .fetch()\n .catch((error) => {\n if (error.name === 'RecentSearchesServiceError') return undefined;\n\n createAlert({\n message: __('An error occurred while parsing recent searches'),\n });\n\n // Gracefully fail to empty array\n return [];\n })\n .then((searches) => {\n if (!searches) return;\n\n // Put any searches that may have come in before\n // we fetched the saved searches ahead of the already saved ones\n let resultantSearches = this.recentSearchesStore.setRecentSearches(\n this.recentSearchesStore.state.recentSearches.concat(searches),\n );\n // If visited URL has search params, add them to recent search store\n if (filterEmptySearchTerm(this.filterValue).length) {\n resultantSearches = this.recentSearchesStore.addRecentSearch(this.filterValue);\n }\n\n this.recentSearchesService.save(resultantSearches);\n this.recentSearches = resultantSearches;\n });\n },\n /**\n * When user hits Enter/Return key while typing tokens, we emit `onFilter`\n * event immediately so at that time, we don't want to keep tokens dropdown\n * visible on UI so this is essentially a hack which allows us to do that\n * until `GlFilteredSearch` natively supports this.\n * See this discussion https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36421#note_385729546\n */\n blurSearchInput() {\n const searchInputEl = this.$refs.filteredSearchInput.$el.querySelector(\n '.gl-filtered-search-token-segment-input',\n );\n if (searchInputEl) {\n searchInputEl.blur();\n }\n },\n /**\n * This method removes quotes enclosure from filter values which are\n * done by `GlFilteredSearch` internally when filter value contains\n * spaces.\n */\n removeQuotesEnclosure(filters = []) {\n return filters.map((filter) => {\n if (typeof filter === 'object') {\n const valueString = filter.value.data;\n return {\n ...filter,\n value: {\n data: typeof valueString === 'string' ? stripQuotes(valueString) : valueString,\n operator: filter.value.operator,\n },\n };\n }\n return filter;\n });\n },\n handleSortByChange(sortById) {\n this.sortById = sortById;\n this.$emit('onSort', this.selectedSortOption.sortDirection[this.selectedSortDirection]);\n },\n handleSortDirectionChange(isAscending) {\n this.sortDirectionAscending = isAscending;\n this.$emit('onSort', this.selectedSortOption.sortDirection[this.selectedSortDirection]);\n },\n handleHistoryItemSelected(filters) {\n this.$emit('onFilter', this.removeQuotesEnclosure(filters));\n },\n handleClearHistory() {\n const resultantSearches = this.recentSearchesStore.setRecentSearches([]);\n this.recentSearchesService.save(resultantSearches);\n this.recentSearches = [];\n },\n async handleFilterSubmit() {\n this.blurSearchInput();\n await this.$nextTick();\n const filterTokens = uniqueTokens(this.filterValue);\n this.filterValue = filterTokens;\n\n if (this.recentSearchesStorageKey) {\n this.recentSearchesPromise\n .then(() => {\n if (filterTokens.length) {\n const resultantSearches = this.recentSearchesStore.addRecentSearch(filterTokens);\n this.recentSearchesService.save(resultantSearches);\n this.recentSearches = resultantSearches;\n }\n })\n .catch(() => {\n // https://gitlab.com/gitlab-org/gitlab-foss/issues/30821\n });\n }\n this.$emit('onFilter', this.removeQuotesEnclosure(filterTokens));\n },\n historyTokenOptionTitle(historyToken) {\n const tokenOption = this.tokens\n .find((token) => token.type === historyToken.type)\n ?.options?.find((option) => option.value === historyToken.value.data);\n\n if (!tokenOption?.title) {\n return historyToken.value.data;\n }\n\n return tokenOption.title;\n },\n onClear() {\n const cleared = true;\n this.$emit('onFilter', [], cleared);\n },\n updateSelectedSortValues() {\n Object.assign(this, this.getInitialSort());\n },\n getInitialSort() {\n for (const sortOption of this.sortOptions) {\n if (sortOption.sortDirection.ascending === this.initialSortBy) {\n return {\n sortById: sortOption.id,\n sortDirectionAscending: true,\n };\n }\n\n if (sortOption.sortDirection.descending === this.initialSortBy) {\n return {\n sortById: sortOption.id,\n sortDirectionAscending: false,\n };\n }\n }\n\n return {\n sortById: this.sortOptions[0]?.id,\n sortDirectionAscending: false,\n };\n },\n onInput(tokens) {\n this.$emit('onInput', this.removeQuotesEnclosure(uniqueTokens(tokens)));\n },\n },\n};\n</script>\n\n<template>\n <div class=\"vue-filtered-search-bar-container gl-flex gl-flex-col sm:gl-flex-row sm:gl-gap-3\">\n <div class=\"flex-grow-1 gl-flex gl-min-w-0 gl-gap-3\">\n <gl-form-checkbox\n v-if=\"showCheckbox\"\n class=\"gl-min-h-0 gl-self-center\"\n :checked=\"checkboxChecked\"\n @change=\"$emit('checked-input', $event)\"\n >\n <span class=\"gl-sr-only\">{{ __('Select all') }}</span>\n </gl-form-checkbox>\n <gl-filtered-search\n ref=\"filteredSearchInput\"\n v-model=\"filterValue\"\n :placeholder=\"searchInputPlaceholder\"\n :available-tokens=\"tokens\"\n :history-items=\"filteredRecentSearches\"\n :suggestions-list-class=\"suggestionsListClass\"\n :search-button-attributes=\"searchButtonAttributes\"\n :search-input-attributes=\"searchInputAttributes\"\n :recent-searches-header=\"__('Recent searches')\"\n :clear-button-title=\"__('Clear')\"\n :close-button-title=\"__('Close')\"\n :clear-recent-searches-text=\"__('Clear recent searches')\"\n :no-recent-searches-text=\"__(`You don't have any recent searches`)\"\n :search-text-option-label=\"searchTextOptionLabel\"\n :show-friendly-text=\"showFriendlyText\"\n :show-search-button=\"showSearchButton\"\n :terms-as-tokens=\"termsAsTokens\"\n class=\"flex-grow-1\"\n @history-item-selected=\"handleHistoryItemSelected\"\n @clear=\"onClear\"\n @clear-history=\"handleClearHistory\"\n @submit=\"handleFilterSubmit\"\n @input=\"onInput\"\n >\n <template #history-item=\"{ historyItem }\">\n <template v-for=\"(token, index) in historyItem\">\n <span v-if=\"typeof token === 'string'\" :key=\"index\" class=\"gl-px-1\">\"{{ token }}\"</span>\n <span v-else :key=\"`${index}-${token.type}-${token.value.data}`\" class=\"gl-px-1\">\n <span v-if=\"tokenTitles[token.type]\"\n >{{ tokenTitles[token.type] }} :{{ token.value.operator }}</span\n >\n <strong>{{ tokenSymbols[token.type] }}{{ historyTokenOptionTitle(token) }}</strong>\n </span>\n </template>\n </template>\n </gl-filtered-search>\n </div>\n <gl-sorting\n v-if=\"selectedSortOption\"\n :sort-options=\"transformedSortOptions\"\n :sort-by=\"sortById\"\n :is-ascending=\"sortDirectionAscending\"\n class=\"sort-dropdown-container gl-w-full sm:!gl-m-0 sm:gl-w-auto\"\n dropdown-class=\"gl-grow\"\n dropdown-toggle-class=\"gl-grow\"\n sort-direction-toggle-class=\"!gl-shrink !gl-grow-0\"\n @sortByChange=\"handleSortByChange\"\n @sortDirectionChange=\"handleSortDirectionChange\"\n />\n </div>\n</template>\n","import { render, staticRenderFns } from \"./filtered_search_bar_root.vue?vue&type=template&id=ff54ccba\"\nimport script from \"./filtered_search_bar_root.vue?vue&type=script&lang=js\"\nexport * from \"./filtered_search_bar_root.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { invert } from 'lodash';\nimport { __, s__, sprintf } from '~/locale';\nimport {\n STATUS_TRIGGERED,\n STATUS_ACKNOWLEDGED,\n STATUS_RESOLVED,\n IssuableAttributeType as IssuableAttributeTypeFoss,\n IssuableAttributeState as IssuableAttributeStateFoss,\n LocalizedIssuableAttributeType as LocalizedIssuableAttributeTypeFoss,\n dropdowni18nText as dropdowni18nTextFoss,\n Tracking,\n defaultEpicSort,\n epicIidPattern,\n} from '~/sidebar/constants';\n\nexport { Tracking, defaultEpicSort, epicIidPattern };\n\nexport const edit = __('Edit');\nexport const none = __('None');\n\nexport const HEALTH_STATUS_I18N_ASSIGN_HEALTH_STATUS = s__('Sidebar|Select health status');\nexport const HEALTH_STATUS_I18N_FETCH_ERROR = __(\n 'An error occurred while fetching the health status.',\n);\nexport const HEALTH_STATUS_I18N_HEALTH_STATUS = s__('Sidebar|Health status');\nexport const HEALTH_STATUS_I18N_NO_STATUS = s__('Sidebar|No status');\nexport const HEALTH_STATUS_I18N_NONE = s__('Sidebar|None');\nexport const HEALTH_STATUS_I18N_SELECT_HEALTH_STATUS = __('Select health status');\nexport const HEALTH_STATUS_I18N_UPDATE_ERROR = __(\n 'Something went wrong while setting %{issuableType} health status.',\n);\nexport const HEALTH_STATUS_OPEN_DROPDOWN_DELAY = 100;\n\nexport const HEALTH_STATUS_AT_RISK = 'atRisk';\nexport const HEALTH_STATUS_NEEDS_ATTENTION = 'needsAttention';\nexport const HEALTH_STATUS_ON_TRACK = 'onTrack';\n\nexport const healthStatusTextMap = {\n [HEALTH_STATUS_ON_TRACK]: __('On track'),\n [HEALTH_STATUS_NEEDS_ATTENTION]: __('Needs attention'),\n [HEALTH_STATUS_AT_RISK]: __('At risk'),\n};\n\nexport const healthStatusVariantMap = {\n [HEALTH_STATUS_ON_TRACK]: 'success',\n [HEALTH_STATUS_NEEDS_ATTENTION]: 'warning',\n [HEALTH_STATUS_AT_RISK]: 'danger',\n};\n\nexport const healthStatusIconMap = {\n [HEALTH_STATUS_ON_TRACK]: 'status-health',\n [HEALTH_STATUS_NEEDS_ATTENTION]: 'warning',\n [HEALTH_STATUS_AT_RISK]: 'error',\n};\n\nexport const healthStatusColorMap = {\n [HEALTH_STATUS_ON_TRACK]: 'gl-text-success',\n [HEALTH_STATUS_NEEDS_ATTENTION]: 'gl-text-orange-500',\n [HEALTH_STATUS_AT_RISK]: 'gl-text-red-500',\n};\n\nexport const healthStatusForRestApi = {\n NO_STATUS: '0',\n [HEALTH_STATUS_ON_TRACK]: 'on_track',\n [HEALTH_STATUS_NEEDS_ATTENTION]: 'needs_attention',\n [HEALTH_STATUS_AT_RISK]: 'at_risk',\n};\n\nexport const healthStatusDropdownOptions = [\n { text: __('On track'), value: HEALTH_STATUS_ON_TRACK },\n { text: __('Needs attention'), value: HEALTH_STATUS_NEEDS_ATTENTION },\n { text: __('At risk'), value: HEALTH_STATUS_AT_RISK },\n];\n\nexport const healthStatusTracking = {\n event: Tracking.editEvent,\n label: Tracking.rightSidebarLabel,\n property: 'health_status',\n};\n\nexport const iterationSelectTextMap = {\n iteration: __('Iteration'),\n noIteration: __('No iteration'),\n assignIteration: __('Select iteration'),\n iterationSelectFail: __('Failed to set iteration on this issue. Please try again.'),\n currentIterationFetchError: __('Failed to fetch the iteration for this issue. Please try again.'),\n iterationsFetchError: __('Failed to fetch the iterations for the group. Please try again.'),\n noIterationsFound: s__('Iterations|No iterations found'),\n};\n\nexport const noAttributeId = null;\n\nexport const noEpic = {\n id: 0,\n title: __('No Epic'),\n};\n\nexport const placeholderEpic = {\n id: -1,\n title: __('Select epic'),\n};\n\nexport const SIDEBAR_ESCALATION_POLICY_TITLE = __('Escalation policy');\n\nexport const MAX_DISPLAY_WEIGHT = 99999;\n\nexport const CVE_ID_REQUEST_SIDEBAR_I18N = {\n action: s__('CVE|Request CVE ID'),\n description: s__('CVE|CVE ID Request'),\n createRequest: s__('CVE|Create CVE ID Request'),\n whyRequest: s__('CVE|Why Request a CVE ID?'),\n whyText1: s__(\n 'CVE|Common Vulnerability Enumeration (CVE) identifiers are used to track distinct vulnerabilities in specific versions of code.',\n ),\n whyText2: s__(\n 'CVE|As a maintainer, requesting a CVE for a vulnerability in your project will help your users stay secure and informed.',\n ),\n learnMore: __('Learn more'),\n};\n\nexport const IssuableAttributeType = {\n ...IssuableAttributeTypeFoss,\n Iteration: 'iteration',\n Epic: 'epic',\n EscalationPolicy: 'escalation policy', // eslint-disable-line @gitlab/require-i18n-strings\n Parent: 'parent',\n};\n\nexport const LocalizedIssuableAttributeType = {\n ...LocalizedIssuableAttributeTypeFoss,\n Iteration: s__('Issuable|iteration'),\n Epic: s__('Issuable|epic'),\n EscalationPolicy: s__('Issuable|escalation policy'),\n};\n\n// The reason we did this conversion is that we want to keep track of the keys via referencing the object itself\n// Thus we have to convert value as key, and use is in the method.\nexport const IssuableAttributeTypeKeyMap = invert(IssuableAttributeType);\n\nexport const IssuableAttributeState = {\n ...IssuableAttributeStateFoss,\n [IssuableAttributeType.Iteration]: 'opened',\n [IssuableAttributeType.Epic]: 'opened',\n};\n\nexport function dropdowni18nText(issuableAttribute, issuableType) {\n let noAttributesFound = s__('DropdownWidget|No %{issuableAttribute} found');\n\n if (issuableAttribute === LocalizedIssuableAttributeType.Iteration) {\n noAttributesFound = s__('DropdownWidget|No open %{issuableAttribute} found');\n }\n\n return {\n ...dropdowni18nTextFoss(issuableAttribute, issuableType),\n noAttributesFound: sprintf(noAttributesFound, {\n issuableAttribute,\n }),\n };\n}\n\nexport const i18nHelpText = {\n title: s__('IncidentManagement|Page your team with escalation policies'),\n detail: s__(\n 'IncidentManagement|Use escalation policies to automatically page your team when incidents are created.',\n ),\n linkText: __('Learn more'),\n};\n\nexport const i18nPolicyText = {\n paged: s__('IncidentManagement|Paged'),\n title: SIDEBAR_ESCALATION_POLICY_TITLE,\n none,\n};\n\nexport const i18nStatusHeaderText = s__('IncidentManagement|Assign paging status');\nconst STOPS_PAGING = s__('IncidentManagement|Stops paging');\n\nexport const STATUS_SUBTEXTS = {\n [STATUS_TRIGGERED]: '',\n\n [STATUS_ACKNOWLEDGED]: STOPS_PAGING,\n [STATUS_RESOLVED]: STOPS_PAGING,\n};\n","import createEventHub from '~/helpers/event_hub_factory';\n\nexport default createEventHub();\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('gl-button',{directives:[{name:\"gl-modal\",rawName:\"v-gl-modal\",value:(_vm.$options.modalId),expression:\"$options.modalId\"}],attrs:{\"variant\":\"link\"}},[_c('gl-sprintf',{attrs:{\"message\":_vm.__('Email a new %{name} to this project')},scopedSlots:_vm._u([{key:\"name\",fn:function(){return [_vm._v(_vm._s(_vm.issuableName))]},proxy:true}])})],1),_vm._v(\" \"),_c('gl-modal',{ref:\"modal\",attrs:{\"modal-id\":_vm.$options.modalId},scopedSlots:_vm._u([{key:\"modal-title\",fn:function(){return [_c('gl-sprintf',{attrs:{\"message\":_vm.__('Create new %{name} by email')},scopedSlots:_vm._u([{key:\"name\",fn:function(){return [_vm._v(_vm._s(_vm.issuableName))]},proxy:true}])})]},proxy:true},{key:\"modal-footer\",fn:function(){return [_c('gl-button',{attrs:{\"category\":\"secondary\"},on:{\"click\":_vm.cancelHandler}},[_vm._v(_vm._s(_vm.__('Cancel')))])]},proxy:true}])},[_vm._v(\" \"),_c('p',[_c('gl-sprintf',{attrs:{\"message\":_vm.__(\n 'You can create a new %{name} inside this project by sending an email to the following email address:',\n )},scopedSlots:_vm._u([{key:\"name\",fn:function(){return [_vm._v(_vm._s(_vm.issuableName))]},proxy:true}])})],1),_vm._v(\" \"),_c('gl-form-input-group',{staticClass:\"gl-mb-4\",attrs:{\"value\":_vm.email,\"readonly\":\"\",\"select-on-click\":\"\"},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('modal-copy-button',{attrs:{\"text\":_vm.email,\"title\":_vm.__('Copy'),\"modal-id\":_vm.$options.modalId}}),_vm._v(\" \"),_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"href\":_vm.mailToLink,\"title\":_vm.$options.i18n.sendEmail,\"aria-label\":_vm.$options.i18n.sendEmail,\"icon\":\"mail\"}})]},proxy:true}])}),_vm._v(\" \"),_c('p',[_c('gl-sprintf',{attrs:{\"message\":_vm.__(\n 'The subject will be used as the title of the new issue, and the message will be the description. %{quickActionsLinkStart}Quick actions%{quickActionsLinkEnd} and styling with %{markdownLinkStart}Markdown%{markdownLinkEnd} are supported.',\n )},scopedSlots:_vm._u([{key:\"quickActionsLink\",fn:function({ content }){return [_c('gl-link',{attrs:{\"href\":_vm.quickActionsHelpPath,\"target\":\"_blank\"}},[_vm._v(_vm._s(content))])]}},{key:\"markdownLink\",fn:function({ content }){return [_c('gl-link',{attrs:{\"href\":_vm.markdownHelpPath,\"target\":\"_blank\"}},[_vm._v(_vm._s(content))])]}}])})],1),_vm._v(\" \"),_c('p',[_c('gl-sprintf',{attrs:{\"message\":_vm.__(\n 'This is a private email address %{helpIcon} generated just for you. Anyone who has it can create issues or merge requests as if they were you. If that happens, %{resetLinkStart}reset this token%{resetLinkEnd}.',\n )},scopedSlots:_vm._u([{key:\"helpIcon\",fn:function(){return [_c('gl-link',{attrs:{\"href\":_vm.emailsHelpPagePath,\"target\":\"_blank\"}},[_c('help-icon')],1)]},proxy:true},{key:\"resetLink\",fn:function({ content }){return [_c('gl-button',{attrs:{\"variant\":\"link\",\"data-testid\":\"reset_email_token_link\"},on:{\"click\":_vm.resetIncomingEmailToken}},[_vm._v(\"\\n \"+_vm._s(content)+\"\\n \")])]}}])})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_by_email.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_by_email.vue?vue&type=script&lang=js\"","<script>\nimport {\n GlButton,\n GlModal,\n GlModalDirective,\n GlTooltipDirective,\n GlSprintf,\n GlLink,\n GlFormInputGroup,\n} from '@gitlab/ui';\nimport { TYPE_ISSUE } from '~/issues/constants';\nimport axios from '~/lib/utils/axios_utils';\nimport { sprintf, __ } from '~/locale';\nimport ModalCopyButton from '~/vue_shared/components/modal_copy_button.vue';\nimport HelpIcon from '~/vue_shared/components/help_icon/help_icon.vue';\n\nexport default {\n i18n: {\n sendEmail: __('Send email'),\n },\n name: 'IssuableByEmail',\n components: {\n GlButton,\n GlModal,\n GlSprintf,\n GlLink,\n GlFormInputGroup,\n HelpIcon,\n ModalCopyButton,\n },\n directives: {\n GlModal: GlModalDirective,\n GlTooltip: GlTooltipDirective,\n },\n inject: {\n initialEmail: {\n default: null,\n },\n issuableType: {\n default: TYPE_ISSUE,\n },\n emailsHelpPagePath: {\n default: '',\n },\n quickActionsHelpPath: {\n default: '',\n },\n markdownHelpPath: {\n default: '',\n },\n resetPath: {\n default: '',\n },\n },\n data() {\n return {\n email: this.initialEmail,\n issuableName: this.issuableType === TYPE_ISSUE ? __('issue') : __('merge request'),\n };\n },\n computed: {\n mailToLink() {\n const subject = sprintf(__('Enter the %{name} title'), {\n name: this.issuableName,\n });\n const body = sprintf(__('Enter the %{name} description'), {\n name: this.issuableName,\n });\n return `mailto:${this.email}?subject=${subject}&body=${body}`;\n },\n },\n methods: {\n async resetIncomingEmailToken() {\n try {\n const {\n data: { new_address: newAddress },\n } = await axios.put(this.resetPath);\n this.email = newAddress;\n } catch {\n this.$toast.show(__('There was an error when reseting email token.'));\n }\n },\n cancelHandler() {\n this.$refs.modal.hide();\n },\n },\n modalId: 'issuable-email-modal',\n};\n</script>\n\n<template>\n <div>\n <gl-button v-gl-modal=\"$options.modalId\" variant=\"link\"\n ><gl-sprintf :message=\"__('Email a new %{name} to this project')\"\n ><template #name>{{ issuableName }}</template></gl-sprintf\n ></gl-button\n >\n <gl-modal ref=\"modal\" :modal-id=\"$options.modalId\">\n <template #modal-title>\n <gl-sprintf :message=\"__('Create new %{name} by email')\">\n <template #name>{{ issuableName }}</template>\n </gl-sprintf>\n </template>\n <p>\n <gl-sprintf\n :message=\"\n __(\n 'You can create a new %{name} inside this project by sending an email to the following email address:',\n )\n \"\n >\n <template #name>{{ issuableName }}</template>\n </gl-sprintf>\n </p>\n <gl-form-input-group :value=\"email\" readonly select-on-click class=\"gl-mb-4\">\n <template #append>\n <modal-copy-button :text=\"email\" :title=\"__('Copy')\" :modal-id=\"$options.modalId\" />\n <gl-button\n v-gl-tooltip.hover\n :href=\"mailToLink\"\n :title=\"$options.i18n.sendEmail\"\n :aria-label=\"$options.i18n.sendEmail\"\n icon=\"mail\"\n />\n </template>\n </gl-form-input-group>\n <p>\n <gl-sprintf\n :message=\"\n __(\n 'The subject will be used as the title of the new issue, and the message will be the description. %{quickActionsLinkStart}Quick actions%{quickActionsLinkEnd} and styling with %{markdownLinkStart}Markdown%{markdownLinkEnd} are supported.',\n )\n \"\n >\n <template #quickActionsLink=\"{ content }\">\n <gl-link :href=\"quickActionsHelpPath\" target=\"_blank\">{{ content }}</gl-link>\n </template>\n <template #markdownLink=\"{ content }\">\n <gl-link :href=\"markdownHelpPath\" target=\"_blank\">{{ content }}</gl-link>\n </template>\n </gl-sprintf>\n </p>\n <p>\n <gl-sprintf\n :message=\"\n __(\n 'This is a private email address %{helpIcon} generated just for you. Anyone who has it can create issues or merge requests as if they were you. If that happens, %{resetLinkStart}reset this token%{resetLinkEnd}.',\n )\n \"\n >\n <template #helpIcon>\n <gl-link :href=\"emailsHelpPagePath\" target=\"_blank\">\n <help-icon />\n </gl-link>\n </template>\n <template #resetLink=\"{ content }\">\n <gl-button\n variant=\"link\"\n data-testid=\"reset_email_token_link\"\n @click=\"resetIncomingEmailToken\"\n >\n {{ content }}\n </gl-button>\n </template>\n </gl-sprintf>\n </p>\n <template #modal-footer>\n <gl-button category=\"secondary\" @click=\"cancelHandler\">{{ __('Cancel') }}</gl-button>\n </template>\n </gl-modal>\n </div>\n</template>\n","import { render, staticRenderFns } from \"./issuable_by_email.vue?vue&type=template&id=063f56ce\"\nimport script from \"./issuable_by_email.vue?vue&type=script&lang=js\"\nexport * from \"./issuable_by_email.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"mutation\",\"name\":{\"kind\":\"Name\",\"value\":\"setSortPreference\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"input\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"UserPreferencesUpdateInput\"}}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"userPreferencesUpdate\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"input\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"input\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"errors\"},\"arguments\":[],\"directives\":[]}]}}]}}],\"loc\":{\"start\":0,\"end\":124}};\n doc.loc.source = {\"body\":\"mutation setSortPreference($input: UserPreferencesUpdateInput!) {\\n userPreferencesUpdate(input: $input) {\\n errors\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"setSortPreference\"] = oneQuery(doc, \"setSortPreference\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"mutation\",\"name\":{\"kind\":\"Name\",\"value\":\"reorderIssues\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"oldIndex\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Int\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"newIndex\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Int\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"namespace\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"serializedVariables\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"reorderIssues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"oldIndex\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"oldIndex\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"newIndex\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"newIndex\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"namespace\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"namespace\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"serializedVariables\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"serializedVariables\"}}}],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"client\"},\"arguments\":[]}]}]}}],\"loc\":{\"start\":0,\"end\":265}};\n doc.loc.source = {\"body\":\"mutation reorderIssues(\\n $oldIndex: Int\\n $newIndex: Int\\n $namespace: String\\n $serializedVariables: String\\n) {\\n reorderIssues(\\n oldIndex: $oldIndex\\n newIndex: $newIndex\\n namespace: $namespace\\n serializedVariables: $serializedVariables\\n ) @client\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"reorderIssues\"] = oneQuery(doc, \"reorderIssues\");\n \n","import { __ } from '~/locale';\n\nclass RecentSearchesServiceError extends Error {\n constructor(message) {\n super(message || __('Recent Searches Service is unavailable'));\n this.name = 'RecentSearchesServiceError';\n }\n}\n\nexport default RecentSearchesServiceError;\n","import AccessorUtilities from '~/lib/utils/accessor';\nimport RecentSearchesServiceError from './recent_searches_service_error';\n\nclass RecentSearchesService {\n constructor(localStorageKey = 'issuable-recent-searches') {\n this.localStorageKey = localStorageKey;\n }\n\n fetch() {\n if (!RecentSearchesService.isAvailable()) {\n const error = new RecentSearchesServiceError();\n return Promise.reject(error);\n }\n\n const input = window.localStorage.getItem(this.localStorageKey);\n\n let searches = [];\n if (input && input.length > 0) {\n try {\n searches = JSON.parse(input);\n } catch (err) {\n return Promise.reject(err);\n }\n }\n\n return Promise.resolve(searches);\n }\n\n save(searches = []) {\n if (!RecentSearchesService.isAvailable()) return;\n\n window.localStorage.setItem(this.localStorageKey, JSON.stringify(searches));\n }\n\n static isAvailable() {\n return AccessorUtilities.canUseLocalStorage();\n }\n}\n\nexport default RecentSearchesService;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.displayAsText)?_c('span',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\",value:({ disabled: _vm.disableTooltip }),expression:\"{ disabled: disableTooltip }\"}],staticClass:\"gl-inline-flex gl-items-center\",class:[_vm.statusColor, _vm.textSizeClass, !_vm.disableTooltip ? 'gl-cursor-help' : undefined],attrs:{\"data-testid\":\"status-text\",\"title\":_vm.__('Health status')}},[_c('gl-icon',{staticClass:\"gl-mr-2\",attrs:{\"size\":16,\"name\":_vm.statusIcon}}),_vm._v(_vm._s(_vm.statusText))],1):_c('gl-badge',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-font-bold\",attrs:{\"title\":_vm.__('Health status'),\"variant\":_vm.statusClass}},[_vm._v(\"\\n \"+_vm._s(_vm.statusText)+\"\\n\")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_health_status.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_health_status.vue?vue&type=script&lang=js\"","<script>\nimport { GlBadge, GlIcon, GlTooltipDirective } from '@gitlab/ui';\nimport {\n healthStatusTextMap,\n healthStatusVariantMap,\n healthStatusIconMap,\n healthStatusColorMap,\n} from 'ee/sidebar/constants';\n\nexport default {\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n components: {\n GlBadge,\n GlIcon,\n },\n props: {\n healthStatus: {\n type: String,\n required: true,\n validator: (value) => Object.keys(healthStatusTextMap).includes(value),\n },\n displayAsText: {\n type: Boolean,\n required: false,\n },\n textSize: {\n type: String,\n required: false,\n default: 'base',\n validator: (value) => ['base', 'sm'].includes(value),\n },\n disableTooltip: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n statusText() {\n return healthStatusTextMap[this.healthStatus];\n },\n statusClass() {\n return healthStatusVariantMap[this.healthStatus];\n },\n statusIcon() {\n return healthStatusIconMap[this.healthStatus];\n },\n statusColor() {\n return healthStatusColorMap[this.healthStatus];\n },\n textSizeClass() {\n switch (this.textSize) {\n case 'sm':\n return 'gl-text-sm';\n case 'base':\n default:\n return 'gl-text-base';\n }\n },\n },\n};\n</script>\n\n<template>\n <span\n v-if=\"displayAsText\"\n v-gl-tooltip=\"{ disabled: disableTooltip }\"\n data-testid=\"status-text\"\n :title=\"__('Health status')\"\n class=\"gl-inline-flex gl-items-center\"\n :class=\"[statusColor, textSizeClass, !disableTooltip ? 'gl-cursor-help' : undefined]\"\n ><gl-icon class=\"gl-mr-2\" :size=\"16\" :name=\"statusIcon\" />{{ statusText }}</span\n >\n <gl-badge\n v-else\n v-gl-tooltip\n class=\"gl-font-bold\"\n :title=\"__('Health status')\"\n :variant=\"statusClass\"\n >\n {{ statusText }}\n </gl-badge>\n</template>\n","import { render, staticRenderFns } from \"./issue_health_status.vue?vue&type=template&id=a58aa410\"\nimport script from \"./issue_health_status.vue?vue&type=script&lang=js\"\nexport * from \"./issue_health_status.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAAAAAAdJSU2AAACNElEQVR4AdXYBa7jMBCA4b3/JZahzIkjp2qt+BWUWnG5ln2XxaJJb2b5F2ukL4wvzK/rP7bUcbf92u6oftLSe1ldk8efsfaVeEjusZZeC6e1RllaCk/yG6ag1lZ4WwPX69uyD6tAe/g2ipAlNMRS37awDLaFrpcMWxXQOi0jnWCWjFkSZomYJWDWKmatYNZyEWkJsvQimoZYah5NgdaLxagCtF6GRy0DshZPkeYwS/KIJWGWYjwYUzDLxCwDtJ54OKglimBLqHWahii2g1pmHLLGBmwVoRjcKlmgOdw65H5qKuGWCVi5Qlhs6m1sENZi4q3AWNvca5UYy2RjT/SAsiZey6CsIvc0wVlV5lJ0ibPMyLUGCmlxQq0IM0hLdWyro7CWEc3sXsqaK4O2zLxOsmtpfW5Q1u68ZrVmepaaNXEewawtI9X5Xl3U3n1qND6+rfPzvqoIWz/fklNCSLY153YV53J/XUxGCJnKZ1lajsn3/Ffegf6Y5pV2LUsSNL2UHzxUfh3TlYpZqqTpXZm0KZk9zJcqaEmaWPHDw0pxe05K7bWOLHFLWXVetqpYmrjle4+1y0aBaF4UOQ1NU+lYezJClkjLUnSEjqhH6zjAW4OjtY39Ibq+sawUb6W2RQfoqG0VeKuwrRJvlba17faRdbe2pTtYq6Nty/S7yAbGsQjWIq41wVoT1+IdZNy1djUcVdu5lklQWC0xHkt1X31qNEE1Pr3qKv/9XiSNj6Aaifj3/69+AYujsR/MvkpZAAAAAElFTkSuQmCC\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('local-storage-sync',{attrs:{\"storage-key\":_vm.localStorageKey,\"value\":_vm.selectedProjectForLocalStorage},on:{\"input\":_vm.initFromLocalStorage}},[_c('gl-dropdown',{ref:\"dropdown\",staticClass:\"!gl-flex !gl-w-auto\",attrs:{\"right\":\"\",\"split\":\"\",\"split-href\":_vm.dropdownHref,\"text\":_vm.dropdownText,\"toggle-text\":_vm.$options.i18n.toggleButtonLabel,\"variant\":\"confirm\",\"data-testid\":\"new-resource-dropdown\",\"toggle-class\":\"!gl-m-0 !gl-w-auto !gl-grow-0\"},on:{\"click\":_vm.handleDropdownClick,\"shown\":_vm.handleDropdownShown}},[_c('gl-search-box-by-type',{ref:\"search\",model:{value:(_vm.search),callback:function ($$v) {_vm.search=(typeof $$v === 'string'? $$v.trim(): $$v)},expression:\"search\"}}),_vm._v(\" \"),(_vm.$apollo.queries.projects.loading)?_c('gl-loading-icon'):[_vm._l((_vm.projects),function(project){return _c('gl-dropdown-item',{key:project.id,on:{\"click\":function($event){return _vm.selectProject(project)}}},[_vm._v(\"\\n \"+_vm._s(project.nameWithNamespace || project.name)+\"\\n \")])}),_vm._v(\" \"),(_vm.showNoSearchResultsText)?_c('gl-dropdown-text',[_vm._v(\"\\n \"+_vm._s(_vm.$options.i18n.noMatchesFound)+\"\\n \")]):_vm._e()]],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./new_resource_dropdown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./new_resource_dropdown.vue?vue&type=script&lang=js\"","<script>\nimport {\n GlDropdown,\n GlDropdownItem,\n GlDropdownText,\n GlLoadingIcon,\n GlSearchBoxByType,\n} from '@gitlab/ui';\nimport { createAlert } from '~/alert';\nimport { DASH_SCOPE, joinPaths } from '~/lib/utils/url_utility';\nimport { __, sprintf } from '~/locale';\nimport { DEBOUNCE_DELAY } from '~/vue_shared/components/filtered_search_bar/constants';\nimport AccessorUtilities from '~/lib/utils/accessor';\nimport LocalStorageSync from '~/vue_shared/components/local_storage_sync.vue';\nimport searchUserProjectsWithIssuesEnabled from './graphql/search_user_projects_with_issues_enabled.query.graphql';\nimport { RESOURCE_TYPE_ISSUE, RESOURCE_TYPES, RESOURCE_OPTIONS } from './constants';\n\nexport default {\n i18n: {\n noMatchesFound: __('No matches found'),\n toggleButtonLabel: __('Toggle project select'),\n },\n components: {\n GlDropdown,\n GlDropdownItem,\n GlDropdownText,\n GlLoadingIcon,\n GlSearchBoxByType,\n LocalStorageSync,\n },\n props: {\n resourceType: {\n type: String,\n required: false,\n default: RESOURCE_TYPE_ISSUE,\n validator: (value) => RESOURCE_TYPES.includes(value),\n },\n query: {\n type: Object,\n required: false,\n default: () => searchUserProjectsWithIssuesEnabled,\n },\n groupId: {\n type: String,\n required: false,\n default: '',\n },\n queryVariables: {\n type: Object,\n required: false,\n default: () => ({}),\n },\n extractProjects: {\n type: Function,\n required: false,\n default: (data) => data?.projects?.nodes,\n },\n withLocalStorage: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n data() {\n return {\n projects: [],\n search: '',\n selectedProject: {},\n shouldSkipQuery: true,\n };\n },\n apollo: {\n projects: {\n query() {\n return this.query;\n },\n variables() {\n return {\n search: this.search,\n ...this.queryVariables,\n };\n },\n update(data) {\n return this.extractProjects(data) || [];\n },\n error(error) {\n createAlert({\n message: __('An error occurred while loading projects.'),\n captureError: true,\n error,\n });\n },\n skip() {\n return this.shouldSkipQuery;\n },\n debounce: DEBOUNCE_DELAY,\n },\n },\n computed: {\n localStorageKey() {\n return `group-${this.groupId}-new-${this.resourceType}-recent-project`;\n },\n resourceOptions() {\n return RESOURCE_OPTIONS[this.resourceType];\n },\n defaultDropdownText() {\n return sprintf(__('Select project to create %{type}'), { type: this.resourceOptions.label });\n },\n dropdownHref() {\n return this.hasSelectedProject\n ? joinPaths(this.selectedProject.webUrl, DASH_SCOPE, this.resourceOptions.path)\n : undefined;\n },\n dropdownText() {\n return this.hasSelectedProject\n ? sprintf(__('New %{type} in %{project}'), {\n type: this.resourceOptions.label,\n project: this.selectedProject.name,\n })\n : this.defaultDropdownText;\n },\n hasSelectedProject() {\n return this.selectedProject.webUrl;\n },\n showNoSearchResultsText() {\n return !this.projects.length && this.search;\n },\n canUseLocalStorage() {\n return this.withLocalStorage && AccessorUtilities.canUseLocalStorage();\n },\n selectedProjectForLocalStorage() {\n const { webUrl, name } = this.selectedProject;\n\n return { webUrl, name };\n },\n },\n methods: {\n handleDropdownClick() {\n if (!this.dropdownHref) {\n this.$refs.dropdown.show();\n }\n },\n handleDropdownShown() {\n if (this.shouldSkipQuery) {\n this.shouldSkipQuery = false;\n }\n this.$refs.search.focusInput();\n },\n selectProject(project) {\n this.selectedProject = project;\n },\n initFromLocalStorage(storedProject) {\n // Historically, the selected project was saved with the URL as the `url` property, so we are\n // falling back to that legacy property if `webUrl` is empty. This ensures that we support\n // localStorage data that was persisted prior to this change.\n let webUrl = storedProject.webUrl || storedProject.url;\n\n // The select2 implementation used to include the resource path in the local storage. We\n // need to clean this up so that we can then re-build a fresh URL in the computed prop.\n webUrl = webUrl.endsWith(this.resourceOptions.path)\n ? webUrl.slice(0, webUrl.length - this.resourceOptions.path.length)\n : webUrl;\n const dashSuffix = `${DASH_SCOPE}/`;\n webUrl = webUrl.endsWith(dashSuffix)\n ? webUrl.slice(0, webUrl.length - dashSuffix.length)\n : webUrl;\n\n this.selectedProject = { webUrl, name: storedProject.name };\n },\n },\n};\n</script>\n\n<template>\n <local-storage-sync\n :storage-key=\"localStorageKey\"\n :value=\"selectedProjectForLocalStorage\"\n @input=\"initFromLocalStorage\"\n >\n <gl-dropdown\n ref=\"dropdown\"\n right\n split\n :split-href=\"dropdownHref\"\n :text=\"dropdownText\"\n :toggle-text=\"$options.i18n.toggleButtonLabel\"\n variant=\"confirm\"\n data-testid=\"new-resource-dropdown\"\n class=\"!gl-flex !gl-w-auto\"\n toggle-class=\"!gl-m-0 !gl-w-auto !gl-grow-0\"\n @click=\"handleDropdownClick\"\n @shown=\"handleDropdownShown\"\n >\n <gl-search-box-by-type ref=\"search\" v-model.trim=\"search\" />\n <gl-loading-icon v-if=\"$apollo.queries.projects.loading\" />\n <template v-else>\n <gl-dropdown-item\n v-for=\"project of projects\"\n :key=\"project.id\"\n @click=\"selectProject(project)\"\n >\n {{ project.nameWithNamespace || project.name }}\n </gl-dropdown-item>\n <gl-dropdown-text v-if=\"showNoSearchResultsText\">\n {{ $options.i18n.noMatchesFound }}\n </gl-dropdown-text>\n </template>\n </gl-dropdown>\n </local-storage-sync>\n</template>\n","import { render, staticRenderFns } from \"./new_resource_dropdown.vue?vue&type=template&id=93205c94\"\nimport script from \"./new_resource_dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./new_resource_dropdown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { extend, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makePropsConfigurable, makeProp } from '../../utils/props';\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_TEXT);\n\n// --- Main component ---\n\n// @vue/component\nconst BInputGroupText = /*#__PURE__*/extend({\n name: NAME_INPUT_GROUP_TEXT,\n functional: true,\n props,\n render(h, _ref) {\n let {\n props,\n data,\n children\n } = _ref;\n return h(props.tag, mergeData(data, {\n staticClass: 'input-group-text'\n }), children);\n }\n});\n\nexport { BInputGroupText, props };\n","import { extend, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_ADDON } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makePropsConfigurable, makeProp } from '../../utils/props';\nimport { BInputGroupText } from './input-group-text';\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n isText: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_ADDON);\n\n// --- Main component ---\n\n// @vue/component\nconst BInputGroupAddon = /*#__PURE__*/extend({\n name: NAME_INPUT_GROUP_ADDON,\n functional: true,\n props,\n render(h, _ref) {\n let {\n props,\n data,\n children\n } = _ref;\n const {\n append\n } = props;\n return h(props.tag, mergeData(data, {\n class: {\n 'input-group-append': append,\n 'input-group-prepend': !append\n },\n attrs: {\n id: props.id\n }\n }), props.isText ? [h(BInputGroupText, children)] : children);\n }\n});\n\nexport { BInputGroupAddon, props };\n","import { extend, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_APPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { props as props$1, BInputGroupAddon } from './input-group-addon';\n\n// --- Props ---\n\nconst props = makePropsConfigurable(omit(props$1, ['append']), NAME_INPUT_GROUP_APPEND);\n\n// --- Main component ---\n\n// @vue/component\nconst BInputGroupAppend = /*#__PURE__*/extend({\n name: NAME_INPUT_GROUP_APPEND,\n functional: true,\n props,\n render(h, _ref) {\n let {\n props,\n data,\n children\n } = _ref;\n // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: {\n ...props,\n append: true\n }\n }), children);\n }\n});\n\nexport { BInputGroupAppend, props };\n","import { extend, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_PREPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { props as props$1, BInputGroupAddon } from './input-group-addon';\n\n// --- Props ---\n\nconst props = makePropsConfigurable(omit(props$1, ['append']), NAME_INPUT_GROUP_PREPEND);\n\n// --- Main component ---\n\n// @vue/component\nconst BInputGroupPrepend = /*#__PURE__*/extend({\n name: NAME_INPUT_GROUP_PREPEND,\n functional: true,\n props,\n render(h, _ref) {\n let {\n props,\n data,\n children\n } = _ref;\n // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: {\n ...props,\n append: false\n }\n }), children);\n }\n});\n\nexport { BInputGroupPrepend, props };\n","import { extend, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_PREPEND, SLOT_NAME_APPEND, SLOT_NAME_DEFAULT } from '../../constants/slots';\nimport { htmlOrText } from '../../utils/html';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport { makePropsConfigurable, makeProp } from '../../utils/props';\nimport { BInputGroupAppend } from './input-group-append';\nimport { BInputGroupPrepend } from './input-group-prepend';\nimport { BInputGroupText } from './input-group-text';\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_STRING),\n appendHtml: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n prepend: makeProp(PROP_TYPE_STRING),\n prependHtml: makeProp(PROP_TYPE_STRING),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP);\n\n// --- Main component ---\n\n// @vue/component\nconst BInputGroup = /*#__PURE__*/extend({\n name: NAME_INPUT_GROUP,\n functional: true,\n props,\n render(h, _ref) {\n let {\n props,\n data,\n slots,\n scopedSlots\n } = _ref;\n const {\n prepend,\n prependHtml,\n append,\n appendHtml,\n size\n } = props;\n const $scopedSlots = scopedSlots || {};\n const $slots = slots();\n const slotScope = {};\n let $prepend = h();\n const hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots);\n if (hasPrependSlot || prepend || prependHtml) {\n $prepend = h(BInputGroupPrepend, [hasPrependSlot ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(prependHtml, prepend)\n })]);\n }\n let $append = h();\n const hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots);\n if (hasAppendSlot || append || appendHtml) {\n $append = h(BInputGroupAppend, [hasAppendSlot ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(appendHtml, append)\n })]);\n }\n return h(props.tag, mergeData(data, {\n staticClass: 'input-group',\n class: {\n [`input-group-${size}`]: size\n },\n attrs: {\n id: props.id || null,\n role: 'group'\n }\n }), [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]);\n }\n});\n\nexport { BInputGroup, props };\n","const InputGroupMixin = {\n props: {\n value: {\n type: [String, Number],\n default: ''\n }\n },\n data() {\n return {\n localValue: this.stringifyValue(this.value)\n };\n },\n watch: {\n value(newVal) {\n if (newVal !== this.localValue) {\n this.localValue = this.stringifyValue(newVal);\n }\n },\n localValue(newVal) {\n if (newVal !== this.value) {\n this.$emit('input', newVal);\n }\n }\n },\n mounted() {\n const value = this.stringifyValue(this.value);\n if (this.activeOption) {\n const activeOption = this.predefinedOptions.find(opt => opt.name === this.activeOption);\n this.localValue = activeOption.value;\n } else if (value !== this.localValue) {\n this.localValue = value;\n }\n },\n methods: {\n stringifyValue(value) {\n return value === undefined || value === null ? '' : String(value);\n }\n }\n};\n\nexport { InputGroupMixin };\n","import { BInputGroup } from '../../../../vendor/bootstrap-vue/src/components/input-group/input-group';\nimport { BInputGroupPrepend } from '../../../../vendor/bootstrap-vue/src/components/input-group/input-group-prepend';\nimport { BInputGroupAppend } from '../../../../vendor/bootstrap-vue/src/components/input-group/input-group-append';\nimport { BFormInput } from '../../../../vendor/bootstrap-vue/src/components/form-input/form-input';\nimport GlDropdown from '../../dropdown/dropdown';\nimport GlDropdownItem from '../../dropdown/dropdown_item';\nimport { InputGroupMixin } from './form_input_group_mixin';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlFormInputGroup',\n components: {\n BInputGroup,\n BInputGroupPrepend,\n BInputGroupAppend,\n BFormInput,\n GlDropdown,\n GlDropdownItem\n },\n mixins: [InputGroupMixin],\n inheritAttrs: false,\n props: {\n /**\n * Automatically selects the content of the input field on click.\n */\n selectOnClick: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Array of options. Each option should have `name` and `value` information: {name: \"Foo\", value: \"Bar\"})\n */\n predefinedOptions: {\n type: Array,\n required: false,\n default: () => [{\n value: '',\n name: ''\n }],\n validator: options => options.every(opt => Object.keys(opt).includes('name', 'value'))\n },\n label: {\n type: String,\n required: false,\n default: undefined\n },\n inputClass: {\n type: [String, Array, Object],\n required: false,\n default: ''\n }\n },\n data() {\n return {\n activeOption: this.predefinedOptions && this.predefinedOptions[0].name\n };\n },\n methods: {\n handleClick() {\n if (this.selectOnClick) {\n this.$refs.input.$el.select();\n }\n },\n updateValue(option) {\n const {\n name,\n value\n } = option;\n this.activeOption = name;\n this.localValue = value;\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-input-group',[(_vm.activeOption || _vm.$scopedSlots.prepend)?_c('b-input-group-prepend',[_vm._t(\"prepend\"),_vm._v(\" \"),(_vm.activeOption)?_c('gl-dropdown',{attrs:{\"text\":_vm.activeOption}},_vm._l((_vm.predefinedOptions),function(option){return _c('gl-dropdown-item',{key:option.value,attrs:{\"is-check-item\":\"\",\"is-checked\":_vm.activeOption === option.name},on:{\"click\":function($event){return _vm.updateValue(option)}}},[_vm._v(\"\\n \"+_vm._s(option.name)+\"\\n \")])}),1):_vm._e()],2):_vm._e(),_vm._v(\" \"),_vm._t(\"default\",function(){return [_c('b-form-input',_vm._g(_vm._b({ref:\"input\",class:['gl-form-input', _vm.inputClass],attrs:{\"aria-label\":_vm.label},on:{\"click\":_vm.handleClick},model:{value:(_vm.localValue),callback:function ($$v) {_vm.localValue=$$v;},expression:\"localValue\"}},'b-form-input',_vm.$attrs,false),_vm.$listeners))]}),_vm._v(\" \"),(_vm.$scopedSlots.append)?_c('b-input-group-append',[_vm._t(\"append\")],2):_vm._e()],2)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","import { extend, mergeData } from '../../vue';\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING, PROP_TYPE_ARRAY_OBJECT_STRING } from '../../constants/props';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable, makeProp } from '../../utils/props';\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'p'),\n textClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_TEXT);\n\n// --- Main component ---\n\n// @vue/component\nconst BDropdownText = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_TEXT,\n functional: true,\n props,\n render(h, _ref) {\n let {\n props,\n data,\n children\n } = _ref;\n const {\n tag,\n textClass,\n variant\n } = props;\n return h('li', mergeData(omit(data, ['attrs']), {\n attrs: {\n role: 'presentation'\n }\n }), [h(tag, {\n staticClass: 'b-dropdown-text',\n class: [textClass, {\n [`text-${variant}`]: variant\n }],\n props,\n attrs: data.attrs || {},\n ref: 'text'\n }, children)]);\n }\n});\n\nexport { BDropdownText, props };\n","import { BDropdownText } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-text';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlDropdownText',\n components: {\n BDropdownText\n },\n inheritAttrs: false\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown-text',_vm._g(_vm._b({staticClass:\"gl-dropdown-text\"},'b-dropdown-text',_vm.$attrs,false),_vm.$listeners),[_vm._t(\"default\")],2)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',[_c('gl-icon',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",value:(_vm.showTooltipOnHover),expression:\"showTooltipOnHover\",modifiers:{\"hover\":true}}],class:_vm.iconClass,attrs:{\"name\":_vm.iconName,\"title\":_vm.workItemTooltipTitle,\"variant\":_vm.iconVariant}}),_vm._v(\" \"),(_vm.workItemTypeName)?_c('span',{class:{ 'gl-sr-only': !_vm.showText }},[_vm._v(_vm._s(_vm.workItemTypeName))]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_type_icon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_type_icon.vue?vue&type=script&lang=js\"","<script>\nimport { GlIcon, GlTooltipDirective } from '@gitlab/ui';\nimport { WORK_ITEMS_TYPE_MAP } from '../constants';\n\nexport default {\n components: {\n GlIcon,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n props: {\n workItemType: {\n type: String,\n required: false,\n default: '',\n },\n showText: {\n type: Boolean,\n required: false,\n default: false,\n },\n workItemIconName: {\n type: String,\n required: false,\n default: '',\n },\n showTooltipOnHover: {\n type: Boolean,\n required: false,\n default: false,\n },\n iconVariant: {\n type: String,\n required: false,\n default: 'default',\n },\n iconClass: {\n type: String,\n required: false,\n default: '',\n },\n },\n computed: {\n workItemTypeUppercase() {\n return this.workItemType.toUpperCase().split(' ').join('_');\n },\n iconName() {\n // TODO Delete this conditional once we have an `issue-type-epic` icon\n if (this.workItemIconName === 'issue-type-epic') {\n return 'epic';\n }\n\n return (\n this.workItemIconName ||\n WORK_ITEMS_TYPE_MAP[this.workItemTypeUppercase]?.icon ||\n 'issue-type-issue'\n );\n },\n workItemTypeName() {\n return WORK_ITEMS_TYPE_MAP[this.workItemTypeUppercase]?.name;\n },\n workItemTooltipTitle() {\n return this.showTooltipOnHover ? this.workItemTypeName : '';\n },\n },\n};\n</script>\n\n<template>\n <span>\n <gl-icon\n v-gl-tooltip.hover=\"showTooltipOnHover\"\n :name=\"iconName\"\n :title=\"workItemTooltipTitle\"\n :variant=\"iconVariant\"\n :class=\"iconClass\"\n />\n <span v-if=\"workItemTypeName\" :class=\"{ 'gl-sr-only': !showText }\">{{ workItemTypeName }}</span>\n </span>\n</template>\n","import { render, staticRenderFns } from \"./work_item_type_icon.vue?vue&type=template&id=44981faf\"\nimport script from \"./work_item_type_icon.vue?vue&type=script&lang=js\"\nexport * from \"./work_item_type_icon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default __webpack_public_path__ + \"empty-epic-md.7978cef8.svg\";","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-drawer',{directives:[{name:\"gl-outside\",rawName:\"v-gl-outside\",value:(_vm.handleClickOutside),expression:\"handleClickOutside\"}],staticClass:\"gl-w-full gl-leading-reset lg:gl-w-[480px] xl:gl-w-[768px] min-[1440px]:gl-w-[912px]\",attrs:{\"open\":_vm.open,\"z-index\":200,\"data-testid\":\"work-item-drawer\",\"header-sticky\":\"\",\"header-height\":\"calc(var(--top-bar-height) + var(--performance-bar-height))\"},on:{\"close\":_vm.handleClose},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',{staticClass:\"gl-text gl-flex gl-w-full gl-items-center gl-gap-x-2 xl:gl-px-4\"},[_c('gl-link',{ref:\"workItemUrl\",staticClass:\"gl-text-sm gl-font-bold gl-text-default\",attrs:{\"data-testid\":\"work-item-drawer-ref-link\",\"href\":_vm.activeItem.webUrl},on:{\"click\":_vm.redirectToWorkItem}},[_vm._v(\"\\n \"+_vm._s(_vm.headerReference)+\"\\n \")]),_vm._v(\" \"),_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-text-subtle\",attrs:{\"data-testid\":\"work-item-drawer-copy-button\",\"title\":_vm.copyTooltipText,\"category\":\"tertiary\",\"icon\":\"link\",\"size\":\"small\",\"aria-label\":_vm.$options.i18n.copyTooltipText,\"data-clipboard-text\":_vm.activeItem.webUrl},on:{\"click\":_vm.handleCopyToClipboard}}),_vm._v(\" \"),_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-text-subtle\",attrs:{\"data-testid\":\"work-item-drawer-link-button\",\"href\":_vm.activeItem.webUrl,\"title\":_vm.$options.i18n.openTooltipText,\"category\":\"tertiary\",\"icon\":\"maximize\",\"size\":\"small\",\"aria-label\":_vm.$options.i18n.openTooltipText},on:{\"click\":_vm.redirectToWorkItem}})],1)]},proxy:true},{key:\"default\",fn:function(){return [_c('work-item-detail',_vm._g({key:_vm.activeItem.iid,staticClass:\"work-item-drawer !gl-pt-0 xl:!gl-px-6\",attrs:{\"work-item-iid\":_vm.activeItem.iid,\"modal-work-item-full-path\":_vm.activeItemFullPath,\"modal-is-group\":_vm.modalIsGroup,\"is-drawer\":\"\"},on:{\"deleteWorkItem\":_vm.deleteWorkItem,\"workItemTypeChanged\":function($event){return _vm.$emit('workItemTypeChanged', $event)}}},_vm.$listeners))]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_drawer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_drawer.vue?vue&type=script&lang=js\"","<script>\nimport { GlLink, GlDrawer, GlButton, GlTooltipDirective, GlOutsideDirective } from '@gitlab/ui';\nimport { __ } from '~/locale';\nimport deleteWorkItemMutation from '~/work_items/graphql/delete_work_item.mutation.graphql';\nimport glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';\nimport { TYPE_EPIC, TYPE_ISSUE } from '~/issues/constants';\nimport { DETAIL_VIEW_QUERY_PARAM_NAME } from '~/work_items/constants';\nimport * as Sentry from '~/sentry/sentry_browser_wrapper';\nimport { visitUrl, setUrlParams, updateHistory, removeParams } from '~/lib/utils/url_utility';\nimport { getIdFromGraphQLId } from '~/graphql_shared/utils';\nimport { makeDrawerItemFullPath, makeDrawerUrlParam, canRouterNav } from '../utils';\n\nexport default {\n name: 'WorkItemDrawer',\n directives: {\n GlTooltip: GlTooltipDirective,\n GlOutside: GlOutsideDirective,\n },\n components: {\n GlLink,\n GlDrawer,\n GlButton,\n WorkItemDetail: () => import('~/work_items/components/work_item_detail.vue'),\n },\n mixins: [glFeatureFlagMixin()],\n inject: ['fullPath', 'isGroup'],\n inheritAttrs: false,\n props: {\n open: {\n type: Boolean,\n required: true,\n },\n activeItem: {\n type: Object,\n required: false,\n default: () => ({}),\n },\n issuableType: {\n type: String,\n required: false,\n default: TYPE_ISSUE,\n },\n clickOutsideExcludeSelector: {\n type: String,\n required: false,\n default: null,\n },\n },\n data() {\n return {\n copyTooltipText: this.$options.i18n.copyTooltipText,\n };\n },\n computed: {\n activeItemFullPath() {\n return makeDrawerItemFullPath(this.activeItem, this.fullPath, this.issuableType);\n },\n modalIsGroup() {\n return this.issuableType.toLowerCase() === TYPE_EPIC;\n },\n headerReference() {\n const path = this.activeItemFullPath.substring(this.activeItemFullPath.lastIndexOf('/') + 1);\n return `${path}#${this.activeItem.iid}`;\n },\n issueAsWorkItem() {\n return (\n !this.isGroup &&\n this.glFeatures.workItemsViewPreference &&\n gon.current_user_use_work_items_view\n );\n },\n },\n watch: {\n activeItem: {\n deep: true,\n immediate: true,\n handler(newValue) {\n if (newValue?.iid) {\n this.setDrawerParams();\n // focus on header link when drawer is updated\n this.$nextTick(() => {\n this.focusOnHeaderLink();\n });\n }\n },\n },\n open: {\n immediate: true,\n handler(newValue) {\n if (newValue) {\n // focus on header link when drawer is updated\n this.$nextTick(() => {\n this.focusOnHeaderLink();\n });\n }\n },\n },\n },\n methods: {\n async deleteWorkItem({ workItemId }) {\n try {\n const { data } = await this.$apollo.mutate({\n mutation: deleteWorkItemMutation,\n variables: { input: { id: workItemId } },\n });\n if (data.workItemDelete.errors?.length) {\n throw new Error(data.workItemDelete.errors[0]);\n }\n this.$emit('workItemDeleted', { id: workItemId });\n } catch (error) {\n this.$emit('deleteWorkItemError');\n Sentry.captureException(error);\n }\n },\n redirectToWorkItem(e) {\n const workItem = this.activeItem;\n if (e.metaKey || e.ctrlKey) {\n return;\n }\n e.preventDefault();\n const shouldRouterNav =\n !this.preventRouterNav &&\n this.$router &&\n canRouterNav({\n fullPath: this.fullPath,\n webUrl: workItem.webUrl,\n isGroup: this.isGroup,\n issueAsWorkItem: this.issueAsWorkItem,\n });\n\n if (shouldRouterNav) {\n this.$router.push({\n name: 'workItem',\n params: {\n iid: workItem.iid,\n },\n });\n } else {\n visitUrl(workItem.webUrl);\n }\n },\n handleCopyToClipboard() {\n this.copyTooltipText = this.$options.i18n.copiedTooltipText;\n setTimeout(() => {\n this.copyTooltipText = this.$options.i18n.copyTooltipText;\n }, 2000);\n },\n setDrawerParams() {\n const params = makeDrawerUrlParam(this.activeItem, this.fullPath, this.issuableType);\n updateHistory({\n // we're using `show` to match the modal view parameter\n url: setUrlParams({ [DETAIL_VIEW_QUERY_PARAM_NAME]: params }),\n });\n },\n handleClose(isClickedOutside) {\n updateHistory({ url: removeParams([DETAIL_VIEW_QUERY_PARAM_NAME]) });\n\n if (!isClickedOutside) {\n document\n .getElementById(\n `listItem-${this.activeItemFullPath}/${getIdFromGraphQLId(this.activeItem.id)}`,\n )\n ?.focus();\n }\n\n this.$emit('close');\n },\n handleClickOutside(event) {\n for (const selector of this.$options.defaultExcludedSelectors) {\n const excludedElements = document.querySelectorAll(selector);\n for (const parent of excludedElements) {\n if (parent.contains(event.target)) {\n return;\n }\n }\n }\n if (this.clickOutsideExcludeSelector) {\n const excludedElements = document.querySelectorAll(this.clickOutsideExcludeSelector);\n for (const parent of excludedElements) {\n if (parent.contains(event.target)) {\n return;\n }\n }\n }\n this.handleClose(true);\n },\n focusOnHeaderLink() {\n this.$refs?.workItemUrl?.$el?.focus();\n },\n },\n i18n: {\n copyTooltipText: __('Copy item URL'),\n copiedTooltipText: __('Copied'),\n openTooltipText: __('Open in full page'),\n },\n defaultExcludedSelectors: [\n '#confirmationModal',\n '#create-timelog-modal',\n '#set-time-estimate-modal',\n '[id^=\"insert-comment-template-modal\"]',\n '.pika-single',\n '.atwho-container',\n '.item-title',\n '.tippy-content .gl-new-dropdown-panel',\n '#blocked-by-issues-modal',\n '#open-children-warning-modal',\n '#create-work-item-modal',\n '#work-item-confirm-delete',\n '.work-item-link-child',\n '.modal-content',\n '#create-merge-request-modal',\n ],\n};\n</script>\n\n<template>\n <gl-drawer\n v-gl-outside=\"handleClickOutside\"\n :open=\"open\"\n :z-index=\"200\"\n data-testid=\"work-item-drawer\"\n header-sticky\n header-height=\"calc(var(--top-bar-height) + var(--performance-bar-height))\"\n class=\"gl-w-full gl-leading-reset lg:gl-w-[480px] xl:gl-w-[768px] min-[1440px]:gl-w-[912px]\"\n @close=\"handleClose\"\n >\n <template #title>\n <div class=\"gl-text gl-flex gl-w-full gl-items-center gl-gap-x-2 xl:gl-px-4\">\n <gl-link\n ref=\"workItemUrl\"\n data-testid=\"work-item-drawer-ref-link\"\n :href=\"activeItem.webUrl\"\n class=\"gl-text-sm gl-font-bold gl-text-default\"\n @click=\"redirectToWorkItem\"\n >\n {{ headerReference }}\n </gl-link>\n <gl-button\n v-gl-tooltip\n data-testid=\"work-item-drawer-copy-button\"\n :title=\"copyTooltipText\"\n category=\"tertiary\"\n class=\"gl-text-subtle\"\n icon=\"link\"\n size=\"small\"\n :aria-label=\"$options.i18n.copyTooltipText\"\n :data-clipboard-text=\"activeItem.webUrl\"\n @click=\"handleCopyToClipboard\"\n />\n <gl-button\n v-gl-tooltip\n data-testid=\"work-item-drawer-link-button\"\n :href=\"activeItem.webUrl\"\n :title=\"$options.i18n.openTooltipText\"\n category=\"tertiary\"\n class=\"gl-text-subtle\"\n icon=\"maximize\"\n size=\"small\"\n :aria-label=\"$options.i18n.openTooltipText\"\n @click=\"redirectToWorkItem\"\n />\n </div>\n </template>\n <template #default>\n <work-item-detail\n :key=\"activeItem.iid\"\n :work-item-iid=\"activeItem.iid\"\n :modal-work-item-full-path=\"activeItemFullPath\"\n :modal-is-group=\"modalIsGroup\"\n is-drawer\n class=\"work-item-drawer !gl-pt-0 xl:!gl-px-6\"\n @deleteWorkItem=\"deleteWorkItem\"\n @workItemTypeChanged=\"$emit('workItemTypeChanged', $event)\"\n v-on=\"$listeners\"\n />\n </template>\n </gl-drawer>\n</template>\n","import { render, staticRenderFns } from \"./work_item_drawer.vue?vue&type=template&id=77fbf59f\"\nimport script from \"./work_item_drawer.vue?vue&type=script&lang=js\"\nexport * from \"./work_item_drawer.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { isEmpty, uniqWith, isEqual, isString } from 'lodash';\nimport AccessorUtilities from '~/lib/utils/accessor';\nimport { queryToObject } from '~/lib/utils/url_utility';\n\nimport { MAX_RECENT_TOKENS_SIZE, FILTERED_SEARCH_TERM } from './constants';\n\n/**\n * This method removes duplicate tokens from tokens array.\n *\n * @param {Array} tokens Array of tokens as defined by `GlFilteredSearch`\n *\n * @returns {Array} Unique array of tokens\n */\nexport const uniqueTokens = (tokens) => {\n const knownTokens = [];\n return tokens.reduce((uniques, token) => {\n if (typeof token === 'object' && token.type !== FILTERED_SEARCH_TERM) {\n const tokenString = `${token.type}${token.value.operator}${token.value.data}`;\n if (!knownTokens.includes(tokenString)) {\n uniques.push(token);\n knownTokens.push(tokenString);\n }\n } else {\n uniques.push(token);\n }\n return uniques;\n }, []);\n};\n\n/**\n * Creates a token from a type and a filter. Example returned object\n * { type: 'myType', value: { data: 'myData', operator: '= '} }\n * @param {String} type the name of the filter\n * @param {Object}\n * @param {Object.value} filter value to be returned as token data\n * @param {Object.operator} filter operator to be retuned as token operator\n * @return {Object}\n * @return {Object.type} token type\n * @return {Object.value} token value\n */\nfunction createToken(type, filter) {\n return { type, value: { data: filter.value, operator: filter.operator } };\n}\n\n/**\n * This function takes a filter object and translates it into a token array\n * @param {Object} filters\n * @param {Object.myFilterName} a single filter value or an array of filters\n * @return {Array} tokens an array of tokens created from filter values\n */\nexport function prepareTokens(filters = {}) {\n return Object.keys(filters).reduce((memo, key) => {\n const value = filters[key];\n if (!value) {\n return memo;\n }\n if (Array.isArray(value)) {\n return [...memo, ...value.map((filterValue) => createToken(key, filterValue))];\n }\n\n return [...memo, createToken(key, value)];\n }, []);\n}\n\n/**\n * This function takes a token array and translates it into a filter object\n * @param filters\n * @returns A Filter Object\n */\nexport function processFilters(filters) {\n return filters.reduce((acc, token) => {\n let type;\n let value;\n let operator;\n if (typeof token === 'string') {\n type = FILTERED_SEARCH_TERM;\n value = token;\n } else {\n type = token?.type;\n operator = token?.value?.operator;\n value = token?.value?.data;\n }\n\n if (!acc[type]) {\n acc[type] = [];\n }\n\n acc[type].push({ value, operator });\n return acc;\n }, {});\n}\n\nfunction filteredSearchQueryParam(filter) {\n return filter\n .map(({ value }) => value)\n .join(' ')\n .trim();\n}\n\n/**\n * This function takes a filter object and maps it into a query object. Example filter:\n * { myFilterName: { value: 'foo', operator: '=' }, search: [{ value: 'my' }, { value: 'search' }] }\n * gets translated into:\n * { myFilterName: 'foo', 'not[myFilterName]': null, search: 'my search' }\n * By default it supports '=' and '!=' operators. This can be extended by providing the `customOperators` option\n * @param {Object} filters\n * @param {Object} filters.myFilterName a single filter value or an array of filters\n * @param {Object} options\n * @param {Object} [options.filteredSearchTermKey] if set, 'filtered-search-term' filters are assigned to this key, 'search' is suggested\n * @param {Object} [options.customOperators] Allows to extend the supported operators, e.g.\n *\n * filterToQueryObject({foo: [{ value: '100', operator: '>' }]}, {customOperators: {operator: '>',prefix: 'gt'}})\n * returns {gt[foo]: '100'}\n * It's also possible to restrict custom operators to a given key by setting `applyOnlyToKey` string attribute.\n *\n * @return {Object} query object with both filter name and not-name with values\n */\nexport function filterToQueryObject(filters = {}, options = {}) {\n const { filteredSearchTermKey, customOperators, shouldExcludeEmpty = false } = options;\n\n return Object.keys(filters).reduce((memo, key) => {\n const filter = filters[key];\n\n if (typeof filteredSearchTermKey === 'string' && key === FILTERED_SEARCH_TERM && filter) {\n const combinedFilteredSearchTerm = filteredSearchQueryParam(filter);\n if (combinedFilteredSearchTerm === '' && shouldExcludeEmpty) {\n return memo;\n }\n\n return { ...memo, [filteredSearchTermKey]: filteredSearchQueryParam(filter) };\n }\n\n const operators = [\n { operator: '=' },\n { operator: '!=', prefix: 'not' },\n ...(customOperators ?? []),\n ];\n\n const result = {};\n\n for (const op of operators) {\n const { operator, prefix, applyOnlyToKey } = op;\n\n if (!applyOnlyToKey || applyOnlyToKey === key) {\n let value;\n if (Array.isArray(filter)) {\n value = filter.filter((item) => item.operator === operator).map((item) => item.value);\n } else {\n value = filter?.operator === operator ? filter.value : null;\n }\n\n if (isEmpty(value)) {\n value = null;\n }\n\n if (shouldExcludeEmpty && (value?.[0] === '' || value === '' || value === null)) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (prefix) {\n result[`${prefix}[${key}]`] = value;\n } else {\n result[key] = value;\n }\n }\n }\n\n return { ...memo, ...result };\n }, {});\n}\n\n/**\n * Extracts filter name from url name and operator, e.g.\n * e.g. input: not[my_filter]` output: {filterName: `my_filter`, operator: '!='}`\n *\n * By default it supports filter with the format `my_filter=foo` and `not[my_filter]=bar`. This can be extended with the `customOperators` option.\n * @param {String} filterName from url\n * @param {Object.customOperators} It allows to extend the supported parameter, e.g.\n * input: 'gt[filter]', { customOperators: [{ operator: '>', prefix: 'gt' }]})\n * output: '{filterName: 'filter', operator: '>'}\n * @return {Object}\n * @return {Object.filterName} extracted filter name\n * @return {Object.operator} `=` or `!=`\n */\nfunction extractNameAndOperator(filterName, customOperators) {\n const ops = [\n {\n prefix: 'not',\n operator: '!=',\n },\n ...(customOperators ?? []),\n ];\n\n const operator = ops.find(\n ({ prefix }) => filterName.startsWith(`${prefix}[`) && filterName.endsWith(']'),\n );\n\n if (!operator) {\n return { filterName, operator: '=' };\n }\n const { prefix } = operator;\n return { filterName: filterName.slice(prefix.length + 1, -1), operator: operator.operator };\n}\n\n/**\n * Gathers search term as values\n * @param {String|Array} value\n * @returns {Array} List of search terms split by word\n */\nfunction filteredSearchTermValue(value) {\n const values = Array.isArray(value) ? value : [value];\n return [{ value: values.filter((term) => term).join(' ') }];\n}\n\n/**\n * This function takes a URL query string and maps it into a filter object. Example query string:\n * '?myFilterName=foo'\n * gets translated into:\n * { myFilterName: { value: 'foo', operator: '=' } }\n * By default it only support '=' and '!=' operators. This can be extended with the customOperator option.\n * @param {String|Object} query URL query string or object, e.g. from `window.location.search` or `this.$route.query`\n * @param {Object} options\n * @param {String} [options.filteredSearchTermKey] if set, a FILTERED_SEARCH_TERM filter is created to this parameter. `'search'` is suggested\n * @param {String[]} [options.filterNamesAllowList] if set, only this list of filters names is mapped\n * @param {Object} [options.customOperator] It allows to extend the supported parameter, e.g.\n * input: 'gt[myFilter]=100', { customOperators: [{ operator: '>', prefix: 'gt' }]})\n * output: '{ myFilter: {value: '100', operator: '>'}}\n * @return {Object} filter object with filter names and their values\n */\nexport function urlQueryToFilter(\n query = '',\n { filteredSearchTermKey, filterNamesAllowList, customOperators } = {},\n) {\n const filters = isString(query) ? queryToObject(query, { gatherArrays: true }) : query;\n return Object.keys(filters).reduce((memo, key) => {\n const value = filters[key];\n if (!value) {\n return memo;\n }\n if (key === filteredSearchTermKey) {\n return {\n ...memo,\n [FILTERED_SEARCH_TERM]: filteredSearchTermValue(value),\n };\n }\n\n const { filterName, operator } = extractNameAndOperator(key, customOperators);\n if (filterNamesAllowList && !filterNamesAllowList.includes(filterName)) {\n return memo;\n }\n let previousValues = [];\n if (Array.isArray(memo[filterName])) {\n previousValues = memo[filterName];\n }\n if (Array.isArray(value)) {\n const newAdditions = value.filter(Boolean).map((item) => ({ value: item, operator }));\n return { ...memo, [filterName]: [...previousValues, ...newAdditions] };\n }\n\n return { ...memo, [filterName]: { value, operator } };\n }, {});\n}\n\n/**\n * Returns array of token values from localStorage\n * based on provided recentSuggestionsStorageKey\n *\n * @param {String} recentSuggestionsStorageKey\n * @param {Array} appliedTokens\n * @param {Function} valueIdentifier\n * @returns\n */\nexport function getRecentlyUsedSuggestions(\n recentSuggestionsStorageKey,\n appliedTokens,\n valueIdentifier,\n) {\n let recentlyUsedSuggestions = [];\n if (AccessorUtilities.canUseLocalStorage()) {\n recentlyUsedSuggestions = JSON.parse(localStorage.getItem(recentSuggestionsStorageKey)) || [];\n }\n return recentlyUsedSuggestions.filter((suggestion) => {\n return !appliedTokens?.some(\n (appliedToken) => appliedToken.value.data === valueIdentifier(suggestion),\n );\n });\n}\n\n/**\n * Sets provided token value to recently used array\n * within localStorage for provided recentSuggestionsStorageKey\n *\n * @param {String} recentSuggestionsStorageKey\n * @param {Object} tokenValue\n */\nexport function setTokenValueToRecentlyUsed(recentSuggestionsStorageKey, tokenValue) {\n const recentlyUsedSuggestions = getRecentlyUsedSuggestions(recentSuggestionsStorageKey);\n\n recentlyUsedSuggestions.splice(0, 0, { ...tokenValue });\n\n if (AccessorUtilities.canUseLocalStorage()) {\n localStorage.setItem(\n recentSuggestionsStorageKey,\n JSON.stringify(uniqWith(recentlyUsedSuggestions, isEqual).slice(0, MAX_RECENT_TOKENS_SIZE)),\n );\n }\n}\n\n/**\n * Removes `FILTERED_SEARCH_TERM` tokens with empty data\n *\n * @param filterTokens array of filtered search tokens\n * @return {Array} array of filtered search tokens\n */\nexport const filterEmptySearchTerm = (filterTokens = []) =>\n filterTokens.filter((token) => token.type === FILTERED_SEARCH_TERM && token.value.data);\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('issue-card-time-info',{attrs:{\"issue\":_vm.issue}},[(_vm.showWeight)?_c('work-item-attribute',{attrs:{\"anchor-id\":\"issuable-weight-content\",\"title\":`${_vm.weight}`,\"title-component-class\":\"issuable-weight gl-mr-3\",\"tooltip-text\":_vm.__('Weight'),\"tooltip-placement\":\"top\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('gl-icon',{attrs:{\"name\":\"weight\",\"size\":12}})]},proxy:true}],null,false,3426229333)}):_vm._e(),_vm._v(\" \"),(_vm.showHealthStatus)?_c('issue-health-status',{attrs:{\"health-status\":_vm.healthStatus}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_time_info.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_time_info.vue?vue&type=script&lang=js\"","<script>\nimport { GlIcon } from '@gitlab/ui';\nimport { STATUS_CLOSED } from '~/issues/constants';\nimport { humanTimeframe, isInPast, localeDateFormat, newDate } from '~/lib/utils/datetime_utility';\nimport { __ } from '~/locale';\nimport { STATE_CLOSED } from '~/work_items/constants';\nimport { isMilestoneWidget, isStartAndDueDateWidget } from '~/work_items/utils';\nimport IssuableMilestone from '~/vue_shared/issuable/list/components/issuable_milestone.vue';\nimport WorkItemAttribute from '~/vue_shared/components/work_item_attribute.vue';\n\nexport default {\n components: {\n IssuableMilestone,\n WorkItemAttribute,\n GlIcon,\n },\n props: {\n issue: {\n type: Object,\n required: true,\n },\n isWorkItemList: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n milestone() {\n return this.issue.milestone || this.issue.widgets?.find(isMilestoneWidget)?.milestone;\n },\n dueDate() {\n return this.issue.dueDate || this.issue.widgets?.find(isStartAndDueDateWidget)?.dueDate;\n },\n dueDateText() {\n if (this.startDate) {\n return humanTimeframe(newDate(this.startDate), newDate(this.dueDate));\n }\n if (this.dueDate) {\n return localeDateFormat.asDate.format(newDate(this.dueDate));\n }\n return null;\n },\n isClosed() {\n return this.issue.state === STATUS_CLOSED || this.issue.state === STATE_CLOSED;\n },\n isOverdue() {\n if (!this.dueDate) {\n return false;\n }\n return isInPast(newDate(this.dueDate)) && !this.isClosed;\n },\n dueDateTitle() {\n return this.isOverdue ? `${__('Due date')} (${__('overdue')})` : __('Due date');\n },\n dateIcon() {\n return this.isOverdue ? 'calendar-overdue' : 'calendar';\n },\n startDate() {\n return this.issue.widgets?.find(isStartAndDueDateWidget)?.startDate;\n },\n timeEstimate() {\n return this.issue.humanTimeEstimate || this.issue.timeStats?.humanTimeEstimate;\n },\n },\n};\n</script>\n\n<template>\n <span>\n <issuable-milestone v-if=\"milestone\" :milestone=\"milestone\" />\n <work-item-attribute\n v-if=\"dueDateText\"\n anchor-id=\"issuable-due-date\"\n :title=\"dueDateText\"\n title-component-class=\"issuable-due-date gl-mr-3\"\n :tooltip-text=\"dueDateTitle\"\n tooltip-placement=\"top\"\n >\n <template #icon>\n <gl-icon :variant=\"isOverdue ? 'danger' : 'current'\" :name=\"dateIcon\" :size=\"12\" />\n </template>\n </work-item-attribute>\n <work-item-attribute\n v-if=\"timeEstimate\"\n anchor-id=\"time-estimate\"\n :title=\"timeEstimate\"\n title-component-class=\"gl-mr-3\"\n :tooltip-text=\"__('Estimate')\"\n tooltip-placement=\"top\"\n >\n <template #icon>\n <gl-icon name=\"timer\" :size=\"12\" />\n </template>\n </work-item-attribute>\n <slot></slot>\n </span>\n</template>\n","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_time_info.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issue_card_time_info.vue?vue&type=script&lang=js\"","<script>\nimport { GlIcon } from '@gitlab/ui';\nimport IssueCardTimeInfo from '~/issues/list/components/issue_card_time_info.vue';\nimport IssueHealthStatus from 'ee/related_items_tree/components/issue_health_status.vue';\nimport { isHealthStatusWidget, isWeightWidget } from '~/work_items/utils';\nimport WorkItemAttribute from '~/vue_shared/components/work_item_attribute.vue';\n\nexport default {\n components: {\n IssueCardTimeInfo,\n IssueHealthStatus,\n WorkItemAttribute,\n GlIcon,\n },\n inject: ['hasIssuableHealthStatusFeature', 'hasIssueWeightsFeature'],\n props: {\n issue: {\n type: Object,\n required: true,\n },\n isWorkItemList: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n healthStatus() {\n return (\n this.issue.healthStatus || this.issue.widgets?.find(isHealthStatusWidget)?.healthStatus\n );\n },\n showHealthStatus() {\n return this.hasIssuableHealthStatusFeature && this.healthStatus && !this.isWorkItemList;\n },\n weight() {\n return this.issue.weight || this.issue.widgets?.find(isWeightWidget)?.weight;\n },\n showWeight() {\n return this.hasIssueWeightsFeature && this.weight != null;\n },\n },\n};\n</script>\n\n<template>\n <issue-card-time-info :issue=\"issue\">\n <work-item-attribute\n v-if=\"showWeight\"\n anchor-id=\"issuable-weight-content\"\n :title=\"`${weight}`\"\n title-component-class=\"issuable-weight gl-mr-3\"\n :tooltip-text=\"__('Weight')\"\n tooltip-placement=\"top\"\n >\n <template #icon>\n <gl-icon name=\"weight\" :size=\"12\" />\n </template>\n </work-item-attribute>\n <issue-health-status v-if=\"showHealthStatus\" :health-status=\"healthStatus\" />\n </issue-card-time-info>\n</template>\n","import { render, staticRenderFns } from \"./issue_card_time_info.vue?vue&type=template&id=59247cc5\"\nimport script from \"./issue_card_time_info.vue?vue&type=script&lang=js\"\nexport * from \"./issue_card_time_info.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',[(_vm.milestone)?_c('issuable-milestone',{attrs:{\"milestone\":_vm.milestone}}):_vm._e(),_vm._v(\" \"),(_vm.dueDateText)?_c('work-item-attribute',{attrs:{\"anchor-id\":\"issuable-due-date\",\"title\":_vm.dueDateText,\"title-component-class\":\"issuable-due-date gl-mr-3\",\"tooltip-text\":_vm.dueDateTitle,\"tooltip-placement\":\"top\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('gl-icon',{attrs:{\"variant\":_vm.isOverdue ? 'danger' : 'current',\"name\":_vm.dateIcon,\"size\":12}})]},proxy:true}],null,false,4212441276)}):_vm._e(),_vm._v(\" \"),(_vm.timeEstimate)?_c('work-item-attribute',{attrs:{\"anchor-id\":\"time-estimate\",\"title\":_vm.timeEstimate,\"title-component-class\":\"gl-mr-3\",\"tooltip-text\":_vm.__('Estimate'),\"tooltip-placement\":\"top\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('gl-icon',{attrs:{\"name\":\"timer\",\"size\":12}})]},proxy:true}],null,false,3630396722)}):_vm._e(),_vm._v(\" \"),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./issue_card_time_info.vue?vue&type=template&id=5b3861f5\"\nimport script from \"./issue_card_time_info.vue?vue&type=script&lang=js\"\nexport * from \"./issue_card_time_info.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { uniqWith, isEqual } from 'lodash';\n\nimport { MAX_HISTORY_SIZE } from '../constants';\n\nclass RecentSearchesStore {\n constructor(initialState = {}, allowedKeys) {\n this.state = {\n isLocalStorageAvailable: true,\n recentSearches: [],\n allowedKeys,\n ...initialState,\n };\n }\n\n addRecentSearch(newSearch) {\n this.setRecentSearches([newSearch].concat(this.state.recentSearches));\n\n return this.state.recentSearches;\n }\n\n setRecentSearches(searches = []) {\n const trimmedSearches = searches.map((search) =>\n typeof search === 'string' ? search.trim() : search,\n );\n\n // Do object equality check to remove duplicates.\n this.state.recentSearches = uniqWith(trimmedSearches, isEqual).slice(0, MAX_HISTORY_SIZE);\n return this.state.recentSearches;\n }\n}\n\nexport default RecentSearchesStore;\n","export default __webpack_public_path__ + \"empty-search-md.2566c760.svg\";","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"mutation\",\"name\":{\"kind\":\"Name\",\"value\":\"deleteWorkItem\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"input\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"WorkItemDeleteInput\"}}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"workItemDelete\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"input\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"input\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"errors\"},\"arguments\":[],\"directives\":[]}]}}]}}],\"loc\":{\"start\":0,\"end\":107}};\n doc.loc.source = {\"body\":\"mutation deleteWorkItem($input: WorkItemDeleteInput!) {\\n workItemDelete(input: $input) {\\n errors\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"deleteWorkItem\"] = oneQuery(doc, \"deleteWorkItem\");\n \n","export const DRAG_CLASS = 'is-dragging';\nexport const DRAG_DELAY = 100;\n\n/**\n * Default config options for sortablejs.\n * @type {object}\n *\n * @example\n * import Sortable from 'sortablejs';\n *\n * const sortable = Sortable.create(el, {\n * ...defaultSortableOptions,\n * });\n */\nexport const defaultSortableOptions = {\n animation: 200,\n forceFallback: true,\n fallbackClass: DRAG_CLASS,\n fallbackOnBody: true,\n ghostClass: 'is-ghost',\n fallbackTolerance: 1,\n};\n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"searchLabels\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"ID\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"isProject\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Boolean\"}},\"defaultValue\":{\"kind\":\"BooleanValue\",\"value\":false},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"group\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}}}],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"skip\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"if\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"isProject\"}}}]},{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"persist\"},\"arguments\":[]}],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"labels\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"searchTerm\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeAncestorGroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeDescendantGroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"__persist\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nodes\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"__persist\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"FragmentSpread\",\"name\":{\"kind\":\"Name\",\"value\":\"Label\"},\"directives\":[]}]}}]}}]}},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"project\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}}}],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"include\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"if\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"isProject\"}}}]},{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"persist\"},\"arguments\":[]}],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"labels\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"searchTerm\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeAncestorGroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"__persist\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nodes\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"__persist\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"FragmentSpread\",\"name\":{\"kind\":\"Name\",\"value\":\"Label\"},\"directives\":[]}]}}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":587}};\n doc.loc.source = {\"body\":\"#import \\\"./label.fragment.graphql\\\"\\n\\nquery searchLabels($fullPath: ID!, $search: String, $isProject: Boolean = false) {\\n group(fullPath: $fullPath) @skip(if: $isProject) @persist {\\n id\\n labels(searchTerm: $search, includeAncestorGroups: true, includeDescendantGroups: true) {\\n __persist\\n nodes {\\n __persist\\n ...Label\\n }\\n }\\n }\\n project(fullPath: $fullPath) @include(if: $isProject) @persist {\\n id\\n labels(searchTerm: $search, includeAncestorGroups: true) {\\n __persist\\n nodes {\\n __persist\\n ...Label\\n }\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n doc.definitions = doc.definitions.concat(unique(require(\"./label.fragment.graphql\").definitions));\n\n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"searchLabels\"] = oneQuery(doc, \"searchLabels\");\n \n","import recentSearchesStorageKeysCE from '~/filtered_search/recent_searches_storage_keys';\n\nexport default {\n ...recentSearchesStorageKeysCE,\n epics: 'epics-recent-searches',\n requirements: 'requirements-recent-searches',\n test_cases: 'test-cases-recent-searches',\n jira_issues: 'jira-issues-recent-searches',\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{staticClass:\"gl-contents\"},[(_vm.showExportButton)?_c('gl-disclosure-dropdown-item',{directives:[{name:\"gl-modal\",rawName:\"v-gl-modal\",value:(_vm.exportModalId),expression:\"exportModalId\"}],attrs:{\"data-testid\":\"export-as-csv-button\",\"item\":_vm.dropdownItems.exportAsCSV}}):_vm._e(),_vm._v(\" \"),(_vm.showImportButton)?_c('gl-disclosure-dropdown-item',{directives:[{name:\"gl-modal\",rawName:\"v-gl-modal\",value:(_vm.importModalId),expression:\"importModalId\"}],attrs:{\"data-testid\":\"import-from-csv-button\",\"item\":_vm.dropdownItems.importCSV}}):_vm._e(),_vm._v(\" \"),(_vm.showImportButton && _vm.canEdit)?_c('gl-disclosure-dropdown-item',{attrs:{\"data-testid\":\"import-from-jira-link\",\"item\":_vm.dropdownItems.importFromJIRA}}):_vm._e(),_vm._v(\" \"),(_vm.showExportButton)?_c('csv-export-modal',{attrs:{\"modal-id\":_vm.exportModalId,\"export-csv-path\":_vm.exportCsvPath,\"issuable-count\":_vm.issuableCount}}):_vm._e(),_vm._v(\" \"),(_vm.showImportButton)?_c('csv-import-modal',{attrs:{\"modal-id\":_vm.importModalId}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./csv_export_modal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./csv_export_modal.vue?vue&type=script&lang=js\"","<script>\nimport { GlModal, GlSprintf, GlIcon } from '@gitlab/ui';\nimport { TYPE_ISSUE } from '~/issues/constants';\nimport { __, n__ } from '~/locale';\n\nexport default {\n actionCancel: {\n text: __('Cancel'),\n },\n i18n: {\n exportText: __(\n 'The CSV export will be created in the background. Once finished, it will be sent to %{email} in an attachment.',\n ),\n },\n components: {\n GlModal,\n GlSprintf,\n GlIcon,\n },\n inject: {\n issuableType: {\n default: TYPE_ISSUE,\n },\n email: {\n default: '',\n },\n },\n props: {\n exportCsvPath: {\n type: String,\n required: true,\n },\n issuableCount: {\n type: Number,\n required: true,\n },\n modalId: {\n type: String,\n required: true,\n },\n },\n computed: {\n actionPrimary() {\n return {\n text: this.exportText,\n attributes: {\n href: this.exportCsvPath,\n variant: 'confirm',\n 'data-method': 'post',\n 'data-testid': 'export-issues-button',\n 'data-track-action': 'click_button',\n 'data-track-label': this.dataTrackLabel,\n },\n };\n },\n isIssue() {\n return this.issuableType === TYPE_ISSUE;\n },\n dataTrackLabel() {\n return this.isIssue ? 'export_issues_csv' : 'export_merge-requests_csv';\n },\n exportText() {\n return this.isIssue ? __('Export issues') : __('Export merge requests');\n },\n issuableCountText() {\n return this.isIssue\n ? n__('1 issue selected', '%d issues selected', this.issuableCount)\n : n__('1 merge request selected', '%d merge requests selected', this.issuableCount);\n },\n },\n};\n</script>\n\n<template>\n <gl-modal\n :modal-id=\"modalId\"\n :action-primary=\"actionPrimary\"\n :action-cancel=\"$options.actionCancel\"\n body-class=\"!gl-p-0\"\n :title=\"exportText\"\n data-testid=\"export-issuable-modal\"\n >\n <div\n class=\"gl-items-center gl-justify-start gl-border-1 gl-border-subtle gl-p-4 gl-border-b-solid\"\n >\n <gl-icon name=\"check\" class=\"gl-color-green-400\" />\n <strong class=\"gl-m-3\">{{ issuableCountText }}</strong>\n </div>\n <div class=\"modal-text gl-px-4 gl-py-5\">\n <gl-sprintf :message=\"$options.i18n.exportText\">\n <template #email>\n <strong>{{ email }}</strong>\n </template>\n </gl-sprintf>\n </div>\n </gl-modal>\n</template>\n","import { render, staticRenderFns } from \"./csv_export_modal.vue?vue&type=template&id=2ea547ee\"\nimport script from \"./csv_export_modal.vue?vue&type=script&lang=js\"\nexport * from \"./csv_export_modal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-modal',{attrs:{\"modal-id\":_vm.modalId,\"action-primary\":_vm.actionPrimary,\"action-cancel\":_vm.$options.actionCancel,\"body-class\":\"!gl-p-0\",\"title\":_vm.exportText,\"data-testid\":\"export-issuable-modal\"}},[_c('div',{staticClass:\"gl-items-center gl-justify-start gl-border-1 gl-border-subtle gl-p-4 gl-border-b-solid\"},[_c('gl-icon',{staticClass:\"gl-color-green-400\",attrs:{\"name\":\"check\"}}),_vm._v(\" \"),_c('strong',{staticClass:\"gl-m-3\"},[_vm._v(_vm._s(_vm.issuableCountText))])],1),_vm._v(\" \"),_c('div',{staticClass:\"modal-text gl-px-4 gl-py-5\"},[_c('gl-sprintf',{attrs:{\"message\":_vm.$options.i18n.exportText},scopedSlots:_vm._u([{key:\"email\",fn:function(){return [_c('strong',[_vm._v(_vm._s(_vm.email))])]},proxy:true}])})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./csv_import_modal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./csv_import_modal.vue?vue&type=script&lang=js\"","<script>\nimport { GlModal, GlFormGroup } from '@gitlab/ui';\nimport csrf from '~/lib/utils/csrf';\nimport { __, sprintf } from '~/locale';\n\nexport default {\n i18n: {\n maximumFileSizeText: __('The maximum file size allowed is %{size}.'),\n importIssuesText: __('Import issues'),\n uploadCsvFileText: __('Upload CSV file'),\n mainText: __(\n \"Your issues will be imported in the background. Once finished, you'll get a confirmation email.\",\n ),\n helpText: __(\n 'It must have a header row and at least two columns: the first column is the issue title and the second column is the issue description. The separator is automatically detected.',\n ),\n },\n actionPrimary: {\n text: __('Import issues'),\n },\n actionCancel: {\n text: __('Cancel'),\n },\n components: {\n GlModal,\n GlFormGroup,\n },\n inject: {\n importCsvIssuesPath: {\n default: '',\n },\n maxAttachmentSize: {\n default: 0,\n },\n },\n props: {\n modalId: {\n type: String,\n required: true,\n },\n },\n computed: {\n maxFileSizeText() {\n return sprintf(this.$options.i18n.maximumFileSizeText, { size: this.maxAttachmentSize });\n },\n },\n methods: {\n submitForm() {\n this.$refs.form.submit();\n },\n },\n csrf,\n};\n</script>\n\n<template>\n <gl-modal\n :modal-id=\"modalId\"\n :title=\"$options.i18n.importIssuesText\"\n :action-primary=\"$options.actionPrimary\"\n :action-cancel=\"$options.actionCancel\"\n @primary=\"submitForm\"\n >\n <form ref=\"form\" :action=\"importCsvIssuesPath\" enctype=\"multipart/form-data\" method=\"post\">\n <input :value=\"$options.csrf.token\" type=\"hidden\" name=\"authenticity_token\" />\n <p>{{ $options.i18n.mainText }}</p>\n <gl-form-group :label=\"$options.i18n.uploadCsvFileText\" class=\"gl-truncate\" label-for=\"file\">\n <input id=\"file\" type=\"file\" name=\"file\" accept=\".csv,text/csv\" />\n </gl-form-group>\n <p class=\"gl-text-subtle\">\n {{ $options.i18n.helpText }}\n {{ maxFileSizeText }}\n </p>\n </form>\n </gl-modal>\n</template>\n","import { render, staticRenderFns } from \"./csv_import_modal.vue?vue&type=template&id=4596ece7\"\nimport script from \"./csv_import_modal.vue?vue&type=script&lang=js\"\nexport * from \"./csv_import_modal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-modal',{attrs:{\"modal-id\":_vm.modalId,\"title\":_vm.$options.i18n.importIssuesText,\"action-primary\":_vm.$options.actionPrimary,\"action-cancel\":_vm.$options.actionCancel},on:{\"primary\":_vm.submitForm}},[_c('form',{ref:\"form\",attrs:{\"action\":_vm.importCsvIssuesPath,\"enctype\":\"multipart/form-data\",\"method\":\"post\"}},[_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"authenticity_token\"},domProps:{\"value\":_vm.$options.csrf.token}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$options.i18n.mainText))]),_vm._v(\" \"),_c('gl-form-group',{staticClass:\"gl-truncate\",attrs:{\"label\":_vm.$options.i18n.uploadCsvFileText,\"label-for\":\"file\"}},[_c('input',{attrs:{\"id\":\"file\",\"type\":\"file\",\"name\":\"file\",\"accept\":\".csv,text/csv\"}})]),_vm._v(\" \"),_c('p',{staticClass:\"gl-text-subtle\"},[_vm._v(\"\\n \"+_vm._s(_vm.$options.i18n.helpText)+\"\\n \"+_vm._s(_vm.maxFileSizeText)+\"\\n \")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./csv_import_export_buttons.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./csv_import_export_buttons.vue?vue&type=script&lang=js\"","<script>\nimport { GlDisclosureDropdownItem, GlModalDirective } from '@gitlab/ui';\nimport { TYPE_ISSUE } from '~/issues/constants';\nimport { __ } from '~/locale';\nimport CsvExportModal from './csv_export_modal.vue';\nimport CsvImportModal from './csv_import_modal.vue';\n\nexport default {\n components: {\n GlDisclosureDropdownItem,\n CsvExportModal,\n CsvImportModal,\n },\n directives: {\n GlModal: GlModalDirective,\n },\n inject: {\n issuableType: {\n default: TYPE_ISSUE,\n },\n showExportButton: {\n default: false,\n },\n showImportButton: {\n default: false,\n },\n canEdit: {\n default: false,\n },\n projectImportJiraPath: {\n default: null,\n },\n },\n props: {\n exportCsvPath: {\n type: String,\n required: false,\n default: '',\n },\n issuableCount: {\n type: Number,\n required: false,\n default: undefined,\n },\n trackImportClick: {\n type: Boolean,\n required: false,\n default: null,\n },\n },\n data() {\n return {\n dropdownItems: {\n exportAsCSV: {\n text: __('Export as CSV'),\n },\n importCSV: {\n text: __('Import CSV'),\n },\n importFromJIRA: {\n text: __('Import from Jira'),\n href: this.projectImportJiraPath,\n },\n },\n };\n },\n computed: {\n exportModalId() {\n return `${this.issuableType}-export-modal`;\n },\n importModalId() {\n return `${this.issuableType}-import-modal`;\n },\n },\n};\n</script>\n\n<template>\n <ul class=\"gl-contents\">\n <gl-disclosure-dropdown-item\n v-if=\"showExportButton\"\n v-gl-modal=\"exportModalId\"\n data-testid=\"export-as-csv-button\"\n :item=\"dropdownItems.exportAsCSV\"\n />\n <gl-disclosure-dropdown-item\n v-if=\"showImportButton\"\n v-gl-modal=\"importModalId\"\n data-testid=\"import-from-csv-button\"\n :item=\"dropdownItems.importCSV\"\n />\n <gl-disclosure-dropdown-item\n v-if=\"showImportButton && canEdit\"\n data-testid=\"import-from-jira-link\"\n :item=\"dropdownItems.importFromJIRA\"\n />\n\n <csv-export-modal\n v-if=\"showExportButton\"\n :modal-id=\"exportModalId\"\n :export-csv-path=\"exportCsvPath\"\n :issuable-count=\"issuableCount\"\n />\n <csv-import-modal v-if=\"showImportButton\" :modal-id=\"importModalId\" />\n </ul>\n</template>\n","import { render, staticRenderFns } from \"./csv_import_export_buttons.vue?vue&type=template&id=124754d4\"\nimport script from \"./csv_import_export_buttons.vue?vue&type=script&lang=js\"\nexport * from \"./csv_import_export_buttons.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-avatar-link',{staticClass:\"user-avatar-link js-user-link\",attrs:{\"href\":_vm.linkHref,\"data-user-id\":_vm.userId,\"data-username\":_vm.popoverUsername},on:{\"click\":function($event){$event.stopPropagation();}}},[_c('user-avatar-image',{class:_vm.imgCssWrapperClasses,attrs:{\"img-src\":_vm.imgSrc,\"img-alt\":_vm.imgAlt,\"css-classes\":_vm.imgCssClasses,\"size\":_vm.imgSize,\"tooltip-text\":_vm.avatarTooltipText,\"tooltip-placement\":_vm.tooltipPlacement,\"lazy\":_vm.lazy}},[_vm._t(\"default\")],2),_vm._v(\" \"),(_vm.shouldShowUsername)?_c('span',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-ml-1\",attrs:{\"title\":_vm.tooltipText,\"tooltip-placement\":_vm.tooltipPlacement,\"data-testid\":\"user-avatar-link-username\"}},[_vm._v(\"\\n \"+_vm._s(_vm.username)+\"\\n \")]):_vm._e(),_vm._v(\" \"),_vm._t(\"avatar-badge\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_link.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_link.vue?vue&type=script&lang=js\"","<script>\n/* This is a re-usable vue component for rendering a user avatar wrapped in\n a clickable link (likely to the user's profile). The link, image, and\n tooltip can be configured by props passed to this component.\n\n Sample configuration:\n\n <user-avatar-link\n :link-href=\"userProfileUrl\"\n :img-src=\"userAvatarSrc\"\n :img-alt=\"tooltipText\"\n :img-size=\"32\"\n :tooltip-text=\"tooltipText\"\n :tooltip-placement=\"top\"\n :username=\"username\"\n />\n\n*/\n\nimport { GlAvatarLink, GlTooltipDirective } from '@gitlab/ui';\nimport { getIdFromGraphQLId } from '~/graphql_shared/utils';\nimport UserAvatarImage from './user_avatar_image.vue';\n\nexport default {\n name: 'UserAvatarLinkNew',\n components: {\n UserAvatarImage,\n GlAvatarLink,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n props: {\n lazy: {\n type: Boolean,\n required: false,\n default: false,\n },\n linkHref: {\n type: String,\n required: false,\n default: '',\n },\n imgSrc: {\n type: String,\n required: false,\n default: '',\n },\n imgAlt: {\n type: String,\n required: false,\n default: '',\n },\n imgCssClasses: {\n type: String,\n required: false,\n default: '',\n },\n imgCssWrapperClasses: {\n type: String,\n required: false,\n default: '',\n },\n imgSize: {\n type: [Number, Object],\n required: true,\n },\n tooltipText: {\n type: String,\n required: false,\n default: '',\n },\n tooltipPlacement: {\n type: String,\n required: false,\n default: 'top',\n },\n popoverUserId: {\n type: [String, Number],\n required: false,\n default: '',\n },\n popoverUsername: {\n type: String,\n required: false,\n default: '',\n },\n username: {\n type: String,\n required: false,\n default: '',\n },\n },\n computed: {\n userId() {\n return getIdFromGraphQLId(this.popoverUserId);\n },\n shouldShowUsername() {\n return this.username.length > 0;\n },\n avatarTooltipText() {\n // Prevent showing tooltip when popoverUserId is present\n if (this.popoverUserId) {\n return '';\n }\n return this.shouldShowUsername ? '' : this.tooltipText;\n },\n },\n};\n</script>\n\n<template>\n <gl-avatar-link\n :href=\"linkHref\"\n :data-user-id=\"userId\"\n :data-username=\"popoverUsername\"\n class=\"user-avatar-link js-user-link\"\n @click.stop\n >\n <user-avatar-image\n :class=\"imgCssWrapperClasses\"\n :img-src=\"imgSrc\"\n :img-alt=\"imgAlt\"\n :css-classes=\"imgCssClasses\"\n :size=\"imgSize\"\n :tooltip-text=\"avatarTooltipText\"\n :tooltip-placement=\"tooltipPlacement\"\n :lazy=\"lazy\"\n >\n <slot></slot>\n </user-avatar-image>\n\n <span\n v-if=\"shouldShowUsername\"\n v-gl-tooltip\n :title=\"tooltipText\"\n :tooltip-placement=\"tooltipPlacement\"\n class=\"gl-ml-1\"\n data-testid=\"user-avatar-link-username\"\n >\n {{ username }}\n </span>\n\n <slot name=\"avatar-badge\"></slot>\n </gl-avatar-link>\n</template>\n","import { render, staticRenderFns } from \"./user_avatar_link.vue?vue&type=template&id=0c9f1264\"\nimport script from \"./user_avatar_link.vue?vue&type=script&lang=js\"\nexport * from \"./user_avatar_link.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"searchUserProjectsWithIssuesEnabled\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"projects\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"membership\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"withIssuesEnabled\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"sort\"},\"value\":{\"kind\":\"StringValue\",\"value\":\"latest_activity_desc\",\"block\":false}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nodes\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"name\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nameWithNamespace\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"webUrl\"},\"arguments\":[],\"directives\":[]}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":262}};\n doc.loc.source = {\"body\":\"query searchUserProjectsWithIssuesEnabled($search: String) {\\n projects(\\n search: $search\\n membership: true\\n withIssuesEnabled: true\\n sort: \\\"latest_activity_desc\\\"\\n ) {\\n nodes {\\n id\\n name\\n nameWithNamespace\\n webUrl\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"searchUserProjectsWithIssuesEnabled\"] = oneQuery(doc, \"searchUserProjectsWithIssuesEnabled\");\n \n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.hasSearch)?_c('gl-empty-state',{attrs:{\"description\":_vm.__('To widen your search, change or remove filters above'),\"title\":_vm.__('Sorry, your filter produced no results'),\"svg-path\":_vm.svgPath,\"data-testid\":\"issuable-empty-state\"},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"new-issue-button\",function(){return [(_vm.showNewIssueLink)?_c('gl-button',{attrs:{\"href\":_vm.newIssuePath,\"variant\":\"confirm\"}},[_vm._v(\"\\n \"+_vm._s(_vm.__('New issue'))+\"\\n \")]):_vm._e()]})]},proxy:true}],null,true)}):(_vm.isOpenTab)?_c('gl-empty-state',{attrs:{\"title\":_vm.openTabTitle,\"svg-path\":_vm.svgPath,\"data-testid\":\"issuable-empty-state\"},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"new-issue-button\",function(){return [(_vm.showNewIssueLink)?_c('gl-button',{attrs:{\"href\":_vm.newIssuePath,\"variant\":\"confirm\"}},[_vm._v(\"\\n \"+_vm._s(_vm.__('New issue'))+\"\\n \")]):_vm._e()]})]},proxy:true}],null,true)}):_c('gl-empty-state',{attrs:{\"title\":_vm.closedTabTitle,\"svg-path\":_vm.svgPath,\"data-testid\":\"issuable-empty-state\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default __webpack_public_path__ + \"empty-issues-md.3e7bf411.svg\";","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empty_state_with_any_issues.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empty_state_with_any_issues.vue?vue&type=script&lang=js\"","<script>\nimport epicEmptyStateSvg from '@gitlab/svgs/dist/illustrations/empty-state/empty-epic-md.svg';\nimport issuesEmptyStateSvg from '@gitlab/svgs/dist/illustrations/empty-state/empty-issues-md.svg';\nimport { GlButton, GlEmptyState } from '@gitlab/ui';\nimport { __ } from '~/locale';\n\nexport default {\n components: {\n GlButton,\n GlEmptyState,\n },\n inject: {\n newIssuePath: {\n default: false,\n },\n showNewIssueLink: {\n default: false,\n },\n },\n props: {\n hasSearch: {\n type: Boolean,\n required: false,\n default: false,\n },\n isEpic: {\n type: Boolean,\n required: false,\n default: false,\n },\n isOpenTab: {\n type: Boolean,\n required: false,\n default: true,\n },\n },\n computed: {\n closedTabTitle() {\n return this.isEpic ? __('There are no closed epics') : __('There are no closed issues');\n },\n openTabTitle() {\n return this.isEpic ? __('There are no open epics') : __('There are no open issues');\n },\n svgPath() {\n return this.isEpic ? epicEmptyStateSvg : issuesEmptyStateSvg;\n },\n },\n};\n</script>\n\n<template>\n <gl-empty-state\n v-if=\"hasSearch\"\n :description=\"__('To widen your search, change or remove filters above')\"\n :title=\"__('Sorry, your filter produced no results')\"\n :svg-path=\"svgPath\"\n data-testid=\"issuable-empty-state\"\n >\n <template #actions>\n <slot name=\"new-issue-button\">\n <gl-button v-if=\"showNewIssueLink\" :href=\"newIssuePath\" variant=\"confirm\">\n {{ __('New issue') }}\n </gl-button>\n </slot>\n </template>\n </gl-empty-state>\n\n <gl-empty-state\n v-else-if=\"isOpenTab\"\n :title=\"openTabTitle\"\n :svg-path=\"svgPath\"\n data-testid=\"issuable-empty-state\"\n >\n <template #actions>\n <slot name=\"new-issue-button\">\n <gl-button v-if=\"showNewIssueLink\" :href=\"newIssuePath\" variant=\"confirm\">\n {{ __('New issue') }}\n </gl-button>\n </slot>\n </template>\n </gl-empty-state>\n\n <gl-empty-state\n v-else\n :title=\"closedTabTitle\"\n :svg-path=\"svgPath\"\n data-testid=\"issuable-empty-state\"\n />\n</template>\n","import { render, staticRenderFns } from \"./empty_state_with_any_issues.vue?vue&type=template&id=43e77e56\"\nimport script from \"./empty_state_with_any_issues.vue?vue&type=script&lang=js\"\nexport * from \"./empty_state_with_any_issues.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"FragmentDefinition\",\"name\":{\"kind\":\"Name\",\"value\":\"Label\"},\"typeCondition\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Label\"}},\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"color\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"textColor\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"title\"},\"arguments\":[],\"directives\":[]}]}}],\"loc\":{\"start\":0,\"end\":61}};\n doc.loc.source = {\"body\":\"fragment Label on Label {\\n id\\n color\\n textColor\\n title\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"Label\"] = oneQuery(doc, \"Label\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"searchProjects\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"ID\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"group\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"projects\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"withIssuesEnabled\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubgroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"sort\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"SIMILARITY\"}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nodes\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"name\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nameWithNamespace\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"webUrl\"},\"arguments\":[],\"directives\":[]}]}}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":292}};\n doc.loc.source = {\"body\":\"query searchProjects($fullPath: ID!, $search: String) {\\n group(fullPath: $fullPath) {\\n id\\n projects(search: $search, withIssuesEnabled: true, includeSubgroups: true, sort: SIMILARITY) {\\n nodes {\\n id\\n name\\n nameWithNamespace\\n webUrl\\n }\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"searchProjects\"] = oneQuery(doc, \"searchProjects\");\n \n","import { tokenVariants } from '../../../utils/constants';\nimport { translate } from '../../../utils/i18n';\nimport CloseButton from '../../shared_components/close_button/close_button';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\n//\nvar script = {\n name: 'GlToken',\n components: {\n CloseButton\n },\n props: {\n viewOnly: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Token visual variants: default, search-type, and search-value.\n */\n variant: {\n type: String,\n required: false,\n default: 'default',\n validator: variant => tokenVariants.includes(variant)\n },\n /**\n * The close button's label, it is used for the button's aria-label attribute.\n */\n removeLabel: {\n type: String,\n required: false,\n default: () => translate('GlToken.closeButtonTitle', 'Remove')\n }\n },\n computed: {\n variantClass() {\n // eslint-disable-next-line @gitlab/tailwind-no-interpolation -- Not a CSS utility\n return `gl-token-${this.variant}-variant`;\n },\n viewOnlyClass() {\n return {\n 'gl-token-view-only': this.viewOnly\n };\n }\n },\n methods: {\n close($event) {\n /**\n * Emitted when x is clicked\n *\n * @event close\n */\n this.$emit('close', $event);\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._g({class:['gl-token', _vm.variantClass, _vm.viewOnlyClass]},_vm.$listeners),[_c('span',{staticClass:\"gl-token-content\"},[_vm._t(\"default\"),_vm._v(\" \"),(!_vm.viewOnly)?_c('close-button',{staticClass:\"gl-token-close\",attrs:{\"label\":_vm.removeLabel},on:{\"click\":_vm.close}}):_vm._e()],2)])};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","const WORK_ITEM_TYPE_INCIDENT = 'incident';\nconst WORK_ITEM_TYPE_ISSUE = 'issue';\n\nexport const SUPPORT_BOT_USERNAME = 'support-bot';\n\nexport const issuableInitialDataById = (id) => {\n try {\n const el = document.getElementById(id);\n if (!el?.dataset?.initial) return null;\n\n return JSON.parse(el.dataset.initial);\n } catch {\n return null;\n }\n};\n\nconst isIssuableIncident = (data) => {\n return data?.issueType === WORK_ITEM_TYPE_INCIDENT;\n};\n\nconst isIssuableServiceDeskIssue = (data) => {\n return data?.issueType === WORK_ITEM_TYPE_ISSUE && data?.authorUsername === SUPPORT_BOT_USERNAME;\n};\n\nexport const isLegacyIssueType = (issuableData) => {\n return isIssuableIncident(issuableData) || isIssuableServiceDeskIssue(issuableData);\n};\n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"getIssuesCountEE\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"isProject\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Boolean\"}},\"defaultValue\":{\"kind\":\"BooleanValue\",\"value\":false},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"ID\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"IssuableSearchableField\"}}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"AssigneeWildcardId\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Boolean\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"MilestoneWildcardId\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"ReleaseTagWildcardId\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"IssueType\"}}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"EpicWildcardId\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"ID\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"IterationWildcardId\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}},\"type\":{\"kind\":\"ListType\",\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"IterationsCadenceID\"}}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"WeightWildcardId\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"HealthStatusFilter\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"NegatedIssueFilterInput\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"UnionedIssueFilterInput\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Time\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Time\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Time\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Time\"}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"group\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}}}],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"skip\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"if\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"isProject\"}}}]}],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"alias\":{\"kind\":\"Name\",\"value\":\"openedIssues\"},\"name\":{\"kind\":\"Name\",\"value\":\"issues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubepics\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubgroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"state\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"opened\"}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"count\"},\"arguments\":[],\"directives\":[]}]}},{\"kind\":\"Field\",\"alias\":{\"kind\":\"Name\",\"value\":\"closedIssues\"},\"name\":{\"kind\":\"Name\",\"value\":\"issues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubepics\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubgroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"state\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"closed\"}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"count\"},\"arguments\":[],\"directives\":[]}]}},{\"kind\":\"Field\",\"alias\":{\"kind\":\"Name\",\"value\":\"allIssues\"},\"name\":{\"kind\":\"Name\",\"value\":\"issues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubepics\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubgroups\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"state\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"all\"}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"count\"},\"arguments\":[],\"directives\":[]}]}}]}},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"project\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}}}],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"include\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"if\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"isProject\"}}}]}],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"alias\":{\"kind\":\"Name\",\"value\":\"openedIssues\"},\"name\":{\"kind\":\"Name\",\"value\":\"issues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubepics\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"state\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"opened\"}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"count\"},\"arguments\":[],\"directives\":[]}]}},{\"kind\":\"Field\",\"alias\":{\"kind\":\"Name\",\"value\":\"closedIssues\"},\"name\":{\"kind\":\"Name\",\"value\":\"issues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubepics\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"state\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"closed\"}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"count\"},\"arguments\":[],\"directives\":[]}]}},{\"kind\":\"Field\",\"alias\":{\"kind\":\"Name\",\"value\":\"allIssues\"},\"name\":{\"kind\":\"Name\",\"value\":\"issues\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"includeSubepics\"},\"value\":{\"kind\":\"BooleanValue\",\"value\":true}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"state\"},\"value\":{\"kind\":\"EnumValue\",\"value\":\"all\"}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iid\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"search\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"in\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"assigneeUsernames\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"authorUsername\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"confidential\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"labelName\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneTitle\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"milestoneWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"myReactionEmoji\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTag\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"releaseTagWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"types\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"epicWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"iterationCadenceId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weight\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"weightWildcardId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"healthStatusFilter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmContactId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"crmOrganizationId\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"not\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"or\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"createdBefore\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedAfter\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"closedBefore\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"count\"},\"arguments\":[],\"directives\":[]}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":7768}};\n doc.loc.source = {\"body\":\"query getIssuesCountEE(\\n $isProject: Boolean = false\\n $fullPath: ID!\\n $iid: String\\n $search: String\\n $in: [IssuableSearchableField!]\\n $assigneeId: String\\n $assigneeWildcardId: AssigneeWildcardId\\n $assigneeUsernames: [String!]\\n $authorUsername: String\\n $confidential: Boolean\\n $labelName: [String]\\n $milestoneTitle: [String]\\n $milestoneWildcardId: MilestoneWildcardId\\n $myReactionEmoji: String\\n $releaseTag: [String!]\\n $releaseTagWildcardId: ReleaseTagWildcardId\\n $types: [IssueType!]\\n $epicId: String\\n $epicWildcardId: EpicWildcardId\\n $iterationId: [ID]\\n $iterationWildcardId: IterationWildcardId\\n $iterationCadenceId: [IterationsCadenceID!]\\n $weight: String\\n $weightWildcardId: WeightWildcardId\\n $healthStatusFilter: HealthStatusFilter\\n $crmContactId: String\\n $crmOrganizationId: String\\n $not: NegatedIssueFilterInput\\n $or: UnionedIssueFilterInput\\n $createdAfter: Time\\n $createdBefore: Time\\n $closedAfter: Time\\n $closedBefore: Time\\n) {\\n group(fullPath: $fullPath) @skip(if: $isProject) {\\n id\\n openedIssues: issues(\\n includeSubepics: true\\n includeSubgroups: true\\n state: opened\\n iid: $iid\\n search: $search\\n in: $in\\n assigneeId: $assigneeId\\n assigneeWildcardId: $assigneeWildcardId\\n assigneeUsernames: $assigneeUsernames\\n authorUsername: $authorUsername\\n confidential: $confidential\\n labelName: $labelName\\n milestoneTitle: $milestoneTitle\\n milestoneWildcardId: $milestoneWildcardId\\n myReactionEmoji: $myReactionEmoji\\n types: $types\\n epicId: $epicId\\n epicWildcardId: $epicWildcardId\\n iterationId: $iterationId\\n iterationWildcardId: $iterationWildcardId\\n iterationCadenceId: $iterationCadenceId\\n weight: $weight\\n weightWildcardId: $weightWildcardId\\n healthStatusFilter: $healthStatusFilter\\n crmContactId: $crmContactId\\n crmOrganizationId: $crmOrganizationId\\n not: $not\\n or: $or\\n createdAfter: $createdAfter\\n createdBefore: $createdBefore\\n closedAfter: $closedAfter\\n closedBefore: $closedBefore\\n ) {\\n count\\n }\\n closedIssues: issues(\\n includeSubepics: true\\n includeSubgroups: true\\n state: closed\\n iid: $iid\\n search: $search\\n in: $in\\n assigneeId: $assigneeId\\n assigneeWildcardId: $assigneeWildcardId\\n assigneeUsernames: $assigneeUsernames\\n authorUsername: $authorUsername\\n confidential: $confidential\\n labelName: $labelName\\n milestoneTitle: $milestoneTitle\\n milestoneWildcardId: $milestoneWildcardId\\n myReactionEmoji: $myReactionEmoji\\n types: $types\\n epicId: $epicId\\n epicWildcardId: $epicWildcardId\\n iterationId: $iterationId\\n iterationWildcardId: $iterationWildcardId\\n iterationCadenceId: $iterationCadenceId\\n weight: $weight\\n weightWildcardId: $weightWildcardId\\n healthStatusFilter: $healthStatusFilter\\n crmContactId: $crmContactId\\n crmOrganizationId: $crmOrganizationId\\n not: $not\\n or: $or\\n createdAfter: $createdAfter\\n createdBefore: $createdBefore\\n closedAfter: $closedAfter\\n closedBefore: $closedBefore\\n ) {\\n count\\n }\\n allIssues: issues(\\n includeSubepics: true\\n includeSubgroups: true\\n state: all\\n iid: $iid\\n search: $search\\n in: $in\\n assigneeId: $assigneeId\\n assigneeWildcardId: $assigneeWildcardId\\n assigneeUsernames: $assigneeUsernames\\n authorUsername: $authorUsername\\n confidential: $confidential\\n labelName: $labelName\\n milestoneTitle: $milestoneTitle\\n milestoneWildcardId: $milestoneWildcardId\\n myReactionEmoji: $myReactionEmoji\\n types: $types\\n epicId: $epicId\\n epicWildcardId: $epicWildcardId\\n iterationId: $iterationId\\n iterationWildcardId: $iterationWildcardId\\n iterationCadenceId: $iterationCadenceId\\n weight: $weight\\n weightWildcardId: $weightWildcardId\\n healthStatusFilter: $healthStatusFilter\\n crmContactId: $crmContactId\\n crmOrganizationId: $crmOrganizationId\\n not: $not\\n or: $or\\n createdAfter: $createdAfter\\n createdBefore: $createdBefore\\n closedAfter: $closedAfter\\n closedBefore: $closedBefore\\n ) {\\n count\\n }\\n }\\n project(fullPath: $fullPath) @include(if: $isProject) {\\n id\\n openedIssues: issues(\\n includeSubepics: true\\n state: opened\\n iid: $iid\\n search: $search\\n in: $in\\n assigneeId: $assigneeId\\n assigneeWildcardId: $assigneeWildcardId\\n assigneeUsernames: $assigneeUsernames\\n authorUsername: $authorUsername\\n confidential: $confidential\\n labelName: $labelName\\n milestoneTitle: $milestoneTitle\\n milestoneWildcardId: $milestoneWildcardId\\n myReactionEmoji: $myReactionEmoji\\n releaseTag: $releaseTag\\n releaseTagWildcardId: $releaseTagWildcardId\\n types: $types\\n epicId: $epicId\\n epicWildcardId: $epicWildcardId\\n iterationId: $iterationId\\n iterationWildcardId: $iterationWildcardId\\n iterationCadenceId: $iterationCadenceId\\n weight: $weight\\n weightWildcardId: $weightWildcardId\\n healthStatusFilter: $healthStatusFilter\\n crmContactId: $crmContactId\\n crmOrganizationId: $crmOrganizationId\\n not: $not\\n or: $or\\n createdAfter: $createdAfter\\n createdBefore: $createdBefore\\n closedAfter: $closedAfter\\n closedBefore: $closedBefore\\n ) {\\n count\\n }\\n closedIssues: issues(\\n includeSubepics: true\\n state: closed\\n iid: $iid\\n search: $search\\n in: $in\\n assigneeId: $assigneeId\\n assigneeWildcardId: $assigneeWildcardId\\n assigneeUsernames: $assigneeUsernames\\n authorUsername: $authorUsername\\n confidential: $confidential\\n labelName: $labelName\\n milestoneTitle: $milestoneTitle\\n milestoneWildcardId: $milestoneWildcardId\\n myReactionEmoji: $myReactionEmoji\\n releaseTag: $releaseTag\\n releaseTagWildcardId: $releaseTagWildcardId\\n types: $types\\n epicId: $epicId\\n epicWildcardId: $epicWildcardId\\n iterationId: $iterationId\\n iterationWildcardId: $iterationWildcardId\\n iterationCadenceId: $iterationCadenceId\\n weight: $weight\\n weightWildcardId: $weightWildcardId\\n healthStatusFilter: $healthStatusFilter\\n crmContactId: $crmContactId\\n crmOrganizationId: $crmOrganizationId\\n not: $not\\n or: $or\\n createdAfter: $createdAfter\\n createdBefore: $createdBefore\\n closedAfter: $closedAfter\\n closedBefore: $closedBefore\\n ) {\\n count\\n }\\n allIssues: issues(\\n includeSubepics: true\\n state: all\\n iid: $iid\\n search: $search\\n in: $in\\n assigneeId: $assigneeId\\n assigneeWildcardId: $assigneeWildcardId\\n assigneeUsernames: $assigneeUsernames\\n authorUsername: $authorUsername\\n confidential: $confidential\\n labelName: $labelName\\n milestoneTitle: $milestoneTitle\\n milestoneWildcardId: $milestoneWildcardId\\n myReactionEmoji: $myReactionEmoji\\n releaseTag: $releaseTag\\n releaseTagWildcardId: $releaseTagWildcardId\\n types: $types\\n epicId: $epicId\\n epicWildcardId: $epicWildcardId\\n iterationId: $iterationId\\n iterationWildcardId: $iterationWildcardId\\n iterationCadenceId: $iterationCadenceId\\n weight: $weight\\n weightWildcardId: $weightWildcardId\\n healthStatusFilter: $healthStatusFilter\\n crmContactId: $crmContactId\\n crmOrganizationId: $crmOrganizationId\\n not: $not\\n or: $or\\n createdAfter: $createdAfter\\n createdBefore: $createdBefore\\n closedAfter: $closedAfter\\n closedBefore: $closedBefore\\n ) {\\n count\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"getIssuesCountEE\"] = oneQuery(doc, \"getIssuesCountEE\");\n \n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"issuable-list-container\"},[_c('issuable-tabs',{attrs:{\"tabs\":_vm.tabs,\"tab-counts\":_vm.tabCounts,\"current-tab\":_vm.currentTab,\"truncate-counts\":_vm.truncateCounts},on:{\"click\":function($event){return _vm.$emit('click-tab', $event)}},scopedSlots:_vm._u([{key:\"nav-actions\",fn:function(){return [_vm._t(\"nav-actions\")]},proxy:true}],null,true)}),_vm._v(\" \"),_c('filtered-search-bar',{staticClass:\"row-content-block gl-grow gl-border-t-0 sm:gl-flex\",attrs:{\"namespace\":_vm.namespace,\"recent-searches-storage-key\":_vm.recentSearchesStorageKey,\"search-input-placeholder\":_vm.searchInputPlaceholder,\"tokens\":_vm.searchTokens,\"sort-options\":_vm.sortOptions,\"initial-filter-value\":_vm.initialFilterValue,\"initial-sort-by\":_vm.initialSortBy,\"sync-filter-and-sort\":_vm.syncFilterAndSort,\"show-checkbox\":_vm.showBulkEditSidebar,\"checkbox-checked\":_vm.allIssuablesChecked,\"show-friendly-text\":_vm.showFilteredSearchFriendlyText,\"terms-as-tokens\":\"\",\"data-testid\":\"issuable-search-container\"},on:{\"checked-input\":_vm.handleAllIssuablesCheckedInput,\"onFilter\":function($event){return _vm.$emit('filter', $event)},\"onSort\":function($event){return _vm.$emit('sort', $event)}}}),_vm._v(\" \"),(_vm.error)?_c('gl-alert',{class:{ 'gl-mt-5': !_vm.hasItems && !_vm.issuablesLoading },attrs:{\"variant\":\"danger\",\"dismissible\":_vm.hasItems},on:{\"dismiss\":function($event){return _vm.$emit('dismiss-alert')}}},[_vm._v(\"\\n \"+_vm._s(_vm.error)+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('issuable-bulk-edit-sidebar',{attrs:{\"expanded\":_vm.showBulkEditSidebar},scopedSlots:_vm._u([{key:\"bulk-edit-actions\",fn:function(){return [_vm._t(\"bulk-edit-actions\",null,{\"checkedIssuables\":_vm.checkedIssuables})]},proxy:true},{key:\"sidebar-items\",fn:function(){return [_vm._t(\"sidebar-items\",null,{\"checkedIssuables\":_vm.checkedIssuables})]},proxy:true}],null,true)}),_vm._v(\" \"),_vm._t(\"list-body\"),_vm._v(\" \"),(_vm.issuablesLoading)?_c('ul',{staticClass:\"content-list\"},_vm._l((_vm.skeletonItemCount),function(n){return _c('li',{key:n,staticClass:\"issue !gl-px-5 !gl-py-5\"},[_c('gl-skeleton-loader')],1)}),0):[(_vm.issuables.length > 0 && !_vm.isGridView)?_c(_vm.issuablesWrapper,_vm._b({tag:\"component\",staticClass:\"content-list issuable-list issues-list\",class:{ 'manual-ordering': _vm.isManualOrdering },on:{\"update\":_vm.handleVueDraggableUpdate}},'component',_vm.$options.vueDraggableAttributes,false),_vm._l((_vm.issuables),function(issuable){return _c('issuable-item',{key:issuable.id,class:[{ 'gl-cursor-grab': _vm.isManualOrdering }, _vm.issuableItemClass],attrs:{\"data-testid\":\"issuable-container\",\"data-qa-issuable-title\":issuable.title,\"has-scoped-labels-feature\":_vm.hasScopedLabelsFeature,\"issuable-symbol\":_vm.issuableSymbol,\"issuable\":issuable,\"label-filter-param\":_vm.labelFilterParam,\"full-path\":_vm.fullPath,\"show-checkbox\":_vm.showBulkEditSidebar,\"checked\":_vm.isIssuableChecked(issuable),\"show-work-item-type-icon\":_vm.showWorkItemTypeIcon,\"prevent-redirect\":_vm.preventRedirect,\"is-active\":_vm.isIssuableActive(issuable)},on:{\"checked-input\":function($event){return _vm.handleIssuableCheckedInput(issuable, $event)},\"select-issuable\":function($event){return _vm.$emit('select-issuable', $event)}},scopedSlots:_vm._u([{key:\"reference\",fn:function(){return [_vm._t(\"reference\",null,{\"issuable\":issuable})]},proxy:true},{key:\"author\",fn:function(){return [_vm._t(\"author\",null,{\"author\":issuable.author})]},proxy:true},{key:\"timeframe\",fn:function(){return [_vm._t(\"timeframe\",null,{\"issuable\":issuable})]},proxy:true},{key:\"target-branch\",fn:function(){return [_vm._t(\"target-branch\",null,{\"issuable\":issuable})]},proxy:true},{key:\"status\",fn:function(){return [_vm._t(\"status\",null,{\"issuable\":issuable})]},proxy:true},{key:\"statistics\",fn:function(){return [_vm._t(\"statistics\",null,{\"issuable\":issuable})]},proxy:true},{key:\"approval-status\",fn:function(){return [_vm._t(\"approval-status\",null,{\"issuable\":issuable})]},proxy:true},{key:\"pipeline-status\",fn:function(){return [_vm._t(\"pipeline-status\",null,{\"issuable\":issuable})]},proxy:true},{key:\"reviewers\",fn:function(){return [_vm._t(\"reviewers\",null,{\"issuable\":issuable})]},proxy:true},{key:\"title-icons\",fn:function(){return [_vm._t(\"title-icons\",null,{\"issuable\":issuable})]},proxy:true},{key:\"discussions\",fn:function(){return [_vm._t(\"discussions\",null,{\"issuable\":issuable})]},proxy:true},{key:\"health-status\",fn:function(){return [_vm._t(\"health-status\",null,{\"issuable\":issuable})]},proxy:true}],null,true)})}),1):(_vm.issuables.length > 0 && _vm.isGridView)?_c('div',[_c('issuable-grid')],1):(_vm.initialFilterValue.length > 0)?_c('empty-result'):(!_vm.error)?_vm._t(\"empty-state\"):_vm._e()],_vm._v(\" \"),_c('div',{staticClass:\"gl-relative gl-mt-6 gl-flex gl-justify-between md:!gl-justify-center\"},[(_vm.showPaginationControls && _vm.useKeysetPagination)?_c('gl-keyset-pagination',{attrs:{\"has-next-page\":_vm.hasNextPage,\"has-previous-page\":_vm.hasPreviousPage},on:{\"next\":function($event){return _vm.$emit('next-page')},\"prev\":function($event){return _vm.$emit('previous-page')}}}):(_vm.showPaginationControls)?_c('gl-pagination',{staticClass:\"gl-pagination gl-mt-3\",attrs:{\"per-page\":_vm.defaultPageSize,\"total-items\":_vm.totalItems,\"value\":_vm.currentPage,\"prev-page\":_vm.previousPage,\"next-page\":_vm.nextPage,\"align\":\"center\"},on:{\"input\":function($event){return _vm.$emit('page-change', $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.showPageSizeSelector)?_c('local-storage-sync',{attrs:{\"value\":_vm.defaultPageSize,\"storage-key\":_vm.$options.PAGE_SIZE_STORAGE_KEY},on:{\"input\":_vm.handlePageSizeChange}},[_c('page-size-selector',{staticClass:\"gl-relative gl-right-0 md:gl-absolute\",attrs:{\"value\":_vm.defaultPageSize},on:{\"input\":_vm.handlePageSizeChange}})],1):_vm._e()],1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<script>\nconst getLayoutPage = () => document.querySelector('.layout-page');\n\nexport default {\n props: {\n expanded: {\n type: Boolean,\n required: true,\n },\n },\n watch: {\n expanded(value) {\n const layoutPageEl = getLayoutPage();\n\n if (layoutPageEl) {\n layoutPageEl.classList.toggle('right-sidebar-expanded', value);\n layoutPageEl.classList.toggle('right-sidebar-collapsed', !value);\n }\n },\n },\n mounted() {\n const layoutPageEl = getLayoutPage();\n\n if (layoutPageEl) {\n layoutPageEl.classList.add('issuable-bulk-update-sidebar');\n }\n },\n};\n</script>\n\n<template>\n <aside\n :class=\"{ 'right-sidebar-expanded': expanded, 'right-sidebar-collapsed': !expanded }\"\n class=\"issues-bulk-update right-sidebar\"\n aria-live=\"polite\"\n >\n <div class=\"gl-border-b gl-flex gl-justify-between gl-p-4\">\n <slot name=\"bulk-edit-actions\"></slot>\n </div>\n <slot name=\"sidebar-items\"></slot>\n </aside>\n</template>\n","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_bulk_edit_sidebar.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_bulk_edit_sidebar.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./issuable_bulk_edit_sidebar.vue?vue&type=template&id=1eee10ad\"\nimport script from \"./issuable_bulk_edit_sidebar.vue?vue&type=script&lang=js\"\nexport * from \"./issuable_bulk_edit_sidebar.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('aside',{staticClass:\"issues-bulk-update right-sidebar\",class:{ 'right-sidebar-expanded': _vm.expanded, 'right-sidebar-collapsed': !_vm.expanded },attrs:{\"aria-live\":\"polite\"}},[_c('div',{staticClass:\"gl-border-b gl-flex gl-justify-between gl-p-4\"},[_vm._t(\"bulk-edit-actions\")],2),_vm._v(\" \"),_vm._t(\"sidebar-items\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_prefetch.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./work_item_prefetch.vue?vue&type=script&lang=js\"","<script>\nimport { DEFAULT_DEBOUNCE_AND_THROTTLE_MS } from '~/lib/utils/constants';\nimport workItemByIidQuery from '../graphql/work_item_by_iid.query.graphql';\n\nexport default {\n name: 'WorkItemPrefetch',\n inject: {\n fullPath: {\n default: '',\n },\n },\n props: {\n workItemIid: {\n type: String,\n required: true,\n },\n workItemFullPath: {\n type: String,\n required: false,\n default: '',\n },\n },\n data() {\n return {\n skipQuery: true,\n };\n },\n apollo: {\n // eslint-disable-next-line @gitlab/vue-no-undef-apollo-properties\n workItem: {\n query() {\n return workItemByIidQuery;\n },\n variables() {\n return {\n fullPath: this.workItemFullPath || this.fullPath,\n iid: this.workItemIid,\n };\n },\n skip() {\n return !this.fullPath || this.skipQuery;\n },\n update(data) {\n return data.workspace.workItem ?? {};\n },\n },\n },\n methods: {\n prefetchWorkItem() {\n this.prefetch = setTimeout(() => {\n this.skipQuery = false;\n }, DEFAULT_DEBOUNCE_AND_THROTTLE_MS);\n },\n clearPrefetching() {\n if (this.prefetch) {\n clearTimeout(this.prefetch);\n this.prefetch = null;\n }\n },\n },\n render() {\n return this.$scopedSlots.default({\n prefetchWorkItem: this.prefetchWorkItem,\n clearPrefetching: this.clearPrefetching,\n });\n },\n};\n</script>\n","var render, staticRenderFns\nimport script from \"./work_item_prefetch.vue?vue&type=script&lang=js\"\nexport * from \"./work_item_prefetch.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_item.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_item.vue?vue&type=script&lang=js\"","<script>\nimport {\n GlBadge,\n GlLink,\n GlIcon,\n GlLabel,\n GlFormCheckbox,\n GlSprintf,\n GlTooltipDirective,\n} from '@gitlab/ui';\nimport { getIdFromGraphQLId } from '~/graphql_shared/utils';\nimport { STATUS_OPEN, STATUS_CLOSED } from '~/issues/constants';\nimport { isScopedLabel } from '~/lib/utils/common_utils';\nimport { isExternal, setUrlFragment, visitUrl } from '~/lib/utils/url_utility';\nimport { __, n__, sprintf } from '~/locale';\nimport IssuableAssignees from '~/issuable/components/issue_assignees.vue';\n\nimport timeagoMixin from '~/vue_shared/mixins/timeago';\nimport glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';\nimport WorkItemTypeIcon from '~/work_items/components/work_item_type_icon.vue';\nimport WorkItemPrefetch from '~/work_items/components/work_item_prefetch.vue';\nimport {\n STATE_OPEN,\n STATE_CLOSED,\n LINKED_CATEGORIES_MAP,\n WORK_ITEM_TYPE_VALUE_INCIDENT,\n WORK_ITEM_TYPE_VALUE_ISSUE,\n} from '~/work_items/constants';\nimport {\n isAssigneesWidget,\n isLabelsWidget,\n findLinkedItemsWidget,\n canRouterNav,\n} from '~/work_items/utils';\nimport { SUPPORT_BOT_USERNAME } from '~/issues/show/utils/issuable_data';\n\nexport default {\n components: {\n GlBadge,\n GlLink,\n GlIcon,\n GlLabel,\n GlFormCheckbox,\n GlSprintf,\n IssuableAssignees,\n WorkItemTypeIcon,\n WorkItemPrefetch,\n WorkItemRelationshipIcons: () =>\n import('~/work_items/components/shared/work_item_relationship_icons.vue'),\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n mixins: [timeagoMixin, glFeatureFlagMixin()],\n inject: {\n isGroup: {\n default: false,\n },\n },\n props: {\n hasScopedLabelsFeature: {\n type: Boolean,\n required: false,\n default: false,\n },\n issuableSymbol: {\n type: String,\n required: true,\n },\n fullPath: {\n type: String,\n required: false,\n default: null,\n },\n issuable: {\n type: Object,\n required: true,\n },\n labelFilterParam: {\n type: String,\n required: false,\n default: 'label_name',\n },\n showCheckbox: {\n type: Boolean,\n required: true,\n },\n checked: {\n type: Boolean,\n required: false,\n default: false,\n },\n showWorkItemTypeIcon: {\n type: Boolean,\n required: false,\n default: false,\n },\n isActive: {\n type: Boolean,\n required: false,\n default: false,\n },\n preventRedirect: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n computed: {\n issuableId() {\n return getIdFromGraphQLId(this.issuable.id) || this.issuable.id;\n },\n issuableIid() {\n return this.issuable.iid;\n },\n workItemFullPath() {\n return (\n this.issuable.namespace?.fullPath || this.issuable.reference?.split(this.issuableSymbol)[0]\n );\n },\n isIncident() {\n return this.issuable.workItemType?.name === WORK_ITEM_TYPE_VALUE_INCIDENT;\n },\n isServiceDeskIssue() {\n return (\n this.issuable.workItemType?.name === WORK_ITEM_TYPE_VALUE_ISSUE &&\n this.issuable?.author?.username === SUPPORT_BOT_USERNAME\n );\n },\n author() {\n return this.issuable.author || {};\n },\n externalAuthor() {\n return this.issuable.externalAuthor;\n },\n issuableLinkHref() {\n return this.issuable.webPath || this.issuable.gitlabWebUrl || this.issuable.webUrl;\n },\n authorId() {\n return getIdFromGraphQLId(this.author.id);\n },\n isIssuableUrlExternal() {\n return isExternal(this.issuableLinkHref ?? '');\n },\n reference() {\n return this.issuable.reference || `${this.issuableSymbol}${this.issuable.iid}`;\n },\n type() {\n return this.issuable.type || this.issuable.workItemType?.name.toUpperCase();\n },\n labels() {\n return (\n this.issuable.labels?.nodes ||\n this.issuable.labels ||\n this.issuable.widgets?.find(isLabelsWidget)?.labels.nodes ||\n []\n );\n },\n labelIdsString() {\n return JSON.stringify(this.labels.map((label) => getIdFromGraphQLId(label.id)));\n },\n assignees() {\n return (\n this.issuable.assignees?.nodes ||\n this.issuable.assignees ||\n this.issuable.widgets?.find(isAssigneesWidget)?.assignees.nodes ||\n []\n );\n },\n filteredLinkedItems() {\n const linkedItems = findLinkedItemsWidget(this.issuable)?.linkedItems?.nodes || [];\n return linkedItems.filter((item) => {\n return item.linkType !== LINKED_CATEGORIES_MAP.RELATES_TO;\n });\n },\n createdAt() {\n return this.timeFormatted(this.issuable.createdAt);\n },\n isOpen() {\n return [STATUS_OPEN, STATE_OPEN].includes(this.issuable.state);\n },\n isClosed() {\n return [STATUS_CLOSED, STATE_CLOSED].includes(this.issuable.state);\n },\n statusTooltip() {\n return this.issuable.mergedAt ? this.tooltipTitle(this.issuable.mergedAt) : '';\n },\n timestamp() {\n return this.isClosed && this.issuable.closedAt\n ? this.issuable.closedAt\n : this.issuable.updatedAt;\n },\n formattedTimestamp() {\n if (this.isClosed && this.issuable.closedAt) {\n return sprintf(__('closed %{timeago}'), {\n timeago: this.timeFormatted(this.issuable.closedAt),\n });\n }\n if (this.issuable.updatedAt !== this.issuable.createdAt) {\n return sprintf(__('updated %{timeAgo}'), {\n timeAgo: this.timeFormatted(this.issuable.updatedAt),\n });\n }\n return undefined;\n },\n issuableTitleProps() {\n if (this.isIssuableUrlExternal) {\n return {\n target: '_blank',\n };\n }\n return {};\n },\n taskStatus() {\n const { completedCount, count } = this.issuable.taskCompletionStatus || {};\n if (!count) {\n return undefined;\n }\n\n return sprintf(\n n__(\n '%{completedCount} of %{count} checklist item completed',\n '%{completedCount} of %{count} checklist items completed',\n count,\n ),\n { completedCount, count },\n );\n },\n notesCount() {\n return this.issuable.userDiscussionsCount ?? this.issuable.userNotesCount;\n },\n showDiscussions() {\n return typeof this.notesCount === 'number';\n },\n showIssuableMeta() {\n return Boolean(\n this.hasSlotContents('status') ||\n this.hasSlotContents('statistics') ||\n this.showDiscussions ||\n this.issuable.assignees,\n );\n },\n issuableNotesLink() {\n return setUrlFragment(this.issuableLinkHref, 'notes');\n },\n statusBadgeVariant() {\n if (this.isMergeRequest && this.isClosed) {\n return 'danger';\n }\n\n return 'info';\n },\n isMergeRequest() {\n // eslint-disable-next-line no-underscore-dangle\n return this.issuable.__typename === 'MergeRequest';\n },\n issueAsWorkItem() {\n return (\n !this.isGroup &&\n // Use legacy view for unsupported work item types\n // incidents and Service Desk issues\n !this.isIncident &&\n !this.isServiceDeskIssue &&\n this.glFeatures.workItemsViewPreference &&\n gon.current_user_use_work_items_view\n );\n },\n hiddenIssuableTitle() {\n if (this.isMergeRequest) {\n return __('This merge request is hidden because its author has been banned.');\n }\n\n return __('This issue is hidden because its author has been banned.');\n },\n listItemUniqueId() {\n const availableFullPath = this.workItemFullPath || this.fullPath;\n return `listItem-${availableFullPath}/${getIdFromGraphQLId(this.issuable.id)}`;\n },\n },\n methods: {\n hasSlotContents(slotName) {\n // eslint-disable-next-line @gitlab/vue-prefer-dollar-scopedslots\n return Boolean(this.$slots[slotName]);\n },\n scopedLabel(label) {\n const allowsScopedLabels =\n this.hasScopedLabelsFeature ||\n this.issuable.widgets?.find(isLabelsWidget)?.allowsScopedLabels;\n return allowsScopedLabels && isScopedLabel(label);\n },\n labelTitle(label) {\n return label.title || label.name;\n },\n labelTarget(label) {\n const value = encodeURIComponent(this.labelTitle(label));\n return `?${this.labelFilterParam}[]=${value}`;\n },\n /**\n * This is needed as an independent method since\n * when user changes current page, `$refs.authorLink`\n * will be null until next page results are loaded & rendered.\n */\n getAuthorPopoverTarget() {\n if (this.$refs.authorLink) {\n return this.$refs.authorLink.$el;\n }\n return '';\n },\n handleIssuableItemClick(e) {\n if (e.metaKey || e.ctrlKey || this.showCheckbox || e.button === 1) {\n return;\n }\n e.preventDefault();\n // Unsupported types incidents and Service Desk issues\n // should not open in drawer\n if (this.isIncident || this.isServiceDeskIssue || !this.preventRedirect) {\n this.navigateToIssuable();\n return;\n }\n this.$emit('select-issuable', {\n id: this.issuable.id,\n iid: this.issuableIid,\n webUrl: this.issuable.webUrl,\n fullPath: this.workItemFullPath,\n workItemType: this.type.toLowerCase(),\n });\n },\n navigateToIssuable() {\n if (!this.fullPath) {\n visitUrl(this.issuableLinkHref);\n }\n const shouldRouterNav = canRouterNav({\n fullPath: this.fullPath,\n webUrl: this.issuableLinkHref,\n isGroup: this.isGroup,\n issueAsWorkItem: this.issueAsWorkItem,\n });\n\n if (shouldRouterNav) {\n this.$router.push({\n name: 'workItem',\n params: {\n iid: this.issuableIid,\n },\n });\n } else {\n visitUrl(this.issuableLinkHref);\n }\n },\n handleRowClick(e) {\n if (this.preventRedirect) {\n this.handleIssuableItemClick(e);\n }\n },\n },\n};\n</script>\n\n<template>\n <li\n :id=\"`issuable_${issuableId}`\"\n class=\"issue !gl-flex !gl-px-5\"\n :class=\"{\n closed: issuable.closedAt,\n 'gl-bg-blue-50': isActive,\n 'gl-cursor-pointer': preventRedirect && !showCheckbox,\n 'hover:gl-bg-subtle': preventRedirect && !isActive && !showCheckbox,\n }\"\n :data-labels=\"labelIdsString\"\n :data-qa-issue-id=\"issuableId\"\n data-testid=\"issuable-item-wrapper\"\n @click=\"handleRowClick\"\n >\n <gl-form-checkbox\n v-if=\"showCheckbox\"\n class=\"gl-pr-3 gl-pt-2\"\n :checked=\"checked\"\n :data-id=\"issuableId\"\n :data-iid=\"issuableIid\"\n :data-type=\"type\"\n @input=\"$emit('checked-input', $event)\"\n >\n <span class=\"gl-sr-only\">{{ issuable.title }}</span>\n </gl-form-checkbox>\n <div class=\"issuable-main-info\">\n <div data-testid=\"issuable-title\" class=\"issue-title title gl-font-size-0\">\n <work-item-type-icon\n v-if=\"showWorkItemTypeIcon\"\n class=\"gl-mr-2\"\n :work-item-type=\"type\"\n show-tooltip-on-hover\n />\n <gl-icon\n v-if=\"issuable.confidential\"\n v-gl-tooltip\n name=\"eye-slash\"\n :title=\"__('Confidential')\"\n :aria-label=\"__('Confidential')\"\n class=\"gl-mr-2\"\n />\n <gl-icon\n v-if=\"issuable.hidden\"\n v-gl-tooltip\n name=\"spam\"\n :title=\"hiddenIssuableTitle\"\n :aria-label=\"__('Hidden')\"\n />\n <work-item-prefetch\n v-if=\"preventRedirect\"\n :work-item-iid=\"issuableIid\"\n :work-item-full-path=\"workItemFullPath\"\n data-testid=\"issuable-prefetch-trigger\"\n >\n <template #default=\"{ prefetchWorkItem, clearPrefetching }\">\n <gl-link\n :id=\"listItemUniqueId\"\n class=\"issue-title-text gl-text-base\"\n dir=\"auto\"\n :href=\"issuableLinkHref\"\n data-testid=\"issuable-title-link\"\n v-bind=\"issuableTitleProps\"\n @click.stop=\"handleIssuableItemClick\"\n @mouseover.native=\"prefetchWorkItem(issuableIid)\"\n @mouseout.native=\"clearPrefetching\"\n >\n {{ issuable.title }}\n <gl-icon v-if=\"isIssuableUrlExternal\" name=\"external-link\" class=\"gl-ml-2\" />\n </gl-link>\n </template>\n </work-item-prefetch>\n <gl-link\n v-else\n :id=\"listItemUniqueId\"\n class=\"issue-title-text gl-text-base\"\n dir=\"auto\"\n :href=\"issuableLinkHref\"\n data-testid=\"issuable-title-link\"\n v-bind=\"issuableTitleProps\"\n @click.stop=\"handleIssuableItemClick\"\n >\n {{ issuable.title }}\n <gl-icon v-if=\"isIssuableUrlExternal\" name=\"external-link\" class=\"gl-ml-2\" />\n </gl-link>\n <slot v-if=\"hasSlotContents('title-icons')\" name=\"title-icons\"></slot>\n <span\n v-if=\"taskStatus\"\n class=\"task-status gl-ml-2 gl-hidden gl-text-sm sm:!gl-inline-block\"\n data-testid=\"task-status\"\n >\n {{ taskStatus }}\n </span>\n </div>\n <div class=\"issuable-info\">\n <slot v-if=\"hasSlotContents('reference')\" name=\"reference\"></slot>\n <span v-else data-testid=\"issuable-reference\" class=\"issuable-reference\">\n {{ reference }}\n </span>\n <span class=\"gl-hidden sm:gl-inline\">\n <span aria-hidden=\"true\">·</span>\n <span class=\"issuable-authored gl-mr-3\">\n <gl-sprintf v-if=\"author.name\" :message=\"__('created %{timeAgo} by %{author}')\">\n <template #timeAgo>\n <span\n v-gl-tooltip.bottom\n :title=\"tooltipTitle(issuable.createdAt)\"\n data-testid=\"issuable-created-at\"\n >\n {{ createdAt }}\n </span>\n </template>\n <template #author>\n <span v-if=\"externalAuthor\" data-testid=\"external-author\"\n >{{ externalAuthor }} {{ __('via') }}</span\n >\n <slot v-if=\"hasSlotContents('author')\" name=\"author\"></slot>\n <gl-link\n v-else\n :data-user-id=\"authorId\"\n :data-username=\"author.username\"\n :data-name=\"author.name\"\n :data-avatar-url=\"author.avatarUrl\"\n :href=\"author.webPath\"\n data-testid=\"issuable-author\"\n class=\"author-link js-user-link gl-text-sm !gl-text-subtle\"\n @click.stop\n >\n <span class=\"author\">{{ author.name }}</span>\n </gl-link>\n </template>\n </gl-sprintf>\n <gl-sprintf v-else :message=\"__('created %{timeAgo}')\">\n <template #timeAgo>\n <span\n v-gl-tooltip.bottom\n :title=\"tooltipTitle(issuable.createdAt)\"\n data-testid=\"issuable-created-at\"\n >\n {{ createdAt }}\n </span>\n </template>\n </gl-sprintf>\n </span>\n <slot name=\"timeframe\"></slot>\n <slot name=\"target-branch\"></slot>\n </span>\n <p\n v-if=\"labels.length\"\n role=\"group\"\n :aria-label=\"__('Labels')\"\n class=\"gl-mb-0 gl-mt-1 gl-flex gl-flex-wrap gl-gap-2\"\n >\n <gl-label\n v-for=\"(label, index) in labels\"\n :key=\"index\"\n :background-color=\"label.color\"\n :title=\"labelTitle(label)\"\n :description=\"label.description\"\n :scoped=\"scopedLabel(label)\"\n :target=\"labelTarget(label)\"\n @click.stop\n />\n </p>\n </div>\n </div>\n <div class=\"issuable-meta\">\n <ul v-if=\"showIssuableMeta\" class=\"controls gl-gap-3\">\n <!-- eslint-disable-next-line @gitlab/vue-prefer-dollar-scopedslots -->\n <li v-if=\"$slots.status\" data-testid=\"issuable-status\" class=\"!gl-mr-0\">\n <gl-badge\n v-if=\"!isOpen\"\n v-gl-tooltip.top\n :variant=\"statusBadgeVariant\"\n :title=\"statusTooltip\"\n >\n <slot name=\"status\"></slot>\n </gl-badge>\n <slot v-else name=\"status\"></slot>\n </li>\n <slot name=\"pipeline-status\"></slot>\n <li v-if=\"assignees.length\" class=\"!gl-mr-0\">\n <issuable-assignees\n :assignees=\"assignees\"\n :icon-size=\"16\"\n :max-visible=\"4\"\n class=\"gl-flex gl-items-center\"\n />\n </li>\n <slot name=\"reviewers\"></slot>\n <slot name=\"approval-status\"></slot>\n <slot name=\"discussions\">\n <li\n v-if=\"showDiscussions && notesCount\"\n class=\"!gl-mr-0 gl-hidden sm:gl-inline-flex\"\n data-testid=\"issuable-comments\"\n >\n <div\n v-gl-tooltip.top\n :title=\"__('Comments')\"\n class=\"gl-flex gl-items-center !gl-text-inherit\"\n >\n <gl-icon name=\"comments\" class=\"gl-mr-2\" />\n {{ notesCount }}\n </div>\n </li>\n </slot>\n <slot name=\"statistics\"></slot>\n <work-item-relationship-icons\n v-if=\"isOpen && filteredLinkedItems.length > 0\"\n :work-item-type=\"type\"\n :linked-work-items=\"filteredLinkedItems\"\n :work-item-full-path=\"workItemFullPath\"\n :work-item-iid=\"issuableIid\"\n :work-item-web-url=\"issuableLinkHref\"\n />\n </ul>\n <div\n class=\"gl-hidden sm:gl-flex sm:gl-flex-col sm:gl-items-end md:gl-flex-row md:gl-items-center\"\n >\n <slot name=\"health-status\"></slot>\n <div\n v-gl-tooltip.bottom\n class=\"gl-text-subtle sm:gl-inline-block\"\n :title=\"tooltipTitle(timestamp)\"\n data-testid=\"issuable-timestamp\"\n >\n {{ formattedTimestamp }}\n </div>\n </div>\n </div>\n </li>\n</template>\n","import { render, staticRenderFns } from \"./issuable_item.vue?vue&type=template&id=5ed3fd3f\"\nimport script from \"./issuable_item.vue?vue&type=script&lang=js\"\nexport * from \"./issuable_item.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"issue !gl-flex !gl-px-5\",class:{\n closed: _vm.issuable.closedAt,\n 'gl-bg-blue-50': _vm.isActive,\n 'gl-cursor-pointer': _vm.preventRedirect && !_vm.showCheckbox,\n 'hover:gl-bg-subtle': _vm.preventRedirect && !_vm.isActive && !_vm.showCheckbox,\n },attrs:{\"id\":`issuable_${_vm.issuableId}`,\"data-labels\":_vm.labelIdsString,\"data-qa-issue-id\":_vm.issuableId,\"data-testid\":\"issuable-item-wrapper\"},on:{\"click\":_vm.handleRowClick}},[(_vm.showCheckbox)?_c('gl-form-checkbox',{staticClass:\"gl-pr-3 gl-pt-2\",attrs:{\"checked\":_vm.checked,\"data-id\":_vm.issuableId,\"data-iid\":_vm.issuableIid,\"data-type\":_vm.type},on:{\"input\":function($event){return _vm.$emit('checked-input', $event)}}},[_c('span',{staticClass:\"gl-sr-only\"},[_vm._v(_vm._s(_vm.issuable.title))])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"issuable-main-info\"},[_c('div',{staticClass:\"issue-title title gl-font-size-0\",attrs:{\"data-testid\":\"issuable-title\"}},[(_vm.showWorkItemTypeIcon)?_c('work-item-type-icon',{staticClass:\"gl-mr-2\",attrs:{\"work-item-type\":_vm.type,\"show-tooltip-on-hover\":\"\"}}):_vm._e(),_vm._v(\" \"),(_vm.issuable.confidential)?_c('gl-icon',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-mr-2\",attrs:{\"name\":\"eye-slash\",\"title\":_vm.__('Confidential'),\"aria-label\":_vm.__('Confidential')}}):_vm._e(),_vm._v(\" \"),(_vm.issuable.hidden)?_c('gl-icon',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],attrs:{\"name\":\"spam\",\"title\":_vm.hiddenIssuableTitle,\"aria-label\":_vm.__('Hidden')}}):_vm._e(),_vm._v(\" \"),(_vm.preventRedirect)?_c('work-item-prefetch',{attrs:{\"work-item-iid\":_vm.issuableIid,\"work-item-full-path\":_vm.workItemFullPath,\"data-testid\":\"issuable-prefetch-trigger\"},scopedSlots:_vm._u([{key:\"default\",fn:function({ prefetchWorkItem, clearPrefetching }){return [_c('gl-link',_vm._b({staticClass:\"issue-title-text gl-text-base\",attrs:{\"id\":_vm.listItemUniqueId,\"dir\":\"auto\",\"href\":_vm.issuableLinkHref,\"data-testid\":\"issuable-title-link\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.handleIssuableItemClick.apply(null, arguments)}},nativeOn:{\"mouseover\":function($event){return prefetchWorkItem(_vm.issuableIid)},\"mouseout\":function($event){return clearPrefetching.apply(null, arguments)}}},'gl-link',_vm.issuableTitleProps,false),[_vm._v(\"\\n \"+_vm._s(_vm.issuable.title)+\"\\n \"),(_vm.isIssuableUrlExternal)?_c('gl-icon',{staticClass:\"gl-ml-2\",attrs:{\"name\":\"external-link\"}}):_vm._e()],1)]}}],null,false,931522759)}):_c('gl-link',_vm._b({staticClass:\"issue-title-text gl-text-base\",attrs:{\"id\":_vm.listItemUniqueId,\"dir\":\"auto\",\"href\":_vm.issuableLinkHref,\"data-testid\":\"issuable-title-link\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.handleIssuableItemClick.apply(null, arguments)}}},'gl-link',_vm.issuableTitleProps,false),[_vm._v(\"\\n \"+_vm._s(_vm.issuable.title)+\"\\n \"),(_vm.isIssuableUrlExternal)?_c('gl-icon',{staticClass:\"gl-ml-2\",attrs:{\"name\":\"external-link\"}}):_vm._e()],1),_vm._v(\" \"),(_vm.hasSlotContents('title-icons'))?_vm._t(\"title-icons\"):_vm._e(),_vm._v(\" \"),(_vm.taskStatus)?_c('span',{staticClass:\"task-status gl-ml-2 gl-hidden gl-text-sm sm:!gl-inline-block\",attrs:{\"data-testid\":\"task-status\"}},[_vm._v(\"\\n \"+_vm._s(_vm.taskStatus)+\"\\n \")]):_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"issuable-info\"},[(_vm.hasSlotContents('reference'))?_vm._t(\"reference\"):_c('span',{staticClass:\"issuable-reference\",attrs:{\"data-testid\":\"issuable-reference\"}},[_vm._v(\"\\n \"+_vm._s(_vm.reference)+\"\\n \")]),_vm._v(\" \"),_c('span',{staticClass:\"gl-hidden sm:gl-inline\"},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"·\")]),_vm._v(\" \"),_c('span',{staticClass:\"issuable-authored gl-mr-3\"},[(_vm.author.name)?_c('gl-sprintf',{attrs:{\"message\":_vm.__('created %{timeAgo} by %{author}')},scopedSlots:_vm._u([{key:\"timeAgo\",fn:function(){return [_c('span',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.bottom\",modifiers:{\"bottom\":true}}],attrs:{\"title\":_vm.tooltipTitle(_vm.issuable.createdAt),\"data-testid\":\"issuable-created-at\"}},[_vm._v(\"\\n \"+_vm._s(_vm.createdAt)+\"\\n \")])]},proxy:true},{key:\"author\",fn:function(){return [(_vm.externalAuthor)?_c('span',{attrs:{\"data-testid\":\"external-author\"}},[_vm._v(_vm._s(_vm.externalAuthor)+\" \"+_vm._s(_vm.__('via')))]):_vm._e(),_vm._v(\" \"),(_vm.hasSlotContents('author'))?_vm._t(\"author\"):_c('gl-link',{staticClass:\"author-link js-user-link gl-text-sm !gl-text-subtle\",attrs:{\"data-user-id\":_vm.authorId,\"data-username\":_vm.author.username,\"data-name\":_vm.author.name,\"data-avatar-url\":_vm.author.avatarUrl,\"href\":_vm.author.webPath,\"data-testid\":\"issuable-author\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_c('span',{staticClass:\"author\"},[_vm._v(_vm._s(_vm.author.name))])])]},proxy:true}],null,true)}):_c('gl-sprintf',{attrs:{\"message\":_vm.__('created %{timeAgo}')},scopedSlots:_vm._u([{key:\"timeAgo\",fn:function(){return [_c('span',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.bottom\",modifiers:{\"bottom\":true}}],attrs:{\"title\":_vm.tooltipTitle(_vm.issuable.createdAt),\"data-testid\":\"issuable-created-at\"}},[_vm._v(\"\\n \"+_vm._s(_vm.createdAt)+\"\\n \")])]},proxy:true}])})],1),_vm._v(\" \"),_vm._t(\"timeframe\"),_vm._v(\" \"),_vm._t(\"target-branch\")],2),_vm._v(\" \"),(_vm.labels.length)?_c('p',{staticClass:\"gl-mb-0 gl-mt-1 gl-flex gl-flex-wrap gl-gap-2\",attrs:{\"role\":\"group\",\"aria-label\":_vm.__('Labels')}},_vm._l((_vm.labels),function(label,index){return _c('gl-label',{key:index,attrs:{\"background-color\":label.color,\"title\":_vm.labelTitle(label),\"description\":label.description,\"scoped\":_vm.scopedLabel(label),\"target\":_vm.labelTarget(label)},on:{\"click\":function($event){$event.stopPropagation();}}})}),1):_vm._e()],2)]),_vm._v(\" \"),_c('div',{staticClass:\"issuable-meta\"},[(_vm.showIssuableMeta)?_c('ul',{staticClass:\"controls gl-gap-3\"},[(_vm.$slots.status)?_c('li',{staticClass:\"!gl-mr-0\",attrs:{\"data-testid\":\"issuable-status\"}},[(!_vm.isOpen)?_c('gl-badge',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.top\",modifiers:{\"top\":true}}],attrs:{\"variant\":_vm.statusBadgeVariant,\"title\":_vm.statusTooltip}},[_vm._t(\"status\")],2):_vm._t(\"status\")],2):_vm._e(),_vm._v(\" \"),_vm._t(\"pipeline-status\"),_vm._v(\" \"),(_vm.assignees.length)?_c('li',{staticClass:\"!gl-mr-0\"},[_c('issuable-assignees',{staticClass:\"gl-flex gl-items-center\",attrs:{\"assignees\":_vm.assignees,\"icon-size\":16,\"max-visible\":4}})],1):_vm._e(),_vm._v(\" \"),_vm._t(\"reviewers\"),_vm._v(\" \"),_vm._t(\"approval-status\"),_vm._v(\" \"),_vm._t(\"discussions\",function(){return [(_vm.showDiscussions && _vm.notesCount)?_c('li',{staticClass:\"!gl-mr-0 gl-hidden sm:gl-inline-flex\",attrs:{\"data-testid\":\"issuable-comments\"}},[_c('div',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.top\",modifiers:{\"top\":true}}],staticClass:\"gl-flex gl-items-center !gl-text-inherit\",attrs:{\"title\":_vm.__('Comments')}},[_c('gl-icon',{staticClass:\"gl-mr-2\",attrs:{\"name\":\"comments\"}}),_vm._v(\"\\n \"+_vm._s(_vm.notesCount)+\"\\n \")],1)]):_vm._e()]}),_vm._v(\" \"),_vm._t(\"statistics\"),_vm._v(\" \"),(_vm.isOpen && _vm.filteredLinkedItems.length > 0)?_c('work-item-relationship-icons',{attrs:{\"work-item-type\":_vm.type,\"linked-work-items\":_vm.filteredLinkedItems,\"work-item-full-path\":_vm.workItemFullPath,\"work-item-iid\":_vm.issuableIid,\"work-item-web-url\":_vm.issuableLinkHref}}):_vm._e()],2):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"gl-hidden sm:gl-flex sm:gl-flex-col sm:gl-items-end md:gl-flex-row md:gl-items-center\"},[_vm._t(\"health-status\"),_vm._v(\" \"),_c('div',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.bottom\",modifiers:{\"bottom\":true}}],staticClass:\"gl-text-subtle sm:gl-inline-block\",attrs:{\"title\":_vm.tooltipTitle(_vm.timestamp),\"data-testid\":\"issuable-timestamp\"}},[_vm._v(\"\\n \"+_vm._s(_vm.formattedTimestamp)+\"\\n \")])],2)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_tabs.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_tabs.vue?vue&type=script&lang=js\"","<script>\nimport { GlTabs, GlTab, GlBadge } from '@gitlab/ui';\nimport { numberToMetricPrefix } from '~/lib/utils/number_utils';\nimport { formatNumber } from '~/locale';\n\nexport default {\n components: {\n GlTabs,\n GlTab,\n GlBadge,\n },\n props: {\n tabs: {\n type: Array,\n required: true,\n },\n tabCounts: {\n type: Object,\n required: false,\n default: null,\n },\n currentTab: {\n type: String,\n required: true,\n },\n truncateCounts: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n methods: {\n isTabActive(tabName) {\n return tabName === this.currentTab;\n },\n isTabCountNumeric(tab) {\n return Number.isInteger(this.tabCounts[tab.name]);\n },\n formatNumber(count) {\n return this.truncateCounts ? numberToMetricPrefix(count) : formatNumber(count);\n },\n },\n};\n</script>\n\n<template>\n <div class=\"top-area\">\n <gl-tabs\n class=\"mobile-separator issuable-state-filters gl-m-0 gl-flex gl-grow gl-p-0\"\n nav-class=\"gl-border-b-0\"\n >\n <gl-tab\n v-for=\"tab in tabs\"\n :key=\"tab.id\"\n :active=\"isTabActive(tab.name)\"\n @click=\"$emit('click', tab.name)\"\n >\n <template #title>\n <span :title=\"tab.titleTooltip\" :data-testid=\"`${tab.name}-issuables-tab`\">\n {{ tab.title }}\n </span>\n <gl-badge\n v-if=\"tabCounts && isTabCountNumeric(tab)\"\n variant=\"muted\"\n class=\"gl-tab-counter-badge\"\n >\n {{ formatNumber(tabCounts[tab.name]) }}\n </gl-badge>\n </template>\n </gl-tab>\n </gl-tabs>\n <div class=\"nav-controls\">\n <slot name=\"nav-actions\"></slot>\n </div>\n </div>\n</template>\n","import { render, staticRenderFns } from \"./issuable_tabs.vue?vue&type=template&id=4e93b1cc\"\nimport script from \"./issuable_tabs.vue?vue&type=script&lang=js\"\nexport * from \"./issuable_tabs.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"top-area\"},[_c('gl-tabs',{staticClass:\"mobile-separator issuable-state-filters gl-m-0 gl-flex gl-grow gl-p-0\",attrs:{\"nav-class\":\"gl-border-b-0\"}},_vm._l((_vm.tabs),function(tab){return _c('gl-tab',{key:tab.id,attrs:{\"active\":_vm.isTabActive(tab.name)},on:{\"click\":function($event){return _vm.$emit('click', tab.name)}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('span',{attrs:{\"title\":tab.titleTooltip,\"data-testid\":`${tab.name}-issuables-tab`}},[_vm._v(\"\\n \"+_vm._s(tab.title)+\"\\n \")]),_vm._v(\" \"),(_vm.tabCounts && _vm.isTabCountNumeric(tab))?_c('gl-badge',{staticClass:\"gl-tab-counter-badge\",attrs:{\"variant\":\"muted\"}},[_vm._v(\"\\n \"+_vm._s(_vm.formatNumber(_vm.tabCounts[tab.name]))+\"\\n \")]):_vm._e()]},proxy:true}],null,true)})}),1),_vm._v(\" \"),_c('div',{staticClass:\"nav-controls\"},[_vm._t(\"nav-actions\")],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./issuable_grid.vue?vue&type=template&id=15ef99f1\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<script>\nimport { GlAlert, GlBadge, GlKeysetPagination, GlSkeletonLoader, GlPagination } from '@gitlab/ui';\nimport EmptyResult from '~/vue_shared/components/empty_result.vue';\nimport LocalStorageSync from '~/vue_shared/components/local_storage_sync.vue';\nimport PageSizeSelector from '~/vue_shared/components/page_size_selector.vue';\nimport { updateHistory, setUrlParams } from '~/lib/utils/url_utility';\nimport { __ } from '~/locale';\nimport { DRAG_DELAY } from '~/sortable/constants';\nimport { getIdFromGraphQLId } from '~/graphql_shared/utils';\nimport FilteredSearchBar from '~/vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue';\nimport glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';\n\nimport issuableEventHub from '~/issues/list/eventhub';\nimport { DEFAULT_SKELETON_COUNT, PAGE_SIZE_STORAGE_KEY } from '../constants';\nimport IssuableBulkEditSidebar from './issuable_bulk_edit_sidebar.vue';\nimport IssuableItem from './issuable_item.vue';\nimport IssuableTabs from './issuable_tabs.vue';\nimport IssuableGrid from './issuable_grid.vue';\n\nconst VueDraggable = () => import('vuedraggable');\n\nexport default {\n vueDraggableAttributes: {\n animation: 200,\n forceFallback: true,\n ghostClass: 'gl-invisible',\n tag: 'ul',\n delay: DRAG_DELAY,\n delayOnTouchOnly: true,\n },\n components: {\n GlAlert,\n GlBadge,\n GlKeysetPagination,\n GlSkeletonLoader,\n IssuableTabs,\n FilteredSearchBar,\n IssuableItem,\n IssuableGrid,\n IssuableBulkEditSidebar,\n GlPagination,\n VueDraggable,\n PageSizeSelector,\n LocalStorageSync,\n EmptyResult,\n },\n mixins: [glFeatureFlagMixin()],\n props: {\n namespace: {\n type: String,\n required: true,\n },\n fullPath: {\n type: String,\n required: false,\n default: null,\n },\n recentSearchesStorageKey: {\n type: String,\n required: true,\n },\n searchInputPlaceholder: {\n type: String,\n required: false,\n default: __('Search or filter results…'),\n },\n searchTokens: {\n type: Array,\n required: true,\n },\n sortOptions: {\n type: Array,\n required: true,\n },\n urlParams: {\n type: Object,\n required: false,\n default: () => ({}),\n },\n initialFilterValue: {\n type: Array,\n required: false,\n default: () => [],\n },\n initialSortBy: {\n type: String,\n required: false,\n default: 'created_desc',\n },\n issuables: {\n type: Array,\n required: true,\n },\n tabs: {\n type: Array,\n required: true,\n },\n tabCounts: {\n type: Object,\n required: false,\n default: null,\n },\n truncateCounts: {\n type: Boolean,\n required: false,\n default: false,\n },\n currentTab: {\n type: String,\n required: true,\n },\n issuableSymbol: {\n type: String,\n required: false,\n default: '#',\n },\n issuablesLoading: {\n type: Boolean,\n required: false,\n default: false,\n },\n showPaginationControls: {\n type: Boolean,\n required: false,\n default: false,\n },\n showBulkEditSidebar: {\n type: Boolean,\n required: false,\n default: false,\n },\n defaultPageSize: {\n type: Number,\n required: false,\n default: 20,\n },\n totalItems: {\n type: Number,\n required: false,\n default: 0,\n },\n currentPage: {\n type: Number,\n required: false,\n default: 1,\n },\n previousPage: {\n type: Number,\n required: false,\n default: 0,\n },\n nextPage: {\n type: Number,\n required: false,\n default: 2,\n },\n hasScopedLabelsFeature: {\n type: Boolean,\n required: false,\n default: false,\n },\n labelFilterParam: {\n type: String,\n required: false,\n default: undefined,\n },\n isManualOrdering: {\n type: Boolean,\n required: false,\n default: false,\n },\n useKeysetPagination: {\n type: Boolean,\n required: false,\n default: false,\n },\n hasNextPage: {\n type: Boolean,\n required: false,\n default: false,\n },\n hasPreviousPage: {\n type: Boolean,\n required: false,\n default: false,\n },\n error: {\n type: String,\n required: false,\n default: '',\n },\n syncFilterAndSort: {\n type: Boolean,\n required: false,\n default: false,\n },\n showFilteredSearchFriendlyText: {\n type: Boolean,\n required: false,\n default: false,\n },\n showPageSizeSelector: {\n type: Boolean,\n required: false,\n default: false,\n },\n showWorkItemTypeIcon: {\n type: Boolean,\n required: false,\n default: false,\n },\n isGridView: {\n type: Boolean,\n required: false,\n default: false,\n },\n activeIssuable: {\n type: Object,\n required: false,\n default: null,\n },\n preventRedirect: {\n type: Boolean,\n required: false,\n default: false,\n },\n issuableItemClass: {\n type: String,\n required: false,\n default: '',\n },\n },\n data() {\n return {\n checkedIssuableIds: [],\n };\n },\n computed: {\n skeletonItemCount() {\n const { totalItems, defaultPageSize, currentPage } = this;\n const totalPages = Math.ceil(totalItems / defaultPageSize);\n\n if (totalPages) {\n return currentPage < totalPages\n ? defaultPageSize\n : totalItems % defaultPageSize || defaultPageSize;\n }\n return DEFAULT_SKELETON_COUNT;\n },\n allIssuablesChecked() {\n return this.checkedIssuables.length === this.issuables.length;\n },\n checkedIssuables() {\n return this.issuables.filter((issuable) => this.checkedIssuableIds.includes(issuable.id));\n },\n issuablesWrapper() {\n return this.isManualOrdering ? VueDraggable : 'ul';\n },\n gridViewFeatureEnabled() {\n return Boolean(this.glFeatures?.issuesGridView);\n },\n hasItems() {\n return this.issuables.length > 0;\n },\n },\n watch: {\n urlParams: {\n deep: true,\n immediate: true,\n handler(params) {\n if (Object.keys(params).length) {\n updateHistory({\n url: setUrlParams(params, window.location.href, true, false, true),\n title: document.title,\n replace: true,\n });\n }\n },\n },\n showBulkEditSidebar() {\n this.checkedIssuableIds = [];\n },\n },\n methods: {\n isIssuableChecked(issuable) {\n return this.checkedIssuableIds.includes(issuable.id);\n },\n updateCheckedIssuableIds(issuable, toCheck) {\n const isIdChecked = this.checkedIssuableIds.includes(issuable.id);\n if (toCheck && !isIdChecked) {\n this.checkedIssuableIds.push(issuable.id);\n }\n if (!toCheck && isIdChecked) {\n const indexToDelete = this.checkedIssuableIds.findIndex((id) => id === issuable.id);\n this.checkedIssuableIds.splice(indexToDelete, 1);\n }\n },\n handleIssuableCheckedInput(issuable, value) {\n this.updateCheckedIssuableIds(issuable, value);\n\n this.$emit('update-legacy-bulk-edit');\n issuableEventHub.$emit('issuables:issuableChecked', issuable, value);\n },\n handleAllIssuablesCheckedInput(value) {\n this.issuables.forEach((issuable) => this.updateCheckedIssuableIds(issuable, value));\n\n this.$emit('update-legacy-bulk-edit');\n },\n handleVueDraggableUpdate({ newIndex, oldIndex }) {\n this.$emit('reorder', { newIndex, oldIndex });\n },\n handlePageSizeChange(newPageSize) {\n this.$emit('page-size-change', newPageSize);\n },\n isIssuableActive(issuable) {\n return Boolean(\n getIdFromGraphQLId(issuable.id) === getIdFromGraphQLId(this.activeIssuable?.id),\n );\n },\n },\n PAGE_SIZE_STORAGE_KEY,\n};\n</script>\n\n<template>\n <div class=\"issuable-list-container\">\n <issuable-tabs\n :tabs=\"tabs\"\n :tab-counts=\"tabCounts\"\n :current-tab=\"currentTab\"\n :truncate-counts=\"truncateCounts\"\n @click=\"$emit('click-tab', $event)\"\n >\n <template #nav-actions>\n <slot name=\"nav-actions\"></slot>\n </template>\n </issuable-tabs>\n <filtered-search-bar\n :namespace=\"namespace\"\n :recent-searches-storage-key=\"recentSearchesStorageKey\"\n :search-input-placeholder=\"searchInputPlaceholder\"\n :tokens=\"searchTokens\"\n :sort-options=\"sortOptions\"\n :initial-filter-value=\"initialFilterValue\"\n :initial-sort-by=\"initialSortBy\"\n :sync-filter-and-sort=\"syncFilterAndSort\"\n :show-checkbox=\"showBulkEditSidebar\"\n :checkbox-checked=\"allIssuablesChecked\"\n :show-friendly-text=\"showFilteredSearchFriendlyText\"\n terms-as-tokens\n class=\"row-content-block gl-grow gl-border-t-0 sm:gl-flex\"\n data-testid=\"issuable-search-container\"\n @checked-input=\"handleAllIssuablesCheckedInput\"\n @onFilter=\"$emit('filter', $event)\"\n @onSort=\"$emit('sort', $event)\"\n />\n <gl-alert\n v-if=\"error\"\n variant=\"danger\"\n :class=\"{ 'gl-mt-5': !hasItems && !issuablesLoading }\"\n :dismissible=\"hasItems\"\n @dismiss=\"$emit('dismiss-alert')\"\n >\n {{ error }}\n </gl-alert>\n <issuable-bulk-edit-sidebar :expanded=\"showBulkEditSidebar\">\n <template #bulk-edit-actions>\n <slot name=\"bulk-edit-actions\" :checked-issuables=\"checkedIssuables\"></slot>\n </template>\n <template #sidebar-items>\n <slot name=\"sidebar-items\" :checked-issuables=\"checkedIssuables\"></slot>\n </template>\n </issuable-bulk-edit-sidebar>\n <slot name=\"list-body\"></slot>\n <ul v-if=\"issuablesLoading\" class=\"content-list\">\n <li v-for=\"n in skeletonItemCount\" :key=\"n\" class=\"issue !gl-px-5 !gl-py-5\">\n <gl-skeleton-loader />\n </li>\n </ul>\n <template v-else>\n <component\n :is=\"issuablesWrapper\"\n v-if=\"issuables.length > 0 && !isGridView\"\n class=\"content-list issuable-list issues-list\"\n :class=\"{ 'manual-ordering': isManualOrdering }\"\n v-bind=\"$options.vueDraggableAttributes\"\n @update=\"handleVueDraggableUpdate\"\n >\n <issuable-item\n v-for=\"issuable in issuables\"\n :key=\"issuable.id\"\n :class=\"[{ 'gl-cursor-grab': isManualOrdering }, issuableItemClass]\"\n data-testid=\"issuable-container\"\n :data-qa-issuable-title=\"issuable.title\"\n :has-scoped-labels-feature=\"hasScopedLabelsFeature\"\n :issuable-symbol=\"issuableSymbol\"\n :issuable=\"issuable\"\n :label-filter-param=\"labelFilterParam\"\n :full-path=\"fullPath\"\n :show-checkbox=\"showBulkEditSidebar\"\n :checked=\"isIssuableChecked(issuable)\"\n :show-work-item-type-icon=\"showWorkItemTypeIcon\"\n :prevent-redirect=\"preventRedirect\"\n :is-active=\"isIssuableActive(issuable)\"\n @checked-input=\"handleIssuableCheckedInput(issuable, $event)\"\n @select-issuable=\"$emit('select-issuable', $event)\"\n >\n <template #reference>\n <slot name=\"reference\" :issuable=\"issuable\"></slot>\n </template>\n <template #author>\n <slot name=\"author\" :author=\"issuable.author\"></slot>\n </template>\n <template #timeframe>\n <slot name=\"timeframe\" :issuable=\"issuable\"></slot>\n </template>\n <template #target-branch>\n <slot name=\"target-branch\" :issuable=\"issuable\"></slot>\n </template>\n <template #status>\n <slot name=\"status\" :issuable=\"issuable\"></slot>\n </template>\n <template #statistics>\n <slot name=\"statistics\" :issuable=\"issuable\"></slot>\n </template>\n <template #approval-status>\n <slot name=\"approval-status\" :issuable=\"issuable\"></slot>\n </template>\n <template #pipeline-status>\n <slot name=\"pipeline-status\" :issuable=\"issuable\"></slot>\n </template>\n <template #reviewers>\n <slot name=\"reviewers\" :issuable=\"issuable\"></slot>\n </template>\n <template #title-icons>\n <slot name=\"title-icons\" :issuable=\"issuable\"></slot>\n </template>\n <template #discussions>\n <slot name=\"discussions\" :issuable=\"issuable\"></slot>\n </template>\n <template #health-status>\n <slot name=\"health-status\" :issuable=\"issuable\"></slot>\n </template>\n </issuable-item>\n </component>\n <div v-else-if=\"issuables.length > 0 && isGridView\">\n <issuable-grid />\n </div>\n <empty-result v-else-if=\"initialFilterValue.length > 0\" />\n <slot v-else-if=\"!error\" name=\"empty-state\"></slot>\n </template>\n\n <div class=\"gl-relative gl-mt-6 gl-flex gl-justify-between md:!gl-justify-center\">\n <gl-keyset-pagination\n v-if=\"showPaginationControls && useKeysetPagination\"\n :has-next-page=\"hasNextPage\"\n :has-previous-page=\"hasPreviousPage\"\n @next=\"$emit('next-page')\"\n @prev=\"$emit('previous-page')\"\n />\n <gl-pagination\n v-else-if=\"showPaginationControls\"\n :per-page=\"defaultPageSize\"\n :total-items=\"totalItems\"\n :value=\"currentPage\"\n :prev-page=\"previousPage\"\n :next-page=\"nextPage\"\n align=\"center\"\n class=\"gl-pagination gl-mt-3\"\n @input=\"$emit('page-change', $event)\"\n />\n\n <local-storage-sync\n v-if=\"showPageSizeSelector\"\n :value=\"defaultPageSize\"\n :storage-key=\"$options.PAGE_SIZE_STORAGE_KEY\"\n @input=\"handlePageSizeChange\"\n >\n <page-size-selector\n :value=\"defaultPageSize\"\n class=\"gl-relative gl-right-0 md:gl-absolute\"\n @input=\"handlePageSizeChange\"\n />\n </local-storage-sync>\n </div>\n </div>\n</template>\n","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_list_root.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_list_root.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./issuable_list_root.vue?vue&type=template&id=a8c4ebc6\"\nimport script from \"./issuable_list_root.vue?vue&type=script&lang=js\"\nexport * from \"./issuable_list_root.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import GlButton from '../button/button';\nimport GlButtonGroup from '../button_group/button_group';\nimport GlIcon from '../icon/icon';\nimport { translate } from '../../../utils/i18n';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlKeysetPagination',\n components: {\n GlButtonGroup,\n GlButton,\n GlIcon\n },\n inheritAttrs: false,\n props: {\n // The following 4 properties match the default names of the\n // [PageInfo](https://docs.gitlab.com/ee/api/graphql/reference/index.html#pageinfo)\n // GraphQL type, allowing the returned `pageInfo` object to\n // be bound directly to this component:\n // `<gl-keyset-pagination v-bind=\"pageInfo\">`\n /**\n * Whether or not the \"Prev\" button should be enabled\n */\n hasPreviousPage: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Whether or not the \"Next\" button should be enabled\n */\n hasNextPage: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * A cursor that points to the first item in the current page.\n * Will be passed as an event parameter when the \"prev\" event is fired.\n */\n startCursor: {\n type: String,\n required: false,\n default: null\n },\n /**\n * A cursor that points to the last item in the current page.\n * Will be passed as an event parameter when the \"next\" event is fired.\n */\n endCursor: {\n type: String,\n required: false,\n default: null\n },\n /**\n * The text that will be rendered inside the \"Previous\" button.\n * It's important to provide this parameter since the default text is not translatable.\n */\n prevText: {\n type: String,\n required: false,\n default: () => translate('GlKeysetPagination.prevText', 'Previous')\n },\n /**\n * A link that will be used as the \"Prev\" button\\'s \"href\" attribute.\n * If provided, the \"Prev\" button renders as a link button; otherwise, it is rendered as a regular button.\n */\n prevButtonLink: {\n type: String,\n required: false,\n default: null\n },\n /**\n * The aria-label that needs to be set for the\n * pagination landmark region.\n */\n navigationLabel: {\n type: String,\n required: false,\n default: () => translate('GlKeysetPagination.navigationLabel', 'Pagination')\n },\n /**\n * The text that will be rendered inside the \"Next\" button.\n * It's important to provide this parameter since the default text is not translatable.\n */\n nextText: {\n type: String,\n required: false,\n default: () => translate('GlKeysetPagination.nextText', 'Next')\n },\n /**\n * A link that will be used as the \"Next\" button\\'s \"href\" attribute.\n * If provided, the \"Next\" button renders as a link button; otherwise, it is rendered as a regular button.\n */\n nextButtonLink: {\n type: String,\n required: false,\n default: null\n },\n /**\n * Whether or not both buttons should be disabled (regardless of the \"hasPreviousPage\" and \"hasNextPage\" values).\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n computed: {\n isVisible() {\n return this.hasPreviousPage || this.hasNextPage;\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isVisible)?_c('nav',{staticClass:\"gl-pagination\",attrs:{\"aria-label\":_vm.navigationLabel}},[_c('gl-button-group',_vm._g(_vm._b({staticClass:\"gl-keyset-pagination\"},'gl-button-group',_vm.$attrs,false),_vm.$listeners),[_c('gl-button',{attrs:{\"href\":_vm.prevButtonLink,\"disabled\":_vm.disabled || !_vm.hasPreviousPage,\"data-testid\":\"prevButton\",\"category\":\"tertiary\"},on:{\"click\":function($event){return _vm.$emit('prev', _vm.startCursor)}}},[_vm._t(\"previous-button-content\",function(){return [_c('div',{staticClass:\"gl-align-center gl-flex\"},[_c('gl-icon',{attrs:{\"name\":\"chevron-left\"}}),_vm._v(\"\\n \"+_vm._s(_vm.prevText)+\"\\n \")],1)]})],2),_vm._v(\" \"),_c('gl-button',{attrs:{\"href\":_vm.nextButtonLink,\"disabled\":_vm.disabled || !_vm.hasNextPage,\"data-testid\":\"nextButton\",\"category\":\"tertiary\"},on:{\"click\":function($event){return _vm.$emit('next', _vm.endCursor)}}},[_vm._t(\"next-button-content\",function(){return [_c('div',{staticClass:\"gl-align-center gl-flex\"},[_vm._v(\"\\n \"+_vm._s(_vm.nextText)+\"\\n \"),_c('gl-icon',{attrs:{\"name\":\"chevron-right\"}})],1)]})],2)],1)],1):_vm._e()};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',[_c('work-item-attribute',{staticClass:\"issuable-milestone gl-mr-3\",attrs:{\"anchor-id\":\"issuable-milestone\",\"title\":_vm.milestone.title,\"wrapper-component-class\":\"gl-text-sm !gl-text-subtle\",\"tooltip-text\":_vm.milestoneDate,\"tooltip-placement\":\"top\",\"is-link\":\"\",\"href\":_vm.milestoneLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('gl-icon',{attrs:{\"name\":\"milestone\",\"size\":12}})]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_milestone.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issuable_milestone.vue?vue&type=script&lang=js\"","<script>\nimport { GlIcon } from '@gitlab/ui';\nimport {\n getTimeRemainingInWords,\n isInFuture,\n isInPast,\n isToday,\n localeDateFormat,\n newDate,\n} from '~/lib/utils/datetime_utility';\nimport { __ } from '~/locale';\nimport WorkItemAttribute from '~/vue_shared/components/work_item_attribute.vue';\n\nexport default {\n name: 'IssuableMilestone',\n components: {\n WorkItemAttribute,\n GlIcon,\n },\n props: {\n milestone: {\n type: Object,\n required: true,\n },\n },\n computed: {\n milestoneDate() {\n if (this.milestone.dueDate) {\n const { dueDate, startDate } = this.milestone;\n const date = localeDateFormat.asDate.format(newDate(dueDate));\n const remainingTime = this.milestoneRemainingTime(dueDate, startDate);\n\n return `${date} (${remainingTime})`;\n }\n\n return __('Milestone');\n },\n milestoneLink() {\n return this.milestone.webPath || this.milestone.webUrl;\n },\n },\n methods: {\n milestoneRemainingTime(dueDate, startDate) {\n const due = newDate(dueDate);\n const start = newDate(startDate);\n\n if (dueDate && isInPast(due)) {\n return __('past due');\n }\n if (dueDate && isToday(due)) {\n return __('today');\n }\n if (startDate && isInFuture(start)) {\n return __('upcoming');\n }\n if (dueDate) {\n return getTimeRemainingInWords(due);\n }\n\n return '';\n },\n },\n};\n</script>\n\n<template>\n <span>\n <work-item-attribute\n anchor-id=\"issuable-milestone\"\n :title=\"milestone.title\"\n wrapper-component-class=\"gl-text-sm !gl-text-subtle\"\n :tooltip-text=\"milestoneDate\"\n tooltip-placement=\"top\"\n class=\"issuable-milestone gl-mr-3\"\n is-link\n :href=\"milestoneLink\"\n >\n <template #icon>\n <gl-icon name=\"milestone\" :size=\"12\" />\n </template>\n </work-item-attribute>\n </span>\n</template>\n","import { render, staticRenderFns } from \"./issuable_milestone.vue?vue&type=template&id=161e0062\"\nimport script from \"./issuable_milestone.vue?vue&type=script&lang=js\"\nexport * from \"./issuable_milestone.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import {\n TOKEN_TYPE_APPROVED_BY,\n TOKEN_TYPE_MERGE_USER,\n TOKEN_TYPE_ASSIGNEE,\n TOKEN_TYPE_AUTHOR,\n TOKEN_TYPE_REVIEWER,\n} from '~/vue_shared/components/filtered_search_bar/constants';\n\nexport const USER_TOKEN_TYPES = [\n TOKEN_TYPE_AUTHOR,\n TOKEN_TYPE_ASSIGNEE,\n TOKEN_TYPE_APPROVED_BY,\n TOKEN_TYPE_MERGE_USER,\n TOKEN_TYPE_REVIEWER,\n 'attention',\n];\n\nexport const DROPDOWN_TYPE = {\n hint: 'hint',\n operator: 'operator',\n};\n\nexport const FILTER_TYPE = {\n none: 'none',\n any: 'any',\n};\n\nexport const MAX_HISTORY_SIZE = 5;\n\nexport const FILTERED_SEARCH = {\n MERGE_REQUESTS: 'merge_requests',\n ISSUES: 'issues',\n};\n","import searchProjectsQuery from './queries/search_projects.query.graphql';\n\nexport const hasNewIssueDropdown = () => ({\n inject: ['fullPath'],\n computed: {\n newIssueDropdownQueryVariables() {\n return {\n fullPath: this.fullPath,\n };\n },\n },\n methods: {\n extractProjects(data) {\n return data?.group?.projects?.nodes;\n },\n },\n searchProjectsQuery,\n});\n","import debounce from 'lodash/debounce';\nimport isFunction from 'lodash/isFunction';\nimport range from 'lodash/range';\nimport { breakpoints, GlBreakpointInstance } from '../../../utils/breakpoints';\nimport { alignOptions, resizeDebounceTime } from '../../../utils/constants';\nimport { translate, sprintf } from '../../../utils/i18n';\nimport GlIcon from '../icon/icon';\nimport GlLink from '../link/link';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\n//\nconst pageRange = (from, to) => range(from, to + 1, 1);\nvar script = {\n name: 'Pagination',\n components: {\n GlLink,\n GlIcon\n },\n model: {\n prop: 'value',\n event: 'input'\n },\n props: {\n value: {\n type: Number,\n required: false,\n default: 1,\n validator: x => x > 0\n },\n /**\n * Number of items per page\n */\n perPage: {\n type: Number,\n required: false,\n default: 20,\n validator: x => x > 0\n },\n /**\n * Total number of items\n */\n totalItems: {\n type: Number,\n required: false,\n default: 0\n },\n /**\n * The object must contain the xs, sm, md and default keys\n */\n limits: {\n type: Object,\n required: false,\n default: () => ({\n xs: 0,\n sm: 3,\n md: 9,\n default: 9\n }),\n validator: value => {\n const missingSizes = Object.keys(breakpoints).filter(size => !value[size]).length;\n return missingSizes === 0 ? true : value.default;\n }\n },\n /**\n * A function that receives the page number and that returns a string representing the page URL\n */\n linkGen: {\n type: Function,\n required: false,\n default: null\n },\n /**\n * When using the compact pagination, use this prop to pass the previous page number\n */\n prevPage: {\n type: Number,\n required: false,\n default: null\n },\n /**\n * Text for the previous button (overridden by \"previous\" slot)\n */\n prevText: {\n type: String,\n required: false,\n default: translate('GlPagination.prevText', 'Previous')\n },\n /**\n * When using the compact pagination, use this prop to pass the next page number\n */\n nextPage: {\n type: Number,\n required: false,\n default: null\n },\n /**\n * Text for the next button (overridden by \"next\" slot)\n */\n nextText: {\n type: String,\n required: false,\n default: translate('GlPagination.nextText', 'Next')\n },\n /**\n * Text for the ellipsis (overridden by \"ellipsis-left\" and \"ellipsis-right\" slots)\n */\n ellipsisText: {\n type: String,\n required: false,\n default: '…'\n },\n /**\n * aria-label for the nav\n */\n labelNav: {\n type: String,\n required: false,\n default: translate('GlPagination.nav', 'Pagination')\n },\n /**\n * aria-label for the first page item\n */\n labelFirstPage: {\n type: String,\n required: false,\n default: translate('GlPagination.labelFirstPage', 'Go to first page')\n },\n /**\n * aria-label for the previous page item\n */\n labelPrevPage: {\n type: String,\n required: false,\n default: translate('GlPagination.labelPrevPage', 'Go to previous page')\n },\n /**\n * aria-label for the next page item\n */\n labelNextPage: {\n type: String,\n required: false,\n default: translate('GlPagination.labelNextPage', 'Go to next page')\n },\n /**\n * aria-label for the last page item\n */\n labelLastPage: {\n type: String,\n required: false,\n default: translate('GlPagination.labelLastPage', 'Go to last page')\n },\n /**\n * aria-label getter for numbered page items, defaults to \"Go to page <page_number>\"\n */\n labelPage: {\n // note: `Function` support is for legacy reasons\n type: [Function, String],\n required: false,\n default: translate('GlPagination.labelPage', 'Go to page %{page}')\n },\n /**\n * Controls the component\\'s horizontal alignment, value should be one of \"left\", \"center\", \"right\" or \"fill\"\n */\n align: {\n type: String,\n required: false,\n default: alignOptions.left,\n validator: value => Object.keys(alignOptions).includes(value)\n },\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n data() {\n return {\n breakpoint: GlBreakpointInstance.getBreakpointSize(),\n // If total pages count is below or equal to minTotalPagesToCollapse, collapsing is disabled\n minTotalPagesToCollapse: 4\n };\n },\n computed: {\n isVisible() {\n return this.totalPages > 1 || this.isCompactPagination;\n },\n isLinkBased() {\n return isFunction(this.linkGen);\n },\n paginationLimit() {\n return typeof this.limits[this.breakpoint] !== 'undefined' ? this.limits[this.breakpoint] : this.limits.default;\n },\n maxAdjacentPages() {\n return Math.max(Math.ceil((this.paginationLimit - 1) / 2), 0);\n },\n totalPages() {\n return Math.ceil(this.totalItems / this.perPage);\n },\n isFillAlign() {\n return this.align === alignOptions.fill;\n },\n wrapperClasses() {\n const classes = [];\n if (this.align === alignOptions.center) {\n classes.push('gl-justify-center');\n }\n if (this.align === alignOptions.right) {\n classes.push('gl-justify-end');\n }\n if (this.isFillAlign) {\n classes.push('gl-text-center');\n }\n return classes;\n },\n shouldCollapseLeftSide() {\n const diff = this.value - this.maxAdjacentPages;\n\n // Magic 3: prevents collapsing a single page on the left side\n return diff >= this.maxAdjacentPages && diff > 3 && this.totalPages > this.minTotalPagesToCollapse;\n },\n shouldCollapseRightSide() {\n // Magic 2: prevents collapsing a single page on the right side\n const diff = this.totalPages - 2 - this.value;\n return diff > this.maxAdjacentPages && this.totalPages > this.minTotalPagesToCollapse;\n },\n visibleItems() {\n let items = [];\n if (!this.isCompactPagination) {\n let firstPage = this.shouldCollapseLeftSide ? this.value - this.maxAdjacentPages : 1;\n // If we're on last page, show at least one page to the left\n firstPage = Math.min(firstPage, this.totalPages - 1);\n let lastPage = this.shouldCollapseRightSide ? this.value + this.maxAdjacentPages : this.totalPages;\n // If we're on first page, show at least one page to the right\n lastPage = Math.max(lastPage, 2);\n\n // Default numbered items\n items = pageRange(firstPage, lastPage).map(page => this.getPageItem(page));\n if (this.shouldCollapseLeftSide) {\n items.splice(0, 0, this.getPageItem(1, this.labelFirstPage), this.getEllipsisItem('left'));\n }\n if (this.shouldCollapseRightSide) {\n items.push(this.getEllipsisItem('right'), this.getPageItem(this.totalPages, this.labelLastPage));\n }\n }\n return items;\n },\n isCompactPagination() {\n return Boolean(!this.totalItems && (this.prevPage || this.nextPage));\n },\n prevPageIsDisabled() {\n return this.pageIsDisabled(this.value - 1);\n },\n nextPageIsDisabled() {\n return this.pageIsDisabled(this.value + 1);\n },\n prevPageAriaLabel() {\n return this.prevPageIsDisabled ? false : this.labelPrevPage || this.labelForPage(this.value - 1);\n },\n nextPageAriaLabel() {\n return this.nextPageIsDisabled ? false : this.labelNextPage || this.labelForPage(this.value + 1);\n },\n prevPageHref() {\n if (this.prevPageIsDisabled) return false;\n if (this.isLinkBased) return this.linkGen(this.value - 1);\n return '#';\n },\n nextPageHref() {\n if (this.nextPageIsDisabled) return false;\n if (this.isLinkBased) return this.linkGen(this.value + 1);\n return '#';\n }\n },\n created() {\n window.addEventListener('resize', debounce(this.setBreakpoint, resizeDebounceTime));\n },\n beforeDestroy() {\n window.removeEventListener('resize', debounce(this.setBreakpoint, resizeDebounceTime));\n },\n methods: {\n labelForPage(page) {\n if (isFunction(this.labelPage)) {\n return this.labelPage(page);\n }\n return sprintf(this.labelPage, {\n page\n });\n },\n setBreakpoint() {\n this.breakpoint = GlBreakpointInstance.getBreakpointSize();\n },\n pageIsDisabled(page) {\n return this.disabled || page < 1 || this.isCompactPagination && page > this.value && !this.nextPage || !this.isCompactPagination && page > this.totalPages;\n },\n getPageItem(page) {\n let label = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n const commonAttrs = {\n 'aria-label': label || this.labelForPage(page),\n href: '#',\n class: []\n };\n const isActivePage = page === this.value;\n const isDisabled = this.pageIsDisabled(page);\n const attrs = {\n ...commonAttrs\n };\n const listeners = {};\n if (isActivePage) {\n attrs.class.push('active');\n attrs['aria-current'] = 'page';\n }\n // Disable previous and/or next buttons if needed\n if (this.isLinkBased) {\n attrs.href = this.linkGen(page);\n }\n listeners.click = e => this.handleClick(e, page);\n return {\n content: page,\n component: isDisabled ? 'span' : GlLink,\n disabled: isDisabled,\n key: `page_${page}`,\n slot: 'page-number',\n slotData: {\n page,\n active: isActivePage,\n disabled: isDisabled\n },\n attrs,\n listeners\n };\n },\n getEllipsisItem(side) {\n return {\n content: this.ellipsisText,\n key: `ellipsis_${side}`,\n slot: `ellipsis-${side}`,\n component: 'span',\n disabled: true,\n slotData: {},\n listeners: {}\n };\n },\n handleClick(event, value) {\n if (!this.isLinkBased) {\n event.preventDefault();\n /**\n * Emitted when the page changes\n * @event input\n * @arg {number} value The page that just got loaded\n */\n this.$emit('input', value);\n }\n },\n handlePrevious(event, value) {\n this.handleClick(event, value);\n /**\n * Emitted when the \"previous\" button is clicked\n * @event previous\n */\n this.$emit('previous');\n },\n handleNext(event, value) {\n this.handleClick(event, value);\n /**\n * Emitted when the \"next\" button is clicked\n * @event next\n */\n this.$emit('next');\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isVisible)?_c('nav',{staticClass:\"gl-pagination\",attrs:{\"aria-label\":_vm.labelNav}},[_c('ul',{class:_vm.wrapperClasses},[_c('li',{class:{\n disabled: _vm.prevPageIsDisabled,\n 'gl-flex-auto': _vm.isFillAlign,\n },attrs:{\"aria-disabled\":_vm.prevPageIsDisabled,\"aria-hidden\":_vm.prevPageIsDisabled,\"data-testid\":\"gl-pagination-li\"}},[_c(_vm.prevPageIsDisabled ? 'span' : 'a',{tag:\"component\",staticClass:\"gl-pagination-item\",attrs:{\"data-testid\":\"gl-pagination-prev\",\"aria-label\":_vm.prevPageAriaLabel,\"href\":_vm.prevPageHref},on:{\"click\":function($event){!_vm.prevPageIsDisabled ? _vm.handlePrevious($event, _vm.value - 1) : null;}}},[_vm._t(\"previous\",function(){return [_c('gl-icon',{attrs:{\"name\":\"chevron-left\"}}),_vm._v(\" \"),_c('span',{staticClass:\"gl-hidden sm:gl-block\"},[_vm._v(_vm._s(_vm.prevText))])]},null,{ page: _vm.value - 1, disabled: _vm.prevPageIsDisabled })],2)],1),_vm._v(\" \"),_vm._l((_vm.visibleItems),function(item){return _c('li',{key:item.key,class:{\n disabled: item.disabled,\n 'gl-flex-auto': _vm.isFillAlign,\n },attrs:{\"data-testid\":\"gl-pagination-li\"}},[_c(item.component,_vm._g(_vm._b({tag:\"component\",staticClass:\"gl-pagination-item\",attrs:{\"data-testid\":\"gl-pagination-item\",\"size\":\"md\",\"aria-disabled\":item.disabled}},'component',item.attrs,false),item.listeners),[_vm._t(item.slot,function(){return [_vm._v(_vm._s(item.content))]},null,item.slotData)],2)],1)}),_vm._v(\" \"),_c('li',{class:{\n disabled: _vm.nextPageIsDisabled,\n 'gl-flex-auto': _vm.isFillAlign,\n },attrs:{\"aria-disabled\":_vm.nextPageIsDisabled,\"aria-hidden\":_vm.nextPageIsDisabled,\"data-testid\":\"gl-pagination-li\"}},[_c(_vm.nextPageIsDisabled ? 'span' : 'a',{tag:\"component\",staticClass:\"gl-pagination-item\",attrs:{\"data-testid\":\"gl-pagination-next\",\"aria-label\":_vm.nextPageAriaLabel,\"href\":_vm.nextPageHref},on:{\"click\":function($event){!_vm.nextPageIsDisabled ? _vm.handleNext($event, _vm.value + 1) : null;}}},[_vm._t(\"next\",function(){return [_c('span',{staticClass:\"gl-hidden sm:gl-block\"},[_vm._v(_vm._s(_vm.nextText))]),_vm._v(\" \"),_c('gl-icon',{attrs:{\"name\":\"chevron-right\"}})]},null,{ page: _vm.value + 1, disabled: _vm.nextPageIsDisabled })],2)],1)],2)]):_vm._e()};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","import $ from 'jquery';\n\nexport const canScroll = () => $(document).height() > $(window).height();\n\n/**\n * Checks if the entire page is scrolled down all the way to the bottom\n * @returns {Boolean}\n */\nexport const isScrolledToBottom = () => {\n // Use clientHeight to account for any horizontal scrollbar.\n const { scrollHeight, scrollTop, clientHeight } = document.documentElement;\n\n // scrollTop can be a float, so round up to next integer.\n return Math.ceil(scrollTop + clientHeight) >= scrollHeight;\n};\n\n/**\n * Checks if page is scrolled to the top\n * @returns {Boolean}\n */\nexport const isScrolledToTop = () => $(document).scrollTop() === 0;\n\nexport const scrollDown = () => {\n const $document = $(document);\n $document.scrollTop($document.height());\n};\n\nexport const scrollUp = () => {\n $(document).scrollTop(0);\n};\n","import { __ } from '~/locale';\n\nexport const RESOURCE_TYPE_ISSUE = 'issue';\nexport const RESOURCE_TYPE_MERGE_REQUEST = 'merge-request';\nexport const RESOURCE_TYPE_MILESTONE = 'milestone';\n\nexport const RESOURCE_TYPES = [\n RESOURCE_TYPE_ISSUE,\n RESOURCE_TYPE_MERGE_REQUEST,\n RESOURCE_TYPE_MILESTONE,\n];\n\nexport const RESOURCE_OPTIONS = {\n [RESOURCE_TYPE_ISSUE]: {\n path: 'issues/new',\n label: __('issue'),\n },\n [RESOURCE_TYPE_MERGE_REQUEST]: {\n path: 'merge_requests/new',\n label: __('merge request'),\n },\n [RESOURCE_TYPE_MILESTONE]: {\n path: 'milestones/new',\n label: __('milestone'),\n },\n};\n","export const RECENT_SEARCHES_STORAGE_KEY_GROUPS = 'groups';\nexport const RECENT_SEARCHES_STORAGE_KEY_PROJECTS = 'projects';\n\nexport default {\n issues: 'issue-recent-searches',\n merge_requests: 'merge-request-recent-searches',\n group_members: 'group-members-recent-searches',\n group_invited_members: 'group-invited-members-recent-searches',\n project_members: 'project-members-recent-searches',\n project_group_links: 'project-group-links-recent-searches',\n [RECENT_SEARCHES_STORAGE_KEY_GROUPS]: 'groups-recent-searches',\n [RECENT_SEARCHES_STORAGE_KEY_PROJECTS]: 'projects-recent-searches',\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.issuesDrawerEnabled)?_c('work-item-drawer',{attrs:{\"open\":_vm.isIssuableSelected,\"active-item\":_vm.activeIssuable,\"issuable-type\":_vm.$options.issuableType,\"click-outside-exclude-selector\":\".issuable-list\"},on:{\"close\":function($event){_vm.activeIssuable = null},\"work-item-updated\":_vm.updateIssuablesCache,\"work-item-emoji-updated\":_vm.updateIssuableEmojis,\"addChild\":_vm.refetchIssuables,\"deleteWorkItemError\":function($event){_vm.issuesError = _vm.__('An error occurred while deleting an issuable.')},\"workItemDeleted\":_vm.deleteIssuable,\"promotedToObjective\":_vm.promoteToObjective,\"workItemTypeChanged\":function($event){return _vm.updateIssuablesCache($event)}}}):_vm._e(),_vm._v(\" \"),(_vm.hasAnyIssues)?_c('issuable-list',{attrs:{\"namespace\":_vm.fullPath,\"full-path\":_vm.fullPath,\"recent-searches-storage-key\":\"issues\",\"search-tokens\":_vm.searchTokens,\"has-scoped-labels-feature\":_vm.hasScopedLabelsFeature,\"initial-filter-value\":_vm.filterTokens,\"sort-options\":_vm.sortOptions,\"initial-sort-by\":_vm.sortKey,\"issuables\":_vm.issues,\"error\":_vm.issuesError,\"label-filter-param\":\"label_name\",\"tabs\":_vm.$options.issuableListTabs,\"current-tab\":_vm.state,\"tab-counts\":_vm.tabCounts,\"truncate-counts\":!_vm.isProject,\"issuables-loading\":_vm.isLoading,\"is-manual-ordering\":_vm.isManualOrdering,\"show-bulk-edit-sidebar\":_vm.showBulkEditSidebar,\"show-pagination-controls\":_vm.showPaginationControls,\"default-page-size\":_vm.pageSize,\"show-filtered-search-friendly-text\":\"\",\"sync-filter-and-sort\":\"\",\"use-keyset-pagination\":\"\",\"show-page-size-selector\":_vm.showPageSizeSelector,\"has-next-page\":_vm.pageInfo.hasNextPage,\"has-previous-page\":_vm.pageInfo.hasPreviousPage,\"is-grid-view\":_vm.isGridView,\"active-issuable\":_vm.activeIssuable,\"show-work-item-type-icon\":\"\",\"prevent-redirect\":_vm.issuesDrawerEnabled},on:{\"click-tab\":_vm.handleClickTab,\"dismiss-alert\":_vm.handleDismissAlert,\"filter\":_vm.handleFilter,\"next-page\":_vm.handleNextPage,\"previous-page\":_vm.handlePreviousPage,\"reorder\":_vm.handleReorder,\"sort\":_vm.handleSort,\"update-legacy-bulk-edit\":_vm.handleUpdateLegacyBulkEdit,\"page-size-change\":_vm.handlePageSizeChange,\"select-issuable\":_vm.handleSelectIssuable},scopedSlots:_vm._u([{key:\"nav-actions\",fn:function(){return [_c('div',{staticClass:\"gl-flex gl-gap-3\"},[(_vm.gridViewFeatureEnabled)?_c('local-storage-sync',{attrs:{\"value\":_vm.viewType,\"storage-key\":_vm.$options.ISSUES_VIEW_TYPE_KEY},on:{\"input\":_vm.switchViewType}},[_c('gl-button-group',[_c('gl-button',{attrs:{\"variant\":_vm.isGridView ? 'default' : 'confirm',\"data-testid\":\"list-view-type\"},on:{\"click\":function($event){return _vm.switchViewType(_vm.$options.ISSUES_LIST_VIEW_KEY)}}},[_vm._v(\"\\n \"+_vm._s(_vm.__('List'))+\"\\n \")]),_vm._v(\" \"),_c('gl-button',{attrs:{\"variant\":_vm.isGridView ? 'confirm' : 'default',\"data-testid\":\"grid-view-type\"},on:{\"click\":function($event){return _vm.switchViewType(_vm.$options.ISSUES_GRID_VIEW_KEY)}}},[_vm._v(\"\\n \"+_vm._s(_vm.__('Grid'))+\"\\n \")])],1)],1):_vm._e(),_vm._v(\" \"),(_vm.canBulkUpdate)?_c('gl-button',{staticClass:\"gl-shrink-0 gl-grow\",attrs:{\"disabled\":_vm.isBulkEditButtonDisabled},on:{\"click\":_vm.handleBulkUpdateClick}},[_vm._v(\"\\n \"+_vm._s(_vm.__('Bulk edit'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_vm._t(\"new-issuable-button\",function(){return [(_vm.showNewIssueLink)?_c('gl-button',{staticClass:\"gl-grow\",attrs:{\"href\":_vm.newIssuePath,\"variant\":\"confirm\"}},[_vm._v(\"\\n \"+_vm._s(_vm.__('New issue'))+\"\\n \")]):_vm._e()]}),_vm._v(\" \"),(_vm.showNewIssueDropdown)?_c('new-resource-dropdown',{attrs:{\"query\":_vm.$options.searchProjectsQuery,\"query-variables\":_vm.newIssueDropdownQueryVariables,\"extract-projects\":_vm.extractProjects,\"group-id\":_vm.groupId}}):_vm._e(),_vm._v(\" \"),_c('gl-disclosure-dropdown',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",value:(_vm.$options.i18n.actionsLabel),expression:\"$options.i18n.actionsLabel\",modifiers:{\"hover\":true}}],staticClass:\"!gl-w-7\",attrs:{\"category\":\"tertiary\",\"icon\":\"ellipsis_v\",\"no-caret\":\"\",\"toggle-text\":_vm.$options.i18n.actionsLabel,\"text-sr-only\":\"\",\"data-testid\":\"issues-list-more-actions-dropdown\",\"toggle-class\":\"!gl-m-0 gl-h-full\"}},[(_vm.showCsvButtons)?_c('csv-import-export-buttons',{attrs:{\"export-csv-path\":_vm.exportCsvPathWithQuery,\"issuable-count\":_vm.currentTabCount}}):_vm._e(),_vm._v(\" \"),_c('gl-disclosure-dropdown-group',{attrs:{\"bordered\":_vm.showCsvButtons,\"group\":_vm.subscribeDropdownOptions}})],1)],2)]},proxy:true},{key:\"timeframe\",fn:function({ issuable = {} }){return [_c('issue-card-time-info',{attrs:{\"issue\":issuable}})]}},{key:\"status\",fn:function({ issuable = {} }){return [_vm._v(\"\\n \"+_vm._s(_vm.getStatus(issuable))+\"\\n \")]}},{key:\"statistics\",fn:function({ issuable = {} }){return [_c('issue-card-statistics',{attrs:{\"issue\":issuable}})]}},{key:\"empty-state\",fn:function(){return [_c('empty-state-with-any-issues',{attrs:{\"has-search\":_vm.hasSearch,\"is-open-tab\":_vm.isOpenTab}})]},proxy:true},{key:\"list-body\",fn:function(){return [_vm._t(\"list-body\")]},proxy:true},{key:\"title-icons\",fn:function({ issuable }){return [_vm._t(\"title-icons\",null,null,{ issuable, apiFilterParams: _vm.apiFilterParams })]}}],null,true)}):_c('empty-state-without-any-issues',{attrs:{\"current-tab-count\":_vm.currentTabCount,\"export-csv-path-with-query\":_vm.exportCsvPathWithQuery,\"show-csv-buttons\":_vm.showCsvButtons,\"show-new-issue-dropdown\":_vm.showNewIssueDropdown}}),_vm._v(\" \"),(_vm.showIssuableByEmail)?_c('issuable-by-email',{staticClass:\"gl-pb-7 gl-pt-5 gl-text-center\",attrs:{\"data-track-action\":\"click_email_issue_project_issues_empty_list_page\",\"data-track-label\":\"email_issue_project_issues_empty_list\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<script>\nimport {\n GlButton,\n GlButtonGroup,\n GlDisclosureDropdown,\n GlDisclosureDropdownGroup,\n GlFilteredSearchToken,\n GlTooltipDirective,\n} from '@gitlab/ui';\n\nimport produce from 'immer';\nimport fuzzaldrinPlus from 'fuzzaldrin-plus';\nimport { isEmpty } from 'lodash';\nimport * as Sentry from '~/sentry/sentry_browser_wrapper';\nimport IssueCardStatistics from 'ee_else_ce/issues/list/components/issue_card_statistics.vue';\nimport IssueCardTimeInfo from 'ee_else_ce/issues/list/components/issue_card_time_info.vue';\nimport getIssuesQuery from 'ee_else_ce/issues/list/queries/get_issues.query.graphql';\nimport getIssuesCountsQuery from 'ee_else_ce/issues/list/queries/get_issues_counts.query.graphql';\nimport {\n convertToApiParams,\n convertToSearchQuery,\n convertToUrlParams,\n deriveSortKey,\n getDefaultWorkItemTypes,\n getFilterTokens,\n getInitialPageParams,\n getSortOptions,\n getTypeTokenOptions,\n groupMultiSelectFilterTokens,\n mapWorkItemWidgetsToIssuableFields,\n updateUpvotesCount,\n} from 'ee_else_ce/issues/list/utils';\nimport LocalStorageSync from '~/vue_shared/components/local_storage_sync.vue';\nimport { createAlert, VARIANT_INFO } from '~/alert';\nimport { TYPENAME_USER } from '~/graphql_shared/constants';\nimport CsvImportExportButtons from '~/issuable/components/csv_import_export_buttons.vue';\nimport { convertToGraphQLId, getIdFromGraphQLId } from '~/graphql_shared/utils';\nimport IssuableByEmail from '~/issuable/components/issuable_by_email.vue';\nimport {\n STATUS_ALL,\n STATUS_CLOSED,\n STATUS_OPEN,\n WORKSPACE_GROUP,\n WORKSPACE_PROJECT,\n TYPE_ISSUE,\n} from '~/issues/constants';\nimport axios from '~/lib/utils/axios_utils';\nimport { fetchPolicies } from '~/lib/graphql';\nimport { isPositiveInteger } from '~/lib/utils/number_utils';\nimport { scrollUp } from '~/lib/utils/scroll_utils';\nimport {\n getParameterByName,\n joinPaths,\n removeParams,\n updateHistory,\n} from '~/lib/utils/url_utility';\nimport { __ } from '~/locale';\nimport {\n OPERATORS_IS,\n OPERATORS_IS_NOT_OR,\n OPERATORS_AFTER_BEFORE,\n TOKEN_TITLE_ASSIGNEE,\n TOKEN_TITLE_AUTHOR,\n TOKEN_TITLE_CONFIDENTIAL,\n TOKEN_TITLE_CONTACT,\n TOKEN_TITLE_LABEL,\n TOKEN_TITLE_MILESTONE,\n TOKEN_TITLE_MY_REACTION,\n TOKEN_TITLE_ORGANIZATION,\n TOKEN_TITLE_RELEASE,\n TOKEN_TITLE_SEARCH_WITHIN,\n TOKEN_TITLE_TYPE,\n TOKEN_TITLE_CREATED,\n TOKEN_TITLE_CLOSED,\n TOKEN_TYPE_ASSIGNEE,\n TOKEN_TYPE_AUTHOR,\n TOKEN_TYPE_CONFIDENTIAL,\n TOKEN_TYPE_CONTACT,\n TOKEN_TYPE_LABEL,\n TOKEN_TYPE_MILESTONE,\n TOKEN_TYPE_MY_REACTION,\n TOKEN_TYPE_ORGANIZATION,\n TOKEN_TYPE_RELEASE,\n TOKEN_TYPE_SEARCH_WITHIN,\n TOKEN_TYPE_TYPE,\n TOKEN_TYPE_CREATED,\n TOKEN_TYPE_CLOSED,\n} from '~/vue_shared/components/filtered_search_bar/constants';\nimport IssuableList from '~/vue_shared/issuable/list/components/issuable_list_root.vue';\nimport { DEFAULT_PAGE_SIZE, issuableListTabs } from '~/vue_shared/issuable/list/constants';\nimport glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';\nimport NewResourceDropdown from '~/vue_shared/components/new_resource_dropdown/new_resource_dropdown.vue';\nimport {\n WORK_ITEM_TYPE_ENUM_OBJECTIVE,\n DETAIL_VIEW_QUERY_PARAM_NAME,\n} from '~/work_items/constants';\nimport WorkItemDrawer from '~/work_items/components/work_item_drawer.vue';\nimport { makeDrawerUrlParam } from '~/work_items/utils';\nimport {\n CREATED_DESC,\n i18n,\n ISSUE_REFERENCE,\n ISSUES_GRID_VIEW_KEY,\n ISSUES_LIST_VIEW_KEY,\n ISSUES_VIEW_TYPE_KEY,\n MAX_LIST_SIZE,\n PARAM_FIRST_PAGE_SIZE,\n PARAM_LAST_PAGE_SIZE,\n PARAM_PAGE_AFTER,\n PARAM_PAGE_BEFORE,\n PARAM_SORT,\n PARAM_STATE,\n RELATIVE_POSITION_ASC,\n UPDATED_DESC,\n urlSortParams,\n} from '../constants';\nimport eventHub from '../eventhub';\nimport reorderIssuesMutation from '../queries/reorder_issues.mutation.graphql';\nimport searchLabelsQuery from '../queries/search_labels.query.graphql';\nimport setSortPreferenceMutation from '../queries/set_sort_preference.mutation.graphql';\nimport { hasNewIssueDropdown } from '../has_new_issue_dropdown_mixin';\nimport EmptyStateWithAnyIssues from './empty_state_with_any_issues.vue';\nimport EmptyStateWithoutAnyIssues from './empty_state_without_any_issues.vue';\n\nconst UserToken = () => import('~/vue_shared/components/filtered_search_bar/tokens/user_token.vue');\nconst EmojiToken = () =>\n import('~/vue_shared/components/filtered_search_bar/tokens/emoji_token.vue');\nconst LabelToken = () =>\n import('~/vue_shared/components/filtered_search_bar/tokens/label_token.vue');\nconst MilestoneToken = () =>\n import('~/vue_shared/components/filtered_search_bar/tokens/milestone_token.vue');\nconst ReleaseToken = () =>\n import('~/vue_shared/components/filtered_search_bar/tokens/release_token.vue');\nconst CrmContactToken = () =>\n import('~/vue_shared/components/filtered_search_bar/tokens/crm_contact_token.vue');\nconst CrmOrganizationToken = () =>\n import('~/vue_shared/components/filtered_search_bar/tokens/crm_organization_token.vue');\nconst DateToken = () => import('~/vue_shared/components/filtered_search_bar/tokens/date_token.vue');\n\nexport default {\n name: 'IssuesListAppCE',\n i18n,\n issuableListTabs,\n issuableType: TYPE_ISSUE.toUpperCase(),\n ISSUES_VIEW_TYPE_KEY,\n ISSUES_GRID_VIEW_KEY,\n ISSUES_LIST_VIEW_KEY,\n components: {\n CsvImportExportButtons,\n GlDisclosureDropdown,\n GlDisclosureDropdownGroup,\n EmptyStateWithAnyIssues,\n EmptyStateWithoutAnyIssues,\n GlButton,\n GlButtonGroup,\n IssuableByEmail,\n IssuableList,\n IssueCardStatistics,\n IssueCardTimeInfo,\n NewResourceDropdown,\n LocalStorageSync,\n WorkItemDrawer,\n },\n directives: {\n GlTooltip: GlTooltipDirective,\n },\n mixins: [glFeatureFlagMixin(), hasNewIssueDropdown()],\n inject: [\n 'autocompleteAwardEmojisPath',\n 'calendarPath',\n 'canBulkUpdate',\n 'canCreateIssue',\n 'canReadCrmContact',\n 'canReadCrmOrganization',\n 'exportCsvPath',\n 'fullPath',\n 'hasAnyIssues',\n 'hasAnyProjects',\n 'hasBlockedIssuesFeature',\n 'hasIssuableHealthStatusFeature',\n 'hasIssueDateFilterFeature',\n 'hasIssueWeightsFeature',\n 'hasOkrsFeature',\n 'hasQualityManagementFeature',\n 'hasScopedLabelsFeature',\n 'initialEmail',\n 'initialSort',\n 'isIssueRepositioningDisabled',\n 'isProject',\n 'isPublicVisibilityRestricted',\n 'isSignedIn',\n 'newIssuePath',\n 'releasesPath',\n 'rssPath',\n 'showNewIssueLink',\n 'groupId',\n ],\n props: {\n eeSearchTokens: {\n type: Array,\n required: false,\n default: () => [],\n },\n },\n data() {\n return {\n exportCsvPathWithQuery: this.getExportCsvPathWithQuery(),\n filterTokens: [],\n issues: [],\n issuesCounts: {},\n issuesError: null,\n pageInfo: {},\n pageParams: {},\n showBulkEditSidebar: false,\n sortKey: CREATED_DESC,\n state: STATUS_OPEN,\n pageSize: DEFAULT_PAGE_SIZE,\n viewType: ISSUES_LIST_VIEW_KEY,\n subscribeDropdownOptions: {\n items: [\n {\n text: __('Subscribe to RSS feed'),\n href: this.rssPath,\n extraAttrs: { 'data-testid': 'subscribe-rss' },\n },\n {\n text: __('Subscribe to calendar'),\n href: this.calendarPath,\n extraAttrs: { 'data-testid': 'subscribe-calendar' },\n },\n ],\n },\n activeIssuable: null,\n };\n },\n apollo: {\n issues: {\n query: getIssuesQuery,\n variables() {\n return this.queryVariables;\n },\n update(data) {\n return data[this.namespace]?.issues.nodes ?? [];\n },\n fetchPolicy: fetchPolicies.CACHE_AND_NETWORK,\n nextFetchPolicy: fetchPolicies.CACHE_FIRST,\n // We need this for handling loading state when using frontend cache\n // See https://gitlab.com/gitlab-org/gitlab/-/merge_requests/106004#note_1217325202 for details\n notifyOnNetworkStatusChange: true,\n result({ data }) {\n if (!data) {\n return;\n }\n this.pageInfo = data[this.namespace]?.issues.pageInfo ?? {};\n this.exportCsvPathWithQuery = this.getExportCsvPathWithQuery();\n this.checkDrawerParams();\n },\n error(error) {\n this.issuesError = this.$options.i18n.errorFetchingIssues;\n Sentry.captureException(error);\n },\n skip() {\n return !this.hasAnyIssues || isEmpty(this.pageParams);\n },\n },\n issuesCounts: {\n query: getIssuesCountsQuery,\n variables() {\n return this.queryVariables;\n },\n update(data) {\n return data[this.namespace] ?? {};\n },\n error(error) {\n this.issuesError = this.$options.i18n.errorFetchingCounts;\n Sentry.captureException(error);\n },\n skip() {\n return !this.hasAnyIssues || isEmpty(this.pageParams);\n },\n },\n },\n computed: {\n queryVariables() {\n const isIidSearch = ISSUE_REFERENCE.test(this.searchQuery);\n return {\n fullPath: this.fullPath,\n hideUsers: this.isPublicVisibilityRestricted && !this.isSignedIn,\n iid: isIidSearch ? this.searchQuery.slice(1) : undefined,\n isProject: this.isProject,\n isSignedIn: this.isSignedIn,\n sort: this.sortKey,\n state: this.state,\n ...this.pageParams,\n ...this.apiFilterParams,\n search: isIidSearch ? undefined : this.searchQuery,\n types: this.apiFilterParams.types || this.defaultWorkItemTypes,\n };\n },\n namespace() {\n return this.isProject ? WORKSPACE_PROJECT : WORKSPACE_GROUP;\n },\n defaultWorkItemTypes() {\n return getDefaultWorkItemTypes({\n hasOkrsFeature: this.hasOkrsFeature,\n hasQualityManagementFeature: this.hasQualityManagementFeature,\n });\n },\n hasSearch() {\n return Boolean(\n this.searchQuery ||\n Object.keys(this.urlFilterParams).length ||\n this.pageParams.afterCursor ||\n this.pageParams.beforeCursor,\n );\n },\n isBulkEditButtonDisabled() {\n return this.showBulkEditSidebar || !this.issues.length;\n },\n isManualOrdering() {\n return this.sortKey === RELATIVE_POSITION_ASC;\n },\n isOpenTab() {\n return this.state === STATUS_OPEN;\n },\n showCsvButtons() {\n return this.isProject && this.isSignedIn;\n },\n showIssuableByEmail() {\n return this.initialEmail && this.canCreateIssue;\n },\n showNewIssueDropdown() {\n return !this.isProject && this.hasAnyProjects;\n },\n apiFilterParams() {\n return convertToApiParams(this.filterTokens);\n },\n urlFilterParams() {\n return convertToUrlParams(this.filterTokens);\n },\n searchQuery() {\n return convertToSearchQuery(this.filterTokens);\n },\n searchTokens() {\n const preloadedUsers = [];\n\n if (gon.current_user_id) {\n preloadedUsers.push({\n id: convertToGraphQLId(TYPENAME_USER, gon.current_user_id),\n name: gon.current_user_fullname,\n username: gon.current_username,\n avatar_url: gon.current_user_avatar_url,\n });\n }\n\n const tokens = [\n {\n type: TOKEN_TYPE_SEARCH_WITHIN,\n title: TOKEN_TITLE_SEARCH_WITHIN,\n icon: 'search',\n token: GlFilteredSearchToken,\n unique: true,\n operators: OPERATORS_IS,\n options: [\n { icon: 'title', value: 'TITLE', title: this.$options.i18n.titles },\n {\n icon: 'text-description',\n value: 'DESCRIPTION',\n title: this.$options.i18n.descriptions,\n },\n ],\n },\n {\n type: TOKEN_TYPE_AUTHOR,\n title: TOKEN_TITLE_AUTHOR,\n icon: 'pencil',\n token: UserToken,\n dataType: 'user',\n defaultUsers: [],\n operators: OPERATORS_IS_NOT_OR,\n fullPath: this.fullPath,\n isProject: this.isProject,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-author`,\n preloadedUsers,\n multiSelect: true,\n },\n {\n type: TOKEN_TYPE_ASSIGNEE,\n title: TOKEN_TITLE_ASSIGNEE,\n icon: 'user',\n token: UserToken,\n dataType: 'user',\n operators: OPERATORS_IS_NOT_OR,\n fullPath: this.fullPath,\n isProject: this.isProject,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-assignee`,\n preloadedUsers,\n multiSelect: true,\n },\n {\n type: TOKEN_TYPE_MILESTONE,\n title: TOKEN_TITLE_MILESTONE,\n icon: 'milestone',\n token: MilestoneToken,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-milestone`,\n shouldSkipSort: true,\n fullPath: this.fullPath,\n isProject: this.isProject,\n },\n {\n type: TOKEN_TYPE_LABEL,\n title: TOKEN_TITLE_LABEL,\n icon: 'labels',\n token: LabelToken,\n operators: OPERATORS_IS_NOT_OR,\n fetchLabels: this.fetchLabels,\n fetchLatestLabels: this.glFeatures.frontendCaching ? this.fetchLatestLabels : null,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-label`,\n multiSelect: true,\n },\n {\n type: TOKEN_TYPE_TYPE,\n title: TOKEN_TITLE_TYPE,\n icon: 'issues',\n token: GlFilteredSearchToken,\n options: this.typeTokenOptions,\n },\n ];\n\n if (this.isProject) {\n tokens.push({\n type: TOKEN_TYPE_RELEASE,\n title: TOKEN_TITLE_RELEASE,\n icon: 'rocket',\n token: ReleaseToken,\n fetchReleases: this.fetchReleases,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-release`,\n });\n }\n\n if (this.isSignedIn) {\n tokens.push({\n type: TOKEN_TYPE_MY_REACTION,\n title: TOKEN_TITLE_MY_REACTION,\n icon: 'thumb-up',\n token: EmojiToken,\n unique: true,\n fetchEmojis: this.fetchEmojis,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-my_reaction`,\n });\n\n tokens.push({\n type: TOKEN_TYPE_CONFIDENTIAL,\n title: TOKEN_TITLE_CONFIDENTIAL,\n icon: 'eye-slash',\n token: GlFilteredSearchToken,\n unique: true,\n operators: OPERATORS_IS,\n options: [\n { icon: 'eye-slash', value: 'yes', title: this.$options.i18n.confidentialYes },\n { icon: 'eye', value: 'no', title: this.$options.i18n.confidentialNo },\n ],\n });\n\n if (this.hasIssueDateFilterFeature) {\n tokens.push({\n type: TOKEN_TYPE_CREATED,\n title: TOKEN_TITLE_CREATED,\n icon: 'history',\n token: DateToken,\n operators: OPERATORS_AFTER_BEFORE,\n });\n\n tokens.push({\n type: TOKEN_TYPE_CLOSED,\n title: TOKEN_TITLE_CLOSED,\n icon: 'history',\n token: DateToken,\n operators: OPERATORS_AFTER_BEFORE,\n });\n }\n }\n\n if (this.canReadCrmContact) {\n tokens.push({\n type: TOKEN_TYPE_CONTACT,\n title: TOKEN_TITLE_CONTACT,\n icon: 'user',\n token: CrmContactToken,\n fullPath: this.fullPath,\n isProject: this.isProject,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-crm-contacts`,\n operators: OPERATORS_IS,\n unique: true,\n });\n }\n\n if (this.canReadCrmOrganization) {\n tokens.push({\n type: TOKEN_TYPE_ORGANIZATION,\n title: TOKEN_TITLE_ORGANIZATION,\n icon: 'users',\n token: CrmOrganizationToken,\n fullPath: this.fullPath,\n isProject: this.isProject,\n recentSuggestionsStorageKey: `${this.fullPath}-issues-recent-tokens-crm-organizations`,\n operators: OPERATORS_IS,\n unique: true,\n });\n }\n\n if (this.eeSearchTokens.length) {\n tokens.push(...this.eeSearchTokens);\n }\n\n tokens.sort((a, b) => a.title.localeCompare(b.title));\n\n return tokens;\n },\n showPaginationControls() {\n return !this.isLoading && (this.pageInfo.hasNextPage || this.pageInfo.hasPreviousPage);\n },\n showPageSizeSelector() {\n return this.issues.length > 0;\n },\n sortOptions() {\n return getSortOptions({\n hasBlockedIssuesFeature: this.hasBlockedIssuesFeature,\n hasIssuableHealthStatusFeature: this.hasIssuableHealthStatusFeature,\n hasIssueWeightsFeature: this.hasIssueWeightsFeature,\n });\n },\n tabCounts() {\n const { openedIssues, closedIssues, allIssues } = this.issuesCounts;\n return {\n [STATUS_OPEN]: openedIssues?.count,\n [STATUS_CLOSED]: closedIssues?.count,\n [STATUS_ALL]: allIssues?.count,\n };\n },\n typeTokenOptions() {\n return getTypeTokenOptions({\n hasOkrsFeature: this.hasOkrsFeature,\n hasQualityManagementFeature: this.hasQualityManagementFeature,\n });\n },\n currentTabCount() {\n return this.tabCounts[this.state] ?? 0;\n },\n urlParams() {\n const show = this.activeIssuable\n ? makeDrawerUrlParam(this.activeIssuable, this.fullPath)\n : undefined;\n const base = {\n sort: urlSortParams[this.sortKey],\n state: this.state,\n ...this.urlFilterParams,\n first_page_size: this.pageParams.firstPageSize,\n last_page_size: this.pageParams.lastPageSize,\n page_after: this.pageParams.afterCursor ?? undefined,\n page_before: this.pageParams.beforeCursor ?? undefined,\n };\n if (show) {\n return { ...base, show };\n }\n return base;\n },\n // due to the issues with cache-and-network, we need this hack to check if there is any data for the query in the cache.\n // if we have cached data, we disregard the loading state\n isLoading() {\n return (\n this.$apollo.queries.issues.loading &&\n !this.$apollo.provider.clients.defaultClient.readQuery({\n query: getIssuesQuery,\n variables: this.queryVariables,\n })\n );\n },\n gridViewFeatureEnabled() {\n return Boolean(this.glFeatures?.issuesGridView);\n },\n isGridView() {\n return this.viewType === ISSUES_GRID_VIEW_KEY;\n },\n isIssuableSelected() {\n return !isEmpty(this.activeIssuable);\n },\n issuesDrawerEnabled() {\n return this.glFeatures?.issuesListDrawer;\n },\n },\n watch: {\n $route(newValue, oldValue) {\n if (newValue.fullPath !== oldValue.fullPath) {\n this.updateData(getParameterByName(PARAM_SORT));\n }\n if (newValue.query.show) {\n this.checkDrawerParams();\n } else {\n this.activeIssuable = null;\n }\n },\n },\n created() {\n this.updateData(this.initialSort);\n this.cache = {};\n },\n mounted() {\n eventHub.$on('issuables:toggleBulkEdit', this.toggleBulkEditSidebar);\n },\n beforeDestroy() {\n eventHub.$off('issuables:toggleBulkEdit', this.toggleBulkEditSidebar);\n },\n methods: {\n // eslint-disable-next-line max-params\n fetchWithCache(path, cacheName, searchKey, search) {\n if (this.cache[cacheName]) {\n const data = search\n ? fuzzaldrinPlus.filter(this.cache[cacheName], search, { key: searchKey })\n : this.cache[cacheName].slice(0, MAX_LIST_SIZE);\n return Promise.resolve(data);\n }\n\n return axios.get(path).then(({ data }) => {\n this.cache[cacheName] = data;\n return data.slice(0, MAX_LIST_SIZE);\n });\n },\n fetchEmojis(search) {\n return this.fetchWithCache(this.autocompleteAwardEmojisPath, 'emojis', 'name', search);\n },\n fetchReleases(search) {\n return this.fetchWithCache(this.releasesPath, 'releases', 'tag', search);\n },\n fetchLabelsWithFetchPolicy(search, fetchPolicy = fetchPolicies.CACHE_FIRST) {\n return this.$apollo\n .query({\n query: searchLabelsQuery,\n variables: { fullPath: this.fullPath, search, isProject: this.isProject },\n fetchPolicy,\n })\n .then(({ data }) => data[this.namespace]?.labels.nodes)\n .then((labels) =>\n // TODO remove once we can search by title-only on the backend\n // https://gitlab.com/gitlab-org/gitlab/-/issues/346353\n labels.filter((label) => label.title.toLowerCase().includes(search.toLowerCase())),\n );\n },\n fetchLabels(search) {\n return this.fetchLabelsWithFetchPolicy(search);\n },\n fetchLatestLabels(search) {\n return this.fetchLabelsWithFetchPolicy(search, fetchPolicies.NETWORK_ONLY);\n },\n getExportCsvPathWithQuery() {\n return `${this.exportCsvPath}${window.location.search}`;\n },\n getStatus(issue) {\n if (issue.state === STATUS_CLOSED && issue.moved) {\n return this.$options.i18n.closedMoved;\n }\n if (issue.state === STATUS_CLOSED) {\n return this.$options.i18n.closed;\n }\n return undefined;\n },\n handleUpdateLegacyBulkEdit() {\n // If \"select all\" checkbox was checked, wait for all checkboxes\n // to be checked before updating IssuableBulkUpdateSidebar class\n this.$nextTick(() => {\n eventHub.$emit('issuables:updateBulkEdit');\n });\n },\n async handleBulkUpdateClick() {\n if (!this.hasInitBulkEdit) {\n const bulkUpdateSidebar = await import('~/issuable');\n bulkUpdateSidebar.initBulkUpdateSidebar('issuable_');\n\n this.hasInitBulkEdit = true;\n }\n\n eventHub.$emit('issuables:enableBulkEdit');\n },\n handleClickTab(state) {\n if (this.state === state) {\n return;\n }\n\n this.state = state;\n this.pageParams = getInitialPageParams(this.pageSize);\n\n this.$router.push({ query: this.urlParams });\n },\n handleDismissAlert() {\n this.issuesError = null;\n },\n handleFilter(tokens) {\n this.filterTokens = tokens;\n this.pageParams = getInitialPageParams(this.pageSize);\n\n this.$router.push({ query: this.urlParams });\n },\n handleNextPage() {\n this.pageParams = {\n afterCursor: this.pageInfo.endCursor,\n firstPageSize: this.pageSize,\n };\n scrollUp();\n\n this.$router.push({ query: this.urlParams });\n },\n handlePreviousPage() {\n this.pageParams = {\n beforeCursor: this.pageInfo.startCursor,\n lastPageSize: this.pageSize,\n };\n scrollUp();\n\n this.$router.push({ query: this.urlParams });\n },\n handleReorder({ newIndex, oldIndex }) {\n const issueToMove = this.issues[oldIndex];\n const isDragDropDownwards = newIndex > oldIndex;\n const isMovingToBeginning = newIndex === 0;\n const isMovingToEnd = newIndex === this.issues.length - 1;\n\n let moveBeforeId;\n let moveAfterId;\n\n if (isDragDropDownwards) {\n const afterIndex = isMovingToEnd ? newIndex : newIndex + 1;\n moveBeforeId = this.issues[newIndex].id;\n moveAfterId = this.issues[afterIndex].id;\n } else {\n const beforeIndex = isMovingToBeginning ? newIndex : newIndex - 1;\n moveBeforeId = this.issues[beforeIndex].id;\n moveAfterId = this.issues[newIndex].id;\n }\n\n return axios\n .put(joinPaths(issueToMove.webPath, 'reorder'), {\n move_before_id: isMovingToBeginning ? null : getIdFromGraphQLId(moveBeforeId),\n move_after_id: isMovingToEnd ? null : getIdFromGraphQLId(moveAfterId),\n })\n .then(() => {\n const serializedVariables = JSON.stringify(this.queryVariables);\n return this.$apollo.mutate({\n mutation: reorderIssuesMutation,\n variables: { oldIndex, newIndex, namespace: this.namespace, serializedVariables },\n });\n })\n .catch((error) => {\n this.issuesError = __('An error occurred while reordering issues.');\n Sentry.captureException(error);\n });\n },\n handleSort(sortKey) {\n if (this.sortKey === sortKey) {\n return;\n }\n\n if (this.isIssueRepositioningDisabled && sortKey === RELATIVE_POSITION_ASC) {\n this.showIssueRepositioningMessage();\n return;\n }\n\n this.sortKey = sortKey;\n this.pageParams = getInitialPageParams(this.pageSize);\n\n if (this.isSignedIn) {\n this.saveSortPreference(sortKey);\n }\n\n this.$router.push({ query: this.urlParams });\n },\n saveSortPreference(sortKey) {\n this.$apollo\n .mutate({\n mutation: setSortPreferenceMutation,\n variables: { input: { issuesSort: sortKey } },\n })\n .then(({ data }) => {\n if (data.userPreferencesUpdate.errors.length) {\n throw new Error(data.userPreferencesUpdate.errors);\n }\n })\n .catch((error) => {\n Sentry.captureException(error);\n });\n },\n showIssueRepositioningMessage() {\n createAlert({\n message: this.$options.i18n.issueRepositioningMessage,\n variant: VARIANT_INFO,\n });\n },\n toggleBulkEditSidebar(showBulkEditSidebar) {\n this.showBulkEditSidebar = showBulkEditSidebar;\n },\n handlePageSizeChange(pageSize) {\n this.pageSize = pageSize;\n this.pageParams = getInitialPageParams(pageSize);\n scrollUp();\n\n this.$router.push({ query: this.urlParams });\n },\n updateData(sort) {\n const firstPageSize = getParameterByName(PARAM_FIRST_PAGE_SIZE);\n const lastPageSize = getParameterByName(PARAM_LAST_PAGE_SIZE);\n const state = getParameterByName(PARAM_STATE);\n\n let sortKey = deriveSortKey({ sort, state });\n\n if (this.isIssueRepositioningDisabled && sortKey === RELATIVE_POSITION_ASC) {\n this.showIssueRepositioningMessage();\n sortKey = state === STATUS_CLOSED ? UPDATED_DESC : CREATED_DESC;\n }\n\n const tokens = getFilterTokens(window.location.search);\n this.filterTokens = groupMultiSelectFilterTokens(tokens, this.searchTokens);\n\n this.exportCsvPathWithQuery = this.getExportCsvPathWithQuery();\n this.pageParams = getInitialPageParams(\n this.pageSize,\n isPositiveInteger(firstPageSize) ? parseInt(firstPageSize, 10) : undefined,\n isPositiveInteger(lastPageSize) ? parseInt(lastPageSize, 10) : undefined,\n getParameterByName(PARAM_PAGE_AFTER) ?? undefined,\n getParameterByName(PARAM_PAGE_BEFORE) ?? undefined,\n );\n this.sortKey = sortKey;\n this.state = state || STATUS_OPEN;\n },\n switchViewType(type) {\n // Filter the wrong data from localStorage\n if (type === ISSUES_GRID_VIEW_KEY) {\n this.viewType = ISSUES_GRID_VIEW_KEY;\n return;\n }\n // The default view is list view\n this.viewType = ISSUES_LIST_VIEW_KEY;\n },\n handleSelectIssuable(issuable) {\n this.activeIssuable = {\n ...issuable,\n };\n },\n updateIssuablesCache(workItem) {\n const client = this.$apollo.provider.clients.defaultClient;\n const issuesList = client.readQuery({\n query: getIssuesQuery,\n variables: this.queryVariables,\n });\n\n const activeIssuable = issuesList[this.namespace].issues.nodes.find(\n (issue) => getIdFromGraphQLId(issue.id) === getIdFromGraphQLId(workItem.id),\n );\n\n if (!activeIssuable) {\n return;\n }\n\n // when we change issuable state, it's moved to a different tab\n // to ensure that we show 20 items of the first page, we need to refetch issuables\n if (!activeIssuable.state.includes(workItem.state.toLowerCase())) {\n this.refetchIssuables();\n return;\n }\n\n // handle all other widgets\n const data = mapWorkItemWidgetsToIssuableFields({\n list: issuesList,\n workItem,\n namespace: this.namespace,\n type: 'issue',\n });\n\n client.writeQuery({ query: getIssuesQuery, variables: this.queryVariables, data });\n },\n promoteToObjective(workItemIid) {\n const { cache } = this.$apollo.provider.clients.defaultClient;\n\n cache.updateQuery({ query: getIssuesQuery, variables: this.queryVariables }, (issuesList) =>\n produce(issuesList, (draftData) => {\n const activeItem = draftData[this.namespace].issues.nodes.find(\n (issue) => issue.iid === workItemIid,\n );\n\n activeItem.type = WORK_ITEM_TYPE_ENUM_OBJECTIVE;\n }),\n );\n },\n refetchIssuables() {\n this.$apollo.queries.issues.refetch();\n this.$apollo.queries.issuesCounts.refetch();\n },\n deleteIssuable() {\n this.activeIssuable = null;\n this.refetchIssuables();\n },\n updateIssuableEmojis(workItem) {\n const client = this.$apollo.provider.clients.defaultClient;\n const issuesList = client.readQuery({\n query: getIssuesQuery,\n variables: this.queryVariables,\n });\n\n const data = updateUpvotesCount({ list: issuesList, workItem, namespace: this.namespace });\n\n client.writeQuery({ query: getIssuesQuery, variables: this.queryVariables, data });\n },\n checkDrawerParams() {\n const queryParam = getParameterByName(DETAIL_VIEW_QUERY_PARAM_NAME);\n\n if (this.activeIssuable || !queryParam) {\n return;\n }\n\n const params = JSON.parse(atob(queryParam));\n if (params.id) {\n const issue = this.issues.find((i) => getIdFromGraphQLId(i.id) === params.id);\n if (issue) {\n this.activeIssuable = {\n ...issue,\n // we need fullPath here to prevent cache invalidation\n fullPath: params.full_path,\n };\n } else {\n updateHistory({\n url: removeParams([DETAIL_VIEW_QUERY_PARAM_NAME]),\n });\n }\n }\n },\n },\n};\n</script>\n\n<template>\n <div>\n <work-item-drawer\n v-if=\"issuesDrawerEnabled\"\n :open=\"isIssuableSelected\"\n :active-item=\"activeIssuable\"\n :issuable-type=\"$options.issuableType\"\n click-outside-exclude-selector=\".issuable-list\"\n @close=\"activeIssuable = null\"\n @work-item-updated=\"updateIssuablesCache\"\n @work-item-emoji-updated=\"updateIssuableEmojis\"\n @addChild=\"refetchIssuables\"\n @deleteWorkItemError=\"issuesError = __('An error occurred while deleting an issuable.')\"\n @workItemDeleted=\"deleteIssuable\"\n @promotedToObjective=\"promoteToObjective\"\n @workItemTypeChanged=\"updateIssuablesCache($event)\"\n />\n <issuable-list\n v-if=\"hasAnyIssues\"\n :namespace=\"fullPath\"\n :full-path=\"fullPath\"\n recent-searches-storage-key=\"issues\"\n :search-tokens=\"searchTokens\"\n :has-scoped-labels-feature=\"hasScopedLabelsFeature\"\n :initial-filter-value=\"filterTokens\"\n :sort-options=\"sortOptions\"\n :initial-sort-by=\"sortKey\"\n :issuables=\"issues\"\n :error=\"issuesError\"\n label-filter-param=\"label_name\"\n :tabs=\"$options.issuableListTabs\"\n :current-tab=\"state\"\n :tab-counts=\"tabCounts\"\n :truncate-counts=\"!isProject\"\n :issuables-loading=\"isLoading\"\n :is-manual-ordering=\"isManualOrdering\"\n :show-bulk-edit-sidebar=\"showBulkEditSidebar\"\n :show-pagination-controls=\"showPaginationControls\"\n :default-page-size=\"pageSize\"\n show-filtered-search-friendly-text\n sync-filter-and-sort\n use-keyset-pagination\n :show-page-size-selector=\"showPageSizeSelector\"\n :has-next-page=\"pageInfo.hasNextPage\"\n :has-previous-page=\"pageInfo.hasPreviousPage\"\n :is-grid-view=\"isGridView\"\n :active-issuable=\"activeIssuable\"\n show-work-item-type-icon\n :prevent-redirect=\"issuesDrawerEnabled\"\n @click-tab=\"handleClickTab\"\n @dismiss-alert=\"handleDismissAlert\"\n @filter=\"handleFilter\"\n @next-page=\"handleNextPage\"\n @previous-page=\"handlePreviousPage\"\n @reorder=\"handleReorder\"\n @sort=\"handleSort\"\n @update-legacy-bulk-edit=\"handleUpdateLegacyBulkEdit\"\n @page-size-change=\"handlePageSizeChange\"\n @select-issuable=\"handleSelectIssuable\"\n >\n <template #nav-actions>\n <div class=\"gl-flex gl-gap-3\">\n <local-storage-sync\n v-if=\"gridViewFeatureEnabled\"\n :value=\"viewType\"\n :storage-key=\"$options.ISSUES_VIEW_TYPE_KEY\"\n @input=\"switchViewType\"\n >\n <gl-button-group>\n <gl-button\n :variant=\"isGridView ? 'default' : 'confirm'\"\n data-testid=\"list-view-type\"\n @click=\"switchViewType($options.ISSUES_LIST_VIEW_KEY)\"\n >\n {{ __('List') }}\n </gl-button>\n <gl-button\n :variant=\"isGridView ? 'confirm' : 'default'\"\n data-testid=\"grid-view-type\"\n @click=\"switchViewType($options.ISSUES_GRID_VIEW_KEY)\"\n >\n {{ __('Grid') }}\n </gl-button>\n </gl-button-group>\n </local-storage-sync>\n\n <gl-button\n v-if=\"canBulkUpdate\"\n :disabled=\"isBulkEditButtonDisabled\"\n class=\"gl-shrink-0 gl-grow\"\n @click=\"handleBulkUpdateClick\"\n >\n {{ __('Bulk edit') }}\n </gl-button>\n <slot name=\"new-issuable-button\">\n <gl-button\n v-if=\"showNewIssueLink\"\n :href=\"newIssuePath\"\n variant=\"confirm\"\n class=\"gl-grow\"\n >\n {{ __('New issue') }}\n </gl-button>\n </slot>\n <new-resource-dropdown\n v-if=\"showNewIssueDropdown\"\n :query=\"$options.searchProjectsQuery\"\n :query-variables=\"newIssueDropdownQueryVariables\"\n :extract-projects=\"extractProjects\"\n :group-id=\"groupId\"\n />\n <gl-disclosure-dropdown\n v-gl-tooltip.hover=\"$options.i18n.actionsLabel\"\n category=\"tertiary\"\n icon=\"ellipsis_v\"\n no-caret\n :toggle-text=\"$options.i18n.actionsLabel\"\n text-sr-only\n data-testid=\"issues-list-more-actions-dropdown\"\n toggle-class=\"!gl-m-0 gl-h-full\"\n class=\"!gl-w-7\"\n >\n <csv-import-export-buttons\n v-if=\"showCsvButtons\"\n :export-csv-path=\"exportCsvPathWithQuery\"\n :issuable-count=\"currentTabCount\"\n />\n <gl-disclosure-dropdown-group\n :bordered=\"showCsvButtons\"\n :group=\"subscribeDropdownOptions\"\n />\n </gl-disclosure-dropdown>\n </div>\n </template>\n\n <template #timeframe=\"{ issuable = {} }\">\n <issue-card-time-info :issue=\"issuable\" />\n </template>\n\n <template #status=\"{ issuable = {} }\">\n {{ getStatus(issuable) }}\n </template>\n\n <template #statistics=\"{ issuable = {} }\">\n <issue-card-statistics :issue=\"issuable\" />\n </template>\n\n <template #empty-state>\n <empty-state-with-any-issues :has-search=\"hasSearch\" :is-open-tab=\"isOpenTab\" />\n </template>\n\n <template #list-body>\n <slot name=\"list-body\"></slot>\n </template>\n\n <template #title-icons=\"{ issuable }\">\n <slot name=\"title-icons\" v-bind=\"{ issuable, apiFilterParams }\"></slot>\n </template>\n </issuable-list>\n\n <empty-state-without-any-issues\n v-else\n :current-tab-count=\"currentTabCount\"\n :export-csv-path-with-query=\"exportCsvPathWithQuery\"\n :show-csv-buttons=\"showCsvButtons\"\n :show-new-issue-dropdown=\"showNewIssueDropdown\"\n />\n\n <issuable-by-email\n v-if=\"showIssuableByEmail\"\n class=\"gl-pb-7 gl-pt-5 gl-text-center\"\n data-track-action=\"click_email_issue_project_issues_empty_list_page\"\n data-track-label=\"email_issue_project_issues_empty_list\"\n />\n </div>\n</template>\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issues_list_app.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./issues_list_app.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./issues_list_app.vue?vue&type=template&id=4af97c3f\"\nimport script from \"./issues_list_app.vue?vue&type=script&lang=js\"\nexport * from \"./issues_list_app.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-empty-state',{attrs:{\"svg-path\":_vm.$options.emptyStateSvgPath,\"title\":_vm.title,\"description\":_vm.description}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<script>\nimport emptyStateSvgPath from '@gitlab/svgs/dist/illustrations/empty-state/empty-search-md.svg';\nimport { GlEmptyState } from '@gitlab/ui';\nimport { __ } from '~/locale';\n\nexport const TYPES = {\n search: 'search',\n filter: 'filter',\n};\n\nexport default {\n i18n: {\n titleSearch: __('No results found'),\n descriptionSearch: __('Edit your search and try again.'),\n titleFilter: __('No results found'),\n descriptionFilter: __('To widen your search, change or remove filters above.'),\n },\n components: {\n GlEmptyState,\n },\n props: {\n type: {\n type: String,\n required: false,\n default: TYPES.search,\n validator: (type) => Object.values(TYPES).includes(type),\n },\n },\n computed: {\n title() {\n return this.type === TYPES.search\n ? this.$options.i18n.titleSearch\n : this.$options.i18n.titleFilter;\n },\n description() {\n return this.type === TYPES.search\n ? this.$options.i18n.descriptionSearch\n : this.$options.i18n.descriptionFilter;\n },\n },\n emptyStateSvgPath,\n};\n</script>\n\n<template>\n <gl-empty-state\n :svg-path=\"$options.emptyStateSvgPath\"\n :title=\"title\"\n :description=\"description\"\n />\n</template>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empty_result.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./empty_result.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./empty_result.vue?vue&type=template&id=4bbd4259\"\nimport script from \"./empty_result.vue?vue&type=script&lang=js\"\nexport * from \"./empty_result.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}