{"version":3,"file":"yunzai-widgets.mjs","sources":["../../../../packages/bis/yunzai-widgets/yunzai-clear-storage.component.ts","../../../../packages/bis/yunzai-widgets/yunzai-fullscreen.component.ts","../../../../packages/bis/yunzai-widgets/yunzai-notify.component.ts","../../../../packages/bis/yunzai-widgets/yunzai-i18n.component.ts","../../../../packages/bis/yunzai-widgets/yunzai-user.component.ts","../../../../packages/bis/yunzai-widgets/yunzai-widget.module.ts","../../../../packages/bis/yunzai-widgets/yunzai-widgets.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, HostListener, inject } from '@angular/core';\n\nimport { I18nPipe } from '@yelon/theme';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzModalService } from 'ng-zorro-antd/modal';\n\n@Component({\n  selector: 'yunzai-header-clear-storage',\n  template: `\n    <nz-icon nzType=\"tool\" nzTheme=\"outline\"></nz-icon>\n    {{ 'menu.clear.local.storage' | i18n }}\n  `,\n  host: {\n    '[class.flex-1]': 'true'\n  },\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  imports: [NzIconModule, I18nPipe]\n})\nexport class YunzaiHeaderClearStorageComponent {\n  private readonly modalSrv = inject(NzModalService);\n  private readonly messageSrv = inject(NzMessageService);\n\n  @HostListener('click')\n  _click(): void {\n    this.modalSrv.confirm({\n      nzTitle: 'Make sure clear all local storage?',\n      nzOnOk: () => {\n        localStorage.clear();\n        this.messageSrv.success('Clear Finished!');\n      }\n    });\n  }\n}\n","import { ChangeDetectionStrategy, Component, HostListener } from '@angular/core';\n\nimport screenfull from 'screenfull';\n\nimport { I18nPipe } from '@yelon/theme';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\n@Component({\n  selector: 'yunzai-header-fullscreen',\n  template: `\n    <nz-icon [nzType]=\"status ? 'fullscreen-exit' : 'fullscreen'\" nzTheme=\"outline\"></nz-icon>\n    {{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}\n  `,\n  host: {\n    '[class.flex-1]': 'true'\n  },\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  imports: [NzIconModule, I18nPipe]\n})\nexport class YunzaiHeaderFullScreenComponent {\n  status = false;\n\n  @HostListener('window:resize')\n  _resize(): void {\n    this.status = screenfull.isFullscreen;\n  }\n\n  @HostListener('click')\n  _click(): void {\n    if (screenfull.isEnabled) {\n      screenfull.toggle();\n    }\n  }\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, OnDestroy, OnInit } from '@angular/core';\nimport { forkJoin, map, Observable, Subscription } from 'rxjs';\n\nimport { formatDistanceToNow } from 'date-fns';\n\nimport { NoticeIconModule, NoticeIconSelect, NoticeItem } from '@yelon/abc/notice-icon';\nimport { _HttpClient, YUNZAI_I18N_TOKEN, YunzaiHttpI18NService } from '@yelon/theme';\nimport { WINDOW } from '@yelon/util';\nimport { NzI18nService } from 'ng-zorro-antd/i18n';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\n@Component({\n  selector: `yunzai-header-notify`,\n  template: `\n    <notice-icon\n      [data]=\"data\"\n      [count]=\"count\"\n      [loading]=\"loading\"\n      btnClass=\"yunzai-default__nav-item\"\n      btnIconClass=\"yunzai-default__nav-item-icon\"\n      (select)=\"select($event)\"\n      (clear)=\"clear($event)\"\n    />\n  `,\n  imports: [NoticeIconModule],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class YunzaiHeaderNotifyComponent implements OnInit, OnDestroy {\n  private readonly i18n = inject<YunzaiHttpI18NService>(YUNZAI_I18N_TOKEN);\n  private readonly msg = inject(NzMessageService);\n  private readonly nzI18n = inject(NzI18nService);\n  private readonly cdr = inject(ChangeDetectorRef);\n  private readonly http = inject(_HttpClient);\n  private readonly win = inject(WINDOW);\n  loading = false;\n  count = 0;\n  subs: Subscription[] = [];\n  data: NoticeItem[] = [\n    {\n      key: 'msg',\n      title: this.i18n.fanyi('notify.message'),\n      list: [],\n      emptyText: this.i18n.fanyi('notify.message.empty'),\n      emptyImage: './assets/tmp/img/message.svg',\n      clearText: this.i18n.fanyi('notify.message.clear')\n    },\n    {\n      key: 'todo',\n      title: this.i18n.fanyi('notify.todo'),\n      list: [],\n      emptyText: this.i18n.fanyi('notify.todo.empty'),\n      emptyImage: './assets/tmp/img/todo.svg',\n      clearText: this.i18n.fanyi('notify.todo.clear')\n    },\n    {\n      key: 'notice',\n      title: this.i18n.fanyi('notify.notice'),\n      list: [],\n      emptyText: this.i18n.fanyi('notify.notice.empty'),\n      emptyImage: './assets/tmp/img/notice.svg',\n      clearText: this.i18n.fanyi('notify.notice.clear')\n    }\n  ];\n\n  ngOnInit(): void {\n    this.loadData();\n  }\n\n  loadData(): void {\n    this.count = 0;\n    this.loading = true;\n    this.subs.push(\n      forkJoin([this.loadTodo(), this.loadMessage()]).subscribe({\n        next: () => {\n          this.loading = false;\n          this.cdr.detectChanges();\n        },\n        error: err => {\n          console.error('Error loading data', err);\n          this.loading = false;\n          this.cdr.detectChanges();\n        }\n      })\n    );\n  }\n\n  loadMessage(): Observable<void> {\n    const formatMessageStatus = (status: string): any => {\n      switch (status) {\n        case '0':\n          return { extra: this.i18n.fanyi('notify.unread'), color: 'red' };\n        case '1':\n          return { extra: this.i18n.fanyi('notify.readed'), color: 'green' };\n        default:\n          return { extra: this.i18n.fanyi('notify.nostatus'), color: 'primary' };\n      }\n    };\n    return this.http\n      .post(`/message-center-3/my-msg-and-todo/msg-list`, {\n        pageNum: 1,\n        pageSize: 10,\n        status: '0'\n      })\n      .pipe(\n        map((response: any) => {\n          const viewMessage = this.data.filter(d => d.key === 'msg')[0];\n          viewMessage.list = response.data.list.map((m: any) => {\n            return {\n              ...m,\n              avatar: m?.imgUrl || './assets/tmp/img/message.png',\n              title: m.systemName,\n              description: m.content,\n              extra: formatMessageStatus(m.status).extra,\n              color: formatMessageStatus(m.status).color,\n              datetime: formatDistanceToNow(new Date(m.date), { locale: this.nzI18n.getDateLocale() })\n            };\n          });\n          this.count += viewMessage.list.length;\n        })\n      );\n  }\n\n  loadTodo(): Observable<void> {\n    const formatTodoStatus = (status: string): any => {\n      switch (status) {\n        case '0':\n          return { extra: this.i18n.fanyi('notify.unstart'), color: 'red' };\n        case '1':\n          return { extra: this.i18n.fanyi('notify.started'), color: 'green' };\n        default:\n          return { extra: this.i18n.fanyi('notify.nostatus'), color: 'primary' };\n      }\n    };\n    return this.http\n      .post(`/message-center-3/my-msg-and-todo/todo-list`, {\n        pageNum: 1,\n        pageSize: 10,\n        status: '0'\n      })\n      .pipe(\n        map((response: any) => {\n          const viewTodo = this.data.filter(d => d.key === 'todo')[0];\n          viewTodo.list = response.data.list.map((t: any) => {\n            return {\n              ...t,\n              avatar: t?.imgUrl || './assets/tmp/img/todo.png',\n              title: t.systemName,\n              description: t.content,\n              datetime: formatDistanceToNow(new Date(t.date), { locale: this.nzI18n.getDateLocale() }),\n              extra: formatTodoStatus(t.status).extra,\n              color: formatTodoStatus(t.status).color\n            };\n          });\n          this.count += viewTodo.list.length;\n        })\n      );\n  }\n\n  clear(type: string): void {\n    const t = this.data.filter(d => d.title === type)[0];\n    if (t.key == 'msg' || t.key == 'notice') {\n      this.subs.push(\n        this.http.post(`/message-center-3/my-msg-and-todo/msg-clear`, {}).subscribe(() => {\n          this.msg.success(`${this.i18n.fanyi('notify.clear')} ${type}`);\n          this.loadData();\n        })\n      );\n    }\n    if (t.key == 'todo') {\n      this.loadData();\n    }\n  }\n\n  select(res: NoticeIconSelect): void {\n    this.win.open(res.item.url);\n    this.loadData();\n  }\n\n  ngOnDestroy(): void {\n    this.subs.forEach(a => a.unsubscribe());\n  }\n}\n","import { CommonModule, DOCUMENT } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, inject, Input, OnDestroy, OnInit } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { I18nPipe, SettingsService, YUNZAI_I18N_TOKEN, YunzaiHttpI18NService, YunzaiI18NType } from '@yelon/theme';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\n@Component({\n  selector: `yunzai-header-i18n`,\n  template: `\n    @if (showLangText) {\n      <div nz-dropdown [nzDropdownMenu]=\"langMenu\" nzPlacement=\"bottomRight\">\n        <nz-icon nzType=\"global\" nzTheme=\"outline\"></nz-icon>\n        {{ 'lang.nav' | i18n }}\n        <nz-icon nzType=\"down\" nzTheme=\"outline\"></nz-icon>\n      </div>\n    } @else {\n      <i\n        nz-dropdown\n        [nzDropdownMenu]=\"langMenu\"\n        nzPlacement=\"bottomRight\"\n        nz-icon\n        nzType=\"global\"\n        nzTheme=\"outline\"\n      ></i>\n    }\n    <nz-dropdown-menu data-event-id=\"_nav_lang\" #langMenu=\"nzDropdownMenu\">\n      <ul nz-menu>\n        @for (item of langs; track item) {\n          <li\n            data-event-id=\"_nav_lang\"\n            [attr.data-text]=\"item.text\"\n            nz-menu-item\n            [nzSelected]=\"item.code === curLangCode\"\n            (click)=\"change(item.code)\"\n          >\n            @if (!item.icon) {\n              <span role=\"img\" [attr.aria-label]=\"item.text\" class=\"pr-xs\">{{ item.abbr }}</span>\n            } @else {\n              <img\n                style=\"margin-right:4px\"\n                width=\"50px\"\n                height=\"30px\"\n                [src]=\"'data:image/png;base64,' + item.icon\"\n                [alt]=\"item.abbr\"\n                class=\"pr-xs\"\n              />\n            }\n            {{ item.text }}\n          </li>\n        }\n      </ul>\n    </nz-dropdown-menu>\n  `,\n  host: {\n    '[class.flex-1]': 'true'\n  },\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  imports: [NzDropDownModule, NzIconModule, I18nPipe, CommonModule]\n})\nexport class YunzaiHeaderI18nComponent implements OnInit, OnDestroy {\n  private readonly settings = inject(SettingsService);\n  private readonly i18n = inject<YunzaiHttpI18NService>(YUNZAI_I18N_TOKEN);\n  private readonly doc = inject(DOCUMENT);\n  langs: YunzaiI18NType[] = [];\n  private destroy$: Subject<any> = new Subject<any>();\n  /** Whether to display language text */\n  @Input({ transform: booleanAttribute }) showLangText = true;\n\n  get curLangCode(): string {\n    return this.settings.layout.lang;\n  }\n  ngOnInit(): void {\n    this.i18n\n      .getLangs()\n      .pipe(takeUntil(this.destroy$))\n      .subscribe(langs => {\n        this.langs = langs;\n      });\n  }\n\n  change(lang: string): void {\n    const spinEl = this.doc.createElement('div');\n    spinEl.setAttribute('class', `page-loading ant-spin ant-spin-lg ant-spin-spinning`);\n    spinEl.innerHTML = `<span class=\"ant-spin-dot ant-spin-dot-spin\"><i></i><i></i><i></i><i></i></span>`;\n    this.doc.body.appendChild(spinEl);\n\n    this.i18n.loadLangData(lang).subscribe(res => {\n      this.i18n.use(lang, res);\n      this.settings.setLayout('lang', lang);\n      setTimeout(() => this.doc.location.reload());\n    });\n  }\n  ngOnDestroy(): void {\n    this.destroy$.complete();\n  }\n}\n","import { ChangeDetectionStrategy, Component, inject, OnInit } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { YA_SERVICE_TOKEN } from '@yelon/auth';\nimport { mergeBisConfig } from '@yelon/bis/config';\nimport { I18nPipe } from '@yelon/theme';\nimport {\n  useLocalStorageProjectInfo,\n  useLocalStorageUser,\n  WINDOW,\n  YunzaiBusinessConfig,\n  YunzaiConfigService\n} from '@yelon/util';\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\nexport interface UserLink {\n  icon: string;\n  name: string;\n  url: string;\n}\n\n@Component({\n  selector: `yunzai-header-user`,\n  template: `\n    <div\n      class=\"yunzai-default__nav-item d-flex align-items-center px-sm\"\n      data-event-id=\"_nav_user\"\n      nz-dropdown\n      nzPlacement=\"bottomRight\"\n      [nzDropdownMenu]=\"userMenu\"\n    >\n      <div class=\"yz-user-name\">\n        <nz-avatar [nzSrc]=\"icon\" nzSize=\"small\" class=\"mr-sm\" />\n        {{ username }}\n      </div>\n    </div>\n    <nz-dropdown-menu #userMenu=\"nzDropdownMenu\">\n      <div nz-menu class=\"width-sm\">\n        @for (m of menus; track m) {\n          <div data-event-id=\"_nav_user\" [attr.data-name]=\"m.name | i18n\" nz-menu-item (click)=\"to(m.url)\">\n            <nz-icon [nzType]=\"m.icon\" class=\"mr-sm\"></nz-icon>\n            {{ m.name | i18n }}\n          </div>\n        }\n        <li nz-menu-divider></li>\n        <div data-event-id=\"_nav_user\" data-name=\"注销登录\" nz-menu-item (click)=\"logout()\">\n          <nz-icon nzType=\"logout\" class=\"mr-sm\"></nz-icon>\n          {{ 'logout' | i18n }}\n        </div>\n      </div>\n    </nz-dropdown-menu>\n  `,\n  imports: [NzDropDownModule, I18nPipe, NzIconModule, NzAvatarModule, RouterModule],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class YunzaiHeaderUserComponent implements OnInit {\n  private readonly msg = inject(NzMessageService);\n  private readonly tokenService = inject(YA_SERVICE_TOKEN);\n  private readonly configService = inject(YunzaiConfigService);\n  private readonly config: YunzaiBusinessConfig = mergeBisConfig(this.configService);\n  private readonly win = inject(WINDOW);\n\n  icon: string = '';\n  username: string = '';\n  menus: UserLink[] = [];\n\n  ngOnInit(): void {\n    const [, getProjectInfo] = useLocalStorageProjectInfo();\n    const [, getUser] = useLocalStorageUser();\n    const projectInfo = getProjectInfo()!;\n    const user = getUser()!;\n    this.username = user.realname ? user.realname : '未命名';\n    this.icon = user.avatarId\n      ? `${this.config.baseUrl}/filecenter/file/${user.avatarId}`\n      : `./assets/tmp/img/avatar.jpg`;\n    this.menus = projectInfo.profileList as UserLink[];\n  }\n\n  logout(): void {\n    localStorage.clear();\n    this.tokenService.clear();\n    this.win.location.href = `${this.config.baseUrl}/cas-proxy/app/logout?callback=${encodeURIComponent(this.win.location.href)}`;\n  }\n\n  to(href: string): void {\n    if (href) {\n      this.win.open(href);\n    } else {\n      this.msg.error('该菜单没有配置链接!');\n    }\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { NoticeIconModule } from '@yelon/abc/notice-icon';\nimport { I18nPipe } from '@yelon/theme';\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { YunzaiHeaderClearStorageComponent } from './yunzai-clear-storage.component';\nimport { YunzaiHeaderFullScreenComponent } from './yunzai-fullscreen.component';\nimport { YunzaiHeaderI18nComponent } from './yunzai-i18n.component';\nimport { YunzaiHeaderNotifyComponent } from './yunzai-notify.component';\nimport { YunzaiHeaderUserComponent } from './yunzai-user.component';\n\nconst COMPONENTS = [\n  YunzaiHeaderClearStorageComponent,\n  YunzaiHeaderFullScreenComponent,\n  YunzaiHeaderNotifyComponent,\n  YunzaiHeaderI18nComponent,\n  YunzaiHeaderUserComponent\n];\n\n@NgModule({\n  imports: [\n    NzAvatarModule,\n    RouterModule,\n    NoticeIconModule,\n    NzDropDownModule,\n    CommonModule,\n    NzIconModule,\n    I18nPipe,\n    ...COMPONENTS\n  ],\n  exports: COMPONENTS\n})\nexport class YunzaiWidgetsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i3"],"mappings":"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"}