persian-data-grid 0.5.0 → 0.6.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.
- package/OFL.txt +93 -0
- package/README.md +179 -22
- package/dist/ERPTableGroupRow-J5Z2LRC5.cjs +131 -0
- package/dist/ERPTableGroupRow-J5Z2LRC5.cjs.map +1 -0
- package/dist/ERPTableGroupRow-PSAPAHGL.js +125 -0
- package/dist/ERPTableGroupRow-PSAPAHGL.js.map +1 -0
- package/dist/GridPlugin-CJCaYnlw.d.ts +57 -0
- package/dist/GridPlugin-oxhq8AsM.d.cts +57 -0
- package/dist/GridPresenceService-GEH6535Q.js +3 -0
- package/dist/GridPresenceService-GEH6535Q.js.map +1 -0
- package/dist/GridPresenceService-RDN5FXHQ.cjs +12 -0
- package/dist/GridPresenceService-RDN5FXHQ.cjs.map +1 -0
- package/dist/GridSession-B-9lLcoB.d.cts +2492 -0
- package/dist/GridSession-Bc7UIawO.d.ts +2492 -0
- package/dist/GridSyncService-KTLB4KP3.js +3 -0
- package/dist/GridSyncService-KTLB4KP3.js.map +1 -0
- package/dist/GridSyncService-TAPAHABV.cjs +12 -0
- package/dist/GridSyncService-TAPAHABV.cjs.map +1 -0
- package/dist/PdfRenderer-1HFh6UeR.d.ts +22 -0
- package/dist/PdfRenderer-CBg7hWNS.d.cts +22 -0
- package/dist/RemoteApi-CCQxiSf1.d.cts +28 -0
- package/dist/RemoteApi-CCQxiSf1.d.ts +28 -0
- package/dist/SelectImpl-NM4O4IGW.js +447 -0
- package/dist/SelectImpl-NM4O4IGW.js.map +1 -0
- package/dist/SelectImpl-W2EI4T7O.cjs +453 -0
- package/dist/SelectImpl-W2EI4T7O.cjs.map +1 -0
- package/dist/UITableController-Cuwq481K.d.cts +632 -0
- package/dist/UITableController-DU8RopUM.d.ts +632 -0
- package/dist/VazirmatnPdfRenderer-BCMpC1zy.d.cts +96 -0
- package/dist/VazirmatnPdfRenderer-Dz_G-m3c.d.ts +96 -0
- package/dist/adapters/arian-erp.cjs +77 -0
- package/dist/adapters/arian-erp.cjs.map +1 -0
- package/dist/adapters/arian-erp.d.cts +60 -0
- package/dist/adapters/arian-erp.d.ts +60 -0
- package/dist/adapters/arian-erp.js +71 -0
- package/dist/adapters/arian-erp.js.map +1 -0
- package/dist/appendAtEnd-RHIQRG2W.cjs +35 -0
- package/dist/appendAtEnd-RHIQRG2W.cjs.map +1 -0
- package/dist/appendAtEnd-TJEABLGD.js +33 -0
- package/dist/appendAtEnd-TJEABLGD.js.map +1 -0
- package/dist/applyImportedRows-BO6yxoAN.d.cts +135 -0
- package/dist/applyImportedRows-D4zVY8uD.d.ts +135 -0
- package/dist/applyRowVisibilityHandler-KS6TMCBN.js +83 -0
- package/dist/applyRowVisibilityHandler-KS6TMCBN.js.map +1 -0
- package/dist/applyRowVisibilityHandler-LXCOGESZ.cjs +85 -0
- package/dist/applyRowVisibilityHandler-LXCOGESZ.cjs.map +1 -0
- package/dist/broadcastChannelTransport-FHUMV76O.cjs +12 -0
- package/dist/broadcastChannelTransport-FHUMV76O.cjs.map +1 -0
- package/dist/broadcastChannelTransport-MIH53VNZ.js +3 -0
- package/dist/broadcastChannelTransport-MIH53VNZ.js.map +1 -0
- package/dist/callbackRemoteApi-BlXO5NJz.d.ts +30 -0
- package/dist/callbackRemoteApi-DgnXH-i0.d.cts +30 -0
- package/dist/cellRenderContext-DB7V_mlu.d.ts +42 -0
- package/dist/cellRenderContext-DG5BOlxK.d.cts +42 -0
- package/dist/chunk-2BJCRYOS.cjs +936 -0
- package/dist/chunk-2BJCRYOS.cjs.map +1 -0
- package/dist/chunk-3Y3KKGEC.js +3 -0
- package/dist/chunk-3Y3KKGEC.js.map +1 -0
- package/dist/chunk-5ALMNLUR.cjs +1408 -0
- package/dist/chunk-5ALMNLUR.cjs.map +1 -0
- package/dist/chunk-5HKVMPBD.js +937 -0
- package/dist/chunk-5HKVMPBD.js.map +1 -0
- package/dist/chunk-633KP74Z.js +189 -0
- package/dist/chunk-633KP74Z.js.map +1 -0
- package/dist/chunk-6XBXZPBW.js +298 -0
- package/dist/chunk-6XBXZPBW.js.map +1 -0
- package/dist/chunk-77UXAJII.js +112 -0
- package/dist/chunk-77UXAJII.js.map +1 -0
- package/dist/chunk-ASPTRYRD.cjs +21 -0
- package/dist/chunk-ASPTRYRD.cjs.map +1 -0
- package/dist/chunk-AU3RDJYQ.js +243 -0
- package/dist/chunk-AU3RDJYQ.js.map +1 -0
- package/dist/chunk-BHDRUZH5.cjs +33 -0
- package/dist/chunk-BHDRUZH5.cjs.map +1 -0
- package/dist/chunk-BLYVOV3G.cjs +191 -0
- package/dist/chunk-BLYVOV3G.cjs.map +1 -0
- package/dist/chunk-CILNIWYW.cjs +100 -0
- package/dist/chunk-CILNIWYW.cjs.map +1 -0
- package/dist/chunk-DFFP7SJ6.cjs +257 -0
- package/dist/chunk-DFFP7SJ6.cjs.map +1 -0
- package/dist/chunk-DXRCYW42.cjs +568 -0
- package/dist/chunk-DXRCYW42.cjs.map +1 -0
- package/dist/chunk-EBV6HGZB.cjs +33 -0
- package/dist/chunk-EBV6HGZB.cjs.map +1 -0
- package/dist/chunk-EHHHC5JV.js +832 -0
- package/dist/chunk-EHHHC5JV.js.map +1 -0
- package/dist/chunk-F4PYOYHR.js +112 -0
- package/dist/chunk-F4PYOYHR.js.map +1 -0
- package/dist/chunk-GQEDLUMB.js +168 -0
- package/dist/chunk-GQEDLUMB.js.map +1 -0
- package/dist/chunk-H2LESGMX.cjs +319 -0
- package/dist/chunk-H2LESGMX.cjs.map +1 -0
- package/dist/chunk-HTNJT2QU.js +11674 -0
- package/dist/chunk-HTNJT2QU.js.map +1 -0
- package/dist/chunk-IIISFUW4.cjs +11786 -0
- package/dist/chunk-IIISFUW4.cjs.map +1 -0
- package/dist/chunk-IMPCRWYP.cjs +251 -0
- package/dist/chunk-IMPCRWYP.cjs.map +1 -0
- package/dist/chunk-IPPIXOVQ.js +317 -0
- package/dist/chunk-IPPIXOVQ.js.map +1 -0
- package/dist/chunk-J4XJ4UBC.js +1404 -0
- package/dist/chunk-J4XJ4UBC.js.map +1 -0
- package/dist/chunk-J7CPPFXT.cjs +89 -0
- package/dist/chunk-J7CPPFXT.cjs.map +1 -0
- package/dist/chunk-JOICD47Q.cjs +41 -0
- package/dist/chunk-JOICD47Q.cjs.map +1 -0
- package/dist/chunk-KHMG6EI2.js +13 -0
- package/dist/chunk-KHMG6EI2.js.map +1 -0
- package/dist/chunk-KMRURD5J.cjs +15 -0
- package/dist/chunk-KMRURD5J.cjs.map +1 -0
- package/dist/chunk-KRJG3KMP.cjs +174 -0
- package/dist/chunk-KRJG3KMP.cjs.map +1 -0
- package/dist/chunk-KUBVDIF7.cjs +653 -0
- package/dist/chunk-KUBVDIF7.cjs.map +1 -0
- package/dist/chunk-KYAOSBQN.js +31 -0
- package/dist/chunk-KYAOSBQN.js.map +1 -0
- package/dist/chunk-LJ7LMEXO.js +36 -0
- package/dist/chunk-LJ7LMEXO.js.map +1 -0
- package/dist/chunk-MT3KLB2Q.cjs +944 -0
- package/dist/chunk-MT3KLB2Q.cjs.map +1 -0
- package/dist/chunk-MU3RY46O.js +932 -0
- package/dist/chunk-MU3RY46O.js.map +1 -0
- package/dist/chunk-MUQQKPWR.js +84 -0
- package/dist/chunk-MUQQKPWR.js.map +1 -0
- package/dist/chunk-N7SJTINL.cjs +4 -0
- package/dist/chunk-N7SJTINL.cjs.map +1 -0
- package/dist/chunk-NTV2UUAJ.cjs +149 -0
- package/dist/chunk-NTV2UUAJ.cjs.map +1 -0
- package/dist/chunk-PJQWHF6T.js +31 -0
- package/dist/chunk-PJQWHF6T.js.map +1 -0
- package/dist/chunk-PQY54EL5.js +248 -0
- package/dist/chunk-PQY54EL5.js.map +1 -0
- package/dist/chunk-PXCHPZTP.cjs +839 -0
- package/dist/chunk-PXCHPZTP.cjs.map +1 -0
- package/dist/chunk-Q7TBBUTX.cjs +110 -0
- package/dist/chunk-Q7TBBUTX.cjs.map +1 -0
- package/dist/chunk-QQMU44KJ.js +612 -0
- package/dist/chunk-QQMU44KJ.js.map +1 -0
- package/dist/chunk-QZN7R2WP.cjs +114 -0
- package/dist/chunk-QZN7R2WP.cjs.map +1 -0
- package/dist/chunk-RKVSJU46.js +35 -0
- package/dist/chunk-RKVSJU46.js.map +1 -0
- package/dist/chunk-RM6ZWNT3.js +561 -0
- package/dist/chunk-RM6ZWNT3.js.map +1 -0
- package/dist/chunk-SX4VQXAA.cjs +114 -0
- package/dist/chunk-SX4VQXAA.cjs.map +1 -0
- package/dist/chunk-SZ7BLAY3.js +92 -0
- package/dist/chunk-SZ7BLAY3.js.map +1 -0
- package/dist/chunk-TN4MG6FY.js +112 -0
- package/dist/chunk-TN4MG6FY.js.map +1 -0
- package/dist/chunk-UC7PHDM6.cjs +331 -0
- package/dist/chunk-UC7PHDM6.cjs.map +1 -0
- package/dist/chunk-UXVLYUUW.js +108 -0
- package/dist/chunk-UXVLYUUW.js.map +1 -0
- package/dist/chunk-VVGYRZ7S.cjs +38 -0
- package/dist/chunk-VVGYRZ7S.cjs.map +1 -0
- package/dist/chunk-W5256BJ4.js +56 -0
- package/dist/chunk-W5256BJ4.js.map +1 -0
- package/dist/chunk-WUMOSOEK.cjs +62 -0
- package/dist/chunk-WUMOSOEK.cjs.map +1 -0
- package/dist/chunk-XLRE2J25.js +140 -0
- package/dist/chunk-XLRE2J25.js.map +1 -0
- package/dist/chunk-Y6W5V2CI.js +19 -0
- package/dist/chunk-Y6W5V2CI.js.map +1 -0
- package/dist/chunk-Z4QPZ3Z3.cjs +114 -0
- package/dist/chunk-Z4QPZ3Z3.cjs.map +1 -0
- package/dist/createEngineGridQuery-Dmq3i5v3.d.cts +884 -0
- package/dist/createEngineGridQuery-Mt1hc33m.d.ts +884 -0
- package/dist/date-picker-jalali.cjs +263 -0
- package/dist/date-picker-jalali.cjs.map +1 -0
- package/dist/date-picker-jalali.d.cts +62 -0
- package/dist/date-picker-jalali.d.ts +62 -0
- package/dist/date-picker-jalali.js +256 -0
- package/dist/date-picker-jalali.js.map +1 -0
- package/dist/finance.cjs +205 -0
- package/dist/finance.cjs.map +1 -0
- package/dist/finance.d.cts +90 -0
- package/dist/finance.d.ts +90 -0
- package/dist/finance.js +157 -0
- package/dist/finance.js.map +1 -0
- package/dist/foldedColumn-IHDT4ARZ.cjs +66 -0
- package/dist/foldedColumn-IHDT4ARZ.cjs.map +1 -0
- package/dist/foldedColumn-TFURUKFG.js +64 -0
- package/dist/foldedColumn-TFURUKFG.js.map +1 -0
- package/dist/headless.cjs +729 -0
- package/dist/headless.cjs.map +1 -0
- package/dist/headless.d.cts +504 -0
- package/dist/headless.d.ts +504 -0
- package/dist/headless.js +226 -0
- package/dist/headless.js.map +1 -0
- package/dist/index-DN8M8Jkq.d.cts +14 -0
- package/dist/index-DmzL-F_o.d.ts +14 -0
- package/dist/index.cjs +8002 -11409
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +437 -2305
- package/dist/index.d.ts +437 -2305
- package/dist/index.js +7244 -11083
- package/dist/index.js.map +1 -1
- package/dist/locales/ar.cjs +12 -0
- package/dist/locales/ar.cjs.map +1 -0
- package/dist/locales/ar.d.cts +6 -0
- package/dist/locales/ar.d.ts +6 -0
- package/dist/locales/ar.js +3 -0
- package/dist/locales/ar.js.map +1 -0
- package/dist/locales/en.cjs +12 -0
- package/dist/locales/en.cjs.map +1 -0
- package/dist/locales/en.d.cts +6 -0
- package/dist/locales/en.d.ts +6 -0
- package/dist/locales/en.js +3 -0
- package/dist/locales/en.js.map +1 -0
- package/dist/locales/fa.cjs +12 -0
- package/dist/locales/fa.cjs.map +1 -0
- package/dist/locales/fa.d.cts +6 -0
- package/dist/locales/fa.d.ts +6 -0
- package/dist/locales/fa.js +3 -0
- package/dist/locales/fa.js.map +1 -0
- package/dist/locales/index.cjs +51 -0
- package/dist/locales/index.cjs.map +1 -0
- package/dist/locales/index.d.cts +5 -0
- package/dist/locales/index.d.ts +5 -0
- package/dist/locales/index.js +6 -0
- package/dist/locales/index.js.map +1 -0
- package/dist/memoryRecords-AWDKUJ2F.cjs +50 -0
- package/dist/memoryRecords-AWDKUJ2F.cjs.map +1 -0
- package/dist/memoryRecords-OJTGXLRH.js +47 -0
- package/dist/memoryRecords-OJTGXLRH.js.map +1 -0
- package/dist/pagedFooterTotals-DXCGDO6F.cjs +27 -0
- package/dist/pagedFooterTotals-DXCGDO6F.cjs.map +1 -0
- package/dist/pagedFooterTotals-ORWKUNE7.js +25 -0
- package/dist/pagedFooterTotals-ORWKUNE7.js.map +1 -0
- package/dist/pagedKit-MFGAJFSK.cjs +134 -0
- package/dist/pagedKit-MFGAJFSK.cjs.map +1 -0
- package/dist/pagedKit-WYWY4LRV.js +127 -0
- package/dist/pagedKit-WYWY4LRV.js.map +1 -0
- package/dist/pagedSearch-HCPJW7VM.js +38 -0
- package/dist/pagedSearch-HCPJW7VM.js.map +1 -0
- package/dist/pagedSearch-U3WCG4GN.cjs +42 -0
- package/dist/pagedSearch-U3WCG4GN.cjs.map +1 -0
- package/dist/plugins/csv.cjs +124 -0
- package/dist/plugins/csv.cjs.map +1 -0
- package/dist/plugins/csv.d.cts +44 -0
- package/dist/plugins/csv.d.ts +44 -0
- package/dist/plugins/csv.js +120 -0
- package/dist/plugins/csv.js.map +1 -0
- package/dist/plugins/excel.cjs +52 -0
- package/dist/plugins/excel.cjs.map +1 -0
- package/dist/plugins/excel.d.cts +14 -0
- package/dist/plugins/excel.d.ts +14 -0
- package/dist/plugins/excel.js +7 -0
- package/dist/plugins/excel.js.map +1 -0
- package/dist/plugins/pdf/fonts/vazirmatn.cjs +50 -0
- package/dist/plugins/pdf/fonts/vazirmatn.cjs.map +1 -0
- package/dist/plugins/pdf/fonts/vazirmatn.d.cts +24 -0
- package/dist/plugins/pdf/fonts/vazirmatn.d.ts +24 -0
- package/dist/plugins/pdf/fonts/vazirmatn.js +39 -0
- package/dist/plugins/pdf/fonts/vazirmatn.js.map +1 -0
- package/dist/plugins/pdf.cjs +24 -0
- package/dist/plugins/pdf.cjs.map +1 -0
- package/dist/plugins/pdf.d.cts +21 -0
- package/dist/plugins/pdf.d.ts +21 -0
- package/dist/plugins/pdf.js +7 -0
- package/dist/plugins/pdf.js.map +1 -0
- package/dist/presence.cjs +56 -0
- package/dist/presence.cjs.map +1 -0
- package/dist/presence.d.cts +17 -0
- package/dist/presence.d.ts +17 -0
- package/dist/presence.js +54 -0
- package/dist/presence.js.map +1 -0
- package/dist/rebuildRowVisibility-66EAZ356.cjs +21 -0
- package/dist/rebuildRowVisibility-66EAZ356.cjs.map +1 -0
- package/dist/rebuildRowVisibility-6TYM5BP2.js +19 -0
- package/dist/rebuildRowVisibility-6TYM5BP2.js.map +1 -0
- package/dist/styles.css +1440 -0
- package/dist/sync.cjs +148 -0
- package/dist/sync.cjs.map +1 -0
- package/dist/sync.d.cts +17 -0
- package/dist/sync.d.ts +17 -0
- package/dist/sync.js +146 -0
- package/dist/sync.js.map +1 -0
- package/dist/types-D__47BKv.d.cts +23 -0
- package/dist/types-D__47BKv.d.ts +23 -0
- package/package.json +184 -28
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkKRJG3KMP_cjs = require('./chunk-KRJG3KMP.cjs');
|
|
4
|
+
|
|
5
|
+
// infrastructure/finance/holidays.ts
|
|
6
|
+
var IRAN_FIXED_HOLIDAYS = [
|
|
7
|
+
{ jm: 1, jd: 1, title: "\u0646\u0648\u0631\u0648\u0632" },
|
|
8
|
+
{ jm: 1, jd: 2, title: "\u0639\u06CC\u062F \u0646\u0648\u0631\u0648\u0632" },
|
|
9
|
+
{ jm: 1, jd: 3, title: "\u0639\u06CC\u062F \u0646\u0648\u0631\u0648\u0632" },
|
|
10
|
+
{ jm: 1, jd: 4, title: "\u0639\u06CC\u062F \u0646\u0648\u0631\u0648\u0632" },
|
|
11
|
+
{ jm: 1, jd: 12, title: "\u0631\u0648\u0632 \u062C\u0645\u0647\u0648\u0631\u06CC \u0627\u0633\u0644\u0627\u0645\u06CC" },
|
|
12
|
+
{ jm: 1, jd: 13, title: "\u0633\u06CC\u0632\u062F\u0647\u200C\u0628\u0647\u200C\u062F\u0631" },
|
|
13
|
+
{ jm: 3, jd: 14, title: "\u0631\u062D\u0644\u062A \u0627\u0645\u0627\u0645 \u062E\u0645\u06CC\u0646\u06CC" },
|
|
14
|
+
{ jm: 3, jd: 15, title: "\u0642\u06CC\u0627\u0645 \u06F1\u06F5 \u062E\u0631\u062F\u0627\u062F" },
|
|
15
|
+
{ jm: 11, jd: 22, title: "\u067E\u06CC\u0631\u0648\u0632\u06CC \u0627\u0646\u0642\u0644\u0627\u0628 \u0627\u0633\u0644\u0627\u0645\u06CC" },
|
|
16
|
+
{ jm: 12, jd: 29, title: "\u0645\u0644\u06CC \u0634\u062F\u0646 \u0635\u0646\u0639\u062A \u0646\u0641\u062A" }
|
|
17
|
+
];
|
|
18
|
+
function utcDay(date) {
|
|
19
|
+
return new Date(
|
|
20
|
+
Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), 12)
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
function iranHolidaysForYear(jalaliYear, extra = []) {
|
|
24
|
+
const combined = [...IRAN_FIXED_HOLIDAYS, ...extra].filter(
|
|
25
|
+
(h) => h.jy == null || h.jy === jalaliYear
|
|
26
|
+
);
|
|
27
|
+
return combined.map((h) => ({
|
|
28
|
+
...h,
|
|
29
|
+
jy: jalaliYear,
|
|
30
|
+
date: chunkKRJG3KMP_cjs.jalaliToGregorianDate(jalaliYear, h.jm, h.jd)
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
function isIranHoliday(date, extra = []) {
|
|
34
|
+
const { jy, jm, jd } = chunkKRJG3KMP_cjs.gregorianDateToJalali(utcDay(date));
|
|
35
|
+
return iranHolidaysForYear(jy, extra).some(
|
|
36
|
+
(h) => h.jm === jm && h.jd === jd
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
function holidayTitle(date, extra = []) {
|
|
40
|
+
const { jy, jm, jd } = chunkKRJG3KMP_cjs.gregorianDateToJalali(utcDay(date));
|
|
41
|
+
const hit = iranHolidaysForYear(jy, extra).find(
|
|
42
|
+
(h) => h.jm === jm && h.jd === jd
|
|
43
|
+
);
|
|
44
|
+
return hit?.title ?? null;
|
|
45
|
+
}
|
|
46
|
+
function nextBusinessDay(date, extra = []) {
|
|
47
|
+
let cursor = chunkKRJG3KMP_cjs.jalaliAdapter.addDays(utcDay(date), 1);
|
|
48
|
+
for (let i = 0; i < 366; i += 1) {
|
|
49
|
+
const dow = cursor.getUTCDay();
|
|
50
|
+
if (dow !== 5 && !isIranHoliday(cursor, extra)) return cursor;
|
|
51
|
+
cursor = chunkKRJG3KMP_cjs.jalaliAdapter.addDays(cursor, 1);
|
|
52
|
+
}
|
|
53
|
+
return cursor;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
exports.IRAN_FIXED_HOLIDAYS = IRAN_FIXED_HOLIDAYS;
|
|
57
|
+
exports.holidayTitle = holidayTitle;
|
|
58
|
+
exports.iranHolidaysForYear = iranHolidaysForYear;
|
|
59
|
+
exports.isIranHoliday = isIranHoliday;
|
|
60
|
+
exports.nextBusinessDay = nextBusinessDay;
|
|
61
|
+
//# sourceMappingURL=chunk-WUMOSOEK.cjs.map
|
|
62
|
+
//# sourceMappingURL=chunk-WUMOSOEK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../infrastructure/finance/holidays.ts"],"names":["jalaliToGregorianDate","gregorianDateToJalali","jalaliAdapter"],"mappings":"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","file":"chunk-WUMOSOEK.cjs","sourcesContent":["/**\r\n * Iranian official holidays (Jalali fixed dates) (PR-140).\r\n * Lunar/Islamic moveable holidays can be merged via `extra`.\r\n */\r\n\r\nimport {\r\n gregorianDateToJalali,\r\n jalaliToGregorianDate,\r\n} from '../date/jalaliMath';\r\nimport { jalaliAdapter } from '../date/jalaliAdapter';\r\n\r\nexport type IranHoliday = {\r\n /** Jalali month 1–12 */\r\n jm: number;\r\n /** Jalali day */\r\n jd: number;\r\n title: string;\r\n /** When set, holiday applies only to that Jalali year */\r\n jy?: number;\r\n};\r\n\r\n/** Civil / solar fixed holidays observed every Jalali year. */\r\nexport const IRAN_FIXED_HOLIDAYS: readonly IranHoliday[] = [\r\n { jm: 1, jd: 1, title: 'نوروز' },\r\n { jm: 1, jd: 2, title: 'عید نوروز' },\r\n { jm: 1, jd: 3, title: 'عید نوروز' },\r\n { jm: 1, jd: 4, title: 'عید نوروز' },\r\n { jm: 1, jd: 12, title: 'روز جمهوری اسلامی' },\r\n { jm: 1, jd: 13, title: 'سیزدهبهدر' },\r\n { jm: 3, jd: 14, title: 'رحلت امام خمینی' },\r\n { jm: 3, jd: 15, title: 'قیام ۱۵ خرداد' },\r\n { jm: 11, jd: 22, title: 'پیروزی انقلاب اسلامی' },\r\n { jm: 12, jd: 29, title: 'ملی شدن صنعت نفت' },\r\n];\r\n\r\nfunction utcDay(date: Date): Date {\r\n return new Date(\r\n Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), 12),\r\n );\r\n}\r\n\r\nexport function iranHolidaysForYear(\r\n jalaliYear: number,\r\n extra: readonly IranHoliday[] = [],\r\n): Array<IranHoliday & { date: Date }> {\r\n const combined = [...IRAN_FIXED_HOLIDAYS, ...extra].filter(\r\n (h) => h.jy == null || h.jy === jalaliYear,\r\n );\r\n return combined.map((h) => ({\r\n ...h,\r\n jy: jalaliYear,\r\n date: jalaliToGregorianDate(jalaliYear, h.jm, h.jd),\r\n }));\r\n}\r\n\r\nexport function isIranHoliday(\r\n date: Date,\r\n extra: readonly IranHoliday[] = [],\r\n): boolean {\r\n const { jy, jm, jd } = gregorianDateToJalali(utcDay(date));\r\n return iranHolidaysForYear(jy, extra).some(\r\n (h) => h.jm === jm && h.jd === jd,\r\n );\r\n}\r\n\r\nexport function holidayTitle(\r\n date: Date,\r\n extra: readonly IranHoliday[] = [],\r\n): string | null {\r\n const { jy, jm, jd } = gregorianDateToJalali(utcDay(date));\r\n const hit = iranHolidaysForYear(jy, extra).find(\r\n (h) => h.jm === jm && h.jd === jd,\r\n );\r\n return hit?.title ?? null;\r\n}\r\n\r\n/** Skip Fridays (Iran weekend) and holidays; returns next open day. */\r\nexport function nextBusinessDay(\r\n date: Date,\r\n extra: readonly IranHoliday[] = [],\r\n): Date {\r\n let cursor = jalaliAdapter.addDays(utcDay(date), 1);\r\n for (let i = 0; i < 366; i += 1) {\r\n const dow = cursor.getUTCDay(); // 5 = Friday\r\n if (dow !== 5 && !isIranHoliday(cursor, extra)) return cursor;\r\n cursor = jalaliAdapter.addDays(cursor, 1);\r\n }\r\n return cursor;\r\n}\r\n"]}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
// domain/value-objects/Viewport.ts
|
|
2
|
+
var Viewport = class _Viewport {
|
|
3
|
+
constructor(scrollOffset, viewportSize, rowHeight, overscan = 2) {
|
|
4
|
+
this.scrollOffset = scrollOffset;
|
|
5
|
+
this.viewportSize = viewportSize;
|
|
6
|
+
this.rowHeight = rowHeight;
|
|
7
|
+
this.overscan = overscan;
|
|
8
|
+
if (viewportSize <= 0) throw new Error("Viewport.viewportSize must be > 0");
|
|
9
|
+
if (rowHeight <= 0) throw new Error("Viewport.rowHeight must be > 0");
|
|
10
|
+
if (overscan < 0) throw new Error("Viewport.overscan must be >= 0");
|
|
11
|
+
if (scrollOffset < 0) throw new Error("Viewport.scrollOffset must be >= 0");
|
|
12
|
+
}
|
|
13
|
+
equals(other) {
|
|
14
|
+
return this.scrollOffset === other.scrollOffset && this.viewportSize === other.viewportSize && this.rowHeight === other.rowHeight && this.overscan === other.overscan;
|
|
15
|
+
}
|
|
16
|
+
withScrollOffset(scrollOffset) {
|
|
17
|
+
return new _Viewport(
|
|
18
|
+
Math.max(0, scrollOffset),
|
|
19
|
+
this.viewportSize,
|
|
20
|
+
this.rowHeight,
|
|
21
|
+
this.overscan
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
withViewportSize(viewportSize) {
|
|
25
|
+
return new _Viewport(
|
|
26
|
+
this.scrollOffset,
|
|
27
|
+
viewportSize,
|
|
28
|
+
this.rowHeight,
|
|
29
|
+
this.overscan
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
toJSON() {
|
|
33
|
+
return {
|
|
34
|
+
scrollOffset: this.scrollOffset,
|
|
35
|
+
viewportSize: this.viewportSize,
|
|
36
|
+
rowHeight: this.rowHeight,
|
|
37
|
+
overscan: this.overscan
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
// domain/value-objects/index.ts
|
|
43
|
+
var CellValue = class {
|
|
44
|
+
constructor(value) {
|
|
45
|
+
this.value = value;
|
|
46
|
+
}
|
|
47
|
+
equals(other) {
|
|
48
|
+
return this.value === other.value;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
var CellDisplay = class {
|
|
52
|
+
constructor(value) {
|
|
53
|
+
this.value = value;
|
|
54
|
+
}
|
|
55
|
+
equals(other) {
|
|
56
|
+
return this.value === other.value;
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
var _ColumnId = class _ColumnId {
|
|
60
|
+
constructor(value) {
|
|
61
|
+
this.value = value;
|
|
62
|
+
}
|
|
63
|
+
/** Shared instance per field name (PR-101) — avoids 100k×cols ColumnId objects. */
|
|
64
|
+
static for(value) {
|
|
65
|
+
let id = _ColumnId.interned.get(value);
|
|
66
|
+
if (!id) {
|
|
67
|
+
id = new _ColumnId(value);
|
|
68
|
+
_ColumnId.interned.set(value, id);
|
|
69
|
+
}
|
|
70
|
+
return id;
|
|
71
|
+
}
|
|
72
|
+
equals(other) {
|
|
73
|
+
return this.value === other.value;
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
_ColumnId.interned = /* @__PURE__ */ new Map();
|
|
77
|
+
var ColumnId = _ColumnId;
|
|
78
|
+
var RowId = class {
|
|
79
|
+
constructor(value) {
|
|
80
|
+
this.value = value;
|
|
81
|
+
}
|
|
82
|
+
equals(other) {
|
|
83
|
+
return this.value === other.value;
|
|
84
|
+
}
|
|
85
|
+
set(id) {
|
|
86
|
+
this.value = id.value;
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
var RowState = class {
|
|
90
|
+
constructor(value) {
|
|
91
|
+
this.value = value;
|
|
92
|
+
}
|
|
93
|
+
equals(other) {
|
|
94
|
+
return this.value === other;
|
|
95
|
+
}
|
|
96
|
+
set(rowState) {
|
|
97
|
+
this.value = rowState;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
var RowStateEnum = /* @__PURE__ */ ((RowStateEnum2) => {
|
|
101
|
+
RowStateEnum2["Added"] = "Add";
|
|
102
|
+
RowStateEnum2["Modified"] = "Update";
|
|
103
|
+
RowStateEnum2["Deleted"] = "Delete";
|
|
104
|
+
RowStateEnum2["Unchanged"] = "None";
|
|
105
|
+
return RowStateEnum2;
|
|
106
|
+
})(RowStateEnum || {});
|
|
107
|
+
var Pagination = class _Pagination {
|
|
108
|
+
constructor(page, pageSize, totalRows) {
|
|
109
|
+
this.page = page;
|
|
110
|
+
this.pageSize = pageSize;
|
|
111
|
+
this.totalRows = totalRows;
|
|
112
|
+
this.totalPages = Math.max(1, Math.ceil(totalRows / pageSize));
|
|
113
|
+
this.canPrev = page > 1;
|
|
114
|
+
this.canNext = page < this.totalPages;
|
|
115
|
+
}
|
|
116
|
+
changePage(page) {
|
|
117
|
+
return new _Pagination(page, this.pageSize, this.totalRows);
|
|
118
|
+
}
|
|
119
|
+
changePageSize(size) {
|
|
120
|
+
return new _Pagination(
|
|
121
|
+
Math.min(this.page, Math.ceil(this.totalRows / size)),
|
|
122
|
+
size,
|
|
123
|
+
this.totalRows
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
toJSON() {
|
|
127
|
+
return {
|
|
128
|
+
page: this.page,
|
|
129
|
+
pageSize: this.pageSize,
|
|
130
|
+
totalRows: this.totalRows,
|
|
131
|
+
totalPages: this.totalPages,
|
|
132
|
+
canPrev: this.canPrev,
|
|
133
|
+
canNext: this.canNext
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
export { CellDisplay, CellValue, ColumnId, Pagination, RowId, RowState, RowStateEnum, Viewport };
|
|
139
|
+
//# sourceMappingURL=chunk-XLRE2J25.js.map
|
|
140
|
+
//# sourceMappingURL=chunk-XLRE2J25.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../domain/value-objects/Viewport.ts","../domain/value-objects/index.ts"],"names":["RowStateEnum"],"mappings":"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","file":"chunk-XLRE2J25.js","sourcesContent":["/**\r\n * View-state value object for virtual scrolling.\r\n * Lives in Domain types but is NOT an accounting invariant — Adapters drive it.\r\n */\r\nexport class Viewport {\r\n constructor(\r\n /** Vertical scroll offset in pixels. */\r\n public readonly scrollOffset: number,\r\n /** Visible viewport height in pixels. */\r\n public readonly viewportSize: number,\r\n /** Fixed row height in pixels (variable-height later). */\r\n public readonly rowHeight: number,\r\n /** Extra rows rendered above/below the window. */\r\n public readonly overscan: number = 2,\r\n ) {\r\n if (viewportSize <= 0) throw new Error('Viewport.viewportSize must be > 0');\r\n if (rowHeight <= 0) throw new Error('Viewport.rowHeight must be > 0');\r\n if (overscan < 0) throw new Error('Viewport.overscan must be >= 0');\r\n if (scrollOffset < 0) throw new Error('Viewport.scrollOffset must be >= 0');\r\n }\r\n\r\n equals(other: Viewport): boolean {\r\n return (\r\n this.scrollOffset === other.scrollOffset &&\r\n this.viewportSize === other.viewportSize &&\r\n this.rowHeight === other.rowHeight &&\r\n this.overscan === other.overscan\r\n );\r\n }\r\n\r\n withScrollOffset(scrollOffset: number): Viewport {\r\n return new Viewport(\r\n Math.max(0, scrollOffset),\r\n this.viewportSize,\r\n this.rowHeight,\r\n this.overscan,\r\n );\r\n }\r\n\r\n withViewportSize(viewportSize: number): Viewport {\r\n return new Viewport(\r\n this.scrollOffset,\r\n viewportSize,\r\n this.rowHeight,\r\n this.overscan,\r\n );\r\n }\r\n\r\n toJSON() {\r\n return {\r\n scrollOffset: this.scrollOffset,\r\n viewportSize: this.viewportSize,\r\n rowHeight: this.rowHeight,\r\n overscan: this.overscan,\r\n };\r\n }\r\n}\r\n\r\n/** Inclusive start, exclusive end — indices into the ordered row list. */\r\nexport type VisibleRange = {\r\n readonly startIndex: number;\r\n readonly endIndex: number;\r\n readonly startOffset: number;\r\n readonly endOffset: number;\r\n readonly totalHeight: number;\r\n readonly visibleCount: number;\r\n};\r\n","//domain/value-object\r\nexport class CellValue {\r\n constructor(public readonly value: unknown) {}\r\n\r\n equals(other: CellValue) {\r\n return this.value === other.value;\r\n }\r\n}\r\nexport class CellDisplay {\r\n constructor(public readonly value: unknown) {}\r\n\r\n equals(other: CellDisplay) {\r\n return this.value === other.value;\r\n }\r\n}\r\n\r\nexport class ColumnId {\r\n private static readonly interned = new Map<string, ColumnId>();\r\n\r\n constructor(public readonly value: string) { }\r\n\r\n /** Shared instance per field name (PR-101) — avoids 100k×cols ColumnId objects. */\r\n static for(value: string): ColumnId {\r\n let id = ColumnId.interned.get(value);\r\n if (!id) {\r\n id = new ColumnId(value);\r\n ColumnId.interned.set(value, id);\r\n }\r\n return id;\r\n }\r\n\r\n equals(other: ColumnId) {\r\n return this.value === other.value;\r\n }\r\n}\r\nexport type SelectOption = {\r\n label: string;\r\n value: string | number;\r\n};\r\nexport type KeyValue = {\r\n key: string;\r\n value: unknown;\r\n display: unknown;\r\n};\r\n\r\nexport type IRule = {\r\n type?:\r\n | string\r\n | \"array\"\r\n | \"object\"\r\n | \"enum\"\r\n | \"date\"\r\n | \"number\"\r\n | \"integer\"\r\n | \"float\"\r\n | \"boolean\"\r\n | \"email\"\r\n | \"url\"\r\n | \"hex\"\r\n | RegExp;\r\n required?: boolean;\r\n requiredIf?: () => boolean;\r\n whitespace?: boolean;\r\n message?: string;\r\n transform?: (value: unknown) => unknown;\r\n pattern?: string | RegExp;\r\n min?: number;\r\n max?: number;\r\n len?: number;\r\n enum?: unknown[];\r\n validator?: (rule: IRule, value: unknown, callback: (error?: string[]) => void) => void | Promise<void>;\r\n asyncValidator?: (rule: IRule, value: unknown) => Promise<void>;\r\n warningOnly?: boolean;\r\n validateTrigger?: string | string[];\r\n};\r\nexport class RowId {\r\n constructor(public value: number) {}\r\n equals(other: RowId) {\r\n return this.value === other.value;\r\n }\r\n set(id: RowId) {\r\n this.value = id.value;\r\n }\r\n}\r\nexport class TableId {\r\n constructor(public value: string) {}\r\n equals(other: TableId) {\r\n return this.value === other.value;\r\n }\r\n set(id: TableId) {\r\n this.value = id.value;\r\n }\r\n}\r\nexport class RowState {\r\n constructor(public value: RowStateEnum) {}\r\n equals(other: RowStateEnum) {\r\n return this.value === other;\r\n }\r\n set(rowState: RowStateEnum) {\r\n this.value = rowState;\r\n }\r\n}\r\n\r\nexport enum RowStateEnum {\r\n Added = \"Add\",\r\n Modified = \"Update\",\r\n Deleted = \"Delete\",\r\n Unchanged = \"None\",\r\n}\r\nexport enum RowOriginEnum {\r\n Persisted = \"Add\",\r\n New = \"Update\",\r\n}\r\nexport type TableActions = \"copy\" | \"cut\" | \"paste\" | \"pasteInsert\" | null\r\n\r\nexport { Viewport } from './Viewport';\r\nexport type { VisibleRange } from './Viewport';\r\n\r\nexport class Pagination {\r\n public readonly totalRows: number;\r\n public readonly totalPages: number;\r\n public readonly canPrev: boolean;\r\n public readonly canNext: boolean;\r\n\r\n constructor(\r\n public readonly page: number,\r\n public readonly pageSize: number,\r\n totalRows: number,\r\n ) {\r\n this.totalRows = totalRows;\r\n this.totalPages = Math.max(1, Math.ceil(totalRows / pageSize));\r\n this.canPrev = page > 1;\r\n this.canNext = page < this.totalPages;\r\n }\r\n\r\n changePage(page: number): Pagination {\r\n return new Pagination(page, this.pageSize, this.totalRows);\r\n }\r\n changePageSize(size: number): Pagination {\r\n return new Pagination(\r\n Math.min(this.page, Math.ceil(this.totalRows / size)),\r\n size,\r\n this.totalRows,\r\n );\r\n }\r\n\r\n toJSON() {\r\n return {\r\n page: this.page,\r\n pageSize: this.pageSize,\r\n totalRows: this.totalRows,\r\n totalPages: this.totalPages,\r\n canPrev: this.canPrev,\r\n canNext: this.canNext,\r\n };\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// infrastructure/Repositories/callbackRemoteApi.ts
|
|
2
|
+
var CallbackRemoteApi = class {
|
|
3
|
+
constructor(send, onError) {
|
|
4
|
+
this.send = send;
|
|
5
|
+
this.onError = onError;
|
|
6
|
+
}
|
|
7
|
+
async request(input) {
|
|
8
|
+
try {
|
|
9
|
+
return await this.send(input);
|
|
10
|
+
} catch (error) {
|
|
11
|
+
this.onError?.(error);
|
|
12
|
+
throw error;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { CallbackRemoteApi };
|
|
18
|
+
//# sourceMappingURL=chunk-Y6W5V2CI.js.map
|
|
19
|
+
//# sourceMappingURL=chunk-Y6W5V2CI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../infrastructure/Repositories/callbackRemoteApi.ts"],"names":[],"mappings":";AAuBO,IAAM,oBAAN,MAA6C;AAAA,EAClD,WAAA,CACmB,MACA,OAAA,EACjB;AAFiB,IAAA,IAAA,CAAA,IAAA,GAAA,IAAA;AACA,IAAA,IAAA,CAAA,OAAA,GAAA,OAAA;AAAA,EAChB;AAAA,EAEH,MAAM,QAA6B,KAAA,EAA6C;AAC9E,IAAA,IAAI;AACF,MAAA,OAAQ,MAAM,IAAA,CAAK,IAAA,CAAK,KAAK,CAAA;AAAA,IAC/B,SAAS,KAAA,EAAO;AACd,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA;AACpB,MAAA,MAAM,KAAA;AAAA,IACR;AAAA,EACF;AACF","file":"chunk-Y6W5V2CI.js","sourcesContent":["import type { RemoteApi } from '../../application/ports/RemoteApi';\r\n\r\nexport type RemoteApiRequest = {\r\n endpoint: string;\r\n params?: Record<string, unknown>;\r\n method?: 'GET' | 'POST';\r\n};\r\n\r\n/**\r\n * Wraps ANY host transport as a `RemoteApi` port — the grid never learns how\r\n * requests are authenticated or where defaults come from.\r\n *\r\n * arianERP example (RTK Query base query with token refresh + Redux defaults):\r\n *\r\n * const remoteApi = new CallbackRemoteApi(async ({ endpoint, params, method }) => {\r\n * const res = await baseQueryByToken(\r\n * { url: endpoint, method: method ?? 'POST', body: params ?? {} },\r\n * { getState: () => store.getState(), dispatch: store.dispatch } as never,\r\n * {},\r\n * );\r\n * return res.data;\r\n * });\r\n */\r\nexport class CallbackRemoteApi implements RemoteApi {\r\n constructor(\r\n private readonly send: (request: RemoteApiRequest) => Promise<unknown>,\r\n private readonly onError?: (error: unknown) => void,\r\n ) {}\r\n\r\n async request<TResponse = unknown>(input: RemoteApiRequest): Promise<TResponse> {\r\n try {\r\n return (await this.send(input)) as TResponse;\r\n } catch (error) {\r\n this.onError?.(error);\r\n throw error;\r\n }\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// ui/locales/ar.ts
|
|
4
|
+
var arMessages = {
|
|
5
|
+
"general.addNewRow": "\u0625\u0636\u0627\u0641\u0629 \u0635\u0641",
|
|
6
|
+
"general.copy": "\u0646\u0633\u062E",
|
|
7
|
+
"general.cut": "\u0642\u0635",
|
|
8
|
+
"general.paste": "\u0644\u0635\u0642",
|
|
9
|
+
"general.delete": "\u062D\u0630\u0641",
|
|
10
|
+
"general.chooseFromList": "\u0627\u062E\u062A\u0631 \u0645\u0646 \u0627\u0644\u0642\u0627\u0626\u0645\u0629",
|
|
11
|
+
"general.toggle": "\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0643\u0644",
|
|
12
|
+
"general.exportToExcel": "\u062A\u0635\u062F\u064A\u0631 \u0625\u0644\u0649 Excel",
|
|
13
|
+
"general.exportToExcelSuccess": "\u062A\u0645 \u062A\u0635\u062F\u064A\u0631 Excel \u0628\u0646\u062C\u0627\u062D",
|
|
14
|
+
"general.exportToExcelError": "\u0641\u0634\u0644 \u062A\u0635\u062F\u064A\u0631 Excel",
|
|
15
|
+
"general.exportToPdf": "\u062A\u0635\u062F\u064A\u0631 \u0625\u0644\u0649 PDF",
|
|
16
|
+
"general.exportToPdfSuccess": "\u062A\u0645 \u062A\u0635\u062F\u064A\u0631 PDF \u0628\u0646\u062C\u0627\u062D",
|
|
17
|
+
"general.exportToPdfError": "\u0641\u0634\u0644 \u062A\u0635\u062F\u064A\u0631 PDF",
|
|
18
|
+
"general.importFromExcel": "\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0645\u0646 Excel",
|
|
19
|
+
"general.importFromExcelSuccess": "\u062A\u0645 \u0627\u0633\u062A\u064A\u0631\u0627\u062F Excel \u0628\u0646\u062C\u0627\u062D",
|
|
20
|
+
"general.importFromExcelError": "\u0641\u0634\u0644 \u0627\u0633\u062A\u064A\u0631\u0627\u062F Excel",
|
|
21
|
+
"general.selected": "\u0645\u062D\u062F\u062F",
|
|
22
|
+
"general.search": "\u0628\u062D\u062B",
|
|
23
|
+
"general.selectField": "\u0627\u062E\u062A\u0631",
|
|
24
|
+
"general.selectPlaceholder": "\u0627\u062E\u062A\u0631",
|
|
25
|
+
"general.choice": "\u0627\u062E\u062A\u0631 \u0627\u0644\u0639\u0645\u0648\u062F",
|
|
26
|
+
"general.prev": "\u0627\u0644\u0633\u0627\u0628\u0642",
|
|
27
|
+
"general.next": "\u0627\u0644\u062A\u0627\u0644\u064A",
|
|
28
|
+
"general.noData": "\u0644\u0627 \u062A\u0648\u062C\u062F \u0628\u064A\u0627\u0646\u0627\u062A",
|
|
29
|
+
"general.loading": "\u062C\u0627\u0631\u064D \u0627\u0644\u062A\u062D\u0645\u064A\u0644\u2026",
|
|
30
|
+
"general.footerTotal": "\u0627\u0644\u0645\u062C\u0645\u0648\u0639",
|
|
31
|
+
"general.footerAvg": "\u0627\u0644\u0645\u062A\u0648\u0633\u0637",
|
|
32
|
+
"general.replicateRow": "\u062A\u0643\u0631\u0627\u0631 \u0627\u0644\u0635\u0641",
|
|
33
|
+
"general.edit": "\u062A\u0639\u062F\u064A\u0644",
|
|
34
|
+
"general.rowEdit": "\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0635\u0641",
|
|
35
|
+
"general.row": "\u0635\u0641",
|
|
36
|
+
"general.selectRow": "\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0635\u0641",
|
|
37
|
+
"general.save": "\u062D\u0641\u0638",
|
|
38
|
+
"general.notActive": "\u063A\u064A\u0631 \u0646\u0634\u0637",
|
|
39
|
+
"general.add": "\u0625\u0636\u0627\u0641\u0629",
|
|
40
|
+
"general.themeDark": "\u0627\u0644\u0648\u0636\u0639 \u0627\u0644\u062F\u0627\u0643\u0646",
|
|
41
|
+
"general.themeLight": "\u0627\u0644\u0648\u0636\u0639 \u0627\u0644\u0641\u0627\u062A\u062D",
|
|
42
|
+
"general.toolbar": "\u0634\u0631\u064A\u0637 \u0627\u0644\u0623\u062F\u0648\u0627\u062A",
|
|
43
|
+
"general.filter": "\u062A\u0635\u0641\u064A\u0629",
|
|
44
|
+
"general.filterApply": "\u062A\u0637\u0628\u064A\u0642",
|
|
45
|
+
"general.filterClear": "\u0645\u0633\u062D",
|
|
46
|
+
"general.filterActive": "\u0627\u0644\u062A\u0635\u0641\u064A\u0629 \u0646\u0634\u0637\u0629",
|
|
47
|
+
"general.rowsIn": "\u0635\u0641\u0648\u0641 \u0641\u064A",
|
|
48
|
+
"general.page": "\u0635\u0641\u062D\u0627\u062A",
|
|
49
|
+
"general.validationInRow": "\u0641\u064A \u0627\u0644\u0635\u0641",
|
|
50
|
+
"general.validationInColumn": "\u0641\u064A \u0627\u0644\u0639\u0645\u0648\u062F",
|
|
51
|
+
"general.loadMore": "\u0639\u0631\u0636 \u0627\u0644\u0645\u0632\u064A\u062F ({visible} \u0645\u0646 {total})",
|
|
52
|
+
"general.searchFound": "\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 {count} \u0646\u062A\u064A\u062C\u0629",
|
|
53
|
+
"general.searchNotFound": "\u0644\u0627 \u062A\u0648\u062C\u062F \u0646\u062A\u0627\u0626\u062C",
|
|
54
|
+
"general.searchPosition": "{current} \u0645\u0646 {total}",
|
|
55
|
+
"columnMenu.open": "\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0639\u0645\u0648\u062F",
|
|
56
|
+
"columnMenu.sortAsc": "\u0641\u0631\u0632 \u062A\u0635\u0627\u0639\u062F\u064A",
|
|
57
|
+
"columnMenu.sortDesc": "\u0641\u0631\u0632 \u062A\u0646\u0627\u0632\u0644\u064A",
|
|
58
|
+
"columnMenu.sortNone": "\u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u0641\u0631\u0632",
|
|
59
|
+
"columnMenu.filter": "\u062A\u0635\u0641\u064A\u0629\u2026",
|
|
60
|
+
"columnMenu.hideColumn": "\u0625\u062E\u0641\u0627\u0621 \u0627\u0644\u0639\u0645\u0648\u062F",
|
|
61
|
+
"columnMenu.pinStart": "\u062A\u062B\u0628\u064A\u062A \u0644\u0644\u0628\u062F\u0627\u064A\u0629",
|
|
62
|
+
"columnMenu.pinEnd": "\u062A\u062B\u0628\u064A\u062A \u0644\u0644\u0646\u0647\u0627\u064A\u0629",
|
|
63
|
+
"columnMenu.pinNone": "\u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u062B\u0628\u064A\u062A",
|
|
64
|
+
"columnMenu.autoSize": "\u062A\u062D\u062C\u064A\u0645 \u062A\u0644\u0642\u0627\u0626\u064A",
|
|
65
|
+
"columnMenu.columnsPanel": "\u0625\u0639\u062F\u0627\u062F \u0627\u0644\u0623\u0639\u0645\u062F\u0629",
|
|
66
|
+
"a11y.sortedAsc": "\u062A\u0645 \u0627\u0644\u0641\u0631\u0632 \u062D\u0633\u0628 {column} \u062A\u0635\u0627\u0639\u062F\u064A\u0627\u064B",
|
|
67
|
+
"a11y.sortedDesc": "\u062A\u0645 \u0627\u0644\u0641\u0631\u0632 \u062D\u0633\u0628 {column} \u062A\u0646\u0627\u0632\u0644\u064A\u0627\u064B",
|
|
68
|
+
"a11y.sortCleared": "\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u0641\u0631\u0632",
|
|
69
|
+
"a11y.filterResult": "{visible} \u0645\u0646 {total} \u0635\u0641 \u0628\u0639\u062F \u0627\u0644\u062A\u0635\u0641\u064A\u0629",
|
|
70
|
+
"a11y.filterCleared": "\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",
|
|
71
|
+
"a11y.rowsSelected": "\u062A\u0645 \u062A\u062D\u062F\u064A\u062F {count} \u0635\u0641",
|
|
72
|
+
"a11y.selectionCleared": "\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u062D\u062F\u064A\u062F",
|
|
73
|
+
"a11y.validationError": "\u062E\u0637\u0623 \u0641\u064A \u0627\u0644\u062A\u062D\u0642\u0642: {message}",
|
|
74
|
+
"a11y.validationGeneric": "\u062E\u0637\u0623 \u0641\u064A \u0627\u0644\u062A\u062D\u0642\u0642",
|
|
75
|
+
"history.title": "\u0627\u0644\u0633\u062C\u0644",
|
|
76
|
+
"history.empty": "\u0644\u0627 \u064A\u0648\u062C\u062F \u0633\u062C\u0644 \u0628\u0639\u062F. \u0639\u062F\u0651\u0644 \u062E\u0644\u064A\u0629 \u0644\u0625\u0636\u0627\u0641\u0629 \u0623\u062D\u062F\u0627\u062B.",
|
|
77
|
+
"history.severity": "\u0627\u0644\u0634\u062F\u0629",
|
|
78
|
+
"history.category": "\u0627\u0644\u0641\u0626\u0629",
|
|
79
|
+
"history.filterAll": "\u0627\u0644\u0643\u0644",
|
|
80
|
+
"history.severity.info": "\u0645\u0639\u0644\u0648\u0645\u0629",
|
|
81
|
+
"history.severity.warning": "\u062A\u062D\u0630\u064A\u0631",
|
|
82
|
+
"history.severity.error": "\u062E\u0637\u0623",
|
|
83
|
+
"history.category.data": "\u0628\u064A\u0627\u0646\u0627\u062A",
|
|
84
|
+
"history.category.structure": "\u0628\u0646\u064A\u0629",
|
|
85
|
+
"history.category.view": "\u0639\u0631\u0636",
|
|
86
|
+
"history.category.system": "\u0646\u0638\u0627\u0645",
|
|
87
|
+
"history.restore": "\u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0627\u0644\u0642\u064A\u0645\u0629 \u0627\u0644\u0633\u0627\u0628\u0642\u0629",
|
|
88
|
+
"offline.online": "\u0645\u062A\u0635\u0644",
|
|
89
|
+
"offline.offline": "\u063A\u064A\u0631 \u0645\u062A\u0635\u0644",
|
|
90
|
+
"offline.pendingCount": "{count} \u062A\u063A\u064A\u064A\u0631\u0627\u062A \u063A\u064A\u0631 \u0645\u062D\u0641\u0648\u0638\u0629",
|
|
91
|
+
"offline.pendingEmpty": "\u062A\u0645 \u062D\u0641\u0638 \u0643\u0644 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A \u0645\u062D\u0644\u064A\u0627\u064B",
|
|
92
|
+
"sync.policy": "\u0633\u064A\u0627\u0633\u0629 \u0627\u0644\u062A\u0639\u0627\u0631\u0636",
|
|
93
|
+
"sync.policy.lastWriteWins": "\u0622\u062E\u0631 \u0643\u062A\u0627\u0628\u0629 \u062A\u0641\u0648\u0632",
|
|
94
|
+
"sync.policy.serverWins": "\u0627\u0644\u062E\u0627\u062F\u0645 \u064A\u0641\u0648\u0632",
|
|
95
|
+
"sync.policy.manual": "\u064A\u062F\u0648\u064A",
|
|
96
|
+
"sync.now": "\u0645\u0632\u0627\u0645\u0646\u0629 \u0627\u0644\u0622\u0646",
|
|
97
|
+
"sync.syncing": "\u062C\u0627\u0631\u064D \u0627\u0644\u0645\u0632\u0627\u0645\u0646\u0629\u2026",
|
|
98
|
+
"sync.unavailable": "\u0646\u0642\u0644 \u0627\u0644\u0645\u0632\u0627\u0645\u0646\u0629 \u063A\u064A\u0631 \u0645\u0647\u064A\u0623",
|
|
99
|
+
"sync.result": "\u0623\u064F\u0631\u0633\u0644 {pushed}\u060C \u0627\u0633\u062A\u064F\u0644\u0645 {pulled}\u060C \u062A\u0639\u0627\u0631\u0636\u0627\u062A {conflicts}",
|
|
100
|
+
"sync.local": "\u0645\u062D\u0644\u064A",
|
|
101
|
+
"sync.remote": "\u062E\u0627\u062F\u0645",
|
|
102
|
+
"sync.keepLocal": "\u0627\u0644\u0625\u0628\u0642\u0627\u0621 \u0639\u0644\u0649 \u0627\u0644\u0645\u062D\u0644\u064A",
|
|
103
|
+
"sync.keepRemote": "\u0627\u0644\u0625\u0628\u0642\u0627\u0621 \u0639\u0644\u0649 \u0627\u0644\u062E\u0627\u062F\u0645",
|
|
104
|
+
"date.pickDate": "\u0627\u062E\u062A\u0631 \u062A\u0627\u0631\u064A\u062E\u0627\u064B",
|
|
105
|
+
"date.pickRange": "\u0627\u062E\u062A\u0631 \u0646\u0637\u0627\u0642\u0627\u064B",
|
|
106
|
+
"date.clear": "\u0645\u0633\u062D",
|
|
107
|
+
"date.calendar": "\u062A\u0642\u0648\u064A\u0645 \u062C\u0644\u0627\u0644\u064A",
|
|
108
|
+
"date.prevMonth": "\u0627\u0644\u0634\u0647\u0631 \u0627\u0644\u0633\u0627\u0628\u0642",
|
|
109
|
+
"date.nextMonth": "\u0627\u0644\u0634\u0647\u0631 \u0627\u0644\u062A\u0627\u0644\u064A"
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
exports.arMessages = arMessages;
|
|
113
|
+
//# sourceMappingURL=chunk-Z4QPZ3Z3.cjs.map
|
|
114
|
+
//# sourceMappingURL=chunk-Z4QPZ3Z3.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../ui/locales/ar.ts"],"names":[],"mappings":"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","file":"chunk-Z4QPZ3Z3.cjs","sourcesContent":["import type { ERPTableMessages } from './types';\r\n\r\n/** Arabic (ar) message pack (PR-127). */\r\nexport const arMessages: ERPTableMessages = {\r\n 'general.addNewRow': 'إضافة صف',\r\n 'general.copy': 'نسخ',\r\n 'general.cut': 'قص',\r\n 'general.paste': 'لصق',\r\n 'general.delete': 'حذف',\r\n 'general.chooseFromList': 'اختر من القائمة',\r\n 'general.toggle': 'تحديد الكل',\r\n 'general.exportToExcel': 'تصدير إلى Excel',\r\n 'general.exportToExcelSuccess': 'تم تصدير Excel بنجاح',\r\n 'general.exportToExcelError': 'فشل تصدير Excel',\r\n 'general.exportToPdf': 'تصدير إلى PDF',\r\n 'general.exportToPdfSuccess': 'تم تصدير PDF بنجاح',\r\n 'general.exportToPdfError': 'فشل تصدير PDF',\r\n 'general.importFromExcel': 'استيراد من Excel',\r\n 'general.importFromExcelSuccess': 'تم استيراد Excel بنجاح',\r\n 'general.importFromExcelError': 'فشل استيراد Excel',\r\n 'general.selected': 'محدد',\r\n 'general.search': 'بحث',\r\n 'general.selectField': 'اختر',\r\n 'general.selectPlaceholder': 'اختر',\r\n 'general.choice': 'اختر العمود',\r\n 'general.prev': 'السابق',\r\n 'general.next': 'التالي',\r\n 'general.noData': 'لا توجد بيانات',\r\n 'general.loading': 'جارٍ التحميل…',\r\n 'general.footerTotal': 'المجموع',\r\n 'general.footerAvg': 'المتوسط',\r\n 'general.replicateRow': 'تكرار الصف',\r\n 'general.edit': 'تعديل',\r\n 'general.rowEdit': 'تعديل الصف',\r\n 'general.row': 'صف',\r\n 'general.selectRow': 'تحديد الصف',\r\n 'general.save': 'حفظ',\r\n 'general.notActive': 'غير نشط',\r\n 'general.add': 'إضافة',\r\n 'general.themeDark': 'الوضع الداكن',\r\n 'general.themeLight': 'الوضع الفاتح',\r\n 'general.toolbar': 'شريط الأدوات',\r\n 'general.filter': 'تصفية',\r\n 'general.filterApply': 'تطبيق',\r\n 'general.filterClear': 'مسح',\r\n 'general.filterActive': 'التصفية نشطة',\r\n 'general.rowsIn': 'صفوف في',\r\n 'general.page': 'صفحات',\r\n 'general.validationInRow': 'في الصف',\r\n 'general.validationInColumn': 'في العمود',\r\n 'general.loadMore': 'عرض المزيد ({visible} من {total})',\r\n 'general.searchFound': 'تم العثور على {count} نتيجة',\r\n 'general.searchNotFound': 'لا توجد نتائج',\r\n 'general.searchPosition': '{current} من {total}',\r\n 'columnMenu.open': 'قائمة العمود',\r\n 'columnMenu.sortAsc': 'فرز تصاعدي',\r\n 'columnMenu.sortDesc': 'فرز تنازلي',\r\n 'columnMenu.sortNone': 'إلغاء الفرز',\r\n 'columnMenu.filter': 'تصفية…',\r\n 'columnMenu.hideColumn': 'إخفاء العمود',\r\n 'columnMenu.pinStart': 'تثبيت للبداية',\r\n 'columnMenu.pinEnd': 'تثبيت للنهاية',\r\n 'columnMenu.pinNone': 'إلغاء التثبيت',\r\n 'columnMenu.autoSize': 'تحجيم تلقائي',\r\n 'columnMenu.columnsPanel': 'إعداد الأعمدة',\r\n 'a11y.sortedAsc': 'تم الفرز حسب {column} تصاعدياً',\r\n 'a11y.sortedDesc': 'تم الفرز حسب {column} تنازلياً',\r\n 'a11y.sortCleared': 'تم إلغاء الفرز',\r\n 'a11y.filterResult': '{visible} من {total} صف بعد التصفية',\r\n 'a11y.filterCleared': 'تم إلغاء التصفية',\r\n 'a11y.rowsSelected': 'تم تحديد {count} صف',\r\n 'a11y.selectionCleared': 'تم إلغاء التحديد',\r\n 'a11y.validationError': 'خطأ في التحقق: {message}',\r\n 'a11y.validationGeneric': 'خطأ في التحقق',\r\n 'history.title': 'السجل',\r\n 'history.empty': 'لا يوجد سجل بعد. عدّل خلية لإضافة أحداث.',\r\n 'history.severity': 'الشدة',\r\n 'history.category': 'الفئة',\r\n 'history.filterAll': 'الكل',\r\n 'history.severity.info': 'معلومة',\r\n 'history.severity.warning': 'تحذير',\r\n 'history.severity.error': 'خطأ',\r\n 'history.category.data': 'بيانات',\r\n 'history.category.structure': 'بنية',\r\n 'history.category.view': 'عرض',\r\n 'history.category.system': 'نظام',\r\n 'history.restore': 'استعادة القيمة السابقة',\r\n 'offline.online': 'متصل',\r\n 'offline.offline': 'غير متصل',\r\n 'offline.pendingCount': '{count} تغييرات غير محفوظة',\r\n 'offline.pendingEmpty': 'تم حفظ كل التغييرات محلياً',\r\n 'sync.policy': 'سياسة التعارض',\r\n 'sync.policy.lastWriteWins': 'آخر كتابة تفوز',\r\n 'sync.policy.serverWins': 'الخادم يفوز',\r\n 'sync.policy.manual': 'يدوي',\r\n 'sync.now': 'مزامنة الآن',\r\n 'sync.syncing': 'جارٍ المزامنة…',\r\n 'sync.unavailable': 'نقل المزامنة غير مهيأ',\r\n 'sync.result': 'أُرسل {pushed}، استُلم {pulled}، تعارضات {conflicts}',\r\n 'sync.local': 'محلي',\r\n 'sync.remote': 'خادم',\r\n 'sync.keepLocal': 'الإبقاء على المحلي',\r\n 'sync.keepRemote': 'الإبقاء على الخادم',\r\n 'date.pickDate': 'اختر تاريخاً',\r\n 'date.pickRange': 'اختر نطاقاً',\r\n 'date.clear': 'مسح',\r\n 'date.calendar': 'تقويم جلالي',\r\n 'date.prevMonth': 'الشهر السابق',\r\n 'date.nextMonth': 'الشهر التالي',\r\n};\r\n\r\nexport default arMessages;\r\n"]}
|