tr-currency 1.0.0 → 18.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.
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # TrCurrency
2
- This library supporting Angular version 17
2
+ This library supporting Angular version 18
3
3
 
4
4
  ## Install
5
5
  `npm i tr-currency`
@@ -34,7 +34,7 @@ imports: [
34
34
 
35
35
  ## Output
36
36
  ```typescript
37
- 14505.50 ==> 14.505,00
37
+ 14505.50 ==> 14.505,50
38
38
  ```
39
39
 
40
40
  ## Usage
@@ -45,5 +45,20 @@ imports: [
45
45
 
46
46
  ## Output
47
47
  ```typescript
48
- 14505.50 ==> ₺14.505,00
48
+ 14505.50 ==> ₺14.505,50
49
+ ```
50
+
51
+ ## Usage
52
+ ```typescript
53
+ //If you want the more or less fraction, you can stil do it with a parameter.
54
+ {{money | trCurrency : '₺' : true, 1}}
55
+ {{money | trCurrency : '₺' : true, 2}}
56
+ {{money | trCurrency : '₺' : true, 3}}
57
+ ```
58
+
59
+ ## Output
60
+ ```typescript
61
+ 14505.50 ==> ₺14.505,5
62
+ 14505.50 ==> ₺14.505,50
63
+ 14505.50 ==> ₺14.505,500
49
64
  ```
@@ -1,27 +1,23 @@
1
1
  import { Pipe } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class TrCurrencyPipe {
4
- transform(value, symbol = "", isCurrencyFront = false) {
4
+ transform(value, symbol = "", isCurrencyFront = true, fraction = 2) {
5
5
  if (value == 0) {
6
- return "0,00 " + symbol;
6
+ return `0,${'0'.repeat(fraction)} ${symbol}`;
7
7
  }
8
8
  let isValueNegative = false;
9
9
  if (value < 0) {
10
10
  isValueNegative = true;
11
11
  value *= -1;
12
12
  }
13
+ value = parseFloat(value.toFixed(fraction)); // Küsuratları yuvarlama
13
14
  let money = value.toString().split(".");
14
15
  let newMoney = "";
15
16
  let lira = money[0];
16
- let penny = "00";
17
- if (money.length > 1) {
18
- penny = money[1];
19
- if (penny.length == 1) {
20
- penny = penny + "0";
21
- }
22
- if (penny.length > 1) {
23
- penny = this.convertNumber(+penny).toString();
24
- }
17
+ let penny = money.length > 1 ? money[1] : "";
18
+ // Küsuratları doğru uzunlukta yapma
19
+ if (penny.length < fraction) {
20
+ penny = penny + "0".repeat(fraction - penny.length);
25
21
  }
26
22
  let count = 0;
27
23
  for (let i = lira.length; i > 0; i--) {
@@ -43,25 +39,14 @@ export class TrCurrencyPipe {
43
39
  }
44
40
  return newMoney;
45
41
  }
46
- convertNumber(value) {
47
- const stringValue = value.toString();
48
- if (stringValue.length > 2) {
49
- const remainingValue = parseInt(stringValue.substr(2));
50
- if (remainingValue > 5) {
51
- return parseInt(stringValue.substr(0, 2)) + 1;
52
- }
53
- return parseInt(stringValue.substr(0, 2));
54
- }
55
- return value;
56
- }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TrCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
58
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TrCurrencyPipe, isStandalone: true, name: "trCurrency" }); }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TrCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
43
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.3", ngImport: i0, type: TrCurrencyPipe, isStandalone: true, name: "trCurrency" }); }
59
44
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TrCurrencyPipe, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TrCurrencyPipe, decorators: [{
61
46
  type: Pipe,
62
47
  args: [{
63
48
  name: 'trCurrency',
64
49
  standalone: true
65
50
  }]
66
51
  }] });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHItY3VycmVuY3kucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL215LWxpYi9zcmMvbGliL3RyLWN1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsU0FBaUIsRUFBRSxFQUFFLGtCQUEyQixLQUFLO1FBQzVFLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNkLE9BQU8sT0FBTyxHQUFHLE1BQU0sQ0FBQztTQUN6QjtRQUVELElBQUksZUFBZSxHQUFXLEtBQUssQ0FBQztRQUNwQyxJQUFHLEtBQUssR0FBRyxDQUFDLEVBQUM7WUFDWCxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztTQUNiO1FBRUQsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN2QyxJQUFJLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3BCLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDaEIsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtnQkFDckIsS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUE7YUFDcEI7WUFFRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQixLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQy9DO1NBQ0Y7UUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxLQUFLLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN2QyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFBO2dCQUNyQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO2FBQ1g7aUJBQUk7Z0JBQ0gsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFBO2dCQUMvQixLQUFLLEVBQUUsQ0FBQzthQUNUO1NBQ0Y7UUFFRCxJQUFHLENBQUMsZUFBZTtZQUNqQixRQUFRLEdBQUcsR0FBRyxRQUFRLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDOztZQUU3QyxRQUFRLEdBQUcsR0FBRyxNQUFNLEdBQUcsUUFBUSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRTVDLElBQUcsZUFBZSxFQUFDO1lBQ2pCLFFBQVEsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDO1NBQzNCO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhO1FBQ3pCLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzFCLE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkQsSUFBSSxjQUFjLEdBQUcsQ0FBQyxFQUFFO2dCQUN0QixPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUMvQztZQUNELE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDM0M7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OEdBNURVLGNBQWM7NEdBQWQsY0FBYzs7MkZBQWQsY0FBYztrQkFKMUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsWUFBWTtvQkFDbEIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICd0ckN1cnJlbmN5JyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUckN1cnJlbmN5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICB0cmFuc2Zvcm0odmFsdWU6IG51bWJlciwgc3ltYm9sOiBzdHJpbmcgPSBcIlwiLCBpc0N1cnJlbmN5RnJvbnQ6IGJvb2xlYW4gPSBmYWxzZSk6IHN0cmluZyB7XHJcbiAgICBpZiAodmFsdWUgPT0gMCkgeyAgICAgICAgICAgIFxyXG4gICAgICByZXR1cm4gXCIwLDAwIFwiICsgc3ltYm9sO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBpc1ZhbHVlTmVnYXRpdmU6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gICAgaWYodmFsdWUgPCAwKXtcclxuICAgICAgaXNWYWx1ZU5lZ2F0aXZlID0gdHJ1ZTtcclxuICAgICAgdmFsdWUgKj0gLTE7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IG1vbmV5ID0gdmFsdWUudG9TdHJpbmcoKS5zcGxpdChcIi5cIilcclxuICAgIGxldCBuZXdNb25leSA9IFwiXCI7XHJcbiAgICBsZXQgbGlyYSA9IG1vbmV5WzBdO1xyXG4gICAgbGV0IHBlbm55ID0gXCIwMFwiO1xyXG4gICAgaWYgKG1vbmV5Lmxlbmd0aCA+IDEpIHtcclxuICAgICAgcGVubnkgPSBtb25leVsxXVxyXG4gICAgICBpZiAocGVubnkubGVuZ3RoID09IDEpIHtcclxuICAgICAgICBwZW5ueSA9IHBlbm55ICsgXCIwXCJcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHBlbm55Lmxlbmd0aCA+IDEpIHtcclxuICAgICAgICBwZW5ueSA9IHRoaXMuY29udmVydE51bWJlcigrcGVubnkpLnRvU3RyaW5nKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsZXQgY291bnQgPSAwO1xyXG4gICAgZm9yIChsZXQgaSA9IGxpcmEubGVuZ3RoOyBpID4gMDsgaS0tKSB7ICAgICAgXHJcbiAgICAgIGlmIChjb3VudCA9PSAzICYmIGNvdW50IDwgKGxpcmEubGVuZ3RoKSkge1xyXG4gICAgICAgIG5ld01vbmV5ID0gbGlyYVtpLTFdICsgXCIuXCIgKyBuZXdNb25leSBcclxuICAgICAgICBjb3VudCA9IDE7XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIG5ld01vbmV5ID0gbGlyYVtpLTFdICsgbmV3TW9uZXlcclxuICAgICAgICBjb3VudCsrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIWlzQ3VycmVuY3lGcm9udClcclxuICAgICAgbmV3TW9uZXkgPSBgJHtuZXdNb25leX0sJHtwZW5ueX0gJHtzeW1ib2x9YDtcclxuICAgIGVsc2UgIFxyXG4gICAgIG5ld01vbmV5ID0gYCR7c3ltYm9sfSR7bmV3TW9uZXl9LCR7cGVubnl9YDtcclxuXHJcbiAgICBpZihpc1ZhbHVlTmVnYXRpdmUpe1xyXG4gICAgICBuZXdNb25leSA9IFwiLVwiICsgbmV3TW9uZXk7XHJcbiAgICB9ICAgIFxyXG4gICAgcmV0dXJuIG5ld01vbmV5O1xyXG4gIH0gXHJcblxyXG4gIGNvbnZlcnROdW1iZXIodmFsdWU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBjb25zdCBzdHJpbmdWYWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XHJcbiAgICBpZiAoc3RyaW5nVmFsdWUubGVuZ3RoID4gMikge1xyXG4gICAgICBjb25zdCByZW1haW5pbmdWYWx1ZSA9IHBhcnNlSW50KHN0cmluZ1ZhbHVlLnN1YnN0cigyKSk7XHJcbiAgICAgIGlmIChyZW1haW5pbmdWYWx1ZSA+IDUpIHtcclxuICAgICAgICByZXR1cm4gcGFyc2VJbnQoc3RyaW5nVmFsdWUuc3Vic3RyKDAsIDIpKSArIDE7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHBhcnNlSW50KHN0cmluZ1ZhbHVlLnN1YnN0cigwLCAyKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHItY3VycmVuY3kucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL215LWxpYi9zcmMvbGliL3RyLWN1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsU0FBaUIsRUFBRSxFQUFFLGtCQUEyQixJQUFJLEVBQUUsV0FBa0IsQ0FBQztRQUNoRyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNmLE9BQU8sS0FBSyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQy9DLENBQUM7UUFFRCxJQUFJLGVBQWUsR0FBVyxLQUFLLENBQUM7UUFDcEMsSUFBRyxLQUFLLEdBQUcsQ0FBQyxFQUFDLENBQUM7WUFDWixlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNkLENBQUM7UUFFRCxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLHdCQUF3QjtRQUVyRSxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3ZDLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRTdDLG9DQUFvQztRQUNwQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsUUFBUSxFQUFFLENBQUM7WUFDNUIsS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUVELElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLEtBQUssSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDckMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUN4QyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFBO2dCQUNyQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1lBQ1osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQTtnQkFDL0IsS0FBSyxFQUFFLENBQUM7WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUcsQ0FBQyxlQUFlO1lBQ2pCLFFBQVEsR0FBRyxHQUFHLFFBQVEsSUFBSSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7O1lBRTVDLFFBQVEsR0FBRyxHQUFHLE1BQU0sR0FBRyxRQUFRLElBQUksS0FBSyxFQUFFLENBQUM7UUFFN0MsSUFBRyxlQUFlLEVBQUMsQ0FBQztZQUNsQixRQUFRLEdBQUcsR0FBRyxHQUFHLFFBQVEsQ0FBQztRQUM1QixDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQzs4R0E3Q1UsY0FBYzs0R0FBZCxjQUFjOzsyRkFBZCxjQUFjO2tCQUoxQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxZQUFZO29CQUNsQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3RyQ3VycmVuY3knLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyQ3VycmVuY3lQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyLCBzeW1ib2w6IHN0cmluZyA9IFwiXCIsIGlzQ3VycmVuY3lGcm9udDogYm9vbGVhbiA9IHRydWUsIGZyYWN0aW9uOm51bWJlciA9IDIpOiBzdHJpbmcge1xyXG4gICAgaWYgKHZhbHVlID09IDApIHsgICAgICBcclxuICAgICAgcmV0dXJuIGAwLCR7JzAnLnJlcGVhdChmcmFjdGlvbil9ICR7c3ltYm9sfWA7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGlzVmFsdWVOZWdhdGl2ZTpib29sZWFuID0gZmFsc2U7XHJcbiAgICBpZih2YWx1ZSA8IDApe1xyXG4gICAgICBpc1ZhbHVlTmVnYXRpdmUgPSB0cnVlO1xyXG4gICAgICB2YWx1ZSAqPSAtMTtcclxuICAgIH1cclxuXHJcbiAgICB2YWx1ZSA9IHBhcnNlRmxvYXQodmFsdWUudG9GaXhlZChmcmFjdGlvbikpOyAvLyBLw7xzdXJhdGxhcsSxIHl1dmFybGFtYVxyXG5cclxuICAgIGxldCBtb25leSA9IHZhbHVlLnRvU3RyaW5nKCkuc3BsaXQoXCIuXCIpXHJcbiAgICBsZXQgbmV3TW9uZXkgPSBcIlwiO1xyXG4gICAgbGV0IGxpcmEgPSBtb25leVswXTtcclxuICAgIGxldCBwZW5ueSA9IG1vbmV5Lmxlbmd0aCA+IDEgPyBtb25leVsxXSA6IFwiXCI7XHJcblxyXG4gICAgLy8gS8O8c3VyYXRsYXLEsSBkb8SfcnUgdXp1bmx1a3RhIHlhcG1hXHJcbiAgICBpZiAocGVubnkubGVuZ3RoIDwgZnJhY3Rpb24pIHtcclxuICAgICAgcGVubnkgPSBwZW5ueSArIFwiMFwiLnJlcGVhdChmcmFjdGlvbiAtIHBlbm55Lmxlbmd0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGNvdW50ID0gMDtcclxuICAgIGZvciAobGV0IGkgPSBsaXJhLmxlbmd0aDsgaSA+IDA7IGktLSkgeyAgICAgIFxyXG4gICAgICBpZiAoY291bnQgPT0gMyAmJiBjb3VudCA8IChsaXJhLmxlbmd0aCkpIHtcclxuICAgICAgICBuZXdNb25leSA9IGxpcmFbaS0xXSArIFwiLlwiICsgbmV3TW9uZXkgXHJcbiAgICAgICAgY291bnQgPSAxO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIG5ld01vbmV5ID0gbGlyYVtpLTFdICsgbmV3TW9uZXlcclxuICAgICAgICBjb3VudCsrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIWlzQ3VycmVuY3lGcm9udClcclxuICAgICAgbmV3TW9uZXkgPSBgJHtuZXdNb25leX0sJHtwZW5ueX0gJHtzeW1ib2x9YDtcclxuICAgIGVsc2UgIFxyXG4gICAgICBuZXdNb25leSA9IGAke3N5bWJvbH0ke25ld01vbmV5fSwke3Blbm55fWA7XHJcblxyXG4gICAgaWYoaXNWYWx1ZU5lZ2F0aXZlKXtcclxuICAgICAgbmV3TW9uZXkgPSBcIi1cIiArIG5ld01vbmV5O1xyXG4gICAgfSAgICBcclxuICAgIHJldHVybiBuZXdNb25leTtcclxuICB9XHJcbn1cclxuIl19
@@ -2,27 +2,23 @@ import * as i0 from '@angular/core';
2
2
  import { Pipe } from '@angular/core';
3
3
 
4
4
  class TrCurrencyPipe {
5
- transform(value, symbol = "", isCurrencyFront = false) {
5
+ transform(value, symbol = "", isCurrencyFront = true, fraction = 2) {
6
6
  if (value == 0) {
7
- return "0,00 " + symbol;
7
+ return `0,${'0'.repeat(fraction)} ${symbol}`;
8
8
  }
9
9
  let isValueNegative = false;
10
10
  if (value < 0) {
11
11
  isValueNegative = true;
12
12
  value *= -1;
13
13
  }
14
+ value = parseFloat(value.toFixed(fraction)); // Küsuratları yuvarlama
14
15
  let money = value.toString().split(".");
15
16
  let newMoney = "";
16
17
  let lira = money[0];
17
- let penny = "00";
18
- if (money.length > 1) {
19
- penny = money[1];
20
- if (penny.length == 1) {
21
- penny = penny + "0";
22
- }
23
- if (penny.length > 1) {
24
- penny = this.convertNumber(+penny).toString();
25
- }
18
+ let penny = money.length > 1 ? money[1] : "";
19
+ // Küsuratları doğru uzunlukta yapma
20
+ if (penny.length < fraction) {
21
+ penny = penny + "0".repeat(fraction - penny.length);
26
22
  }
27
23
  let count = 0;
28
24
  for (let i = lira.length; i > 0; i--) {
@@ -44,21 +40,10 @@ class TrCurrencyPipe {
44
40
  }
45
41
  return newMoney;
46
42
  }
47
- convertNumber(value) {
48
- const stringValue = value.toString();
49
- if (stringValue.length > 2) {
50
- const remainingValue = parseInt(stringValue.substr(2));
51
- if (remainingValue > 5) {
52
- return parseInt(stringValue.substr(0, 2)) + 1;
53
- }
54
- return parseInt(stringValue.substr(0, 2));
55
- }
56
- return value;
57
- }
58
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TrCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
59
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TrCurrencyPipe, isStandalone: true, name: "trCurrency" }); }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TrCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
44
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.3", ngImport: i0, type: TrCurrencyPipe, isStandalone: true, name: "trCurrency" }); }
60
45
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TrCurrencyPipe, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TrCurrencyPipe, decorators: [{
62
47
  type: Pipe,
63
48
  args: [{
64
49
  name: 'trCurrency',
@@ -1 +1 @@
1
- {"version":3,"file":"tr-currency.mjs","sources":["../../../projects/my-lib/src/lib/tr-currency.pipe.ts","../../../projects/my-lib/src/public-api.ts","../../../projects/my-lib/src/tr-currency.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'trCurrency',\r\n standalone: true\r\n})\r\nexport class TrCurrencyPipe implements PipeTransform {\r\n\r\n transform(value: number, symbol: string = \"\", isCurrencyFront: boolean = false): string {\r\n if (value == 0) { \r\n return \"0,00 \" + symbol;\r\n }\r\n\r\n let isValueNegative:boolean = false;\r\n if(value < 0){\r\n isValueNegative = true;\r\n value *= -1;\r\n }\r\n\r\n let money = value.toString().split(\".\")\r\n let newMoney = \"\";\r\n let lira = money[0];\r\n let penny = \"00\";\r\n if (money.length > 1) {\r\n penny = money[1]\r\n if (penny.length == 1) {\r\n penny = penny + \"0\"\r\n }\r\n\r\n if (penny.length > 1) {\r\n penny = this.convertNumber(+penny).toString();\r\n }\r\n }\r\n\r\n let count = 0;\r\n for (let i = lira.length; i > 0; i--) { \r\n if (count == 3 && count < (lira.length)) {\r\n newMoney = lira[i-1] + \".\" + newMoney \r\n count = 1;\r\n }else{\r\n newMoney = lira[i-1] + newMoney\r\n count++;\r\n }\r\n }\r\n\r\n if(!isCurrencyFront)\r\n newMoney = `${newMoney},${penny} ${symbol}`;\r\n else \r\n newMoney = `${symbol}${newMoney},${penny}`;\r\n\r\n if(isValueNegative){\r\n newMoney = \"-\" + newMoney;\r\n } \r\n return newMoney;\r\n } \r\n\r\n convertNumber(value: number): number {\r\n const stringValue = value.toString();\r\n if (stringValue.length > 2) {\r\n const remainingValue = parseInt(stringValue.substr(2));\r\n if (remainingValue > 5) {\r\n return parseInt(stringValue.substr(0, 2)) + 1;\r\n }\r\n return parseInt(stringValue.substr(0, 2));\r\n }\r\n return value;\r\n }\r\n\r\n}\r\n","/*\r\n * Public API Surface of my-lib\r\n */\r\n\r\nexport * from './lib/tr-currency.pipe';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tr-currency.mjs","sources":["../../../projects/my-lib/src/lib/tr-currency.pipe.ts","../../../projects/my-lib/src/public-api.ts","../../../projects/my-lib/src/tr-currency.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'trCurrency',\r\n standalone: true\r\n})\r\nexport class TrCurrencyPipe implements PipeTransform {\r\n\r\n transform(value: number, symbol: string = \"\", isCurrencyFront: boolean = true, fraction:number = 2): string {\r\n if (value == 0) { \r\n return `0,${'0'.repeat(fraction)} ${symbol}`;\r\n }\r\n\r\n let isValueNegative:boolean = false;\r\n if(value < 0){\r\n isValueNegative = true;\r\n value *= -1;\r\n }\r\n\r\n value = parseFloat(value.toFixed(fraction)); // Küsuratları yuvarlama\r\n\r\n let money = value.toString().split(\".\")\r\n let newMoney = \"\";\r\n let lira = money[0];\r\n let penny = money.length > 1 ? money[1] : \"\";\r\n\r\n // Küsuratları doğru uzunlukta yapma\r\n if (penny.length < fraction) {\r\n penny = penny + \"0\".repeat(fraction - penny.length);\r\n }\r\n\r\n let count = 0;\r\n for (let i = lira.length; i > 0; i--) { \r\n if (count == 3 && count < (lira.length)) {\r\n newMoney = lira[i-1] + \".\" + newMoney \r\n count = 1;\r\n } else {\r\n newMoney = lira[i-1] + newMoney\r\n count++;\r\n }\r\n }\r\n\r\n if(!isCurrencyFront)\r\n newMoney = `${newMoney},${penny} ${symbol}`;\r\n else \r\n newMoney = `${symbol}${newMoney},${penny}`;\r\n\r\n if(isValueNegative){\r\n newMoney = \"-\" + newMoney;\r\n } \r\n return newMoney;\r\n }\r\n}\r\n","/*\r\n * Public API Surface of my-lib\r\n */\r\n\r\nexport * from './lib/tr-currency.pipe';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAMa,cAAc,CAAA;IAEzB,SAAS,CAAC,KAAa,EAAE,MAAiB,GAAA,EAAE,EAAE,eAA2B,GAAA,IAAI,EAAE,QAAA,GAAkB,CAAC,EAAA;AAChG,QAAA,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,OAAO,CAAA,EAAA,EAAK,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA,CAAA,EAAI,MAAM,CAAA,CAAE,CAAC;SAC9C;QAED,IAAI,eAAe,GAAW,KAAK,CAAC;AACpC,QAAA,IAAG,KAAK,GAAG,CAAC,EAAC;YACX,eAAe,GAAG,IAAI,CAAC;YACvB,KAAK,IAAI,CAAC,CAAC,CAAC;SACb;AAED,QAAA,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE5C,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvC,IAAI,QAAQ,GAAG,EAAE,CAAC;AAClB,QAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AACpB,QAAA,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;;AAG7C,QAAA,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ,EAAE;AAC3B,YAAA,KAAK,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;SACrD;QAED,IAAI,KAAK,GAAG,CAAC,CAAC;AACd,QAAA,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AACpC,YAAA,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBACvC,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAA;gBACrC,KAAK,GAAG,CAAC,CAAC;aACX;iBAAM;gBACL,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;AAC/B,gBAAA,KAAK,EAAE,CAAC;aACT;SACF;AAED,QAAA,IAAG,CAAC,eAAe;YACjB,QAAQ,GAAG,GAAG,QAAQ,CAAA,CAAA,EAAI,KAAK,CAAI,CAAA,EAAA,MAAM,EAAE,CAAC;;YAE5C,QAAQ,GAAG,GAAG,MAAM,CAAA,EAAG,QAAQ,CAAI,CAAA,EAAA,KAAK,EAAE,CAAC;QAE7C,IAAG,eAAe,EAAC;AACjB,YAAA,QAAQ,GAAG,GAAG,GAAG,QAAQ,CAAC;SAC3B;AACD,QAAA,OAAO,QAAQ,CAAC;KACjB;8GA7CU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,CAAA,EAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,YAAY;AAClB,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;;;ACLD;;AAEG;;ACFH;;AAEG;;;;"}
@@ -1,8 +1,7 @@
1
1
  import { PipeTransform } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TrCurrencyPipe implements PipeTransform {
4
- transform(value: number, symbol?: string, isCurrencyFront?: boolean): string;
5
- convertNumber(value: number): number;
4
+ transform(value: number, symbol?: string, isCurrencyFront?: boolean, fraction?: number): string;
6
5
  static ɵfac: i0.ɵɵFactoryDeclaration<TrCurrencyPipe, never>;
7
6
  static ɵpipe: i0.ɵɵPipeDeclaration<TrCurrencyPipe, "trCurrency", true>;
8
7
  }
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "tr-currency",
3
- "version": "1.0.0",
3
+ "version": "18.0.0",
4
4
  "peerDependencies": {
5
- "@angular/common": "^17.0.2",
6
- "@angular/core": "^17.0.2"
5
+ "@angular/common": "^18.0.3",
6
+ "@angular/core": "^18.0.3"
7
7
  },
8
8
  "dependencies": {
9
9
  "tslib": "^2.3.0"