range-pie 2.1.0 → 2.2.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 +13 -0
- package/dist/index.js.map +1 -0
- package/dist/py-range.d.ts +12 -0
- package/dist/py-range.js +20 -0
- package/dist/py-range.js.map +1 -0
- package/examples/array-methods.js +5 -0
- package/package.json +13 -4
package/README.md
CHANGED
|
@@ -29,6 +29,7 @@ A TypeScript/JavaScript library that brings Python's range functionality to Java
|
|
|
29
29
|
- [includes()](#includes)
|
|
30
30
|
- [indexOf()](#indexof)
|
|
31
31
|
- [lastIndexOf()](#lastindexof)
|
|
32
|
+
- [pop()](#pop)
|
|
32
33
|
- [reverse()](#reverse)
|
|
33
34
|
|
|
34
35
|
- [Advanced Usage](#advanced-usage)
|
|
@@ -293,6 +294,18 @@ console.log(range.lastIndexOf(3)); // 2
|
|
|
293
294
|
console.log(range.lastIndexOf(5)); // -1
|
|
294
295
|
```
|
|
295
296
|
|
|
297
|
+
### pop()
|
|
298
|
+
|
|
299
|
+
Similar to [**`Array.prototype.pop`**](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/pop),
|
|
300
|
+
this method removes the last value from the range, shortens the range and
|
|
301
|
+
returns that value.
|
|
302
|
+
|
|
303
|
+
```javascript
|
|
304
|
+
const range = new PyRange(1, 5); // [1, 2, 3, 4]
|
|
305
|
+
console.log(range.pop()); // 4
|
|
306
|
+
console.log([...range]); // [1, 2, 3]
|
|
307
|
+
```
|
|
308
|
+
|
|
296
309
|
### reverse()
|
|
297
310
|
|
|
298
311
|
It works the same as [**`Array.prototype.reverse`**](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAA8D;AAKrC,wFALI,kBAAY,OAKT;AAChC,kBAAe,kBAAO,CAAC;AAEvB,qDAAqD;AACrD,4DAA4D;AAC5D,wDAAwD;AACxD,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;IAC3E,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,yDAAyD;IACzD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,iDAAiD;IACjD,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,kBAAO,CAAC;AACnC,CAAC"}
|
package/dist/py-range.d.ts
CHANGED
|
@@ -162,6 +162,18 @@ declare class PyRange implements Iterable<number> {
|
|
|
162
162
|
* @returns {number} The index of the last occurrence of the value, or -1 if it is not present.
|
|
163
163
|
*/
|
|
164
164
|
lastIndexOf(value: any): number;
|
|
165
|
+
/**
|
|
166
|
+
* Removes the last element from the range and returns it.
|
|
167
|
+
*
|
|
168
|
+
* This method behaves similarly to `Array.prototype.pop`. It decreases the
|
|
169
|
+
* `stop` value by the step size, shortens the range length by one, and returns
|
|
170
|
+
* the removed value. If the range is empty, `undefined` is returned and the
|
|
171
|
+
* range remains unchanged.
|
|
172
|
+
*
|
|
173
|
+
* @returns {number|undefined} The removed last value, or `undefined` if the
|
|
174
|
+
* range is empty.
|
|
175
|
+
*/
|
|
176
|
+
pop(): number | undefined;
|
|
165
177
|
/**
|
|
166
178
|
* Reverses the order of the elements in this range, returning a new PyRange object.
|
|
167
179
|
* @returns {PyRange} A new PyRange object with the elements in reverse order.
|
package/dist/py-range.js
CHANGED
|
@@ -303,6 +303,26 @@ class PyRange {
|
|
|
303
303
|
}
|
|
304
304
|
return -1;
|
|
305
305
|
}
|
|
306
|
+
/**
|
|
307
|
+
* Removes the last element from the range and returns it.
|
|
308
|
+
*
|
|
309
|
+
* This method behaves similarly to `Array.prototype.pop`. It decreases the
|
|
310
|
+
* `stop` value by the step size, shortens the range length by one, and returns
|
|
311
|
+
* the removed value. If the range is empty, `undefined` is returned and the
|
|
312
|
+
* range remains unchanged.
|
|
313
|
+
*
|
|
314
|
+
* @returns {number|undefined} The removed last value, or `undefined` if the
|
|
315
|
+
* range is empty.
|
|
316
|
+
*/
|
|
317
|
+
pop() {
|
|
318
|
+
if (this._length === 0) {
|
|
319
|
+
return undefined;
|
|
320
|
+
}
|
|
321
|
+
const lastValue = this.at(this._length - 1);
|
|
322
|
+
this._stop -= this._step;
|
|
323
|
+
this._length--;
|
|
324
|
+
return lastValue;
|
|
325
|
+
}
|
|
306
326
|
/**
|
|
307
327
|
* Reverses the order of the elements in this range, returning a new PyRange object.
|
|
308
328
|
* @returns {PyRange} A new PyRange object with the elements in reverse order.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"py-range.js","sourceRoot":"","sources":["../src/py-range.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,3 +66,8 @@ range.forEach((x) => {
|
|
|
66
66
|
// 3 is divisible by 3
|
|
67
67
|
// 6 is divisible by 3
|
|
68
68
|
// 9 is divisible by 3
|
|
69
|
+
|
|
70
|
+
// Pop: Remove the last value
|
|
71
|
+
const popped = range.pop();
|
|
72
|
+
console.log("pop():", popped); // 9
|
|
73
|
+
console.log("After pop:", [...range]); // [1, 2, 3, 4, 5, 6, 7, 8]
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "range-pie",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "A TypeScript class that simulates Python's range function, combined with several useful JavaScript array methods.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/index.js",
|
|
6
7
|
"types": "dist/index.d.ts",
|
|
7
8
|
"exports": {
|
|
8
9
|
".": {
|
|
@@ -18,11 +19,15 @@
|
|
|
18
19
|
"scripts": {
|
|
19
20
|
"build": "tsc",
|
|
20
21
|
"build:prod": "tsc -p tsconfig.prod.json",
|
|
21
|
-
"
|
|
22
|
+
"build:watch": "tsc --watch",
|
|
23
|
+
"prepublishOnly": "npm run build:prod && npm run test",
|
|
22
24
|
"test": "jest",
|
|
25
|
+
"lint": "eslint . --ext .ts,.js",
|
|
26
|
+
"lint:fix": "eslint . --ext .ts,.js --fix",
|
|
27
|
+
"test:watch": "jest --watch",
|
|
23
28
|
"clean": "rimraf dist",
|
|
24
29
|
"format": "prettier --write \"src/**/*.{ts,js}\" \"test/**/*.{ts,js}\" \"examples/**/*.{ts,js}\" \"types/**/*.{ts,js,json}\" \"*.{js,json}\"",
|
|
25
|
-
"check
|
|
30
|
+
"format:check": "prettier --check \"src/**/*.{ts,js}\" \"test/**/*.{ts,js}\" \"examples/**/*.{ts,js}\" \"types/**/*.{ts,js,json}\" \"*.{js,json}\"",
|
|
26
31
|
"example:basic": "node examples/basic-usage.js",
|
|
27
32
|
"example:array": "node examples/array-methods.js",
|
|
28
33
|
"example:advanced": "node examples/advanced-usage.js",
|
|
@@ -46,12 +51,16 @@
|
|
|
46
51
|
"url": "git+https://github.com/SkorpionG/range-pie.git"
|
|
47
52
|
},
|
|
48
53
|
"devDependencies": {
|
|
54
|
+
"@eslint/js": "^9.28.0",
|
|
49
55
|
"@types/jest": "^29.5.0",
|
|
56
|
+
"eslint": "^9.28.0",
|
|
57
|
+
"globals": "^16.2.0",
|
|
50
58
|
"jest": "^29.7.0",
|
|
51
59
|
"prettier": "^3.5.3",
|
|
52
60
|
"rimraf": "^5.0.0",
|
|
53
61
|
"ts-jest": "^29.1.0",
|
|
54
62
|
"ts-node": "^10.9.1",
|
|
55
|
-
"typescript": "^5.0.4"
|
|
63
|
+
"typescript": "^5.0.4",
|
|
64
|
+
"typescript-eslint": "^8.33.1"
|
|
56
65
|
}
|
|
57
66
|
}
|