@esri/hub-common 14.92.2 → 14.92.3
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/dist/esm/permissions/HubPermissionPolicies.js +5 -1
- package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -1
- package/dist/esm/permissions/_internal/checkAvailability.js +13 -2
- package/dist/esm/permissions/_internal/checkAvailability.js.map +1 -1
- package/dist/node/permissions/HubPermissionPolicies.js +5 -1
- package/dist/node/permissions/HubPermissionPolicies.js.map +1 -1
- package/dist/node/permissions/_internal/checkAvailability.js +13 -2
- package/dist/node/permissions/_internal/checkAvailability.js.map +1 -1
- package/dist/types/permissions/types/IPermissionPolicy.d.ts +1 -1
- package/dist/types/permissions/types/PolicyResponse.d.ts +1 -1
- package/package.json +1 -1
|
@@ -108,9 +108,13 @@ const SystemPermissionPolicies = [
|
|
|
108
108
|
environments: ["devext", "qaext"],
|
|
109
109
|
},
|
|
110
110
|
{
|
|
111
|
+
// When enabled, the new follow card will be loaded
|
|
112
|
+
// instead of the old follow initiative card.
|
|
113
|
+
// To enable it, we need to pass the feature flag
|
|
114
|
+
// (?pe=hub:card:follow) into the URL
|
|
111
115
|
permission: "hub:card:follow",
|
|
112
116
|
environments: ["qaext"],
|
|
113
|
-
availability: ["
|
|
117
|
+
availability: ["flag"],
|
|
114
118
|
licenses: ["hub-premium"],
|
|
115
119
|
},
|
|
116
120
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAGtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,oCAAoC,EAAE,MAAM,mEAAmE,CAAC;AACzH,OAAO,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAE1F,2CAA2C;AAC3C,8DAA8D;AAC9D,MAAM;AACN,gDAAgD;AAChD,2BAA2B;AAC3B,iCAAiC;AACjC,8CAA8C;AAC9C,OAAO;AACP,MAAM;AACN,uDAAuD;AACvD,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,iDAAiD;AACjD,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,UAAU;AACV,2CAA2C;AAC3C,uCAAuC;AACvC,oCAAoC;AACpC,WAAW;AACX,SAAS;AACT,OAAO;AACP,MAAM;AACN,gDAAgD;AAChD,iCAAiC;AACjC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,2CAA2C;AAC3C,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,SAAS;AACT,OAAO;AACP,MAAM;AACN,6CAA6C;AAC7C,iCAAiC;AACjC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,2CAA2C;AAC3C,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,SAAS;AACT,OAAO;AACP,KAAK;AAEL,cAAc;AACd,6DAA6D;AAC7D,MAAM,sBAAsB,GAAwB;IAClD;QACE,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAwB;IACpD;QACE,UAAU,EAAE,qBAAqB;QACjC,kGAAkG;QAClG,gGAAgG;QAChG,2BAA2B;QAC3B,2HAA2H;QAC3H,8BAA8B;QAC9B,uEAAuE;QACvE,YAAY,EAAE,CAAC,QAAQ,CAAC;KACzB;IACD;QACE,UAAU,EAAE,uBAAuB;QACnC,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;IACD;QACE,2EAA2E;QAC3E,2HAA2H;QAC3H,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,QAAQ,CAAC;KACzB;IACD;QACE,qEAAqE;QACrE,6EAA6E;QAC7E,UAAU,EAAE,8BAA8B;QAC1C,yEAAyE;QACzE,wDAAwD;QACxD,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,13 +26,24 @@ export function checkAvailability(policy, context, _entity) {
|
|
|
26
26
|
}
|
|
27
27
|
// reduce over the policy.availability array, adding a check for each
|
|
28
28
|
// value that is not included in the contextAvailability array
|
|
29
|
+
// the 'flag' is only used when we want to gate the feature behind
|
|
30
|
+
// a feature flag, e.g. ?pe=hub:card:follow
|
|
29
31
|
checks = policy.availability.reduce((acc, value) => {
|
|
30
32
|
let result = "granted";
|
|
31
33
|
if (!contextAvailability.includes(value)) {
|
|
32
|
-
|
|
34
|
+
if (value === "flag") {
|
|
35
|
+
result = `feature-flag-required`;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
result = `not-${value}-org`;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
let name = `user in ${value} org`;
|
|
42
|
+
if (value === "flag") {
|
|
43
|
+
name = `with feature flag`;
|
|
33
44
|
}
|
|
34
45
|
const check = {
|
|
35
|
-
name
|
|
46
|
+
name,
|
|
36
47
|
value: contextAvailability.join(", "),
|
|
37
48
|
code: getPolicyResponseCode(result),
|
|
38
49
|
response: result,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkAvailability.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/checkAvailability.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAyB,EACzB,OAAuB,EACvB,OAA6B;IAE7B,IAAI,MAAM,GAAG,EAAoB,CAAC;IAClC,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QACrD,mDAAmD;QACnD,mDAAmD;QACnD,MAAM,mBAAmB,GAAsB,EAAE,CAAC;QAClD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACnC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;QACD,0DAA0D;QAC1D,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YAC/B,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,KAAK,EAAE,EAAE;YACjE,IAAI,MAAM,GAAmB,SAAS,CAAC;YACvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,GAAG,OAAO,KAAK,MAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"checkAvailability.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/checkAvailability.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAyB,EACzB,OAAuB,EACvB,OAA6B;IAE7B,IAAI,MAAM,GAAG,EAAoB,CAAC;IAClC,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QACrD,mDAAmD;QACnD,mDAAmD;QACnD,MAAM,mBAAmB,GAAsB,EAAE,CAAC;QAClD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACnC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;QACD,0DAA0D;QAC1D,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YAC/B,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,kEAAkE;QAClE,2CAA2C;QAC3C,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,KAAK,EAAE,EAAE;YACjE,IAAI,MAAM,GAAmB,SAAS,CAAC;YACvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACxC,IAAI,KAAK,KAAK,MAAM,EAAE;oBACpB,MAAM,GAAG,uBAAuB,CAAC;iBAClC;qBAAM;oBACL,MAAM,GAAG,OAAO,KAAK,MAAwB,CAAC;iBAC/C;aACF;YACD,IAAI,IAAI,GAAG,WAAW,KAAK,MAAM,CAAC;YAClC,IAAI,KAAK,KAAK,MAAM,EAAE;gBACpB,IAAI,GAAG,mBAAmB,CAAC;aAC5B;YACD,MAAM,KAAK,GAAiB;gBAC1B,IAAI;gBACJ,KAAK,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrC,IAAI,EAAE,qBAAqB,CAAC,MAAM,CAAC;gBACnC,QAAQ,EAAE,MAAM;aACjB,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEhB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -111,9 +111,13 @@ const SystemPermissionPolicies = [
|
|
|
111
111
|
environments: ["devext", "qaext"],
|
|
112
112
|
},
|
|
113
113
|
{
|
|
114
|
+
// When enabled, the new follow card will be loaded
|
|
115
|
+
// instead of the old follow initiative card.
|
|
116
|
+
// To enable it, we need to pass the feature flag
|
|
117
|
+
// (?pe=hub:card:follow) into the URL
|
|
114
118
|
permission: "hub:card:follow",
|
|
115
119
|
environments: ["qaext"],
|
|
116
|
-
availability: ["
|
|
120
|
+
availability: ["flag"],
|
|
117
121
|
licenses: ["hub-premium"],
|
|
118
122
|
},
|
|
119
123
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":";;;AAAA,8FAAgG;AAChG,qFAAuF;AACvF,4EAA+E;AAC/E,8FAAgG;AAChG,oFAAsF;AAGtF,+EAAiF;AACjF,4EAA8E;AAC9E,6EAA0E;AAC1E,uHAAyH;AACzH,wFAA0F;AAE1F,2CAA2C;AAC3C,8DAA8D;AAC9D,MAAM;AACN,gDAAgD;AAChD,2BAA2B;AAC3B,iCAAiC;AACjC,8CAA8C;AAC9C,OAAO;AACP,MAAM;AACN,uDAAuD;AACvD,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,iDAAiD;AACjD,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,UAAU;AACV,2CAA2C;AAC3C,uCAAuC;AACvC,oCAAoC;AACpC,WAAW;AACX,SAAS;AACT,OAAO;AACP,MAAM;AACN,gDAAgD;AAChD,iCAAiC;AACjC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,2CAA2C;AAC3C,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,SAAS;AACT,OAAO;AACP,MAAM;AACN,6CAA6C;AAC7C,iCAAiC;AACjC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,2CAA2C;AAC3C,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,SAAS;AACT,OAAO;AACP,KAAK;AAEL,cAAc;AACd,6DAA6D;AAC7D,MAAM,sBAAsB,GAAwB;IAClD;QACE,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAwB;IACpD;QACE,UAAU,EAAE,qBAAqB;QACjC,kGAAkG;QAClG,gGAAgG;QAChG,2BAA2B;QAC3B,2HAA2H;QAC3H,8BAA8B;QAC9B,uEAAuE;QACvE,YAAY,EAAE,CAAC,QAAQ,CAAC;KACzB;IACD;QACE,UAAU,EAAE,uBAAuB;QACnC,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;IACD;QACE,2EAA2E;QAC3E,2HAA2H;QAC3H,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,CAAC,QAAQ,CAAC;KACzB;IACD;QACE,qEAAqE;QACrE,6EAA6E;QAC7E,UAAU,EAAE,8BAA8B;QAC1C,yEAAyE;QACzE,wDAAwD;QACxD,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClC;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,13 +29,24 @@ function checkAvailability(policy, context, _entity) {
|
|
|
29
29
|
}
|
|
30
30
|
// reduce over the policy.availability array, adding a check for each
|
|
31
31
|
// value that is not included in the contextAvailability array
|
|
32
|
+
// the 'flag' is only used when we want to gate the feature behind
|
|
33
|
+
// a feature flag, e.g. ?pe=hub:card:follow
|
|
32
34
|
checks = policy.availability.reduce((acc, value) => {
|
|
33
35
|
let result = "granted";
|
|
34
36
|
if (!contextAvailability.includes(value)) {
|
|
35
|
-
|
|
37
|
+
if (value === "flag") {
|
|
38
|
+
result = `feature-flag-required`;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
result = `not-${value}-org`;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
let name = `user in ${value} org`;
|
|
45
|
+
if (value === "flag") {
|
|
46
|
+
name = `with feature flag`;
|
|
36
47
|
}
|
|
37
48
|
const check = {
|
|
38
|
-
name
|
|
49
|
+
name,
|
|
39
50
|
value: contextAvailability.join(", "),
|
|
40
51
|
code: getPolicyResponseCode_1.getPolicyResponseCode(result),
|
|
41
52
|
response: result,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkAvailability.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/checkAvailability.ts"],"names":[],"mappings":";;;AAIA,mEAAgE;AAEhE;;;;;;;;GAQG;AACH,SAAgB,iBAAiB,CAC/B,MAAyB,EACzB,OAAuB,EACvB,OAA6B;IAE7B,IAAI,MAAM,GAAG,EAAoB,CAAC;IAClC,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QACrD,mDAAmD;QACnD,mDAAmD;QACnD,MAAM,mBAAmB,GAAsB,EAAE,CAAC;QAClD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACnC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;QACD,0DAA0D;QAC1D,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YAC/B,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,KAAK,EAAE,EAAE;YACjE,IAAI,MAAM,GAAmB,SAAS,CAAC;YACvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,GAAG,OAAO,KAAK,MAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"checkAvailability.js","sourceRoot":"","sources":["../../../../src/permissions/_internal/checkAvailability.ts"],"names":[],"mappings":";;;AAIA,mEAAgE;AAEhE;;;;;;;;GAQG;AACH,SAAgB,iBAAiB,CAC/B,MAAyB,EACzB,OAAuB,EACvB,OAA6B;IAE7B,IAAI,MAAM,GAAG,EAAoB,CAAC;IAClC,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QACrD,mDAAmD;QACnD,mDAAmD;QACnD,MAAM,mBAAmB,GAAsB,EAAE,CAAC;QAClD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACnC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;QACD,0DAA0D;QAC1D,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YAC/B,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,kEAAkE;QAClE,2CAA2C;QAC3C,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,KAAK,EAAE,EAAE;YACjE,IAAI,MAAM,GAAmB,SAAS,CAAC;YACvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACxC,IAAI,KAAK,KAAK,MAAM,EAAE;oBACpB,MAAM,GAAG,uBAAuB,CAAC;iBAClC;qBAAM;oBACL,MAAM,GAAG,OAAO,KAAK,MAAwB,CAAC;iBAC/C;aACF;YACD,IAAI,IAAI,GAAG,WAAW,KAAK,MAAM,CAAC;YAClC,IAAI,KAAK,KAAK,MAAM,EAAE;gBACpB,IAAI,GAAG,mBAAmB,CAAC;aAC5B;YACD,MAAM,KAAK,GAAiB;gBAC1B,IAAI;gBACJ,KAAK,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrC,IAAI,EAAE,6CAAqB,CAAC,MAAM,CAAC;gBACnC,QAAQ,EAAE,MAAM;aACjB,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEhB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAlDD,8CAkDC"}
|
|
@@ -86,7 +86,7 @@ export interface IFeatureFlags extends Record<Permission, boolean> {
|
|
|
86
86
|
/**
|
|
87
87
|
* Hub Availability levels
|
|
88
88
|
*/
|
|
89
|
-
export declare type HubAvailability = "alpha" | "beta" | "general";
|
|
89
|
+
export declare type HubAvailability = "alpha" | "beta" | "general" | "flag";
|
|
90
90
|
/**
|
|
91
91
|
* Hub Run-time environments
|
|
92
92
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/**`
|
|
2
2
|
* Human readable response from a policy check
|
|
3
3
|
*/
|
|
4
|
-
export declare type PolicyResponse = "granted" | "disabled-by-feature-flag" | "disabled-by-entity-flag" | "org-member" | "not-org-member" | "group-member" | "not-group-member" | "not-group-admin" | "is-user" | "not-owner" | "not-licensed" | "not-licensed-available" | "not-available" | "not-granted" | "no-edit-access" | "edit-access" | "invalid-permission" | "invalid-capability" | "privilege-required" | "service-offline" | "service-maintenance" | "service-not-available" | "entity-required" | "not-authenticated" | "not-alpha-org" | "not-beta-org" | "property-missing" | "property-not-array" | "property-has-no-length" | "array-contains-invalid-value" | "array-missing-required-value" | "property-mismatch" | "user-not-group-member" | "user-not-group-manager" | "user-not-group-owner" | "assertion-property-not-found" | "assertion-failed" | "assertion-requires-numeric-values" | "property-match" | "feature-disabled" | "feature-enabled" | "not-in-environment" | "no-policy-exists";
|
|
4
|
+
export declare type PolicyResponse = "granted" | "disabled-by-feature-flag" | "disabled-by-entity-flag" | "org-member" | "not-org-member" | "group-member" | "not-group-member" | "not-group-admin" | "is-user" | "not-owner" | "not-licensed" | "not-licensed-available" | "not-available" | "not-granted" | "no-edit-access" | "edit-access" | "invalid-permission" | "invalid-capability" | "privilege-required" | "service-offline" | "service-maintenance" | "service-not-available" | "entity-required" | "not-authenticated" | "not-alpha-org" | "not-beta-org" | "property-missing" | "property-not-array" | "property-has-no-length" | "array-contains-invalid-value" | "array-missing-required-value" | "property-mismatch" | "user-not-group-member" | "user-not-group-manager" | "user-not-group-owner" | "assertion-property-not-found" | "assertion-failed" | "assertion-requires-numeric-values" | "property-match" | "feature-disabled" | "feature-enabled" | "not-in-environment" | "no-policy-exists" | "feature-flag-required";
|