@bizapps/ui 1.5.0 → 1.5.1
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/main.cjs +19 -16
- package/dist/main.cjs.map +1 -1
- package/dist/main.d.cts +3 -32
- package/dist/main.d.ts +3 -32
- package/dist/main.js +19 -16
- package/dist/main.js.map +1 -1
- package/dist/policy-DPpMNLiO.d.cts +75 -0
- package/dist/policy-DPpMNLiO.d.ts +75 -0
- package/dist/policy.cjs +33 -0
- package/dist/policy.cjs.map +1 -0
- package/dist/policy.d.cts +1 -0
- package/dist/policy.d.ts +1 -0
- package/dist/policy.js +29 -0
- package/dist/policy.js.map +1 -0
- package/package.json +6 -1
package/dist/main.cjs
CHANGED
|
@@ -5122,6 +5122,8 @@ function NavigationMenuIndicator({
|
|
|
5122
5122
|
}
|
|
5123
5123
|
);
|
|
5124
5124
|
}
|
|
5125
|
+
|
|
5126
|
+
// src/components/authorization/policy.ts
|
|
5125
5127
|
function matchPermission(pattern, permission) {
|
|
5126
5128
|
if (pattern === "*") return true;
|
|
5127
5129
|
if (pattern === permission) return true;
|
|
@@ -5137,6 +5139,15 @@ function matchesAny(permissionSet, permission) {
|
|
|
5137
5139
|
}
|
|
5138
5140
|
return false;
|
|
5139
5141
|
}
|
|
5142
|
+
function can(permissionSet, perms, mode = "any") {
|
|
5143
|
+
const list = Array.isArray(perms) ? perms : [perms];
|
|
5144
|
+
if (list.length === 0) return false;
|
|
5145
|
+
if (permissionSet.has("*")) return true;
|
|
5146
|
+
if (mode === "all") {
|
|
5147
|
+
return list.every((p) => matchesAny(permissionSet, p));
|
|
5148
|
+
}
|
|
5149
|
+
return list.some((p) => matchesAny(permissionSet, p));
|
|
5150
|
+
}
|
|
5140
5151
|
var AbilityContext = react.createContext(void 0);
|
|
5141
5152
|
AbilityContext.displayName = "AbilityContext";
|
|
5142
5153
|
function AbilityProvider({ children, permissions }) {
|
|
@@ -5145,16 +5156,8 @@ function AbilityProvider({ children, permissions }) {
|
|
|
5145
5156
|
);
|
|
5146
5157
|
const [imperativelyResolved, setImperativelyResolved] = react.useState(false);
|
|
5147
5158
|
const status = permissions !== void 0 || imperativelyResolved ? "ready" : "loading";
|
|
5148
|
-
const
|
|
5149
|
-
(perms, mode = "any") =>
|
|
5150
|
-
const list = Array.isArray(perms) ? perms : [perms];
|
|
5151
|
-
if (list.length === 0) return false;
|
|
5152
|
-
if (permissionSet.has("*")) return true;
|
|
5153
|
-
if (mode === "all") {
|
|
5154
|
-
return list.every((p) => matchesAny(permissionSet, p));
|
|
5155
|
-
}
|
|
5156
|
-
return list.some((p) => matchesAny(permissionSet, p));
|
|
5157
|
-
},
|
|
5159
|
+
const can2 = react.useCallback(
|
|
5160
|
+
(perms, mode = "any") => can(permissionSet, perms, mode),
|
|
5158
5161
|
[permissionSet]
|
|
5159
5162
|
);
|
|
5160
5163
|
const setAbilities = react.useCallback((perms) => {
|
|
@@ -5174,8 +5177,8 @@ function AbilityProvider({ children, permissions }) {
|
|
|
5174
5177
|
setPermissionSet(new Set(permissions));
|
|
5175
5178
|
}, [permissionKey, permissions]);
|
|
5176
5179
|
const value = react.useMemo(
|
|
5177
|
-
() => ({ can, setAbilities, clearAbilities, status }),
|
|
5178
|
-
[
|
|
5180
|
+
() => ({ can: can2, setAbilities, clearAbilities, status }),
|
|
5181
|
+
[can2, setAbilities, clearAbilities, status]
|
|
5179
5182
|
);
|
|
5180
5183
|
return /* @__PURE__ */ jsxRuntime.jsx(AbilityContext.Provider, { value, children });
|
|
5181
5184
|
}
|
|
@@ -5187,8 +5190,8 @@ function useAbility() {
|
|
|
5187
5190
|
return context;
|
|
5188
5191
|
}
|
|
5189
5192
|
function useCan(permissions, mode = "any") {
|
|
5190
|
-
const { can } = useAbility();
|
|
5191
|
-
return
|
|
5193
|
+
const { can: can2 } = useAbility();
|
|
5194
|
+
return can2(permissions, mode);
|
|
5192
5195
|
}
|
|
5193
5196
|
function useAbilityStatus() {
|
|
5194
5197
|
return useAbility().status;
|
|
@@ -5295,8 +5298,8 @@ function Can({
|
|
|
5295
5298
|
children
|
|
5296
5299
|
}) {
|
|
5297
5300
|
warnUnknownPermission(permission);
|
|
5298
|
-
const { can, status } = useAbility();
|
|
5299
|
-
const hasPermission = status === "ready" &&
|
|
5301
|
+
const { can: can2, status } = useAbility();
|
|
5302
|
+
const hasPermission = status === "ready" && can2(permission, mode);
|
|
5300
5303
|
const show = negate ? !hasPermission : hasPermission;
|
|
5301
5304
|
if (typeof children === "function") {
|
|
5302
5305
|
warnRenderPropVoidsProps([
|