@jahia/data-helper 1.1.17 → 1.1.19
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 +8 -0
- package/dist/esm/fragments/PredefinedFragments.js +13 -13
- package/dist/esm/fragments/PredefinedFragments.js.map +1 -1
- package/dist/esm/hooks/useNodeChecks/useNodeChecks.js +18 -5
- package/dist/esm/hooks/useNodeChecks/useNodeChecks.js.map +1 -1
- package/dist/esm/hooks/useNodeInfo/useNodeInfo.gql-queries.js +1 -1
- package/dist/esm/hooks/useNodeInfo/useNodeInfo.gql-queries.js.map +1 -1
- package/dist/esm/hooks/useNodeInfo/useNodeInfo.js +7 -2
- package/dist/esm/hooks/useNodeInfo/useNodeInfo.js.map +1 -1
- package/dist/esm/hooks/useNodeInfo/useNodeInfo.utils.js +6 -4
- package/dist/esm/hooks/useNodeInfo/useNodeInfo.utils.js.map +1 -1
- package/dist/esm/legacy/Picker.js +9 -63
- package/dist/esm/legacy/Picker.js.map +1 -1
- package/dist/js/fragments/PredefinedFragments.js +13 -13
- package/dist/js/fragments/PredefinedFragments.js.map +1 -1
- package/dist/js/hooks/useNodeChecks/useNodeChecks.js +18 -5
- package/dist/js/hooks/useNodeChecks/useNodeChecks.js.map +1 -1
- package/dist/js/hooks/useNodeInfo/useNodeInfo.gql-queries.js +1 -1
- package/dist/js/hooks/useNodeInfo/useNodeInfo.gql-queries.js.map +1 -1
- package/dist/js/hooks/useNodeInfo/useNodeInfo.js +7 -2
- package/dist/js/hooks/useNodeInfo/useNodeInfo.js.map +1 -1
- package/dist/js/hooks/useNodeInfo/useNodeInfo.utils.js +4 -4
- package/dist/js/hooks/useNodeInfo/useNodeInfo.utils.js.map +1 -1
- package/dist/js/legacy/Picker.js +9 -63
- package/dist/js/legacy/Picker.js.map +1 -1
- package/dist/types/hooks/useContentPreview/useContentPreview.d.ts +1 -9
- package/dist/types/hooks/useNodeChecks/useNodeChecks.d.ts +1 -0
- package/dist/types/hooks/useNodeInfo/useNodeInfo.d.ts +2 -2
- package/dist/types/hooks/useNodeInfo/useNodeInfo.gql-queries.d.ts +1 -0
- package/dist/types/hooks/useSchemaFields/useSchemaFields.d.ts +1 -3
- package/dist/types/hooks/useSiteInfo/useSiteInfo.d.ts +10 -44
- package/dist/types/hooks/useTreeEntries/useTreeEntries.d.ts +6 -5
- package/dist/types/legacy/Picker.d.ts +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @jahia/data-helper Changelog
|
|
2
2
|
|
|
3
|
+
## 1.1.19
|
|
4
|
+
|
|
5
|
+
* Allow to skip on useNodeInfo query (#352)
|
|
6
|
+
|
|
7
|
+
## 1.1.18
|
|
8
|
+
|
|
9
|
+
* Allow to map checksResult to individual nodes (#346)
|
|
10
|
+
|
|
3
11
|
## 1.1.17
|
|
4
12
|
|
|
5
13
|
* Republished the previous version with a provenance certificate. (#334)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
|
|
2
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19
|
|
2
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject0, _templateObject1, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19;
|
|
3
3
|
import gql from 'graphql-tag';
|
|
4
4
|
export var displayName = {
|
|
5
5
|
variables: {
|
|
@@ -58,60 +58,60 @@ export var siteLanguages = {
|
|
|
58
58
|
};
|
|
59
59
|
export var displayableNode = {
|
|
60
60
|
applyFor: 'node',
|
|
61
|
-
gql: gql(
|
|
61
|
+
gql: gql(_templateObject0 || (_templateObject0 = _taggedTemplateLiteral(["fragment DisplayableNodePath on JCRNode {\n displayableNode {\n path\n ...NodeCacheRequiredFields\n }\n }"])))
|
|
62
62
|
};
|
|
63
63
|
export var lockInfo = {
|
|
64
64
|
applyFor: 'node',
|
|
65
|
-
gql: gql(
|
|
65
|
+
gql: gql(_templateObject1 || (_templateObject1 = _taggedTemplateLiteral(["fragment LockInfo on JCRNode {\n lockOwner: property(name: \"jcr:lockOwner\") {\n value\n }\n lockTypes: property(name: \"j:lockTypes\") {\n values\n }\n }"])))
|
|
66
66
|
};
|
|
67
67
|
export var canLockUnlock = {
|
|
68
68
|
applyFor: 'node',
|
|
69
|
-
gql: gql(
|
|
69
|
+
gql: gql(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["fragment CanLockUnlockInfo on JCRNode {\n lockInfo {\n canLock,\n canUnlock,\n }\n }"])))
|
|
70
70
|
};
|
|
71
71
|
export var subNodesCount = {
|
|
72
72
|
variables: {
|
|
73
73
|
subNodesCountTypes: '[String!]!'
|
|
74
74
|
},
|
|
75
75
|
applyFor: 'node',
|
|
76
|
-
gql: gql(
|
|
76
|
+
gql: gql(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["fragment SubNodesCount on JCRNode {\n subNodes: children(typesFilter: {types: $subNodesCountTypes, multi: ANY}) {\n pageInfo {\n totalCount\n }\n }\n }"])))
|
|
77
77
|
};
|
|
78
78
|
export var childNodeTypes = {
|
|
79
79
|
applyFor: 'node',
|
|
80
|
-
gql: gql(
|
|
80
|
+
gql: gql(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["fragment AllowedChildNodeType on JCRNode {\n allowedChildNodeTypes(includeSubTypes: false) {\n name\n displayName(language: $language)\n icon\n }\n }"])))
|
|
81
81
|
};
|
|
82
82
|
export var contentRestrictions = {
|
|
83
83
|
applyFor: 'node',
|
|
84
|
-
gql: gql(
|
|
84
|
+
gql: gql(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["fragment ContentRestriction on JCRNode {\n contributeTypes: property(name: \"j:contributeTypes\") {\n values\n }\n ancestors(fieldFilter: {filters: {evaluation: NOT_EMPTY, fieldName: \"contributeTypes\"}}) {\n ...NodeCacheRequiredFields\n contributeTypes : property(name: \"j:contributeTypes\") {\n values\n }\n }\n }"])))
|
|
85
85
|
};
|
|
86
86
|
export var siteHomePage = {
|
|
87
87
|
applyFor: 'node',
|
|
88
|
-
gql: gql(
|
|
88
|
+
gql: gql(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["fragment NodeSiteHomePage on JCRNode {\n children(typesFilter:{types:[\"jnt:page\"]}, propertiesFilter:{filters:[{property:\"j:isHomePage\", value:\"true\" }]}) {\n nodes {\n path\n ...NodeCacheRequiredFields\n }\n }\n }"])))
|
|
89
89
|
};
|
|
90
90
|
export var nodeCacheRequiredFields = {
|
|
91
91
|
applyFor: 'node',
|
|
92
|
-
gql: gql(
|
|
92
|
+
gql: gql(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["fragment NodeCacheRequiredFields on JCRNode {\n uuid\n workspace\n path\n }"])))
|
|
93
93
|
};
|
|
94
94
|
export var nodeTypeDisplayName = {
|
|
95
95
|
variables: {
|
|
96
96
|
language: 'String!'
|
|
97
97
|
},
|
|
98
98
|
applyFor: 'nodeType',
|
|
99
|
-
gql: gql(
|
|
99
|
+
gql: gql(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["fragment NodeTypeDisplayName on JCRNodeType {\n displayName(language:$language)\n }"])))
|
|
100
100
|
};
|
|
101
101
|
export var nodeTypeSubTypes = {
|
|
102
102
|
variables: {
|
|
103
103
|
language: 'String!'
|
|
104
104
|
},
|
|
105
105
|
applyFor: 'nodeType',
|
|
106
|
-
gql: gql(
|
|
106
|
+
gql: gql(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral(["fragment NodeTypeSubTypes on JCRNodeType {\n subTypes {\n nodes {\n name\n displayName(language:$language)\n abstract\n mixin\n }\n }\n }"])))
|
|
107
107
|
};
|
|
108
108
|
export var mimeTypes = {
|
|
109
109
|
applyFor: 'node',
|
|
110
|
-
gql: gql(
|
|
110
|
+
gql: gql(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral(["fragment NodeInfoResourceNode on JCRNode {\n resourceChildren: children(names: [\"jcr:content\"]) {\n nodes {\n ...NodeCacheRequiredFields\n mimeType: property(name: \"jcr:mimeType\") {\n value\n }\n }\n }\n }"])))
|
|
111
111
|
};
|
|
112
112
|
export var isExternal = {
|
|
113
113
|
applyFor: 'node',
|
|
114
|
-
gql: gql(
|
|
114
|
+
gql: gql(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral(["fragment External on JCRNode {\n isExternal\n }"])))
|
|
115
115
|
};
|
|
116
116
|
export var PredefinedFragments = {
|
|
117
117
|
displayName: displayName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["gql","displayName","variables","language","applyFor","_templateObject","_taggedTemplateLiteral","primaryNodeType","displayLanguage","displayLanguageSet","_templateObject2","parentNode","_templateObject3","aggregatedPublicationInfo","aggregatedPublicationInfoSubNodes","aggregatedPublicationInfoIncludeReference","_templateObject4","operationSupport","_templateObject5","allProperties","_templateObject6","getProperties","getPropertiesNames","_templateObject7","installedModules","_templateObject8","siteLanguages","_templateObject9","displayableNode","_templateObject10","lockInfo","_templateObject11","canLockUnlock","_templateObject12","subNodesCount","subNodesCountTypes","_templateObject13","childNodeTypes","_templateObject14","contentRestrictions","_templateObject15","siteHomePage","_templateObject16","nodeCacheRequiredFields","_templateObject17","nodeTypeDisplayName","_templateObject18","nodeTypeSubTypes","_templateObject19","mimeTypes","_templateObject20","isExternal","_templateObject21","PredefinedFragments"],"sources":["PredefinedFragments.ts"],"sourcesContent":["import gql from 'graphql-tag';\nimport {DocumentNode} from 'graphql';\n\nexport type Fragment = {\n variables?: {\n [key: string]: string\n },\n applyFor: string\n gql: DocumentNode\n}\n\nexport const displayName: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'node',\n gql: gql`fragment DisplayName on JCRNode {\n displayName(language:$language)\n }`\n};\n\nexport const primaryNodeType: Fragment = {\n variables: {\n displayLanguage: 'String!',\n displayLanguageSet: 'Boolean!'\n },\n applyFor: 'node',\n gql: gql`fragment NodeInfoPrimaryNodeType on JCRNode {\n primaryNodeType {\n name\n displayName(language: $displayLanguage) @include(if: $displayLanguageSet)\n icon\n }\n }`\n};\n\nexport const parentNode: Fragment = {\n applyFor: 'node',\n gql: gql`fragment ParentNodeInfo on JCRNode {\n parent {\n path\n name\n ...NodeCacheRequiredFields\n }\n }`\n};\n\nexport const aggregatedPublicationInfo: Fragment = {\n variables: {\n language: 'String!',\n aggregatedPublicationInfoSubNodes: 'Boolean',\n aggregatedPublicationInfoIncludeReference: 'Boolean'\n },\n applyFor: 'node',\n gql: gql`fragment AggregatedPublicationInfo on JCRNode {\n aggregatedPublicationInfo(language: $language, subNodes: $aggregatedPublicationInfoSubNodes, references:$aggregatedPublicationInfoIncludeReference) {\n publicationStatus\n existsInLive\n }\n }`\n};\n\nexport const operationSupport: Fragment = {\n applyFor: 'node',\n gql: gql`fragment OperationSupport on JCRNode {\n operationsSupport {\n lock\n markForDeletion\n publication\n }\n }`\n};\n\nexport const allProperties: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'node',\n gql: gql`fragment NodeAllProperties on JCRNode {\n properties(language:$language) {\n name\n value\n values\n }\n }`\n};\n\nexport const getProperties: Fragment = {\n variables: {\n language: 'String!',\n getPropertiesNames: '[String!]!'\n },\n applyFor: 'node',\n gql: gql`fragment NodeProperties on JCRNode {\n properties(names: $getPropertiesNames, language: $language) {\n name\n value\n values\n }\n }`\n};\n\nexport const installedModules: Fragment = {\n applyFor: 'node',\n gql: gql`fragment SiteInstalledModules on JCRNode {\n site {\n installedModulesWithAllDependencies\n ...NodeCacheRequiredFields\n }\n }`\n};\n\nexport const siteLanguages: Fragment = {\n applyFor: 'node',\n gql: gql`fragment SiteLanguages on JCRNode {\n site {\n defaultLanguage\n ...NodeCacheRequiredFields\n languages {\n displayName\n language\n activeInEdit\n }\n }\n }`\n};\n\nexport const displayableNode: Fragment = {\n applyFor: 'node',\n gql: gql`fragment DisplayableNodePath on JCRNode {\n displayableNode {\n path\n ...NodeCacheRequiredFields\n }\n }`\n};\n\nexport const lockInfo: Fragment = {\n applyFor: 'node',\n gql: gql`fragment LockInfo on JCRNode {\n lockOwner: property(name: \"jcr:lockOwner\") {\n value\n }\n lockTypes: property(name: \"j:lockTypes\") {\n values\n }\n }`\n};\n\nexport const canLockUnlock: Fragment = {\n applyFor: 'node',\n gql: gql`fragment CanLockUnlockInfo on JCRNode {\n lockInfo {\n canLock,\n canUnlock,\n }\n }`\n};\n\nexport const subNodesCount: Fragment = {\n variables: {\n subNodesCountTypes: '[String!]!'\n },\n applyFor: 'node',\n gql: gql`fragment SubNodesCount on JCRNode {\n subNodes: children(typesFilter: {types: $subNodesCountTypes, multi: ANY}) {\n pageInfo {\n totalCount\n }\n }\n }`\n};\n\nexport const childNodeTypes: Fragment = {\n applyFor: 'node',\n gql: gql`fragment AllowedChildNodeType on JCRNode {\n allowedChildNodeTypes(includeSubTypes: false) {\n name\n }\n }`\n};\n\nexport const contentRestrictions: Fragment = {\n applyFor: 'node',\n gql: gql`fragment ContentRestriction on JCRNode {\n contributeTypes: property(name: \"j:contributeTypes\") {\n values\n }\n ancestors(fieldFilter: {filters: {evaluation: NOT_EMPTY, fieldName: \"contributeTypes\"}}) {\n ...NodeCacheRequiredFields\n contributeTypes : property(name: \"j:contributeTypes\") {\n values\n }\n }\n }`\n};\n\nexport const siteHomePage: Fragment = {\n applyFor: 'node',\n gql: gql`fragment NodeSiteHomePage on JCRNode {\n children(typesFilter:{types:[\"jnt:page\"]}, propertiesFilter:{filters:[{property:\"j:isHomePage\", value:\"true\" }]}) {\n nodes {\n path\n ...NodeCacheRequiredFields\n }\n }\n }`\n};\n\nexport const nodeCacheRequiredFields: Fragment = {\n applyFor: 'node',\n gql: gql`fragment NodeCacheRequiredFields on JCRNode {\n uuid\n workspace\n path\n }`\n};\n\nexport const nodeTypeDisplayName: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'nodeType',\n gql: gql`fragment NodeTypeDisplayName on JCRNodeType {\n displayName(language:$language)\n }`\n};\n\nexport const nodeTypeSubTypes: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'nodeType',\n gql: gql`fragment NodeTypeSubTypes on JCRNodeType {\n subTypes {\n nodes {\n name\n displayName(language:$language)\n abstract\n mixin\n }\n }\n }`\n};\n\nexport const mimeTypes: Fragment = {\n applyFor: 'node',\n gql: gql`fragment NodeInfoResourceNode on JCRNode {\n resourceChildren: children(names: [\"jcr:content\"]) {\n nodes {\n ...NodeCacheRequiredFields\n mimeType: property(name: \"jcr:mimeType\") {\n value\n }\n }\n }\n }`\n};\n\nexport const isExternal: Fragment = {\n applyFor: 'node',\n gql: gql`fragment External on JCRNode {\n isExternal\n }`\n};\n\nexport const PredefinedFragments: {[key:string]: Fragment} = {\n displayName,\n primaryNodeType,\n parentNode,\n aggregatedPublicationInfo,\n operationSupport,\n allProperties,\n getProperties,\n installedModules,\n siteLanguages,\n displayableNode,\n lockInfo,\n subNodesCount,\n contentRestrictions,\n siteHomePage,\n nodeCacheRequiredFields,\n nodeTypeDisplayName,\n nodeTypeSubTypes,\n mimeTypes,\n isExternal\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["gql","displayName","variables","language","applyFor","_templateObject","_taggedTemplateLiteral","primaryNodeType","displayLanguage","displayLanguageSet","_templateObject2","parentNode","_templateObject3","aggregatedPublicationInfo","aggregatedPublicationInfoSubNodes","aggregatedPublicationInfoIncludeReference","_templateObject4","operationSupport","_templateObject5","allProperties","_templateObject6","getProperties","getPropertiesNames","_templateObject7","installedModules","_templateObject8","siteLanguages","_templateObject9","displayableNode","_templateObject0","lockInfo","_templateObject1","canLockUnlock","_templateObject10","subNodesCount","subNodesCountTypes","_templateObject11","childNodeTypes","_templateObject12","contentRestrictions","_templateObject13","siteHomePage","_templateObject14","nodeCacheRequiredFields","_templateObject15","nodeTypeDisplayName","_templateObject16","nodeTypeSubTypes","_templateObject17","mimeTypes","_templateObject18","isExternal","_templateObject19","PredefinedFragments"],"sources":["PredefinedFragments.ts"],"sourcesContent":["import gql from 'graphql-tag';\nimport {DocumentNode} from 'graphql';\n\nexport type Fragment = {\n variables?: {\n [key: string]: string\n },\n applyFor: string\n gql: DocumentNode\n}\n\nexport const displayName: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'node',\n gql: gql`fragment DisplayName on JCRNode {\n displayName(language:$language)\n }`\n};\n\nexport const primaryNodeType: Fragment = {\n variables: {\n displayLanguage: 'String!',\n displayLanguageSet: 'Boolean!'\n },\n applyFor: 'node',\n gql: gql`fragment NodeInfoPrimaryNodeType on JCRNode {\n primaryNodeType {\n name\n displayName(language: $displayLanguage) @include(if: $displayLanguageSet)\n icon\n }\n }`\n};\n\nexport const parentNode: Fragment = {\n applyFor: 'node',\n gql: gql`fragment ParentNodeInfo on JCRNode {\n parent {\n path\n name\n ...NodeCacheRequiredFields\n }\n }`\n};\n\nexport const aggregatedPublicationInfo: Fragment = {\n variables: {\n language: 'String!',\n aggregatedPublicationInfoSubNodes: 'Boolean',\n aggregatedPublicationInfoIncludeReference: 'Boolean'\n },\n applyFor: 'node',\n gql: gql`fragment AggregatedPublicationInfo on JCRNode {\n aggregatedPublicationInfo(language: $language, subNodes: $aggregatedPublicationInfoSubNodes, references:$aggregatedPublicationInfoIncludeReference) {\n publicationStatus\n existsInLive\n }\n }`\n};\n\nexport const operationSupport: Fragment = {\n applyFor: 'node',\n gql: gql`fragment OperationSupport on JCRNode {\n operationsSupport {\n lock\n markForDeletion\n publication\n }\n }`\n};\n\nexport const allProperties: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'node',\n gql: gql`fragment NodeAllProperties on JCRNode {\n properties(language:$language) {\n name\n value\n values\n }\n }`\n};\n\nexport const getProperties: Fragment = {\n variables: {\n language: 'String!',\n getPropertiesNames: '[String!]!'\n },\n applyFor: 'node',\n gql: gql`fragment NodeProperties on JCRNode {\n properties(names: $getPropertiesNames, language: $language) {\n name\n value\n values\n }\n }`\n};\n\nexport const installedModules: Fragment = {\n applyFor: 'node',\n gql: gql`fragment SiteInstalledModules on JCRNode {\n site {\n installedModulesWithAllDependencies\n ...NodeCacheRequiredFields\n }\n }`\n};\n\nexport const siteLanguages: Fragment = {\n applyFor: 'node',\n gql: gql`fragment SiteLanguages on JCRNode {\n site {\n defaultLanguage\n ...NodeCacheRequiredFields\n languages {\n displayName\n language\n activeInEdit\n }\n }\n }`\n};\n\nexport const displayableNode: Fragment = {\n applyFor: 'node',\n gql: gql`fragment DisplayableNodePath on JCRNode {\n displayableNode {\n path\n ...NodeCacheRequiredFields\n }\n }`\n};\n\nexport const lockInfo: Fragment = {\n applyFor: 'node',\n gql: gql`fragment LockInfo on JCRNode {\n lockOwner: property(name: \"jcr:lockOwner\") {\n value\n }\n lockTypes: property(name: \"j:lockTypes\") {\n values\n }\n }`\n};\n\nexport const canLockUnlock: Fragment = {\n applyFor: 'node',\n gql: gql`fragment CanLockUnlockInfo on JCRNode {\n lockInfo {\n canLock,\n canUnlock,\n }\n }`\n};\n\nexport const subNodesCount: Fragment = {\n variables: {\n subNodesCountTypes: '[String!]!'\n },\n applyFor: 'node',\n gql: gql`fragment SubNodesCount on JCRNode {\n subNodes: children(typesFilter: {types: $subNodesCountTypes, multi: ANY}) {\n pageInfo {\n totalCount\n }\n }\n }`\n};\n\nexport const childNodeTypes: Fragment = {\n applyFor: 'node',\n gql: gql`fragment AllowedChildNodeType on JCRNode {\n allowedChildNodeTypes(includeSubTypes: false) {\n name\n displayName(language: $language)\n icon\n }\n }`\n};\n\nexport const contentRestrictions: Fragment = {\n applyFor: 'node',\n gql: gql`fragment ContentRestriction on JCRNode {\n contributeTypes: property(name: \"j:contributeTypes\") {\n values\n }\n ancestors(fieldFilter: {filters: {evaluation: NOT_EMPTY, fieldName: \"contributeTypes\"}}) {\n ...NodeCacheRequiredFields\n contributeTypes : property(name: \"j:contributeTypes\") {\n values\n }\n }\n }`\n};\n\nexport const siteHomePage: Fragment = {\n applyFor: 'node',\n gql: gql`fragment NodeSiteHomePage on JCRNode {\n children(typesFilter:{types:[\"jnt:page\"]}, propertiesFilter:{filters:[{property:\"j:isHomePage\", value:\"true\" }]}) {\n nodes {\n path\n ...NodeCacheRequiredFields\n }\n }\n }`\n};\n\nexport const nodeCacheRequiredFields: Fragment = {\n applyFor: 'node',\n gql: gql`fragment NodeCacheRequiredFields on JCRNode {\n uuid\n workspace\n path\n }`\n};\n\nexport const nodeTypeDisplayName: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'nodeType',\n gql: gql`fragment NodeTypeDisplayName on JCRNodeType {\n displayName(language:$language)\n }`\n};\n\nexport const nodeTypeSubTypes: Fragment = {\n variables: {\n language: 'String!'\n },\n applyFor: 'nodeType',\n gql: gql`fragment NodeTypeSubTypes on JCRNodeType {\n subTypes {\n nodes {\n name\n displayName(language:$language)\n abstract\n mixin\n }\n }\n }`\n};\n\nexport const mimeTypes: Fragment = {\n applyFor: 'node',\n gql: gql`fragment NodeInfoResourceNode on JCRNode {\n resourceChildren: children(names: [\"jcr:content\"]) {\n nodes {\n ...NodeCacheRequiredFields\n mimeType: property(name: \"jcr:mimeType\") {\n value\n }\n }\n }\n }`\n};\n\nexport const isExternal: Fragment = {\n applyFor: 'node',\n gql: gql`fragment External on JCRNode {\n isExternal\n }`\n};\n\nexport const PredefinedFragments: {[key:string]: Fragment} = {\n displayName,\n primaryNodeType,\n parentNode,\n aggregatedPublicationInfo,\n operationSupport,\n allProperties,\n getProperties,\n installedModules,\n siteLanguages,\n displayableNode,\n lockInfo,\n subNodesCount,\n contentRestrictions,\n siteHomePage,\n nodeCacheRequiredFields,\n nodeTypeDisplayName,\n nodeTypeSubTypes,\n mimeTypes,\n isExternal\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -70,13 +70,26 @@ export var useNodeChecks = function useNodeChecks(variables, options, queryOptio
|
|
|
70
70
|
return acc && currentNode.site.installedModulesWithAllDependencies.includes(val);
|
|
71
71
|
}, true)) && (!hideForPaths || evaluateVisibilityPaths(false, hideForPaths, currentNode.path || variables.path)) && (!showForPaths || evaluateVisibilityPaths(true, showForPaths, currentNode.path || variables.path)) && (!hideOnExternal || !currentNode.isExternal);
|
|
72
72
|
};
|
|
73
|
-
var
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
var map = options === null || options === void 0 ? void 0 : options.mapResults;
|
|
74
|
+
|
|
75
|
+
// A map of nodes can be very useful, especially when dealing with a lot of nodes. In this case each node will
|
|
76
|
+
// have an extra checksResult prop and will be a part of map {path: node}.
|
|
77
|
+
var checkedNodes = node ? [node] : nodes;
|
|
78
|
+
var result = checkedNodes.reduce(function (acc, val) {
|
|
79
|
+
var r = doNodeCheck(val);
|
|
80
|
+
val.checksResult = r;
|
|
81
|
+
acc.nodes[val.path] = val;
|
|
82
|
+
acc.checksResult = acc.checksResult && r;
|
|
83
|
+
return acc;
|
|
84
|
+
}, {
|
|
85
|
+
nodes: {},
|
|
86
|
+
checksResult: true
|
|
87
|
+
});
|
|
76
88
|
return _objectSpread({
|
|
77
89
|
node: node,
|
|
78
|
-
|
|
79
|
-
|
|
90
|
+
// Return list of nodes, or map of node path to node, depending on mapResults option
|
|
91
|
+
nodes: map ? result.nodes : nodes,
|
|
92
|
+
checksResult: result.checksResult,
|
|
80
93
|
loading: loading
|
|
81
94
|
}, othersResults);
|
|
82
95
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useNodeInfo","evaluateVisibilityPaths","visible","visibilityPaths","nodePath","i","length","RegExp","test","addArrayOptionValues","newValue","useNodeInfoOptions","useNodeInfoKey","concat","filter","item","indexOf","useNodeChecks","variables","options","queryOptions","requiredPermission","requiredSitePermission","showOnNodeTypes","hideOnNodeTypes","requireModuleInstalledOnSite","showForPaths","hideForPaths","hideOnExternal","othersOptions","_objectWithoutProperties","_excluded","_objectSpread","requiredPermissions","requiredSitePermissions","getSiteInstalledModules","_useNodeInfo","node","nodes","loading","othersResults","_excluded2","checksResult","doNodeCheck","currentNode","reduce","acc","val","site","installedModulesWithAllDependencies","includes","path","isExternal","result"],"sources":["useNodeChecks.ts"],"sourcesContent":["import {NodeInfoResult, useNodeInfo} from '~/hooks';\nimport {NodeInfoOptions} from '../useNodeInfo/useNodeInfo.gql-queries';\nimport {WatchQueryOptions} from '@apollo/client';\n\nexport type NodeCheckOptions = NodeInfoOptions & Partial<{\n requiredPermission: string | string[],\n requiredSitePermission: string | string[],\n showOnNodeTypes: string[],\n hideOnNodeTypes: string[],\n requireModuleInstalledOnSite: string[],\n showForPaths: string[],\n hideForPaths: string[],\n hideOnExternal: boolean\n}>\n\nexport type NodeCheckResult = NodeInfoResult & Partial<{\n checksResult: boolean,\n}>\n\nconst evaluateVisibilityPaths = (visible: boolean, visibilityPaths: string[], nodePath: string) => {\n for (let i = 0; i < visibilityPaths.length; i++) {\n if (new RegExp(visibilityPaths[i]).test(nodePath)) {\n return visible;\n }\n }\n\n return !visible;\n};\n\nfunction addArrayOptionValues(newValue: string[], useNodeInfoOptions: NodeInfoOptions, useNodeInfoKey: 'getPermissions' | 'getSitePermissions' |'getIsNodeTypes'| 'getProperties') {\n if (newValue) {\n useNodeInfoOptions[useNodeInfoKey] = useNodeInfoOptions[useNodeInfoKey] || [];\n useNodeInfoOptions[useNodeInfoKey] = useNodeInfoOptions[useNodeInfoKey].concat(newValue.filter(item => useNodeInfoOptions[useNodeInfoKey].indexOf(item) < 0));\n }\n}\n\nexport const useNodeChecks = (variables: {[key:string]: any}, options?: NodeCheckOptions, queryOptions?: WatchQueryOptions): NodeCheckResult => {\n const {requiredPermission, requiredSitePermission, showOnNodeTypes, hideOnNodeTypes, requireModuleInstalledOnSite, showForPaths, hideForPaths, hideOnExternal, ...othersOptions} = options;\n const useNodeInfoOptions = {...othersOptions};\n\n const requiredPermissions = (typeof requiredPermission === 'string') ? [requiredPermission] : requiredPermission;\n const requiredSitePermissions = (typeof requiredSitePermission === 'string') ? [requiredSitePermission] : requiredSitePermission;\n\n addArrayOptionValues(requiredPermissions, useNodeInfoOptions, 'getPermissions');\n addArrayOptionValues(requiredSitePermissions, useNodeInfoOptions, 'getSitePermissions');\n addArrayOptionValues(showOnNodeTypes, useNodeInfoOptions, 'getIsNodeTypes');\n addArrayOptionValues(hideOnNodeTypes, useNodeInfoOptions, 'getIsNodeTypes');\n\n if (requireModuleInstalledOnSite) {\n useNodeInfoOptions.getSiteInstalledModules = true;\n }\n\n const {node, nodes, loading, ...othersResults} = useNodeInfo(variables, useNodeInfoOptions, queryOptions);\n\n if (loading) {\n return {loading, ...othersResults};\n }\n\n if (!node && !nodes) {\n return {checksResult: false, loading, ...othersResults};\n }\n\n const doNodeCheck = (currentNode: any) =>\n (!requiredPermissions || requiredPermissions.reduce((acc, val) => acc || currentNode[val], false)) &&\n (!requiredSitePermissions || requiredSitePermissions.reduce((acc, val) => acc || currentNode.site[val], false)) &&\n (!showOnNodeTypes || showOnNodeTypes.reduce((acc, val) => acc || currentNode[val], false)) &&\n (!hideOnNodeTypes || !hideOnNodeTypes.reduce((acc, val) => acc || currentNode[val], false)) &&\n (!requireModuleInstalledOnSite || requireModuleInstalledOnSite.reduce((acc, val) => acc && currentNode.site.installedModulesWithAllDependencies.includes(val), true)) &&\n (!hideForPaths || evaluateVisibilityPaths(false, hideForPaths, currentNode.path || variables.path)) &&\n (!showForPaths || evaluateVisibilityPaths(true, showForPaths, currentNode.path || variables.path)) &&\n (!hideOnExternal || !currentNode.isExternal);\n\n const
|
|
1
|
+
{"version":3,"names":["useNodeInfo","evaluateVisibilityPaths","visible","visibilityPaths","nodePath","i","length","RegExp","test","addArrayOptionValues","newValue","useNodeInfoOptions","useNodeInfoKey","concat","filter","item","indexOf","useNodeChecks","variables","options","queryOptions","requiredPermission","requiredSitePermission","showOnNodeTypes","hideOnNodeTypes","requireModuleInstalledOnSite","showForPaths","hideForPaths","hideOnExternal","othersOptions","_objectWithoutProperties","_excluded","_objectSpread","requiredPermissions","requiredSitePermissions","getSiteInstalledModules","_useNodeInfo","node","nodes","loading","othersResults","_excluded2","checksResult","doNodeCheck","currentNode","reduce","acc","val","site","installedModulesWithAllDependencies","includes","path","isExternal","map","mapResults","checkedNodes","result","r"],"sources":["useNodeChecks.ts"],"sourcesContent":["import {NodeInfoResult, useNodeInfo} from '~/hooks';\nimport {NodeInfoOptions} from '../useNodeInfo/useNodeInfo.gql-queries';\nimport {WatchQueryOptions} from '@apollo/client';\n\nexport type NodeCheckOptions = NodeInfoOptions & Partial<{\n requiredPermission: string | string[],\n requiredSitePermission: string | string[],\n showOnNodeTypes: string[],\n hideOnNodeTypes: string[],\n requireModuleInstalledOnSite: string[],\n showForPaths: string[],\n hideForPaths: string[],\n hideOnExternal: boolean,\n mapResults: boolean\n}>\n\nexport type NodeCheckResult = NodeInfoResult & Partial<{\n checksResult: boolean,\n}>\n\nconst evaluateVisibilityPaths = (visible: boolean, visibilityPaths: string[], nodePath: string) => {\n for (let i = 0; i < visibilityPaths.length; i++) {\n if (new RegExp(visibilityPaths[i]).test(nodePath)) {\n return visible;\n }\n }\n\n return !visible;\n};\n\nfunction addArrayOptionValues(newValue: string[], useNodeInfoOptions: NodeInfoOptions, useNodeInfoKey: 'getPermissions' | 'getSitePermissions' |'getIsNodeTypes'| 'getProperties') {\n if (newValue) {\n useNodeInfoOptions[useNodeInfoKey] = useNodeInfoOptions[useNodeInfoKey] || [];\n useNodeInfoOptions[useNodeInfoKey] = useNodeInfoOptions[useNodeInfoKey].concat(newValue.filter(item => useNodeInfoOptions[useNodeInfoKey].indexOf(item) < 0));\n }\n}\n\nexport const useNodeChecks = (variables: {[key:string]: any}, options?: NodeCheckOptions, queryOptions?: WatchQueryOptions): NodeCheckResult => {\n const {requiredPermission, requiredSitePermission, showOnNodeTypes, hideOnNodeTypes, requireModuleInstalledOnSite, showForPaths, hideForPaths, hideOnExternal, ...othersOptions} = options;\n const useNodeInfoOptions = {...othersOptions};\n\n const requiredPermissions = (typeof requiredPermission === 'string') ? [requiredPermission] : requiredPermission;\n const requiredSitePermissions = (typeof requiredSitePermission === 'string') ? [requiredSitePermission] : requiredSitePermission;\n\n addArrayOptionValues(requiredPermissions, useNodeInfoOptions, 'getPermissions');\n addArrayOptionValues(requiredSitePermissions, useNodeInfoOptions, 'getSitePermissions');\n addArrayOptionValues(showOnNodeTypes, useNodeInfoOptions, 'getIsNodeTypes');\n addArrayOptionValues(hideOnNodeTypes, useNodeInfoOptions, 'getIsNodeTypes');\n\n if (requireModuleInstalledOnSite) {\n useNodeInfoOptions.getSiteInstalledModules = true;\n }\n\n const {node, nodes, loading, ...othersResults} = useNodeInfo(variables, useNodeInfoOptions, queryOptions);\n\n if (loading) {\n return {loading, ...othersResults};\n }\n\n if (!node && !nodes) {\n return {checksResult: false, loading, ...othersResults};\n }\n\n const doNodeCheck = (currentNode: any) =>\n (!requiredPermissions || requiredPermissions.reduce((acc, val) => acc || currentNode[val], false)) &&\n (!requiredSitePermissions || requiredSitePermissions.reduce((acc, val) => acc || currentNode.site[val], false)) &&\n (!showOnNodeTypes || showOnNodeTypes.reduce((acc, val) => acc || currentNode[val], false)) &&\n (!hideOnNodeTypes || !hideOnNodeTypes.reduce((acc, val) => acc || currentNode[val], false)) &&\n (!requireModuleInstalledOnSite || requireModuleInstalledOnSite.reduce((acc, val) => acc && currentNode.site.installedModulesWithAllDependencies.includes(val), true)) &&\n (!hideForPaths || evaluateVisibilityPaths(false, hideForPaths, currentNode.path || variables.path)) &&\n (!showForPaths || evaluateVisibilityPaths(true, showForPaths, currentNode.path || variables.path)) &&\n (!hideOnExternal || !currentNode.isExternal);\n\n const map = options?.mapResults;\n\n // A map of nodes can be very useful, especially when dealing with a lot of nodes. In this case each node will\n // have an extra checksResult prop and will be a part of map {path: node}.\n const checkedNodes = node ? [node] : nodes;\n const result = checkedNodes.reduce((acc, val) => {\n const r = doNodeCheck(val);\n val.checksResult = r;\n acc.nodes[val.path] = val;\n acc.checksResult = acc.checksResult && r;\n return acc;\n }, {nodes: {}, checksResult: true});\n return {\n node,\n // Return list of nodes, or map of node path to node, depending on mapResults option\n nodes: map ? result.nodes : nodes,\n checksResult: result.checksResult,\n loading,\n ...othersResults\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -41,7 +41,7 @@ var getBaseQueryAndVariables = function getBaseQueryAndVariables(variables) {
|
|
|
41
41
|
skip: !variables.path || variables.path.length === 0
|
|
42
42
|
};
|
|
43
43
|
};
|
|
44
|
-
export var validOptions = ['getDisplayName', 'getPrimaryNodeType', 'getParent', 'getAggregatedPublicationInfo', 'getOperationSupport', 'getPermissions', 'getSitePermissions', 'getIsNodeTypes', 'getProperties', 'getSiteInstalledModules', 'getSiteLanguages', 'getDisplayableNodePath', 'getLockInfo', 'getCanLockUnlock', 'getChildNodeTypes', 'getContributeTypesRestrictions', 'getSubNodesCount', 'getMimeType', 'applyFragment'];
|
|
44
|
+
export var validOptions = ['getDisplayName', 'getPrimaryNodeType', 'getParent', 'getAggregatedPublicationInfo', 'getOperationSupport', 'getPermissions', 'getSitePermissions', 'getIsNodeTypes', 'getProperties', 'getSiteInstalledModules', 'getSiteLanguages', 'getDisplayableNodePath', 'getLockInfo', 'getCanLockUnlock', 'getChildNodeTypes', 'getContributeTypesRestrictions', 'getSubNodesCount', 'getMimeType', 'applyFragment', 'skip'];
|
|
45
45
|
export var validateQuery = function validateQuery(variables) {
|
|
46
46
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
47
47
|
var requiresLanguage = ['getDisplayName', 'getAggregatedPublicationInfo', 'getProperties'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["gql","aggregatedPublicationInfo","canLockUnlock","childNodeTypes","contentRestrictions","displayableNode","displayName","getProperties","installedModules","isExternal","lockInfo","mimeTypes","nodeCacheRequiredFields","operationSupport","parentNode","primaryNodeType","replaceFragmentsInDocument","siteLanguages","getPermissionFragment","getSitePermissionFragment","getNodeTypeFragment","getSubNodesCountFragment","getBaseQueryAndVariables","variables","paths","baseQuery","_templateObject","_taggedTemplateLiteral","generatedVariables","skip","uuid","length","_templateObject2","uuids","_templateObject3","_templateObject4","path","validOptions","validateQuery","options","arguments","undefined","requiresLanguage","missingLanguageOptions","filter","attr","Boolean","language","msg","concat","join","Error","getQuery","fragments","_getBaseQueryAndVaria","getDisplayName","push","getPrimaryNodeType","displayLanguage","displayLanguageSet","getParent","getAggregatedPublicationInfo","aggregatedPublicationInfoSubNodes","subNodes","aggregatedPublicationInfoIncludeReference","reference","getOperationSupport","getPermissions","forEach","name","_getPermissionFragmen","fragment","fragmentVariables","Object","assign","getSitePermissions","_getSitePermissionFra","getIsNodeTypes","_getNodeTypeFragment","getPropertiesNames","getSiteInstalledModules","getSiteLanguages","getDisplayableNodePath","getLockInfo","getCanLockUnlock","getChildNodeTypes","getContributeTypesRestrictions","getSubNodesCount","_getSubNodesCountFrag","getMimeType","applyFragment","query"],"sources":["useNodeInfo.gql-queries.ts"],"sourcesContent":["import gql from 'graphql-tag';\nimport {\n aggregatedPublicationInfo,\n canLockUnlock,\n childNodeTypes,\n contentRestrictions,\n displayableNode,\n displayName,\n Fragment,\n getProperties,\n installedModules, isExternal,\n lockInfo,\n mimeTypes,\n nodeCacheRequiredFields,\n operationSupport,\n parentNode,\n primaryNodeType,\n replaceFragmentsInDocument,\n siteLanguages\n} from '~/fragments';\nimport {getPermissionFragment, getSitePermissionFragment} from '~/fragments/getPermissionFragment';\nimport {getNodeTypeFragment} from '~/fragments/getIsNodeTypeFragment';\nimport {DocumentNode} from 'graphql';\nimport {getSubNodesCountFragment} from '~/fragments/getSubNodesCountFragment';\n\nconst getBaseQueryAndVariables = (variables: {[key:string]: any}): {\n baseQuery: DocumentNode,\n generatedVariables:{[key:string]: unknown},\n skip: boolean\n} => {\n if (variables.paths) {\n return {\n baseQuery: gql`\n query NodesByPathInfoQuery($paths:[String!]!) {\n jcr {\n nodesByPath(paths:$paths) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n paths: variables.paths\n },\n skip: false\n };\n }\n\n if (variables.uuid && variables.uuid.length > 0) {\n return {\n baseQuery: gql`\n query NodeByUuidInfoQuery($uuid:String!) {\n jcr {\n nodeById(uuid:$uuid) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n uuid: variables.uuid\n },\n skip: false\n };\n }\n\n if (variables.uuids) {\n return {\n baseQuery: gql`\n query NodesByUuidInfoQuery($uuids:[String!]!) {\n jcr {\n nodesById(uuids:$uuids) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n uuids: variables.uuids\n },\n skip: false\n };\n }\n\n return {\n baseQuery: gql`\n query NodeByPathInfoQuery($path:String!) {\n jcr {\n nodeByPath(path:$path) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n path: variables.path\n },\n skip: !variables.path || variables.path.length === 0\n };\n};\n\nexport type NodeInfoOptions = Partial<{\n getDisplayName: boolean,\n getPrimaryNodeType: boolean,\n getParent: boolean,\n getAggregatedPublicationInfo: {\n subNodes: boolean, reference: boolean\n },\n getOperationSupport: boolean,\n getPermissions: string[],\n getSitePermissions: string[],\n getIsNodeTypes: string[],\n getProperties: string[],\n getSiteInstalledModules: boolean,\n getSiteLanguages: boolean,\n getDisplayableNodePath: boolean,\n getLockInfo: boolean,\n getCanLockUnlock: boolean,\n getChildNodeTypes: boolean,\n getContributeTypesRestrictions: boolean,\n getSubNodesCount: string[],\n getMimeType: boolean,\n applyFragment: Fragment\n}>;\n\nexport const validOptions = [\n 'getDisplayName',\n 'getPrimaryNodeType',\n 'getParent',\n 'getAggregatedPublicationInfo',\n 'getOperationSupport',\n 'getPermissions',\n 'getSitePermissions',\n 'getIsNodeTypes',\n 'getProperties',\n 'getSiteInstalledModules',\n 'getSiteLanguages',\n 'getDisplayableNodePath',\n 'getLockInfo',\n 'getCanLockUnlock',\n 'getChildNodeTypes',\n 'getContributeTypesRestrictions',\n 'getSubNodesCount',\n 'getMimeType',\n 'applyFragment'\n];\n\nexport const validateQuery = (variables: {[key:string]: any}, options: NodeInfoOptions = {}) => {\n const requiresLanguage = ['getDisplayName', 'getAggregatedPublicationInfo', 'getProperties'] as const;\n const missingLanguageOptions = requiresLanguage\n .filter(attr => Boolean(options[attr as keyof NodeInfoOptions]));\n if (missingLanguageOptions.length > 0 && !variables.language) {\n const msg = `language is required for useNodeInfo options ${missingLanguageOptions.join(',')}`;\n throw new Error(msg);\n }\n};\n\nexport const getQuery = (variables: {[key:string]: any}, options: NodeInfoOptions = {}) => {\n const fragments = [];\n\n const {baseQuery, generatedVariables, skip} = getBaseQueryAndVariables(variables);\n\n if (!skip) {\n validateQuery(variables, options);\n if (options.getDisplayName) {\n fragments.push(displayName);\n\n generatedVariables.language = variables.language;\n }\n\n if (options.getPrimaryNodeType) {\n fragments.push(primaryNodeType);\n if (variables.displayLanguage) {\n generatedVariables.displayLanguageSet = true;\n generatedVariables.displayLanguage = variables.displayLanguage;\n } else {\n generatedVariables.displayLanguageSet = false;\n generatedVariables.displayLanguage = '';\n }\n }\n\n if (options.getParent) {\n fragments.push(parentNode);\n }\n\n if (options.getAggregatedPublicationInfo) {\n fragments.push(aggregatedPublicationInfo);\n\n generatedVariables.language = variables.language;\n generatedVariables.aggregatedPublicationInfoSubNodes = Boolean(options.getAggregatedPublicationInfo.subNodes);\n generatedVariables.aggregatedPublicationInfoIncludeReference = Boolean(options.getAggregatedPublicationInfo.reference);\n }\n\n if (options.getOperationSupport) {\n fragments.push(operationSupport);\n }\n\n if (options.getPermissions) {\n options.getPermissions.forEach(name => {\n const {fragment, variables: fragmentVariables} = getPermissionFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getSitePermissions) {\n options.getSitePermissions.forEach(name => {\n const {fragment, variables: fragmentVariables} = getSitePermissionFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getIsNodeTypes) {\n options.getIsNodeTypes.forEach(name => {\n const {fragment, variables: fragmentVariables} = getNodeTypeFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getProperties) {\n fragments.push(getProperties);\n generatedVariables.getPropertiesNames = options.getProperties;\n\n generatedVariables.language = variables.language;\n }\n\n if (options.getSiteInstalledModules) {\n fragments.push(installedModules);\n }\n\n if (options.getSiteLanguages) {\n fragments.push(siteLanguages);\n }\n\n if (options.getDisplayableNodePath) {\n fragments.push(displayableNode);\n }\n\n if (options.getLockInfo) {\n fragments.push(lockInfo);\n }\n\n if (options.getCanLockUnlock) {\n fragments.push(canLockUnlock);\n }\n\n if (options.getChildNodeTypes) {\n fragments.push(childNodeTypes);\n }\n\n if (options.getContributeTypesRestrictions) {\n fragments.push(contentRestrictions);\n }\n\n if (options.getSubNodesCount) {\n options.getSubNodesCount.forEach(name => {\n const {fragment, variables: fragmentVariables} = getSubNodesCountFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getMimeType) {\n fragments.push(mimeTypes);\n }\n\n if (options.applyFragment) {\n fragments.push(options.applyFragment);\n }\n }\n\n return {\n query: replaceFragmentsInDocument(baseQuery, fragments),\n generatedVariables,\n skip\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["gql","aggregatedPublicationInfo","canLockUnlock","childNodeTypes","contentRestrictions","displayableNode","displayName","getProperties","installedModules","isExternal","lockInfo","mimeTypes","nodeCacheRequiredFields","operationSupport","parentNode","primaryNodeType","replaceFragmentsInDocument","siteLanguages","getPermissionFragment","getSitePermissionFragment","getNodeTypeFragment","getSubNodesCountFragment","getBaseQueryAndVariables","variables","paths","baseQuery","_templateObject","_taggedTemplateLiteral","generatedVariables","skip","uuid","length","_templateObject2","uuids","_templateObject3","_templateObject4","path","validOptions","validateQuery","options","arguments","undefined","requiresLanguage","missingLanguageOptions","filter","attr","Boolean","language","msg","concat","join","Error","getQuery","fragments","_getBaseQueryAndVaria","getDisplayName","push","getPrimaryNodeType","displayLanguage","displayLanguageSet","getParent","getAggregatedPublicationInfo","aggregatedPublicationInfoSubNodes","subNodes","aggregatedPublicationInfoIncludeReference","reference","getOperationSupport","getPermissions","forEach","name","_getPermissionFragmen","fragment","fragmentVariables","Object","assign","getSitePermissions","_getSitePermissionFra","getIsNodeTypes","_getNodeTypeFragment","getPropertiesNames","getSiteInstalledModules","getSiteLanguages","getDisplayableNodePath","getLockInfo","getCanLockUnlock","getChildNodeTypes","getContributeTypesRestrictions","getSubNodesCount","_getSubNodesCountFrag","getMimeType","applyFragment","query"],"sources":["useNodeInfo.gql-queries.ts"],"sourcesContent":["import gql from 'graphql-tag';\nimport {\n aggregatedPublicationInfo,\n canLockUnlock,\n childNodeTypes,\n contentRestrictions,\n displayableNode,\n displayName,\n Fragment,\n getProperties,\n installedModules, isExternal,\n lockInfo,\n mimeTypes,\n nodeCacheRequiredFields,\n operationSupport,\n parentNode,\n primaryNodeType,\n replaceFragmentsInDocument,\n siteLanguages\n} from '~/fragments';\nimport {getPermissionFragment, getSitePermissionFragment} from '~/fragments/getPermissionFragment';\nimport {getNodeTypeFragment} from '~/fragments/getIsNodeTypeFragment';\nimport {DocumentNode} from 'graphql';\nimport {getSubNodesCountFragment} from '~/fragments/getSubNodesCountFragment';\n\nconst getBaseQueryAndVariables = (variables: {[key:string]: any}): {\n baseQuery: DocumentNode,\n generatedVariables:{[key:string]: unknown},\n skip: boolean\n} => {\n if (variables.paths) {\n return {\n baseQuery: gql`\n query NodesByPathInfoQuery($paths:[String!]!) {\n jcr {\n nodesByPath(paths:$paths) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n paths: variables.paths\n },\n skip: false\n };\n }\n\n if (variables.uuid && variables.uuid.length > 0) {\n return {\n baseQuery: gql`\n query NodeByUuidInfoQuery($uuid:String!) {\n jcr {\n nodeById(uuid:$uuid) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n uuid: variables.uuid\n },\n skip: false\n };\n }\n\n if (variables.uuids) {\n return {\n baseQuery: gql`\n query NodesByUuidInfoQuery($uuids:[String!]!) {\n jcr {\n nodesById(uuids:$uuids) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n uuids: variables.uuids\n },\n skip: false\n };\n }\n\n return {\n baseQuery: gql`\n query NodeByPathInfoQuery($path:String!) {\n jcr {\n nodeByPath(path:$path) {\n name\n ...node\n ...NodeCacheRequiredFields\n ...External\n }\n }\n }\n ${nodeCacheRequiredFields.gql}\n ${isExternal.gql}\n `,\n generatedVariables: {\n path: variables.path\n },\n skip: !variables.path || variables.path.length === 0\n };\n};\n\nexport type NodeInfoOptions = Partial<{\n getDisplayName: boolean,\n getPrimaryNodeType: boolean,\n getParent: boolean,\n getAggregatedPublicationInfo: {\n subNodes: boolean, reference: boolean\n },\n getOperationSupport: boolean,\n getPermissions: string[],\n getSitePermissions: string[],\n getIsNodeTypes: string[],\n getProperties: string[],\n getSiteInstalledModules: boolean,\n getSiteLanguages: boolean,\n getDisplayableNodePath: boolean,\n getLockInfo: boolean,\n getCanLockUnlock: boolean,\n getChildNodeTypes: boolean,\n getContributeTypesRestrictions: boolean,\n getSubNodesCount: string[],\n getMimeType: boolean,\n applyFragment: Fragment,\n skip: boolean\n}>;\n\nexport const validOptions = [\n 'getDisplayName',\n 'getPrimaryNodeType',\n 'getParent',\n 'getAggregatedPublicationInfo',\n 'getOperationSupport',\n 'getPermissions',\n 'getSitePermissions',\n 'getIsNodeTypes',\n 'getProperties',\n 'getSiteInstalledModules',\n 'getSiteLanguages',\n 'getDisplayableNodePath',\n 'getLockInfo',\n 'getCanLockUnlock',\n 'getChildNodeTypes',\n 'getContributeTypesRestrictions',\n 'getSubNodesCount',\n 'getMimeType',\n 'applyFragment',\n 'skip'\n];\n\nexport const validateQuery = (variables: {[key:string]: any}, options: NodeInfoOptions = {}) => {\n const requiresLanguage = ['getDisplayName', 'getAggregatedPublicationInfo', 'getProperties'] as const;\n const missingLanguageOptions = requiresLanguage\n .filter(attr => Boolean(options[attr as keyof NodeInfoOptions]));\n if (missingLanguageOptions.length > 0 && !variables.language) {\n const msg = `language is required for useNodeInfo options ${missingLanguageOptions.join(',')}`;\n throw new Error(msg);\n }\n};\n\nexport const getQuery = (variables: {[key:string]: any}, options: NodeInfoOptions = {}) => {\n const fragments = [];\n\n const {baseQuery, generatedVariables, skip} = getBaseQueryAndVariables(variables);\n\n if (!skip) {\n validateQuery(variables, options);\n if (options.getDisplayName) {\n fragments.push(displayName);\n\n generatedVariables.language = variables.language;\n }\n\n if (options.getPrimaryNodeType) {\n fragments.push(primaryNodeType);\n if (variables.displayLanguage) {\n generatedVariables.displayLanguageSet = true;\n generatedVariables.displayLanguage = variables.displayLanguage;\n } else {\n generatedVariables.displayLanguageSet = false;\n generatedVariables.displayLanguage = '';\n }\n }\n\n if (options.getParent) {\n fragments.push(parentNode);\n }\n\n if (options.getAggregatedPublicationInfo) {\n fragments.push(aggregatedPublicationInfo);\n\n generatedVariables.language = variables.language;\n generatedVariables.aggregatedPublicationInfoSubNodes = Boolean(options.getAggregatedPublicationInfo.subNodes);\n generatedVariables.aggregatedPublicationInfoIncludeReference = Boolean(options.getAggregatedPublicationInfo.reference);\n }\n\n if (options.getOperationSupport) {\n fragments.push(operationSupport);\n }\n\n if (options.getPermissions) {\n options.getPermissions.forEach(name => {\n const {fragment, variables: fragmentVariables} = getPermissionFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getSitePermissions) {\n options.getSitePermissions.forEach(name => {\n const {fragment, variables: fragmentVariables} = getSitePermissionFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getIsNodeTypes) {\n options.getIsNodeTypes.forEach(name => {\n const {fragment, variables: fragmentVariables} = getNodeTypeFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getProperties) {\n fragments.push(getProperties);\n generatedVariables.getPropertiesNames = options.getProperties;\n\n generatedVariables.language = variables.language;\n }\n\n if (options.getSiteInstalledModules) {\n fragments.push(installedModules);\n }\n\n if (options.getSiteLanguages) {\n fragments.push(siteLanguages);\n }\n\n if (options.getDisplayableNodePath) {\n fragments.push(displayableNode);\n }\n\n if (options.getLockInfo) {\n fragments.push(lockInfo);\n }\n\n if (options.getCanLockUnlock) {\n fragments.push(canLockUnlock);\n }\n\n if (options.getChildNodeTypes) {\n fragments.push(childNodeTypes);\n }\n\n if (options.getContributeTypesRestrictions) {\n fragments.push(contentRestrictions);\n }\n\n if (options.getSubNodesCount) {\n options.getSubNodesCount.forEach(name => {\n const {fragment, variables: fragmentVariables} = getSubNodesCountFragment(name);\n fragments.push(fragment);\n Object.assign(generatedVariables, fragmentVariables);\n });\n }\n\n if (options.getMimeType) {\n fragments.push(mimeTypes);\n }\n\n if (options.applyFragment) {\n fragments.push(options.applyFragment);\n }\n }\n\n return {\n query: replaceFragmentsInDocument(baseQuery, fragments),\n generatedVariables,\n skip\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -137,7 +137,7 @@ export var useNodeInfo = function useNodeInfo(variables, options, queryOptions)
|
|
|
137
137
|
currentRequest = _useMemoRequest2[0],
|
|
138
138
|
queryHasChanged = _useMemoRequest2[1];
|
|
139
139
|
useEffect(function () {
|
|
140
|
-
if (validationError) {
|
|
140
|
+
if (validationError || options !== null && options !== void 0 && options.skip) {
|
|
141
141
|
return;
|
|
142
142
|
}
|
|
143
143
|
queue.push(currentRequest);
|
|
@@ -145,7 +145,7 @@ export var useNodeInfo = function useNodeInfo(variables, options, queryOptions)
|
|
|
145
145
|
return function () {
|
|
146
146
|
queue.splice(queue.indexOf(currentRequest), 1);
|
|
147
147
|
};
|
|
148
|
-
}, [client, currentRequest, validationError]);
|
|
148
|
+
}, [client, currentRequest, options === null || options === void 0 ? void 0 : options.skip, validationError]);
|
|
149
149
|
|
|
150
150
|
// Return early with error if validation failed
|
|
151
151
|
if (validationError) {
|
|
@@ -154,6 +154,11 @@ export var useNodeInfo = function useNodeInfo(variables, options, queryOptions)
|
|
|
154
154
|
error: validationError
|
|
155
155
|
};
|
|
156
156
|
}
|
|
157
|
+
if (options !== null && options !== void 0 && options.skip) {
|
|
158
|
+
return {
|
|
159
|
+
loading: false
|
|
160
|
+
};
|
|
161
|
+
}
|
|
157
162
|
if (queryHasChanged && (queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.fetchPolicy) !== 'no-cache' && (queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.fetchPolicy) !== 'network-only') {
|
|
158
163
|
var infoQuery;
|
|
159
164
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useState","useApolloClient","getQuery","validateQuery","getEncodedPermissionName","getEncodedNodeTypeName","isSubset","merge","useMemoRequest","deepEquals","getEncodedSubNodesCountName","queue","timeout","observedQueries","scheduleQueue","client","window","setTimeout","timeoutHandler","clearTimeout","mergedQueue","forEach","request","toInsert","variables","queryOptions","options","originals","mergeable","find","q","JSON","stringify","push","_objectSpread","obs","unsubscribe","mergedRequest","query","generatedVariables","skip","r","e","error","message","concat","setResult","loading","observableQuery","watchQuery","errorPolicy","subscription","subscribe","_ref","data","others","_objectWithoutProperties","_excluded","result","getResult","refetch","useNodeInfo","_useState","_useState2","_slicedToArray","validationError","console","_useMemoRequest","_useMemoRequest2","currentRequest","queryHasChanged","splice","indexOf","fetchPolicy","infoQuery","res","readQuery","node","jcr","nodeByPath","nodeById","nodes","nodesByPath","nodesById","decodeResult","map","n","nodeOrig","site","getPermissions","name","getSitePermissions","getIsNodeTypes","getMimeType","resourceChildren","mimeType","length","value","getSubNodesCount","_res$pageInfo","pageInfo","totalCount"],"sources":["useNodeInfo.ts"],"sourcesContent":["import {useEffect, useState} from 'react';\nimport {ApolloClient, ApolloError, NetworkStatus, useApolloClient, WatchQueryOptions} from '@apollo/client';\nimport {getQuery, NodeInfoOptions, validateQuery} from './useNodeInfo.gql-queries';\nimport {getEncodedPermissionName} from '../../fragments/getPermissionFragment';\nimport {getEncodedNodeTypeName} from '../../fragments/getIsNodeTypeFragment';\nimport {isSubset, merge} from './useNodeInfo.utils';\nimport {useMemoRequest} from './useMemoRequest';\nimport deepEquals from 'fast-deep-equal';\nimport {DocumentNode, GraphQLError} from 'graphql';\nimport {getEncodedSubNodesCountName} from '../../fragments/getSubNodesCountFragment';\n\nexport type Request = {\n variables:{[key:string]: any},\n options: NodeInfoOptions,\n queryOptions: Partial<WatchQueryOptions>,\n}\n\nexport type QueuedRequest = Request & {\n result?: any,\n setResult: (data: any) => void\n}\n\nexport type MergedRequest = Request & { originals: QueuedRequest[] };\n\nexport type NodeInfoResult = {\n node?: any,\n nodes?: any[],\n errors?: readonly GraphQLError[],\n error?: ApolloError,\n loading?: boolean,\n networkStatus?: NetworkStatus,\n partial?: boolean,\n query?: DocumentNode,\n variables?: {[key:string]: any}\n}\n\nconst queue: QueuedRequest[] = [];\nlet timeout: number;\nlet observedQueries: { unsubscribe: () => void }[] = [];\n\nfunction scheduleQueue(client: ApolloClient<object>) {\n if (!timeout) {\n timeout = window.setTimeout(() => {\n timeoutHandler(client);\n clearTimeout(timeout);\n timeout = null;\n }, 0);\n }\n}\n\nconst timeoutHandler = (client: ApolloClient<object>) => {\n const mergedQueue: MergedRequest[] = [];\n\n queue.forEach(request => {\n const toInsert = {\n variables: request.variables,\n queryOptions: request.queryOptions,\n options: request.options,\n originals: [request]\n };\n\n const mergeable = mergedQueue.find(q => JSON.stringify(q.queryOptions) === JSON.stringify(toInsert.queryOptions) && (isSubset(q.variables, toInsert.variables) || isSubset(toInsert.variables, q.variables)));\n\n if (mergeable) {\n merge(mergeable, toInsert);\n } else {\n mergedQueue.push({\n variables: toInsert.variables && {...toInsert.variables},\n queryOptions: toInsert.queryOptions && {...toInsert.queryOptions},\n options: toInsert.options && {...toInsert.options},\n originals: toInsert.originals\n });\n }\n });\n\n observedQueries.forEach(obs => obs.unsubscribe());\n observedQueries = [];\n\n mergedQueue.forEach(mergedRequest => {\n const {variables, queryOptions, options, originals} = mergedRequest;\n let query: any;\n let generatedVariables: any;\n let skip;\n\n try {\n const r = getQuery(variables, options);\n query = r.query;\n generatedVariables = r.generatedVariables;\n skip = r.skip;\n } catch (e) {\n const error = {message: `One of the batched queries resulted in error: ${e.message}`} as ApolloError;\n originals.forEach(request => {\n request.setResult({\n loading: false,\n error\n });\n });\n return;\n }\n\n if (skip) {\n // No query to execute\n originals.forEach(request => {\n request.setResult({\n loading: false\n });\n });\n } else {\n const observableQuery = client.watchQuery({query, errorPolicy: 'ignore', ...queryOptions, variables: generatedVariables});\n const subscription = observableQuery.subscribe(({data, ...others}) => {\n const result = getResult(data, others, options, query, generatedVariables);\n originals.forEach(request => {\n if (!deepEquals(request.result, result)) {\n request.result = result;\n request.setResult({\n ...result,\n refetch() {\n return observableQuery.refetch(generatedVariables);\n }\n });\n }\n });\n });\n observedQueries.push(subscription);\n }\n });\n};\n\nexport const useNodeInfo = (variables: {[key:string]: unknown}, options?: NodeInfoOptions, queryOptions?: Partial<WatchQueryOptions>) => {\n const [result, setResult] = useState<NodeInfoResult>({\n loading: true\n });\n\n const client = useApolloClient();\n\n // We do pre-error checks from getQuery and fail faster.\n // This makes issues easier to trace before requests are queued and merged, which is harder to debug.\n let validationError: ApolloError | null = null;\n try {\n validateQuery(variables, options);\n } catch (e) {\n console.error(e);\n validationError = {message: e.message} as ApolloError;\n }\n\n // Normalize and memoize request\n const [currentRequest, queryHasChanged] = useMemoRequest(variables, queryOptions, options, setResult);\n useEffect(() => {\n if (validationError) {\n return;\n }\n\n queue.push(currentRequest);\n scheduleQueue(client);\n\n return () => {\n queue.splice(queue.indexOf(currentRequest), 1);\n };\n }, [client, currentRequest, validationError]);\n\n // Return early with error if validation failed\n if (validationError) {\n return {loading: false, error: validationError};\n }\n\n if (queryHasChanged && queryOptions?.fetchPolicy !== 'no-cache' && queryOptions?.fetchPolicy !== 'network-only') {\n let infoQuery;\n\n try {\n infoQuery = getQuery(currentRequest.variables, currentRequest.options);\n } catch (e) {\n const error = {message: e.message} as ApolloError;\n return {loading: false, error};\n }\n\n const res = client.readQuery({query: infoQuery.query, variables: infoQuery.generatedVariables});\n if (res) {\n const result = getResult(res, {}, currentRequest.options, infoQuery.query, infoQuery.generatedVariables);\n setResult(result);\n return result;\n }\n }\n\n if (queryHasChanged && !result.loading) {\n setResult({\n loading: true\n });\n return {loading: true};\n }\n\n return result;\n};\n\n/* eslint-disable max-params */\nconst getResult = (data: any, others: NodeInfoResult, options: NodeInfoOptions, query: DocumentNode, generatedVariables: {[key:string]: unknown}) => {\n const node: object = (data && data.jcr && (data.jcr.nodeByPath || data.jcr.nodeById)) || null;\n const nodes: object[] = (data && data.jcr && (data.jcr.nodesByPath || data.jcr.nodesById)) || null;\n let result = others;\n\n if (node) {\n result = {\n node: decodeResult(node, options),\n ...others,\n query,\n variables: generatedVariables\n };\n }\n\n if (nodes) {\n result = {\n nodes: nodes.map(n => decodeResult(n, options)),\n ...others,\n query,\n variables: generatedVariables\n };\n }\n\n return result;\n};\n\nconst decodeResult = (nodeOrig: any, options: NodeInfoOptions) => {\n const node = {...nodeOrig};\n if (node.site) {\n node.site = {...node.site};\n }\n\n if (node && options) {\n if (options.getPermissions) {\n options.getPermissions.forEach(name => {\n const res = node[getEncodedPermissionName(name)];\n delete node[getEncodedPermissionName(name)];\n node[name] = res;\n });\n }\n\n if (options.getSitePermissions) {\n options.getSitePermissions.forEach(name => {\n const res = node.site[getEncodedPermissionName(name)];\n delete node.site[getEncodedPermissionName(name)];\n node.site[name] = res;\n });\n }\n\n if (options.getIsNodeTypes) {\n options.getIsNodeTypes.forEach(name => {\n const res = node[getEncodedNodeTypeName(name)];\n delete node[getEncodedNodeTypeName(name)];\n node[name] = res;\n });\n }\n\n if (options.getMimeType) {\n const {nodes} = node.resourceChildren;\n node.mimeType = (nodes.length !== 0 && nodes[0].mimeType.value) || null;\n delete node.resourceChildren;\n }\n\n if (options.getSubNodesCount) {\n options.getSubNodesCount.forEach(name => {\n const res = node[getEncodedSubNodesCountName(name)];\n delete node[getEncodedSubNodesCountName(name)];\n node['subNodesCount_' + name] = res?.pageInfo?.totalCount;\n });\n }\n }\n\n return node;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useEffect","useState","useApolloClient","getQuery","validateQuery","getEncodedPermissionName","getEncodedNodeTypeName","isSubset","merge","useMemoRequest","deepEquals","getEncodedSubNodesCountName","queue","timeout","observedQueries","scheduleQueue","client","window","setTimeout","timeoutHandler","clearTimeout","mergedQueue","forEach","request","toInsert","variables","queryOptions","options","originals","mergeable","find","q","JSON","stringify","push","_objectSpread","obs","unsubscribe","mergedRequest","query","generatedVariables","skip","r","e","error","message","concat","setResult","loading","observableQuery","watchQuery","errorPolicy","subscription","subscribe","_ref","data","others","_objectWithoutProperties","_excluded","result","getResult","refetch","useNodeInfo","_useState","_useState2","_slicedToArray","validationError","console","_useMemoRequest","_useMemoRequest2","currentRequest","queryHasChanged","splice","indexOf","fetchPolicy","infoQuery","res","readQuery","node","jcr","nodeByPath","nodeById","nodes","nodesByPath","nodesById","decodeResult","map","n","nodeOrig","site","getPermissions","name","getSitePermissions","getIsNodeTypes","getMimeType","resourceChildren","mimeType","length","value","getSubNodesCount","_res$pageInfo","pageInfo","totalCount"],"sources":["useNodeInfo.ts"],"sourcesContent":["import {useEffect, useState} from 'react';\nimport {ApolloClient, ApolloError, NetworkStatus, useApolloClient, WatchQueryOptions} from '@apollo/client';\nimport {getQuery, NodeInfoOptions, validateQuery} from './useNodeInfo.gql-queries';\nimport {getEncodedPermissionName} from '../../fragments/getPermissionFragment';\nimport {getEncodedNodeTypeName} from '../../fragments/getIsNodeTypeFragment';\nimport {isSubset, merge} from './useNodeInfo.utils';\nimport {useMemoRequest} from './useMemoRequest';\nimport deepEquals from 'fast-deep-equal';\nimport {DocumentNode, GraphQLFormattedError} from 'graphql';\nimport {getEncodedSubNodesCountName} from '../../fragments/getSubNodesCountFragment';\n\nexport type Request = {\n variables:{[key:string]: any},\n options: NodeInfoOptions,\n queryOptions: Partial<WatchQueryOptions>,\n}\n\nexport type QueuedRequest = Request & {\n result?: any,\n setResult: (data: any) => void\n}\n\nexport type MergedRequest = Request & { originals: QueuedRequest[] };\n\nexport type NodeInfoResult = {\n node?: any,\n nodes?: any[],\n errors?: readonly GraphQLFormattedError[],\n error?: ApolloError,\n loading?: boolean,\n networkStatus?: NetworkStatus,\n partial?: boolean,\n query?: DocumentNode,\n variables?: {[key:string]: any}\n}\n\nconst queue: QueuedRequest[] = [];\nlet timeout: number;\nlet observedQueries: { unsubscribe: () => void }[] = [];\n\nfunction scheduleQueue(client: ApolloClient<object>) {\n if (!timeout) {\n timeout = window.setTimeout(() => {\n timeoutHandler(client);\n clearTimeout(timeout);\n timeout = null;\n }, 0);\n }\n}\n\nconst timeoutHandler = (client: ApolloClient<object>) => {\n const mergedQueue: MergedRequest[] = [];\n\n queue.forEach(request => {\n const toInsert = {\n variables: request.variables,\n queryOptions: request.queryOptions,\n options: request.options,\n originals: [request]\n };\n\n const mergeable = mergedQueue.find(q => JSON.stringify(q.queryOptions) === JSON.stringify(toInsert.queryOptions) && (isSubset(q.variables, toInsert.variables) || isSubset(toInsert.variables, q.variables)));\n\n if (mergeable) {\n merge(mergeable, toInsert);\n } else {\n mergedQueue.push({\n variables: toInsert.variables && {...toInsert.variables},\n queryOptions: toInsert.queryOptions && {...toInsert.queryOptions},\n options: toInsert.options && {...toInsert.options},\n originals: toInsert.originals\n });\n }\n });\n\n observedQueries.forEach(obs => obs.unsubscribe());\n observedQueries = [];\n\n mergedQueue.forEach(mergedRequest => {\n const {variables, queryOptions, options, originals} = mergedRequest;\n let query: any;\n let generatedVariables: any;\n let skip;\n\n try {\n const r = getQuery(variables, options);\n query = r.query;\n generatedVariables = r.generatedVariables;\n skip = r.skip;\n } catch (e) {\n const error = {message: `One of the batched queries resulted in error: ${e.message}`} as ApolloError;\n originals.forEach(request => {\n request.setResult({\n loading: false,\n error\n });\n });\n return;\n }\n\n if (skip) {\n // No query to execute\n originals.forEach(request => {\n request.setResult({\n loading: false\n });\n });\n } else {\n const observableQuery = client.watchQuery({query, errorPolicy: 'ignore', ...queryOptions, variables: generatedVariables});\n const subscription = observableQuery.subscribe(({data, ...others}) => {\n const result = getResult(data, others, options, query, generatedVariables);\n originals.forEach(request => {\n if (!deepEquals(request.result, result)) {\n request.result = result;\n request.setResult({\n ...result,\n refetch() {\n return observableQuery.refetch(generatedVariables);\n }\n });\n }\n });\n });\n observedQueries.push(subscription);\n }\n });\n};\n\nexport const useNodeInfo = (variables: {[key:string]: unknown}, options?: NodeInfoOptions, queryOptions?: Partial<WatchQueryOptions>) => {\n const [result, setResult] = useState<NodeInfoResult>({\n loading: true\n });\n\n const client = useApolloClient();\n\n // We do pre-error checks from getQuery and fail faster.\n // This makes issues easier to trace before requests are queued and merged, which is harder to debug.\n let validationError: ApolloError | null = null;\n try {\n validateQuery(variables, options);\n } catch (e) {\n console.error(e);\n validationError = {message: e.message} as ApolloError;\n }\n\n // Normalize and memoize request\n const [currentRequest, queryHasChanged] = useMemoRequest(variables, queryOptions, options, setResult);\n useEffect(() => {\n if (validationError || options?.skip) {\n return;\n }\n\n queue.push(currentRequest);\n scheduleQueue(client);\n\n return () => {\n queue.splice(queue.indexOf(currentRequest), 1);\n };\n }, [client, currentRequest, options?.skip, validationError]);\n\n // Return early with error if validation failed\n if (validationError) {\n return {loading: false, error: validationError};\n }\n\n if (options?.skip) {\n return {loading: false};\n }\n\n if (queryHasChanged && queryOptions?.fetchPolicy !== 'no-cache' && queryOptions?.fetchPolicy !== 'network-only') {\n let infoQuery;\n\n try {\n infoQuery = getQuery(currentRequest.variables, currentRequest.options);\n } catch (e) {\n const error = {message: e.message} as ApolloError;\n return {loading: false, error};\n }\n\n const res = client.readQuery({query: infoQuery.query, variables: infoQuery.generatedVariables});\n if (res) {\n const result = getResult(res, {}, currentRequest.options, infoQuery.query, infoQuery.generatedVariables);\n setResult(result);\n return result;\n }\n }\n\n if (queryHasChanged && !result.loading) {\n setResult({\n loading: true\n });\n return {loading: true};\n }\n\n return result;\n};\n\n/* eslint-disable max-params */\nconst getResult = (data: any, others: NodeInfoResult, options: NodeInfoOptions, query: DocumentNode, generatedVariables: {[key:string]: unknown}) => {\n const node: object = (data && data.jcr && (data.jcr.nodeByPath || data.jcr.nodeById)) || null;\n const nodes: object[] = (data && data.jcr && (data.jcr.nodesByPath || data.jcr.nodesById)) || null;\n let result = others;\n\n if (node) {\n result = {\n node: decodeResult(node, options),\n ...others,\n query,\n variables: generatedVariables\n };\n }\n\n if (nodes) {\n result = {\n nodes: nodes.map(n => decodeResult(n, options)),\n ...others,\n query,\n variables: generatedVariables\n };\n }\n\n return result;\n};\n\nconst decodeResult = (nodeOrig: any, options: NodeInfoOptions) => {\n const node = {...nodeOrig};\n if (node.site) {\n node.site = {...node.site};\n }\n\n if (node && options) {\n if (options.getPermissions) {\n options.getPermissions.forEach(name => {\n const res = node[getEncodedPermissionName(name)];\n delete node[getEncodedPermissionName(name)];\n node[name] = res;\n });\n }\n\n if (options.getSitePermissions) {\n options.getSitePermissions.forEach(name => {\n const res = node.site[getEncodedPermissionName(name)];\n delete node.site[getEncodedPermissionName(name)];\n node.site[name] = res;\n });\n }\n\n if (options.getIsNodeTypes) {\n options.getIsNodeTypes.forEach(name => {\n const res = node[getEncodedNodeTypeName(name)];\n delete node[getEncodedNodeTypeName(name)];\n node[name] = res;\n });\n }\n\n if (options.getMimeType) {\n const {nodes} = node.resourceChildren;\n node.mimeType = (nodes.length !== 0 && nodes[0].mimeType.value) || null;\n delete node.resourceChildren;\n }\n\n if (options.getSubNodesCount) {\n options.getSubNodesCount.forEach(name => {\n const res = node[getEncodedSubNodesCountName(name)];\n delete node[getEncodedSubNodesCountName(name)];\n node['subNodesCount_' + name] = res?.pageInfo?.totalCount;\n });\n }\n }\n\n return node;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
6
6
|
var isObject = function isObject(obj) {
|
|
7
7
|
return obj !== null && _typeof(obj) === 'object';
|
|
8
8
|
};
|
|
9
|
-
|
|
9
|
+
var _merge = function merge(target, source) {
|
|
10
10
|
if (Array.isArray(target) && Array.isArray(source)) {
|
|
11
11
|
return [].concat(_toConsumableArray(target), _toConsumableArray(source.filter(function (f) {
|
|
12
12
|
return target.indexOf(f) === -1;
|
|
@@ -17,7 +17,7 @@ export var merge = function merge(target, source) {
|
|
|
17
17
|
var sourceValue = source[sourceKey];
|
|
18
18
|
if (Object.prototype.hasOwnProperty.call(target, sourceKey)) {
|
|
19
19
|
var targetValue = target[sourceKey];
|
|
20
|
-
target[sourceKey] =
|
|
20
|
+
target[sourceKey] = _merge(targetValue, sourceValue);
|
|
21
21
|
} else if (Array.isArray(sourceValue)) {
|
|
22
22
|
target[sourceKey] = _toConsumableArray(sourceValue);
|
|
23
23
|
} else if (_typeof(sourceValue) === 'object') {
|
|
@@ -30,7 +30,8 @@ export var merge = function merge(target, source) {
|
|
|
30
30
|
}
|
|
31
31
|
return target;
|
|
32
32
|
};
|
|
33
|
-
export
|
|
33
|
+
export { _merge as merge };
|
|
34
|
+
var _isSubset = function isSubset(superObj, subObj) {
|
|
34
35
|
return Object.keys(subObj).every(function (ele) {
|
|
35
36
|
var obj1 = subObj[ele];
|
|
36
37
|
var obj2 = superObj[ele];
|
|
@@ -40,9 +41,10 @@ export var isSubset = function isSubset(superObj, subObj) {
|
|
|
40
41
|
});
|
|
41
42
|
}
|
|
42
43
|
if (_typeof(obj1) === 'object' && !Array.isArray(obj1)) {
|
|
43
|
-
return
|
|
44
|
+
return _isSubset(obj2, obj1);
|
|
44
45
|
}
|
|
45
46
|
return obj1 === obj2;
|
|
46
47
|
});
|
|
47
48
|
};
|
|
49
|
+
export { _isSubset as isSubset };
|
|
48
50
|
//# sourceMappingURL=useNodeInfo.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isObject","obj","_typeof","merge","target","source","Array","isArray","concat","_toConsumableArray","filter","f","indexOf","Object","keys","forEach","sourceKey","sourceValue","prototype","hasOwnProperty","call","targetValue","_objectSpread","isSubset","superObj","subObj","every","ele","obj1","obj2","length","value","index"],"sources":["useNodeInfo.utils.ts"],"sourcesContent":["const isObject = (obj: unknown): obj is {[key:string]: any} => obj !== null && typeof obj === 'object';\n\nexport const merge = (target: {[key:string]: any}, source: {[key:string]: any}) => {\n if (Array.isArray(target) && Array.isArray(source)) {\n return [...target, ...source.filter(f => target.indexOf(f) === -1)];\n }\n\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach(sourceKey => {\n const sourceValue: any = (source as any)[sourceKey];\n if (Object.prototype.hasOwnProperty.call(target, sourceKey)) {\n const targetValue: any = target[sourceKey];\n target[sourceKey] = merge(targetValue, sourceValue);\n } else if (Array.isArray(sourceValue)) {\n target[sourceKey] = [...sourceValue];\n } else if (typeof sourceValue === 'object') {\n target[sourceKey] = {...sourceValue};\n } else {\n target[sourceKey] = sourceValue;\n }\n });\n\n return target;\n }\n\n return target;\n};\n\nexport const isSubset = (superObj:{[key:string]: any}, subObj:{[key:string]: any}):boolean => Object.keys(subObj).every(ele => {\n const obj1 = subObj[ele];\n const obj2 = superObj[ele];\n if (Array.isArray(obj1) && Array.isArray(obj2)) {\n return obj1.length === obj2.length && obj1.every((value, index) => value === obj2[index]);\n }\n\n if (typeof obj1 === 'object' && !Array.isArray(obj1)) {\n return isSubset(obj2, obj1);\n }\n\n return obj1 === obj2;\n});\n"],"mappings":";;;;;AAAA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,GAAY;EAAA,OAAiCA,GAAG,KAAK,IAAI,IAAIC,OAAA,CAAOD,GAAG,MAAK,QAAQ;AAAA;
|
|
1
|
+
{"version":3,"names":["isObject","obj","_typeof","merge","target","source","Array","isArray","concat","_toConsumableArray","filter","f","indexOf","Object","keys","forEach","sourceKey","sourceValue","prototype","hasOwnProperty","call","targetValue","_objectSpread","_merge","isSubset","superObj","subObj","every","ele","obj1","obj2","length","value","index","_isSubset"],"sources":["useNodeInfo.utils.ts"],"sourcesContent":["const isObject = (obj: unknown): obj is {[key:string]: any} => obj !== null && typeof obj === 'object';\n\nexport const merge = (target: {[key:string]: any}, source: {[key:string]: any}) => {\n if (Array.isArray(target) && Array.isArray(source)) {\n return [...target, ...source.filter(f => target.indexOf(f) === -1)];\n }\n\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach(sourceKey => {\n const sourceValue: any = (source as any)[sourceKey];\n if (Object.prototype.hasOwnProperty.call(target, sourceKey)) {\n const targetValue: any = target[sourceKey];\n target[sourceKey] = merge(targetValue, sourceValue);\n } else if (Array.isArray(sourceValue)) {\n target[sourceKey] = [...sourceValue];\n } else if (typeof sourceValue === 'object') {\n target[sourceKey] = {...sourceValue};\n } else {\n target[sourceKey] = sourceValue;\n }\n });\n\n return target;\n }\n\n return target;\n};\n\nexport const isSubset = (superObj:{[key:string]: any}, subObj:{[key:string]: any}):boolean => Object.keys(subObj).every(ele => {\n const obj1 = subObj[ele];\n const obj2 = superObj[ele];\n if (Array.isArray(obj1) && Array.isArray(obj2)) {\n return obj1.length === obj2.length && obj1.every((value, index) => value === obj2[index]);\n }\n\n if (typeof obj1 === 'object' && !Array.isArray(obj1)) {\n return isSubset(obj2, obj1);\n }\n\n return obj1 === obj2;\n});\n"],"mappings":";;;;;AAAA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,GAAY;EAAA,OAAiCA,GAAG,KAAK,IAAI,IAAIC,OAAA,CAAOD,GAAG,MAAK,QAAQ;AAAA;AAE/F,IAAME,MAAK,GAAG,SAARA,KAAKA,CAAIC,MAA2B,EAAEC,MAA2B,EAAK;EAC/E,IAAIC,KAAK,CAACC,OAAO,CAACH,MAAM,CAAC,IAAIE,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,EAAE;IAChD,UAAAG,MAAA,CAAAC,kBAAA,CAAWL,MAAM,GAAAK,kBAAA,CAAKJ,MAAM,CAACK,MAAM,CAAC,UAAAC,CAAC;MAAA,OAAIP,MAAM,CAACQ,OAAO,CAACD,CAAC,CAAC,KAAK,CAAC,CAAC;IAAA,EAAC;EACtE;EAEA,IAAIX,QAAQ,CAACI,MAAM,CAAC,IAAIJ,QAAQ,CAACK,MAAM,CAAC,EAAE;IACtCQ,MAAM,CAACC,IAAI,CAACT,MAAM,CAAC,CAACU,OAAO,CAAC,UAAAC,SAAS,EAAI;MACrC,IAAMC,WAAgB,GAAIZ,MAAM,CAASW,SAAS,CAAC;MACnD,IAAIH,MAAM,CAACK,SAAS,CAACC,cAAc,CAACC,IAAI,CAAChB,MAAM,EAAEY,SAAS,CAAC,EAAE;QACzD,IAAMK,WAAgB,GAAGjB,MAAM,CAACY,SAAS,CAAC;QAC1CZ,MAAM,CAACY,SAAS,CAAC,GAAGb,MAAK,CAACkB,WAAW,EAAEJ,WAAW,CAAC;MACvD,CAAC,MAAM,IAAIX,KAAK,CAACC,OAAO,CAACU,WAAW,CAAC,EAAE;QACnCb,MAAM,CAACY,SAAS,CAAC,GAAAP,kBAAA,CAAOQ,WAAW,CAAC;MACxC,CAAC,MAAM,IAAIf,OAAA,CAAOe,WAAW,MAAK,QAAQ,EAAE;QACxCb,MAAM,CAACY,SAAS,CAAC,GAAAM,aAAA,KAAOL,WAAW,CAAC;MACxC,CAAC,MAAM;QACHb,MAAM,CAACY,SAAS,CAAC,GAAGC,WAAW;MACnC;IACJ,CAAC,CAAC;IAEF,OAAOb,MAAM;EACjB;EAEA,OAAOA,MAAM;AACjB,CAAC;AAAC,SAAAmB,MAAA,IAAApB,KAAA;AAEK,IAAMqB,SAAQ,GAAG,SAAXA,QAAQA,CAAIC,QAA4B,EAAEC,MAA0B;EAAA,OAAab,MAAM,CAACC,IAAI,CAACY,MAAM,CAAC,CAACC,KAAK,CAAC,UAAAC,GAAG,EAAI;IAC3H,IAAMC,IAAI,GAAGH,MAAM,CAACE,GAAG,CAAC;IACxB,IAAME,IAAI,GAAGL,QAAQ,CAACG,GAAG,CAAC;IAC1B,IAAItB,KAAK,CAACC,OAAO,CAACsB,IAAI,CAAC,IAAIvB,KAAK,CAACC,OAAO,CAACuB,IAAI,CAAC,EAAE;MAC5C,OAAOD,IAAI,CAACE,MAAM,KAAKD,IAAI,CAACC,MAAM,IAAIF,IAAI,CAACF,KAAK,CAAC,UAACK,KAAK,EAAEC,KAAK;QAAA,OAAKD,KAAK,KAAKF,IAAI,CAACG,KAAK,CAAC;MAAA,EAAC;IAC7F;IAEA,IAAI/B,OAAA,CAAO2B,IAAI,MAAK,QAAQ,IAAI,CAACvB,KAAK,CAACC,OAAO,CAACsB,IAAI,CAAC,EAAE;MAClD,OAAOL,SAAQ,CAACM,IAAI,EAAED,IAAI,CAAC;IAC/B;IAEA,OAAOA,IAAI,KAAKC,IAAI;EACxB,CAAC,CAAC;AAAA;AAAC,SAAAI,SAAA,IAAAV,QAAA","ignoreList":[]}
|