mirror of
https://github.com/bitwarden/browser
synced 2025-12-13 23:03:32 +00:00
[deps] Autofill: Update prettier to v3.3.3 (#10228)
* [deps] Autofill: Update prettier to v3.3.3 * prettier formatting changes * fix SyntaxError for literal @ inline html --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
'tw-bg-background-alt tw-border-transparent':
|
'tw-bg-background-alt tw-border-transparent':
|
||||||
this.background === 'alt' && !pageContentScrolled(),
|
this.background === 'alt' && !pageContentScrolled(),
|
||||||
'tw-bg-background tw-border-secondary-300':
|
'tw-bg-background tw-border-secondary-300':
|
||||||
(this.background === 'alt' && pageContentScrolled()) || this.background === 'default'
|
(this.background === 'alt' && pageContentScrolled()) || this.background === 'default',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<div class="tw-max-w-screen-sm tw-mx-auto tw-flex tw-justify-between tw-w-full">
|
<div class="tw-max-w-screen-sm tw-mx-auto tw-flex tw-justify-between tw-w-full">
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-invisible': loading || nonScrollable.childElementCount === 0,
|
'tw-invisible': loading || nonScrollable.childElementCount === 0,
|
||||||
'tw-border-secondary-300': scrolled(),
|
'tw-border-secondary-300': scrolled(),
|
||||||
'tw-border-transparent': !scrolled()
|
'tw-border-transparent': !scrolled(),
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<ng-content select="[slot=above-scroll-area]"></ng-content>
|
<ng-content select="[slot=above-scroll-area]"></ng-content>
|
||||||
|
|||||||
@@ -240,7 +240,7 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="box-content-row box-content-row-checkbox" appBoxRow>
|
<div class="box-content-row box-content-row-checkbox" appBoxRow>
|
||||||
<label for="special">!@#$%^&*</label>
|
<label for="special">!@#$%^&*</label>
|
||||||
<input
|
<input
|
||||||
id="special"
|
id="special"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ export class ExportCommand {
|
|||||||
// format is 'undefined' => Defaults to 'csv'
|
// format is 'undefined' => Defaults to 'csv'
|
||||||
// Any other case => returns the options.format
|
// Any other case => returns the options.format
|
||||||
const format =
|
const format =
|
||||||
password && options.format == "json" ? "encrypted_json" : options.format ?? "csv";
|
password && options.format == "json" ? "encrypted_json" : (options.format ?? "csv");
|
||||||
|
|
||||||
if (!this.isSupportedExportFormat(format)) {
|
if (!this.isSupportedExportFormat(format)) {
|
||||||
return Response.badRequest(
|
return Response.badRequest(
|
||||||
|
|||||||
@@ -265,7 +265,7 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="box-content-row box-content-row-checkbox" appBoxRow>
|
<div class="box-content-row box-content-row-checkbox" appBoxRow>
|
||||||
<label for="special">!@#$%^&*</label>
|
<label for="special">!@#$%^&*</label>
|
||||||
<input
|
<input
|
||||||
id="special"
|
id="special"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed(collectionsGrouping),
|
'bwi-angle-right': isCollapsed(collectionsGrouping),
|
||||||
'bwi-angle-down': !isCollapsed(collectionsGrouping)
|
'bwi-angle-down': !isCollapsed(collectionsGrouping),
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
{{ collectionsGrouping.name | i18n }}
|
{{ collectionsGrouping.name | i18n }}
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed(c.node),
|
'bwi-angle-right': isCollapsed(c.node),
|
||||||
'bwi-angle-down': !isCollapsed(c.node)
|
'bwi-angle-down': !isCollapsed(c.node),
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed(foldersGrouping),
|
'bwi-angle-right': isCollapsed(foldersGrouping),
|
||||||
'bwi-angle-down': !isCollapsed(foldersGrouping)
|
'bwi-angle-down': !isCollapsed(foldersGrouping),
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
{{ foldersGrouping.name | i18n }}
|
{{ foldersGrouping.name | i18n }}
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<li
|
<li
|
||||||
*ngFor="let f of folders"
|
*ngFor="let f of folders"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
active: f.node.id === activeFilter.selectedFolderId && activeFilter.selectedFolder
|
active: f.node.id === activeFilter.selectedFolderId && activeFilter.selectedFolder,
|
||||||
}"
|
}"
|
||||||
class="filter-option"
|
class="filter-option"
|
||||||
>
|
>
|
||||||
@@ -52,7 +52,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed(f.node),
|
'bwi-angle-right': isCollapsed(f.node),
|
||||||
'bwi-angle-down': !isCollapsed(f.node)
|
'bwi-angle-down': !isCollapsed(f.node),
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed,
|
'bwi-angle-right': isCollapsed,
|
||||||
'bwi-angle-down': !isCollapsed
|
'bwi-angle-down': !isCollapsed,
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
</button>
|
</button>
|
||||||
@@ -74,7 +74,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed,
|
'bwi-angle-right': isCollapsed,
|
||||||
'bwi-angle-down': !isCollapsed
|
'bwi-angle-down': !isCollapsed,
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed,
|
'bwi-angle-right': isCollapsed,
|
||||||
'bwi-angle-down': !isCollapsed
|
'bwi-angle-down': !isCollapsed,
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
{{ typesNode.name | i18n }}
|
{{ typesNode.name | i18n }}
|
||||||
|
|||||||
@@ -50,6 +50,6 @@
|
|||||||
</bit-form-control>
|
</bit-form-control>
|
||||||
<bit-form-control>
|
<bit-form-control>
|
||||||
<input type="checkbox" bitCheckbox formControlName="requireSpecial" id="requireSpecial" />
|
<input type="checkbox" bitCheckbox formControlName="requireSpecial" id="requireSpecial" />
|
||||||
<bit-label>!@#$%^&*</bit-label>
|
<bit-label>!@#$%^&*</bit-label>
|
||||||
</bit-form-control>
|
</bit-form-control>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -44,7 +44,7 @@
|
|||||||
</bit-form-control>
|
</bit-form-control>
|
||||||
<bit-form-control>
|
<bit-form-control>
|
||||||
<input type="checkbox" bitCheckbox formControlName="useSpecial" id="useSpecial" />
|
<input type="checkbox" bitCheckbox formControlName="useSpecial" id="useSpecial" />
|
||||||
<bit-label>!@#$%^&*</bit-label>
|
<bit-label>!@#$%^&*</bit-label>
|
||||||
</bit-form-control>
|
</bit-form-control>
|
||||||
<h3 bitTypography="h3" class="tw-mt-4">{{ "passphrase" | i18n }}</h3>
|
<h3 bitTypography="h3" class="tw-mt-4">{{ "passphrase" | i18n }}</h3>
|
||||||
<div class="tw-grid tw-grid-cols-12 tw-gap-4">
|
<div class="tw-grid tw-grid-cols-12 tw-gap-4">
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
title="{{ 'customColor' | i18n }}"
|
title="{{ 'customColor' | i18n }}"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'!tw-outline-[3px] tw-outline-primary-600 hover:tw-outline-[3px] hover:tw-outline-primary-600':
|
'!tw-outline-[3px] tw-outline-primary-600 hover:tw-outline-[3px] hover:tw-outline-primary-600':
|
||||||
customColorSelected
|
customColorSelected,
|
||||||
}"
|
}"
|
||||||
class="tw-relative tw-flex tw-h-24 tw-w-24 tw-cursor-pointer tw-place-content-center tw-content-center tw-justify-center tw-rounded-full tw-border tw-border-solid tw-border-secondary-600 tw-outline tw-outline-0 tw-outline-offset-1 hover:tw-outline-1 hover:tw-outline-primary-300 focus:tw-outline-2 focus:tw-outline-primary-600"
|
class="tw-relative tw-flex tw-h-24 tw-w-24 tw-cursor-pointer tw-place-content-center tw-content-center tw-justify-center tw-rounded-full tw-border tw-border-solid tw-border-secondary-600 tw-outline tw-outline-0 tw-outline-offset-1 hover:tw-outline-1 hover:tw-outline-primary-300 focus:tw-outline-2 focus:tw-outline-primary-600"
|
||||||
[style.background-color]="customColor$ | async"
|
[style.background-color]="customColor$ | async"
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
[organizationInfo]="{
|
[organizationInfo]="{
|
||||||
name: formGroup.get('name').value,
|
name: formGroup.get('name').value,
|
||||||
email: formGroup.get('email').value,
|
email: formGroup.get('email').value,
|
||||||
type: productType
|
type: productType,
|
||||||
}"
|
}"
|
||||||
[subscriptionProduct]="SubscriptionProduct.SecretsManager"
|
[subscriptionProduct]="SubscriptionProduct.SecretsManager"
|
||||||
(steppedBack)="steppedBack()"
|
(steppedBack)="steppedBack()"
|
||||||
|
|||||||
@@ -102,7 +102,7 @@
|
|||||||
[organizationInfo]="{
|
[organizationInfo]="{
|
||||||
name: orgInfoFormGroup.get('name').value,
|
name: orgInfoFormGroup.get('name').value,
|
||||||
email: orgInfoFormGroup.get('email').value,
|
email: orgInfoFormGroup.get('email').value,
|
||||||
type: trialOrganizationType
|
type: trialOrganizationType,
|
||||||
}"
|
}"
|
||||||
[subscriptionProduct]="SubscriptionProduct.PasswordManager"
|
[subscriptionProduct]="SubscriptionProduct.PasswordManager"
|
||||||
(steppedBack)="previousStep()"
|
(steppedBack)="previousStep()"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
class="tw-flex tw-w-full tw-items-center tw-border-none tw-bg-transparent"
|
class="tw-flex tw-w-full tw-items-center tw-border-none tw-bg-transparent"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'hover:tw-bg-secondary-100': !disabled && step.editable
|
'hover:tw-bg-secondary-100': !disabled && step.editable,
|
||||||
}"
|
}"
|
||||||
[attr.aria-expanded]="selected"
|
[attr.aria-expanded]="selected"
|
||||||
>
|
>
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-bg-primary-600 tw-text-contrast': selected,
|
'tw-bg-primary-600 tw-text-contrast': selected,
|
||||||
'tw-bg-secondary-300 tw-text-main': !selected && !disabled && step.editable,
|
'tw-bg-secondary-300 tw-text-main': !selected && !disabled && step.editable,
|
||||||
'tw-bg-transparent tw-text-muted': disabled
|
'tw-bg-transparent tw-text-muted': disabled,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
{{ stepNumber }}
|
{{ stepNumber }}
|
||||||
@@ -30,13 +30,13 @@
|
|||||||
<div
|
<div
|
||||||
class="tw-txt-main tw-mt-3.5 tw-h-12 tw-text-left tw-leading-snug"
|
class="tw-txt-main tw-mt-3.5 tw-h-12 tw-text-left tw-leading-snug"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-font-bold': selected
|
'tw-font-bold': selected,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<p
|
<p
|
||||||
class="main-label text tw-mb-1 tw-text-main"
|
class="main-label text tw-mb-1 tw-text-main"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-mt-1': !step.subLabel
|
'tw-mt-1': !step.subLabel,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
{{ step.label }}
|
{{ step.label }}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
class="tw-inline-block tw-w-11/12 tw-pl-7"
|
class="tw-inline-block tw-w-11/12 tw-pl-7"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-border-0 tw-border-l tw-border-solid tw-border-secondary-300': applyBorder,
|
'tw-border-0 tw-border-l tw-border-solid tw-border-secondary-300': applyBorder,
|
||||||
'tw-pt-6': addSubLabelSpacing
|
'tw-pt-6': addSubLabelSpacing,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<ng-content></ng-content>
|
<ng-content></ng-content>
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
<ng-template body>
|
<ng-template body>
|
||||||
<tr *ngFor="let i of subscription.items">
|
<tr *ngFor="let i of subscription.items">
|
||||||
<td bitCell>
|
<td bitCell>
|
||||||
{{ i.name }} {{ i.quantity > 1 ? "×" + i.quantity : "" }} @
|
{{ i.name }} {{ i.quantity > 1 ? "×" + i.quantity : "" }} @
|
||||||
{{ i.amount | currency: "$" }}
|
{{ i.amount | currency: "$" }}
|
||||||
</td>
|
</td>
|
||||||
<td bitCell>{{ i.quantity * i.amount | currency: "$" }} /{{ i.interval | i18n }}</td>
|
<td bitCell>{{ i.quantity * i.amount | currency: "$" }} /{{ i.interval | i18n }}</td>
|
||||||
|
|||||||
@@ -75,7 +75,7 @@
|
|||||||
<tr bitRow *ngFor="let i of subscriptionLineItems">
|
<tr bitRow *ngFor="let i of subscriptionLineItems">
|
||||||
<td bitCell [ngClass]="{ 'tw-pl-20': i.addonSubscriptionItem }">
|
<td bitCell [ngClass]="{ 'tw-pl-20': i.addonSubscriptionItem }">
|
||||||
<span *ngIf="!i.addonSubscriptionItem">{{ i.productName | i18n }} -</span>
|
<span *ngIf="!i.addonSubscriptionItem">{{ i.productName | i18n }} -</span>
|
||||||
{{ i.name }} {{ i.quantity > 1 ? "×" + i.quantity : "" }} @
|
{{ i.name }} {{ i.quantity > 1 ? "×" + i.quantity : "" }} @
|
||||||
{{ i.amount | currency: "$" }}
|
{{ i.amount | currency: "$" }}
|
||||||
</td>
|
</td>
|
||||||
<td bitCell class="tw-text-right">
|
<td bitCell class="tw-text-right">
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
class="-tw-m-6 tw-mb-3 tw-flex tw-flex-col tw-p-6"
|
class="-tw-m-6 tw-mb-3 tw-flex tw-flex-col tw-p-6"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-border-0 tw-border-b tw-border-solid tw-border-secondary-300 tw-bg-background-alt tw-pb-0':
|
'tw-border-0 tw-border-b tw-border-solid tw-border-secondary-300 tw-bg-background-alt tw-pb-0':
|
||||||
tabsContainer.childElementCount !== 0
|
tabsContainer.childElementCount !== 0,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<div class="tw-flex">
|
<div class="tw-flex">
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<section
|
<section
|
||||||
[ngStyle]="{
|
[ngStyle]="{
|
||||||
'--num-products': products.bento.length,
|
'--num-products': products.bento.length,
|
||||||
'grid-template-columns': 'repeat(min(var(--num-products,1),3),auto)'
|
'grid-template-columns': 'repeat(min(var(--num-products,1),3),auto)',
|
||||||
}"
|
}"
|
||||||
class="tw-grid tw-gap-2"
|
class="tw-grid tw-gap-2"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<i class="bwi bwi-fw !tw-mr-4" [ngClass]="completed ? 'bwi-check tw-text-success' : icon"></i
|
<i class="bwi bwi-fw !tw-mr-4" [ngClass]="completed ? 'bwi-check tw-text-success' : icon"></i
|
||||||
><span
|
><span
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-text-primary-700 tw-line-through tw-decoration-primary-700 tw-opacity-50': completed
|
'tw-text-primary-700 tw-line-through tw-decoration-primary-700 tw-opacity-50': completed,
|
||||||
}"
|
}"
|
||||||
>{{ title }}<i class="bwi bwi-angle-right tw-ml-1"></i
|
>{{ title }}<i class="bwi bwi-angle-right tw-ml-1"></i
|
||||||
></span>
|
></span>
|
||||||
|
|||||||
@@ -210,7 +210,7 @@
|
|||||||
[disabled]="enforcedPasswordPolicyOptions?.useSpecial"
|
[disabled]="enforcedPasswordPolicyOptions?.useSpecial"
|
||||||
attr.aria-label="{{ 'specialCharacters' | i18n }}"
|
attr.aria-label="{{ 'specialCharacters' | i18n }}"
|
||||||
/>
|
/>
|
||||||
<label for="special" class="form-check-label">!@#$%^&*</label>
|
<label for="special" class="form-check-label">!@#$%^&*</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-check">
|
<div class="form-check">
|
||||||
<input
|
<input
|
||||||
|
|||||||
@@ -493,7 +493,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-eye': !showCardNumber,
|
'bwi-eye': !showCardNumber,
|
||||||
'bwi-eye-slash': showCardNumber
|
'bwi-eye-slash': showCardNumber,
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ export class RoutedVaultFilterService implements OnDestroy {
|
|||||||
collectionId: filter.collectionId ?? null,
|
collectionId: filter.collectionId ?? null,
|
||||||
folderId: filter.folderId ?? null,
|
folderId: filter.folderId ?? null,
|
||||||
organizationId:
|
organizationId:
|
||||||
filter.organizationIdParamType === "path" ? null : filter.organizationId ?? null,
|
filter.organizationIdParamType === "path" ? null : (filter.organizationId ?? null),
|
||||||
type: filter.type ?? null,
|
type: filter.type ?? null,
|
||||||
},
|
},
|
||||||
queryParamsHandling: "merge",
|
queryParamsHandling: "merge",
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
>
|
>
|
||||||
<h3
|
<h3
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
active: isAllVaultsSelected || isNodeSelected(headerNode)
|
active: isAllVaultsSelected || isNodeSelected(headerNode),
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
{{ headerNode.node.name | i18n }}
|
{{ headerNode.node.name | i18n }}
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
<li
|
<li
|
||||||
*ngFor="let f of filters"
|
*ngFor="let f of filters"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
active: isNodeSelected(f)
|
active: isNodeSelected(f),
|
||||||
}"
|
}"
|
||||||
class="filter-option"
|
class="filter-option"
|
||||||
>
|
>
|
||||||
@@ -62,7 +62,7 @@
|
|||||||
class="bwi bwi-fw"
|
class="bwi bwi-fw"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': isCollapsed(f.node),
|
'bwi-angle-right': isCollapsed(f.node),
|
||||||
'bwi-angle-down': !isCollapsed(f.node)
|
'bwi-angle-down': !isCollapsed(f.node),
|
||||||
}"
|
}"
|
||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
></i>
|
></i>
|
||||||
|
|||||||
@@ -259,7 +259,7 @@
|
|||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'bwi-angle-right': !showOpenIdCustomizations,
|
'bwi-angle-right': !showOpenIdCustomizations,
|
||||||
'bwi-angle-down': showOpenIdCustomizations
|
'bwi-angle-down': showOpenIdCustomizations,
|
||||||
}"
|
}"
|
||||||
></i>
|
></i>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
@@ -61,7 +61,7 @@
|
|||||||
class="tw-text-muted tw-grid tw-grid-flow-col tw-gap-1 tw-grid-cols-1"
|
class="tw-text-muted tw-grid tw-grid-flow-col tw-gap-1 tw-grid-cols-1"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-grid-rows-1': additionalSeatsPurchased <= 0,
|
'tw-grid-rows-1': additionalSeatsPurchased <= 0,
|
||||||
'tw-grid-rows-2': additionalSeatsPurchased > 0
|
'tw-grid-rows-2': additionalSeatsPurchased > 0,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<span class="tw-col-span-1"
|
<span class="tw-col-span-1"
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
class="tw-grid tw-grid-flow-col tw-gap-1 tw-grid-cols-1"
|
class="tw-grid tw-grid-flow-col tw-gap-1 tw-grid-cols-1"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-grid-rows-1': additionalSeatsPurchased === 0,
|
'tw-grid-rows-1': additionalSeatsPurchased === 0,
|
||||||
'tw-grid-rows-2': purchasingSeats || sellingSeats
|
'tw-grid-rows-2': purchasingSeats || sellingSeats,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<span class="tw-col-span-1">
|
<span class="tw-col-span-1">
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
{{ getFormattedPlanName(i.planName) }} {{ "orgSeats" | i18n }} ({{
|
{{ getFormattedPlanName(i.planName) }} {{ "orgSeats" | i18n }} ({{
|
||||||
i.cadence.toLowerCase()
|
i.cadence.toLowerCase()
|
||||||
}}) {{ "×" }}{{ getFormattedSeatCount(i.seatMinimum, i.purchasedSeats) }}
|
}}) {{ "×" }}{{ getFormattedSeatCount(i.seatMinimum, i.purchasedSeats) }}
|
||||||
@
|
@
|
||||||
{{
|
{{
|
||||||
getFormattedCost(
|
getFormattedCost(
|
||||||
i.cost,
|
i.cost,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<ng-container
|
<ng-container
|
||||||
*ngIf="{
|
*ngIf="{
|
||||||
selectedRegion: selectedRegion$ | async
|
selectedRegion: selectedRegion$ | async,
|
||||||
} as data"
|
} as data"
|
||||||
>
|
>
|
||||||
<div class="environment-selector-btn">
|
<div class="environment-selector-btn">
|
||||||
|
|||||||
@@ -414,11 +414,11 @@ export class StateService<
|
|||||||
}
|
}
|
||||||
|
|
||||||
const account = options?.useSecureStorage
|
const account = options?.useSecureStorage
|
||||||
? (await this.secureStorageService.get<TAccount>(options.userId, options)) ??
|
? ((await this.secureStorageService.get<TAccount>(options.userId, options)) ??
|
||||||
(await this.storageService.get<TAccount>(
|
(await this.storageService.get<TAccount>(
|
||||||
options.userId,
|
options.userId,
|
||||||
this.reconcileOptions(options, { htmlStorageLocation: HtmlStorageLocation.Local }),
|
this.reconcileOptions(options, { htmlStorageLocation: HtmlStorageLocation.Local }),
|
||||||
))
|
)))
|
||||||
: await this.storageService.get<TAccount>(options.userId, options);
|
: await this.storageService.get<TAccount>(options.userId, options);
|
||||||
return account;
|
return account;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -164,7 +164,7 @@ export class DeriveDefinition<TFrom, TTo, TDeps extends DerivedStateDependencies
|
|||||||
}
|
}
|
||||||
|
|
||||||
get cleanupDelayMs() {
|
get cleanupDelayMs() {
|
||||||
return this.options.cleanupDelayMs < 0 ? 0 : this.options.cleanupDelayMs ?? 1000;
|
return this.options.cleanupDelayMs < 0 ? 0 : (this.options.cleanupDelayMs ?? 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
get clearOnCleanup() {
|
get clearOnCleanup() {
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ export class KeyDefinition<T> {
|
|||||||
* Gets the number of milliseconds to wait before cleaning up the state after the last subscriber has unsubscribed.
|
* Gets the number of milliseconds to wait before cleaning up the state after the last subscriber has unsubscribed.
|
||||||
*/
|
*/
|
||||||
get cleanupDelayMs() {
|
get cleanupDelayMs() {
|
||||||
return this.options.cleanupDelayMs < 0 ? 0 : this.options.cleanupDelayMs ?? 1000;
|
return this.options.cleanupDelayMs < 0 ? 0 : (this.options.cleanupDelayMs ?? 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ export class UserKeyDefinition<T> {
|
|||||||
* Gets the number of milliseconds to wait before cleaning up the state after the last subscriber has unsubscribed.
|
* Gets the number of milliseconds to wait before cleaning up the state after the last subscriber has unsubscribed.
|
||||||
*/
|
*/
|
||||||
get cleanupDelayMs() {
|
get cleanupDelayMs() {
|
||||||
return this.options.cleanupDelayMs < 0 ? 0 : this.options.cleanupDelayMs ?? 1000;
|
return this.options.cleanupDelayMs < 0 ? 0 : (this.options.cleanupDelayMs ?? 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ export class PassphraseGeneratorOptionsEvaluator
|
|||||||
const wordSeparator =
|
const wordSeparator =
|
||||||
options.wordSeparator === ""
|
options.wordSeparator === ""
|
||||||
? ""
|
? ""
|
||||||
: options.wordSeparator?.[0] ?? DefaultPassphraseGenerationOptions.wordSeparator;
|
: (options.wordSeparator?.[0] ?? DefaultPassphraseGenerationOptions.wordSeparator);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...options,
|
...options,
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ export class CryptoServiceRandomizer implements Randomizer {
|
|||||||
|
|
||||||
// ref: https://stackoverflow.com/a/12646864/1090359
|
// ref: https://stackoverflow.com/a/12646864/1090359
|
||||||
async shuffle<T>(items: Array<T>, options?: { copy?: boolean }) {
|
async shuffle<T>(items: Array<T>, options?: { copy?: boolean }) {
|
||||||
const shuffled = options?.copy ?? true ? [...items] : items;
|
const shuffled = (options?.copy ?? true) ? [...items] : items;
|
||||||
|
|
||||||
for (let i = shuffled.length - 1; i > 0; i--) {
|
for (let i = shuffled.length - 1; i > 0; i--) {
|
||||||
const j = await this.uniform(0, i);
|
const j = await this.uniform(0, i);
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
selectedOption
|
selectedOption
|
||||||
? 'tw-bg-text-muted tw-text-contrast tw-gap-1'
|
? 'tw-bg-text-muted tw-text-contrast tw-gap-1'
|
||||||
: 'tw-bg-transparent tw-text-muted tw-gap-1.5',
|
: 'tw-bg-transparent tw-text-muted tw-gap-1.5',
|
||||||
focusVisibleWithin() ? 'tw-ring-2 tw-ring-primary-500 tw-ring-offset-1' : ''
|
focusVisibleWithin() ? 'tw-ring-2 tw-ring-primary-500 tw-ring-offset-1' : '',
|
||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<!-- Primary button -->
|
<!-- Primary button -->
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
type="button"
|
type="button"
|
||||||
class="fvw-target tw-inline-flex tw-gap-1.5 tw-items-center tw-bg-transparent hover:tw-bg-transparent tw-border-none tw-outline-none tw-max-w-full tw-py-1 tw-pl-3 last:tw-pr-3 tw-truncate tw-text-[inherit]"
|
class="fvw-target tw-inline-flex tw-gap-1.5 tw-items-center tw-bg-transparent hover:tw-bg-transparent tw-border-none tw-outline-none tw-max-w-full tw-py-1 tw-pl-3 last:tw-pr-3 tw-truncate tw-text-[inherit]"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-cursor-not-allowed': disabled
|
'tw-cursor-not-allowed': disabled,
|
||||||
}"
|
}"
|
||||||
[bitMenuTriggerFor]="menu"
|
[bitMenuTriggerFor]="menu"
|
||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
[disabled]="disabled"
|
[disabled]="disabled"
|
||||||
class="tw-bg-transparent hover:tw-bg-transparent tw-outline-none tw-rounded-full tw-p-1 tw-my-1 tw-mr-1 tw-text-[inherit] tw-border-solid tw-border tw-border-text-muted hover:tw-border-text-contrast hover:disabled:tw-border-transparent tw-aspect-square tw-flex tw-items-center tw-justify-center tw-h-fit focus-visible:tw-ring-2 tw-ring-text-contrast focus-visible:hover:tw-border-transparent"
|
class="tw-bg-transparent hover:tw-bg-transparent tw-outline-none tw-rounded-full tw-p-1 tw-my-1 tw-mr-1 tw-text-[inherit] tw-border-solid tw-border tw-border-text-muted hover:tw-border-text-contrast hover:disabled:tw-border-transparent tw-aspect-square tw-flex tw-items-center tw-justify-center tw-h-fit focus-visible:tw-ring-2 tw-ring-text-contrast focus-visible:hover:tw-border-transparent"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-cursor-not-allowed': disabled
|
'tw-cursor-not-allowed': disabled,
|
||||||
}"
|
}"
|
||||||
(click)="clear()"
|
(click)="clear()"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
'tw-overflow-y-auto': !loading,
|
'tw-overflow-y-auto': !loading,
|
||||||
'tw-invisible tw-overflow-y-hidden': loading,
|
'tw-invisible tw-overflow-y-hidden': loading,
|
||||||
'tw-bg-background': background === 'default',
|
'tw-bg-background': background === 'default',
|
||||||
'tw-bg-background-alt': background === 'alt'
|
'tw-bg-background-alt': background === 'alt',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<ng-content select="[bitDialogContent]"></ng-content>
|
<ng-content select="[bitDialogContent]"></ng-content>
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
<!-- overlay backdrop for side-nav -->
|
<!-- overlay backdrop for side-nav -->
|
||||||
<div
|
<div
|
||||||
*ngIf="{
|
*ngIf="{
|
||||||
open: sideNavService.open$ | async
|
open: sideNavService.open$ | async,
|
||||||
} as data"
|
} as data"
|
||||||
class="tw-pointer-events-none tw-fixed tw-inset-0 tw-z-10 tw-bg-black tw-bg-opacity-0 motion-safe:tw-transition-colors md:tw-hidden"
|
class="tw-pointer-events-none tw-fixed tw-inset-0 tw-z-10 tw-bg-black tw-bg-opacity-0 motion-safe:tw-transition-colors md:tw-hidden"
|
||||||
[ngClass]="[data.open ? 'tw-bg-opacity-30 md:tw-bg-opacity-0' : 'tw-bg-opacity-0']"
|
[ngClass]="[data.open ? 'tw-bg-opacity-30 md:tw-bg-opacity-0' : 'tw-bg-opacity-0']"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<ng-container
|
<ng-container
|
||||||
*ngIf="{
|
*ngIf="{
|
||||||
open: sideNavService.open$ | async
|
open: sideNavService.open$ | async,
|
||||||
} as data"
|
} as data"
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
@@ -10,12 +10,12 @@
|
|||||||
showActiveStyles
|
showActiveStyles
|
||||||
? 'tw-bg-background-alt4'
|
? 'tw-bg-background-alt4'
|
||||||
: 'tw-bg-background-alt3 hover:tw-bg-primary-300/60',
|
: 'tw-bg-background-alt3 hover:tw-bg-primary-300/60',
|
||||||
fvwStyles$ | async
|
fvwStyles$ | async,
|
||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
[ngStyle]="{
|
[ngStyle]="{
|
||||||
'padding-left': data.open ? (variant === 'tree' ? 2.5 : 1) + treeDepth * 1.5 + 'rem' : '0'
|
'padding-left': data.open ? (variant === 'tree' ? 2.5 : 1) + treeDepth * 1.5 + 'rem' : '0',
|
||||||
}"
|
}"
|
||||||
class="tw-relative tw-flex"
|
class="tw-relative tw-flex"
|
||||||
>
|
>
|
||||||
@@ -30,7 +30,7 @@
|
|||||||
<div
|
<div
|
||||||
*ngIf="slotStart.childElementCount === 0"
|
*ngIf="slotStart.childElementCount === 0"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-w-0': variant !== 'tree'
|
'tw-w-0': variant !== 'tree',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<button
|
<button
|
||||||
@@ -52,7 +52,7 @@
|
|||||||
class="tw-truncate"
|
class="tw-truncate"
|
||||||
[ngClass]="[
|
[ngClass]="[
|
||||||
variant === 'tree' ? 'tw-py-1' : 'tw-py-2',
|
variant === 'tree' ? 'tw-py-1' : 'tw-py-2',
|
||||||
data.open ? 'tw-pr-4' : 'tw-text-center'
|
data.open ? 'tw-pr-4' : 'tw-text-center',
|
||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@@ -105,7 +105,7 @@
|
|||||||
class="tw-flex -tw-ml-3 tw-pr-4 tw-gap-1 [&>*:focus-visible::before]:!tw-ring-text-alt2 [&>*:hover]:!tw-border-text-alt2 [&>*]:tw-text-alt2"
|
class="tw-flex -tw-ml-3 tw-pr-4 tw-gap-1 [&>*:focus-visible::before]:!tw-ring-text-alt2 [&>*:hover]:!tw-border-text-alt2 [&>*]:tw-text-alt2"
|
||||||
[ngClass]="[
|
[ngClass]="[
|
||||||
variant === 'tree' ? 'tw-py-1' : 'tw-py-2',
|
variant === 'tree' ? 'tw-py-1' : 'tw-py-2',
|
||||||
endSlot.childElementCount === 0 ? 'tw-hidden' : ''
|
endSlot.childElementCount === 0 ? 'tw-hidden' : '',
|
||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<ng-content select="[slot=end]"></ng-content>
|
<ng-content select="[slot=end]"></ng-content>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<nav
|
<nav
|
||||||
*ngIf="{
|
*ngIf="{
|
||||||
open: sideNavService.open$ | async,
|
open: sideNavService.open$ | async,
|
||||||
isOverlay: sideNavService.isOverlay$ | async
|
isOverlay: sideNavService.isOverlay$ | async,
|
||||||
} as data"
|
} as data"
|
||||||
id="bit-side-nav"
|
id="bit-side-nav"
|
||||||
class="tw-fixed md:tw-sticky tw-inset-y-0 tw-left-0 tw-z-30 tw-flex tw-h-screen tw-flex-col tw-overscroll-none tw-overflow-auto tw-bg-background-alt3 tw-outline-none"
|
class="tw-fixed md:tw-sticky tw-inset-y-0 tw-left-0 tw-z-30 tw-flex tw-h-screen tw-flex-col tw-overscroll-none tw-overflow-auto tw-bg-background-alt3 tw-outline-none"
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
variant === 'secondary' && {
|
variant === 'secondary' && {
|
||||||
'--color-text-alt2': 'var(--color-text-main)',
|
'--color-text-alt2': 'var(--color-text-main)',
|
||||||
'--color-background-alt3': 'var(--color-secondary-100)',
|
'--color-background-alt3': 'var(--color-secondary-100)',
|
||||||
'--color-background-alt4': 'var(--color-secondary-300)'
|
'--color-background-alt4': 'var(--color-secondary-300)',
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
[cdkTrapFocus]="data.isOverlay"
|
[cdkTrapFocus]="data.isOverlay"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import { Component, Input } from "@angular/core";
|
|||||||
template: `
|
template: `
|
||||||
<section
|
<section
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-mb-6 md:tw-mb-12': !disableMargin
|
'tw-mb-6 md:tw-mb-12': !disableMargin,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<ng-content></ng-content>
|
<ng-content></ng-content>
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ export class CryptoServiceRandomizer implements Randomizer {
|
|||||||
throw new Error("items must have at least one entry.");
|
throw new Error("items must have at least one entry.");
|
||||||
}
|
}
|
||||||
|
|
||||||
const shuffled = options?.copy ?? true ? [...items] : items;
|
const shuffled = (options?.copy ?? true) ? [...items] : items;
|
||||||
|
|
||||||
for (let i = shuffled.length - 1; i > 0; i--) {
|
for (let i = shuffled.length - 1; i > 0; i--) {
|
||||||
const j = await this.uniform(0, i);
|
const j = await this.uniform(0, i);
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ export class EmailCalculator {
|
|||||||
* @returns an email address or `null` if the calculation fails.
|
* @returns an email address or `null` if the calculation fails.
|
||||||
*/
|
*/
|
||||||
concatenate(username: string, domain: string) {
|
concatenate(username: string, domain: string) {
|
||||||
const emailDomain = domain?.startsWith("@") ? domain.substring(1, Infinity) : domain ?? "";
|
const emailDomain = domain?.startsWith("@") ? domain.substring(1, Infinity) : (domain ?? "");
|
||||||
if (emailDomain.length < 1) {
|
if (emailDomain.length < 1) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ export class EmailRandomizer {
|
|||||||
* is empty, resolves to null instead.
|
* is empty, resolves to null instead.
|
||||||
*/
|
*/
|
||||||
async randomAsciiCatchall(domain: string, options?: { length?: number }) {
|
async randomAsciiCatchall(domain: string, options?: { length?: number }) {
|
||||||
const emailDomain = domain?.startsWith("@") ? domain.substring(1, Infinity) : domain ?? "";
|
const emailDomain = domain?.startsWith("@") ? domain.substring(1, Infinity) : (domain ?? "");
|
||||||
if (emailDomain.length < 1) {
|
if (emailDomain.length < 1) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -75,7 +75,7 @@ export class EmailRandomizer {
|
|||||||
domain: string,
|
domain: string,
|
||||||
options?: { numberOfWords?: number; words?: Array<string> },
|
options?: { numberOfWords?: number; words?: Array<string> },
|
||||||
) {
|
) {
|
||||||
const emailDomain = domain?.startsWith("@") ? domain.substring(1, Infinity) : domain ?? "";
|
const emailDomain = domain?.startsWith("@") ? domain.substring(1, Infinity) : (domain ?? "");
|
||||||
if (emailDomain.length < 1) {
|
if (emailDomain.length < 1) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ export class PassphraseGeneratorOptionsEvaluator
|
|||||||
const wordSeparator =
|
const wordSeparator =
|
||||||
options.wordSeparator === ""
|
options.wordSeparator === ""
|
||||||
? ""
|
? ""
|
||||||
: options.wordSeparator?.[0] ?? DefaultPassphraseGenerationOptions.wordSeparator;
|
: (options.wordSeparator?.[0] ?? DefaultPassphraseGenerationOptions.wordSeparator);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...options,
|
...options,
|
||||||
|
|||||||
@@ -32,11 +32,11 @@ export class EffUsernameGeneratorStrategy
|
|||||||
// algorithm
|
// algorithm
|
||||||
async generate(options: EffUsernameGenerationOptions) {
|
async generate(options: EffUsernameGenerationOptions) {
|
||||||
const casing =
|
const casing =
|
||||||
options.wordCapitalize ?? DefaultEffUsernameOptions.wordCapitalize
|
(options.wordCapitalize ?? DefaultEffUsernameOptions.wordCapitalize)
|
||||||
? "TitleCase"
|
? "TitleCase"
|
||||||
: "lowercase";
|
: "lowercase";
|
||||||
const digits =
|
const digits =
|
||||||
options.wordIncludeNumber ?? DefaultEffUsernameOptions.wordIncludeNumber
|
(options.wordIncludeNumber ?? DefaultEffUsernameOptions.wordIncludeNumber)
|
||||||
? UsernameDigits.enabled
|
? UsernameDigits.enabled
|
||||||
: UsernameDigits.disabled;
|
: UsernameDigits.disabled;
|
||||||
const word = await this.randomizer.randomWords({ numberOfWords: 1, casing, digits });
|
const word = await this.randomizer.randomWords({ numberOfWords: 1, casing, digits });
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
[formGroupName]="i"
|
[formGroupName]="i"
|
||||||
class="tw-flex tw-p-3 -tw-mx-3 tw-gap-4 tw-bg-background tw-rounded-lg first:-tw-mt-3 last-of-type:tw-mb-3"
|
class="tw-flex tw-p-3 -tw-mx-3 tw-gap-4 tw-bg-background tw-rounded-lg first:-tw-mt-3 last-of-type:tw-mb-3"
|
||||||
[ngClass]="{
|
[ngClass]="{
|
||||||
'tw-items-center': field.value.type === FieldType.Boolean
|
'tw-items-center': field.value.type === FieldType.Boolean,
|
||||||
}"
|
}"
|
||||||
[attr.data-testid]="field.value.name + '-entry'"
|
[attr.data-testid]="field.value.name + '-entry'"
|
||||||
cdkDrag
|
cdkDrag
|
||||||
|
|||||||
9
package-lock.json
generated
9
package-lock.json
generated
@@ -162,7 +162,7 @@
|
|||||||
"node-ipc": "9.2.1",
|
"node-ipc": "9.2.1",
|
||||||
"postcss": "8.4.38",
|
"postcss": "8.4.38",
|
||||||
"postcss-loader": "8.1.1",
|
"postcss-loader": "8.1.1",
|
||||||
"prettier": "3.2.2",
|
"prettier": "3.3.3",
|
||||||
"prettier-plugin-tailwindcss": "0.6.5",
|
"prettier-plugin-tailwindcss": "0.6.5",
|
||||||
"process": "0.11.10",
|
"process": "0.11.10",
|
||||||
"react": "18.3.1",
|
"react": "18.3.1",
|
||||||
@@ -32712,10 +32712,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/prettier": {
|
"node_modules/prettier": {
|
||||||
"version": "3.2.2",
|
"version": "3.3.3",
|
||||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.2.tgz",
|
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
|
||||||
"integrity": "sha512-HTByuKZzw7utPiDO523Tt2pLtEyK7OibUD9suEJQrPUCYQqrHr74GGX6VidMrovbf/I50mPqr8j/II6oBAuc5A==",
|
"integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"bin": {
|
"bin": {
|
||||||
"prettier": "bin/prettier.cjs"
|
"prettier": "bin/prettier.cjs"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -124,7 +124,7 @@
|
|||||||
"node-ipc": "9.2.1",
|
"node-ipc": "9.2.1",
|
||||||
"postcss": "8.4.38",
|
"postcss": "8.4.38",
|
||||||
"postcss-loader": "8.1.1",
|
"postcss-loader": "8.1.1",
|
||||||
"prettier": "3.2.2",
|
"prettier": "3.3.3",
|
||||||
"prettier-plugin-tailwindcss": "0.6.5",
|
"prettier-plugin-tailwindcss": "0.6.5",
|
||||||
"process": "0.11.10",
|
"process": "0.11.10",
|
||||||
"react": "18.3.1",
|
"react": "18.3.1",
|
||||||
|
|||||||
Reference in New Issue
Block a user