@blaze-cms/react-page-builder 0.124.0-alpha.13 → 0.124.0-alpha.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/lib/application/query/index.js +8 -2
- package/lib/application/query/index.js.map +1 -1
- package/lib/components/Card/CardFactory.js +37 -5
- package/lib/components/Card/CardFactory.js.map +1 -1
- package/lib/components/ItemListButton/ItemListButton.js +168 -0
- package/lib/components/ItemListButton/ItemListButton.js.map +1 -0
- package/lib/components/ItemListButton/index.js +16 -0
- package/lib/components/ItemListButton/index.js.map +1 -0
- package/lib/components/ItemListCounter/ItemListCounter.js +96 -0
- package/lib/components/ItemListCounter/ItemListCounter.js.map +1 -0
- package/lib/components/ItemListCounter/index.js +16 -0
- package/lib/components/ItemListCounter/index.js.map +1 -0
- package/lib/components/List/ListBuilder.js +12 -6
- package/lib/components/List/ListBuilder.js.map +1 -1
- package/lib/components/List/ListFactory.js +26 -7
- package/lib/components/List/ListFactory.js.map +1 -1
- package/lib/components/index.js +10 -0
- package/lib/components/index.js.map +1 -1
- package/lib/constants/index.js +8 -2
- package/lib/constants/index.js.map +1 -1
- package/lib/helpers/build-raw-query.js.map +1 -1
- package/lib/helpers/get-item-list-data.js +17 -0
- package/lib/helpers/get-item-list-data.js.map +1 -0
- package/lib/helpers/get-item-list-id.js +20 -0
- package/lib/helpers/get-item-list-id.js.map +1 -0
- package/lib/helpers/get-item-list-ids.js +28 -0
- package/lib/helpers/get-item-list-ids.js.map +1 -0
- package/lib/helpers/index.js +24 -0
- package/lib/helpers/index.js.map +1 -1
- package/lib-es/application/query/index.js +44 -1
- package/lib-es/application/query/index.js.map +1 -1
- package/lib-es/components/Card/CardFactory.js +34 -8
- package/lib-es/components/Card/CardFactory.js.map +1 -1
- package/lib-es/components/ItemListButton/ItemListButton.js +117 -0
- package/lib-es/components/ItemListButton/ItemListButton.js.map +1 -0
- package/lib-es/components/ItemListButton/index.js +3 -0
- package/lib-es/components/ItemListButton/index.js.map +1 -0
- package/lib-es/components/ItemListCounter/ItemListCounter.js +67 -0
- package/lib-es/components/ItemListCounter/ItemListCounter.js.map +1 -0
- package/lib-es/components/ItemListCounter/index.js +3 -0
- package/lib-es/components/ItemListCounter/index.js.map +1 -0
- package/lib-es/components/List/ListBuilder.js +12 -6
- package/lib-es/components/List/ListBuilder.js.map +1 -1
- package/lib-es/components/List/ListFactory.js +26 -9
- package/lib-es/components/List/ListFactory.js.map +1 -1
- package/lib-es/components/index.js +6 -0
- package/lib-es/components/index.js.map +1 -1
- package/lib-es/constants/index.js +3 -1
- package/lib-es/constants/index.js.map +1 -1
- package/lib-es/helpers/build-raw-query.js.map +1 -1
- package/lib-es/helpers/get-item-list-data.js +7 -0
- package/lib-es/helpers/get-item-list-data.js.map +1 -0
- package/lib-es/helpers/get-item-list-id.js +10 -0
- package/lib-es/helpers/get-item-list-id.js.map +1 -0
- package/lib-es/helpers/get-item-list-ids.js +13 -0
- package/lib-es/helpers/get-item-list-ids.js.map +1 -0
- package/lib-es/helpers/index.js +3 -0
- package/lib-es/helpers/index.js.map +1 -1
- package/package.json +2 -2
- package/src/application/query/index.js +50 -1
- package/src/components/Card/CardFactory.js +27 -7
- package/src/components/ItemListButton/ItemListButton.js +107 -0
- package/src/components/ItemListButton/index.js +3 -0
- package/src/components/ItemListCounter/ItemListCounter.js +67 -0
- package/src/components/ItemListCounter/index.js +3 -0
- package/src/components/List/ListBuilder.js +10 -5
- package/src/components/List/ListFactory.js +47 -12
- package/src/components/index.js +6 -0
- package/src/constants/index.js +4 -1
- package/src/helpers/build-raw-query.js +1 -0
- package/src/helpers/get-item-list-data.js +6 -0
- package/src/helpers/get-item-list-id.js +10 -0
- package/src/helpers/get-item-list-ids.js +10 -0
- package/src/helpers/index.js +3 -0
- package/tests/unit/src/components/__snapshots__/index.test.js.snap +8 -0
- package/tests/unit/src/helpers/get-item-list-data.test.js +28 -0
- package/tests/unit/src/helpers/get-item-list-id.test.js +20 -0
- package/tests/unit/src/helpers/get-item-list-ids.test.js +19 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.124.0-alpha.14](https://github.com/thebyte9/blaze/compare/v0.124.0-alpha.13...v0.124.0-alpha.14) (2022-05-11)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* added itemCounter/itemListButton and lis logic for itemList ([#3469](https://github.com/thebyte9/blaze/issues/3469)) ([bd9e1b1](https://github.com/thebyte9/blaze/commit/bd9e1b185c929306089d495316f40ab39e242a68))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# [0.124.0-alpha.13](https://byte9/thebyte9/blaze/compare/v0.124.0-alpha.12...v0.124.0-alpha.13) (2022-05-11)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
@@ -7,7 +7,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
-
exports.getUser = exports.getSingleEntitySchema = exports.getSearchPublishedContent = exports.getRecordParents = exports.getPublishedContent = exports.getMultipleSchema = exports.getFiles = exports.getFileById = exports.getEntitySchema = exports.getCount = exports.getAction = exports.generateSingleItemQuery = exports.generateMultiItemQuery = void 0;
|
|
10
|
+
exports.removeItemsFromList = exports.getUser = exports.getSingleEntitySchema = exports.getSearchPublishedContent = exports.getRecordParents = exports.getPublishedContent = exports.getMultipleSchema = exports.getItemList = exports.getFiles = exports.getFileById = exports.getEntitySchema = exports.getCount = exports.getAction = exports.generateSingleItemQuery = exports.generateMultiItemQuery = exports.addItemsToList = void 0;
|
|
11
11
|
|
|
12
12
|
require("core-js/modules/es.array.join.js");
|
|
13
13
|
|
|
@@ -21,7 +21,7 @@ var _client = require("@apollo/client");
|
|
|
21
21
|
|
|
22
22
|
var _lodash = _interopRequireDefault(require("lodash.upperfirst"));
|
|
23
23
|
|
|
24
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
24
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
|
|
25
25
|
|
|
26
26
|
var defaultSchemaProps = "\n id\n identifier\n properties\n dynamicProperties\n actions\n interfaces\n relations\n __typename\n";
|
|
27
27
|
|
|
@@ -95,4 +95,10 @@ var getPublishedContent = function getPublishedContent(entity) {
|
|
|
95
95
|
};
|
|
96
96
|
|
|
97
97
|
exports.getPublishedContent = getPublishedContent;
|
|
98
|
+
var getItemList = (0, _client.gql)(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n query getItemList($id: String!) {\n getItemList(id: $id) {\n listItems {\n itemId\n itemEntity\n }\n }\n }\n"])));
|
|
99
|
+
exports.getItemList = getItemList;
|
|
100
|
+
var addItemsToList = (0, _client.gql)(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n mutation addItemsToList(\n $name: String!\n $id: String\n $listItems: [AddItemsToListInputListItemsItem]!\n ) {\n addItemsToList(input: { name: $name, id: $id, listItems: $listItems }) {\n result {\n id\n listItems {\n itemId\n itemEntity\n }\n }\n }\n }\n"])));
|
|
101
|
+
exports.addItemsToList = addItemsToList;
|
|
102
|
+
var removeItemsFromList = (0, _client.gql)(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n mutation removeItemsFromList(\n $listId: String!\n $listItems: [RemoveItemsFromListInputListItemsItem]!\n ) {\n removeItemsFromList(input: { id: $listId, listItems: $listItems }) {\n result {\n id\n listItems {\n itemId\n itemEntity\n }\n }\n }\n }\n"])));
|
|
103
|
+
exports.removeItemsFromList = removeItemsFromList;
|
|
98
104
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["defaultSchemaProps","getSearchPublishedContent","fields","gql","getUser","userProps","getEntitySchema","getSingleEntitySchema","getRecordParents","queryName","getMultipleSchema","identifiers","queryString","map","id","join","getFiles","getFileById","getCount","action","generateQuery","props","generateMultiItemQuery","generateSingleItemQuery","getAction","query","getPublishedContent","entity"],"sources":["../../../src/application/query/index.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport upperFirst from 'lodash.upperfirst';\n\nconst defaultSchemaProps = `\n id\n identifier\n properties\n dynamicProperties\n actions\n interfaces\n relations\n __typename\n`;\n\nconst getSearchPublishedContent = fields => gql`\n query searchPublishedContent($rawQueryStringified: String!, $offset: Int, $limit: Int, $sort: String) {\n searchPublishedContent(rawQueryStringified: $rawQueryStringified, offset: $offset, limit: $limit, sort: $sort) {\n ${fields}\n }\n }\n `;\n\nconst getUser = userProps => gql`\n query getUser($id: String!) {\n getUser(id: $id) {\n id\n ${userProps}\n }\n }\n`;\n\nconst getEntitySchema = gql`\n query getEntitySchemas($identifier: String!) {\n getEntitySchemas(identifier: $identifier) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getSingleEntitySchema = gql`\n query getEntitySchema($id: String!) {\n getEntitySchema: getEntitySchema(id: $id) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getRecordParents = queryName => gql`\nquery getRecordParents($id: String!){\n recordParents: ${queryName}(id: $id){\n id,\n name,\n url,\n parents {\n id,\n name\n url\n }\n }\n}`;\n\nconst getMultipleSchema = identifiers => {\n const queryString = identifiers\n .map(\n id => `${id}: getEntitySchema(id: \"${id}\") {\n ${defaultSchemaProps}\n }`\n )\n .join(`\\n`);\n return gql`\n query {\n ${queryString}\n }`;\n};\n\nconst getFiles = gql`\n query getFiles($where: JSON!) {\n getFiles(where: $where) {\n id\n url\n data\n }\n }\n`;\n\nconst getFileById = gql`\n query getFile($id: String!) {\n getFile(id: $id) {\n id\n url\n data\n }\n }\n`;\n\nconst getCount = action => gql`query countData($where: JSON!) {\n ${action} (where: $where)\n }\n`;\n\nconst generateQuery = (action, props) => `\n query getEntityData(\n $where: JSON\n $limit: Int\n $offset: Int\n $sort: [${upperFirst(action)}SortItem]){\n ${action} (where: $where, limit: $limit, offset: $offset, sort: $sort){\n ${props}\n id\n __typename\n }\n }\n `;\nconst generateMultiItemQuery = (action, props) => gql`\n query getEntityData($where: JSON){\n ${action} (where: $where){\n ${props}\n id\n __typename\n }\n }\n `;\n\nconst generateSingleItemQuery = (action, props) => gql`\n query getEntityData($id: String!){\n entityData: ${action}(id: $id){\n ${props},\n id,\n __typename\n }\n }\n `;\n\n// TODO: extend function to handle properties and make them dynamic with a config schema for each entity.\nconst getAction = (action, props) => {\n const query = generateQuery(action, props);\n return gql`\n ${query}\n `;\n};\n\nconst getPublishedContent = entity => `\n query searchPublishedContent(\n $rawQueryStringified: String!\n $offset: Int\n $limit: Int\n $sort: String\n ) {\n searchPublishedContent(\n rawQueryStringified: $rawQueryStringified\n offset: $offset\n limit: $limit\n sort: $sort\n ) {\n results {\n ... on ${entity} {\n id\n name\n image {\n url\n __typename\n }\n url\n __typename\n }\n __typename\n }\n total\n __typename\n }\n }\n`;\n\nexport {\n getEntitySchema,\n getSingleEntitySchema,\n getAction,\n getFiles,\n getFileById,\n generateMultiItemQuery,\n generateSingleItemQuery,\n getPublishedContent,\n getSearchPublishedContent,\n getCount,\n getMultipleSchema,\n getUser,\n getRecordParents\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;AAEA,IAAMA,kBAAkB,kHAAxB;;AAWA,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAAAC,MAAM;EAAA,WAAIC,WAAJ,+VAG9BD,MAH8B;AAAA,CAAxC;;;;AAQA,IAAME,OAAO,GAAG,SAAVA,OAAU,CAAAC,SAAS;EAAA,WAAIF,WAAJ,uLAIjBE,SAJiB;AAAA,CAAzB;;;AASA,IAAMC,eAAe,OAAGH,WAAH,uNAGbH,kBAHa,CAArB;;AAQA,IAAMO,qBAAqB,OAAGJ,WAAH,8MAGnBH,kBAHmB,CAA3B;;;AAQA,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAAC,SAAS;EAAA,WAAIN,WAAJ,gQAEfM,SAFe;AAAA,CAAlC;;;;AAcA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAC,WAAW,EAAI;EACvC,IAAMC,WAAW,GAAGD,WAAW,CAC5BE,GADiB,CAEhB,UAAAC,EAAE;IAAA,iBAAOA,EAAP,qCAAmCA,EAAnC,gCACMd,kBADN;EAAA,CAFc,EAMjBe,IANiB,MAApB;EAOA,WAAOZ,WAAP,0HAEMS,WAFN;AAID,CAZD;;;AAcA,IAAMI,QAAQ,OAAGb,WAAH,0MAAd;;AAUA,IAAMc,WAAW,OAAGd,WAAH,iMAAjB;;;AAUA,IAAMe,QAAQ,GAAG,SAAXA,QAAW,CAAAC,MAAM;EAAA,WAAIhB,WAAJ,2JACjBgB,MADiB;AAAA,CAAvB;;;;AAKA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACD,MAAD,EAASE,KAAT;EAAA,4GAKR,wBAAWF,MAAX,CALQ,8BAMhBA,MANgB,mFAOdE,KAPc;AAAA,CAAtB;;AAaA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACH,MAAD,EAASE,KAAT;EAAA,WAAmBlB,WAAnB,qNAEzBgB,MAFyB,EAGvBE,KAHuB;AAAA,CAA/B;;;;AAUA,IAAME,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACJ,MAAD,EAASE,KAAT;EAAA,WAAmBlB,WAAnB,sNAEdgB,MAFc,EAG1BE,KAH0B;AAAA,CAAhC,C,CAUA;;;;;AACA,IAAMG,SAAS,GAAG,SAAZA,SAAY,CAACL,MAAD,EAASE,KAAT,EAAmB;EACnC,IAAMI,KAAK,GAAGL,aAAa,CAACD,MAAD,EAASE,KAAT,CAA3B;EACA,WAAOlB,WAAP,0GACIsB,KADJ;AAGD,CALD;;;;AAOA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAC,MAAM;EAAA,0UAcjBA,MAdiB;AAAA,CAAlC"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["defaultSchemaProps","getSearchPublishedContent","fields","gql","getUser","userProps","getEntitySchema","getSingleEntitySchema","getRecordParents","queryName","getMultipleSchema","identifiers","queryString","map","id","join","getFiles","getFileById","getCount","action","generateQuery","props","generateMultiItemQuery","generateSingleItemQuery","getAction","query","getPublishedContent","entity","getItemList","addItemsToList","removeItemsFromList"],"sources":["../../../src/application/query/index.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport upperFirst from 'lodash.upperfirst';\n\nconst defaultSchemaProps = `\n id\n identifier\n properties\n dynamicProperties\n actions\n interfaces\n relations\n __typename\n`;\n\nconst getSearchPublishedContent = fields => gql`\n query searchPublishedContent($rawQueryStringified: String!, $offset: Int, $limit: Int, $sort: String) {\n searchPublishedContent(rawQueryStringified: $rawQueryStringified, offset: $offset, limit: $limit, sort: $sort) {\n ${fields}\n }\n }\n `;\n\nconst getUser = userProps => gql`\n query getUser($id: String!) {\n getUser(id: $id) {\n id\n ${userProps}\n }\n }\n`;\n\nconst getEntitySchema = gql`\n query getEntitySchemas($identifier: String!) {\n getEntitySchemas(identifier: $identifier) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getSingleEntitySchema = gql`\n query getEntitySchema($id: String!) {\n getEntitySchema: getEntitySchema(id: $id) {\n ${defaultSchemaProps}\n }\n }\n`;\n\nconst getRecordParents = queryName => gql`\nquery getRecordParents($id: String!){\n recordParents: ${queryName}(id: $id){\n id,\n name,\n url,\n parents {\n id,\n name\n url\n }\n }\n}`;\n\nconst getMultipleSchema = identifiers => {\n const queryString = identifiers\n .map(\n id => `${id}: getEntitySchema(id: \"${id}\") {\n ${defaultSchemaProps}\n }`\n )\n .join(`\\n`);\n return gql`\n query {\n ${queryString}\n }`;\n};\n\nconst getFiles = gql`\n query getFiles($where: JSON!) {\n getFiles(where: $where) {\n id\n url\n data\n }\n }\n`;\n\nconst getFileById = gql`\n query getFile($id: String!) {\n getFile(id: $id) {\n id\n url\n data\n }\n }\n`;\n\nconst getCount = action => gql`query countData($where: JSON!) {\n ${action} (where: $where)\n }\n`;\n\nconst generateQuery = (action, props) => `\n query getEntityData(\n $where: JSON\n $limit: Int\n $offset: Int\n $sort: [${upperFirst(action)}SortItem]){\n ${action} (where: $where, limit: $limit, offset: $offset, sort: $sort){\n ${props}\n id\n __typename\n }\n }\n `;\nconst generateMultiItemQuery = (action, props) => gql`\n query getEntityData($where: JSON){\n ${action} (where: $where){\n ${props}\n id\n __typename\n }\n }\n `;\n\nconst generateSingleItemQuery = (action, props) => gql`\n query getEntityData($id: String!){\n entityData: ${action}(id: $id){\n ${props},\n id,\n __typename\n }\n }\n `;\n\n// TODO: extend function to handle properties and make them dynamic with a config schema for each entity.\nconst getAction = (action, props) => {\n const query = generateQuery(action, props);\n return gql`\n ${query}\n `;\n};\n\nconst getPublishedContent = entity => `\n query searchPublishedContent(\n $rawQueryStringified: String!\n $offset: Int\n $limit: Int\n $sort: String\n ) {\n searchPublishedContent(\n rawQueryStringified: $rawQueryStringified\n offset: $offset\n limit: $limit\n sort: $sort\n ) {\n results {\n ... on ${entity} {\n id\n name\n image {\n url\n __typename\n }\n url\n __typename\n }\n __typename\n }\n total\n __typename\n }\n }\n`;\n\nconst getItemList = gql`\n query getItemList($id: String!) {\n getItemList(id: $id) {\n listItems {\n itemId\n itemEntity\n }\n }\n }\n`;\n\nconst addItemsToList = gql`\n mutation addItemsToList(\n $name: String!\n $id: String\n $listItems: [AddItemsToListInputListItemsItem]!\n ) {\n addItemsToList(input: { name: $name, id: $id, listItems: $listItems }) {\n result {\n id\n listItems {\n itemId\n itemEntity\n }\n }\n }\n }\n`;\n\nconst removeItemsFromList = gql`\n mutation removeItemsFromList(\n $listId: String!\n $listItems: [RemoveItemsFromListInputListItemsItem]!\n ) {\n removeItemsFromList(input: { id: $listId, listItems: $listItems }) {\n result {\n id\n listItems {\n itemId\n itemEntity\n }\n }\n }\n }\n`;\n\nexport {\n getEntitySchema,\n getSingleEntitySchema,\n getAction,\n getFiles,\n getFileById,\n generateMultiItemQuery,\n generateSingleItemQuery,\n getPublishedContent,\n getSearchPublishedContent,\n getCount,\n getMultipleSchema,\n getUser,\n getRecordParents,\n getItemList,\n addItemsToList,\n removeItemsFromList\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;AAEA,IAAMA,kBAAkB,kHAAxB;;AAWA,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAAAC,MAAM;EAAA,WAAIC,WAAJ,+VAG9BD,MAH8B;AAAA,CAAxC;;;;AAQA,IAAME,OAAO,GAAG,SAAVA,OAAU,CAAAC,SAAS;EAAA,WAAIF,WAAJ,uLAIjBE,SAJiB;AAAA,CAAzB;;;AASA,IAAMC,eAAe,OAAGH,WAAH,uNAGbH,kBAHa,CAArB;;AAQA,IAAMO,qBAAqB,OAAGJ,WAAH,8MAGnBH,kBAHmB,CAA3B;;;AAQA,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAAC,SAAS;EAAA,WAAIN,WAAJ,gQAEfM,SAFe;AAAA,CAAlC;;;;AAcA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAC,WAAW,EAAI;EACvC,IAAMC,WAAW,GAAGD,WAAW,CAC5BE,GADiB,CAEhB,UAAAC,EAAE;IAAA,iBAAOA,EAAP,qCAAmCA,EAAnC,gCACMd,kBADN;EAAA,CAFc,EAMjBe,IANiB,MAApB;EAOA,WAAOZ,WAAP,0HAEMS,WAFN;AAID,CAZD;;;AAcA,IAAMI,QAAQ,OAAGb,WAAH,0MAAd;;AAUA,IAAMc,WAAW,OAAGd,WAAH,iMAAjB;;;AAUA,IAAMe,QAAQ,GAAG,SAAXA,QAAW,CAAAC,MAAM;EAAA,WAAIhB,WAAJ,2JACjBgB,MADiB;AAAA,CAAvB;;;;AAKA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACD,MAAD,EAASE,KAAT;EAAA,4GAKR,wBAAWF,MAAX,CALQ,8BAMhBA,MANgB,mFAOdE,KAPc;AAAA,CAAtB;;AAaA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACH,MAAD,EAASE,KAAT;EAAA,WAAmBlB,WAAnB,qNAEzBgB,MAFyB,EAGvBE,KAHuB;AAAA,CAA/B;;;;AAUA,IAAME,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACJ,MAAD,EAASE,KAAT;EAAA,WAAmBlB,WAAnB,sNAEdgB,MAFc,EAG1BE,KAH0B;AAAA,CAAhC,C,CAUA;;;;;AACA,IAAMG,SAAS,GAAG,SAAZA,SAAY,CAACL,MAAD,EAASE,KAAT,EAAmB;EACnC,IAAMI,KAAK,GAAGL,aAAa,CAACD,MAAD,EAASE,KAAT,CAA3B;EACA,WAAOlB,WAAP,0GACIsB,KADJ;AAGD,CALD;;;;AAOA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAC,MAAM;EAAA,0UAcjBA,MAdiB;AAAA,CAAlC;;;AAgCA,IAAMC,WAAW,OAAGzB,WAAH,0OAAjB;;AAWA,IAAM0B,cAAc,OAAG1B,WAAH,iaAApB;;AAkBA,IAAM2B,mBAAmB,OAAG3B,WAAH,wZAAzB"}
|
|
@@ -9,6 +9,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
+
require("core-js/modules/es.regexp.exec.js");
|
|
13
|
+
|
|
14
|
+
require("core-js/modules/es.string.replace.js");
|
|
15
|
+
|
|
12
16
|
require("core-js/modules/es.array.concat.js");
|
|
13
17
|
|
|
14
18
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
@@ -19,8 +23,12 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
19
23
|
|
|
20
24
|
var _client = require("@apollo/client");
|
|
21
25
|
|
|
26
|
+
var _router = require("next/router");
|
|
27
|
+
|
|
22
28
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
29
|
|
|
30
|
+
var _queryString = require("query-string");
|
|
31
|
+
|
|
24
32
|
var _query = require("../../application/query");
|
|
25
33
|
|
|
26
34
|
var _CardRender = _interopRequireDefault(require("./CardRender"));
|
|
@@ -29,14 +37,25 @@ var _helpers = require("../../helpers");
|
|
|
29
37
|
|
|
30
38
|
var _constants = require("../../constants");
|
|
31
39
|
|
|
32
|
-
var _excluded = ["entity", "propsToDisplay", "itemsToDisplay"],
|
|
40
|
+
var _excluded = ["entity", "propsToDisplay", "itemsToDisplay", "itemListName"],
|
|
33
41
|
_excluded2 = ["gridModifier"];
|
|
34
42
|
|
|
35
43
|
var CardFactory = function CardFactory(_ref) {
|
|
36
44
|
var entity = _ref.entity,
|
|
37
45
|
propsToDisplay = _ref.propsToDisplay,
|
|
38
46
|
itemsToDisplay = _ref.itemsToDisplay,
|
|
47
|
+
itemListName = _ref.itemListName,
|
|
39
48
|
cardProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
49
|
+
var router = (0, _router.useRouter)();
|
|
50
|
+
var asPath = router.asPath;
|
|
51
|
+
var parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');
|
|
52
|
+
|
|
53
|
+
var _parseUrl = (0, _queryString.parseUrl)(parsedQuery),
|
|
54
|
+
_parseUrl$query = _parseUrl.query;
|
|
55
|
+
|
|
56
|
+
_parseUrl$query = _parseUrl$query === void 0 ? {} : _parseUrl$query;
|
|
57
|
+
var queryItemListId = _parseUrl$query.itemListId;
|
|
58
|
+
var itemListId = (0, _helpers.getItemListId)(itemListName, queryItemListId);
|
|
40
59
|
|
|
41
60
|
var _useQuery = (0, _client.useQuery)(_query.getSingleEntitySchema, {
|
|
42
61
|
variables: {
|
|
@@ -47,7 +66,17 @@ var CardFactory = function CardFactory(_ref) {
|
|
|
47
66
|
error = _useQuery.error,
|
|
48
67
|
loading = _useQuery.loading;
|
|
49
68
|
|
|
50
|
-
|
|
69
|
+
var _useQuery2 = (0, _client.useQuery)(_query.getItemList, {
|
|
70
|
+
variables: {
|
|
71
|
+
id: itemListId
|
|
72
|
+
},
|
|
73
|
+
skip: !itemListId
|
|
74
|
+
}),
|
|
75
|
+
_useQuery2$data = _useQuery2.data,
|
|
76
|
+
itemListData = _useQuery2$data === void 0 ? {} : _useQuery2$data,
|
|
77
|
+
itemListLoading = _useQuery2.loading;
|
|
78
|
+
|
|
79
|
+
if (loading || itemListLoading) return '';
|
|
51
80
|
if (error) return error.message;
|
|
52
81
|
if (!data) return null;
|
|
53
82
|
var propsToDisplayValues = (0, _helpers.checkPropsToUse)(propsToDisplay);
|
|
@@ -58,11 +87,12 @@ var CardFactory = function CardFactory(_ref) {
|
|
|
58
87
|
cardRenderProps = (0, _objectWithoutProperties2["default"])(_getGenericProps, _excluded2);
|
|
59
88
|
|
|
60
89
|
var extraModifierForBanner = cardRenderProps.banner ? _constants.WITH_BANNER : '';
|
|
90
|
+
var itemListIds = (0, _helpers.getItemListIds)(itemListData);
|
|
61
91
|
return /*#__PURE__*/_react["default"].createElement(_CardRender["default"], (0, _extends2["default"])({
|
|
62
92
|
gridModifier: "".concat(gridModifier).concat(extraModifierForBanner),
|
|
63
93
|
bannerModifier: extraModifierForBanner,
|
|
64
94
|
entity: entity,
|
|
65
|
-
itemsToDisplay: itemsToDisplay,
|
|
95
|
+
itemsToDisplay: itemListIds || itemsToDisplay,
|
|
66
96
|
propsToDisplay: propsToDisplay,
|
|
67
97
|
entityFields: extraProps
|
|
68
98
|
}, cardRenderProps));
|
|
@@ -71,11 +101,13 @@ var CardFactory = function CardFactory(_ref) {
|
|
|
71
101
|
CardFactory.propTypes = {
|
|
72
102
|
entity: _propTypes["default"].string.isRequired,
|
|
73
103
|
propsToDisplay: _propTypes["default"].array,
|
|
74
|
-
itemsToDisplay: _propTypes["default"].array
|
|
104
|
+
itemsToDisplay: _propTypes["default"].array,
|
|
105
|
+
itemListName: _propTypes["default"].string
|
|
75
106
|
};
|
|
76
107
|
CardFactory.defaultProps = {
|
|
77
108
|
propsToDisplay: [],
|
|
78
|
-
itemsToDisplay: []
|
|
109
|
+
itemsToDisplay: [],
|
|
110
|
+
itemListName: ''
|
|
79
111
|
};
|
|
80
112
|
var _default = CardFactory;
|
|
81
113
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardFactory.js","names":["CardFactory","entity","propsToDisplay","itemsToDisplay","cardProps","getSingleEntitySchema","variables","id","data","error","loading","message","propsToDisplayValues","extraProps","gridModifier","cardRenderProps","extraModifierForBanner","banner","WITH_BANNER","propTypes","PropTypes","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardFactory.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { getSingleEntitySchema } from '../../application/query';\nimport CardRender from './CardRender';\nimport {
|
|
1
|
+
{"version":3,"file":"CardFactory.js","names":["CardFactory","entity","propsToDisplay","itemsToDisplay","itemListName","cardProps","router","asPath","parsedQuery","replace","query","queryItemListId","itemListId","getSingleEntitySchema","variables","id","data","error","loading","getItemList","skip","itemListData","itemListLoading","message","propsToDisplayValues","extraProps","gridModifier","cardRenderProps","extraModifierForBanner","banner","WITH_BANNER","itemListIds","propTypes","PropTypes","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardFactory.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport { getSingleEntitySchema, getItemList } from '../../application/query';\nimport CardRender from './CardRender';\nimport {\n buildPropsQuery,\n getGenericProps,\n checkPropsToUse,\n getItemListId,\n getItemListIds\n} from '../../helpers';\nimport { WITH_BANNER } from '../../constants';\n\nconst CardFactory = ({ entity, propsToDisplay, itemsToDisplay, itemListName, ...cardProps }) => {\n const router = useRouter();\n const { asPath } = router;\n const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');\n const { query: { itemListId: queryItemListId } = {} } = parseUrl(parsedQuery);\n const itemListId = getItemListId(itemListName, queryItemListId);\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entity }\n });\n const { data: itemListData = {}, loading: itemListLoading } = useQuery(getItemList, {\n variables: { id: itemListId },\n skip: !itemListId\n });\n\n if (loading || itemListLoading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';\n const { gridModifier, ...cardRenderProps } = getGenericProps(cardProps);\n const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';\n const itemListIds = getItemListIds(itemListData);\n\n return (\n <CardRender\n gridModifier={`${gridModifier}${extraModifierForBanner}`}\n bannerModifier={extraModifierForBanner}\n entity={entity}\n itemsToDisplay={itemListIds || itemsToDisplay}\n propsToDisplay={propsToDisplay}\n entityFields={extraProps}\n {...cardRenderProps}\n />\n );\n};\n\nCardFactory.propTypes = {\n entity: PropTypes.string.isRequired,\n propsToDisplay: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n itemListName: PropTypes.string\n};\n\nCardFactory.defaultProps = {\n propsToDisplay: [],\n itemsToDisplay: [],\n itemListName: ''\n};\n\nexport default CardFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAOA;;;;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAA4E;EAAA,IAAzEC,MAAyE,QAAzEA,MAAyE;EAAA,IAAjEC,cAAiE,QAAjEA,cAAiE;EAAA,IAAjDC,cAAiD,QAAjDA,cAAiD;EAAA,IAAjCC,YAAiC,QAAjCA,YAAiC;EAAA,IAAhBC,SAAgB;EAC9F,IAAMC,MAAM,GAAG,wBAAf;EACA,IAAQC,MAAR,GAAmBD,MAAnB,CAAQC,MAAR;EACA,IAAMC,WAAW,GAAGD,MAAM,CAACE,OAAP,CAAe,MAAf,EAAuB,GAAvB,EAA4BA,OAA5B,CAAoC,MAApC,EAA4C,GAA5C,CAApB;;EACA,gBAAwD,2BAASD,WAAT,CAAxD;EAAA,gCAAQE,KAAR;;EAAA,+CAAiD,EAAjD;EAAA,IAA6BC,eAA7B,mBAAiBC,UAAjB;EACA,IAAMA,UAAU,GAAG,4BAAcR,YAAd,EAA4BO,eAA5B,CAAnB;;EACA,gBAAiC,sBAASE,4BAAT,EAAgC;IAC/DC,SAAS,EAAE;MAAEC,EAAE,EAAEd;IAAN;EADoD,CAAhC,CAAjC;EAAA,IAAQe,IAAR,aAAQA,IAAR;EAAA,IAAcC,KAAd,aAAcA,KAAd;EAAA,IAAqBC,OAArB,aAAqBA,OAArB;;EAGA,iBAA8D,sBAASC,kBAAT,EAAsB;IAClFL,SAAS,EAAE;MAAEC,EAAE,EAAEH;IAAN,CADuE;IAElFQ,IAAI,EAAE,CAACR;EAF2E,CAAtB,CAA9D;EAAA,iCAAQI,IAAR;EAAA,IAAcK,YAAd,gCAA6B,EAA7B;EAAA,IAA0CC,eAA1C,cAAiCJ,OAAjC;;EAKA,IAAIA,OAAO,IAAII,eAAf,EAAgC,OAAO,EAAP;EAChC,IAAIL,KAAJ,EAAW,OAAOA,KAAK,CAACM,OAAb;EACX,IAAI,CAACP,IAAL,EAAW,OAAO,IAAP;EAEX,IAAMQ,oBAAoB,GAAG,8BAAgBtB,cAAhB,CAA7B;EACA,IAAMuB,UAAU,GAAG,8BAAgBT,IAAhB,EAAsBQ,oBAAtB,EAA4CnB,SAA5C,KAA0D,EAA7E;;EACA,uBAA6C,8BAAgBA,SAAhB,CAA7C;EAAA,IAAQqB,YAAR,oBAAQA,YAAR;EAAA,IAAyBC,eAAzB;;EACA,IAAMC,sBAAsB,GAAGD,eAAe,CAACE,MAAhB,GAAyBC,sBAAzB,GAAuC,EAAtE;EACA,IAAMC,WAAW,GAAG,6BAAeV,YAAf,CAApB;EAEA,oBACE,gCAAC,sBAAD;IACE,YAAY,YAAKK,YAAL,SAAoBE,sBAApB,CADd;IAEE,cAAc,EAAEA,sBAFlB;IAGE,MAAM,EAAE3B,MAHV;IAIE,cAAc,EAAE8B,WAAW,IAAI5B,cAJjC;IAKE,cAAc,EAAED,cALlB;IAME,YAAY,EAAEuB;EANhB,GAOME,eAPN,EADF;AAWD,CAnCD;;AAqCA3B,WAAW,CAACgC,SAAZ,GAAwB;EACtB/B,MAAM,EAAEgC,sBAAUC,MAAV,CAAiBC,UADH;EAEtBjC,cAAc,EAAE+B,sBAAUG,KAFJ;EAGtBjC,cAAc,EAAE8B,sBAAUG,KAHJ;EAItBhC,YAAY,EAAE6B,sBAAUC;AAJF,CAAxB;AAOAlC,WAAW,CAACqC,YAAZ,GAA2B;EACzBnC,cAAc,EAAE,EADS;EAEzBC,cAAc,EAAE,EAFS;EAGzBC,YAAY,EAAE;AAHW,CAA3B;eAMeJ,W"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.string.iterator.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.weak-map.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/es.object.define-property.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
14
|
+
|
|
15
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
16
|
+
|
|
17
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
18
|
+
|
|
19
|
+
Object.defineProperty(exports, "__esModule", {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
exports["default"] = void 0;
|
|
23
|
+
|
|
24
|
+
require("core-js/modules/es.array.find.js");
|
|
25
|
+
|
|
26
|
+
require("core-js/modules/es.object.to-string.js");
|
|
27
|
+
|
|
28
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
29
|
+
|
|
30
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
31
|
+
|
|
32
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
33
|
+
|
|
34
|
+
var _bs = require("react-icons/bs");
|
|
35
|
+
|
|
36
|
+
var _client = require("@apollo/client");
|
|
37
|
+
|
|
38
|
+
var _query = require("../../application/query");
|
|
39
|
+
|
|
40
|
+
var _helpers = require("../../helpers");
|
|
41
|
+
|
|
42
|
+
var _constants = require("../../constants");
|
|
43
|
+
|
|
44
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
45
|
+
|
|
46
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
47
|
+
|
|
48
|
+
var ItemListButton = function ItemListButton(_ref) {
|
|
49
|
+
var listName = _ref.listName,
|
|
50
|
+
parent = _ref.parent,
|
|
51
|
+
modifier = _ref.modifier;
|
|
52
|
+
var itemId = parent.itemId,
|
|
53
|
+
itemEntity = parent.itemEntity;
|
|
54
|
+
var idFromStorage = (0, _helpers.getItemListId)(listName);
|
|
55
|
+
|
|
56
|
+
var _useState = (0, _react.useState)(idFromStorage),
|
|
57
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
58
|
+
listId = _useState2[0],
|
|
59
|
+
setListId = _useState2[1];
|
|
60
|
+
|
|
61
|
+
var _useState3 = (0, _react.useState)(false),
|
|
62
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
63
|
+
isHover = _useState4[0],
|
|
64
|
+
setIsHover = _useState4[1];
|
|
65
|
+
|
|
66
|
+
(0, _react.useEffect)(function () {
|
|
67
|
+
var storageEventHandler = function storageEventHandler() {
|
|
68
|
+
var newId = (0, _helpers.getItemListId)(listName);
|
|
69
|
+
setListId(newId);
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
window.addEventListener('storage', storageEventHandler);
|
|
73
|
+
return function () {
|
|
74
|
+
window.removeEventListener('storage', storageEventHandler);
|
|
75
|
+
};
|
|
76
|
+
}, [listName]);
|
|
77
|
+
|
|
78
|
+
var getIcon = function getIcon() {
|
|
79
|
+
if (isInList) return isHover ? _bs.BsBookmarkXFill : _bs.BsBookmarkCheckFill;
|
|
80
|
+
return isHover ? _bs.BsBookmarkStarFill : _bs.BsBookmarkStar;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
var _useQuery = (0, _client.useQuery)(_query.getItemList, {
|
|
84
|
+
variables: {
|
|
85
|
+
id: listId
|
|
86
|
+
},
|
|
87
|
+
skip: !listId
|
|
88
|
+
}),
|
|
89
|
+
data = _useQuery.data,
|
|
90
|
+
error = _useQuery.error,
|
|
91
|
+
loading = _useQuery.loading;
|
|
92
|
+
|
|
93
|
+
var _useMutation = (0, _client.useMutation)(_query.addItemsToList, {
|
|
94
|
+
onCompleted: function onCompleted(_ref2) {
|
|
95
|
+
var listAddResult = _ref2.addItemsToList;
|
|
96
|
+
var id = listAddResult.result.id;
|
|
97
|
+
|
|
98
|
+
if (!listId) {
|
|
99
|
+
localStorage.setItem((0, _constants.LIST_ITEM_LOCAL_KEY)(listName), id);
|
|
100
|
+
window.dispatchEvent(new Event('storage'));
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}),
|
|
104
|
+
_useMutation2 = (0, _slicedToArray2["default"])(_useMutation, 1),
|
|
105
|
+
addListItem = _useMutation2[0];
|
|
106
|
+
|
|
107
|
+
var _useMutation3 = (0, _client.useMutation)(_query.removeItemsFromList),
|
|
108
|
+
_useMutation4 = (0, _slicedToArray2["default"])(_useMutation3, 1),
|
|
109
|
+
removeListItem = _useMutation4[0];
|
|
110
|
+
|
|
111
|
+
var clickHandler = function clickHandler() {
|
|
112
|
+
setIsHover(false);
|
|
113
|
+
isInList ? removeListItem({
|
|
114
|
+
variables: {
|
|
115
|
+
listId: listId,
|
|
116
|
+
listItems: [{
|
|
117
|
+
itemId: itemId,
|
|
118
|
+
itemEntity: itemEntity
|
|
119
|
+
}]
|
|
120
|
+
},
|
|
121
|
+
skip: !listId
|
|
122
|
+
}) : addListItem({
|
|
123
|
+
variables: {
|
|
124
|
+
name: listName,
|
|
125
|
+
id: listId,
|
|
126
|
+
listItems: [{
|
|
127
|
+
itemId: itemId,
|
|
128
|
+
itemEntity: itemEntity
|
|
129
|
+
}]
|
|
130
|
+
},
|
|
131
|
+
skip: !listId
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
if (loading) return '';
|
|
136
|
+
if (error) return error.message;
|
|
137
|
+
var listItems = (0, _helpers.getItemListData)(data);
|
|
138
|
+
var isInList = !!listItems.find(function (_ref3) {
|
|
139
|
+
var idToCheck = _ref3.itemId;
|
|
140
|
+
return idToCheck === itemId;
|
|
141
|
+
});
|
|
142
|
+
var Icon = getIcon();
|
|
143
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
144
|
+
className: "item-list-button ".concat(modifier),
|
|
145
|
+
role: "button",
|
|
146
|
+
onClick: clickHandler,
|
|
147
|
+
onMouseEnter: function onMouseEnter() {
|
|
148
|
+
return setIsHover(true);
|
|
149
|
+
},
|
|
150
|
+
onMouseLeave: function onMouseLeave() {
|
|
151
|
+
return setIsHover(false);
|
|
152
|
+
}
|
|
153
|
+
}, /*#__PURE__*/_react["default"].createElement("i", null, /*#__PURE__*/_react["default"].createElement(Icon, null)));
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
ItemListButton.propTypes = {
|
|
157
|
+
parent: _propTypes["default"].object,
|
|
158
|
+
listName: _propTypes["default"].string,
|
|
159
|
+
modifier: _propTypes["default"].string
|
|
160
|
+
};
|
|
161
|
+
ItemListButton.defaultProps = {
|
|
162
|
+
parent: {},
|
|
163
|
+
listName: '',
|
|
164
|
+
modifier: ''
|
|
165
|
+
};
|
|
166
|
+
var _default = ItemListButton;
|
|
167
|
+
exports["default"] = _default;
|
|
168
|
+
//# sourceMappingURL=ItemListButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ItemListButton.js","names":["ItemListButton","listName","parent","modifier","itemId","itemEntity","idFromStorage","listId","setListId","isHover","setIsHover","storageEventHandler","newId","window","addEventListener","removeEventListener","getIcon","isInList","BsBookmarkXFill","BsBookmarkCheckFill","BsBookmarkStarFill","BsBookmarkStar","getItemList","variables","id","skip","data","error","loading","addItemsToList","onCompleted","listAddResult","result","localStorage","setItem","dispatchEvent","Event","addListItem","removeItemsFromList","removeListItem","clickHandler","listItems","name","message","find","idToCheck","Icon","propTypes","PropTypes","object","string","defaultProps"],"sources":["../../../src/components/ItemListButton/ItemListButton.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n BsBookmarkStarFill,\n BsBookmarkCheckFill,\n BsBookmarkStar,\n BsBookmarkXFill\n} from 'react-icons/bs';\nimport { useQuery, useMutation } from '@apollo/client';\nimport { getItemList, addItemsToList, removeItemsFromList } from '../../application/query';\nimport { getItemListData, getItemListId } from '../../helpers';\nimport { LIST_ITEM_LOCAL_KEY } from '../../constants';\n\nconst ItemListButton = ({ listName, parent, modifier }) => {\n const { itemId, itemEntity } = parent;\n const idFromStorage = getItemListId(listName);\n const [listId, setListId] = useState(idFromStorage);\n const [isHover, setIsHover] = useState(false);\n\n useEffect(\n () => {\n const storageEventHandler = () => {\n const newId = getItemListId(listName);\n setListId(newId);\n };\n\n window.addEventListener('storage', storageEventHandler);\n\n return () => {\n window.removeEventListener('storage', storageEventHandler);\n };\n },\n [listName]\n );\n const getIcon = () => {\n if (isInList) return isHover ? BsBookmarkXFill : BsBookmarkCheckFill;\n return isHover ? BsBookmarkStarFill : BsBookmarkStar;\n };\n\n const { data, error, loading } = useQuery(getItemList, {\n variables: { id: listId },\n skip: !listId\n });\n\n const [addListItem] = useMutation(addItemsToList, {\n onCompleted: ({ addItemsToList: listAddResult }) => {\n const {\n result: { id }\n } = listAddResult;\n\n if (!listId) {\n localStorage.setItem(LIST_ITEM_LOCAL_KEY(listName), id);\n window.dispatchEvent(new Event('storage'));\n }\n }\n });\n\n const [removeListItem] = useMutation(removeItemsFromList);\n\n const clickHandler = () => {\n setIsHover(false);\n isInList\n ? removeListItem({\n variables: { listId, listItems: [{ itemId, itemEntity }] },\n skip: !listId\n })\n : addListItem({\n variables: { name: listName, id: listId, listItems: [{ itemId, itemEntity }] },\n skip: !listId\n });\n };\n\n if (loading) return '';\n if (error) return error.message;\n\n const listItems = getItemListData(data);\n const isInList = !!listItems.find(({ itemId: idToCheck }) => idToCheck === itemId);\n\n const Icon = getIcon();\n\n return (\n <div\n className={`item-list-button ${modifier}`}\n role=\"button\"\n onClick={clickHandler}\n onMouseEnter={() => setIsHover(true)}\n onMouseLeave={() => setIsHover(false)}>\n <i>\n <Icon />\n </i>\n </div>\n );\n};\n\nItemListButton.propTypes = {\n parent: PropTypes.object,\n listName: PropTypes.string,\n modifier: PropTypes.string\n};\n\nItemListButton.defaultProps = {\n parent: {},\n listName: '',\n modifier: ''\n};\n\nexport default ItemListButton;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _ItemListButton = _interopRequireDefault(require("./ItemListButton"));
|
|
13
|
+
|
|
14
|
+
var _default = _ItemListButton["default"];
|
|
15
|
+
exports["default"] = _default;
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["ItemListButton"],"sources":["../../../src/components/ItemListButton/index.js"],"sourcesContent":["import ItemListButton from './ItemListButton';\n\nexport default ItemListButton;\n"],"mappings":";;;;;;;;;;;AAAA;;eAEeA,0B"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
require("core-js/modules/es.array.concat.js");
|
|
13
|
+
|
|
14
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
+
|
|
16
|
+
var _react = require("react");
|
|
17
|
+
|
|
18
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
|
+
|
|
20
|
+
var _router = require("next/router");
|
|
21
|
+
|
|
22
|
+
var _client = require("@apollo/client");
|
|
23
|
+
|
|
24
|
+
var _bs = require("react-icons/bs");
|
|
25
|
+
|
|
26
|
+
var _query = require("../../application/query");
|
|
27
|
+
|
|
28
|
+
var _helpers = require("../../helpers");
|
|
29
|
+
|
|
30
|
+
var ItemListCounter = function ItemListCounter(_ref) {
|
|
31
|
+
var listName = _ref.listName,
|
|
32
|
+
modifier = _ref.modifier,
|
|
33
|
+
url = _ref.url;
|
|
34
|
+
var router = (0, _router.useRouter)();
|
|
35
|
+
var idFromStorage = (0, _helpers.getItemListId)(listName);
|
|
36
|
+
|
|
37
|
+
var _useState = (0, _react.useState)(idFromStorage),
|
|
38
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
39
|
+
listId = _useState2[0],
|
|
40
|
+
setListId = _useState2[1];
|
|
41
|
+
|
|
42
|
+
(0, _react.useEffect)(function () {
|
|
43
|
+
var storageEventHandler = function storageEventHandler() {
|
|
44
|
+
var newId = (0, _helpers.getItemListId)(listName);
|
|
45
|
+
setListId(newId);
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
window.addEventListener('storage', storageEventHandler);
|
|
49
|
+
return function () {
|
|
50
|
+
window.removeEventListener('storage', storageEventHandler);
|
|
51
|
+
};
|
|
52
|
+
}, [listName]);
|
|
53
|
+
|
|
54
|
+
var _useQuery = (0, _client.useQuery)(_query.getItemList, {
|
|
55
|
+
variables: {
|
|
56
|
+
id: listId
|
|
57
|
+
},
|
|
58
|
+
skip: !listId
|
|
59
|
+
}),
|
|
60
|
+
data = _useQuery.data,
|
|
61
|
+
error = _useQuery.error,
|
|
62
|
+
loading = _useQuery.loading;
|
|
63
|
+
|
|
64
|
+
if (loading) return '';
|
|
65
|
+
if (error) return error.message;
|
|
66
|
+
var listItems = (0, _helpers.getItemListData)(data);
|
|
67
|
+
var listLength = listItems.length;
|
|
68
|
+
var CounterIcon = listLength ? _bs.BsBookmarkStarFill : _bs.BsBookmarkStar;
|
|
69
|
+
|
|
70
|
+
var handleClick = function handleClick() {
|
|
71
|
+
return router.push('/Resolver', "".concat(url, "?itemListId=").concat(listId));
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
75
|
+
role: "button",
|
|
76
|
+
type: "button",
|
|
77
|
+
className: "icon-button item-list-counter ".concat(modifier),
|
|
78
|
+
onClick: handleClick
|
|
79
|
+
}, /*#__PURE__*/React.createElement(CounterIcon, null), /*#__PURE__*/React.createElement("span", {
|
|
80
|
+
className: "icon-button__badge"
|
|
81
|
+
}, listLength));
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
ItemListCounter.propTypes = {
|
|
85
|
+
url: _propTypes["default"].string,
|
|
86
|
+
listName: _propTypes["default"].string,
|
|
87
|
+
modifier: _propTypes["default"].string
|
|
88
|
+
};
|
|
89
|
+
ItemListCounter.defaultProps = {
|
|
90
|
+
url: '',
|
|
91
|
+
listName: '',
|
|
92
|
+
modifier: ''
|
|
93
|
+
};
|
|
94
|
+
var _default = ItemListCounter;
|
|
95
|
+
exports["default"] = _default;
|
|
96
|
+
//# sourceMappingURL=ItemListCounter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ItemListCounter.js","names":["ItemListCounter","listName","modifier","url","router","idFromStorage","listId","setListId","storageEventHandler","newId","window","addEventListener","removeEventListener","getItemList","variables","id","skip","data","error","loading","message","listItems","listLength","length","CounterIcon","BsBookmarkStarFill","BsBookmarkStar","handleClick","push","propTypes","PropTypes","string","defaultProps"],"sources":["../../../src/components/ItemListCounter/ItemListCounter.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport { BsBookmarkStarFill, BsBookmarkStar } from 'react-icons/bs';\nimport { getItemList } from '../../application/query';\nimport { getItemListData, getItemListId } from '../../helpers';\n\nconst ItemListCounter = ({ listName, modifier, url }) => {\n const router = useRouter();\n const idFromStorage = getItemListId(listName);\n const [listId, setListId] = useState(idFromStorage);\n\n useEffect(\n () => {\n const storageEventHandler = () => {\n const newId = getItemListId(listName);\n setListId(newId);\n };\n\n window.addEventListener('storage', storageEventHandler);\n\n return () => {\n window.removeEventListener('storage', storageEventHandler);\n };\n },\n [listName]\n );\n\n const { data, error, loading } = useQuery(getItemList, {\n variables: { id: listId },\n skip: !listId\n });\n\n if (loading) return '';\n if (error) return error.message;\n const listItems = getItemListData(data);\n const listLength = listItems.length;\n const CounterIcon = listLength ? BsBookmarkStarFill : BsBookmarkStar;\n\n const handleClick = () => router.push('/Resolver', `${url}?itemListId=${listId}`);\n\n return (\n <div\n role=\"button\"\n type=\"button\"\n className={`icon-button item-list-counter ${modifier}`}\n onClick={handleClick}>\n <CounterIcon />\n <span className=\"icon-button__badge\">{listLength}</span>\n </div>\n );\n};\n\nItemListCounter.propTypes = {\n url: PropTypes.string,\n listName: PropTypes.string,\n modifier: PropTypes.string\n};\n\nItemListCounter.defaultProps = {\n url: '',\n listName: '',\n modifier: ''\n};\n\nexport default ItemListCounter;\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,OAAiC;EAAA,IAA9BC,QAA8B,QAA9BA,QAA8B;EAAA,IAApBC,QAAoB,QAApBA,QAAoB;EAAA,IAAVC,GAAU,QAAVA,GAAU;EACvD,IAAMC,MAAM,GAAG,wBAAf;EACA,IAAMC,aAAa,GAAG,4BAAcJ,QAAd,CAAtB;;EACA,gBAA4B,qBAASI,aAAT,CAA5B;EAAA;EAAA,IAAOC,MAAP;EAAA,IAAeC,SAAf;;EAEA,sBACE,YAAM;IACJ,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,GAAM;MAChC,IAAMC,KAAK,GAAG,4BAAcR,QAAd,CAAd;MACAM,SAAS,CAACE,KAAD,CAAT;IACD,CAHD;;IAKAC,MAAM,CAACC,gBAAP,CAAwB,SAAxB,EAAmCH,mBAAnC;IAEA,OAAO,YAAM;MACXE,MAAM,CAACE,mBAAP,CAA2B,SAA3B,EAAsCJ,mBAAtC;IACD,CAFD;EAGD,CAZH,EAaE,CAACP,QAAD,CAbF;;EAgBA,gBAAiC,sBAASY,kBAAT,EAAsB;IACrDC,SAAS,EAAE;MAAEC,EAAE,EAAET;IAAN,CAD0C;IAErDU,IAAI,EAAE,CAACV;EAF8C,CAAtB,CAAjC;EAAA,IAAQW,IAAR,aAAQA,IAAR;EAAA,IAAcC,KAAd,aAAcA,KAAd;EAAA,IAAqBC,OAArB,aAAqBA,OAArB;;EAKA,IAAIA,OAAJ,EAAa,OAAO,EAAP;EACb,IAAID,KAAJ,EAAW,OAAOA,KAAK,CAACE,OAAb;EACX,IAAMC,SAAS,GAAG,8BAAgBJ,IAAhB,CAAlB;EACA,IAAMK,UAAU,GAAGD,SAAS,CAACE,MAA7B;EACA,IAAMC,WAAW,GAAGF,UAAU,GAAGG,sBAAH,GAAwBC,kBAAtD;;EAEA,IAAMC,WAAW,GAAG,SAAdA,WAAc;IAAA,OAAMvB,MAAM,CAACwB,IAAP,CAAY,WAAZ,YAA4BzB,GAA5B,yBAA8CG,MAA9C,EAAN;EAAA,CAApB;;EAEA,oBACE;IACE,IAAI,EAAC,QADP;IAEE,IAAI,EAAC,QAFP;IAGE,SAAS,0CAAmCJ,QAAnC,CAHX;IAIE,OAAO,EAAEyB;EAJX,gBAKE,oBAAC,WAAD,OALF,eAME;IAAM,SAAS,EAAC;EAAhB,GAAsCL,UAAtC,CANF,CADF;AAUD,CA5CD;;AA8CAtB,eAAe,CAAC6B,SAAhB,GAA4B;EAC1B1B,GAAG,EAAE2B,sBAAUC,MADW;EAE1B9B,QAAQ,EAAE6B,sBAAUC,MAFM;EAG1B7B,QAAQ,EAAE4B,sBAAUC;AAHM,CAA5B;AAMA/B,eAAe,CAACgC,YAAhB,GAA+B;EAC7B7B,GAAG,EAAE,EADwB;EAE7BF,QAAQ,EAAE,EAFmB;EAG7BC,QAAQ,EAAE;AAHmB,CAA/B;eAMeF,e"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _ItemListCounter = _interopRequireDefault(require("./ItemListCounter"));
|
|
13
|
+
|
|
14
|
+
var _default = _ItemListCounter["default"];
|
|
15
|
+
exports["default"] = _default;
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["ItemListCounter"],"sources":["../../../src/components/ItemListCounter/index.js"],"sourcesContent":["import ItemListCounter from './ItemListCounter';\n\nexport default ItemListCounter;\n"],"mappings":";;;;;;;;;;;AAAA;;eAEeA,2B"}
|
|
@@ -87,12 +87,14 @@ var ListBuilder = function ListBuilder(props) {
|
|
|
87
87
|
requiredSchema = props.requiredSchema,
|
|
88
88
|
searchValues = props.searchValues,
|
|
89
89
|
azFilter = props.azFilter,
|
|
90
|
-
sortProperties = props.sortProperties
|
|
90
|
+
sortProperties = props.sortProperties,
|
|
91
|
+
itemListIds = props.itemListIds;
|
|
91
92
|
var isInfinite = paginationType === _constants.INFINITE;
|
|
92
93
|
var listComponent = getListComponent(isCard, paginationType);
|
|
93
94
|
var propsToDisplayValues = (0, _helpers2.checkPropsToUse)(propsToDisplay);
|
|
94
95
|
var entityFields = (0, _helpers2.buildPropsQuery)(entitySchema, propsToDisplayValues, props) || '';
|
|
95
|
-
var
|
|
96
|
+
var itemsToDisplayToUse = itemListIds || itemsToDisplay;
|
|
97
|
+
var limitToUse = limit || itemsToDisplayToUse.length;
|
|
96
98
|
var shouldApplyDefaultSort = !sortProperties || !sortProperties.length;
|
|
97
99
|
var itemsPerPageToUse = (0, _helpers3.getItemsPerPageToUse)(itemsPerPage, limitToUse);
|
|
98
100
|
var initialOffset = (0, _helpers2.getCurrentOffset)(offset, itemsPerPageToUse, paginationIndex, limitToUse);
|
|
@@ -116,7 +118,7 @@ var ListBuilder = function ListBuilder(props) {
|
|
|
116
118
|
filterOperator: filterOperator,
|
|
117
119
|
relations: relations,
|
|
118
120
|
stringProps: stringProps
|
|
119
|
-
}, itemId,
|
|
121
|
+
}, itemId, itemsToDisplayToUse, shouldApplyDefaultSort, {
|
|
120
122
|
shouldReturnAggs: true,
|
|
121
123
|
isAZ: isAZ
|
|
122
124
|
});
|
|
@@ -147,7 +149,7 @@ var ListBuilder = function ListBuilder(props) {
|
|
|
147
149
|
relations: relations,
|
|
148
150
|
stringProps: stringProps,
|
|
149
151
|
azFilter: azFilter
|
|
150
|
-
}, itemId,
|
|
152
|
+
}, itemId, itemsToDisplayToUse, shouldApplyDefaultSort, {
|
|
151
153
|
shouldReturnAggs: false,
|
|
152
154
|
isAZ: isAZ
|
|
153
155
|
});
|
|
@@ -171,7 +173,9 @@ var ListBuilder = function ListBuilder(props) {
|
|
|
171
173
|
listAggregations: updatedAggregations,
|
|
172
174
|
isAZ: isAZ,
|
|
173
175
|
azFilter: azFilter
|
|
174
|
-
}, props
|
|
176
|
+
}, props, {
|
|
177
|
+
itemsToDisplay: itemsToDisplayToUse
|
|
178
|
+
}));
|
|
175
179
|
};
|
|
176
180
|
|
|
177
181
|
ListBuilder.propTypes = {
|
|
@@ -200,11 +204,13 @@ ListBuilder.propTypes = {
|
|
|
200
204
|
filterOperator: _propTypes["default"].string.isRequired,
|
|
201
205
|
paginationType: _propTypes["default"].string,
|
|
202
206
|
azFilter: _propTypes["default"].string,
|
|
203
|
-
sortProperties: _propTypes["default"].array
|
|
207
|
+
sortProperties: _propTypes["default"].array,
|
|
208
|
+
itemListIds: _propTypes["default"].array
|
|
204
209
|
};
|
|
205
210
|
ListBuilder.defaultProps = {
|
|
206
211
|
entityData: {},
|
|
207
212
|
itemsToDisplay: [],
|
|
213
|
+
itemListIds: null,
|
|
208
214
|
limit: 0,
|
|
209
215
|
omitWrappers: false,
|
|
210
216
|
offset: 0,
|