diff --git a/src/app/config/localization.config.ts b/src/app/config/localization.config.ts index 4fe8473..8b93311 100644 --- a/src/app/config/localization.config.ts +++ b/src/app/config/localization.config.ts @@ -11,23 +11,14 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ language: 'fa', direction: 'rtl', resources: [ - // - //#region App ... - // TODO: Customize this ... { id: 'app_name', - value: 'چارچوب ایکس', + value: 'ساحر علم', }, - // - // TODO: Customize this ... { id: 'company', value: 'فن آوران ساحر علم', }, - //#endregion - - // - //#region Commons ... { id: 'id', value: 'شناسه', @@ -36,8 +27,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'file_name', value: 'نام فایل', }, - - // { id: 'error', value: 'خطا', @@ -46,14 +35,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'required', value: 'الزامی است.', }, - - // { id: 'loading', value: 'بارگزاری', }, - - // { id: 'username', value: 'نام کاربری', @@ -62,8 +47,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'password', value: 'کلمه عبور', }, - - // { id: 'first_name', value: 'نام', @@ -72,8 +55,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'last_name', value: 'نام خانوادگی', }, - - // { id: 'verified', value: 'تایید شده', @@ -82,20 +63,14 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'unverified', value: 'تایید نشده', }, - - // { id: 'thumbnail', value: 'پیش نمایش', }, - - // { id: 'language', value: 'زبان', }, - - // { id: 'take_screenshot', value: 'تصویر برداری ازمحیط', @@ -108,10 +83,30 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'disable_capture_mode', value: 'غیرفعالسازی حالت تصویر برداری', }, - //#endregion - - // - //#region File Types ... + { + id: 'be', + value: 'باشد', + }, + { + id: 'not_to_be', + value: 'نباشد', + }, + { + id: 'enabled', + value: 'فعال', + }, + { + id: 'disabled', + value: 'غیر فعال', + }, + { + id: 'banned', + value: 'مسدود', + }, + { + id: 'un_banned', + value: 'غیر مسدود', + }, { id: 'audio', value: 'صوت', @@ -120,10 +115,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'video', value: 'فیلم', }, - { - id: 'document', - value: 'سند', - }, { id: 'cover_image', value: 'تصویر', @@ -134,7 +125,7 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ }, { id: 'avatar', - value: 'تصویر پروفایل', + value: 'شکلک', }, { id: 'unknown', @@ -144,10 +135,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'location', value: 'موقعیت جغرافیای', }, - //#endregion - - // - //#region Messages ... { id: 'are_you_sure', value: 'اطمینان دارید ؟', @@ -173,10 +160,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'drag_drop_here', value: 'محل رها کردن فایل', }, - //#endregion - - // - //#region Components ... { id: 'map_dialog_title', value: 'نمایش موقعیت مکانی', @@ -189,10 +172,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'color_picker_dialog_title', value: 'انتخاب رنگ', }, - //#endregion - - // - //#region Verbs ... { id: 'dismiss', value: 'رد کردن', @@ -257,7 +236,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'clear', value: 'پاک کردن', }, - // { id: 'set', value: 'تنظیم', @@ -314,7 +292,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'inverse_selection', value: 'انتخاب معکوس', }, - // { id: 'selected_location', value: 'انتخاب محل', @@ -399,13 +376,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'descriptions', value: 'توضیحات', }, - - // { id: 'type', value: 'نوع', }, - // { id: 'media', value: 'رسانه', @@ -414,8 +388,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'medias', value: 'رسانه ها', }, - - // + { + id: 'summary', + value: 'خلاصه', + }, { id: 'go', value: 'رفتن', @@ -428,10 +404,26 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'preview', value: 'پیش نمایش', }, - //#endregion - - // - //#region Pagination ... + { + id: 'close', + value: 'بستن', + }, + { + id: 'undo', + value: 'لغو کردن', + }, + { + id: 'redo', + value: 'انجام دوباره', + }, + { + id: 'refresh', + value: 'بازیابی', + }, + { + id: 'submit', + value: 'ثبت', + }, { id: 'first', value: 'نخستین', @@ -452,10 +444,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'back', value: 'بازگشت', }, - //#endregion - - // - //#region Markdown ... { id: 'x_markdown_preview', value: 'پیش نمایش', @@ -500,11 +488,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'x_markdown_guide', value: 'راهنمای نگارش', }, - //#endregion - - // - //#region Theme Related ... - // { id: 'theme', value: 'پوسته', @@ -513,7 +496,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'theme_mode', value: 'حالت نمایشی', }, - // { id: 'theme_dark', value: 'تیره', @@ -522,7 +504,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'theme_light', value: 'روشن', }, - // { id: 'theme_name', value: 'نام پوسته', @@ -531,15 +512,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'theme_name_description', value: 'نام پوسته را وارد کنید', }, - // { id: 'theme_clone_title', value: 'نمونه گیری از پوسته', }, - //#endregion - - // - //#region Color Picker Related ... { id: 'input_color_title', value: 'تعیین رنگ', @@ -548,10 +524,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'input_color_description', value: 'مقدار رنگ را وارد کنید', }, - //#endregion - - // - //#region Additionals ... { id: 'ide_mode', value: 'نوع کد', @@ -560,15 +532,290 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'ide_format', value: 'حالت دهی کد', }, - //#endregion - - // - // Custom Translations ... - ...FaCustomLocales, - - // - // Persian Translated Exceptions ... - ...XFaIRExceptions, + { + id: 'print', + value: 'چاپ', + }, + { + id: 'export_png', + value: 'خروجی PNG', + }, + { + id: 'export_svg', + value: 'خروجی SVG', + }, + { + id: 'export_csv', + value: 'خروجی CSV', + }, + { + id: 'zoom_in', + value: 'بزرگنمایی', + }, + { + id: 'zoom_out', + value: 'کوچک نمایی', + }, + { + id: 'zoom_selection', + value: 'بزرگنمایی ناحیه', + }, + { + id: 'x_axis', + value: 'محور افقی', + }, + { + id: 'y_axis', + value: 'محور عمودی', + }, + { + id: 'xy_axis', + value: 'محورهای عمودی و افقی', + }, + { + id: 'pan', + value: 'حرکت آزاد', + }, + { + id: 'full_screen', + value: 'حالت تمام صفحه', + }, + { + id: 'ex_100', + value: 'داده نا معتبر', + }, + { + id: 'ex_101', + value: 'تاریخ نامعتبر', + }, + { + id: 'ex_102', + value: 'درخواست اشتباه', + }, + { + id: 'ex_103', + value: 'ورودی نامعتبر', + }, + { + id: 'ex_104', + value: 'پیام نامعتبر', + }, + { + id: 'ex_105', + value: 'نشانه نامعتبر', + }, + { + id: 'ex_106', + value: 'کد اععتبارسنجی نامعتبر', + }, + { + id: 'ex_107', + value: 'پست الکترونیک نامعتبر', + }, + { + id: 'ex_108', + value: 'شماره تلفن همراه نامعتبر', + }, + { + id: 'ex_109', + value: 'کلمه عبور نامعتبر', + }, + { + id: 'ex_110', + value: 'آدرس اینترنتی نامعتبر', + }, + { + id: 'ex_111', + value: 'دستگاه نامعتبر', + }, + { + id: 'ex_112', + value: 'تصویر پروفایل نامعتبر', + }, + { + id: 'ex_113', + value: 'فایل نامعتبر', + }, + { + id: 'ex_114', + value: 'نام کاربری نامعتبر', + }, + { + id: 'ex_200', + value: 'یافت نشد', + }, + { + id: 'ex_201', + value: 'عدم تایید جواز', + }, + { + id: 'ex_202', + value: 'سطح دسترسی نامعتبر', + }, + { + id: 'ex_203', + value: 'غیر قابل نمایش', + }, + { + id: 'ex_300', + value: 'حساب کاربری قفل شده است', + }, + { + id: 'ex_301', + value: 'خطا در ورود', + }, + { + id: 'ex_302', + value: 'کاربر قبلا ثبت نام کرده است', + }, + { + id: 'ex_303', + value: 'کاربر غیرفعال است', + }, + { + id: 'ex_304', + value: 'دستگاه شما قفل شده است تا : (0)', + }, + { + id: 'ex_305', + value: 'امکان درخواست کد اعتبارسنجی وجود ندارد تا : (0)', + }, + { + id: 'ex_306', + value: 'کلمه عبورها یکسان هستند', + }, + { + id: 'ex_307', + value: 'شماره های تلفن یکسان هستند', + }, + { + id: 'ex_308', + value: 'آدرس های پست الکترونیک یکسان هستند', + }, + { + id: 'ex_309', + value: 'شماره تلفن قبلا ثبت شده است', + }, + { + id: 'ex_310', + value: 'پست الکترونیک قبلا ثبت شده است', + }, + { + id: 'ex_311', + value: 'تلفن همراه تایید نشده است', + }, + { + id: 'ex_312', + value: 'پست الکترونیک تایید نشده است', + }, + { + id: 'ex_313', + value: 'مطلب ممنوعه', + }, + { + id: 'ex_314', + value: 'کاربر ممنوعه', + }, + { + id: 'ex_400', + value: 'خطای نا شناخته', + }, + { + id: 'ex_401', + value: 'مورد تکراری', + }, + { + id: 'ex_402', + value: 'شکست عملیات', + }, + { + id: 'ex_403', + value: 'تاریخ مصرف منقضی شده است', + }, + { + id: 'ex_404', + value: 'غیر قابل اسفاده', + }, + { + id: 'ex_405', + value: 'تعداد برچسب ها بیش از جد مجاز است', + }, + { + id: 'ex_406', + value: 'اتمام مهلت زمانی', + }, + { + id: 'ex_500', + value: 'پرونده خالی است', + }, + { + id: 'ex_501', + value: 'اندازه بیش از حد مجاز', + }, + { + id: 'ex_502', + value: 'گونه نامعتبر فایل', + }, + { + id: 'ex_503', + value: 'تعداد رسانه ها بیش از حد مجاز است', + }, + { + id: 'ex_600', + value: 'پیکربندی اشتباه', + }, + { + id: 'ex_601', + value: 'خطا در پیکربندی سامانه ذخیره سازی', + }, + { + id: 'ex_602', + value: 'خطا در پیکربندی سامانه ذخیره سازی', + }, + { + id: 'ex_900', + value: 'تعداد فایل ها بیش از حد مجاز است', + }, + { + id: 'ex_901', + value: 'مجموع اندازه فایل ها کمتر از حد مجاز است', + }, + { + id: 'ex_902', + value: 'مجموع اندازه فایل ها بیش از حد مجاز است', + }, + { + id: 'ex_903', + value: 'شرایط و ضوابط باید پذیرفته شوند', + }, + { + id: 'ex_904', + value: 'عدم پشتیبانی از سیستم موقعیت یاب', + }, + { + id: 'ex_905', + value: 'مجوز دسترسی به موقعیت خود را صادر نکرده اید', + }, + { + id: 'ex_906', + value: 'دسترسی به موقعیت جغرافیایی امکان پذیر نیست', + }, + { + id: 'ex_907', + value: 'عدم پشتیبانی از سیستم ذخیره سازی', + }, + { + id: 'ex_908', + value: 'برای دسترسی به محتوا باید از سامانه خارج شوید', + }, + { + id: 'ex_909', + value: 'زبان انتخاب شده نامعتبر است', + }, + { + id: 'ex_910', + value: 'داده نامعتبر برای انتخاب کاربر', + }, ], }, { @@ -577,23 +824,14 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ language: 'en', direction: 'ltr', resources: [ - // - //#region App ... - // TODO: Customize this ... { id: 'app_name', - value: 'XFramework', + value: 'SaherElm', }, - // - // TODO: Customize this ... { id: 'company', value: 'SaherElm IT Center', }, - //#endregion - - // - //#region Commons ... { id: 'id', value: 'ID', @@ -602,8 +840,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'file_name', value: 'File Name', }, - - // { id: 'error', value: 'Error', @@ -612,14 +848,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'required', value: 'required', }, - - // { id: 'loading', value: 'loading', }, - - // { id: 'username', value: 'Username', @@ -628,8 +860,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'password', value: 'Password', }, - - // { id: 'first_name', value: 'Firstname', @@ -638,8 +868,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'last_name', value: 'Lastname', }, - - // { id: 'verified', value: 'Verified', @@ -648,20 +876,14 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'unverified', value: 'Unverified', }, - - // { id: 'thumbnail', value: 'Thumbnail', }, - - // { id: 'language', value: 'Language', }, - - // { id: 'take_screenshot', value: 'Take Screenshot', @@ -674,10 +896,30 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'disable_capture_mode', value: 'Disable Capture Mode', }, - //#endregion - - // - //#region File Types ... + { + id: 'be', + value: 'Be', + }, + { + id: 'not_to_be', + value: 'Not to be', + }, + { + id: 'enabled', + value: 'Enabled', + }, + { + id: 'disabled', + value: 'Disabled', + }, + { + id: 'banned', + value: 'Banned', + }, + { + id: 'un_banned', + value: 'UnBanned', + }, { id: 'audio', value: 'Audio', @@ -686,10 +928,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'video', value: 'Video', }, - { - id: 'document', - value: 'Document', - }, { id: 'cover_image', value: 'Cover Image', @@ -710,10 +948,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'location', value: 'Location', }, - //#endregion - - // - //#region Messages ... { id: 'are_you_sure', value: 'Are You Sure ?', @@ -738,10 +972,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'drag_drop_here', value: 'Drop File Here', }, - //#endregion - - // - //#region Components ... { id: 'map_dialog_title', value: 'Show Location', @@ -754,10 +984,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'color_picker_dialog_title', value: 'Select Color', }, - //#endregion - - // - //#region Verbs ... { id: 'dismiss', value: 'dismiss', @@ -822,7 +1048,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'clear', value: 'Clear', }, - // { id: 'set', value: 'Set', @@ -879,7 +1104,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'inverse_selection', value: 'Inverse Selection', }, - // { id: 'selected_location', value: 'Selected Location', @@ -900,7 +1124,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'colors', value: 'Colors', }, - // { id: 'upload', value: 'Upload', @@ -965,13 +1188,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'descriptions', value: 'Description', }, - - // { id: 'type', value: 'Type', }, - // { id: 'media', value: 'Media', @@ -980,8 +1200,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'medias', value: 'Medias', }, - - // + { + id: 'summary', + value: 'Summary', + }, { id: 'go', value: 'Go', @@ -994,10 +1216,26 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'preview', value: 'Preview', }, - //#endregion - - // - //#region Pagination ... + { + id: 'close', + value: 'Close', + }, + { + id: 'undo', + value: 'Undo', + }, + { + id: 'redo', + value: 'Redo', + }, + { + id: 'refresh', + value: 'Refresh', + }, + { + id: 'submit', + value: 'Submit', + }, { id: 'first', value: 'First', @@ -1018,10 +1256,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'back', value: 'Back', }, - //#endregion - - // - //#region Markdown ... { id: 'x_markdown_preview', value: 'Preview', @@ -1066,11 +1300,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'x_markdown_guide', value: 'Markdown Guide', }, - //#endregion - - // - //#region Theme Related ... - // { id: 'theme', value: 'Theme', @@ -1079,7 +1308,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'theme_mode', value: 'Theme Mode', }, - // { id: 'theme_dark', value: 'Dark', @@ -1088,7 +1316,6 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'theme_light', value: 'Light', }, - // { id: 'theme_name', value: 'Theme Name', @@ -1097,15 +1324,10 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'theme_name_description', value: 'Enter Theme name', }, - // { id: 'theme_clone_title', value: 'Theme Cloning', }, - //#endregion - - // - //#region Color Picker Related ... { id: 'input_color_title', value: 'Color Value', @@ -1114,27 +1336,298 @@ export const AvailableTranslationResources: XLanguageDescriptor[] = [ id: 'input_color_description', value: 'input color value', }, - //#endregion - - // - //#region Additionals ... { id: 'ide_mode', value: 'Code Style', }, { id: 'ide_format', - value: 'Code Frormatting', + value: 'Code Formatting', + }, + { + id: 'print', + value: 'Print', + }, + { + id: 'export_png', + value: 'Export PNG', + }, + { + id: 'export_svg', + value: 'Export SVG', + }, + { + id: 'export_csv', + value: 'Export CSV', + }, + { + id: 'zoom_in', + value: 'Zoom In', + }, + { + id: 'zoom_out', + value: 'Zoom Out', + }, + { + id: 'zoom_selection', + value: 'Zoom Selection', + }, + { + id: 'x_axis', + value: 'X Axis', + }, + { + id: 'y_axis', + value: 'Y Axis', + }, + { + id: 'xy_axis', + value: 'XY Axis', + }, + { + id: 'pan', + value: 'Pan', + }, + { + id: 'full_screen', + value: 'Full Screen', + }, + { + id: 'ex_100', + value: 'Invalid Data ...', + }, + { + id: 'ex_101', + value: 'Invalid Date ...', + }, + { + id: 'ex_102', + value: 'Bad Request ...', + }, + { + id: 'ex_103', + value: 'Invalid Args ...', + }, + { + id: 'ex_104', + value: 'Invalid Message ...', + }, + { + id: 'ex_105', + value: 'Invalid Token ...', + }, + { + id: 'ex_106', + value: 'Invalid Verification Code ...', + }, + { + id: 'ex_107', + value: 'Invalid Email Address ...', + }, + { + id: 'ex_108', + value: 'Invalid Mobile Number ...', + }, + { + id: 'ex_109', + value: 'Invalid Password ...', + }, + { + id: 'ex_110', + value: 'Invalid URL ...', + }, + { + id: 'ex_111', + value: 'Invalid Device ...', + }, + { + id: 'ex_112', + value: 'Invalid Profile Image ...', + }, + { + id: 'ex_113', + value: 'Invalid File ...', + }, + { + id: 'ex_114', + value: 'Invalid Username ...', + }, + { + id: 'ex_200', + value: 'Not Found ...', + }, + { + id: 'ex_201', + value: 'Not Allowed ...', + }, + { + id: 'ex_202', + value: 'Not Authorized ...', + }, + { + id: 'ex_203', + value: 'Not Visible ...', + }, + { + id: 'ex_300', + value: 'Account Locked out ...', + }, + { + id: 'ex_301', + value: 'Login Failed ...', + }, + { + id: 'ex_302', + value: 'User Registered Before ...', + }, + { + id: 'ex_303', + value: 'User Disabled ...', + }, + { + id: 'ex_304', + value: 'Device Banned Until:(0)', + }, + { + id: 'ex_305', + value: 'You can not Request Verification code Until:(0)', + }, + { + id: 'ex_306', + value: 'Passwords Same ...', + }, + { + id: 'ex_307', + value: 'Mobiles Same ...', + }, + { + id: 'ex_308', + value: 'Emails Same ...', + }, + { + id: 'ex_309', + value: 'Mobile In Used ...', + }, + { + id: 'ex_310', + value: 'Email In Used ...', + }, + { + id: 'ex_311', + value: 'Mobile Not Confirmed ...', + }, + { + id: 'ex_312', + value: 'Email Not Confirmed ...', + }, + { + id: 'ex_313', + value: 'Post Banned ...', + }, + { + id: 'ex_314', + value: 'User Banned ...', + }, + { + id: 'ex_400', + value: 'Unknown Error ...', + }, + { + id: 'ex_401', + value: 'Duplicate ...', + }, + { + id: 'ex_402', + value: 'Action Failed ...', + }, + { + id: 'ex_403', + value: 'Expired Date ...', + }, + { + id: 'ex_404', + value: 'Unavailable ...', + }, + { + id: 'ex_405', + value: 'Max Allowed Tag Exceeded ...', + }, + { + id: 'ex_406', + value: 'Timeout ...', + }, + { + id: 'ex_500', + value: 'Empty File ...', + }, + { + id: 'ex_501', + value: 'max File size exceeded ...', + }, + { + id: 'ex_502', + value: 'Unsupported File Type ...', + }, + { + id: 'ex_503', + value: 'Max Allowed Media Exceeded ...', + }, + { + id: 'ex_600', + value: 'Invalid Configuration ...', + }, + { + id: 'ex_601', + value: 'Storage Service Initiallization Failed ...', + }, + { + id: 'ex_602', + value: 'Message Service Initialization Failed ...', + }, + { + id: 'ex_900', + value: 'Max Allowed Files Exceeded ...', + }, + { + id: 'ex_901', + value: 'Min Files Size Exceeded ...', + }, + { + id: 'ex_902', + value: 'Max Files Size Exceeded ...', + }, + { + id: 'ex_903', + value: 'Must Accept Terms And Conditions ...', + }, + { + id: 'ex_904', + value: 'Browser does not support Location Services ...', + }, + { + id: 'ex_905', + value: 'You have rejected access to your Location ...', + }, + { + id: 'ex_906', + value: 'Unable to determine your Location ...', + }, + { + id: 'ex_907', + value: 'Browser does not support Storage Services ...', + }, + { + id: 'ex_908', + value: 'Must Logout to access content ...', + }, + { + id: 'ex_909', + value: 'Invalid Locale ...', + }, + { + id: 'ex_910', + value: 'Invalid User Selector ...', }, - //#endregion - - // - // Custom Translations ... - ...EnCustomLocales, - - // - // Persian Translated Exceptions ... - ...XEnUSExceptions, ], }, ]; diff --git a/src/app/pages/components/chart/chart.page.html b/src/app/pages/components/chart/chart.page.html index ad89713..7c56b7d 100644 --- a/src/app/pages/components/chart/chart.page.html +++ b/src/app/pages/components/chart/chart.page.html @@ -25,13 +25,16 @@ diff --git a/src/app/pages/components/chart/chart.page.ts b/src/app/pages/components/chart/chart.page.ts index 64f97a2..99761ed 100644 --- a/src/app/pages/components/chart/chart.page.ts +++ b/src/app/pages/components/chart/chart.page.ts @@ -1,8 +1,14 @@ -import { Component, ViewChild } from '@angular/core'; +import { + XChartOptions, + XChartSeriesType, + XChartAvailableActionBarItem, + XChartActionBarItem, + XActionBarActionFiredModel, +} from 'x-framework-components'; +import { Component } from '@angular/core'; import { isNullOrEmptyString } from 'x-framework-core'; import { VPageComponent } from '../../../views/v-page/v-page.component'; import { AppResourceIDs } from 'src/app/config/app.localization.config'; -import { XChartOptions, XChartSeriesType } from 'x-framework-components'; @Component({ selector: 'app-chart', @@ -17,6 +23,46 @@ export class ChartPage extends VPageComponent { toolbarTitle = this.resourceProvider(this.titleRes); toolbarSubTitle = this.resourceProvider(AppResourceIDs.form_description); + // + availableActionBarItems: Array = [ + { + actionId: XChartActionBarItem.Pan, + }, + { + actionId: XChartActionBarItem.ZoomIn, + }, + { + actionId: XChartActionBarItem.ZoomOut, + }, + { + actionId: XChartActionBarItem.ZoomSelection, + }, + { + actionId: XChartActionBarItem.ToggleFullScreen, + }, + { + actionId: XChartActionBarItem.Print, + }, + { + actionId: XChartActionBarItem.ExportAsCSV, + }, + { + actionId: XChartActionBarItem.ExportAsPNG, + }, + { + actionId: XChartActionBarItem.ExportAsSVG, + }, + { + actionId: XChartActionBarItem.XSelection, + }, + { + actionId: XChartActionBarItem.YSelection, + }, + { + actionId: XChartActionBarItem.XYSelection, + }, + ]; + readonly contentFa = ` # ${this.toolbarTitle} @@ -66,10 +112,8 @@ export class ChartPage extends VPageComponent { // chartOptions: XChartOptions = { chart: { - type: 'line', height: 350, fontFamily: 'Vazirmatn, sans-serif', // فونت فارسی - toolbar: { show: true }, }, xaxis: { categories: [ @@ -94,6 +138,190 @@ export class ChartPage extends VPageComponent { tooltip: { theme: 'dark' }, dataLabels: { enabled: false }, }; + + // + //#region Chart Samples ... + + // + //#region Sample 1 ... + // Title: Basic Line Chart + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/line-charts/basic-line/ + sample1_options = { + series: [ + { + name: 'Sign-ups', + data: [210, 380, 340, 520, 480, 610, 700, 880, 820, 1040, 1180, 1520], + }, + ], + chart: { + height: 350, + type: 'line', + zoom: { + enabled: false, + }, + }, + dataLabels: { + enabled: false, + }, + stroke: { + curve: 'straight', + }, + title: { + text: 'New Sign-ups by Month', + align: 'left', + }, + xaxis: { + categories: [ + 'Jan', + 'Feb', + 'Mar', + 'Apr', + 'May', + 'Jun', + 'Jul', + 'Aug', + 'Sep', + 'Oct', + 'Nov', + 'Dec', + ], + }, + }; + //#endregion + + // + //#region Sample 2 ... + // Title: Line with Data Labels + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/line-charts/line-with-data-labels/ + sample2_options = { + series: [ + { + name: 'High - 2025', + data: [28, 29, 33, 36, 32, 32, 33], + }, + { + name: 'Low - 2025', + data: [12, 11, 14, 18, 17, 13, 13], + }, + ], + chart: { + height: 350, + type: 'line', + dropShadow: { + enabled: true, + color: '#000', + top: 18, + left: 7, + blur: 10, + opacity: 0.2, + }, + zoom: { + enabled: false, + }, + toolbar: { + show: false, + }, + }, + colors: ['#77B6EA', '#545454'], + dataLabels: { + enabled: true, + }, + stroke: { + curve: 'smooth', + }, + title: { + text: 'Average High & Low Temperature', + align: 'left', + }, + grid: { + borderColor: '#e7e7e7', + }, + markers: { + size: 1, + }, + xaxis: { + categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul'], + title: { + text: 'Month', + }, + }, + yaxis: { + title: { + text: 'Temperature (°C)', + }, + min: 5, + max: 40, + }, + legend: { + position: 'top', + horizontalAlign: 'right', + floating: true, + offsetY: -25, + offsetX: -5, + }, + }; + //#endregion + + // + //#region Sample 3 ... + // Title: Zoomable Timeseries + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/line-charts/zoomable-timeseries/ + //#endregion + + // + //#region Sample 4 ... + // Title: Line with Annotations + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/line-charts/line-with-annotations/ + //#endregion + + // + //#region Sample 5 ... + // Title: Annotations with Tooltips + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/line-charts/line-with-annotation-tooltips/ + //#endregion + + // + //#region Sample 6 ... + // Title: Basic Candlestick + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/candlestick-charts/basic/ + //#endregion + + // + //#region Sample 7 ... + // Title: Candlestick + Bar + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/candlestick-charts/candlestick-bar/ + //#endregion + + // + //#region Sample 8 ... + // Title: Candlestick + Line + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/candlestick-charts/candlestick-line/ + //#endregion + + // + //#region Sample 9 ... + // Title: Slope Multi Group + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/slope-charts/multi-group/ + //#endregion + + // + //#region Sample 10 ... + // Title: Color Scale + // Description: + // Url: https://apexcharts.com/javascript-chart-demos/treemap-charts/color-scale/ + //#endregion + + //#endregion + //#endregion // @@ -139,5 +367,10 @@ export class ChartPage extends VPageComponent { // dissmissable: true, // }); } + + async handleActionBarActionFired(event: XActionBarActionFiredModel) { + // + console.log('actionBar Fired: ', event.action); + } //#endregion }