Skip to content
Snippets Groups Projects
Commit eb4dfc2f authored by Tom Robinson's avatar Tom Robinson
Browse files

Fix questions/card entity type issue

parent 95ede692
No related branches found
No related tags found
No related merge requests found
...@@ -3,6 +3,7 @@ import { Box, Flex, Subhead, Truncate } from "rebass"; ...@@ -3,6 +3,7 @@ import { Box, Flex, Subhead, Truncate } from "rebass";
import { t } from "c-3po"; import { t } from "c-3po";
import { connect } from "react-redux"; import { connect } from "react-redux";
import { withRouter } from "react-router"; import { withRouter } from "react-router";
import _ from "underscore";
import Question from "metabase/entities/questions"; import Question from "metabase/entities/questions";
import Dashboard from "metabase/entities/dashboards"; import Dashboard from "metabase/entities/dashboards";
...@@ -117,10 +118,7 @@ class DefaultLanding extends React.Component { ...@@ -117,10 +118,7 @@ class DefaultLanding extends React.Component {
return <CollectionEmptyState />; return <CollectionEmptyState />;
} }
console.log(items); const [pinned, other] = _.partition(items, i => i.collection_position != null);
const pinned = items.filter(i => i.collection_position);
const other = items.filter(i => !i.collection_position);
return ( return (
<Box> <Box>
......
...@@ -15,6 +15,10 @@ import { ...@@ -15,6 +15,10 @@ import {
CollectionsApi, CollectionsApi,
} from "metabase/services"; } from "metabase/services";
// backend returns type = "card" instead of "question"
const backendTypeToEntitiesName = object =>
object.type === "card" ? "questions" : `${object.type}s`;
export default createEntity({ export default createEntity({
name: "search", name: "search",
path: "/api/search", path: "/api/search",
...@@ -26,14 +30,14 @@ export default createEntity({ ...@@ -26,14 +30,14 @@ export default createEntity({
pulses: PulseSchema, pulses: PulseSchema,
collections: CollectionSchema, collections: CollectionSchema,
}, },
(object, parent, key) => `${object.type}s`, (object, parent, key) => backendTypeToEntitiesName(object),
), ),
// delegate to the actual object's entity wrapEntity // delegate to the actual object's entity wrapEntity
wrapEntity(object, dispatch) { wrapEntity(object, dispatch) {
const entities = require("metabase/entities"); const entities = require("metabase/entities");
// NOTE: special case card -> questions // NOTE: special case card -> questions
const type = object.type === "card" ? "questions" : `${object.type}s`; const type = backendTypeToEntitiesName(object);
const entity = entities[type]; const entity = entities[type];
return entity.wrapEntity(object, dispatch); return entity.wrapEntity(object, dispatch);
}, },
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment