catalog-backend: custom createPermissionRule implementation

Signed-off-by: MT Lewis <mtlewis@users.noreply.github.com>
This commit is contained in:
MT Lewis
2022-01-07 11:50:51 +00:00
parent 82cfdc8d02
commit bef617807b
2 changed files with 12 additions and 31 deletions
+8 -24
View File
@@ -531,8 +531,8 @@ export class CommonDatabase implements Database {
// @public
export const createCatalogPermissionRule: <TParams extends unknown[]>(
rule: PermissionRule<Entity, EntitiesSearchFilter, TParams>,
) => PermissionRule<Entity, EntitiesSearchFilter, TParams>;
rule: CatalogPermissionRule<TParams>,
) => CatalogPermissionRule<TParams>;
// Warning: (ae-missing-release-tag) "CreateDatabaseOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
@@ -1402,28 +1402,12 @@ export function parseEntityYaml(
// @public
export const permissionRules: {
hasAnnotation: PermissionRule<
Entity,
EntitiesSearchFilter,
[annotation: string]
>;
hasLabel: PermissionRule<Entity, EntitiesSearchFilter, [label: string]>;
hasMetadata: PermissionRule<
Entity,
EntitiesSearchFilter,
[key: string, value?: string | undefined]
>;
hasSpec: PermissionRule<
Entity,
EntitiesSearchFilter,
[key: string, value?: string | undefined]
>;
isEntityKind: PermissionRule<Entity, EntitiesSearchFilter, [kinds: string[]]>;
isEntityOwner: PermissionRule<
Entity,
EntitiesSearchFilter,
[claims: string[]]
>;
hasAnnotation: CatalogPermissionRule<[annotation: string]>;
hasLabel: CatalogPermissionRule<[label: string]>;
hasMetadata: CatalogPermissionRule<[key: string, value?: string | undefined]>;
hasSpec: CatalogPermissionRule<[key: string, value?: string | undefined]>;
isEntityKind: CatalogPermissionRule<[kinds: string[]]>;
isEntityOwner: CatalogPermissionRule<[claims: string[]]>;
};
// Warning: (ae-missing-release-tag) "PlaceholderProcessor" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
@@ -14,9 +14,7 @@
* limitations under the License.
*/
import { Entity } from '@backstage/catalog-model';
import { makeCreatePermissionRule } from '@backstage/plugin-permission-node';
import { EntitiesSearchFilter } from '../../catalog/types';
import { CatalogPermissionRule } from '../types';
/**
* Helper function for creating correctly-typed
@@ -25,7 +23,6 @@ import { EntitiesSearchFilter } from '../../catalog/types';
*
* @public
*/
export const createCatalogPermissionRule = makeCreatePermissionRule<
Entity,
EntitiesSearchFilter
>();
export const createCatalogPermissionRule = <TParams extends unknown[]>(
rule: CatalogPermissionRule<TParams>,
) => rule;