# @memberjunction/ng-credentials Angular components for managing credentials, credential types, and credential categories in MemberJunction applications, with panel and dialog presentation modes. ## Overview The `@memberjunction/ng-credentials` package provides reusable UI components for creating and editing credentials, credential types, and credential categories. Each component follows a panel + dialog pattern: panels can be embedded directly in pages, while dialog wrappers provide modal presentation. ```mermaid graph TD A[CredentialsModule] --> B[Panel Components] A --> C[Dialog Components] B --> B1[CredentialEditPanelComponent] B --> B2[CredentialTypeEditPanelComponent] B --> B3[CredentialCategoryEditPanelComponent] C --> C1[CredentialDialogComponent] B1 --> D["Credential CRUD (name, type, category, values)"] B2 --> E["Credential Type CRUD (type definition, fields schema)"] B3 --> F["Category CRUD (hierarchical organization)"] style A fill:#2d6a9f,stroke:#1a4971,color:#fff style B fill:#7c5295,stroke:#563a6b,color:#fff style C fill:#2d8659,stroke:#1a5c3a,color:#fff ``` ## Installation ```bash npm install @memberjunction/ng-credentials ``` ## Usage ### Import the Module ```typescript import { CredentialsModule } from '@memberjunction/ng-credentials'; @NgModule({ imports: [CredentialsModule] }) export class YourModule { } ``` ### Credential Edit Panel Embed a credential editor directly in your page: ```html ``` ### Credential Dialog Open a credential editor in a modal: ```html ``` ### Credential Type Edit Panel Manage credential type definitions: ```html ``` ### Credential Category Edit Panel Organize credentials into categories: ```html ``` ## Exported Components | Component | Selector | Description | |-----------|----------|-------------| | `CredentialEditPanelComponent` | `mj-credential-edit-panel` | Full credential editor form | | `CredentialTypeEditPanelComponent` | `mj-credential-type-edit-panel` | Credential type definition editor | | `CredentialCategoryEditPanelComponent` | `mj-credential-category-edit-panel` | Category management editor | | `CredentialDialogComponent` | `mj-credential-dialog` | Modal wrapper for credential editing | ## Dependencies | Package | Description | |---------|-------------| | `@memberjunction/core` | Core framework | | `@memberjunction/core-entities` | Entity type definitions | | `@memberjunction/global` | Global utilities | | `@memberjunction/ng-shared-generic` | Shared generic components | | `@progress/kendo-angular-dialog` | Dialog/modal support | | `@progress/kendo-angular-buttons` | Button components | ### Peer Dependencies - `@angular/common` ^21.x - `@angular/core` ^21.x - `@angular/forms` ^21.x ## Build ```bash cd packages/Angular/Generic/credentials npm run build ``` ## License ISC