@esri/hub-common 14.40.0 → 14.42.0

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.
Files changed (78) hide show
  1. package/dist/esm/content/_internal/ContentBusinessRules.js +11 -6
  2. package/dist/esm/content/_internal/ContentBusinessRules.js.map +1 -1
  3. package/dist/esm/groups/_internal/GroupBusinessRules.js +10 -5
  4. package/dist/esm/groups/_internal/GroupBusinessRules.js.map +1 -1
  5. package/dist/esm/initiative-templates/_internal/InitiativeTemplateBusinessRules.js +25 -5
  6. package/dist/esm/initiative-templates/_internal/InitiativeTemplateBusinessRules.js.map +1 -1
  7. package/dist/esm/initiatives/_internal/InitiativeBusinessRules.js +13 -7
  8. package/dist/esm/initiatives/_internal/InitiativeBusinessRules.js.map +1 -1
  9. package/dist/esm/pages/_internal/PageBusinessRules.js +10 -5
  10. package/dist/esm/pages/_internal/PageBusinessRules.js.map +1 -1
  11. package/dist/esm/permissions/HubPermissionPolicies.js +20 -1
  12. package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -1
  13. package/dist/esm/permissions/types/Permission.js +2 -0
  14. package/dist/esm/permissions/types/Permission.js.map +1 -1
  15. package/dist/esm/projects/_internal/ProjectBusinessRules.js +11 -7
  16. package/dist/esm/projects/_internal/ProjectBusinessRules.js.map +1 -1
  17. package/dist/esm/search/_internal/commonHelpers/getTopLevelPredicate.js +8 -5
  18. package/dist/esm/search/_internal/commonHelpers/getTopLevelPredicate.js.map +1 -1
  19. package/dist/esm/search/_internal/commonHelpers/isNilOrEmptyString.js +10 -0
  20. package/dist/esm/search/_internal/commonHelpers/isNilOrEmptyString.js.map +1 -0
  21. package/dist/esm/search/_internal/hubSearchItemsHelpers/getFilterQueryParam.js +5 -3
  22. package/dist/esm/search/_internal/hubSearchItemsHelpers/getFilterQueryParam.js.map +1 -1
  23. package/dist/esm/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.js +9 -3
  24. package/dist/esm/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.js.map +1 -1
  25. package/dist/esm/search/_internal/hubSearchItemsHelpers/getOpenDataQueryParam.js +15 -0
  26. package/dist/esm/search/_internal/hubSearchItemsHelpers/getOpenDataQueryParam.js.map +1 -0
  27. package/dist/esm/search/_internal/hubSearchItemsHelpers/getQueryString.js +2 -1
  28. package/dist/esm/search/_internal/hubSearchItemsHelpers/getQueryString.js.map +1 -1
  29. package/dist/esm/sites/_internal/SiteBusinessRules.js +15 -9
  30. package/dist/esm/sites/_internal/SiteBusinessRules.js.map +1 -1
  31. package/dist/esm/templates/_internal/TemplateBusinessRules.js +10 -5
  32. package/dist/esm/templates/_internal/TemplateBusinessRules.js.map +1 -1
  33. package/dist/node/content/_internal/ContentBusinessRules.js +11 -6
  34. package/dist/node/content/_internal/ContentBusinessRules.js.map +1 -1
  35. package/dist/node/groups/_internal/GroupBusinessRules.js +10 -5
  36. package/dist/node/groups/_internal/GroupBusinessRules.js.map +1 -1
  37. package/dist/node/initiative-templates/_internal/InitiativeTemplateBusinessRules.js +25 -5
  38. package/dist/node/initiative-templates/_internal/InitiativeTemplateBusinessRules.js.map +1 -1
  39. package/dist/node/initiatives/_internal/InitiativeBusinessRules.js +13 -7
  40. package/dist/node/initiatives/_internal/InitiativeBusinessRules.js.map +1 -1
  41. package/dist/node/pages/_internal/PageBusinessRules.js +10 -5
  42. package/dist/node/pages/_internal/PageBusinessRules.js.map +1 -1
  43. package/dist/node/permissions/HubPermissionPolicies.js +20 -1
  44. package/dist/node/permissions/HubPermissionPolicies.js.map +1 -1
  45. package/dist/node/permissions/types/Permission.js +2 -0
  46. package/dist/node/permissions/types/Permission.js.map +1 -1
  47. package/dist/node/projects/_internal/ProjectBusinessRules.js +11 -7
  48. package/dist/node/projects/_internal/ProjectBusinessRules.js.map +1 -1
  49. package/dist/node/search/_internal/commonHelpers/getTopLevelPredicate.js +8 -5
  50. package/dist/node/search/_internal/commonHelpers/getTopLevelPredicate.js.map +1 -1
  51. package/dist/node/search/_internal/commonHelpers/isNilOrEmptyString.js +14 -0
  52. package/dist/node/search/_internal/commonHelpers/isNilOrEmptyString.js.map +1 -0
  53. package/dist/node/search/_internal/hubSearchItemsHelpers/getFilterQueryParam.js +5 -3
  54. package/dist/node/search/_internal/hubSearchItemsHelpers/getFilterQueryParam.js.map +1 -1
  55. package/dist/node/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.js +9 -3
  56. package/dist/node/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.js.map +1 -1
  57. package/dist/node/search/_internal/hubSearchItemsHelpers/getOpenDataQueryParam.js +19 -0
  58. package/dist/node/search/_internal/hubSearchItemsHelpers/getOpenDataQueryParam.js.map +1 -0
  59. package/dist/node/search/_internal/hubSearchItemsHelpers/getQueryString.js +2 -1
  60. package/dist/node/search/_internal/hubSearchItemsHelpers/getQueryString.js.map +1 -1
  61. package/dist/node/sites/_internal/SiteBusinessRules.js +15 -9
  62. package/dist/node/sites/_internal/SiteBusinessRules.js.map +1 -1
  63. package/dist/node/templates/_internal/TemplateBusinessRules.js +10 -5
  64. package/dist/node/templates/_internal/TemplateBusinessRules.js.map +1 -1
  65. package/dist/types/content/_internal/ContentBusinessRules.d.ts +1 -1
  66. package/dist/types/groups/_internal/GroupBusinessRules.d.ts +1 -1
  67. package/dist/types/initiative-templates/_internal/InitiativeTemplateBusinessRules.d.ts +1 -1
  68. package/dist/types/initiatives/_internal/InitiativeBusinessRules.d.ts +1 -1
  69. package/dist/types/pages/_internal/PageBusinessRules.d.ts +1 -1
  70. package/dist/types/permissions/types/Permission.d.ts +2 -1
  71. package/dist/types/projects/_internal/ProjectBusinessRules.d.ts +1 -1
  72. package/dist/types/search/_internal/commonHelpers/getTopLevelPredicate.d.ts +1 -1
  73. package/dist/types/search/_internal/commonHelpers/isNilOrEmptyString.d.ts +7 -0
  74. package/dist/types/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.d.ts +2 -1
  75. package/dist/types/search/_internal/hubSearchItemsHelpers/getOpenDataQueryParam.d.ts +11 -0
  76. package/dist/types/sites/_internal/SiteBusinessRules.d.ts +1 -1
  77. package/dist/types/templates/_internal/TemplateBusinessRules.d.ts +1 -1
  78. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getTopLevelPredicate = void 0;
4
+ const isNilOrEmptyString_1 = require("./isNilOrEmptyString");
4
5
  /**
5
6
  * Searches through a list of filters and finds a specific predicate that should be appended at the top level of a search
6
7
  * (i.e., has special requirements for combining with other predicates). Also verifies that the predicate is not combined in any invalid ways.
@@ -9,7 +10,7 @@ exports.getTopLevelPredicate = void 0;
9
10
  * - Only ONE filter can have a predicate with the target field
10
11
  * - Only ONE predicate with the target field can exist
11
12
  * - The predicate can only be ANDed to other predicates
12
- * - The predicate's field value MUST be a string (not string[] or IMatchOptions)
13
+ * - The predicate's field value MUST be a string or boolean (not string[] or IMatchOptions)
13
14
  *
14
15
  * Example: Portal's bbox field cannot be conditionally searched. Any value provided will always be applied as a top-level filter.
15
16
  * - Valid: `?bbox=1,2,3,4&filter=type:CSV`
@@ -22,14 +23,14 @@ exports.getTopLevelPredicate = void 0;
22
23
  function getTopLevelPredicate(field, filters) {
23
24
  let result = null;
24
25
  const matchingFilters = filters.filter((f) => {
25
- return f.predicates.find((p) => !!p[field]);
26
+ return f.predicates.find((p) => !isNilOrEmptyString_1.isNilOrEmptyString(p[field]));
26
27
  });
27
28
  if (matchingFilters.length > 1) {
28
29
  throw new Error(`Only 1 IFilter can have a '${field}' predicate but ${matchingFilters.length} were detected`);
29
30
  }
30
31
  if (matchingFilters.length) {
31
32
  const matchingFilter = matchingFilters[0];
32
- const matchingPredicates = matchingFilter.predicates.filter((p) => !!p[field]);
33
+ const matchingPredicates = matchingFilter.predicates.filter((p) => !isNilOrEmptyString_1.isNilOrEmptyString(p[field]));
33
34
  if (matchingPredicates.length > 1) {
34
35
  throw new Error(`Only 1 '${field}' predicate is allowed but ${matchingPredicates.length} were detected`);
35
36
  }
@@ -38,8 +39,10 @@ function getTopLevelPredicate(field, filters) {
38
39
  throw new Error(`'${field}' predicates cannot be OR'd to other predicates`);
39
40
  }
40
41
  const topLevelPredicate = matchingPredicates[0];
41
- if (typeof topLevelPredicate[field] !== "string") {
42
- throw new Error(`'${field}' predicate must have a string value, string[] and IMatchOptions are not allowed.`);
42
+ const predicateValue = topLevelPredicate[field];
43
+ const isValidPrimitive = typeof predicateValue === "string" || typeof predicateValue === "boolean";
44
+ if (!isValidPrimitive) {
45
+ throw new Error(`'${field}' predicate must be a string or boolean primitive. string[] and IMatchOptions are not allowed.`);
43
46
  }
44
47
  result = topLevelPredicate;
45
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getTopLevelPredicate.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/getTopLevelPredicate.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,oBAAoB,CAClC,KAAa,EACb,OAAkB;IAElB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,MAAM,eAAe,GAAc,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACtD,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,8BAA8B,KAAK,mBAAmB,eAAe,CAAC,MAAM,gBAAgB,CAC7F,CAAC;KACH;IAED,IAAI,eAAe,CAAC,MAAM,EAAE;QAC1B,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,kBAAkB,GAAG,cAAc,CAAC,UAAU,CAAC,MAAM,CACzD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAClB,CAAC;QAEF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,MAAM,IAAI,KAAK,CACb,WAAW,KAAK,8BAA8B,kBAAkB,CAAC,MAAM,gBAAgB,CACxF,CAAC;SACH;QAED,IACE,cAAc,CAAC,SAAS,KAAK,KAAK;YAClC,cAAc,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EACpC;YACA,MAAM,IAAI,KAAK,CACb,IAAI,KAAK,iDAAiD,CAC3D,CAAC;SACH;QAED,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,OAAO,iBAAiB,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE;YAChD,MAAM,IAAI,KAAK,CACb,IAAI,KAAK,mFAAmF,CAC7F,CAAC;SACH;QACD,MAAM,GAAG,iBAAiB,CAAC;KAC5B;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AA/CD,oDA+CC"}
1
+ {"version":3,"file":"getTopLevelPredicate.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/getTopLevelPredicate.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,oBAAoB,CAClC,KAAa,EACb,OAAkB;IAElB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,MAAM,eAAe,GAAc,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACtD,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,uCAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,8BAA8B,KAAK,mBAAmB,eAAe,CAAC,MAAM,gBAAgB,CAC7F,CAAC;KACH;IAED,IAAI,eAAe,CAAC,MAAM,EAAE;QAC1B,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,kBAAkB,GAAG,cAAc,CAAC,UAAU,CAAC,MAAM,CACzD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,uCAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CACrC,CAAC;QAEF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,MAAM,IAAI,KAAK,CACb,WAAW,KAAK,8BAA8B,kBAAkB,CAAC,MAAM,gBAAgB,CACxF,CAAC;SACH;QAED,IACE,cAAc,CAAC,SAAS,KAAK,KAAK;YAClC,cAAc,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EACpC;YACA,MAAM,IAAI,KAAK,CACb,IAAI,KAAK,iDAAiD,CAC3D,CAAC;SACH;QAED,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,gBAAgB,GACpB,OAAO,cAAc,KAAK,QAAQ,IAAI,OAAO,cAAc,KAAK,SAAS,CAAC;QAC5E,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,IAAI,KAAK,gGAAgG,CAC1G,CAAC;SACH;QACD,MAAM,GAAG,iBAAiB,CAAC;KAC5B;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAlDD,oDAkDC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isNilOrEmptyString = void 0;
4
+ /**
5
+ * Determines whether a value is null, undefined, or an empty string.
6
+ * This is particularly useful when 0 and false are considered meaningful values
7
+ * @param value value to check
8
+ * @returns whether the value is null, undefined, or an empty string
9
+ */
10
+ function isNilOrEmptyString(value) {
11
+ return value == null || value === "";
12
+ }
13
+ exports.isNilOrEmptyString = isNilOrEmptyString;
14
+ //# sourceMappingURL=isNilOrEmptyString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isNilOrEmptyString.js","sourceRoot":"","sources":["../../../../../src/search/_internal/commonHelpers/isNilOrEmptyString.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,KAAU;IAC3C,OAAO,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;AACvC,CAAC;AAFD,gDAEC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.formatPredicate = exports.formatFilterBlock = exports.getFilterQueryParam = void 0;
4
+ const isNilOrEmptyString_1 = require("../commonHelpers/isNilOrEmptyString");
4
5
  function getFilterQueryParam(query) {
5
6
  return query.filters
6
7
  .map(formatFilterBlock)
@@ -21,11 +22,11 @@ function formatPredicate(predicate) {
21
22
  const formatted = Object.entries(predicate)
22
23
  // Remove predicates that use `term` (handled in `getQQueryParam`),
23
24
  // `bbox` (handled in `getBboxQueryParam) or have undefined entries
24
- .filter(([field, value]) => field !== "term" && field !== "bbox" && !!value)
25
+ .filter(([field, value]) => field !== "term" && field !== "bbox" && !isNilOrEmptyString_1.isNilOrEmptyString(value))
25
26
  // Create sections for each field
26
27
  .reduce((acc, [field, value]) => {
27
28
  let section;
28
- if (typeof value === "string") {
29
+ if (typeof value === "string" || typeof value === "boolean") {
29
30
  section = formatSimpleComparison(field, value);
30
31
  }
31
32
  else if (Array.isArray(value)) {
@@ -52,7 +53,8 @@ function formatDateRangePredicate(field, value) {
52
53
  return `${field} BETWEEN ${value.from} AND ${value.to}`;
53
54
  }
54
55
  function formatSimpleComparison(field, value) {
55
- return `${field}=${maybeAddSingleQuotes(value)}`;
56
+ const formattedValue = typeof value === "string" ? maybeAddSingleQuotes(value) : value;
57
+ return `${field}=${formattedValue}`;
56
58
  }
57
59
  function formatMultiStringPredicate(field, values) {
58
60
  const wrappedValues = values.map(maybeAddSingleQuotes);
@@ -1 +1 @@
1
- {"version":3,"file":"getFilterQueryParam.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getFilterQueryParam.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getFilterQueryParam.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getFilterQueryParam.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getOgcAggregationQueryParams = void 0;
4
4
  const get_prop_1 = require("../../../objects/get-prop");
5
- function getOgcAggregationQueryParams(_query, options) {
5
+ const getOpenDataQueryParam_1 = require("./getOpenDataQueryParam");
6
+ function getOgcAggregationQueryParams(query, options) {
6
7
  // TODO: use options.aggLimit once the OGC API supports it
7
8
  const aggregations = `terms(fields=(${options.aggFields.join()}))`;
8
- // TODO: Use `query` to filter aggregations once the OGC API supports it
9
+ // TODO: Use the rest of `query` to filter aggregations once the OGC API supports it
10
+ const openData = getOpenDataQueryParam_1.getOpenDataQueryParam(query);
9
11
  const token = get_prop_1.getProp(options, "requestOptions.authentication.token");
10
- return { aggregations, token };
12
+ return {
13
+ aggregations,
14
+ openData,
15
+ token,
16
+ };
11
17
  }
12
18
  exports.getOgcAggregationQueryParams = getOgcAggregationQueryParams;
13
19
  //# sourceMappingURL=getOgcAggregationQueryParams.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOgcAggregationQueryParams.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.ts"],"names":[],"mappings":";;;AAAA,wDAAoD;AAIpD,SAAgB,4BAA4B,CAC1C,MAAc,EACd,OAA0B;IAE1B,0DAA0D;IAC1D,MAAM,YAAY,GAAG,iBAAiB,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;IACnE,wEAAwE;IACxE,MAAM,KAAK,GAAG,kBAAO,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAC;IAEtE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AACjC,CAAC;AAVD,oEAUC"}
1
+ {"version":3,"file":"getOgcAggregationQueryParams.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getOgcAggregationQueryParams.ts"],"names":[],"mappings":";;;AAAA,wDAAoD;AAGpD,mEAAgE;AAEhE,SAAgB,4BAA4B,CAC1C,KAAa,EACb,OAA0B;IAE1B,0DAA0D;IAC1D,MAAM,YAAY,GAAG,iBAAiB,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;IACnE,oFAAoF;IACpF,MAAM,QAAQ,GAAG,6CAAqB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,kBAAO,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAC;IAEtE,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,KAAK;KACN,CAAC;AACJ,CAAC;AAfD,oEAeC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOpenDataQueryParam = void 0;
4
+ const getTopLevelPredicate_1 = require("../commonHelpers/getTopLevelPredicate");
5
+ /**
6
+ * @private
7
+ * Extracts the openData flag that the search should be filtered by.
8
+ * Also validates that the openData predicate is not combined in some
9
+ * invalid way with other predicates.
10
+ *
11
+ * @param query query to extract the opendata predicate from
12
+ * @returns the openData value to filter by
13
+ */
14
+ function getOpenDataQueryParam(query) {
15
+ const openDataPredicate = getTopLevelPredicate_1.getTopLevelPredicate("openData", query.filters);
16
+ return openDataPredicate === null || openDataPredicate === void 0 ? void 0 : openDataPredicate.openData;
17
+ }
18
+ exports.getOpenDataQueryParam = getOpenDataQueryParam;
19
+ //# sourceMappingURL=getOpenDataQueryParam.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOpenDataQueryParam.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getOpenDataQueryParam.ts"],"names":[],"mappings":";;;AACA,gFAA6E;AAE7E;;;;;;;;GAQG;AACH,SAAgB,qBAAqB,CAAC,KAAa;IACjD,MAAM,iBAAiB,GAAG,2CAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1E,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,QAAQ,CAAC;AACrC,CAAC;AAHD,sDAGC"}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getQueryString = void 0;
4
+ const isNilOrEmptyString_1 = require("../commonHelpers/isNilOrEmptyString");
4
5
  function getQueryString(queryParams) {
5
6
  const result = Object.entries(queryParams)
6
- .filter(([_key, value]) => !!value)
7
+ .filter(([_key, value]) => !isNilOrEmptyString_1.isNilOrEmptyString(value))
7
8
  .map(([key, value]) => `${key}=${encodeURIComponent(value)}`)
8
9
  .join("&");
9
10
  return result && `?${result}`;
@@ -1 +1 @@
1
- {"version":3,"file":"getQueryString.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getQueryString.ts"],"names":[],"mappings":";;;AAAA,SAAgB,cAAc,CAAC,WAAgC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;SACvC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SAClC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;SAC5D,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,OAAO,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;AAChC,CAAC;AAPD,wCAOC"}
1
+ {"version":3,"file":"getQueryString.js","sourceRoot":"","sources":["../../../../../src/search/_internal/hubSearchItemsHelpers/getQueryString.ts"],"names":[],"mappings":";;;AAAA,4EAAyE;AAEzE,SAAgB,cAAc,CAAC,WAAgC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;SACvC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,uCAAkB,CAAC,KAAK,CAAC,CAAC;SACrD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;SAC5D,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,OAAO,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;AAChC,CAAC;AAPD,wCAOC"}
@@ -27,6 +27,7 @@ exports.SitePermissions = [
27
27
  "hub:site:discussions",
28
28
  "hub:site:feature:follow",
29
29
  "hub:site:feature:discussions",
30
+ "hub:site:workspace",
30
31
  "hub:site:workspace:overview",
31
32
  "hub:site:workspace:dashboard",
32
33
  "hub:site:workspace:details",
@@ -95,39 +96,44 @@ exports.SitesPermissionPolicies = [
95
96
  dependencies: ["hub:site:view"],
96
97
  entityConfigurable: true,
97
98
  },
99
+ {
100
+ permission: "hub:site:workspace",
101
+ dependencies: ["hub:feature:workspace"],
102
+ environments: ["devext", "qaext"],
103
+ },
98
104
  {
99
105
  permission: "hub:site:workspace:overview",
100
- dependencies: ["hub:site:view"],
106
+ dependencies: ["hub:site:workspace", "hub:site:view"],
101
107
  },
102
108
  {
103
109
  permission: "hub:site:workspace:dashboard",
104
- dependencies: ["hub:site:view"],
110
+ dependencies: ["hub:site:workspace", "hub:site:view"],
105
111
  },
106
112
  {
107
113
  permission: "hub:site:workspace:details",
108
- dependencies: ["hub:site:edit"],
114
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
109
115
  },
110
116
  {
111
117
  permission: "hub:site:workspace:settings",
112
- dependencies: ["hub:site:edit"],
118
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
113
119
  entityOwner: true,
114
120
  },
115
121
  {
116
122
  permission: "hub:site:workspace:collaborators",
117
- dependencies: ["hub:site:edit"],
123
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
118
124
  },
119
125
  {
120
126
  permission: "hub:site:workspace:content",
121
- dependencies: ["hub:site:edit"],
127
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
122
128
  },
123
129
  {
124
130
  permission: "hub:site:workspace:metrics",
125
- dependencies: ["hub:site:edit"],
131
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
126
132
  environments: ["devext", "qaext"],
127
133
  },
128
134
  {
129
135
  permission: "hub:site:workspace:followers",
130
- dependencies: ["hub:site:edit"],
136
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
131
137
  },
132
138
  {
133
139
  permission: "hub:site:workspace:followers:member",
@@ -153,7 +159,7 @@ exports.SitesPermissionPolicies = [
153
159
  },
154
160
  {
155
161
  permission: "hub:site:workspace:discussion",
156
- dependencies: ["hub:site:edit"],
162
+ dependencies: ["hub:site:workspace", "hub:site:edit"],
157
163
  },
158
164
  {
159
165
  permission: "hub:site:manage",
@@ -1 +1 @@
1
- {"version":3,"file":"SiteBusinessRules.js","sourceRoot":"","sources":["../../../../src/sites/_internal/SiteBusinessRules.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACU,QAAA,mBAAmB,GAAkB;IAChD,iBAAiB,EAAE,KAAK;IACxB,kBAAkB,EAAE,IAAI;IACxB,sBAAsB,EAAE,KAAK;IAC7B,yBAAyB,EAAE,IAAI;IAC/B,8BAA8B,EAAE,IAAI;CACrC,CAAC;AAEF;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC7B,UAAU;IACV,iBAAiB;IACjB,iBAAiB;IACjB,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,sBAAsB;IACtB,yBAAyB;IACzB,8BAA8B;IAC9B,6BAA6B;IAC7B,8BAA8B;IAC9B,4BAA4B;IAC5B,6BAA6B;IAC7B,kCAAkC;IAClC,4BAA4B;IAC5B,4BAA4B;IAC5B,8BAA8B;IAC9B,qCAAqC;IACrC,sCAAsC;IACtC,+BAA+B;IAC/B,iBAAiB;CACT,CAAC;AAEX;;;GAGG;AACU,QAAA,uBAAuB,GAAwB;IAC1D;QACE,UAAU,EAAE,UAAU;QACtB,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC3D;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,KAAK;KACrB;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,aAAa,EAAE,IAAI;KACpB;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,kBAAkB;QAC9B,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,sBAAsB;QAClC,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,eAAe,CAAC;QAC/B,kBAAkB,EAAE,IAAI;KACzB;IACD;QACE,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,eAAe,CAAC;QAC/B,kBAAkB,EAAE,IAAI;KACzB;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,4BAA4B;QACxC,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,6BAA6B;QACzC,YAAY,EAAE,CAAC,eAAe,CAAC;QAC/B,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,4BAA4B;QACxC,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,4BAA4B;QACxC,YAAY,EAAE,CAAC,eAAe,CAAC;QAC/B,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;IACD;QACE,UAAU,EAAE,8BAA8B;QAC1C,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,qCAAqC;QACjD,YAAY,EAAE,CAAC,8BAA8B,CAAC;QAC9C,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,qBAAqB;gBAC/B,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,yBAAyB;aACjC;SACF;KACF;IACD;QACE,UAAU,EAAE,sCAAsC;QAClD,YAAY,EAAE,CAAC,8BAA8B,CAAC;QAC9C,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,qBAAqB;gBAC/B,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,yBAAyB;aACjC;SACF;KACF;IACD;QACE,UAAU,EAAE,+BAA+B;QAC3C,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,eAAe,CAAC;KAChC;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,sBAAsB,GAAG;IACpC,oBAAoB;IACpB,mBAAmB;IACnB,yBAAyB;CAC1B,CAAC"}
1
+ {"version":3,"file":"SiteBusinessRules.js","sourceRoot":"","sources":["../../../../src/sites/_internal/SiteBusinessRules.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ exports.TemplatePermissions = [
18
18
  "hub:template:edit",
19
19
  "hub:template:manage",
20
20
  "hub:template:view",
21
+ "hub:template:workspace",
21
22
  "hub:template:workspace:overview",
22
23
  "hub:template:workspace:details",
23
24
  "hub:template:workspace:dashboard",
@@ -60,25 +61,29 @@ exports.TemplatePermissionPolicies = [
60
61
  permission: "hub:template:manage",
61
62
  dependencies: ["hub:template:edit"],
62
63
  },
64
+ {
65
+ permission: "hub:template:workspace",
66
+ dependencies: ["hub:feature:workspace"],
67
+ },
63
68
  {
64
69
  permission: "hub:template:workspace:overview",
65
- dependencies: ["hub:template:view"],
70
+ dependencies: ["hub:template:workspace", "hub:template:view"],
66
71
  },
67
72
  {
68
73
  permission: "hub:template:workspace:details",
69
- dependencies: ["hub:template:manage"],
74
+ dependencies: ["hub:template:workspace", "hub:template:manage"],
70
75
  },
71
76
  {
72
77
  permission: "hub:template:workspace:dashboard",
73
- dependencies: ["hub:template:manage"],
78
+ dependencies: ["hub:template:workspace", "hub:template:manage"],
74
79
  },
75
80
  {
76
81
  permission: "hub:template:workspace:collaborators",
77
- dependencies: ["hub:template:manage"],
82
+ dependencies: ["hub:template:workspace", "hub:template:manage"],
78
83
  },
79
84
  {
80
85
  permission: "hub:template:workspace:settings",
81
- dependencies: ["hub:template:manage"],
86
+ dependencies: ["hub:template:workspace", "hub:template:manage"],
82
87
  entityOwner: true,
83
88
  },
84
89
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateBusinessRules.js","sourceRoot":"","sources":["../../../../src/templates/_internal/TemplateBusinessRules.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACU,QAAA,uBAAuB,GAAkB,EAAE,CAAC;AAEzD;;;;GAIG;AACU,QAAA,mBAAmB,GAAG;IACjC,cAAc;IACd,qBAAqB;IACrB,qBAAqB;IACrB,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,iCAAiC;IACjC,gCAAgC;IAChC,kCAAkC;IAClC,sCAAsC;IACtC,iCAAiC;CACzB,CAAC;AAEX;;;GAGG;AACU,QAAA,0BAA0B,GAAwB;IAC7D;QACE,UAAU,EAAE,cAAc;QAC1B,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;KAC/B;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,mBAAmB,CAAC;KACpC;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,YAAY,EAAE,CAAC,mBAAmB,CAAC;KACpC;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,YAAY,EAAE,CAAC,qBAAqB,CAAC;KACtC;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,qBAAqB,CAAC;KACtC;IACD;QACE,UAAU,EAAE,sCAAsC;QAClD,YAAY,EAAE,CAAC,qBAAqB,CAAC;KACtC;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,YAAY,EAAE,CAAC,qBAAqB,CAAC;QACrC,WAAW,EAAE,IAAI;KAClB;CACF,CAAC"}
1
+ {"version":3,"file":"TemplateBusinessRules.js","sourceRoot":"","sources":["../../../../src/templates/_internal/TemplateBusinessRules.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACU,QAAA,uBAAuB,GAAkB,EAAE,CAAC;AAEzD;;;;GAIG;AACU,QAAA,mBAAmB,GAAG;IACjC,cAAc;IACd,qBAAqB;IACrB,qBAAqB;IACrB,mBAAmB;IACnB,qBAAqB;IACrB,mBAAmB;IACnB,wBAAwB;IACxB,iCAAiC;IACjC,gCAAgC;IAChC,kCAAkC;IAClC,sCAAsC;IACtC,iCAAiC;CACzB,CAAC;AAEX;;;GAGG;AACU,QAAA,0BAA0B,GAAwB;IAC7D;QACE,UAAU,EAAE,cAAc;QAC1B,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACvC;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;KAC/B;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB;IACD;QACE,UAAU,EAAE,qBAAqB;QACjC,YAAY,EAAE,CAAC,mBAAmB,CAAC;KACpC;IACD;QACE,UAAU,EAAE,wBAAwB;QACpC,YAAY,EAAE,CAAC,uBAAuB,CAAC;KACxC;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,YAAY,EAAE,CAAC,wBAAwB,EAAE,mBAAmB,CAAC;KAC9D;IACD;QACE,UAAU,EAAE,gCAAgC;QAC5C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,kCAAkC;QAC9C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,sCAAsC;QAClD,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KAChE;IACD;QACE,UAAU,EAAE,iCAAiC;QAC7C,YAAY,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;QAC/D,WAAW,EAAE,IAAI;KAClB;CACF,CAAC"}
@@ -8,7 +8,7 @@ export declare const ContentDefaultFeatures: IFeatureFlags;
8
8
  * These define the requirements any user must meet to perform related actions
9
9
  * @private
10
10
  */
11
- export declare const ContentPermissions: readonly ["hub:content:create", "hub:content:edit", "hub:content:view", "hub:content:workspace:overview", "hub:content:workspace:dashboard", "hub:content:workspace:details", "hub:content:workspace:discussion", "hub:content:workspace:settings", "hub:content:workspace:collaborators", "hub:content:manage"];
11
+ export declare const ContentPermissions: readonly ["hub:content:create", "hub:content:edit", "hub:content:view", "hub:content:workspace", "hub:content:workspace:overview", "hub:content:workspace:dashboard", "hub:content:workspace:details", "hub:content:workspace:discussion", "hub:content:workspace:settings", "hub:content:workspace:collaborators", "hub:content:manage"];
12
12
  /**
13
13
  * Content permission policies
14
14
  * No need to specify license for permissions that are available to all licenses
@@ -4,7 +4,7 @@ import { IPermissionPolicy } from "../../permissions";
4
4
  * These define the requirements any user must meet to perform related actions
5
5
  * @private
6
6
  */
7
- export declare const GroupPermissions: readonly ["hub:group", "hub:group:create", "hub:group:delete", "hub:group:edit", "hub:group:view", "hub:group:owner", "hub:group:workspace:overview", "hub:group:workspace:dashboard", "hub:group:workspace:details", "hub:group:workspace:discussion", "hub:group:workspace:settings", "hub:group:workspace:collaborators", "hub:group:workspace:content", "hub:group:workspace:members", "hub:group:shareContent", "hub:group:manage"];
7
+ export declare const GroupPermissions: readonly ["hub:group", "hub:group:create", "hub:group:delete", "hub:group:edit", "hub:group:view", "hub:group:owner", "hub:group:workspace", "hub:group:workspace:overview", "hub:group:workspace:dashboard", "hub:group:workspace:details", "hub:group:workspace:discussion", "hub:group:workspace:settings", "hub:group:workspace:collaborators", "hub:group:workspace:content", "hub:group:workspace:members", "hub:group:shareContent", "hub:group:manage"];
8
8
  /**
9
9
  * Group permission policies
10
10
  * @private
@@ -8,7 +8,7 @@ export declare const InitiativeTemplateDefaultFeatures: IFeatureFlags;
8
8
  * These define the requirements any user must meet to perform related actions
9
9
  * @private
10
10
  */
11
- export declare const InitiativeTemplatePermissions: readonly ["hub:initiativeTemplate", "hub:initiativeTemplate:create", "hub:initiativeTemplate:delete", "hub:initiativeTemplate:edit", "hub:initiativeTemplate:view", "hub:initiativeTemplate:workspace:overview", "hub:initiativeTemplate:workspace:dashboard", "hub:initiativeTemplate:workspace:details", "hub:initiativeTemplate:workspace:collaborators", "hub:initiativeTemplate:workspace:settings", "hub:initiativeTemplate:manage"];
11
+ export declare const InitiativeTemplatePermissions: readonly ["hub:initiativeTemplate", "hub:initiativeTemplate:create", "hub:initiativeTemplate:delete", "hub:initiativeTemplate:edit", "hub:initiativeTemplate:view", "hub:initiativeTemplate:workspace", "hub:initiativeTemplate:workspace:overview", "hub:initiativeTemplate:workspace:dashboard", "hub:initiativeTemplate:workspace:details", "hub:initiativeTemplate:workspace:collaborators", "hub:initiativeTemplate:workspace:settings", "hub:initiativeTemplate:manage"];
12
12
  /**
13
13
  * Initiative Template policies
14
14
  * @private
@@ -8,7 +8,7 @@ export declare const InitiativeDefaultFeatures: IFeatureFlags;
8
8
  * These define the requirements any user must meet to perform related actions
9
9
  * @private
10
10
  */
11
- export declare const InitiativePermissions: readonly ["hub:initiative", "hub:initiative:create", "hub:initiative:delete", "hub:initiative:edit", "hub:initiative:view", "hub:initiative:events", "hub:initiative:content", "hub:initiative:discussions", "hub:initiative:workspace:overview", "hub:initiative:workspace:dashboard", "hub:initiative:workspace:details", "hub:initiative:workspace:settings", "hub:initiative:workspace:collaborators", "hub:initiative:workspace:content", "hub:initiative:workspace:metrics", "hub:initiative:manage"];
11
+ export declare const InitiativePermissions: readonly ["hub:initiative", "hub:initiative:create", "hub:initiative:delete", "hub:initiative:edit", "hub:initiative:view", "hub:initiative:events", "hub:initiative:content", "hub:initiative:discussions", "hub:initiative:workspace", "hub:initiative:workspace:overview", "hub:initiative:workspace:dashboard", "hub:initiative:workspace:details", "hub:initiative:workspace:settings", "hub:initiative:workspace:collaborators", "hub:initiative:workspace:content", "hub:initiative:workspace:metrics", "hub:initiative:manage"];
12
12
  /**
13
13
  * Initiative permission policies
14
14
  * @private
@@ -8,7 +8,7 @@ export declare const PageDefaultFeatures: IFeatureFlags;
8
8
  * These define the requirements any user must meet to perform related actions
9
9
  * @private
10
10
  */
11
- export declare const PagePermissions: readonly ["hub:page", "hub:page:create", "hub:page:delete", "hub:page:edit", "hub:page:view", "hub:page:workspace:overview", "hub:page:workspace:dashboard", "hub:page:workspace:details", "hub:page:workspace:settings", "hub:page:workspace:collaborators", "hub:page:manage"];
11
+ export declare const PagePermissions: readonly ["hub:page", "hub:page:create", "hub:page:delete", "hub:page:edit", "hub:page:view", "hub:page:workspace", "hub:page:workspace:overview", "hub:page:workspace:dashboard", "hub:page:workspace:details", "hub:page:workspace:settings", "hub:page:workspace:collaborators", "hub:page:manage"];
12
12
  /**
13
13
  * Page permission policies
14
14
  * @private
@@ -14,10 +14,11 @@ import { TemplatePermissions } from "../../templates/_internal/TemplateBusinessR
14
14
  * otherwise Permission devolves into just a string type
15
15
  */
16
16
  declare const TempPermissions: string[];
17
+ declare const SystemPermissions: string[];
17
18
  /**
18
19
  * Defines the possible values for Permissions
19
20
  */
20
- export declare type Permission = (typeof SitePermissions)[number] | (typeof ProjectPermissions)[number] | (typeof InitiativePermissions)[number] | (typeof ContentPermissions)[number] | (typeof GroupPermissions)[number] | (typeof PagePermissions)[number] | (typeof PlatformPermissions)[number] | (typeof TempPermissions)[number] | (typeof DiscussionPermissions)[number] | (typeof InitiativeTemplatePermissions)[number] | (typeof TemplatePermissions)[number];
21
+ export declare type Permission = (typeof SitePermissions)[number] | (typeof ProjectPermissions)[number] | (typeof InitiativePermissions)[number] | (typeof ContentPermissions)[number] | (typeof GroupPermissions)[number] | (typeof PagePermissions)[number] | (typeof PlatformPermissions)[number] | (typeof TempPermissions)[number] | (typeof DiscussionPermissions)[number] | (typeof InitiativeTemplatePermissions)[number] | (typeof TemplatePermissions)[number] | (typeof SystemPermissions)[number];
21
22
  /**
22
23
  * Validate a Permission
23
24
  * @param permission
@@ -8,7 +8,7 @@ export declare const ProjectDefaultFeatures: IFeatureFlags;
8
8
  * These define the requirements any user must meet to perform related actions
9
9
  * @private
10
10
  */
11
- export declare const ProjectPermissions: readonly ["hub:project", "hub:project:create", "hub:project:delete", "hub:project:edit", "hub:project:view", "hub:project:owner", "hub:project:events", "hub:project:content", "hub:project:discussions", "hub:project:workspace:overview", "hub:project:workspace:dashboard", "hub:project:workspace:details", "hub:project:workspace:settings", "hub:project:workspace:collaborators", "hub:project:workspace:content", "hub:project:workspace:metrics", "hub:project:manage"];
11
+ export declare const ProjectPermissions: readonly ["hub:project", "hub:project:create", "hub:project:delete", "hub:project:edit", "hub:project:view", "hub:project:owner", "hub:project:events", "hub:project:content", "hub:project:discussions", "hub:project:workspace", "hub:project:workspace:overview", "hub:project:workspace:dashboard", "hub:project:workspace:details", "hub:project:workspace:settings", "hub:project:workspace:collaborators", "hub:project:workspace:content", "hub:project:workspace:metrics", "hub:project:manage"];
12
12
  /**
13
13
  * Project permission policies
14
14
  * @private
@@ -7,7 +7,7 @@ import { IFilter, IPredicate } from "../../types/IHubCatalog";
7
7
  * - Only ONE filter can have a predicate with the target field
8
8
  * - Only ONE predicate with the target field can exist
9
9
  * - The predicate can only be ANDed to other predicates
10
- * - The predicate's field value MUST be a string (not string[] or IMatchOptions)
10
+ * - The predicate's field value MUST be a string or boolean (not string[] or IMatchOptions)
11
11
  *
12
12
  * Example: Portal's bbox field cannot be conditionally searched. Any value provided will always be applied as a top-level filter.
13
13
  * - Valid: `?bbox=1,2,3,4&filter=type:CSV`
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Determines whether a value is null, undefined, or an empty string.
3
+ * This is particularly useful when 0 and false are considered meaningful values
4
+ * @param value value to check
5
+ * @returns whether the value is null, undefined, or an empty string
6
+ */
7
+ export declare function isNilOrEmptyString(value: any): boolean;
@@ -1,6 +1,7 @@
1
1
  import { IQuery } from "../../types/IHubCatalog";
2
2
  import { IHubSearchOptions } from "../../types/IHubSearchOptions";
3
- export declare function getOgcAggregationQueryParams(_query: IQuery, options: IHubSearchOptions): {
3
+ export declare function getOgcAggregationQueryParams(query: IQuery, options: IHubSearchOptions): {
4
4
  aggregations: string;
5
+ openData: string;
5
6
  token: any;
6
7
  };
@@ -0,0 +1,11 @@
1
+ import { IQuery } from "../../types/IHubCatalog";
2
+ /**
3
+ * @private
4
+ * Extracts the openData flag that the search should be filtered by.
5
+ * Also validates that the openData predicate is not combined in some
6
+ * invalid way with other predicates.
7
+ *
8
+ * @param query query to extract the opendata predicate from
9
+ * @returns the openData value to filter by
10
+ */
11
+ export declare function getOpenDataQueryParam(query: IQuery): string;
@@ -7,7 +7,7 @@ export declare const SiteDefaultFeatures: IFeatureFlags;
7
7
  * Site Permissions
8
8
  * This feeds into the Permissions type
9
9
  */
10
- export declare const SitePermissions: readonly ["hub:site", "hub:site:create", "hub:site:delete", "hub:site:edit", "hub:site:view", "hub:site:owner", "hub:site:events", "hub:site:content", "hub:site:discussions", "hub:site:feature:follow", "hub:site:feature:discussions", "hub:site:workspace:overview", "hub:site:workspace:dashboard", "hub:site:workspace:details", "hub:site:workspace:settings", "hub:site:workspace:collaborators", "hub:site:workspace:content", "hub:site:workspace:metrics", "hub:site:workspace:followers", "hub:site:workspace:followers:member", "hub:site:workspace:followers:manager", "hub:site:workspace:discussion", "hub:site:manage"];
10
+ export declare const SitePermissions: readonly ["hub:site", "hub:site:create", "hub:site:delete", "hub:site:edit", "hub:site:view", "hub:site:owner", "hub:site:events", "hub:site:content", "hub:site:discussions", "hub:site:feature:follow", "hub:site:feature:discussions", "hub:site:workspace", "hub:site:workspace:overview", "hub:site:workspace:dashboard", "hub:site:workspace:details", "hub:site:workspace:settings", "hub:site:workspace:collaborators", "hub:site:workspace:content", "hub:site:workspace:metrics", "hub:site:workspace:followers", "hub:site:workspace:followers:member", "hub:site:workspace:followers:manager", "hub:site:workspace:discussion", "hub:site:manage"];
11
11
  /**
12
12
  * Site permission policies
13
13
  * @private
@@ -9,7 +9,7 @@ export declare const TemplateDefaultFeatures: IFeatureFlags;
9
9
  * Template permissions: these define the requirements
10
10
  * any user must meet to perform related actions
11
11
  */
12
- export declare const TemplatePermissions: readonly ["hub:template", "hub:template:create", "hub:template:delete", "hub:template:edit", "hub:template:manage", "hub:template:view", "hub:template:workspace:overview", "hub:template:workspace:details", "hub:template:workspace:dashboard", "hub:template:workspace:collaborators", "hub:template:workspace:settings"];
12
+ export declare const TemplatePermissions: readonly ["hub:template", "hub:template:create", "hub:template:delete", "hub:template:edit", "hub:template:manage", "hub:template:view", "hub:template:workspace", "hub:template:workspace:overview", "hub:template:workspace:details", "hub:template:workspace:dashboard", "hub:template:workspace:collaborators", "hub:template:workspace:settings"];
13
13
  /**
14
14
  * @private
15
15
  * Template permission policies
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/hub-common",
3
- "version": "14.40.0",
3
+ "version": "14.42.0",
4
4
  "description": "Common TypeScript types and utility functions for @esri/hub.js.",
5
5
  "main": "dist/node/index.js",
6
6
  "module": "dist/esm/index.js",