jsxgrid 2.0.0

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.
Files changed (83) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +2329 -0
  3. package/dist/fields/jsgrid.field.XDateTimeField.min.js +6 -0
  4. package/dist/fields/jsgrid.field.XRowSelectField.min.js +6 -0
  5. package/dist/fields/jsgrid.field.Xcheckbox.min.js +6 -0
  6. package/dist/fields/jsgrid.field.XimgField.min.js +6 -0
  7. package/dist/fields/jsgrid.field.Xjsoneditor.min.js +6 -0
  8. package/dist/fields/jsgrid.field.Xselect.min.js +6 -0
  9. package/dist/fields/jsgrid.field.Xtextarea.min.js +6 -0
  10. package/dist/fields/lib/jsGridSummaryPlugin.min.js +6 -0
  11. package/dist/fields/lib/jsgrid.popup.basic.min.js +6 -0
  12. package/dist/i18n/jsgrid-Ko.js +46 -0
  13. package/dist/i18n/jsgrid-cs.js +46 -0
  14. package/dist/i18n/jsgrid-de.js +46 -0
  15. package/dist/i18n/jsgrid-el.js +46 -0
  16. package/dist/i18n/jsgrid-es.js +46 -0
  17. package/dist/i18n/jsgrid-fa.js +46 -0
  18. package/dist/i18n/jsgrid-fr.js +47 -0
  19. package/dist/i18n/jsgrid-he.js +46 -0
  20. package/dist/i18n/jsgrid-it.js +47 -0
  21. package/dist/i18n/jsgrid-ja.js +46 -0
  22. package/dist/i18n/jsgrid-ka.js +46 -0
  23. package/dist/i18n/jsgrid-lt.js +47 -0
  24. package/dist/i18n/jsgrid-pl.js +62 -0
  25. package/dist/i18n/jsgrid-pt-br.js +46 -0
  26. package/dist/i18n/jsgrid-pt.js +46 -0
  27. package/dist/i18n/jsgrid-ru.js +47 -0
  28. package/dist/i18n/jsgrid-tr.js +47 -0
  29. package/dist/i18n/jsgrid-zh-cn.js +46 -0
  30. package/dist/i18n/jsgrid-zh-tw.js +46 -0
  31. package/dist/icons-2x.png +0 -0
  32. package/dist/icons.png +0 -0
  33. package/dist/jsxgrid-fields.js +606 -0
  34. package/dist/jsxgrid-fields.min.js +6 -0
  35. package/dist/jsxgrid-theme.css +258 -0
  36. package/dist/jsxgrid-theme.min.css +1 -0
  37. package/dist/jsxgrid-xfields.js +979 -0
  38. package/dist/jsxgrid-xfields.min.js +6 -0
  39. package/dist/jsxgrid.css +126 -0
  40. package/dist/jsxgrid.js +2137 -0
  41. package/dist/jsxgrid.min.css +1 -0
  42. package/dist/jsxgrid.min.js +6 -0
  43. package/package.json +57 -0
  44. package/src/fields/jsgrid.field.XDateTimeField.js +122 -0
  45. package/src/fields/jsgrid.field.XRowSelectField.js +62 -0
  46. package/src/fields/jsgrid.field.Xcheckbox.js +108 -0
  47. package/src/fields/jsgrid.field.XimgField.js +99 -0
  48. package/src/fields/jsgrid.field.Xjsoneditor.js +165 -0
  49. package/src/fields/jsgrid.field.Xselect.js +176 -0
  50. package/src/fields/jsgrid.field.Xtextarea.js +97 -0
  51. package/src/fields/jsgrid.field.checkbox.js +97 -0
  52. package/src/fields/jsgrid.field.control.js +224 -0
  53. package/src/fields/jsgrid.field.number.js +41 -0
  54. package/src/fields/jsgrid.field.select.js +130 -0
  55. package/src/fields/jsgrid.field.text.js +69 -0
  56. package/src/fields/jsgrid.field.textarea.js +34 -0
  57. package/src/i18n/Ko.js +46 -0
  58. package/src/i18n/cs.js +46 -0
  59. package/src/i18n/de.js +46 -0
  60. package/src/i18n/el.js +46 -0
  61. package/src/i18n/es.js +46 -0
  62. package/src/i18n/fa.js +46 -0
  63. package/src/i18n/fr.js +47 -0
  64. package/src/i18n/he.js +46 -0
  65. package/src/i18n/it.js +47 -0
  66. package/src/i18n/ja.js +46 -0
  67. package/src/i18n/ka.js +46 -0
  68. package/src/i18n/lt.js +47 -0
  69. package/src/i18n/pl.js +62 -0
  70. package/src/i18n/pt-br.js +46 -0
  71. package/src/i18n/pt.js +46 -0
  72. package/src/i18n/ru.js +47 -0
  73. package/src/i18n/tr.js +47 -0
  74. package/src/i18n/zh-cn.js +46 -0
  75. package/src/i18n/zh-tw.js +46 -0
  76. package/src/jsgrid.core.js +1655 -0
  77. package/src/jsgrid.field.js +74 -0
  78. package/src/jsgrid.load-indicator.js +82 -0
  79. package/src/jsgrid.load-strategies.js +131 -0
  80. package/src/jsgrid.sort-strategies.js +49 -0
  81. package/src/jsgrid.validation.js +135 -0
  82. package/src/lib/jsGridSummaryPlugin.js +37 -0
  83. package/src/lib/jsgrid.popup.basic.js +107 -0
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((t,n)=>{function e(e){t.Field.call(this,e)}e.prototype=new t.Field({css:"date-field",align:"center",datePickerType:"datetime-local",dateRange:!1,defaultSelected:null,sorter:function(e,t){return new Date(e)-new Date(t)},filterTemplate:function(){var t,e,i,r,a;return this.filtering?(t=this._grid,e=n(),this.dateRange?(a=n("<div class='jsgrid-date-range-wrapper'>"),i=n("<input>",{class:"jsgrid-date-picker jsgrid-date-start",type:this.datePickerType,title:"Period date start"}),r=n("<input>",{class:"jsgrid-date-picker jsgrid-date-end",type:this.datePickerType,title:"Period date end"}),a.val=function(){return{from:i.val(),to:r.val()}},e=this.filterControl=a.append(i).append(r),null!==this.defaultSelected&&(a=this.defaultSelected||{},i.val(a.from||""),r.val(a.to||""),this.defaultSelected=null),this.autosearch&&e.on("change",".jsgrid-date-picker",function(e){t.search()})):(e=this.filterControl=this._createPicker(),null!==this.defaultSelected&&(e.val(this.defaultSelected),this.defaultSelected=null),this.autosearch&&e.on("change",function(e){t.search()})),e):""},filterValue:function(){return this.filterControl.val()},itemTemplate:function(e){var t;return e?(t=this.options||{weekday:"short",year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"},new Date(e.replace(" ","T")).toLocaleDateString(void 0,t)):""},insertTemplate:function(){return this._insertPicker=this._createPicker()},editTemplate:function(e){return this._editPicker=this._createPicker().val(e)},insertValue:function(){return this._insertPicker.val()},editValue:function(){return this._editPicker.val()},_createPicker:function(){return n("<input class='date-picker'>").attr("type",this.datePickerType)}}),t.fields.XDateTimeField=e})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((e,i)=>{function t(t){this.selectedItems=[],this.uid=Date.now().toString(36)+Math.random().toString(36).substring(2),e.Field.call(this,t)}t.prototype=new e.Field({filtering:!1,deleteItemByItem:!1,buttonText:"",selectedItemsAction:function(t){},unselectAll:function(){this.selectedItems=[],this._grid._container.find("[data-uid='"+this.uid+"'] ").prop("checked",!1)},headerTemplate:function(){var e;return this.buttonText?(e=this,i("<button>").attr("type","button").text(e.buttonText).on("click",function(t){e.selectedItemsAction(e.selectedItems),t.stopPropagation()})):""},itemTemplate:function(t,e){var n=this;return i("<input data-uid='"+n.uid+"' type='checkbox'>").prop("checked",-1<i.inArray(e,n.selectedItems)).on("change",function(){i(this).is(":checked")?n.selectItem(e):n.unselectItem(e)}).click(function(t){t.stopPropagation()})},editTemplate:function(){return""},align:"center",selectItem:function(t){this.selectedItems.push(t)},unselectItem:function(e){this.selectedItems=i.grep(this.selectedItems,function(t){return t!==e})}}),e.fields.XRowSelectField=t})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((e,i)=>{function t(e){r.call(this,e)}var r=e.Field;t.prototype=new r({sorter:"number",align:"center",autosearch:!0,defaultSelected:null,filterTemplate:function(){var e,t;return this.filtering?(e=this._grid,(t=this.filterControl=this._createCheckbox()).prop({readOnly:!0,indeterminate:!0}),t.on("click",function(){var e=i(this);e.prop("readOnly")?e.prop({checked:!1,readOnly:!1}):e.prop("checked")||e.prop({readOnly:!0,indeterminate:!0})}),this.autosearch&&t.on("click",function(){e.search()}),null!==this.defaultSelected&&(t.prop({checked:!!this.defaultSelected,indeterminate:!1,readOnly:!1}),this.defaultSelected=null),t):""},filterValue:function(){return this.filterControl.get(0).indeterminate?void 0:this.filterControl.is(":checked")?1:0},insertTemplate:function(){return this.inserting?this.insertControl=this._createCheckbox():""},insertValue:function(){return+this.insertControl.is(":checked")},editValue:function(){return+this.editControl.is(":checked")},itemTemplate:function(e){return this._createCheckbox().prop({checked:+e,disabled:!0})},editTemplate:function(e){var t;return this.editing?((t=this.editControl=this._createCheckbox()).prop("checked",+e),t):this.itemTemplate.apply(this,arguments)},_createCheckbox:function(){return i("<input>").attr("type","checkbox")}}),e.fields.Xcheckbox=t})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((t,n)=>{function e(t){i.call(this,t)}var i=t.Field;e.prototype=new i({autosearch:!0,readOnly:!1,fm_callback:null,editButtonText:"Open FM",defaultSelected:null,filterTemplate:function(){var e,t;return this.filtering?(e=this._grid,t=this.filterControl=this._createTextBox(),this.autosearch&&t.on("keypress",function(t){13===t.which&&(e.search(),t.preventDefault())}),null!==this.defaultSelected&&(t.val(this.defaultSelected),this.defaultSelected=null),t):""},filterValue:function(){return this.filterControl.val()},itemTemplate:function(t){var e=n('<img class="jsgrid-img" src="">');return e.attr("src",t||""),e.css("max-height","50px"),e.css("max-width","50px"),e},editTemplate:function(t){var e,i;return this.editing?(e=this.fm_callback,i=this.editControl=n('<input type="text">').val(t||""),e?n('<button class="jsgrid-imgField-button">'+this.editButtonText+"</button>").click(function(){e(i)}):i):this.itemTemplate.apply(this,arguments)},insertTemplate:function(){var t,e;return this.inserting?(t=this.fm_callback,e=this.insertControl=n('<input type="text">'),"function"==typeof t?n('<button class="jsgrid-imgField-button">'+this.editButtonText+"</button>").click(function(){t(e)}):e):""},insertValue:function(){return this.insertControl.val()},editValue:function(){return this.editControl.val()},_createTextBox:function(){return n("<input>").attr("type","text").prop("readonly",!!this.readOnly)}}),t.fields.XimgField=e})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((n,o)=>{function t(t){e.call(this,t)}var e=n.Field;t.prototype=new e({autosearch:!0,readOnly:!1,templates:[],closeText:"Save",editText:"Editor",defaultSelected:null,filterTemplate:function(){var e,t;return this.filtering?(e=this._grid,t=this.filterControl=this._createTextBox(),this.autosearch&&t.on("keypress",function(t){13===t.which&&(e.search(),t.preventDefault())}),null!==this.defaultSelected&&(t.val(this.defaultSelected),this.defaultSelected=null),t):""},filterValue:function(){return this.filterControl.val()},insertValue:function(){return this.insertControl.val()},editValue:function(){return this.editControl.val()},_createTextBox:function(){return o("<input>").attr("type","text").prop("readonly",!!this.readOnly)},_doModal:function(t,e,r){return n.popup(t,e)},_createJsonEditor:function(t,e){if("undefined"==typeof JSONEditor)throw new Error("Xjsoneditor requires the 'jsoneditor' package to be loaded on the page.");"object"!=typeof(t=t||{})&&(t=JSON.parse(t));var r=o('<div style="height: 500px;">'),e=(o("body").append(r),r=r[0],{templates:this.templates,modes:["code","text","tree"],onError:function(t){alert(t.toString())},mode:e||"view"});return new JSONEditor(r,e,t)},itemTemplate:function(e,t){var r=this;return o("<button>"+r.editText+"</button>").click(function(){var t=r._createJsonEditor(e);return r._doModal(t.container,{onClose:function(){o(t.container).remove(),t.destroy()}}),!1})},insertTemplate:function(){var t;return this.inserting?(t=this).insertControl=o("<textarea>").click(function(){var e=t._createJsonEditor({},"tree"),r=o(this);return t._doModal(e.container,{closeText:t.closeText,onClose:function(){var t=e.get();o.isEmptyObject(t)?r.val({}):r.val(JSON.stringify(t)),e.destroy()}}),!1}):""},editTemplate:function(t){var n;return this.editing?(n=this).editControl=o("<textarea>").val(t).click(function(){var e=o(this),r=n._createJsonEditor(e.val(),"tree");return n._doModal(r.container,{closeText:n.closeText,onClose:function(){var t=r.get();o.isEmptyObject(t)?e.val({}):e.val(JSON.stringify(t)),r.destroy()}}),!1}):this.itemTemplate.apply(this,arguments)}}),n.fields.Xjsoneditor=t})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((e,a,l)=>{function t(e){var t;this.items=[],this.selectedIndex=-1,this.valueField="",this.textField="",e.valueField&&e.items&&e.items.length&&(t=e.items[0][e.valueField],this.valueType=typeof t==s?s:"string"),this.sorter=this.valueType,i.call(this,e)}var i=e.Field,s="number";t.prototype=new i({align:"center",autosearch:!0,valueType:s,pseudoElement:null,select2:null,defaultSelected:null,itemTemplate:function(t){var e=this.items,i=this.valueField,s=this.textField,e=i?"object"==typeof t?t:a.grep(e,function(e){return e[i]===t})[0]||{}:e[t],s=s?e[s]:e;return s===l||null===s?"":s},insertTemplate:function(){return this.inserting?this.insertControl=this._createSelect():""},editTemplate:function(e){var t,i;return this.editing?(t=this.editControl=this._createSelect(),(i="object"==typeof(i=e)?e[this.valueField]:e)!==l&&t.val(i),t):this.itemTemplate.apply(this,arguments)},insertValue:function(){var e=this.insertControl.val();return this.valueType===s?parseInt(e||0,10):e},editValue:function(){var e=this.editControl.val();return this.valueType===s?parseInt(e||0,10):e},filterTemplate:function(){var e,i,s,l,t,n;return this.filtering?(Array.isArray(this.items)?(e=this.items.slice(0),this.pseudoElement?e.unshift(this.pseudoElement):((n={})[this.textField]="",n[this.valueField]=null,e.unshift(n))):"object"==typeof this.items&&(e=Object.assign({},this.items),e="object"==typeof this.pseudoElement&&this.pseudoElement?Object.assign({},e,this.pseudoElement):Object.assign({},{"":null},e)),null!==this.defaultSelected&&(i=this.valueField,s=this.defaultSelected,l=-1,a.each(e,function(e,t){if((i?t[i]:e)==s)return l=e,!1}),-1!==l&&(this.selectedIndex=l),this.defaultSelected=null),t=this._grid,n=this.filterControl=this._createSelect(e),this.autosearch&&n.on("change",function(e){t.search()}),n):""},filterValue:function(){var e=this.filterControl.val();return this.valueType===s?parseInt(e||0,10):e},_createSelect:function(e){var t,s=a("<select>"),l=this.valueField,n=this.textField,r=this.selectedIndex;return a.each(e||this.items,function(e,t){var i=l?t[l]:e,t=n?t[n]:t;a("<option>").attr("value",i).text(t).appendTo(s).prop("selected",r===e)}),s.prop("disabled",!!this.readOnly),this.select2&&(t=Object.assign({},this.select2,{width:"100%"}),setTimeout(function(){s.select2(t)},0)),s}}),e.fields.Xselect=t})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((t,n)=>{function e(t){r.call(this,t)}var r=t.Field;e.prototype=new r({autosearch:!0,readOnly:!1,maxShowSymbols:50,defaultSelected:null,filterTemplate:function(){var e,t;return this.filtering?(e=this._grid,t=this.filterControl=this._createTextBox(),this.autosearch&&t.on("keypress",function(t){13===t.which&&(e.search(),t.preventDefault())}),null!==this.defaultSelected&&(t.val(this.defaultSelected),this.defaultSelected=null),t):""},filterValue:function(){return this.filterControl.val()},insertTemplate:function(){return this.inserting?this.insertControl=this._createTextArea():""},editTemplate:function(t){var e;return this.editing?((e=this.editControl=this._createTextArea()).val(t),e):this.itemTemplate.apply(this,arguments)},insertValue:function(){return this.insertControl.val()},editValue:function(){return this.editControl.val()},_createTextBox:function(){return n("<input>").attr("type","text").prop("readonly",!!this.readOnly)},_createTextArea:function(){return n("<textarea>").prop("readonly",!!this.readOnly)},itemTemplate:function(t,e){var r,i;return(t=null==t?"":String(t)).length<=this.maxShowSymbols?n("<div>").text(t):(r=t.slice(0,this.maxShowSymbols),i=n("<div>").text(r+" ...").one("click",function(){return i.text(t),!1}))}}),t.fields.Xtextarea=e})(jsGrid,jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ (t=>{var r=t.fn.jsGrid;r&&(t.fn.jsGrid=function(o){var s;return"object"==typeof o&&(s=o.onRefreshed,o.onRefreshed=function(o){s&&s.apply(this,arguments);var o=o.grid,a=o.option("data")||[],r=o.option("fields")||[],o=o._container.find(".jsgrid-table").last(),o=(o.find(".jsgrid-summary-footer").remove(),t("<tfoot class='jsgrid-summary-footer'>").appendTo(o)),e=t("<tr>").addClass("jsgrid-row").css({background:"#e1e1e1","font-weight":"bold"}).appendTo(o);r.forEach(function(o){var r=t("<td>").addClass("jsgrid-cell").appendTo(e);"function"==typeof o.summary&&(o=o.summary.call(o,a),r.html(o))})}),r.apply(this,arguments)})})(jQuery);
@@ -0,0 +1,6 @@
1
+ /*
2
+ * jsxgrid v2.0.0 (https://github.com/rok9ru/jsxgrid#readme)
3
+ * (c) 2026 Mikhail Kremza
4
+ * Licensed under MIT
5
+ */
6
+ ((i,a)=>{i?i.popup=i.popupBasic=function(i,o){this.idcounter=this.idcounter||0,this.idcounter++,(o=o||{}).closeText=o.closeText||"Close",o.heading=o.heading||"",o.styles=o.styles||".jsGridpopupBasicOverlay { position: fixed; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0, 0, 0, 0.7); transition: opacity 500ms; opacity: 1;}.jsGridpopupBasicPopup { margin: 70px auto; padding: 20px; min-height: 60%; background: #fff; border-radius: 5px; width: 60%; position: relative; transition: all 300ms ease-in-out;}.jsGridpopupBasicPopup h2 { margin-top: 0; color: #333; font-family: Tahoma, Arial, sans-serif;}.jsGridpopupBasicPopup .close { position: absolute; top: 10px; right: 30px; transition: all 200ms; font-size: 30px; font-weight: bold; text-decoration: none; color: #333;}.jsGridpopupBasicPopup .close:hover { color: #06D85F;}.jsGridpopupBasicPopup .jsGridpopupBasicContent { max-height: 30%; overflow: auto;}@media screen and (max-width: 700px){ .jsGridpopupBasicPopup{ width: 70%; }}",a("#jsGridpopupBasicStyles").length||(e=(p=a("head")).find("link[rel='stylesheet']:last"),s="<style id='jsGridpopupBasicStyles'>"+o.styles+"</style>",e.length?e.after(s):p.append(s));var p,s,e="jsGridpopupBasic"+this.idcounter,t=a('<div id="'+e+'" class="jsGridpopupBasicOverlay"><div class="jsGridpopupBasicPopup"><h2></h2><a class="close" href="#">&times;</a><div class="jsGridpopupBasicContent"></div></div></div>');return t.find("h2").text(o.heading),t.find(".jsGridpopupBasicContent").append(i),t.find(".close").click(function(){o.onClose instanceof Function&&o.onClose(t),t.remove()}),a("body").append(t),{id:e,$popup:t,hide:function(){t.remove()}}}:console.log("jsGrid is not defined!")})(jsGrid,jQuery);
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.ko = {
4
+ grid: {
5
+ noDataContent: "데이터가 없습니다.",
6
+ deleteConfirm: "데이터를 삭제 하겠습니까?",
7
+ pagerFormat: "페이지 : {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} / {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "잠시 기다려주세요...",
13
+ invalidMessage: "잘못된 데이터가 입력 되었습니다."
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "처리중..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "검색 모드",
23
+ insertModeButtonTooltip: "등록 모드",
24
+ editButtonTooltip: "수정",
25
+ deleteButtonTooltip: "삭제",
26
+ searchButtonTooltip: "검색",
27
+ clearFilterButtonTooltip: "초기화",
28
+ insertButtonTooltip: "등록",
29
+ updateButtonTooltip: "업데이트",
30
+ cancelEditButtonTooltip: "변경 취소"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "필수 입력" },
36
+ rangeLength: { message: "입력된 값의 길이가 범위를 벗어났습니다." },
37
+ minLength: { message: "입력된 값이 지정된 길이보다 짧습니다." },
38
+ maxLength: { message: "입력된 값의 지정된 길이보다 깁니다." },
39
+ pattern: { message: "입력된 값이 지정된 패턴과 일치하지 않습니다." },
40
+ range: { message: "입력된 값이 범위를 벗어났습니다." },
41
+ min: { message: "입력된 값이 지정된 범위보다 작습니다." },
42
+ max: { message: "입력된 값이 지정된 범위보다 큽니다." }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.cs = {
4
+ grid: {
5
+ noDataContent: "Nenalezena žádná data",
6
+ deleteConfirm: "Opravdu chcete smazat data?",
7
+ pagerFormat: "Stránky: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} z {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Čekejte prosím ...",
13
+ invalidMessage: "Vložili jste neplatná data!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Nahrávám..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Přepnout na hledání",
23
+ insertModeButtonTooltip: "Přepnout na vlkádání",
24
+ editButtonTooltip: "Upravit",
25
+ deleteButtonTooltip: "Smazat",
26
+ searchButtonTooltip: "Hledat",
27
+ clearFilterButtonTooltip: "Smazat filtr",
28
+ insertButtonTooltip: "Vložit",
29
+ updateButtonTooltip: "Upravit",
30
+ cancelEditButtonTooltip: "Zrušit editaci"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Povinné pole" },
36
+ rangeLength: { message: "Délka hodnoty je vetší než je definováno" },
37
+ minLength: { message: "Hodnota je příliš krátká" },
38
+ maxLength: { message: "Hodnota je příliš dlouhá" },
39
+ pattern: { message: "Hodnota neodpovídá nadefinovanému vzoru" },
40
+ range: { message: "Hodnota je mimo rozsah" },
41
+ min: { message: "Hodnota je příliš malá" },
42
+ max: { message: "Hodnota je příliš vysoká" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.de = {
4
+ grid: {
5
+ noDataContent: "Die Daten konnten nicht gefunden werden",
6
+ deleteConfirm: "Möchten Sie die Daten unwiederruflich löschen?",
7
+ pagerFormat: "Seiten: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} von {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Bitte warten...",
13
+ invalidMessage: "Ihre Eingabe ist nicht zulässig!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Lädt..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Suche",
23
+ insertModeButtonTooltip: "Eintrag hinzufügen",
24
+ editButtonTooltip: "Bearbeiten",
25
+ deleteButtonTooltip: "Löschen",
26
+ searchButtonTooltip: "Eintrag finden",
27
+ clearFilterButtonTooltip: "Filter zurücksetzen",
28
+ insertButtonTooltip: "Hinzufügen",
29
+ updateButtonTooltip: "Speichern",
30
+ cancelEditButtonTooltip: "Abbrechen"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Dies ist ein Pflichtfeld" },
36
+ rangeLength: { message: "Die Länge der Eingabe liegt außerhalb des zulässigen Bereichs" },
37
+ minLength: { message: "Die Eingabe ist zu kurz" },
38
+ maxLength: { message: "Die Eingabe ist zu lang" },
39
+ pattern: { message: "Die Eingabe entspricht nicht dem gewünschten Muster" },
40
+ range: { message: "Der eingegebene Wert liegt außerhalb des zulässigen Bereichs" },
41
+ min: { message: "Der eingegebene Wert ist zu niedrig" },
42
+ max: { message: "Der eingegebene Wert ist zu hoch" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.el = {
4
+ grid: {
5
+ noDataContent: "Δεν βρέθηκαν δεδομένα",
6
+ deleteConfirm: "Θέλετε σίγουρα να κάνετε οριστική διαγραφή των δεδομένων;",
7
+ pagerFormat: "Σελίδες: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} από {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Παρακαλώ περιμένετε...",
13
+ invalidMessage: "Η τιμή που δώσατε δεν είναι έγκυρη!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Φόρτωση..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Αναζήτηση",
23
+ insertModeButtonTooltip: "Εισάγετε φίλτρο",
24
+ editButtonTooltip: "Επεξεργασία",
25
+ deleteButtonTooltip: "Διαγραφή",
26
+ searchButtonTooltip: "Εύρεση",
27
+ clearFilterButtonTooltip: "Αφαίρεση φίλτρου",
28
+ insertButtonTooltip: "Εισαγωγή",
29
+ updateButtonTooltip: "Αποθήκευση",
30
+ cancelEditButtonTooltip: "Ακύρωση"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Είναι υποχρεωτικό πεδίο" },
36
+ rangeLength: { message: "Το πλήθος των χαρακτήρων είναι εκτός των αποδεκτών ορίων" },
37
+ minLength: { message: "Το πλήθος των χαρακτήρων είναι μικρότερο το ορίου" },
38
+ maxLength: { message: "Το πλήθος των χαρακτήρων ξεπερνάει το όριο" },
39
+ pattern: { message: "Η τιμή που δώσατε δεν είναι έγκυρη" },
40
+ range: { message: "Η τιμή που δώσατε είναι εκτός των αποδεκτών ορίων" },
41
+ min: { message: "Η τιμή που δώσατε είναι πολύ μικρή" },
42
+ max: { message: "Η τιμή που δώσατε είναι πολύ μεγάλη" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.es = {
4
+ grid: {
5
+ noDataContent: "No encontrado",
6
+ deleteConfirm: "¿Está seguro?",
7
+ pagerFormat: "Páginas: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} de {pageCount}",
8
+ pagePrevText: "Anterior",
9
+ pageNextText: "Siguiente",
10
+ pageFirstText: "Primero",
11
+ pageLastText: "Último",
12
+ loadMessage: "Por favor, espere...",
13
+ invalidMessage: "¡Datos no válidos!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Cargando..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Cambiar a búsqueda",
23
+ insertModeButtonTooltip: "Cambiar a inserción",
24
+ editButtonTooltip: "Editar",
25
+ deleteButtonTooltip: "Suprimir",
26
+ searchButtonTooltip: "Buscar",
27
+ clearFilterButtonTooltip: "Borrar filtro",
28
+ insertButtonTooltip: "Insertar",
29
+ updateButtonTooltip: "Actualizar",
30
+ cancelEditButtonTooltip: "Cancelar edición"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Campo requerido" },
36
+ rangeLength: { message: "La longitud del valor está fuera del intervalo definido" },
37
+ minLength: { message: "La longitud del valor es demasiado corta" },
38
+ maxLength: { message: "La longitud del valor es demasiado larga" },
39
+ pattern: { message: "El valor no se ajusta al patrón definido" },
40
+ range: { message: "Valor fuera del rango definido" },
41
+ min: { message: "Valor demasiado bajo" },
42
+ max: { message: "Valor demasiado alto" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.fa = {
4
+ grid: {
5
+ noDataContent: "پیدا نشد",
6
+ deleteConfirm: "آیا مطمئن هستید؟",
7
+ pagerFormat: "صفحه: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} از {pageCount}",
8
+ pagePrevText: "قبلی",
9
+ pageNextText: "بعدی",
10
+ pageFirstText: "ابتدا",
11
+ pageLastText: "انتها",
12
+ loadMessage: "لطفا منتظر باشید ...",
13
+ invalidMessage: "اطلاعات نامعتبر است!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "در حال بارگذاری ..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "تغییر به حالت جستجو",
23
+ insertModeButtonTooltip: "تغییر به حالت درج",
24
+ editButtonTooltip: "تغییر به حالت ویرایش",
25
+ deleteButtonTooltip: "حذف",
26
+ searchButtonTooltip: "جستجو",
27
+ clearFilterButtonTooltip: "پاک کردن فیلترها",
28
+ insertButtonTooltip: "درج",
29
+ updateButtonTooltip: "به روز رسانی",
30
+ cancelEditButtonTooltip: "لغو ویرایش"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "فیلد اجباری است" },
36
+ rangeLength: { message: "طول مقدار وارد شده از حداکثر تعریف شده بیشتر است" },
37
+ minLength: { message: "تعداد کاراکتر وارد شده خیلی کم است" },
38
+ maxLength: { message: "تعداد کاراکتر وارد شده خیلی زیاداست" },
39
+ pattern: { message: "مقدار وارد شده با الگوی تعریف شده مطابقت ندارد" },
40
+ range: { message: "مقدار وارد شده خارج از بازه معتبر است" },
41
+ min: { message: "مقدار وارد شده خیلی کوچک است" },
42
+ max: { message: "مقدار وارد شده خیلی بزرگ است" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,47 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.fr = {
4
+ grid: {
5
+ noDataContent: "Pas de données",
6
+ deleteConfirm: "Êtes-vous sûr ?",
7
+ pagerFormat: "Pages: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} de {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Chargement en cours...",
13
+ invalidMessage: "Des données incorrectes sont entrés !"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Chargement en cours..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Recherche",
23
+ insertModeButtonTooltip: "Ajouter une entrée",
24
+ editButtonTooltip: "Changer",
25
+ deleteButtonTooltip: "Effacer",
26
+ searchButtonTooltip: "Trouve",
27
+ clearFilterButtonTooltip: "Effacer",
28
+ insertButtonTooltip: "Ajouter",
29
+ updateButtonTooltip: "Sauvegarder",
30
+ cancelEditButtonTooltip: "Annuler"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Champ requis" },
36
+ rangeLength: { message: "Longueur de la valeur du champ est hors de la plage définie" },
37
+ minLength: { message: "La valeur du champ est trop court" },
38
+ maxLength: { message: "La valeur du champ est trop long" },
39
+ pattern: { message: "La valeur du champ ne correspond pas à la configuration définie" },
40
+ range: { message: "La valeur du champ est hors de la plage définie" },
41
+ min: { message: "La valeur du champ est trop petit" },
42
+ max: { message: "La valeur du champ est trop grande" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
47
+
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.he = {
4
+ grid: {
5
+ noDataContent: "לא נמצא",
6
+ deleteConfirm: "האם אתה בטוח?",
7
+ pagerFormat: "עמודים: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} מתוך {pageCount}",
8
+ pagePrevText: "הקודם",
9
+ pageNextText: "הבא",
10
+ pageFirstText: "ראשון",
11
+ pageLastText: "אחרון",
12
+ loadMessage: "אנא המתן ...",
13
+ invalidMessage: "נתונים לא חוקיים!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "טוען..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "ביצוע חיפוש",
23
+ insertModeButtonTooltip: "ביצוע עריכת שורה",
24
+ editButtonTooltip: "עריכה",
25
+ deleteButtonTooltip: "מחיקה",
26
+ searchButtonTooltip: "חיפוש",
27
+ clearFilterButtonTooltip: "ניקוי מסנן",
28
+ insertButtonTooltip: "הכנסה",
29
+ updateButtonTooltip: "עדכון",
30
+ cancelEditButtonTooltip: "ביטול עריכה"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "שדה נדרש" },
36
+ rangeLength: { message: "אורכו של הערך הוא מחוץ לטווח המוגדר" },
37
+ minLength: { message: "אורכו של הערך קצר מדי" },
38
+ maxLength: { message: "אורכו של הערך ארוך מדי" },
39
+ pattern: { message: "אורכו של הערך ארוך מדי" },
40
+ range: { message: "ערך מחוץ לטווח" },
41
+ min: { message: "ערך נמוך מדי" },
42
+ max: { message: "גבוה מדי" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,47 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.it = {
4
+ grid: {
5
+ noDataContent: "Nessun risultato",
6
+ deleteConfirm: "Sei sicuro ?",
7
+ pagerFormat: "Pagine: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} di {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Attendere prego ...",
13
+ invalidMessage: "Dati non validi!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Caricamento in corso..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Modallità ricerca",
23
+ insertModeButtonTooltip: "Modalità inserimento",
24
+ editButtonTooltip: "Modifica",
25
+ deleteButtonTooltip: "Cancella",
26
+ searchButtonTooltip: "Cerca",
27
+ clearFilterButtonTooltip: "Cancella filtri",
28
+ insertButtonTooltip: "Inserisci",
29
+ updateButtonTooltip: "Aggiorna",
30
+ cancelEditButtonTooltip: "Annulla"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Campo richiesto" },
36
+ rangeLength: { message: "La dimensione del valore del campo è fuori dell'intervallo definito" },
37
+ minLength: { message: "Il valore del campo è troppo breve" },
38
+ maxLength: { message: "Il valore del campo è troppo lungo" },
39
+ pattern: { message: "Il valore del campo non corrisponde alla configurazione definita" },
40
+ range: { message: "Il valore del campo è al di fuori dell'intervallo definito" },
41
+ min: { message: "Il valore del campo è troppo piccolo" },
42
+ max: { message: "Il valore del campo è troppo grande" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
47
+
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.ja = {
4
+ grid: {
5
+ noDataContent: "データが見つかりません。",
6
+ deleteConfirm: "削除しますよろしですか。",
7
+ pagerFormat: "頁: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; 【{pageIndex}/{pageCount}】",
8
+ pagePrevText: "前",
9
+ pageNextText: "次",
10
+ pageFirstText: "最初",
11
+ pageLastText: "最後",
12
+ loadMessage: "しばらくお待ちください…",
13
+ invalidMessage: "入力されたデータが不正です。"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "処理中…"
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "検索モードへ",
23
+ insertModeButtonTooltip: "登録モードへ",
24
+ editButtonTooltip: "編集",
25
+ deleteButtonTooltip: "削除",
26
+ searchButtonTooltip: "フィルター",
27
+ clearFilterButtonTooltip: "クリア",
28
+ insertButtonTooltip: "登録",
29
+ updateButtonTooltip: "更新",
30
+ cancelEditButtonTooltip: "編集戻す"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "項目が必要です。" },
36
+ rangeLength: { message: "項目の桁数が範囲外です。" },
37
+ minLength: { message: "項目の桁数が超過しています。" },
38
+ maxLength: { message: "項目の桁数が不足しています。" },
39
+ pattern: { message: "項目の値がパターンに一致しません。" },
40
+ range: { message: "項目の値が範囲外です。" },
41
+ min: { message: "項目の値が超過しています。" },
42
+ max: { message: "項目の値が不足しています。" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.ka = {
4
+ grid: {
5
+ noDataContent: "მონაცემები ცარიელია.",
6
+ deleteConfirm: "ნამდვილად გსურთ ჩანაწერის წაშლა?",
7
+ pagerFormat: "გვერდები: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} - {pageCount} დან.",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "გთხოვთ დაიცადოთ...",
13
+ invalidMessage: "შეყვანილია არასწორი მონაცემები!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "მიმდინარეობს ჩატვირთვა..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "ძებნა",
23
+ insertModeButtonTooltip: "ჩანაწერის დამატება",
24
+ editButtonTooltip: "შესწორება",
25
+ deleteButtonTooltip: "წაშლა",
26
+ searchButtonTooltip: "ძებნა",
27
+ clearFilterButtonTooltip: "ფილტრის გასუფთავება",
28
+ insertButtonTooltip: "დამატება",
29
+ updateButtonTooltip: "შენახვა",
30
+ cancelEditButtonTooltip: "გაუქმება"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "ველი აუცილებელია შესავსებად." },
36
+ rangeLength: { message: "შეყვანილი ჩანაწერის ზომა არ ექვემდებარება დიაპაზონს." },
37
+ minLength: { message: "შეყვანილი ჩანაწერის ზომა საკმაოდ პატარა არის." },
38
+ maxLength: { message: "შეყვანილი ჩანაწერის ზომა საკმაოდ დიდი არის." },
39
+ pattern: { message: "შეყვანილი მნიშვნელობა არ ემთხვევა მითითებულ შაბლონს." },
40
+ range: { message: "შეყვანილი ინფორმაცია არ ჯდება დიაპაზონში." },
41
+ min: { message: "შეყვანილი ინფორმაციის ზომა საკმაოდ პატარა არის." },
42
+ max: { message: "შეყვანილი ინფორმაციის ზომა საკმაოდ დიდი არის." }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));