ngx-tethys 19.1.4 → 19.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [19.1.5](https://github.com/atinc/ngx-tethys/compare/19.1.4...19.1.5) (2025-09-24)
6
+
7
+
8
+ ### Features
9
+
10
+ * **notify:** 通知支持多语言 #TINFR-2899 ([#3566](https://github.com/atinc/ngx-tethys/issues/3566)) ([9f08fe9](https://github.com/atinc/ngx-tethys/commit/9f08fe9e5b0520b760e0e98f19ca1c619cf3ab3f)), closes [#TINFR-2899](https://github.com/atinc/ngx-tethys/issues/TINFR-2899)
11
+
12
+
13
+
5
14
  ## [19.1.4](https://github.com/atinc/ngx-tethys/compare/19.1.3...19.1.4) (2025-09-23)
6
15
 
7
16
 
@@ -180,6 +180,13 @@ var zhHansLocale = {
180
180
  prev: '上一张',
181
181
  next: '下一张'
182
182
  },
183
+ notify: {
184
+ success: '成功',
185
+ warning: '警告',
186
+ error: '错误',
187
+ info: '提示',
188
+ detail: '详情'
189
+ },
183
190
  shared: {
184
191
  comma: ','
185
192
  }
@@ -334,6 +341,13 @@ var zhHantLocale = {
334
341
  prev: '上一張',
335
342
  next: '下一張'
336
343
  },
344
+ notify: {
345
+ success: '成功',
346
+ warning: '警告',
347
+ error: '錯誤',
348
+ info: '提示',
349
+ detail: '詳情'
350
+ },
337
351
  shared: {
338
352
  comma: ','
339
353
  }
@@ -488,6 +502,13 @@ var enUsLocale = {
488
502
  prev: 'Previous',
489
503
  next: 'Next'
490
504
  },
505
+ notify: {
506
+ success: 'Success',
507
+ warning: 'Warning',
508
+ error: 'Error',
509
+ info: 'Tip',
510
+ detail: 'More'
511
+ },
491
512
  shared: {
492
513
  comma: ','
493
514
  }
@@ -663,6 +684,13 @@ var jaJpLocale = {
663
684
  prev: '前の画像',
664
685
  next: '次の画像'
665
686
  },
687
+ notify: {
688
+ success: '成功',
689
+ warning: '警告',
690
+ error: 'エラー',
691
+ info: '情報',
692
+ detail: '詳細'
693
+ },
666
694
  shared: {
667
695
  comma: ','
668
696
  }
@@ -817,6 +845,13 @@ var deDeLocale = {
817
845
  prev: 'Vorherige',
818
846
  next: 'Nächste'
819
847
  },
848
+ notify: {
849
+ success: 'Erfolg',
850
+ warning: 'Warnung',
851
+ error: 'Fehler',
852
+ info: 'Hinweis',
853
+ detail: 'Details'
854
+ },
820
855
  shared: {
821
856
  comma: ','
822
857
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-i18n.mjs","sources":["../../../src/i18n/i18n.ts","../../../src/i18n/i18n.token.ts","../../../src/i18n/util.ts","../../../src/i18n/locales/zh-hans.ts","../../../src/i18n/locales/zh-hant.ts","../../../src/i18n/locales/en-us.ts","../../../src/i18n/locales/ja-jp.ts","../../../src/i18n/locales/de-de.ts","../../../src/i18n/i18n.service.ts","../../../src/i18n/locale.ts","../../../src/i18n/ngx-tethys-i18n.ts"],"sourcesContent":["export type ThyModuleType =\n | 'datePicker'\n | 'layout'\n | 'dateRange'\n | 'timePicker'\n | 'calendar'\n | 'autocomplete'\n | 'transfer'\n | 'colorPicker'\n | 'strength'\n | 'guider'\n | 'copy'\n | 'nav'\n | 'dialog'\n | 'select'\n | 'treeSelect'\n | 'cascader'\n | 'pagination'\n | 'form'\n | 'empty'\n | 'image'\n | 'shared';\n\nexport type ThyModuleLocaleType<K extends ThyModuleType> = ThyI18nLocale[K];\n\nexport enum ThyLocaleType {\n zhHans = 'zh-hans',\n zhHant = 'zh-hant',\n enUs = 'en-us',\n jaJp = 'ja-jp',\n deDe = 'de-de'\n}\n\nexport interface ThyI18nLocale {\n id: ThyLocaleType;\n layout: ThyLayoutLocale;\n datePicker: ThyDatePickerLocale;\n dateRange: ThyDateRangeLocale;\n timePicker: ThyTimePickerLocale;\n calendar: ThyCalendarLocale;\n autocomplete: ThyAutoCompleteLocale;\n transfer: ThyTransferLocale;\n colorPicker: ThyColorPickerLocale;\n strength: ThyStrengthLocale;\n guider: ThyGuiderLocale;\n copy: ThyCopyLocale;\n nav: ThyNavLocale;\n dialog: ThyDialogLocale;\n select: ThySelectLocale;\n treeSelect: ThyTreeSelectLocale;\n cascader: ThyCascaderLocale;\n pagination: ThyPaginationLocale;\n form: ThyFormLocale;\n empty: ThyEmptyLocale;\n image: ThyImageLocale;\n shared: ThySharedLocale;\n}\n\nexport interface ThyLayoutLocale {\n collapse: string;\n expand: string;\n}\n\nexport interface ThyDatePickerLocale {\n yearFormat: string;\n monthFormat: string;\n weekFormat: string;\n fullWeekFormat: string;\n weekThFormat: string;\n dateFormat: string;\n\n yearQuarterFormat: string;\n yearMonthFormat: string;\n\n yearText: string;\n quarterText: string;\n monthText: string;\n week: string;\n prefixWeek: string;\n\n previousYear: string;\n nextYear: string;\n previousMonth: string;\n nextMonth: string;\n\n today: string;\n tomorrow: string;\n nextWeek: string;\n lastSevenDays: string;\n lastThirtyDays: string;\n currentMonth: string;\n currentWeek: string;\n\n advance: string;\n custom: string;\n\n startDate: string;\n endDate: string;\n\n setTime: string;\n placeholder: string;\n\n ok: string;\n clear: string;\n}\n\nexport interface ThyDateRangeLocale {\n custom: string;\n currentWeek: string;\n currentMonth: string;\n}\n\nexport interface ThyTimePickerLocale {\n placeholder: string;\n now: string;\n ok: string;\n}\n\nexport interface ThyCalendarLocale {\n today: string;\n yearMonthFormat: string;\n}\n\nexport interface ThyAutoCompleteLocale {\n empty: string;\n}\n\nexport interface ThyTransferLocale {\n maxLimit: string;\n maxLockLimit: string;\n unlocked: string;\n}\n\nexport interface ThyColorPickerLocale {\n defaultColor: string;\n noFillColor: string;\n recentUsedColor: string;\n customColor: string;\n none: string;\n}\n\nexport interface ThyStrengthLocale {\n highest: string;\n high: string;\n medium: string;\n low: string;\n}\n\nexport interface ThyGuiderLocale {\n skip: string;\n prev: string;\n next: string;\n finish: string;\n}\n\nexport interface ThyCopyLocale {\n tips: string;\n success: string;\n error: string;\n}\n\nexport interface ThyNavLocale {\n more: string;\n}\n\nexport interface ThyDialogLocale {\n title: string;\n ok: string;\n cancel: string;\n}\n\nexport interface ThySelectLocale {\n placeholder: string;\n empty: string;\n}\n\nexport interface ThyTreeSelectLocale {\n placeholder: string;\n empty: string;\n}\n\nexport interface ThyCascaderLocale {\n placeholder: string;\n empty: string;\n}\n\nexport interface ThyPaginationLocale {\n page: string;\n order: string;\n total: string;\n totalCount: string;\n jumpTo: string;\n firstPage: string;\n lastPage: string;\n defaultUnit: string;\n}\n\nexport interface ThyFormLocale {\n required: string;\n maxlength: string;\n minlength: string;\n uniqueCheck: string;\n email: string;\n confirm: string;\n pattern: string;\n number: string;\n url: string;\n max: string;\n min: string;\n}\n\nexport interface ThyEmptyLocale {\n noDataText: string;\n}\n\nexport interface ThyImageLocale {\n zoomOut: string;\n zoomIn: string;\n originalSize: string;\n fitToScreen: string;\n fullScreen: string;\n spin: string;\n download: string;\n viewOriginal: string;\n copyLink: string;\n exitPreview: string;\n exitFullScreen: string;\n copySuccess: string;\n copyError: string;\n prev: string;\n next: string;\n}\n\nexport interface ThySharedLocale {\n comma: string;\n}\n","import { InjectionToken } from '@angular/core';\nimport { ThyI18nLocale, ThyLocaleType } from './i18n';\n\n// Support configure the default locale id\nexport const THY_I18N_LOCALE_ID = new InjectionToken<ThyLocaleType>('thy-i18n-locale-id');\n\n// Support rewrite language package\nexport const THY_I18N_ZH_HANS = new InjectionToken<ThyI18nLocale>('thy-i18n-zh-hans');\nexport const THY_I18N_ZH_HANT = new InjectionToken<ThyI18nLocale>('thy-i18n-zh-hant');\nexport const THY_I18N_EN_US = new InjectionToken<ThyI18nLocale>('thy-i18n-en-us');\nexport const THY_I18N_JA_JP = new InjectionToken<ThyI18nLocale>('thy-i18n-ja-jp');\nexport const THY_I18N_DE_DE = new InjectionToken<ThyI18nLocale>('thy-i18n-de-de');\n","import { ThyLocaleType } from './i18n';\n\nexport function normalizeLocale(localeId: string): ThyLocaleType {\n return localeId?.toLowerCase().replace(/_/g, '-') as ThyLocaleType;\n}\n\nexport function getDefaultLocaleId(): ThyLocaleType {\n let defaultLocaleId = ThyLocaleType.zhHans;\n const allLocales = [ThyLocaleType.zhHans, ThyLocaleType.zhHant, ThyLocaleType.enUs, ThyLocaleType.jaJp, ThyLocaleType.deDe];\n if (typeof window !== 'undefined' && window?.navigator?.language) {\n defaultLocaleId = window.navigator?.language?.toLowerCase() as ThyLocaleType;\n }\n return allLocales.includes(normalizeLocale(defaultLocaleId) as ThyLocaleType) ? defaultLocaleId : ThyLocaleType.zhHans;\n}\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.zhHans,\n layout: {\n expand: '展开',\n collapse: '收起'\n },\n datePicker: {\n yearFormat: 'yyyy年', // Used in header of month picker\n monthFormat: 'MMM', // Used in header of date picker, advanced range picker (2月)\n weekFormat: 'EEEEE', // Used in date picker table (六)\n fullWeekFormat: 'EE', // Used in calendar (周六)\n weekThFormat: 'yyyy-ww周', // Used in week picker\n dateFormat: 'yyyy年MM月dd日',\n\n yearQuarterFormat: \"yyyy年 'Q'q\",\n yearMonthFormat: 'yyyy年 MM月',\n\n yearText: '年份',\n quarterText: '季度',\n monthText: '月份',\n week: '周',\n prefixWeek: '周',\n\n previousYear: '上一年',\n nextYear: '下一年',\n previousMonth: '上个月',\n nextMonth: '下个月',\n\n today: '今天',\n tomorrow: '明天',\n nextWeek: '下周',\n lastSevenDays: '最近 7 天',\n lastThirtyDays: '最近 30 天',\n currentMonth: '本月',\n currentWeek: '本周',\n\n advance: '高级选项',\n custom: '自定义',\n\n startDate: '开始日期',\n endDate: '结束日期',\n\n setTime: '设置时间',\n placeholder: '选择日期',\n\n ok: '确定',\n clear: '清除'\n },\n dateRange: {\n custom: '自定义',\n currentWeek: '本周',\n currentMonth: '本月'\n },\n timePicker: {\n placeholder: '选择时间',\n now: '此刻',\n ok: '确定'\n },\n calendar: {\n today: '今天',\n yearMonthFormat: 'yyyy年MM月'\n },\n autocomplete: {\n empty: '暂无数据'\n },\n transfer: {\n maxLimit: '(上限{max}个)',\n maxLockLimit: '锁定 (上限{maxLock}个)',\n unlocked: '未锁定'\n },\n colorPicker: {\n defaultColor: '默认颜色',\n noFillColor: '无填充色',\n recentUsedColor: '最近使用自定义颜色',\n customColor: '自定义颜色',\n none: '暂无'\n },\n strength: {\n highest: '最高',\n high: '高',\n medium: '中',\n low: '低'\n },\n guider: {\n skip: '跳过',\n prev: '上一步',\n next: '下一步',\n finish: '完成'\n },\n copy: {\n tips: '点击复制',\n success: '复制成功',\n error: '复制失败'\n },\n nav: {\n more: '更多'\n },\n dialog: {\n title: '确认删除',\n ok: '确定',\n cancel: '取消'\n },\n select: {\n placeholder: '请选择',\n empty: '暂无数据'\n },\n treeSelect: {\n placeholder: '请选择',\n empty: '暂无数据'\n },\n cascader: {\n placeholder: '请选择',\n empty: '暂无数据'\n },\n pagination: {\n page: '页',\n order: '第',\n total: '共',\n totalCount: '共{total}页',\n jumpTo: '跳至',\n firstPage: '第一页',\n lastPage: '最后一页',\n defaultUnit: '条'\n },\n form: {\n required: '该选项不能为空',\n maxlength: '该选项输入值长度不能大于{maxlength}',\n minlength: '该选项输入值长度不能小于{minlength}',\n uniqueCheck: '输入值已经存在,请重新输入',\n email: '输入邮件的格式不正确',\n confirm: '两次输入不一致',\n pattern: '该选项输入格式不正确',\n number: '必须输入数字',\n url: '输入URL格式不正确',\n max: '该选项输入值不能大于{max}',\n min: '该选项输入值不能小于{min}'\n },\n empty: {\n noDataText: '暂无数据'\n },\n image: {\n zoomOut: '缩小',\n zoomIn: '放大',\n originalSize: '原始比例',\n fitToScreen: '适应屏幕',\n fullScreen: '全屏显示',\n spin: '旋转',\n download: '下载',\n viewOriginal: '查看原图',\n copyLink: '复制链接',\n exitPreview: '退出预览',\n exitFullScreen: '退出全屏',\n copySuccess: '复制图片地址成功',\n copyError: '复制图片地址失败',\n prev: '上一张',\n next: '下一张'\n },\n shared: {\n comma: ','\n }\n};\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.zhHant,\n layout: {\n expand: '展開',\n collapse: '收起'\n },\n datePicker: {\n yearFormat: 'yyyy年',\n monthFormat: 'MMM',\n weekFormat: 'EEEEE',\n fullWeekFormat: 'EE',\n weekThFormat: 'yyyy-ww週',\n dateFormat: 'yyyy年MM月dd日',\n\n yearQuarterFormat: \"yyyy年 'Q'q\",\n yearMonthFormat: 'yyyy年 MM月',\n\n yearText: '年份',\n quarterText: '季度',\n monthText: '月份',\n week: '週',\n prefixWeek: '週',\n\n previousYear: '上一年',\n nextYear: '下一年',\n previousMonth: '上個月',\n nextMonth: '下個月',\n\n today: '今天',\n tomorrow: '明天',\n nextWeek: '下週',\n lastSevenDays: '最近 7 天',\n lastThirtyDays: '最近 30 天',\n currentMonth: '本月',\n currentWeek: '本週',\n\n advance: '高級選項',\n custom: '自訂',\n\n startDate: '開始日期',\n endDate: '結束日期',\n\n setTime: '設置時間',\n placeholder: '選擇日期',\n\n ok: '確定',\n clear: '清除'\n },\n dateRange: {\n custom: '自訂',\n currentWeek: '本週',\n currentMonth: '本月'\n },\n timePicker: {\n placeholder: '選擇時間',\n now: '此刻',\n ok: '確定'\n },\n calendar: {\n today: '今天',\n yearMonthFormat: 'yyyy年MM月'\n },\n autocomplete: {\n empty: '暫無數據'\n },\n transfer: {\n maxLimit: '(上限{max}個)',\n maxLockLimit: '鎖定 (上限{maxLock}個)',\n unlocked: '未鎖定'\n },\n colorPicker: {\n defaultColor: '預設顏色',\n noFillColor: '無填充色',\n recentUsedColor: '最近使用自訂顏色',\n customColor: '自訂顏色',\n none: '暫無'\n },\n strength: {\n highest: '最高',\n high: '高',\n medium: '中',\n low: '低'\n },\n guider: {\n skip: '跳過',\n prev: '上一步',\n next: '下一步',\n finish: '完成'\n },\n copy: {\n tips: '點擊複製',\n success: '複製成功',\n error: '複製失敗'\n },\n nav: {\n more: '更多'\n },\n dialog: {\n title: '確認刪除',\n ok: '確定',\n cancel: '取消'\n },\n select: {\n placeholder: '請選擇',\n empty: '暫無數據'\n },\n treeSelect: {\n placeholder: '請選擇',\n empty: '暫無數據'\n },\n cascader: {\n placeholder: '請選擇',\n empty: '暫無數據'\n },\n pagination: {\n page: '頁',\n order: '第',\n total: '共',\n totalCount: '共{total}頁',\n jumpTo: '跳至',\n firstPage: '第一頁',\n lastPage: '最後一頁',\n defaultUnit: '個'\n },\n form: {\n required: '該選項不能为空',\n maxlength: '該選項輸入值長度不能大於{maxlength}',\n minlength: '該選項輸入值長度不能小於{minlength}',\n uniqueCheck: '輸入值已經存在,請重新輸入',\n email: '輸入郵件的格式不正確',\n confirm: '兩次輸入不一致',\n pattern: '該選項輸入格式不正確',\n number: '必須輸入數字',\n url: '輸入URL格式不正確',\n max: '該選項輸入值不能大於{max}',\n min: '該選項輸入值不能小於{min}'\n },\n empty: {\n noDataText: '暫無資料'\n },\n image: {\n zoomOut: '縮小',\n zoomIn: '放大',\n originalSize: '原始比例',\n fitToScreen: '適應屏幕',\n fullScreen: '全屏顯示',\n spin: '旋轉',\n download: '下載',\n viewOriginal: '查看原圖',\n copyLink: '複製連結',\n exitPreview: '退出預覽',\n exitFullScreen: '退出全屏',\n copySuccess: '複製圖片地址成功',\n copyError: '複製圖片地址失敗',\n prev: '上一張',\n next: '下一張'\n },\n shared: {\n comma: ','\n }\n};\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.enUs,\n layout: {\n expand: 'Expand',\n collapse: 'Collapse'\n },\n datePicker: {\n yearFormat: 'yyyy', // eg. 2025\n monthFormat: 'MMM', // eg. Sep\n weekFormat: 'EEE', // eg. Tue\n fullWeekFormat: 'EEE', // eg. Tue\n weekThFormat: 'yyyy-ww', // eg. 2025-01st、2025-02nd、2025-03rd、2025-27th\n dateFormat: 'yyyy-MM-dd', // eg. 2025-09-02\n\n yearQuarterFormat: \"yyyy-'Q'q\",\n yearMonthFormat: 'yyyy-MM',\n\n yearText: 'Year',\n quarterText: 'Quarter',\n monthText: 'Month',\n week: 'Week',\n prefixWeek: '',\n\n previousYear: 'Previous year',\n nextYear: 'Next year',\n previousMonth: 'Previous month',\n nextMonth: 'Next month',\n\n today: 'Today',\n tomorrow: 'Tomorrow',\n nextWeek: 'Next week',\n lastSevenDays: '7 days',\n lastThirtyDays: '30 days',\n currentMonth: 'This month',\n currentWeek: 'This week',\n\n advance: 'Advance',\n custom: 'Custom',\n\n startDate: 'Start date',\n endDate: 'End date',\n\n setTime: 'Set time',\n placeholder: 'Select date',\n\n ok: 'Ok',\n clear: 'Clear'\n },\n dateRange: {\n custom: 'Custom',\n currentWeek: 'This week',\n currentMonth: 'This month'\n },\n timePicker: {\n placeholder: 'Select time',\n now: 'Now',\n ok: 'Ok'\n },\n calendar: {\n today: 'Today',\n yearMonthFormat: 'yyyy-MM' // eg. 2025-09\n },\n autocomplete: {\n empty: 'No data available'\n },\n transfer: {\n maxLimit: '(Max limit: {max})',\n maxLockLimit: 'Lock (Max limit: {maxLock})',\n unlocked: 'Unlocked'\n },\n colorPicker: {\n defaultColor: 'Default color',\n noFillColor: 'No fill color',\n recentUsedColor: 'Recently used custom color',\n customColor: 'Custom color',\n none: 'None'\n },\n strength: {\n highest: 'Highest',\n high: 'High',\n medium: 'Medium',\n low: 'Low'\n },\n guider: {\n skip: 'Skip',\n prev: 'Previous',\n next: 'Next',\n finish: 'Finish'\n },\n copy: {\n tips: 'Click to copy',\n success: 'Copy succeeded',\n error: 'Copy failed'\n },\n nav: {\n more: 'More'\n },\n dialog: {\n title: 'Confirm',\n ok: 'Ok',\n cancel: 'Cancel'\n },\n select: {\n placeholder: 'Select',\n empty: 'No data available'\n },\n treeSelect: {\n placeholder: 'Select',\n empty: 'No data available'\n },\n cascader: {\n placeholder: 'Select',\n empty: 'No data available'\n },\n pagination: {\n page: 'page',\n order: 'No.',\n total: 'Total: ',\n totalCount: 'Total: {total}',\n jumpTo: 'Go to',\n firstPage: 'First page',\n lastPage: 'Last page',\n defaultUnit: ''\n },\n form: {\n required: 'This option is required',\n maxlength: 'Input cannot exceed {maxlength} characters',\n minlength: 'Input must be at least {minlength} characters',\n uniqueCheck: 'Value already exists, please try again',\n email: 'Invalid email format',\n confirm: 'Inputs do not match',\n pattern: 'Invalid input format',\n number: 'A number is required',\n url: 'Invalid URL format',\n max: 'Input cannot be greater than {max}',\n min: 'Input cannot be less than {min}'\n },\n empty: {\n noDataText: 'No data available'\n },\n image: {\n zoomOut: 'Zoom out',\n zoomIn: 'Zoom in',\n originalSize: 'Original size',\n fitToScreen: 'Fit to screen',\n fullScreen: 'Full screen',\n spin: 'Spin',\n download: 'Download',\n viewOriginal: 'View original',\n copyLink: 'Copy link',\n exitPreview: 'Exit preview',\n exitFullScreen: 'Exit full screen',\n copySuccess: 'Copied successfully',\n copyError: 'Copy failed',\n prev: 'Previous',\n next: 'Next'\n },\n shared: {\n comma: ','\n }\n};\n\n/**\n * Format options:\n * | Field type | Format | Description | Example Value |\n * |--------------------|-------------|--------------------------------------------|---------------------------------|\n * | Year | y | Numeric: minimum digits | 2, 20, 201, 2017, 20173 |\n * | | yy | Numeric: 2 digits + zero padded | 02, 20, 01, 17, 73 |\n * | | yyy | Numeric: 3 digits + zero padded | 002, 020, 201, 2017, 20173 |\n * | | yyyy | Numeric: 4 digits or more + zero padded | 0002, 0020, 0201, 2017, 20173 |\n * | Month | M | Numeric: 1 digit | 9, 12 |\n * | | MM | Numeric: 2 digits + zero padded | 09, 12 |\n * | | MMM | Abbreviated | Sep |\n * | | MMMM | Wide | September |\n * | | MMMMM | Narrow | S |\n * | Week day | E, EE & EEE | Abbreviated | Tue |\n * | | EEEE | Wide | Tuesday |\n * | | EEEEE | Narrow | T |\n * | | EEEEEE | Short | Tu |\n * | ISO Week of year | w | Numeric: minimum digits | 1... 53 |\n * | | ww | Numeric: 2 digits + zero padded | 01... 53 |\n *\n */\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.jaJp,\n layout: {\n expand: '展開',\n collapse: '折りたたみ'\n },\n datePicker: {\n yearFormat: 'yyyy年',\n monthFormat: 'MMM',\n weekFormat: 'EEEEE',\n fullWeekFormat: 'EE',\n weekThFormat: 'yyyy-ww週',\n dateFormat: 'yyyy年MM月dd日',\n\n yearQuarterFormat: \"yyyy-'Q'q\",\n yearMonthFormat: 'yyyy-MM',\n\n yearText: '年',\n quarterText: '四半期',\n monthText: '月',\n week: '週',\n prefixWeek: '週',\n\n previousYear: '昨年',\n nextYear: '来年',\n previousMonth: '先月',\n nextMonth: '来月',\n\n today: '今日',\n tomorrow: '明日',\n nextWeek: '来週',\n lastSevenDays: '過去7日間',\n lastThirtyDays: '過去30日間',\n currentMonth: '今月',\n currentWeek: '今週',\n\n advance: '高度なオプション',\n custom: 'カスタム',\n\n startDate: '開始日',\n endDate: '終了日',\n\n setTime: '時間を設定',\n placeholder: '日付を選択',\n\n ok: '確認',\n clear: 'クリア'\n },\n dateRange: {\n custom: 'カスタム',\n currentWeek: '今週',\n currentMonth: '今月'\n },\n timePicker: {\n placeholder: '時間を選択',\n now: '現在',\n ok: 'もちろん'\n },\n calendar: {\n today: '今日',\n yearMonthFormat: 'yyyy年MM月'\n },\n autocomplete: {\n empty: 'まだデータはありません'\n },\n transfer: {\n maxLimit: '(上限{max}個)',\n maxLockLimit: 'ロック (上限{maxLock}個)',\n unlocked: 'ロック解除'\n },\n colorPicker: {\n defaultColor: 'デフォルトカラー',\n noFillColor: '塗りつぶしなし',\n recentUsedColor: '最近使用したカスタムカラー',\n customColor: 'カスタムカラー',\n none: 'なし'\n },\n strength: {\n highest: '最高',\n high: '高',\n medium: '中',\n low: '低'\n },\n guider: {\n skip: 'スキップ',\n prev: '前へ',\n next: '次へ',\n finish: '完了'\n },\n copy: {\n tips: 'クリックしてコピー',\n success: 'コピー成功',\n error: 'コピー失敗'\n },\n nav: {\n more: 'もっと見る'\n },\n dialog: {\n title: '削除の確認',\n ok: '確認',\n cancel: 'キャンセル'\n },\n select: {\n placeholder: '選択してください',\n empty: 'まだデータはありません'\n },\n treeSelect: {\n placeholder: '選択してください',\n empty: 'まだデータはありません'\n },\n cascader: {\n placeholder: '選択してください',\n empty: 'まだデータはありません'\n },\n pagination: {\n page: 'ページ',\n order: '第',\n total: '合計',\n totalCount: '合計 {total}',\n jumpTo: 'ジャンプ',\n firstPage: '最初のページ',\n lastPage: '最後のページ',\n defaultUnit: '条'\n },\n form: {\n required: 'この選択肢は空にできません',\n maxlength: 'この選択肢の入力値の長さは{maxlength}を超えてはいけません',\n minlength: 'この選択肢の入力値の長さは{minlength}未満ではいけません',\n uniqueCheck: '入力値はすでに存在します。再入力してください',\n email: 'メールアドレスの形式が正しくありません',\n confirm: '二回の入力が一致しません',\n pattern: 'この選択肢の入力形式が正しくありません',\n number: '数字を入力する必要があります',\n url: 'URL形式が正しくありません',\n max: 'この選択肢の入力値は{max}を超えてはいけません',\n min: 'この選択肢の入力値は{min}未満ではいけません'\n },\n empty: {\n noDataText: 'データはありません'\n },\n image: {\n zoomOut: '縮小',\n zoomIn: '拡大',\n originalSize: '元のサイズ',\n fitToScreen: '画面に合わせる',\n fullScreen: '全画面表示',\n spin: '回転',\n download: 'ダウンロード',\n viewOriginal: '元の画像を表示',\n copyLink: 'リンクをコピー',\n exitPreview: 'プレビューを終了',\n exitFullScreen: '全画面表示を終了',\n copySuccess: '画像のURLをコピーしました',\n copyError: '画像のURLをコピーできませんでした',\n prev: '前の画像',\n next: '次の画像'\n },\n shared: {\n comma: ','\n }\n};\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.deDe,\n layout: {\n expand: 'Aufklappen',\n collapse: 'Zuklappen'\n },\n datePicker: {\n yearFormat: 'yyyy',\n monthFormat: 'MMM', // MMM:月份缩写。 MMMM:月份全称。\n weekFormat: 'EE',\n fullWeekFormat: 'EE',\n weekThFormat: 'yyyy-ww',\n dateFormat: 'yyyy-MM-dd',\n\n yearQuarterFormat: \"yyyy-'Q'q\",\n yearMonthFormat: 'yyyy-MM',\n\n yearText: 'Jahr',\n quarterText: 'Quartal',\n monthText: 'Monat',\n week: 'Woche',\n prefixWeek: 'Woche',\n\n previousYear: 'Vorjahr',\n nextYear: 'Nächstes Jahr',\n previousMonth: 'Letzter Monat',\n nextMonth: 'Nächster Monat',\n\n today: 'Heute',\n tomorrow: 'Morgen',\n nextWeek: 'Nächste Woche',\n lastSevenDays: 'Letzte 7 Tage',\n lastThirtyDays: 'Letzte 30 Tage',\n currentMonth: 'Diesen Monat',\n currentWeek: 'Diese Woche',\n\n advance: 'Erweiterte Optionen',\n custom: 'Benutzerdefiniert',\n\n startDate: 'Startdatum',\n endDate: 'Enddatum',\n\n setTime: 'Zeit einstellen',\n placeholder: 'Datum auswählen',\n\n ok: 'Bestätigen',\n clear: 'Löschen'\n },\n dateRange: {\n custom: 'Benutzerdefiniert',\n currentWeek: 'Diese Woche',\n currentMonth: 'Diesen Monat'\n },\n timePicker: {\n placeholder: 'Zeit auswählen',\n now: 'Jetzt',\n ok: 'Bestätigen'\n },\n calendar: {\n today: 'Heute',\n yearMonthFormat: 'yyyy-MM'\n },\n autocomplete: {\n empty: 'Noch keine Daten'\n },\n transfer: {\n maxLimit: '(Maximal {max} Stück)',\n maxLockLimit: 'Gesperrt (Maximal {maxLock} Stück)',\n unlocked: 'Entsperrt'\n },\n colorPicker: {\n defaultColor: 'Standardfarbe',\n noFillColor: 'Keine Füllfarbe',\n recentUsedColor: 'Kürzlich verwendet',\n customColor: 'Benutzerdefinierte Farbe',\n none: 'Keine'\n },\n strength: {\n highest: 'Höchste',\n high: 'Hoch',\n medium: 'Mittel',\n low: 'Niedrig'\n },\n guider: {\n skip: 'Überspringen',\n prev: 'Zurück',\n next: 'Weiter',\n finish: 'Abschließen'\n },\n copy: {\n tips: 'Klicken Sie, um zu kopieren',\n success: 'Kopieren erfolgreich',\n error: 'Kopieren fehlgeschlagen'\n },\n nav: {\n more: 'Mehr'\n },\n dialog: {\n title: 'Löschbestätigung',\n ok: 'Bestätigen',\n cancel: 'Abbrechen'\n },\n select: {\n placeholder: 'Bitte wählen',\n empty: 'Noch keine Daten'\n },\n treeSelect: {\n placeholder: 'Bitte wählen',\n empty: 'Noch keine Daten'\n },\n cascader: {\n placeholder: 'Bitte wählen',\n empty: 'Noch keine Daten'\n },\n pagination: {\n page: 'Seite',\n order: 'Die',\n total: 'Insgesamt',\n totalCount: 'Gesamt {total}',\n jumpTo: 'Springen zu',\n firstPage: 'Erste Seite',\n lastPage: 'Letzte Seite',\n defaultUnit: 'Einträge'\n },\n form: {\n required: 'Dieses Feld darf nicht leer sein',\n maxlength: 'Die Eingabelänge darf {maxlength} nicht überschreiten',\n minlength: 'Die Eingabelänge darf {minlength} nicht unterschreiten',\n uniqueCheck: 'Der eingegebene Wert existiert bereits, bitte erneut eingeben',\n email: 'Das Format der E-Mail-Adresse ist ungültig',\n confirm: 'Die Eingaben stimmen nicht überein',\n pattern: 'Das Eingabeformat ist ungültig',\n number: 'Es muss eine Zahl eingegeben werden',\n url: 'Das Format der URL ist ungültig',\n max: 'Der eingegebene Wert darf {max} nicht überschreiten',\n min: 'Der eingegebene Wert darf {min} nicht unterschreiten'\n },\n empty: {\n noDataText: 'Keine Daten vorhanden'\n },\n image: {\n zoomOut: 'Verkleinern',\n zoomIn: 'Vergrößern',\n originalSize: 'Originalgröße',\n fitToScreen: 'An den Bildschirm anpassen',\n fullScreen: 'Vollbild anzeigen',\n spin: 'Drehen',\n download: 'Herunterladen',\n viewOriginal: 'Original anzeigen',\n copyLink: 'Link kopieren',\n exitPreview: 'Vorschau beenden',\n exitFullScreen: 'Vollbildmodus beenden',\n copySuccess: 'Link erfolgreich kopiert',\n copyError: 'Link kopieren fehlgeschlagen',\n prev: 'Vorherige',\n next: 'Nächste'\n },\n shared: {\n comma: ','\n }\n};\n","import { inject, Injectable, signal, Signal, WritableSignal } from '@angular/core';\nimport { THY_I18N_LOCALE_ID, THY_I18N_ZH_HANS, THY_I18N_ZH_HANT, THY_I18N_EN_US, THY_I18N_JA_JP, THY_I18N_DE_DE } from './i18n.token';\nimport { ThyLocaleType, ThyI18nLocale } from './i18n';\nimport { normalizeLocale, getDefaultLocaleId } from './util';\nimport { zhHansLocale, zhHantLocale, enUsLocale, jaJpLocale, deDeLocale } from './locales';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyI18nService {\n private locales: { [key in ThyLocaleType]: ThyI18nLocale } = {\n [ThyLocaleType.zhHans]: inject(THY_I18N_ZH_HANS, { optional: true }) || zhHansLocale,\n [ThyLocaleType.zhHant]: inject(THY_I18N_ZH_HANT, { optional: true }) || zhHantLocale,\n [ThyLocaleType.enUs]: inject(THY_I18N_EN_US, { optional: true }) || enUsLocale,\n [ThyLocaleType.jaJp]: inject(THY_I18N_JA_JP, { optional: true }) || jaJpLocale,\n [ThyLocaleType.deDe]: inject(THY_I18N_DE_DE, { optional: true }) || deDeLocale\n };\n\n private defaultLocaleId: ThyLocaleType = normalizeLocale(inject(THY_I18N_LOCALE_ID, { optional: true })) || getDefaultLocaleId();\n\n private locale: WritableSignal<ThyI18nLocale> = signal(this.locales[this.defaultLocaleId]);\n\n /**\n * 设置语言\n * @param id\n */\n setLocale(id: string) {\n let localeId: ThyLocaleType = normalizeLocale(id);\n\n if (localeId.includes('zh') && localeId !== ThyLocaleType.zhHans && localeId !== ThyLocaleType.zhHant) {\n localeId = ThyLocaleType.zhHans;\n }\n\n this.locale.set(this.locales[localeId] || this.locales[this.defaultLocaleId] || ({} as ThyI18nLocale));\n }\n\n /**\n * 获取当前语言\n */\n getLocale(): Signal<ThyI18nLocale> {\n return this.locale;\n }\n}\n","import { computed, inject, Signal } from '@angular/core';\nimport { ThyModuleLocaleType, ThyModuleType, ThyI18nLocale } from './i18n';\nimport { ThyI18nService } from './i18n.service';\n\nexport function injectLocale(): Signal<ThyI18nLocale>;\n\nexport function injectLocale<K extends ThyModuleType>(key: K): Signal<ThyModuleLocaleType<K>>;\n\nexport function injectLocale<K extends ThyModuleType>(key?: K): Signal<ThyI18nLocale | ThyModuleLocaleType<K>> {\n const i18n = inject(ThyI18nService);\n const allLocale = i18n.getLocale();\n\n return computed(() => {\n if (key) {\n return allLocale()[key] ?? allLocale();\n }\n return allLocale();\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-i18n.mjs","sources":["../../../src/i18n/i18n.ts","../../../src/i18n/i18n.token.ts","../../../src/i18n/util.ts","../../../src/i18n/locales/zh-hans.ts","../../../src/i18n/locales/zh-hant.ts","../../../src/i18n/locales/en-us.ts","../../../src/i18n/locales/ja-jp.ts","../../../src/i18n/locales/de-de.ts","../../../src/i18n/i18n.service.ts","../../../src/i18n/locale.ts","../../../src/i18n/ngx-tethys-i18n.ts"],"sourcesContent":["export type ThyModuleType =\n | 'datePicker'\n | 'layout'\n | 'dateRange'\n | 'timePicker'\n | 'calendar'\n | 'autocomplete'\n | 'transfer'\n | 'colorPicker'\n | 'strength'\n | 'guider'\n | 'copy'\n | 'nav'\n | 'dialog'\n | 'select'\n | 'treeSelect'\n | 'cascader'\n | 'pagination'\n | 'form'\n | 'empty'\n | 'image'\n | 'notify'\n | 'shared';\n\nexport type ThyModuleLocaleType<K extends ThyModuleType> = ThyI18nLocale[K];\n\nexport enum ThyLocaleType {\n zhHans = 'zh-hans',\n zhHant = 'zh-hant',\n enUs = 'en-us',\n jaJp = 'ja-jp',\n deDe = 'de-de'\n}\n\nexport interface ThyI18nLocale {\n id: ThyLocaleType;\n layout: ThyLayoutLocale;\n datePicker: ThyDatePickerLocale;\n dateRange: ThyDateRangeLocale;\n timePicker: ThyTimePickerLocale;\n calendar: ThyCalendarLocale;\n autocomplete: ThyAutoCompleteLocale;\n transfer: ThyTransferLocale;\n colorPicker: ThyColorPickerLocale;\n strength: ThyStrengthLocale;\n guider: ThyGuiderLocale;\n copy: ThyCopyLocale;\n nav: ThyNavLocale;\n dialog: ThyDialogLocale;\n select: ThySelectLocale;\n treeSelect: ThyTreeSelectLocale;\n cascader: ThyCascaderLocale;\n pagination: ThyPaginationLocale;\n form: ThyFormLocale;\n empty: ThyEmptyLocale;\n image: ThyImageLocale;\n notify: ThyNotifyLocale;\n shared: ThySharedLocale;\n}\n\nexport interface ThyLayoutLocale {\n collapse: string;\n expand: string;\n}\n\nexport interface ThyDatePickerLocale {\n yearFormat: string;\n monthFormat: string;\n weekFormat: string;\n fullWeekFormat: string;\n weekThFormat: string;\n dateFormat: string;\n\n yearQuarterFormat: string;\n yearMonthFormat: string;\n\n yearText: string;\n quarterText: string;\n monthText: string;\n week: string;\n prefixWeek: string;\n\n previousYear: string;\n nextYear: string;\n previousMonth: string;\n nextMonth: string;\n\n today: string;\n tomorrow: string;\n nextWeek: string;\n lastSevenDays: string;\n lastThirtyDays: string;\n currentMonth: string;\n currentWeek: string;\n\n advance: string;\n custom: string;\n\n startDate: string;\n endDate: string;\n\n setTime: string;\n placeholder: string;\n\n ok: string;\n clear: string;\n}\n\nexport interface ThyDateRangeLocale {\n custom: string;\n currentWeek: string;\n currentMonth: string;\n}\n\nexport interface ThyTimePickerLocale {\n placeholder: string;\n now: string;\n ok: string;\n}\n\nexport interface ThyCalendarLocale {\n today: string;\n yearMonthFormat: string;\n}\n\nexport interface ThyAutoCompleteLocale {\n empty: string;\n}\n\nexport interface ThyTransferLocale {\n maxLimit: string;\n maxLockLimit: string;\n unlocked: string;\n}\n\nexport interface ThyColorPickerLocale {\n defaultColor: string;\n noFillColor: string;\n recentUsedColor: string;\n customColor: string;\n none: string;\n}\n\nexport interface ThyStrengthLocale {\n highest: string;\n high: string;\n medium: string;\n low: string;\n}\n\nexport interface ThyGuiderLocale {\n skip: string;\n prev: string;\n next: string;\n finish: string;\n}\n\nexport interface ThyCopyLocale {\n tips: string;\n success: string;\n error: string;\n}\n\nexport interface ThyNavLocale {\n more: string;\n}\n\nexport interface ThyDialogLocale {\n title: string;\n ok: string;\n cancel: string;\n}\n\nexport interface ThySelectLocale {\n placeholder: string;\n empty: string;\n}\n\nexport interface ThyTreeSelectLocale {\n placeholder: string;\n empty: string;\n}\n\nexport interface ThyCascaderLocale {\n placeholder: string;\n empty: string;\n}\n\nexport interface ThyPaginationLocale {\n page: string;\n order: string;\n total: string;\n totalCount: string;\n jumpTo: string;\n firstPage: string;\n lastPage: string;\n defaultUnit: string;\n}\n\nexport interface ThyFormLocale {\n required: string;\n maxlength: string;\n minlength: string;\n uniqueCheck: string;\n email: string;\n confirm: string;\n pattern: string;\n number: string;\n url: string;\n max: string;\n min: string;\n}\n\nexport interface ThyEmptyLocale {\n noDataText: string;\n}\n\nexport interface ThyImageLocale {\n zoomOut: string;\n zoomIn: string;\n originalSize: string;\n fitToScreen: string;\n fullScreen: string;\n spin: string;\n download: string;\n viewOriginal: string;\n copyLink: string;\n exitPreview: string;\n exitFullScreen: string;\n copySuccess: string;\n copyError: string;\n prev: string;\n next: string;\n}\n\nexport interface ThyNotifyLocale {\n success: string;\n warning: string;\n error: string;\n info: string;\n detail: string;\n}\n\nexport interface ThySharedLocale {\n comma: string;\n}\n","import { InjectionToken } from '@angular/core';\nimport { ThyI18nLocale, ThyLocaleType } from './i18n';\n\n// Support configure the default locale id\nexport const THY_I18N_LOCALE_ID = new InjectionToken<ThyLocaleType>('thy-i18n-locale-id');\n\n// Support rewrite language package\nexport const THY_I18N_ZH_HANS = new InjectionToken<ThyI18nLocale>('thy-i18n-zh-hans');\nexport const THY_I18N_ZH_HANT = new InjectionToken<ThyI18nLocale>('thy-i18n-zh-hant');\nexport const THY_I18N_EN_US = new InjectionToken<ThyI18nLocale>('thy-i18n-en-us');\nexport const THY_I18N_JA_JP = new InjectionToken<ThyI18nLocale>('thy-i18n-ja-jp');\nexport const THY_I18N_DE_DE = new InjectionToken<ThyI18nLocale>('thy-i18n-de-de');\n","import { ThyLocaleType } from './i18n';\n\nexport function normalizeLocale(localeId: string): ThyLocaleType {\n return localeId?.toLowerCase().replace(/_/g, '-') as ThyLocaleType;\n}\n\nexport function getDefaultLocaleId(): ThyLocaleType {\n let defaultLocaleId = ThyLocaleType.zhHans;\n const allLocales = [ThyLocaleType.zhHans, ThyLocaleType.zhHant, ThyLocaleType.enUs, ThyLocaleType.jaJp, ThyLocaleType.deDe];\n if (typeof window !== 'undefined' && window?.navigator?.language) {\n defaultLocaleId = window.navigator?.language?.toLowerCase() as ThyLocaleType;\n }\n return allLocales.includes(normalizeLocale(defaultLocaleId) as ThyLocaleType) ? defaultLocaleId : ThyLocaleType.zhHans;\n}\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.zhHans,\n layout: {\n expand: '展开',\n collapse: '收起'\n },\n datePicker: {\n yearFormat: 'yyyy年', // Used in header of month picker\n monthFormat: 'MMM', // Used in header of date picker, advanced range picker (2月)\n weekFormat: 'EEEEE', // Used in date picker table (六)\n fullWeekFormat: 'EE', // Used in calendar (周六)\n weekThFormat: 'yyyy-ww周', // Used in week picker\n dateFormat: 'yyyy年MM月dd日',\n\n yearQuarterFormat: \"yyyy年 'Q'q\",\n yearMonthFormat: 'yyyy年 MM月',\n\n yearText: '年份',\n quarterText: '季度',\n monthText: '月份',\n week: '周',\n prefixWeek: '周',\n\n previousYear: '上一年',\n nextYear: '下一年',\n previousMonth: '上个月',\n nextMonth: '下个月',\n\n today: '今天',\n tomorrow: '明天',\n nextWeek: '下周',\n lastSevenDays: '最近 7 天',\n lastThirtyDays: '最近 30 天',\n currentMonth: '本月',\n currentWeek: '本周',\n\n advance: '高级选项',\n custom: '自定义',\n\n startDate: '开始日期',\n endDate: '结束日期',\n\n setTime: '设置时间',\n placeholder: '选择日期',\n\n ok: '确定',\n clear: '清除'\n },\n dateRange: {\n custom: '自定义',\n currentWeek: '本周',\n currentMonth: '本月'\n },\n timePicker: {\n placeholder: '选择时间',\n now: '此刻',\n ok: '确定'\n },\n calendar: {\n today: '今天',\n yearMonthFormat: 'yyyy年MM月'\n },\n autocomplete: {\n empty: '暂无数据'\n },\n transfer: {\n maxLimit: '(上限{max}个)',\n maxLockLimit: '锁定 (上限{maxLock}个)',\n unlocked: '未锁定'\n },\n colorPicker: {\n defaultColor: '默认颜色',\n noFillColor: '无填充色',\n recentUsedColor: '最近使用自定义颜色',\n customColor: '自定义颜色',\n none: '暂无'\n },\n strength: {\n highest: '最高',\n high: '高',\n medium: '中',\n low: '低'\n },\n guider: {\n skip: '跳过',\n prev: '上一步',\n next: '下一步',\n finish: '完成'\n },\n copy: {\n tips: '点击复制',\n success: '复制成功',\n error: '复制失败'\n },\n nav: {\n more: '更多'\n },\n dialog: {\n title: '确认删除',\n ok: '确定',\n cancel: '取消'\n },\n select: {\n placeholder: '请选择',\n empty: '暂无数据'\n },\n treeSelect: {\n placeholder: '请选择',\n empty: '暂无数据'\n },\n cascader: {\n placeholder: '请选择',\n empty: '暂无数据'\n },\n pagination: {\n page: '页',\n order: '第',\n total: '共',\n totalCount: '共{total}页',\n jumpTo: '跳至',\n firstPage: '第一页',\n lastPage: '最后一页',\n defaultUnit: '条'\n },\n form: {\n required: '该选项不能为空',\n maxlength: '该选项输入值长度不能大于{maxlength}',\n minlength: '该选项输入值长度不能小于{minlength}',\n uniqueCheck: '输入值已经存在,请重新输入',\n email: '输入邮件的格式不正确',\n confirm: '两次输入不一致',\n pattern: '该选项输入格式不正确',\n number: '必须输入数字',\n url: '输入URL格式不正确',\n max: '该选项输入值不能大于{max}',\n min: '该选项输入值不能小于{min}'\n },\n empty: {\n noDataText: '暂无数据'\n },\n image: {\n zoomOut: '缩小',\n zoomIn: '放大',\n originalSize: '原始比例',\n fitToScreen: '适应屏幕',\n fullScreen: '全屏显示',\n spin: '旋转',\n download: '下载',\n viewOriginal: '查看原图',\n copyLink: '复制链接',\n exitPreview: '退出预览',\n exitFullScreen: '退出全屏',\n copySuccess: '复制图片地址成功',\n copyError: '复制图片地址失败',\n prev: '上一张',\n next: '下一张'\n },\n notify: {\n success: '成功',\n warning: '警告',\n error: '错误',\n info: '提示',\n detail: '详情'\n },\n shared: {\n comma: ','\n }\n};\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.zhHant,\n layout: {\n expand: '展開',\n collapse: '收起'\n },\n datePicker: {\n yearFormat: 'yyyy年',\n monthFormat: 'MMM',\n weekFormat: 'EEEEE',\n fullWeekFormat: 'EE',\n weekThFormat: 'yyyy-ww週',\n dateFormat: 'yyyy年MM月dd日',\n\n yearQuarterFormat: \"yyyy年 'Q'q\",\n yearMonthFormat: 'yyyy年 MM月',\n\n yearText: '年份',\n quarterText: '季度',\n monthText: '月份',\n week: '週',\n prefixWeek: '週',\n\n previousYear: '上一年',\n nextYear: '下一年',\n previousMonth: '上個月',\n nextMonth: '下個月',\n\n today: '今天',\n tomorrow: '明天',\n nextWeek: '下週',\n lastSevenDays: '最近 7 天',\n lastThirtyDays: '最近 30 天',\n currentMonth: '本月',\n currentWeek: '本週',\n\n advance: '高級選項',\n custom: '自訂',\n\n startDate: '開始日期',\n endDate: '結束日期',\n\n setTime: '設置時間',\n placeholder: '選擇日期',\n\n ok: '確定',\n clear: '清除'\n },\n dateRange: {\n custom: '自訂',\n currentWeek: '本週',\n currentMonth: '本月'\n },\n timePicker: {\n placeholder: '選擇時間',\n now: '此刻',\n ok: '確定'\n },\n calendar: {\n today: '今天',\n yearMonthFormat: 'yyyy年MM月'\n },\n autocomplete: {\n empty: '暫無數據'\n },\n transfer: {\n maxLimit: '(上限{max}個)',\n maxLockLimit: '鎖定 (上限{maxLock}個)',\n unlocked: '未鎖定'\n },\n colorPicker: {\n defaultColor: '預設顏色',\n noFillColor: '無填充色',\n recentUsedColor: '最近使用自訂顏色',\n customColor: '自訂顏色',\n none: '暫無'\n },\n strength: {\n highest: '最高',\n high: '高',\n medium: '中',\n low: '低'\n },\n guider: {\n skip: '跳過',\n prev: '上一步',\n next: '下一步',\n finish: '完成'\n },\n copy: {\n tips: '點擊複製',\n success: '複製成功',\n error: '複製失敗'\n },\n nav: {\n more: '更多'\n },\n dialog: {\n title: '確認刪除',\n ok: '確定',\n cancel: '取消'\n },\n select: {\n placeholder: '請選擇',\n empty: '暫無數據'\n },\n treeSelect: {\n placeholder: '請選擇',\n empty: '暫無數據'\n },\n cascader: {\n placeholder: '請選擇',\n empty: '暫無數據'\n },\n pagination: {\n page: '頁',\n order: '第',\n total: '共',\n totalCount: '共{total}頁',\n jumpTo: '跳至',\n firstPage: '第一頁',\n lastPage: '最後一頁',\n defaultUnit: '個'\n },\n form: {\n required: '該選項不能为空',\n maxlength: '該選項輸入值長度不能大於{maxlength}',\n minlength: '該選項輸入值長度不能小於{minlength}',\n uniqueCheck: '輸入值已經存在,請重新輸入',\n email: '輸入郵件的格式不正確',\n confirm: '兩次輸入不一致',\n pattern: '該選項輸入格式不正確',\n number: '必須輸入數字',\n url: '輸入URL格式不正確',\n max: '該選項輸入值不能大於{max}',\n min: '該選項輸入值不能小於{min}'\n },\n empty: {\n noDataText: '暫無資料'\n },\n image: {\n zoomOut: '縮小',\n zoomIn: '放大',\n originalSize: '原始比例',\n fitToScreen: '適應屏幕',\n fullScreen: '全屏顯示',\n spin: '旋轉',\n download: '下載',\n viewOriginal: '查看原圖',\n copyLink: '複製連結',\n exitPreview: '退出預覽',\n exitFullScreen: '退出全屏',\n copySuccess: '複製圖片地址成功',\n copyError: '複製圖片地址失敗',\n prev: '上一張',\n next: '下一張'\n },\n notify: {\n success: '成功',\n warning: '警告',\n error: '錯誤',\n info: '提示',\n detail: '詳情'\n },\n shared: {\n comma: ','\n }\n};\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.enUs,\n layout: {\n expand: 'Expand',\n collapse: 'Collapse'\n },\n datePicker: {\n yearFormat: 'yyyy', // eg. 2025\n monthFormat: 'MMM', // eg. Sep\n weekFormat: 'EEE', // eg. Tue\n fullWeekFormat: 'EEE', // eg. Tue\n weekThFormat: 'yyyy-ww', // eg. 2025-01st、2025-02nd、2025-03rd、2025-27th\n dateFormat: 'yyyy-MM-dd', // eg. 2025-09-02\n\n yearQuarterFormat: \"yyyy-'Q'q\",\n yearMonthFormat: 'yyyy-MM',\n\n yearText: 'Year',\n quarterText: 'Quarter',\n monthText: 'Month',\n week: 'Week',\n prefixWeek: '',\n\n previousYear: 'Previous year',\n nextYear: 'Next year',\n previousMonth: 'Previous month',\n nextMonth: 'Next month',\n\n today: 'Today',\n tomorrow: 'Tomorrow',\n nextWeek: 'Next week',\n lastSevenDays: '7 days',\n lastThirtyDays: '30 days',\n currentMonth: 'This month',\n currentWeek: 'This week',\n\n advance: 'Advance',\n custom: 'Custom',\n\n startDate: 'Start date',\n endDate: 'End date',\n\n setTime: 'Set time',\n placeholder: 'Select date',\n\n ok: 'Ok',\n clear: 'Clear'\n },\n dateRange: {\n custom: 'Custom',\n currentWeek: 'This week',\n currentMonth: 'This month'\n },\n timePicker: {\n placeholder: 'Select time',\n now: 'Now',\n ok: 'Ok'\n },\n calendar: {\n today: 'Today',\n yearMonthFormat: 'yyyy-MM' // eg. 2025-09\n },\n autocomplete: {\n empty: 'No data available'\n },\n transfer: {\n maxLimit: '(Max limit: {max})',\n maxLockLimit: 'Lock (Max limit: {maxLock})',\n unlocked: 'Unlocked'\n },\n colorPicker: {\n defaultColor: 'Default color',\n noFillColor: 'No fill color',\n recentUsedColor: 'Recently used custom color',\n customColor: 'Custom color',\n none: 'None'\n },\n strength: {\n highest: 'Highest',\n high: 'High',\n medium: 'Medium',\n low: 'Low'\n },\n guider: {\n skip: 'Skip',\n prev: 'Previous',\n next: 'Next',\n finish: 'Finish'\n },\n copy: {\n tips: 'Click to copy',\n success: 'Copy succeeded',\n error: 'Copy failed'\n },\n nav: {\n more: 'More'\n },\n dialog: {\n title: 'Confirm',\n ok: 'Ok',\n cancel: 'Cancel'\n },\n select: {\n placeholder: 'Select',\n empty: 'No data available'\n },\n treeSelect: {\n placeholder: 'Select',\n empty: 'No data available'\n },\n cascader: {\n placeholder: 'Select',\n empty: 'No data available'\n },\n pagination: {\n page: 'page',\n order: 'No.',\n total: 'Total: ',\n totalCount: 'Total: {total}',\n jumpTo: 'Go to',\n firstPage: 'First page',\n lastPage: 'Last page',\n defaultUnit: ''\n },\n form: {\n required: 'This option is required',\n maxlength: 'Input cannot exceed {maxlength} characters',\n minlength: 'Input must be at least {minlength} characters',\n uniqueCheck: 'Value already exists, please try again',\n email: 'Invalid email format',\n confirm: 'Inputs do not match',\n pattern: 'Invalid input format',\n number: 'A number is required',\n url: 'Invalid URL format',\n max: 'Input cannot be greater than {max}',\n min: 'Input cannot be less than {min}'\n },\n empty: {\n noDataText: 'No data available'\n },\n image: {\n zoomOut: 'Zoom out',\n zoomIn: 'Zoom in',\n originalSize: 'Original size',\n fitToScreen: 'Fit to screen',\n fullScreen: 'Full screen',\n spin: 'Spin',\n download: 'Download',\n viewOriginal: 'View original',\n copyLink: 'Copy link',\n exitPreview: 'Exit preview',\n exitFullScreen: 'Exit full screen',\n copySuccess: 'Copied successfully',\n copyError: 'Copy failed',\n prev: 'Previous',\n next: 'Next'\n },\n notify: {\n success: 'Success',\n warning: 'Warning',\n error: 'Error',\n info: 'Tip',\n detail: 'More'\n },\n shared: {\n comma: ','\n }\n};\n\n/**\n * Format options:\n * | Field type | Format | Description | Example Value |\n * |--------------------|-------------|--------------------------------------------|---------------------------------|\n * | Year | y | Numeric: minimum digits | 2, 20, 201, 2017, 20173 |\n * | | yy | Numeric: 2 digits + zero padded | 02, 20, 01, 17, 73 |\n * | | yyy | Numeric: 3 digits + zero padded | 002, 020, 201, 2017, 20173 |\n * | | yyyy | Numeric: 4 digits or more + zero padded | 0002, 0020, 0201, 2017, 20173 |\n * | Month | M | Numeric: 1 digit | 9, 12 |\n * | | MM | Numeric: 2 digits + zero padded | 09, 12 |\n * | | MMM | Abbreviated | Sep |\n * | | MMMM | Wide | September |\n * | | MMMMM | Narrow | S |\n * | Week day | E, EE & EEE | Abbreviated | Tue |\n * | | EEEE | Wide | Tuesday |\n * | | EEEEE | Narrow | T |\n * | | EEEEEE | Short | Tu |\n * | ISO Week of year | w | Numeric: minimum digits | 1... 53 |\n * | | ww | Numeric: 2 digits + zero padded | 01... 53 |\n *\n */\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.jaJp,\n layout: {\n expand: '展開',\n collapse: '折りたたみ'\n },\n datePicker: {\n yearFormat: 'yyyy年',\n monthFormat: 'MMM',\n weekFormat: 'EEEEE',\n fullWeekFormat: 'EE',\n weekThFormat: 'yyyy-ww週',\n dateFormat: 'yyyy年MM月dd日',\n\n yearQuarterFormat: \"yyyy-'Q'q\",\n yearMonthFormat: 'yyyy-MM',\n\n yearText: '年',\n quarterText: '四半期',\n monthText: '月',\n week: '週',\n prefixWeek: '週',\n\n previousYear: '昨年',\n nextYear: '来年',\n previousMonth: '先月',\n nextMonth: '来月',\n\n today: '今日',\n tomorrow: '明日',\n nextWeek: '来週',\n lastSevenDays: '過去7日間',\n lastThirtyDays: '過去30日間',\n currentMonth: '今月',\n currentWeek: '今週',\n\n advance: '高度なオプション',\n custom: 'カスタム',\n\n startDate: '開始日',\n endDate: '終了日',\n\n setTime: '時間を設定',\n placeholder: '日付を選択',\n\n ok: '確認',\n clear: 'クリア'\n },\n dateRange: {\n custom: 'カスタム',\n currentWeek: '今週',\n currentMonth: '今月'\n },\n timePicker: {\n placeholder: '時間を選択',\n now: '現在',\n ok: 'もちろん'\n },\n calendar: {\n today: '今日',\n yearMonthFormat: 'yyyy年MM月'\n },\n autocomplete: {\n empty: 'まだデータはありません'\n },\n transfer: {\n maxLimit: '(上限{max}個)',\n maxLockLimit: 'ロック (上限{maxLock}個)',\n unlocked: 'ロック解除'\n },\n colorPicker: {\n defaultColor: 'デフォルトカラー',\n noFillColor: '塗りつぶしなし',\n recentUsedColor: '最近使用したカスタムカラー',\n customColor: 'カスタムカラー',\n none: 'なし'\n },\n strength: {\n highest: '最高',\n high: '高',\n medium: '中',\n low: '低'\n },\n guider: {\n skip: 'スキップ',\n prev: '前へ',\n next: '次へ',\n finish: '完了'\n },\n copy: {\n tips: 'クリックしてコピー',\n success: 'コピー成功',\n error: 'コピー失敗'\n },\n nav: {\n more: 'もっと見る'\n },\n dialog: {\n title: '削除の確認',\n ok: '確認',\n cancel: 'キャンセル'\n },\n select: {\n placeholder: '選択してください',\n empty: 'まだデータはありません'\n },\n treeSelect: {\n placeholder: '選択してください',\n empty: 'まだデータはありません'\n },\n cascader: {\n placeholder: '選択してください',\n empty: 'まだデータはありません'\n },\n pagination: {\n page: 'ページ',\n order: '第',\n total: '合計',\n totalCount: '合計 {total}',\n jumpTo: 'ジャンプ',\n firstPage: '最初のページ',\n lastPage: '最後のページ',\n defaultUnit: '条'\n },\n form: {\n required: 'この選択肢は空にできません',\n maxlength: 'この選択肢の入力値の長さは{maxlength}を超えてはいけません',\n minlength: 'この選択肢の入力値の長さは{minlength}未満ではいけません',\n uniqueCheck: '入力値はすでに存在します。再入力してください',\n email: 'メールアドレスの形式が正しくありません',\n confirm: '二回の入力が一致しません',\n pattern: 'この選択肢の入力形式が正しくありません',\n number: '数字を入力する必要があります',\n url: 'URL形式が正しくありません',\n max: 'この選択肢の入力値は{max}を超えてはいけません',\n min: 'この選択肢の入力値は{min}未満ではいけません'\n },\n empty: {\n noDataText: 'データはありません'\n },\n image: {\n zoomOut: '縮小',\n zoomIn: '拡大',\n originalSize: '元のサイズ',\n fitToScreen: '画面に合わせる',\n fullScreen: '全画面表示',\n spin: '回転',\n download: 'ダウンロード',\n viewOriginal: '元の画像を表示',\n copyLink: 'リンクをコピー',\n exitPreview: 'プレビューを終了',\n exitFullScreen: '全画面表示を終了',\n copySuccess: '画像のURLをコピーしました',\n copyError: '画像のURLをコピーできませんでした',\n prev: '前の画像',\n next: '次の画像'\n },\n notify: {\n success: '成功',\n warning: '警告',\n error: 'エラー',\n info: '情報',\n detail: '詳細'\n },\n shared: {\n comma: ','\n }\n};\n","import { ThyLocaleType } from '../i18n';\n\nexport default {\n id: ThyLocaleType.deDe,\n layout: {\n expand: 'Aufklappen',\n collapse: 'Zuklappen'\n },\n datePicker: {\n yearFormat: 'yyyy',\n monthFormat: 'MMM', // MMM:月份缩写。 MMMM:月份全称。\n weekFormat: 'EE',\n fullWeekFormat: 'EE',\n weekThFormat: 'yyyy-ww',\n dateFormat: 'yyyy-MM-dd',\n\n yearQuarterFormat: \"yyyy-'Q'q\",\n yearMonthFormat: 'yyyy-MM',\n\n yearText: 'Jahr',\n quarterText: 'Quartal',\n monthText: 'Monat',\n week: 'Woche',\n prefixWeek: 'Woche',\n\n previousYear: 'Vorjahr',\n nextYear: 'Nächstes Jahr',\n previousMonth: 'Letzter Monat',\n nextMonth: 'Nächster Monat',\n\n today: 'Heute',\n tomorrow: 'Morgen',\n nextWeek: 'Nächste Woche',\n lastSevenDays: 'Letzte 7 Tage',\n lastThirtyDays: 'Letzte 30 Tage',\n currentMonth: 'Diesen Monat',\n currentWeek: 'Diese Woche',\n\n advance: 'Erweiterte Optionen',\n custom: 'Benutzerdefiniert',\n\n startDate: 'Startdatum',\n endDate: 'Enddatum',\n\n setTime: 'Zeit einstellen',\n placeholder: 'Datum auswählen',\n\n ok: 'Bestätigen',\n clear: 'Löschen'\n },\n dateRange: {\n custom: 'Benutzerdefiniert',\n currentWeek: 'Diese Woche',\n currentMonth: 'Diesen Monat'\n },\n timePicker: {\n placeholder: 'Zeit auswählen',\n now: 'Jetzt',\n ok: 'Bestätigen'\n },\n calendar: {\n today: 'Heute',\n yearMonthFormat: 'yyyy-MM'\n },\n autocomplete: {\n empty: 'Noch keine Daten'\n },\n transfer: {\n maxLimit: '(Maximal {max} Stück)',\n maxLockLimit: 'Gesperrt (Maximal {maxLock} Stück)',\n unlocked: 'Entsperrt'\n },\n colorPicker: {\n defaultColor: 'Standardfarbe',\n noFillColor: 'Keine Füllfarbe',\n recentUsedColor: 'Kürzlich verwendet',\n customColor: 'Benutzerdefinierte Farbe',\n none: 'Keine'\n },\n strength: {\n highest: 'Höchste',\n high: 'Hoch',\n medium: 'Mittel',\n low: 'Niedrig'\n },\n guider: {\n skip: 'Überspringen',\n prev: 'Zurück',\n next: 'Weiter',\n finish: 'Abschließen'\n },\n copy: {\n tips: 'Klicken Sie, um zu kopieren',\n success: 'Kopieren erfolgreich',\n error: 'Kopieren fehlgeschlagen'\n },\n nav: {\n more: 'Mehr'\n },\n dialog: {\n title: 'Löschbestätigung',\n ok: 'Bestätigen',\n cancel: 'Abbrechen'\n },\n select: {\n placeholder: 'Bitte wählen',\n empty: 'Noch keine Daten'\n },\n treeSelect: {\n placeholder: 'Bitte wählen',\n empty: 'Noch keine Daten'\n },\n cascader: {\n placeholder: 'Bitte wählen',\n empty: 'Noch keine Daten'\n },\n pagination: {\n page: 'Seite',\n order: 'Die',\n total: 'Insgesamt',\n totalCount: 'Gesamt {total}',\n jumpTo: 'Springen zu',\n firstPage: 'Erste Seite',\n lastPage: 'Letzte Seite',\n defaultUnit: 'Einträge'\n },\n form: {\n required: 'Dieses Feld darf nicht leer sein',\n maxlength: 'Die Eingabelänge darf {maxlength} nicht überschreiten',\n minlength: 'Die Eingabelänge darf {minlength} nicht unterschreiten',\n uniqueCheck: 'Der eingegebene Wert existiert bereits, bitte erneut eingeben',\n email: 'Das Format der E-Mail-Adresse ist ungültig',\n confirm: 'Die Eingaben stimmen nicht überein',\n pattern: 'Das Eingabeformat ist ungültig',\n number: 'Es muss eine Zahl eingegeben werden',\n url: 'Das Format der URL ist ungültig',\n max: 'Der eingegebene Wert darf {max} nicht überschreiten',\n min: 'Der eingegebene Wert darf {min} nicht unterschreiten'\n },\n empty: {\n noDataText: 'Keine Daten vorhanden'\n },\n image: {\n zoomOut: 'Verkleinern',\n zoomIn: 'Vergrößern',\n originalSize: 'Originalgröße',\n fitToScreen: 'An den Bildschirm anpassen',\n fullScreen: 'Vollbild anzeigen',\n spin: 'Drehen',\n download: 'Herunterladen',\n viewOriginal: 'Original anzeigen',\n copyLink: 'Link kopieren',\n exitPreview: 'Vorschau beenden',\n exitFullScreen: 'Vollbildmodus beenden',\n copySuccess: 'Link erfolgreich kopiert',\n copyError: 'Link kopieren fehlgeschlagen',\n prev: 'Vorherige',\n next: 'Nächste'\n },\n notify: {\n success: 'Erfolg',\n warning: 'Warnung',\n error: 'Fehler',\n info: 'Hinweis',\n detail: 'Details'\n },\n shared: {\n comma: ','\n }\n};\n","import { inject, Injectable, signal, Signal, WritableSignal } from '@angular/core';\nimport { THY_I18N_LOCALE_ID, THY_I18N_ZH_HANS, THY_I18N_ZH_HANT, THY_I18N_EN_US, THY_I18N_JA_JP, THY_I18N_DE_DE } from './i18n.token';\nimport { ThyLocaleType, ThyI18nLocale } from './i18n';\nimport { normalizeLocale, getDefaultLocaleId } from './util';\nimport { zhHansLocale, zhHantLocale, enUsLocale, jaJpLocale, deDeLocale } from './locales';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyI18nService {\n private locales: { [key in ThyLocaleType]: ThyI18nLocale } = {\n [ThyLocaleType.zhHans]: inject(THY_I18N_ZH_HANS, { optional: true }) || zhHansLocale,\n [ThyLocaleType.zhHant]: inject(THY_I18N_ZH_HANT, { optional: true }) || zhHantLocale,\n [ThyLocaleType.enUs]: inject(THY_I18N_EN_US, { optional: true }) || enUsLocale,\n [ThyLocaleType.jaJp]: inject(THY_I18N_JA_JP, { optional: true }) || jaJpLocale,\n [ThyLocaleType.deDe]: inject(THY_I18N_DE_DE, { optional: true }) || deDeLocale\n };\n\n private defaultLocaleId: ThyLocaleType = normalizeLocale(inject(THY_I18N_LOCALE_ID, { optional: true })) || getDefaultLocaleId();\n\n private locale: WritableSignal<ThyI18nLocale> = signal(this.locales[this.defaultLocaleId]);\n\n /**\n * 设置语言\n * @param id\n */\n setLocale(id: string) {\n let localeId: ThyLocaleType = normalizeLocale(id);\n\n if (localeId.includes('zh') && localeId !== ThyLocaleType.zhHans && localeId !== ThyLocaleType.zhHant) {\n localeId = ThyLocaleType.zhHans;\n }\n\n this.locale.set(this.locales[localeId] || this.locales[this.defaultLocaleId] || ({} as ThyI18nLocale));\n }\n\n /**\n * 获取当前语言\n */\n getLocale(): Signal<ThyI18nLocale> {\n return this.locale;\n }\n}\n","import { computed, inject, Signal } from '@angular/core';\nimport { ThyModuleLocaleType, ThyModuleType, ThyI18nLocale } from './i18n';\nimport { ThyI18nService } from './i18n.service';\n\nexport function injectLocale(): Signal<ThyI18nLocale>;\n\nexport function injectLocale<K extends ThyModuleType>(key: K): Signal<ThyModuleLocaleType<K>>;\n\nexport function injectLocale<K extends ThyModuleType>(key?: K): Signal<ThyI18nLocale | ThyModuleLocaleType<K>> {\n const i18n = inject(ThyI18nService);\n const allLocale = i18n.getLocale();\n\n return computed(() => {\n if (key) {\n return allLocale()[key] ?? allLocale();\n }\n return allLocale();\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { ThyViewOutletDirective, ThySharedModule } from 'ngx-tethys/shared';
9
9
  import { ThyIcon, ThyIconModule } from 'ngx-tethys/icon';
10
10
  import { OverlayModule, Overlay } from '@angular/cdk/overlay';
11
11
  import { PortalModule } from '@angular/cdk/portal';
12
+ import { injectLocale } from 'ngx-tethys/i18n';
12
13
 
13
14
  const THY_NOTIFY_DEFAULT_CONFIG = new InjectionToken('thy-notify-default-config');
14
15
  const THY_NOTIFY_DEFAULT_CONFIG_VALUE = {
@@ -181,6 +182,7 @@ class ThyNotifyService extends ThyAbstractMessageService {
181
182
  const notifyQueue = inject(ThyNotifyQueue);
182
183
  super(overlay, injector, notifyQueue);
183
184
  this.config = inject(THY_NOTIFY_DEFAULT_CONFIG);
185
+ this.locale = injectLocale('notify');
184
186
  this._lastNotifyId = 0;
185
187
  this.notifyQueue = notifyQueue;
186
188
  const config = this.config;
@@ -206,7 +208,7 @@ class ThyNotifyService extends ThyAbstractMessageService {
206
208
  return this.show({
207
209
  ...(config || {}),
208
210
  type: 'success',
209
- title: title || config?.title || '成功',
211
+ title: title || config?.title || this.locale().success,
210
212
  content: content || config?.content
211
213
  });
212
214
  }
@@ -217,7 +219,7 @@ class ThyNotifyService extends ThyAbstractMessageService {
217
219
  return this.show({
218
220
  ...(config || {}),
219
221
  type: 'info',
220
- title: title || config?.title || '提示',
222
+ title: title || config?.title || this.locale().info,
221
223
  content: content || config?.content
222
224
  });
223
225
  }
@@ -228,7 +230,7 @@ class ThyNotifyService extends ThyAbstractMessageService {
228
230
  return this.show({
229
231
  ...(config || {}),
230
232
  type: 'warning',
231
- title: title || config?.title || '警告',
233
+ title: title || config?.title || this.locale().warning,
232
234
  content: content || config?.content
233
235
  });
234
236
  }
@@ -239,13 +241,13 @@ class ThyNotifyService extends ThyAbstractMessageService {
239
241
  return this.show({
240
242
  ...(config || {}),
241
243
  type: 'error',
242
- title: title || config?.title || '警告',
244
+ title: title || config?.title || this.locale().error,
243
245
  content: content || config?.content
244
246
  });
245
247
  }
246
248
  formatOptions(config) {
247
249
  if (isString(config.detail)) {
248
- config = { ...config, detail: { link: '[详情]', content: config.detail } };
250
+ config = { ...config, detail: { link: `[${this.locale().detail}]`, content: config.detail } };
249
251
  }
250
252
  return Object.assign({ type: 'blank' }, { id: String(this._lastNotifyId++) }, this.defaultConfig, config);
251
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-notify.mjs","sources":["../../../src/notify/notify.config.ts","../../../src/notify/notify-queue.service.ts","../../../src/notify/notify.component.ts","../../../src/notify/notify.component.html","../../../src/notify/notify-container.component.ts","../../../src/notify/notify-container.component.html","../../../src/notify/module.ts","../../../src/notify/notify-ref.ts","../../../src/notify/notify.service.ts","../../../src/notify/ngx-tethys-notify.ts"],"sourcesContent":["import { ElementRef, InjectionToken } from '@angular/core';\nimport { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';\nimport { ThyMessageBaseConfig } from 'ngx-tethys/message';\n\nexport type ThyNotifyPlacement = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';\nexport type ThyNotifyType = 'blank' | 'success' | 'error' | 'warning' | 'info';\n\nexport interface ThyGlobalNotifyConfig {\n placement?: ThyNotifyPlacement;\n\n pauseOnHover?: boolean;\n\n duration?: number;\n\n maxStack?: number;\n\n offset?: string;\n}\n\nexport interface ThyNotifyDetail {\n link?: string;\n content?: string;\n action?: (event?: Event) => void;\n}\n\n/**\n * 打开notify通知的配置\n * @public\n * @order 10\n */\nexport interface ThyNotifyConfig extends ThyMessageBaseConfig {\n /**\n * 通知弹出位置\n */\n placement?: ThyNotifyPlacement;\n\n /**\n * 弹出通知的类型\n */\n type?: ThyNotifyType;\n\n /**\n * 标题\n */\n title?: string;\n\n /**\n * 提示内容\n */\n content?: string | ComponentTypeOrTemplateRef<any>;\n\n contentInitialState?: any;\n\n /**\n * 提示内容的详情,是对内容的详情描述,也可以是能够操作的链接,link是链接名,content是详情描述,action是点击的方法\n */\n detail?: string | ThyNotifyDetail;\n\n /**\n * 自定义传入html模板\n */\n html?: ElementRef;\n}\n\nexport const THY_NOTIFY_DEFAULT_CONFIG = new InjectionToken<ThyGlobalNotifyConfig>('thy-notify-default-config');\n\nexport const THY_NOTIFY_DEFAULT_CONFIG_VALUE: ThyGlobalNotifyConfig = {\n placement: 'topRight',\n offset: '20',\n duration: 4500,\n pauseOnHover: true,\n maxStack: 8\n};\n\nexport const THY_NOTIFY_DEFAULT_CONFIG_PROVIDER = {\n provide: THY_NOTIFY_DEFAULT_CONFIG,\n useValue: THY_NOTIFY_DEFAULT_CONFIG_VALUE\n};\n","import { Injectable, inject } from '@angular/core';\nimport { ThyAbstractMessageQueue } from 'ngx-tethys/message';\nimport { map, shareReplay } from 'rxjs/operators';\nimport { ThyNotifyRef } from './notify-ref';\nimport { THY_NOTIFY_DEFAULT_CONFIG, THY_NOTIFY_DEFAULT_CONFIG_VALUE } from './notify.config';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyNotifyQueue extends ThyAbstractMessageQueue<ThyNotifyRef> {\n topLeftQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'topLeft')),\n shareReplay()\n );\n\n topRightQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'topRight')),\n shareReplay()\n );\n\n bottomLeftQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'bottomLeft')),\n shareReplay()\n );\n\n bottomRightQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'bottomRight')),\n shareReplay()\n );\n\n constructor() {\n const defaultConfig = inject(THY_NOTIFY_DEFAULT_CONFIG);\n\n super({\n ...THY_NOTIFY_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n });\n }\n}\n","import { Component, HostBinding, effect, inject, signal, computed } from '@angular/core';\nimport { trigger, state, style, animate, transition } from '@angular/animations';\nimport { helpers, isString } from 'ngx-tethys/util';\nimport { ThyNotifyConfig, ThyNotifyDetail, ThyNotifyPlacement } from './notify.config';\nimport { ANIMATION_IN_DURATION, ANIMATION_OUT_DURATION, HIDE_STYLE, ThyAbstractMessageComponent } from 'ngx-tethys/message';\nimport { ThyNotifyQueue } from './notify-queue.service';\nimport { ThyViewOutletDirective } from 'ngx-tethys/shared';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-notify',\n templateUrl: './notify.component.html',\n host: {\n '[class]': \"'thy-notify thy-notify-' + config().type\"\n },\n animations: [\n trigger('flyInOut', [\n state('flyInOutRight', style({ transform: 'translateX(0)', opacity: 1, height: '*' })),\n transition('void => flyInOutRight', [\n style({ transform: 'translateX(100%)', opacity: 0, height: '*' }),\n animate(ANIMATION_IN_DURATION)\n ]),\n transition('flyInOutRight => componentHide', [animate(ANIMATION_OUT_DURATION, style(HIDE_STYLE))]),\n state('flyInOutLeft', style({ transform: 'translateX(0)', opacity: 1, height: '*' })),\n transition('void => flyInOutLeft', [\n style({ transform: 'translateX(-100%)', opacity: 0, height: '*' }),\n animate(ANIMATION_IN_DURATION)\n ]),\n transition('flyInOutLeft => componentHide', [animate(ANIMATION_OUT_DURATION, style(HIDE_STYLE))]),\n state('componentHide', style(HIDE_STYLE))\n ])\n ],\n imports: [ThyIcon, NgClass, ThyViewOutletDirective, NgTemplateOutlet]\n})\nexport class ThyNotify extends ThyAbstractMessageComponent<ThyNotifyConfig> {\n @HostBinding('@flyInOut') animationState: string;\n\n extendContentClass = signal(false);\n\n isShowDetail = signal(false);\n\n readonly contentIsString = computed(() => isString(this.config().content));\n\n private placement = computed<ThyNotifyPlacement>(() => {\n const config = this.config();\n return config.placement || 'topRight';\n });\n\n constructor() {\n const notifyQueue = inject(ThyNotifyQueue);\n super(notifyQueue);\n\n effect(() => {\n const placement = this.placement();\n if (placement === 'topLeft' || placement === 'bottomLeft') {\n this.animationState = 'flyInOutLeft';\n } else {\n this.animationState = 'flyInOutRight';\n }\n });\n }\n\n extendContent() {\n this.extendContentClass.set(true);\n }\n\n showDetailToggle() {\n this.isShowDetail.set(!this.isShowDetail());\n }\n\n triggerDetail() {\n const config = this.config();\n if (helpers.isFunction((config.detail as ThyNotifyDetail).action)) {\n (config.detail as ThyNotifyDetail).action();\n }\n if ((config.detail as ThyNotifyDetail).content) {\n this.showDetailToggle();\n }\n }\n}\n","@let notifyConfig = config();\n\n@if (notifyConfig?.html) {\n <a href=\"javascript:;\" class=\"thy-notify-close\" (click)=\"close()\">\n <thy-icon thyIconName=\"close\"></thy-icon>\n </a>\n <div class=\"thy-notify-main\">\n <template [ngTemplateOutlet]=\"notifyConfig?.html\"></template>\n </div>\n} @else {\n <a href=\"javascript:;\" class=\"thy-notify-close\" (click)=\"close()\">\n <thy-icon thyIconName=\"close\"></thy-icon>\n </a>\n <div class=\"thy-notify-icon-container\">\n <thy-icon [thyIconName]=\"iconName\"></thy-icon>\n </div>\n <div class=\"thy-notify-main\">\n <div class=\"thy-notify-title\">{{ notifyConfig?.title }}</div>\n @if (notifyConfig?.detail || notifyConfig?.content) {\n <div class=\"thy-notify-content\" [ngClass]=\"{ 'thy-notify-content--extend': extendContentClass() }\" (click)=\"extendContent()\">\n @if (notifyConfig?.content) {\n @if (contentIsString()) {\n {{ notifyConfig?.content }}\n } @else {\n <ng-container *thyViewOutlet=\"notifyConfig?.content; context: notifyConfig?.contentInitialState || {}\"></ng-container>\n }\n }\n @if (notifyConfig?.detail) {\n <a href=\"javascript:;\" class=\"link-secondary\" (click)=\"triggerDetail()\">{{ (notifyConfig?.detail)['link'] }}</a>\n }\n </div>\n }\n @if (isShowDetail()) {\n <div class=\"thy-notify-detail\">{{ (notifyConfig?.detail)['content'] }}</div>\n }\n </div>\n}\n","import { Component, inject } from '@angular/core';\nimport { ThyAbstractMessageContainerComponent } from 'ngx-tethys/message';\nimport { ThyNotifyQueue } from './notify-queue.service';\nimport { THY_NOTIFY_DEFAULT_CONFIG, THY_NOTIFY_DEFAULT_CONFIG_VALUE } from './notify.config';\nimport { ThyNotify } from './notify.component';\nimport { AsyncPipe } from '@angular/common';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-notify-container',\n templateUrl: './notify-container.component.html',\n imports: [ThyNotify, AsyncPipe],\n host: {\n class: 'thy-notify-container'\n }\n})\nexport class ThyNotifyContainer extends ThyAbstractMessageContainerComponent {\n notifyQueue = inject(ThyNotifyQueue);\n\n constructor() {\n const defaultConfig = inject(THY_NOTIFY_DEFAULT_CONFIG);\n\n super({\n ...THY_NOTIFY_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n });\n }\n}\n","<div class=\"thy-notify-bottomRight\" [style.bottom.px]=\"offset\" [style.right.px]=\"offset\">\n @for (item of notifyQueue.bottomRightQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n<div class=\"thy-notify-bottomLeft\" [style.bottom.px]=\"offset\" [style.left.px]=\"offset\">\n @for (item of notifyQueue.bottomLeftQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n<div class=\"thy-notify-topLeft\" [style.top.px]=\"offset\" [style.left.px]=\"offset\">\n @for (item of notifyQueue.topLeftQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n<div class=\"thy-notify-topRight\" [style.top.px]=\"offset\" [style.right.px]=\"offset\">\n @for (item of notifyQueue.topRightQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyNotify } from './notify.component';\nimport { ThyNotifyContainer } from './notify-container.component';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { THY_NOTIFY_DEFAULT_CONFIG_PROVIDER } from './notify.config';\nimport { ThySharedModule } from 'ngx-tethys/shared';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, OverlayModule, PortalModule, ThyIconModule, ThyNotifyContainer, ThyNotify],\n exports: [ThyNotifyContainer, ThyNotify],\n providers: [THY_NOTIFY_DEFAULT_CONFIG_PROVIDER]\n})\nexport class ThyNotifyModule {}\n","import { ThyAbstractMessageRef } from 'ngx-tethys/message';\nimport { ThyNotifyConfig } from './notify.config';\n\nexport class ThyNotifyRef extends ThyAbstractMessageRef<ThyNotifyConfig> {}\n","import { isString } from 'ngx-tethys/util';\nimport { Injectable, Injector, inject } from '@angular/core';\nimport { ThyGlobalNotifyConfig, ThyNotifyConfig, THY_NOTIFY_DEFAULT_CONFIG, THY_NOTIFY_DEFAULT_CONFIG_VALUE } from './notify.config';\nimport { Overlay } from '@angular/cdk/overlay';\nimport { ThyNotifyRef } from './notify-ref';\nimport { ThyNotifyContainer } from './notify-container.component';\nimport { ThyNotifyQueue } from './notify-queue.service';\nimport { ThyAbstractMessageService } from 'ngx-tethys/message';\nimport { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';\n\n/**\n * @order 20\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyNotifyService extends ThyAbstractMessageService<ThyNotifyContainer> {\n private notifyQueue: ThyNotifyQueue;\n protected config = inject(THY_NOTIFY_DEFAULT_CONFIG);\n\n private _lastNotifyId = 0;\n\n private defaultConfig: ThyGlobalNotifyConfig;\n\n constructor() {\n const overlay = inject(Overlay);\n const injector = inject(Injector);\n const notifyQueue = inject(ThyNotifyQueue);\n\n super(overlay, injector, notifyQueue);\n this.notifyQueue = notifyQueue;\n const config = this.config;\n\n this.defaultConfig = {\n ...THY_NOTIFY_DEFAULT_CONFIG_VALUE,\n ...config\n };\n }\n\n /**\n * 打开自定义配置的 Notify\n */\n public show(config: ThyNotifyConfig): ThyNotifyRef {\n this.container = this.createContainer(ThyNotifyContainer);\n\n const notifyConfig = this.formatOptions(config);\n const notifyRef = new ThyNotifyRef(notifyConfig, this.overlayRef, this.notifyQueue);\n this.notifyQueue.add(notifyRef);\n return notifyRef;\n }\n\n /**\n * 打开类型为\"success\"的 Notify\n */\n public success(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'success',\n title: title || config?.title || '成功',\n content: content || config?.content\n });\n }\n\n /**\n * 打开类型为\"info\"的 Notify\n */\n public info(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'info',\n title: title || config?.title || '提示',\n content: content || config?.content\n });\n }\n\n /**\n * 打开类型为\"warning\"的 Notify\n */\n public warning(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'warning',\n title: title || config?.title || '警告',\n content: content || config?.content\n });\n }\n\n /**\n * 打开类型为\"error\"的 Notify\n */\n public error(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'error',\n title: title || config?.title || '警告',\n content: content || config?.content\n });\n }\n\n private formatOptions(config: ThyNotifyConfig) {\n if (isString(config.detail)) {\n config = { ...config, detail: { link: '[详情]', content: config.detail as string } };\n }\n return Object.assign({ type: 'blank' }, { id: String(this._lastNotifyId++) }, this.defaultConfig, config);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-notify.mjs","sources":["../../../src/notify/notify.config.ts","../../../src/notify/notify-queue.service.ts","../../../src/notify/notify.component.ts","../../../src/notify/notify.component.html","../../../src/notify/notify-container.component.ts","../../../src/notify/notify-container.component.html","../../../src/notify/module.ts","../../../src/notify/notify-ref.ts","../../../src/notify/notify.service.ts","../../../src/notify/ngx-tethys-notify.ts"],"sourcesContent":["import { ElementRef, InjectionToken } from '@angular/core';\nimport { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';\nimport { ThyMessageBaseConfig } from 'ngx-tethys/message';\n\nexport type ThyNotifyPlacement = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';\nexport type ThyNotifyType = 'blank' | 'success' | 'error' | 'warning' | 'info';\n\nexport interface ThyGlobalNotifyConfig {\n placement?: ThyNotifyPlacement;\n\n pauseOnHover?: boolean;\n\n duration?: number;\n\n maxStack?: number;\n\n offset?: string;\n}\n\nexport interface ThyNotifyDetail {\n link?: string;\n content?: string;\n action?: (event?: Event) => void;\n}\n\n/**\n * 打开notify通知的配置\n * @public\n * @order 10\n */\nexport interface ThyNotifyConfig extends ThyMessageBaseConfig {\n /**\n * 通知弹出位置\n */\n placement?: ThyNotifyPlacement;\n\n /**\n * 弹出通知的类型\n */\n type?: ThyNotifyType;\n\n /**\n * 标题\n */\n title?: string;\n\n /**\n * 提示内容\n */\n content?: string | ComponentTypeOrTemplateRef<any>;\n\n contentInitialState?: any;\n\n /**\n * 提示内容的详情,是对内容的详情描述,也可以是能够操作的链接,link是链接名,content是详情描述,action是点击的方法\n */\n detail?: string | ThyNotifyDetail;\n\n /**\n * 自定义传入html模板\n */\n html?: ElementRef;\n}\n\nexport const THY_NOTIFY_DEFAULT_CONFIG = new InjectionToken<ThyGlobalNotifyConfig>('thy-notify-default-config');\n\nexport const THY_NOTIFY_DEFAULT_CONFIG_VALUE: ThyGlobalNotifyConfig = {\n placement: 'topRight',\n offset: '20',\n duration: 4500,\n pauseOnHover: true,\n maxStack: 8\n};\n\nexport const THY_NOTIFY_DEFAULT_CONFIG_PROVIDER = {\n provide: THY_NOTIFY_DEFAULT_CONFIG,\n useValue: THY_NOTIFY_DEFAULT_CONFIG_VALUE\n};\n","import { Injectable, inject } from '@angular/core';\nimport { ThyAbstractMessageQueue } from 'ngx-tethys/message';\nimport { map, shareReplay } from 'rxjs/operators';\nimport { ThyNotifyRef } from './notify-ref';\nimport { THY_NOTIFY_DEFAULT_CONFIG, THY_NOTIFY_DEFAULT_CONFIG_VALUE } from './notify.config';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyNotifyQueue extends ThyAbstractMessageQueue<ThyNotifyRef> {\n topLeftQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'topLeft')),\n shareReplay()\n );\n\n topRightQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'topRight')),\n shareReplay()\n );\n\n bottomLeftQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'bottomLeft')),\n shareReplay()\n );\n\n bottomRightQueues$ = this.queues$.pipe(\n map(queues => queues.filter(item => item.config.placement === 'bottomRight')),\n shareReplay()\n );\n\n constructor() {\n const defaultConfig = inject(THY_NOTIFY_DEFAULT_CONFIG);\n\n super({\n ...THY_NOTIFY_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n });\n }\n}\n","import { Component, HostBinding, effect, inject, signal, computed } from '@angular/core';\nimport { trigger, state, style, animate, transition } from '@angular/animations';\nimport { helpers, isString } from 'ngx-tethys/util';\nimport { ThyNotifyConfig, ThyNotifyDetail, ThyNotifyPlacement } from './notify.config';\nimport { ANIMATION_IN_DURATION, ANIMATION_OUT_DURATION, HIDE_STYLE, ThyAbstractMessageComponent } from 'ngx-tethys/message';\nimport { ThyNotifyQueue } from './notify-queue.service';\nimport { ThyViewOutletDirective } from 'ngx-tethys/shared';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-notify',\n templateUrl: './notify.component.html',\n host: {\n '[class]': \"'thy-notify thy-notify-' + config().type\"\n },\n animations: [\n trigger('flyInOut', [\n state('flyInOutRight', style({ transform: 'translateX(0)', opacity: 1, height: '*' })),\n transition('void => flyInOutRight', [\n style({ transform: 'translateX(100%)', opacity: 0, height: '*' }),\n animate(ANIMATION_IN_DURATION)\n ]),\n transition('flyInOutRight => componentHide', [animate(ANIMATION_OUT_DURATION, style(HIDE_STYLE))]),\n state('flyInOutLeft', style({ transform: 'translateX(0)', opacity: 1, height: '*' })),\n transition('void => flyInOutLeft', [\n style({ transform: 'translateX(-100%)', opacity: 0, height: '*' }),\n animate(ANIMATION_IN_DURATION)\n ]),\n transition('flyInOutLeft => componentHide', [animate(ANIMATION_OUT_DURATION, style(HIDE_STYLE))]),\n state('componentHide', style(HIDE_STYLE))\n ])\n ],\n imports: [ThyIcon, NgClass, ThyViewOutletDirective, NgTemplateOutlet]\n})\nexport class ThyNotify extends ThyAbstractMessageComponent<ThyNotifyConfig> {\n @HostBinding('@flyInOut') animationState: string;\n\n extendContentClass = signal(false);\n\n isShowDetail = signal(false);\n\n readonly contentIsString = computed(() => isString(this.config().content));\n\n private placement = computed<ThyNotifyPlacement>(() => {\n const config = this.config();\n return config.placement || 'topRight';\n });\n\n constructor() {\n const notifyQueue = inject(ThyNotifyQueue);\n super(notifyQueue);\n\n effect(() => {\n const placement = this.placement();\n if (placement === 'topLeft' || placement === 'bottomLeft') {\n this.animationState = 'flyInOutLeft';\n } else {\n this.animationState = 'flyInOutRight';\n }\n });\n }\n\n extendContent() {\n this.extendContentClass.set(true);\n }\n\n showDetailToggle() {\n this.isShowDetail.set(!this.isShowDetail());\n }\n\n triggerDetail() {\n const config = this.config();\n if (helpers.isFunction((config.detail as ThyNotifyDetail).action)) {\n (config.detail as ThyNotifyDetail).action();\n }\n if ((config.detail as ThyNotifyDetail).content) {\n this.showDetailToggle();\n }\n }\n}\n","@let notifyConfig = config();\n\n@if (notifyConfig?.html) {\n <a href=\"javascript:;\" class=\"thy-notify-close\" (click)=\"close()\">\n <thy-icon thyIconName=\"close\"></thy-icon>\n </a>\n <div class=\"thy-notify-main\">\n <template [ngTemplateOutlet]=\"notifyConfig?.html\"></template>\n </div>\n} @else {\n <a href=\"javascript:;\" class=\"thy-notify-close\" (click)=\"close()\">\n <thy-icon thyIconName=\"close\"></thy-icon>\n </a>\n <div class=\"thy-notify-icon-container\">\n <thy-icon [thyIconName]=\"iconName\"></thy-icon>\n </div>\n <div class=\"thy-notify-main\">\n <div class=\"thy-notify-title\">{{ notifyConfig?.title }}</div>\n @if (notifyConfig?.detail || notifyConfig?.content) {\n <div class=\"thy-notify-content\" [ngClass]=\"{ 'thy-notify-content--extend': extendContentClass() }\" (click)=\"extendContent()\">\n @if (notifyConfig?.content) {\n @if (contentIsString()) {\n {{ notifyConfig?.content }}\n } @else {\n <ng-container *thyViewOutlet=\"notifyConfig?.content; context: notifyConfig?.contentInitialState || {}\"></ng-container>\n }\n }\n @if (notifyConfig?.detail) {\n <a href=\"javascript:;\" class=\"link-secondary\" (click)=\"triggerDetail()\">{{ (notifyConfig?.detail)['link'] }}</a>\n }\n </div>\n }\n @if (isShowDetail()) {\n <div class=\"thy-notify-detail\">{{ (notifyConfig?.detail)['content'] }}</div>\n }\n </div>\n}\n","import { Component, inject } from '@angular/core';\nimport { ThyAbstractMessageContainerComponent } from 'ngx-tethys/message';\nimport { ThyNotifyQueue } from './notify-queue.service';\nimport { THY_NOTIFY_DEFAULT_CONFIG, THY_NOTIFY_DEFAULT_CONFIG_VALUE } from './notify.config';\nimport { ThyNotify } from './notify.component';\nimport { AsyncPipe } from '@angular/common';\n\n/**\n * @private\n */\n@Component({\n selector: 'thy-notify-container',\n templateUrl: './notify-container.component.html',\n imports: [ThyNotify, AsyncPipe],\n host: {\n class: 'thy-notify-container'\n }\n})\nexport class ThyNotifyContainer extends ThyAbstractMessageContainerComponent {\n notifyQueue = inject(ThyNotifyQueue);\n\n constructor() {\n const defaultConfig = inject(THY_NOTIFY_DEFAULT_CONFIG);\n\n super({\n ...THY_NOTIFY_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n });\n }\n}\n","<div class=\"thy-notify-bottomRight\" [style.bottom.px]=\"offset\" [style.right.px]=\"offset\">\n @for (item of notifyQueue.bottomRightQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n<div class=\"thy-notify-bottomLeft\" [style.bottom.px]=\"offset\" [style.left.px]=\"offset\">\n @for (item of notifyQueue.bottomLeftQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n<div class=\"thy-notify-topLeft\" [style.top.px]=\"offset\" [style.left.px]=\"offset\">\n @for (item of notifyQueue.topLeftQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n<div class=\"thy-notify-topRight\" [style.top.px]=\"offset\" [style.right.px]=\"offset\">\n @for (item of notifyQueue.topRightQueues$ | async; track item.id) {\n <thy-notify [thyConfig]=\"item.config\"></thy-notify>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyNotify } from './notify.component';\nimport { ThyNotifyContainer } from './notify-container.component';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { THY_NOTIFY_DEFAULT_CONFIG_PROVIDER } from './notify.config';\nimport { ThySharedModule } from 'ngx-tethys/shared';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, OverlayModule, PortalModule, ThyIconModule, ThyNotifyContainer, ThyNotify],\n exports: [ThyNotifyContainer, ThyNotify],\n providers: [THY_NOTIFY_DEFAULT_CONFIG_PROVIDER]\n})\nexport class ThyNotifyModule {}\n","import { ThyAbstractMessageRef } from 'ngx-tethys/message';\nimport { ThyNotifyConfig } from './notify.config';\n\nexport class ThyNotifyRef extends ThyAbstractMessageRef<ThyNotifyConfig> {}\n","import { isString } from 'ngx-tethys/util';\nimport { Injectable, Injector, Signal, inject } from '@angular/core';\nimport { ThyGlobalNotifyConfig, ThyNotifyConfig, THY_NOTIFY_DEFAULT_CONFIG, THY_NOTIFY_DEFAULT_CONFIG_VALUE } from './notify.config';\nimport { Overlay } from '@angular/cdk/overlay';\nimport { ThyNotifyRef } from './notify-ref';\nimport { ThyNotifyContainer } from './notify-container.component';\nimport { ThyNotifyQueue } from './notify-queue.service';\nimport { ThyAbstractMessageService } from 'ngx-tethys/message';\nimport { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';\nimport { injectLocale, ThyNotifyLocale } from 'ngx-tethys/i18n';\n\n/**\n * @order 20\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyNotifyService extends ThyAbstractMessageService<ThyNotifyContainer> {\n private notifyQueue: ThyNotifyQueue;\n protected config = inject(THY_NOTIFY_DEFAULT_CONFIG);\n public locale: Signal<ThyNotifyLocale> = injectLocale('notify');\n\n private _lastNotifyId = 0;\n\n private defaultConfig: ThyGlobalNotifyConfig;\n\n constructor() {\n const overlay = inject(Overlay);\n const injector = inject(Injector);\n const notifyQueue = inject(ThyNotifyQueue);\n\n super(overlay, injector, notifyQueue);\n this.notifyQueue = notifyQueue;\n const config = this.config;\n\n this.defaultConfig = {\n ...THY_NOTIFY_DEFAULT_CONFIG_VALUE,\n ...config\n };\n }\n\n /**\n * 打开自定义配置的 Notify\n */\n public show(config: ThyNotifyConfig): ThyNotifyRef {\n this.container = this.createContainer(ThyNotifyContainer);\n\n const notifyConfig = this.formatOptions(config);\n const notifyRef = new ThyNotifyRef(notifyConfig, this.overlayRef, this.notifyQueue);\n this.notifyQueue.add(notifyRef);\n return notifyRef;\n }\n\n /**\n * 打开类型为\"success\"的 Notify\n */\n public success(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'success',\n title: title || config?.title || this.locale().success,\n content: content || config?.content\n });\n }\n\n /**\n * 打开类型为\"info\"的 Notify\n */\n public info(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'info',\n title: title || config?.title || this.locale().info,\n content: content || config?.content\n });\n }\n\n /**\n * 打开类型为\"warning\"的 Notify\n */\n public warning(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'warning',\n title: title || config?.title || this.locale().warning,\n content: content || config?.content\n });\n }\n\n /**\n * 打开类型为\"error\"的 Notify\n */\n public error(title?: string, content?: string | ComponentTypeOrTemplateRef<any>, config?: ThyNotifyConfig) {\n return this.show({\n ...(config || {}),\n type: 'error',\n title: title || config?.title || this.locale().error,\n content: content || config?.content\n });\n }\n\n private formatOptions(config: ThyNotifyConfig) {\n if (isString(config.detail)) {\n config = { ...config, detail: { link: `[${this.locale().detail}]`, content: config.detail as string } };\n }\n return Object.assign({ type: 'blank' }, { id: String(this._lastNotifyId++) }, this.defaultConfig, config);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Version } from '@angular/core';
2
2
 
3
- const VERSION = new Version('19.1.4');
3
+ const VERSION = new Version('19.1.5');
4
4
 
5
5
  /**
6
6
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('19.1.4');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;MAEa,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ;;ACF3C;;AAEG;;;;"}
1
+ {"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('19.1.5');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;MAEa,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ;;ACF3C;;AAEG;;;;"}
package/i18n/i18n.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type ThyModuleType = 'datePicker' | 'layout' | 'dateRange' | 'timePicker' | 'calendar' | 'autocomplete' | 'transfer' | 'colorPicker' | 'strength' | 'guider' | 'copy' | 'nav' | 'dialog' | 'select' | 'treeSelect' | 'cascader' | 'pagination' | 'form' | 'empty' | 'image' | 'shared';
1
+ export type ThyModuleType = 'datePicker' | 'layout' | 'dateRange' | 'timePicker' | 'calendar' | 'autocomplete' | 'transfer' | 'colorPicker' | 'strength' | 'guider' | 'copy' | 'nav' | 'dialog' | 'select' | 'treeSelect' | 'cascader' | 'pagination' | 'form' | 'empty' | 'image' | 'notify' | 'shared';
2
2
  export type ThyModuleLocaleType<K extends ThyModuleType> = ThyI18nLocale[K];
3
3
  export declare enum ThyLocaleType {
4
4
  zhHans = "zh-hans",
@@ -29,6 +29,7 @@ export interface ThyI18nLocale {
29
29
  form: ThyFormLocale;
30
30
  empty: ThyEmptyLocale;
31
31
  image: ThyImageLocale;
32
+ notify: ThyNotifyLocale;
32
33
  shared: ThySharedLocale;
33
34
  }
34
35
  export interface ThyLayoutLocale {
@@ -178,6 +179,13 @@ export interface ThyImageLocale {
178
179
  prev: string;
179
180
  next: string;
180
181
  }
182
+ export interface ThyNotifyLocale {
183
+ success: string;
184
+ warning: string;
185
+ error: string;
186
+ info: string;
187
+ detail: string;
188
+ }
181
189
  export interface ThySharedLocale {
182
190
  comma: string;
183
191
  }
@@ -148,6 +148,13 @@ declare const _default: {
148
148
  prev: string;
149
149
  next: string;
150
150
  };
151
+ notify: {
152
+ success: string;
153
+ warning: string;
154
+ error: string;
155
+ info: string;
156
+ detail: string;
157
+ };
151
158
  shared: {
152
159
  comma: string;
153
160
  };
@@ -148,6 +148,13 @@ declare const _default: {
148
148
  prev: string;
149
149
  next: string;
150
150
  };
151
+ notify: {
152
+ success: string;
153
+ warning: string;
154
+ error: string;
155
+ info: string;
156
+ detail: string;
157
+ };
151
158
  shared: {
152
159
  comma: string;
153
160
  };
@@ -148,6 +148,13 @@ declare const _default: {
148
148
  prev: string;
149
149
  next: string;
150
150
  };
151
+ notify: {
152
+ success: string;
153
+ warning: string;
154
+ error: string;
155
+ info: string;
156
+ detail: string;
157
+ };
151
158
  shared: {
152
159
  comma: string;
153
160
  };
@@ -148,6 +148,13 @@ declare const _default: {
148
148
  prev: string;
149
149
  next: string;
150
150
  };
151
+ notify: {
152
+ success: string;
153
+ warning: string;
154
+ error: string;
155
+ info: string;
156
+ detail: string;
157
+ };
151
158
  shared: {
152
159
  comma: string;
153
160
  };
@@ -148,6 +148,13 @@ declare const _default: {
148
148
  prev: string;
149
149
  next: string;
150
150
  };
151
+ notify: {
152
+ success: string;
153
+ warning: string;
154
+ error: string;
155
+ info: string;
156
+ detail: string;
157
+ };
151
158
  shared: {
152
159
  comma: string;
153
160
  };
@@ -1,8 +1,10 @@
1
+ import { Signal } from '@angular/core';
1
2
  import { ThyGlobalNotifyConfig, ThyNotifyConfig } from './notify.config';
2
3
  import { ThyNotifyRef } from './notify-ref';
3
4
  import { ThyNotifyContainer } from './notify-container.component';
4
5
  import { ThyAbstractMessageService } from 'ngx-tethys/message';
5
6
  import { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';
7
+ import { ThyNotifyLocale } from 'ngx-tethys/i18n';
6
8
  import * as i0 from "@angular/core";
7
9
  /**
8
10
  * @order 20
@@ -10,6 +12,7 @@ import * as i0 from "@angular/core";
10
12
  export declare class ThyNotifyService extends ThyAbstractMessageService<ThyNotifyContainer> {
11
13
  private notifyQueue;
12
14
  protected config: ThyGlobalNotifyConfig;
15
+ locale: Signal<ThyNotifyLocale>;
13
16
  private _lastNotifyId;
14
17
  private defaultConfig;
15
18
  constructor();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-tethys",
3
- "version": "19.1.4",
3
+ "version": "19.1.5",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@github.com/atinc/ngx-tethys.git"
@@ -1 +1 @@
1
- export declare const VERSION = "19.1.4";
1
+ export declare const VERSION = "19.1.5";
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '19.1.4';
4
+ exports.VERSION = '19.1.5';