FEATURE: Collapsable filters on mobile
This commit is contained in:
parent
43bc28a198
commit
5e756f57da
|
@ -3,5 +3,19 @@ export default Ember.Component.extend({
|
||||||
|
|
||||||
originalPostContent: Ember.computed.readOnly(
|
originalPostContent: Ember.computed.readOnly(
|
||||||
"topic.post_stream.posts.firstObject.cooked"
|
"topic.post_stream.posts.firstObject.cooked"
|
||||||
)
|
),
|
||||||
|
|
||||||
|
didInsertElement() {
|
||||||
|
this._super(...arguments);
|
||||||
|
document
|
||||||
|
.querySelector("body")
|
||||||
|
.classList.add("archetype-knowledge-explorer-topic");
|
||||||
|
},
|
||||||
|
|
||||||
|
willDestroyElement() {
|
||||||
|
this._super(...arguments);
|
||||||
|
document
|
||||||
|
.querySelector("body")
|
||||||
|
.classList.remove("archetype-knowledge-explorer-topic");
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { default as computed } from "ember-addons/ember-computed-decorators";
|
import { default as computed } from "ember-addons/ember-computed-decorators";
|
||||||
|
import { on } from "discourse-common/utils/decorators";
|
||||||
import KnowledgeExplorer from "discourse/plugins/discourse-knowledge-explorer/discourse/models/knowledge-explorer";
|
import KnowledgeExplorer from "discourse/plugins/discourse-knowledge-explorer/discourse/models/knowledge-explorer";
|
||||||
|
|
||||||
function mergeCategories(results) {
|
function mergeCategories(results) {
|
||||||
|
@ -33,6 +34,14 @@ export default Ember.Controller.extend({
|
||||||
searchTerm: null,
|
searchTerm: null,
|
||||||
selectedTopic: null,
|
selectedTopic: null,
|
||||||
topic: null,
|
topic: null,
|
||||||
|
expandedFilters: false,
|
||||||
|
|
||||||
|
@on("init")
|
||||||
|
_setupFilters() {
|
||||||
|
if (!this.site.mobileView) {
|
||||||
|
this.set("expandedFilters", true);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
@computed("loadMoreUrl")
|
@computed("loadMoreUrl")
|
||||||
canLoadMore(loadMoreUrl) {
|
canLoadMore(loadMoreUrl) {
|
||||||
|
@ -167,6 +176,14 @@ export default Ember.Controller.extend({
|
||||||
isLoading: false
|
isLoading: false
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
toggleFilters() {
|
||||||
|
if (!this.expandedFilters) {
|
||||||
|
this.set("expandedFilters", true);
|
||||||
|
} else {
|
||||||
|
this.set("expandedFilters", false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<span class="knowledge-base-search-wrapper">
|
<span class="knowledge-explorer-search-wrapper">
|
||||||
{{input
|
{{input
|
||||||
type="text"
|
type="text"
|
||||||
value=(readonly searchTerm)
|
value=(readonly searchTerm)
|
||||||
|
|
|
@ -5,29 +5,36 @@
|
||||||
}}
|
}}
|
||||||
{{#conditional-loading-spinner condition=isLoading}}
|
{{#conditional-loading-spinner condition=isLoading}}
|
||||||
<div class="knowledge-explorer-browse">
|
<div class="knowledge-explorer-browse">
|
||||||
|
{{#if site.mobileView}}
|
||||||
|
{{#unless selectedTopic}}
|
||||||
|
{{d-button class="knowledge-explorer-expander" icon=(if expandedFilters "angle-up" "angle-down") action=(action "toggleFilters") label="knowledge_explorer.filter_button"}}
|
||||||
|
{{/unless}}
|
||||||
|
{{/if}}
|
||||||
<div class="knowledge-explorer-filters">
|
<div class="knowledge-explorer-filters">
|
||||||
{{#if categories}}
|
{{#if expandedFilters}}
|
||||||
<div class="knowledge-explorer-items knowledge-explorer-categories">
|
{{#if categories}}
|
||||||
<h3>{{i18n 'knowledge_explorer.categories'}}</h3>
|
<div class="knowledge-explorer-items knowledge-explorer-categories">
|
||||||
{{#each categories as |category|}}
|
<h3>{{i18n 'knowledge_explorer.categories'}}</h3>
|
||||||
{{knowledge-explorer-category
|
{{#each categories as |category|}}
|
||||||
category=category
|
{{knowledge-explorer-category
|
||||||
selectCategory=(action "updateSelectedCategories"
|
category=category
|
||||||
tagName="")
|
selectCategory=(action "updateSelectedCategories"
|
||||||
}}
|
tagName="")
|
||||||
{{/each}}
|
}}
|
||||||
</div>
|
{{/each}}
|
||||||
{{/if}}
|
</div>
|
||||||
{{#if tags}}
|
{{/if}}
|
||||||
<div class="knowledge-explorer-items knowledge-explorer-tags">
|
{{#if tags}}
|
||||||
<h3>{{i18n 'knowledge_explorer.tags'}}</h3>
|
<div class="knowledge-explorer-items knowledge-explorer-tags">
|
||||||
{{#each tags as |tag|}}
|
<h3>{{i18n 'knowledge_explorer.tags'}}</h3>
|
||||||
{{knowledge-explorer-tag
|
{{#each tags as |tag|}}
|
||||||
tag=tag
|
{{knowledge-explorer-tag
|
||||||
selectTag=(action "updateSelectedTags")
|
tag=tag
|
||||||
}}
|
selectTag=(action "updateSelectedTags")
|
||||||
{{/each}}
|
}}
|
||||||
</div>
|
{{/each}}
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{#if selectedTopic}}
|
{{#if selectedTopic}}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
.knowledge-base-search-wrapper {
|
.knowledge-explorer-search-wrapper {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 500px;
|
width: 500px;
|
||||||
.d-icon {
|
.d-icon {
|
||||||
|
|
|
@ -4,6 +4,12 @@
|
||||||
width: calc(100vw - 0.75em);
|
width: calc(100vw - 0.75em);
|
||||||
margin: 0.625em 0;
|
margin: 0.625em 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.knowledge-explorer-search-wrapper {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
.knowledge-explorer-search {
|
.knowledge-explorer-search {
|
||||||
font-size: $font-up-2;
|
font-size: $font-up-2;
|
||||||
padding: 0.5em 0;
|
padding: 0.5em 0;
|
||||||
|
@ -25,4 +31,27 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.knowledge-explorer-filters {
|
||||||
|
margin-top: 0;
|
||||||
|
background: $primary-very-low;
|
||||||
|
padding: 0 0.5em;
|
||||||
|
.knowledge-explorer-items:first-of-type {
|
||||||
|
margin-top: 1em;
|
||||||
|
}
|
||||||
|
+ .knowledge-explorer-results {
|
||||||
|
margin-top: 2em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.archetype-knowledge-explorer-topic {
|
||||||
|
.knowledge-explorer-filters {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.knowledge-explorer-expander {
|
||||||
|
margin: 1em 0 0 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,3 +12,4 @@ en:
|
||||||
topic:
|
topic:
|
||||||
back: "Go back"
|
back: "Go back"
|
||||||
navigate_to_topic: "View the discussion on this topic"
|
navigate_to_topic: "View the discussion on this topic"
|
||||||
|
filter_button: "Filters"
|
||||||
|
|
Loading…
Reference in New Issue