diff --git a/npm/ng-packs/packages/core/src/lib/services/index.ts b/npm/ng-packs/packages/core/src/lib/services/index.ts index fefc9931eb..8ccf802cb7 100644 --- a/npm/ng-packs/packages/core/src/lib/services/index.ts +++ b/npm/ng-packs/packages/core/src/lib/services/index.ts @@ -19,3 +19,4 @@ export * from './session-state.service'; export * from './subscription.service'; export * from './track-by.service'; export * from './local-storage.service'; +export * from './window.service'; diff --git a/npm/ng-packs/packages/core/src/lib/services/window.service.ts b/npm/ng-packs/packages/core/src/lib/services/window.service.ts new file mode 100644 index 0000000000..1598143016 --- /dev/null +++ b/npm/ng-packs/packages/core/src/lib/services/window.service.ts @@ -0,0 +1,12 @@ +import { Injectable, inject } from '@angular/core'; +import { DOCUMENT } from '@angular/common'; + +@Injectable({ providedIn: 'root' }) +export class AbpWindowService { + protected readonly window = inject(DOCUMENT).defaultView; + protected readonly navigator = this.window.navigator; + + copyToClipboard(text: string): Promise { + return this.navigator.clipboard.writeText(text); + } +}