namirasoft-core 1.4.115 → 1.4.117
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/dist/NamingConvention.js +1 -1
- package/dist/NamingConvention.js.map +1 -1
- package/dist/TimeZone.d.ts +9 -0
- package/dist/TimeZone.js +51 -0
- package/dist/TimeZone.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/NamingConvention.ts +1 -1
- package/src/TimeZone.ts +60 -0
- package/src/index.ts +1 -0
- package/SKILLS.md +0 -141
package/dist/NamingConvention.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NamingConvention.js","sourceRoot":"","sources":["../src/NamingConvention.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"NamingConvention.js","sourceRoot":"","sources":["../src/NamingConvention.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class TimeZone {
|
|
2
|
+
FullName: string;
|
|
3
|
+
ShortName: string;
|
|
4
|
+
Minutes: number;
|
|
5
|
+
constructor(FullName: string, ShortName: string, minutes: number);
|
|
6
|
+
static from(ianaName: string, at?: Date): TimeZone;
|
|
7
|
+
private static offsetMinutes;
|
|
8
|
+
static list(at?: Date): TimeZone[];
|
|
9
|
+
}
|
package/dist/TimeZone.js
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TimeZone = void 0;
|
|
4
|
+
class TimeZone {
|
|
5
|
+
constructor(FullName, ShortName, minutes) {
|
|
6
|
+
this.FullName = "";
|
|
7
|
+
this.ShortName = "";
|
|
8
|
+
this.Minutes = 0;
|
|
9
|
+
this.FullName = FullName;
|
|
10
|
+
this.ShortName = ShortName;
|
|
11
|
+
this.Minutes = minutes;
|
|
12
|
+
}
|
|
13
|
+
static from(ianaName, at = new Date()) {
|
|
14
|
+
var _a, _b;
|
|
15
|
+
const parts = new Intl.DateTimeFormat("en-US", {
|
|
16
|
+
timeZone: ianaName,
|
|
17
|
+
timeZoneName: "short",
|
|
18
|
+
}).formatToParts(at);
|
|
19
|
+
const shortName = (_b = (_a = parts.find(p => p.type === "timeZoneName")) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "";
|
|
20
|
+
const minutes = TimeZone.offsetMinutes(ianaName, at);
|
|
21
|
+
return new TimeZone(ianaName, shortName, minutes);
|
|
22
|
+
}
|
|
23
|
+
static offsetMinutes(ianaName, at) {
|
|
24
|
+
const dtf = new Intl.DateTimeFormat("en-US", {
|
|
25
|
+
timeZone: ianaName,
|
|
26
|
+
hour12: false,
|
|
27
|
+
year: "numeric",
|
|
28
|
+
month: "2-digit",
|
|
29
|
+
day: "2-digit",
|
|
30
|
+
hour: "2-digit",
|
|
31
|
+
minute: "2-digit",
|
|
32
|
+
second: "2-digit",
|
|
33
|
+
});
|
|
34
|
+
const parts = {};
|
|
35
|
+
for (const p of dtf.formatToParts(at)) {
|
|
36
|
+
if (p.type !== "literal")
|
|
37
|
+
parts[p.type] = p.value;
|
|
38
|
+
}
|
|
39
|
+
const hour = (+parts.hour) % 24;
|
|
40
|
+
const asUTC = Date.UTC(+parts.year, +parts.month - 1, +parts.day, hour, +parts.minute, +parts.second);
|
|
41
|
+
return Math.round((asUTC - at.getTime()) / 60000);
|
|
42
|
+
}
|
|
43
|
+
static list(at = new Date()) {
|
|
44
|
+
const names = Intl.supportedValuesOf
|
|
45
|
+
? Intl.supportedValuesOf("timeZone")
|
|
46
|
+
: [];
|
|
47
|
+
return names.map(name => TimeZone.from(name, at));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.TimeZone = TimeZone;
|
|
51
|
+
//# sourceMappingURL=TimeZone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimeZone.js","sourceRoot":"","sources":["../src/TimeZone.ts"],"names":[],"mappings":";;;AAAA,MAAa,QAAQ;IAKjB,YAAY,QAAgB,EAAE,SAAiB,EAAE,OAAe;QAHhE,aAAQ,GAAW,EAAE,CAAC;QACtB,cAAS,GAAW,EAAE,CAAC;QACvB,YAAO,GAAW,CAAC,CAAC;QAGhB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAgB,EAAE,KAAW,IAAI,IAAI,EAAE;;QAE/C,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YAC3C,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,OAAO;SACxB,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACrB,MAAM,SAAS,GAAG,MAAA,MAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,0CAAE,KAAK,mCAAI,EAAE,CAAC;QAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,QAAgB,EAAE,EAAQ;QAEnD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YACzC,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;SACpB,CAAC,CAAC;QACH,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,EACrC,CAAC;YACG,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;gBAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QACtD,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAClB,CAAC,KAAK,CAAC,IAAI,EACX,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAChB,CAAC,KAAK,CAAC,GAAG,EACV,IAAI,EACJ,CAAC,KAAK,CAAC,MAAM,EACb,CAAC,KAAK,CAAC,MAAM,CAChB,CAAC;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,KAAW,IAAI,IAAI,EAAE;QAE7B,MAAM,KAAK,GAAc,IAAY,CAAC,iBAAiB;YACnD,CAAC,CAAE,IAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC;YAC7C,CAAC,CAAC,EAAE,CAAC;QACT,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;CACJ;AA3DD,4BA2DC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -60,6 +60,7 @@ __exportStar(require("./SortItem"), exports);
|
|
|
60
60
|
__exportStar(require("./StringOperation"), exports);
|
|
61
61
|
__exportStar(require("./TimeOperation"), exports);
|
|
62
62
|
__exportStar(require("./TimeUnitOperation"), exports);
|
|
63
|
+
__exportStar(require("./TimeZone"), exports);
|
|
63
64
|
__exportStar(require("./URLOperation"), exports);
|
|
64
65
|
__exportStar(require("./VersionOperation"), exports);
|
|
65
66
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,kDAAgC;AAChC,iDAA+B;AAC/B,qDAAmC;AACnC,mDAAiC;AACjC,kDAAgC;AAChC,8CAA4B;AAC5B,4CAA0B;AAC1B,qDAAmC;AACnC,kDAAgC;AAChC,sDAAoC;AACpC,+CAA6B;AAC7B,mDAAiC;AACjC,kDAAgC;AAChC,+CAA6B;AAC7B,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,4DAA0C;AAC1C,yDAAuC;AACvC,oDAAkC;AAClC,qDAAmC;AACnC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,sDAAoC;AACpC,mDAAiC;AACjC,mDAAiC;AACjC,oDAAkC;AAClC,qDAAmC;AACnC,6CAA2B;AAC3B,oDAAkC;AAClC,kDAAgC;AAChC,sDAAoC;AACpC,iDAA+B;AAC/B,qDAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,kDAAgC;AAChC,iDAA+B;AAC/B,qDAAmC;AACnC,mDAAiC;AACjC,kDAAgC;AAChC,8CAA4B;AAC5B,4CAA0B;AAC1B,qDAAmC;AACnC,kDAAgC;AAChC,sDAAoC;AACpC,+CAA6B;AAC7B,mDAAiC;AACjC,kDAAgC;AAChC,+CAA6B;AAC7B,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,mDAAiC;AACjC,qDAAmC;AACnC,kDAAgC;AAChC,4DAA0C;AAC1C,yDAAuC;AACvC,oDAAkC;AAClC,qDAAmC;AACnC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,sDAAoC;AACpC,mDAAiC;AACjC,mDAAiC;AACjC,oDAAkC;AAClC,qDAAmC;AACnC,6CAA2B;AAC3B,oDAAkC;AAClC,kDAAgC;AAChC,sDAAoC;AACpC,6CAA2B;AAC3B,iDAA+B;AAC/B,qDAAmC"}
|
package/package.json
CHANGED
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.4.
|
|
12
|
-
"author": "Amir Abolhasani
|
|
11
|
+
"version": "1.4.117",
|
|
12
|
+
"author": "Amir Abolhasani",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/index.js",
|
|
15
15
|
"types": "./dist/index.d.ts",
|
package/src/NamingConvention.ts
CHANGED
package/src/TimeZone.ts
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export class TimeZone
|
|
2
|
+
{
|
|
3
|
+
FullName: string = "";
|
|
4
|
+
ShortName: string = "";
|
|
5
|
+
Minutes: number = 0;
|
|
6
|
+
constructor(FullName: string, ShortName: string, minutes: number)
|
|
7
|
+
{
|
|
8
|
+
this.FullName = FullName;
|
|
9
|
+
this.ShortName = ShortName;
|
|
10
|
+
this.Minutes = minutes;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
static from(ianaName: string, at: Date = new Date()): TimeZone
|
|
14
|
+
{
|
|
15
|
+
const parts = new Intl.DateTimeFormat("en-US", {
|
|
16
|
+
timeZone: ianaName,
|
|
17
|
+
timeZoneName: "short",
|
|
18
|
+
}).formatToParts(at);
|
|
19
|
+
const shortName = parts.find(p => p.type === "timeZoneName")?.value ?? "";
|
|
20
|
+
const minutes = TimeZone.offsetMinutes(ianaName, at);
|
|
21
|
+
return new TimeZone(ianaName, shortName, minutes);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
private static offsetMinutes(ianaName: string, at: Date): number
|
|
25
|
+
{
|
|
26
|
+
const dtf = new Intl.DateTimeFormat("en-US", {
|
|
27
|
+
timeZone: ianaName,
|
|
28
|
+
hour12: false,
|
|
29
|
+
year: "numeric",
|
|
30
|
+
month: "2-digit",
|
|
31
|
+
day: "2-digit",
|
|
32
|
+
hour: "2-digit",
|
|
33
|
+
minute: "2-digit",
|
|
34
|
+
second: "2-digit",
|
|
35
|
+
});
|
|
36
|
+
const parts: Record<string, string> = {};
|
|
37
|
+
for (const p of dtf.formatToParts(at))
|
|
38
|
+
{
|
|
39
|
+
if (p.type !== "literal") parts[p.type] = p.value;
|
|
40
|
+
}
|
|
41
|
+
const hour = (+parts.hour) % 24;
|
|
42
|
+
const asUTC = Date.UTC(
|
|
43
|
+
+parts.year,
|
|
44
|
+
+parts.month - 1,
|
|
45
|
+
+parts.day,
|
|
46
|
+
hour,
|
|
47
|
+
+parts.minute,
|
|
48
|
+
+parts.second,
|
|
49
|
+
);
|
|
50
|
+
return Math.round((asUTC - at.getTime()) / 60000);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
static list(at: Date = new Date()): TimeZone[]
|
|
54
|
+
{
|
|
55
|
+
const names: string[] = (Intl as any).supportedValuesOf
|
|
56
|
+
? (Intl as any).supportedValuesOf("timeZone")
|
|
57
|
+
: [];
|
|
58
|
+
return names.map(name => TimeZone.from(name, at));
|
|
59
|
+
}
|
|
60
|
+
}
|
package/src/index.ts
CHANGED
package/SKILLS.md
DELETED
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: namirasoft-core
|
|
3
|
-
description: Use when working inside the Namirasoft Core NPM Package or when any Namirasoft package imports from namirasoft-core. Covers all utility operations, storage implementations, HTTP client, FilterItem types, and cross-package conventions.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Namirasoft Core Package Skill
|
|
7
|
-
|
|
8
|
-
## Trigger
|
|
9
|
-
Use this skill when working inside `d:\01 - Code Base\Namira\Package\TypeScript\Namirasoft Core NPM Package` or when any other Namirasoft package imports from `namirasoft-core`.
|
|
10
|
-
|
|
11
|
-
## Package Identity
|
|
12
|
-
- **npm name:** `namirasoft-core`
|
|
13
|
-
- **Current version:** `1.4.x`
|
|
14
|
-
- **Entry point:** `dist/index.js` / `dist/index.d.ts`
|
|
15
|
-
- **Source:** `src/`
|
|
16
|
-
- **Purpose:** Foundational utility library — the lowest-level shared package in the Namirasoft ecosystem. Every other package depends on it.
|
|
17
|
-
|
|
18
|
-
## Dependency Overview
|
|
19
|
-
External deps only: `async-mutex`, `axios`, `moment`, `phone`, `uuid`. No Namirasoft peer deps.
|
|
20
|
-
|
|
21
|
-
## Full Export Inventory
|
|
22
|
-
|
|
23
|
-
### HTTP / Server
|
|
24
|
-
| Export | File | Description |
|
|
25
|
-
|--------|------|-------------|
|
|
26
|
-
| `BaseServer` | `BaseServer.ts` | Axios-based HTTP client wrapper. Handles request/response hooks, error normalization, base URL config |
|
|
27
|
-
| `HTTPError` | `HTTPError.ts` | Typed HTTP error class carrying status code + message |
|
|
28
|
-
| `HTTPMethod` | `HTTPMethod.ts` | Enum: `GET`, `POST`, `PUT`, `PATCH`, `DELETE` |
|
|
29
|
-
|
|
30
|
-
### Database Abstractions (meta/type layer)
|
|
31
|
-
| Export | Description |
|
|
32
|
-
|--------|-------------|
|
|
33
|
-
| `BaseDatabaseRow` | Base interface for a single DB row |
|
|
34
|
-
| `BaseMetaColumn` | Column metadata descriptor |
|
|
35
|
-
| `BaseMetaDatabase` | Database metadata descriptor |
|
|
36
|
-
| `BaseMetaTable` | Table metadata descriptor |
|
|
37
|
-
|
|
38
|
-
### Storage Implementations
|
|
39
|
-
All implement `IStorage<T>`:
|
|
40
|
-
| Export | Description |
|
|
41
|
-
|--------|-------------|
|
|
42
|
-
| `IStorage` | Interface: `get()`, `set()`, `remove()`, `clear()` |
|
|
43
|
-
| `CookieStorage` | Browser cookie storage |
|
|
44
|
-
| `JsonFileStorage` | File-system JSON storage |
|
|
45
|
-
| `LocalStorage` | Browser localStorage |
|
|
46
|
-
| `MemoryDedicatedStorage` | In-process isolated memory map |
|
|
47
|
-
| `MemorySharedStorage` | In-process shared singleton memory map |
|
|
48
|
-
| `SessionStorage` | Browser sessionStorage |
|
|
49
|
-
|
|
50
|
-
### Operations (stateless utility classes)
|
|
51
|
-
| Export | Key Methods / Notes |
|
|
52
|
-
|--------|---------------------|
|
|
53
|
-
| `ByteOperation` | File-size formatting, byte/KB/MB conversions |
|
|
54
|
-
| `ConsoleOperation` | Colored console output helpers |
|
|
55
|
-
| `ConvertService` | Type coercion utilities (string↔number, etc.) |
|
|
56
|
-
| `CookieService` | Browser cookie read/write/delete |
|
|
57
|
-
| `CountryOperation` | Country code lookups |
|
|
58
|
-
| `CronOperation` | Cron expression helpers |
|
|
59
|
-
| `EncodingOperation` | Base64, hex, UTF-8 encoding/decoding |
|
|
60
|
-
| `ErrorOperation` | Error formatting, safe stringification |
|
|
61
|
-
| `FileOperation` | Path manipulation, extension extraction |
|
|
62
|
-
| `GeoOperation` | Lat/lng distance, bounding boxes |
|
|
63
|
-
| `HashOperation` | MD5/SHA hashing |
|
|
64
|
-
| `ObjectService` | Deep clone, merge, diff, flatten |
|
|
65
|
-
| `PasswordOperation` | Password strength check, bcrypt helpers |
|
|
66
|
-
| `PhoneOperation` | Phone number parse/format via `phone` lib |
|
|
67
|
-
| `PriceOperation` | Currency formatting, decimal normalization |
|
|
68
|
-
| `SearchOperation` | Fuzzy/substring matching helpers |
|
|
69
|
-
| `StringOperation` | Slug, trim, capitalize, truncate, etc. |
|
|
70
|
-
| `TimeOperation` | Date/time via moment: format, diff, parse |
|
|
71
|
-
| `URLOperation` | URL parse, query-string encode/decode |
|
|
72
|
-
| `VersionOperation` | SemVer compare, increment |
|
|
73
|
-
| `SetTimeouService` | Promise-based setTimeout with cancellation |
|
|
74
|
-
|
|
75
|
-
### Types / Interfaces
|
|
76
|
-
| Export | Description |
|
|
77
|
-
|--------|-------------|
|
|
78
|
-
| `FilterItem` | A single filter criterion: `column`, `operator`, `value` |
|
|
79
|
-
| `FilterItemColumnType` | Enum of column types for filter building |
|
|
80
|
-
| `FilterItemOperator` | Enum of operators: `eq`, `ne`, `gt`, `lt`, `in`, `like`, etc. |
|
|
81
|
-
| `SortItem` | Sort descriptor: `column` + `direction` |
|
|
82
|
-
| `NamingConvention` | Enum: `camelCase`, `snake_case`, `PascalCase` |
|
|
83
|
-
| `ParsedNameValue` | `{ name: string; value: any }` pair |
|
|
84
|
-
| `BaseUUID` | Interface: `{ uuid: string }` |
|
|
85
|
-
| `PackageService` | Reads `package.json` metadata at runtime |
|
|
86
|
-
|
|
87
|
-
### Geographic / Locale
|
|
88
|
-
| Export | Description |
|
|
89
|
-
|--------|-------------|
|
|
90
|
-
| `Country` | Single country record interface |
|
|
91
|
-
| `Countries` | Full country list constant |
|
|
92
|
-
|
|
93
|
-
## Common Usage Patterns
|
|
94
|
-
|
|
95
|
-
### Using BaseServer (HTTP client)
|
|
96
|
-
```typescript
|
|
97
|
-
import { BaseServer } from 'namirasoft-core';
|
|
98
|
-
|
|
99
|
-
class MyApiServer extends BaseServer {
|
|
100
|
-
constructor() {
|
|
101
|
-
super('https://api.example.com');
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
async getUser(id: string) {
|
|
105
|
-
return this.get<User>(`/users/${id}`);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
### Using FilterItem / FilterItemOperator
|
|
111
|
-
```typescript
|
|
112
|
-
import { FilterItem, FilterItemOperator, FilterItemColumnType } from 'namirasoft-core';
|
|
113
|
-
|
|
114
|
-
const filter: FilterItem = {
|
|
115
|
-
column: 'email',
|
|
116
|
-
type: FilterItemColumnType.String,
|
|
117
|
-
operator: FilterItemOperator.eq,
|
|
118
|
-
value: 'user@example.com',
|
|
119
|
-
};
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### Using IStorage
|
|
123
|
-
```typescript
|
|
124
|
-
import { MemorySharedStorage, IStorage } from 'namirasoft-core';
|
|
125
|
-
|
|
126
|
-
const cache: IStorage<string> = new MemorySharedStorage<string>();
|
|
127
|
-
await cache.set('key', 'value');
|
|
128
|
-
const val = await cache.get('key');
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
## Build & Dev Commands
|
|
132
|
-
```bash
|
|
133
|
-
npm run build # tsc → dist/
|
|
134
|
-
npm run watch # tsc --watch
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
## Conventions
|
|
138
|
-
- All Operations are stateless singletons — call static methods or use `new` (check each class).
|
|
139
|
-
- `TimeOperation` always uses `moment` internally; pass ISO strings for safest interop.
|
|
140
|
-
- `FilterItem` is the lingua franca for query filters across all database adapters.
|
|
141
|
-
- Never add Express/Node.js-specific logic here; this package must remain browser-compatible.
|