also expect one directory higher; incorporates #207 (@iuyiuy) - Breaking change: Separate `extIconsPath` from `extPath` (not copying over icons) - Breaking change: Don't reference `custom.css` in HTML; can instead be referenced in JavaScript through the config file (provided in `svgedit-config-sample-iife.js`/`svgedit-config-sample-es.js` as `svgedit-custom.css` for better namespacing); incorporates #207 (@iuyiuy) - Breaking change: Remove minified jgraduate/spinbtn files (minified within Rollup routine) - Fix: Zoom when scrolled; incorporates #169 (@AndrolGenhald), adapting for conventions; also allow avoidance when shift key pressed - Fix: Update Atom feed reference in HTML - Fixes related to recent commits: Some path and method name fixes needed, function order, missing methods, variable scope declaration, no need for DOMContentLoaded listeners in modules, switch back to non-default export, avoid trimming nullish, deal with mock tests, fix `math.matrixMultiply`, use jquery-svg where needed for array/SVG attributes; add babel-polyfill and defer script to imagelib; other misc. fixes - Enhancement: Move config-sample.js out of `editor` directory - Enhancement: For `callback`-style extensions, also provide config object; add following to that object: buildCanvgCallback, canvg, decode64, encode64, executeAfterLoads, getTypeMap, isChrome, ieIE, NS, text2xml - Enhancement: Complete ES6 modules work (extensions, locales, tests), along with Babel; make Node build routine for converting modular source to non-modular, use `loadStylesheets` for modular stylehsheet defining (but parallel loading); - Enhancement: Add `stylesheets` config for modular but parallel stylesheet loading with `@default` option for simple inclusion/exclusion of defaults (if not going with default). - Refactoring: Clean up `svg-editor.html`: consistent indents; avoid extra lbs, avoid long lines - Refactoring: Avoid embedded API adding inline JavaScript listener - Refactoring: Move layers and context code to `draw.js` - Refactoring: Move `pathActions` from `svgcanvas.js` (though preserve aliases to these methods on `canvas`) and `convertPath` from `svgutils.js` to `path.js` - Refactoring: Move `getStrokedBBox` from `svgcanvas.js` (while keeping an alias) to `svgutils.js` (as `getStrokedBBoxDefaultVisible` to avoid conflict with existing) - Docs: Remove "dependencies" comments in code except where summarizing role of jQuery or a non-obvious dependency - Refactoring/Linting: Enfore `no-extra-semi` and `quote-props` rules - Refactoring: Further avoidance of quotes on properties (as possible) - Refactoring: Use `class` in place of functions where intended as classes - Refactoring: Consistency and granularity in extensions imports - Testing: Update QUnit to 2.6.1 (node_modules) and Sinon to 5.0.8 (and add sinon-test at 2.1.3) and enforce eslint-plugin-qunit linting rules; update custom extensions - Testing: Add node-static for automating (and accessing out-of-directory contents) - Testing: Avoid HTML attributes for styling - Testing: Add npm `test` script - Testing: Comment out unused jQuery SVG test - Testing: Add test1 and svgutils_performance_test to all tests page - Testing: Due apparently to Path having not been a formal class, the test was calling it without `new`; refactored now with sufficient mock data to take into account it is a class - npm: Update devDeps - npm: Add html modules and config build to test script
241 lines
11 KiB
JavaScript
241 lines
11 KiB
JavaScript
(function () {
|
||
'use strict';
|
||
|
||
svgEditor.readLang({
|
||
lang: 'fa',
|
||
dir: 'ltr',
|
||
common: {
|
||
ok: 'تأیید',
|
||
cancel: 'لغو',
|
||
key_backspace: 'پس بر ',
|
||
key_del: 'حذف ',
|
||
key_down: 'پایین ',
|
||
key_up: 'بالا ',
|
||
more_opts: 'More Options',
|
||
url: 'URL',
|
||
width: 'Width',
|
||
height: 'Height'
|
||
},
|
||
misc: {
|
||
powered_by: 'Powered by'
|
||
},
|
||
ui: {
|
||
toggle_stroke_tools: 'Show/hide more stroke tools',
|
||
palette_info: 'برای تغییر رنگ، کلیک کنید. برای تغییر رنگ لبه، کلید تبدیل (shift) را فشرده و کلیک کنید',
|
||
zoom_level: 'تغییر بزرگ نمایی',
|
||
panel_drag: 'Drag left/right to resize side panel'
|
||
},
|
||
properties: {
|
||
id: 'Identify the element',
|
||
fill_color: 'تغییر رنگ',
|
||
stroke_color: 'تغییر رنگ لبه',
|
||
stroke_style: 'تغییر نقطه چین لبه',
|
||
stroke_width: 'تغییر عرض لبه',
|
||
pos_x: 'تغییر مختصات X',
|
||
pos_y: 'تغییر مختصات Y',
|
||
linecap_butt: 'Linecap: Butt',
|
||
linecap_round: 'Linecap: Round',
|
||
linecap_square: 'Linecap: Square',
|
||
linejoin_bevel: 'Linejoin: Bevel',
|
||
linejoin_miter: 'Linejoin: Miter',
|
||
linejoin_round: 'Linejoin: Round',
|
||
angle: 'تغییر زاویه چرخش',
|
||
blur: 'Change gaussian blur value',
|
||
opacity: 'تغییر تاری عنصر انتخاب شده',
|
||
circle_cx: 'تغییر مختصات cx دایره',
|
||
circle_cy: 'تغییر مختصات cy دایره',
|
||
circle_r: 'تغییر شعاع دایره',
|
||
ellipse_cx: 'تغییر مختصات cx بیضی',
|
||
ellipse_cy: 'تغییر مختصات cy بیضی',
|
||
ellipse_rx: 'تغییر شعاع rx بیضی',
|
||
ellipse_ry: 'تغییر شعاع ry بیضی',
|
||
line_x1: 'تغییر مختصات x آغاز خط',
|
||
line_x2: 'تغییر مختصات x پایان خط',
|
||
line_y1: 'تغییر مختصات y آغاز خط',
|
||
line_y2: 'تغییر مختصات y پایان خط',
|
||
rect_height: 'تغییر ارتفاع مستطیل',
|
||
rect_width: 'تغییر عرض مستطیل',
|
||
corner_radius: 'شعاع گوشه:',
|
||
image_width: 'تغییر عرض تصویر',
|
||
image_height: 'تغییر ارتفاع تصویر',
|
||
image_url: 'تغییر نشانی وب (url)',
|
||
node_x: 'تغییر مختصات x نقطه',
|
||
node_y: 'تغییر مختصات y نقطه',
|
||
seg_type: 'تغییر نوع قطعه (segment)',
|
||
straight_segments: 'مستقیم',
|
||
curve_segments: 'منحنی',
|
||
text_contents: 'تغییر محتویات متن',
|
||
font_family: 'تغییر خانواده قلم',
|
||
font_size: 'تغییر اندازه قلم',
|
||
bold: 'متن توپر ',
|
||
italic: 'متن کج '
|
||
},
|
||
tools: {
|
||
main_menu: 'Main Menu',
|
||
bkgnd_color_opac: 'تغییر رنگ پس زمینه / تاری',
|
||
connector_no_arrow: 'No arrow',
|
||
fitToContent: 'هم اندازه شدن با محتوا',
|
||
fit_to_all: 'هم اندازه شدن با همه محتویات',
|
||
fit_to_canvas: 'هم اندازه شدن با صفحه مجازی (بوم)',
|
||
fit_to_layer_content: 'هم اندازه شدن با محتوای لایه',
|
||
fit_to_sel: 'هم اندازه شدن با اشیاء انتخاب شده',
|
||
align_relative_to: 'تراز نسبت به ...',
|
||
relativeTo: 'نسبت به:',
|
||
page: 'صفحه',
|
||
largest_object: 'بزرگترین شئ',
|
||
selected_objects: 'اشیاء انتخاب شده',
|
||
smallest_object: 'کوچکترین شئ',
|
||
new_doc: 'تصویر جدید ',
|
||
open_doc: 'باز کردن تصویر ',
|
||
export_img: 'Export',
|
||
save_doc: 'ذخیره تصویر ',
|
||
import_doc: 'Import Image',
|
||
align_to_page: 'Align Element to Page',
|
||
align_bottom: 'تراز پایین',
|
||
align_center: 'وسط چین',
|
||
align_left: 'چپ چین',
|
||
align_middle: 'تراز میانه',
|
||
align_right: 'راست چین',
|
||
align_top: 'تراز بالا',
|
||
mode_select: 'ابزار انتخاب ',
|
||
mode_fhpath: 'ابزار مداد ',
|
||
mode_line: 'ابزار خط ',
|
||
mode_connect: 'Connect two objects',
|
||
mode_rect: 'Rectangle Tool',
|
||
mode_square: 'Square Tool',
|
||
mode_fhrect: 'مستطیل با قابلیت تغییر پویا',
|
||
mode_ellipse: 'بیضی',
|
||
mode_circle: 'دایره',
|
||
mode_fhellipse: 'بیضی با قابلیت تغییر پویا',
|
||
mode_path: 'ابزار مسیر ',
|
||
mode_shapelib: 'Shape library',
|
||
mode_text: 'ابزار متن ',
|
||
mode_image: 'ابزار تصویر ',
|
||
mode_zoom: 'ابزار بزرگ نمایی ',
|
||
mode_eyedropper: 'Eye Dropper Tool',
|
||
no_embed: 'NOTE: This image cannot be embedded. It will depend on this path to be displayed',
|
||
undo: 'واگرد ',
|
||
redo: 'ازنو ',
|
||
tool_source: 'ویرایش منبع ',
|
||
wireframe_mode: 'حالت نمایش لبه ها ',
|
||
toggle_grid: 'Show/Hide Grid',
|
||
clone: 'Clone Element(s)',
|
||
del: 'Delete Element(s)',
|
||
group_elements: 'قرار دادن عناصر در گروه ',
|
||
make_link: 'Make (hyper)link',
|
||
set_link_url: 'Set link URL (leave empty to remove)',
|
||
to_path: 'تبدیل به مسیر',
|
||
reorient_path: 'جهت دهی مجدد مسیر',
|
||
ungroup: 'خارج کردن عناصر از گروه ',
|
||
docprops: 'مشخصات سند ',
|
||
imagelib: 'Image Library',
|
||
move_bottom: 'انتقال به پایین ترین ',
|
||
move_top: 'انتقال به بالاترین ',
|
||
node_clone: 'ایجاد کپی از نقطه',
|
||
node_delete: 'حذف نقطه',
|
||
node_link: 'پیوند دادن نقاط کنترل',
|
||
add_subpath: 'Add sub-path',
|
||
openclose_path: 'Open/close sub-path',
|
||
source_save: 'اعمال تغییرات',
|
||
cut: 'Cut',
|
||
copy: 'Copy',
|
||
paste: 'Paste',
|
||
paste_in_place: 'Paste in Place',
|
||
delete: 'حذف',
|
||
group: 'Group',
|
||
move_front: 'Bring to Front',
|
||
move_up: 'Bring Forward',
|
||
move_down: 'Send Backward',
|
||
move_back: 'Send to Back'
|
||
},
|
||
layers: {
|
||
layer: 'لایه',
|
||
layers: 'Layers',
|
||
del: 'حذف لایه',
|
||
move_down: 'انتقال لایه به پایین',
|
||
new: 'لایه جدید',
|
||
rename: 'تغییر نام لایه',
|
||
move_up: 'انتقال لایه به بالا',
|
||
dupe: 'Duplicate Layer',
|
||
merge_down: 'Merge Down',
|
||
merge_all: 'Merge All',
|
||
move_elems_to: 'انتقال عناصر به:',
|
||
move_selected: 'انتقال عناصر انتخاب شده به یک لایه متفاوت'
|
||
},
|
||
config: {
|
||
image_props: 'مشخصات تصویر',
|
||
doc_title: 'عنوان',
|
||
doc_dims: 'ابعاد صفحه مجازی (بوم)',
|
||
included_images: 'تصاویر گنجانده شده',
|
||
image_opt_embed: 'داده های جای داده شده (پرونده های محلی)',
|
||
image_opt_ref: 'استفاده از ارجاع به پرونده',
|
||
editor_prefs: 'تنظیمات ویراستار',
|
||
icon_size: 'اندازه شمایل',
|
||
language: 'زبان',
|
||
background: 'پس زمینه ویراستار',
|
||
editor_img_url: 'Image URL',
|
||
editor_bg_note: 'توجه: پس زمینه همراه تصویر ذخیره نخواهد شد.',
|
||
icon_large: 'بزرگ',
|
||
icon_medium: 'متوسط',
|
||
icon_small: 'کوچک',
|
||
icon_xlarge: 'خیلی بزرگ',
|
||
select_predefined: 'از پیش تعریف شده را انتخاب کنید:',
|
||
units_and_rulers: 'Units & Rulers',
|
||
show_rulers: 'Show rulers',
|
||
base_unit: 'Base Unit:',
|
||
grid: 'Grid',
|
||
snapping_onoff: 'Snapping on/off',
|
||
snapping_stepsize: 'Snapping Step-Size:',
|
||
grid_color: 'Grid color'
|
||
},
|
||
shape_cats: {
|
||
basic: 'Basic',
|
||
object: 'Objects',
|
||
symbol: 'Symbols',
|
||
arrow: 'Arrows',
|
||
flowchart: 'Flowchart',
|
||
animal: 'Animals',
|
||
game: 'Cards & Chess',
|
||
dialog_balloon: 'Dialog balloons',
|
||
electronics: 'Electronics',
|
||
math: 'Mathematical',
|
||
music: 'Music',
|
||
misc: 'Miscellaneous',
|
||
raphael_1: 'raphaeljs.com set 1',
|
||
raphael_2: 'raphaeljs.com set 2'
|
||
},
|
||
imagelib: {
|
||
select_lib: 'Select an image library',
|
||
show_list: 'Show library list',
|
||
import_single: 'Import single',
|
||
import_multi: 'Import multiple',
|
||
open: 'Open as new document'
|
||
},
|
||
notification: {
|
||
invalidAttrValGiven: 'مقدار داده شده نامعتبر است',
|
||
noContentToFitTo: 'محتوایی برای هم اندازه شدن وجود ندارد',
|
||
dupeLayerName: 'لایه ای با آن نام وجود دارد!',
|
||
enterUniqueLayerName: 'لطفا یک نام لایه یکتا انتخاب کنید',
|
||
enterNewLayerName: 'لطفا نام لایه جدید را وارد کنید',
|
||
layerHasThatName: 'لایه از قبل آن نام را دارد',
|
||
QmoveElemsToLayer: "عناصر انتخاب شده به لایه '%s' منتقل شوند؟",
|
||
QwantToClear: 'آیا مطمئن هستید که می خواهید نقاشی را پاک کنید؟\nاین عمل باعث حذف تاریخچه واگرد شما خواهد شد!',
|
||
QwantToOpen: 'Do you want to open a new file?\nThis will also erase your undo history!',
|
||
QerrorsRevertToSource: 'در منبع SVG شما خطاهای تجزیه (parse) وجود داشت.\nبه منبع SVG اصلی بازگردانده شود؟',
|
||
QignoreSourceChanges: 'تغییرات اعمال شده در منبع SVG نادیده گرفته شوند؟',
|
||
featNotSupported: 'این ویژگی پشتیبانی نشده است',
|
||
enterNewImgURL: 'نشانی وب (url) تصویر جدید را وارد کنید',
|
||
defsFailOnSave: 'NOTE: Due to a bug in your browser, this image may appear wrong (missing gradients or elements). It will however appear correct once actually saved.',
|
||
loadingImage: 'Loading image, please wait...',
|
||
saveFromBrowser: 'Select "Save As..." in your browser to save this image as a %s file.',
|
||
noteTheseIssues: 'Also note the following issues: ',
|
||
unsavedChanges: 'There are unsaved changes.',
|
||
enterNewLinkURL: 'Enter the new hyperlink URL',
|
||
errorLoadingSVG: 'Error: Unable to load SVG data',
|
||
URLloadFail: 'Unable to load from URL',
|
||
retrieving: 'Retrieving "%s"...'
|
||
}
|
||
});
|
||
|
||
}());
|