feat(icons): migrate icon usage to the new dees-icon API and integrate collaboration sidebar into the editor

This commit is contained in:
2025-12-18 17:46:16 +00:00
parent 3d266c89b2
commit a9c2d2230c
17 changed files with 1090 additions and 149 deletions

View File

@@ -24,13 +24,13 @@ declare global {
// Party role display configuration
const PARTY_ROLES: Array<{ value: plugins.sdInterfaces.TPartyRole; label: string; icon: string }> = [
{ value: 'signer', label: 'Signer', icon: 'lucide:pen-tool' },
{ value: 'witness', label: 'Witness', icon: 'lucide:eye' },
{ value: 'notary', label: 'Notary', icon: 'lucide:stamp' },
{ value: 'cc', label: 'CC (Copy)', icon: 'lucide:mail' },
{ value: 'approver', label: 'Approver', icon: 'lucide:check-circle' },
{ value: 'guarantor', label: 'Guarantor', icon: 'lucide:shield' },
{ value: 'beneficiary', label: 'Beneficiary', icon: 'lucide:user-check' },
{ value: 'signer', label: 'Signer', icon: 'lucide:PenTool' },
{ value: 'witness', label: 'Witness', icon: 'lucide:Eye' },
{ value: 'notary', label: 'Notary', icon: 'lucide:Stamp' },
{ value: 'cc', label: 'CC (Copy)', icon: 'lucide:Mail' },
{ value: 'approver', label: 'Approver', icon: 'lucide:CheckCircle' },
{ value: 'guarantor', label: 'Guarantor', icon: 'lucide:Shield' },
{ value: 'beneficiary', label: 'Beneficiary', icon: 'lucide:UserCheck' },
];
const SIGNING_DEPENDENCIES: Array<{ value: plugins.sdInterfaces.TSigningDependency; label: string }> = [
@@ -550,13 +550,13 @@ export class SdigContractParties extends DeesElement {
<div class="section-card">
<div class="section-header">
<div class="section-title">
<dees-icon .iconFA=${'lucide:users-2'}></dees-icon>
<dees-icon .icon=${'lucide:Users2'}></dees-icon>
Available Roles
</div>
${!this.readonly
? html`
<button class="btn btn-secondary btn-sm" @click=${this.handleAddRole}>
<dees-icon .iconFA=${'lucide:plus'}></dees-icon>
<dees-icon .icon=${'lucide:Plus'}></dees-icon>
Add Role
</button>
`
@@ -571,7 +571,7 @@ export class SdigContractParties extends DeesElement {
`
: html`
<div class="empty-state">
<dees-icon .iconFA=${'lucide:users'}></dees-icon>
<dees-icon .icon=${'lucide:Users'}></dees-icon>
<h4>No Roles Defined</h4>
<p>Add roles to define the types of parties in this contract</p>
</div>
@@ -583,13 +583,13 @@ export class SdigContractParties extends DeesElement {
<div class="section-card">
<div class="section-header">
<div class="section-title">
<dees-icon .iconFA=${'lucide:user-plus'}></dees-icon>
<dees-icon .icon=${'lucide:UserPlus'}></dees-icon>
Involved Parties (${parties.length})
</div>
${!this.readonly
? html`
<button class="btn btn-primary btn-sm" @click=${this.handleAddParty}>
<dees-icon .iconFA=${'lucide:plus'}></dees-icon>
<dees-icon .icon=${'lucide:Plus'}></dees-icon>
Add Party
</button>
`
@@ -604,7 +604,7 @@ export class SdigContractParties extends DeesElement {
`
: html`
<div class="empty-state">
<dees-icon .iconFA=${'lucide:user-plus'}></dees-icon>
<dees-icon .icon=${'lucide:UserPlus'}></dees-icon>
<h4>No Parties Added</h4>
<p>Add parties who will be involved in this contract</p>
</div>
@@ -621,7 +621,7 @@ export class SdigContractParties extends DeesElement {
<div class="role-header">
<div class="role-name">
<dees-icon
.iconFA=${role.icon || 'lucide:user'}
.icon=${role.icon || 'lucide:User'}
style="color: ${role.displayColor || 'inherit'}"
></dees-icon>
${role.name}
@@ -633,7 +633,7 @@ export class SdigContractParties extends DeesElement {
${role.signatureRequired
? html`
<span class="role-meta-item">
<dees-icon .iconFA=${'lucide:pen-tool'}></dees-icon>
<dees-icon .icon=${'lucide:PenTool'}></dees-icon>
Signature required
</span>
`
@@ -641,7 +641,7 @@ export class SdigContractParties extends DeesElement {
${role.defaultSigningOrder > 0
? html`
<span class="role-meta-item">
<dees-icon .iconFA=${'lucide:list-ordered'}></dees-icon>
<dees-icon .icon=${'lucide:ListOrdered'}></dees-icon>
Order: ${role.defaultSigningOrder}
</span>
`
@@ -649,7 +649,7 @@ export class SdigContractParties extends DeesElement {
${role.minParties
? html`
<span class="role-meta-item">
<dees-icon .iconFA=${'lucide:users'}></dees-icon>
<dees-icon .icon=${'lucide:Users'}></dees-icon>
Min: ${role.minParties}${role.maxParties ? `, Max: ${role.maxParties}` : ''}
</span>
`
@@ -693,7 +693,7 @@ export class SdigContractParties extends DeesElement {
${deliveryEmail
? html`
<div class="party-detail">
<dees-icon .iconFA=${'lucide:mail'}></dees-icon>
<dees-icon .icon=${'lucide:Mail'}></dees-icon>
${deliveryEmail}
</div>
`
@@ -701,7 +701,7 @@ export class SdigContractParties extends DeesElement {
${deliveryPhone
? html`
<div class="party-detail">
<dees-icon .iconFA=${'lucide:phone'}></dees-icon>
<dees-icon .icon=${'lucide:Phone'}></dees-icon>
${deliveryPhone}
</div>
`
@@ -709,7 +709,7 @@ export class SdigContractParties extends DeesElement {
${actingAsProxy
? html`
<div class="party-detail">
<dees-icon .iconFA=${'lucide:users'}></dees-icon>
<dees-icon .icon=${'lucide:Users'}></dees-icon>
Acting as proxy
</div>
`