mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACS-4985] Revert test fix for e2e execution. Updated search.config.ts for e2e test cases Testing global install of webdriver-manager for e2e webdriver fix [ACS-4985] Resolved e2e test failures [ACS-4985] Increased value for drag emulation to account for increased width of the side filters panel in demo-shell search results window. [ACS-4985] Resolved unit test failures [ACS-4985] Resolved lint issues [ACS-4985] Moved new components to v6.2.0 in versionIndex.md [ACS-4985] Added documentation to versionIndex.md and README.md [ACS-4985] Moved inLast input field back to input type number. [ACS-4985] Resolved issue where typing a special character after adding some numbers in the 'In the last' input field would clear out the field [ACS-4985] Updated test cases after query generation changes [ACS-4985] Added missing null check when generating query [ACS-4985] Added *ngFor back to the search-date-range-advanced-tabbed.component.html [ACS-4985] Updated query generation logic. Now both 'In the last' and 'Between' options use the start date to end date query format [ACS-4985] Removed ANY case from switch (will be handled by default case) [ACS-4985] Split declarations into multiple lines [ACS-4985] Fixed code smell in regex [ACS-4985] Updated dates in documentation [ACS-4985] Updated documentation [ACS-4985] Added link for AngularMaterial bug for CSS workaround [ACS-4985] Added test cases for end date validation. Fixed minor issue when setting invalid date error on between date form fields [ACS-4985] Added validation when user manually enters the start and end dates [ACS-4985] Added borders to inputs [ACS-4985] Updated test cases for SearchDateRangeAdvancedTabbedComponent [ACS-4985] Transferred business logic from SearchDateRangeAdvancedComponent and SearchFilterTabbedComponent to SearchDateRangeAdvancedTabbedComponent. Updated test cases accordingly [ACS-4985] Resolved PR review comments [ACS-4985] Removed unused code from base-query-builder.service.ts [ACS-4985] Resolved linting and unit test issues [ACS-4985] Resolved minor issues where switching between tabs could sometime cause the tab content to not show up [ACS-4985] Resolved minor issues with display label creation [ACS-4985] Updated component to use MatDateFnsAdapter. BetweenStartDate and BetweenEndDate are now formatted when selected from the calender [ACS-4985] Resolved issue where clear button would not clear the values properly [ACS-4985] Added @angular/material-date-fns-adapter package [ACS-4985] Added image for updated documentation [ACS-4985] Added validation to SearchDateRangeAdvancedComponent [ACS-4985] Updated documentation for components [ACS-4985] Removed disableUpdateOnSubmit flag from search widgets [ACS-4985] Updated the documentation for the components [ACS-4985] Added test cases for SearchDateRangeAdvancedTabbedComponent. Moved pending logic from template to typescript [ACS-4985] Added clear and apply button to SearchDateRangeAdvancedTabbedComponent. Moved logic from template to typescript file [ACS-4985] Updated test cases for SearchFilterTabbedComponent. Added safety checks to component [ACS-4985] Added field validation to test case [ACS-4985] Updated SearchDateRangeAdvancedTabbed component to no longer use getters and setters [ACS-4985] Updated test cases for SearchDateRangeAdvancedComponent. Minor updates to the component template and logic. Component no longer uses getters and setters in template [ACS-4985] Updated SearchDateRangeAdvancedTabbed component to use variables instead of getters and setters [ACS-4985] Updated app.cconfig for demo-shell to use new date-range-advanced configuration ACS-4985 Fixed issue with nx build, some clean ups, using changes in configuration [ACS-4985] Updated test cases for changed date format [ACS-4985] Updated date formats for SearchDateRangeAdvancedComponent [ACS-4985] Removed fdescribe test cases for SearchDateRangeAdvancedComponent. [ACS-4985] Fixed test cases for SearchDateRangeAdvancedComponent. [ACS-4985] Fixed erroneous imports [ACS-4985] Added license headers and re-ordered imports [ACS-4985] Updated test cases for SearchDateRangeAdvancedComponent from moment.js to date-fns [ACS-4985] Migrated SearchDateRangeAdvancedComponent from moment.js to date-fns Added import for BaseQueryBuilderService in public-api.ts. Fixes #8647 [ACS-4985] Updated imports in test cases [ACS-4985] Added exports for SearchDateRangeAdvanced and SearchFilterTabbed components to public-api.ts. Updated imports in both components [ACS-4985] Resolved minor issue where the reset method would still trigger multiple api calls when used with the TabbedComponent [ACS-4985] Added test cases for SearchDateRangeAdvancedComponent. Minor update to test cases for SearchFilterTabbedComponent [ACS-4985] Updated Labels for 'In last' date range option [ACS-4985] Updated SearchModule declarations. Fixed minor typo in SearchFilterTabbedComponent [ACS-4985] Added test cases for SearchFilterTabbedComponent. Added test case placeholders for SearchDateRangeAdvancedComponent [ACS-4985] Added data-automation-id to search-date-range-advanced.component.html [ACS-4985] Added test cases for SearchFilterTabbedComponent [ACS-4985] Removed vertical mode from SearchFilterTabbedComponent [ACS-4985] Updated UI for search filters. Minor fixes [ACS-4985] Added documentation for SearchFilterTabbedComponent and SearchDateRangeAdvancedComponent [ACS-4985] Added compatibility of all search filters/facets with SearchFilterTabbedComponent [ACS-4985] Using widget-composite component now correctly updates the search query on submit. Added optional property to disable update on submit button click for widget-composite. [ACS-4985] Added SearchFilterTabbedComponent and SearchDateRangeAdvancedComponent. Added config for using the new components
216 lines
8.3 KiB
TypeScript
216 lines
8.3 KiB
TypeScript
/*!
|
|
* @license
|
|
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
export class SearchConfiguration {
|
|
|
|
static getConfiguration() {
|
|
return {
|
|
'app:fields': [
|
|
'cm:name',
|
|
'cm:title',
|
|
'cm:description',
|
|
'ia:whatEvent',
|
|
'ia:descriptionEvent',
|
|
'lnk:title',
|
|
'lnk:description',
|
|
'TEXT',
|
|
'TAG'
|
|
],
|
|
include: ['path', 'allowableOperations'],
|
|
sorting: {
|
|
options: [
|
|
{key: 'name', label: 'Name', type: 'FIELD', field: 'cm:name', ascending: true},
|
|
{
|
|
key: 'content.sizeInBytes',
|
|
label: 'Size',
|
|
type: 'FIELD',
|
|
field: 'content.size',
|
|
ascending: true
|
|
},
|
|
{
|
|
key: 'description',
|
|
label: 'Description',
|
|
type: 'FIELD',
|
|
field: 'cm:description',
|
|
ascending: true
|
|
},
|
|
{
|
|
key: 'createdByUser',
|
|
label: 'Author',
|
|
type: 'FIELD',
|
|
field: 'cm:creator',
|
|
ascending: true
|
|
},
|
|
{key: 'createdAt', label: 'Created', type: 'FIELD', field: 'cm:created', ascending: true}
|
|
],
|
|
defaults: [
|
|
{key: 'name', type: 'FIELD', field: 'cm:name', ascending: true}
|
|
]
|
|
},
|
|
filterQueries: [
|
|
{query: 'TYPE:\'cm:folder\' OR TYPE:\'cm:content\''},
|
|
{query: 'NOT cm:creator:System'}
|
|
],
|
|
facetFields: {
|
|
expanded: true,
|
|
fields: [
|
|
{field: 'content.mimetype', mincount: 1, label: 'SEARCH.FACET_FIELDS.TYPE'},
|
|
{field: 'content.size', mincount: 1, label: 'SEARCH.FACET_FIELDS.SIZE'},
|
|
{field: 'creator', mincount: 1, label: 'SEARCH.FACET_FIELDS.CREATOR'},
|
|
{field: 'modifier', mincount: 1, label: 'SEARCH.FACET_FIELDS.MODIFIER'},
|
|
{field: 'created', mincount: 1, label: 'SEARCH.FACET_FIELDS.CREATED'}
|
|
]
|
|
},
|
|
facetQueries: {
|
|
label: 'My facet queries',
|
|
pageSize: 5,
|
|
queries: [
|
|
{query: 'created:2018', label: '1.Created This Year'},
|
|
{query: 'content.mimetype:text/html', label: '2.Type: HTML'},
|
|
{query: 'content.size:[0 TO 10240]', label: '3.Size: xtra small'},
|
|
{query: 'content.size:[10240 TO 102400]', label: '4.Size: small'},
|
|
{query: 'content.size:[102400 TO 1048576]', label: '5.Size: medium'},
|
|
{query: 'content.size:[1048576 TO 16777216]', label: '6.Size: large'},
|
|
{query: 'content.size:[16777216 TO 134217728]', label: '7.Size: xtra large'},
|
|
{query: 'content.size:[134217728 TO MAX]', label: '8.Size: XX large'}
|
|
]
|
|
},
|
|
categories: [
|
|
{
|
|
id: 'queryName',
|
|
name: 'Name',
|
|
enabled: true,
|
|
expanded: true,
|
|
component: {
|
|
selector: 'text',
|
|
settings: {
|
|
pattern: 'cm:name:\'(.*?)\'',
|
|
field: 'cm:name',
|
|
placeholder: 'Enter the name'
|
|
}
|
|
}
|
|
},
|
|
{
|
|
id: 'checkList',
|
|
name: 'Check List',
|
|
enabled: true,
|
|
component: {
|
|
selector: 'check-list',
|
|
settings: {
|
|
pageSize: 5,
|
|
operator: 'OR',
|
|
options: [
|
|
{name: 'Folder', value: 'TYPE:\'cm:folder\''},
|
|
{name: 'Document', value: 'TYPE:\'cm:content\''}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
id: 'contentSize',
|
|
name: 'Content Size',
|
|
enabled: true,
|
|
component: {
|
|
selector: 'slider',
|
|
settings: {
|
|
field: 'cm:content.size',
|
|
min: 0,
|
|
max: 18,
|
|
step: 1,
|
|
thumbLabel: true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
id: 'contentSizeRange',
|
|
name: 'Content Size (range)',
|
|
enabled: true,
|
|
component: {
|
|
selector: 'number-range',
|
|
settings: {
|
|
field: 'cm:content.size',
|
|
format: '[{FROM} TO {TO}]'
|
|
}
|
|
}
|
|
},
|
|
{
|
|
id: 'createdDateRange',
|
|
name: 'Created Date (range)',
|
|
enabled: true,
|
|
component: {
|
|
selector: 'date-range',
|
|
settings: {
|
|
field: 'cm:created',
|
|
dateFormat: 'DD-MMM-YY'
|
|
}
|
|
}
|
|
},
|
|
{
|
|
id: 'queryType',
|
|
name: 'Type',
|
|
enabled: true,
|
|
component: {
|
|
selector: 'radio',
|
|
settings: {
|
|
field: null,
|
|
pageSize: 5,
|
|
options: [
|
|
{name: 'APP.SEARCH.RADIO.NONE', value: '', default: true},
|
|
{name: 'APP.SEARCH.RADIO.ALL', value: 'TYPE:\'cm:folder\' OR TYPE:\'cm:content\''},
|
|
{name: 'APP.SEARCH.RADIO.FOLDER', value: 'TYPE:\'cm:folder\''},
|
|
{name: 'APP.SEARCH.RADIO.DOCUMENT', value: 'TYPE:\'cm:content\''}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
id: 'createdModifiedDateRange',
|
|
name: 'Date',
|
|
enabled: true,
|
|
component: {
|
|
selector: 'date-range-advanced',
|
|
settings: {
|
|
dateFormat: 'dd-MMM-yy',
|
|
maxDate: 'today',
|
|
field: 'cm:created, cm:modified',
|
|
displayedLabelsByField: {
|
|
"cm:created": 'Created Date',
|
|
"cm:modified": 'Modified Date'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
highlight: {
|
|
prefix: '¿',
|
|
postfix: '?',
|
|
mergeContiguous: true,
|
|
fields: [
|
|
{
|
|
field: 'cm:title'
|
|
},
|
|
{
|
|
field: 'description',
|
|
prefix: '(',
|
|
postfix: ')'
|
|
}
|
|
]
|
|
}
|
|
};
|
|
}
|
|
}
|