fandom.js 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +73 -1
  3. package/dist/client/client.d.ts +69 -0
  4. package/dist/client/client.d.ts.map +1 -0
  5. package/dist/client/client.js +74 -0
  6. package/dist/enums/index.d.ts +7 -0
  7. package/dist/enums/index.d.ts.map +1 -0
  8. package/dist/enums/index.js +6 -0
  9. package/dist/enums/log-type.d.ts +20 -0
  10. package/dist/enums/log-type.d.ts.map +1 -0
  11. package/dist/enums/log-type.js +20 -0
  12. package/dist/enums/namespace.d.ts +25 -0
  13. package/dist/enums/namespace.d.ts.map +1 -0
  14. package/dist/enums/namespace.js +25 -0
  15. package/dist/enums/protection-level.d.ts +9 -0
  16. package/dist/enums/protection-level.d.ts.map +1 -0
  17. package/dist/enums/protection-level.js +9 -0
  18. package/dist/enums/rc-show.d.ts +16 -0
  19. package/dist/enums/rc-show.d.ts.map +1 -0
  20. package/dist/enums/rc-show.js +16 -0
  21. package/dist/enums/rc-type.d.ts +11 -0
  22. package/dist/enums/rc-type.d.ts.map +1 -0
  23. package/dist/enums/rc-type.js +11 -0
  24. package/dist/enums/token-type.d.ts +13 -0
  25. package/dist/enums/token-type.d.ts.map +1 -0
  26. package/dist/enums/token-type.js +13 -0
  27. package/dist/errors/api-error.d.ts +6 -0
  28. package/dist/errors/api-error.d.ts.map +1 -0
  29. package/dist/errors/api-error.js +8 -0
  30. package/dist/events/events.d.ts +14 -0
  31. package/dist/events/events.d.ts.map +1 -0
  32. package/dist/events/events.js +3 -0
  33. package/dist/index.d.ts +17 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +16 -0
  36. package/dist/managers/base-manager.d.ts +16 -0
  37. package/dist/managers/base-manager.d.ts.map +1 -0
  38. package/dist/managers/base-manager.js +12 -0
  39. package/dist/managers/category-manager.d.ts +15 -0
  40. package/dist/managers/category-manager.d.ts.map +1 -0
  41. package/dist/managers/category-manager.js +27 -0
  42. package/dist/managers/event-manager.d.ts +48 -0
  43. package/dist/managers/event-manager.d.ts.map +1 -0
  44. package/dist/managers/event-manager.js +110 -0
  45. package/dist/managers/meta-manager.d.ts +14 -0
  46. package/dist/managers/meta-manager.d.ts.map +1 -0
  47. package/dist/managers/meta-manager.js +20 -0
  48. package/dist/managers/page-manager.d.ts +26 -0
  49. package/dist/managers/page-manager.d.ts.map +1 -0
  50. package/dist/managers/page-manager.js +86 -0
  51. package/dist/managers/revision-manager.d.ts +32 -0
  52. package/dist/managers/revision-manager.d.ts.map +1 -0
  53. package/dist/managers/revision-manager.js +69 -0
  54. package/dist/managers/search-manager.d.ts +14 -0
  55. package/dist/managers/search-manager.d.ts.map +1 -0
  56. package/dist/managers/search-manager.js +24 -0
  57. package/dist/managers/user-manager.d.ts +34 -0
  58. package/dist/managers/user-manager.d.ts.map +1 -0
  59. package/dist/managers/user-manager.js +66 -0
  60. package/dist/package-constants.d.ts +5 -0
  61. package/dist/package-constants.d.ts.map +1 -0
  62. package/dist/package-constants.js +4 -0
  63. package/dist/request/rate-limiter.d.ts +13 -0
  64. package/dist/request/rate-limiter.d.ts.map +1 -0
  65. package/dist/request/rate-limiter.js +28 -0
  66. package/dist/request/request-manager.d.ts +29 -0
  67. package/dist/request/request-manager.d.ts.map +1 -0
  68. package/dist/request/request-manager.js +106 -0
  69. package/dist/structures/base-structure.d.ts +24 -0
  70. package/dist/structures/base-structure.d.ts.map +1 -0
  71. package/dist/structures/base-structure.js +13 -0
  72. package/dist/structures/page-structure.d.ts +81 -0
  73. package/dist/structures/page-structure.d.ts.map +1 -0
  74. package/dist/structures/page-structure.js +164 -0
  75. package/dist/structures/revision-structure.d.ts +46 -0
  76. package/dist/structures/revision-structure.d.ts.map +1 -0
  77. package/dist/structures/revision-structure.js +41 -0
  78. package/dist/structures/user-structure.d.ts +45 -0
  79. package/dist/structures/user-structure.d.ts.map +1 -0
  80. package/dist/structures/user-structure.js +52 -0
  81. package/dist/types/api.d.ts +14 -0
  82. package/dist/types/api.d.ts.map +1 -0
  83. package/dist/types/api.js +1 -0
  84. package/dist/types/client.d.ts +39 -0
  85. package/dist/types/client.d.ts.map +1 -0
  86. package/dist/types/client.js +1 -0
  87. package/dist/types/events.d.ts +141 -0
  88. package/dist/types/events.d.ts.map +1 -0
  89. package/dist/types/events.js +1 -0
  90. package/dist/types/index.d.ts +8 -0
  91. package/dist/types/index.d.ts.map +1 -0
  92. package/dist/types/index.js +7 -0
  93. package/dist/types/page.d.ts +105 -0
  94. package/dist/types/page.d.ts.map +1 -0
  95. package/dist/types/page.js +1 -0
  96. package/dist/types/revision.d.ts +83 -0
  97. package/dist/types/revision.d.ts.map +1 -0
  98. package/dist/types/revision.js +1 -0
  99. package/dist/types/site.d.ts +290 -0
  100. package/dist/types/site.d.ts.map +1 -0
  101. package/dist/types/site.js +1 -0
  102. package/dist/types/user.d.ts +100 -0
  103. package/dist/types/user.d.ts.map +1 -0
  104. package/dist/types/user.js +1 -0
  105. package/package.json +54 -8
  106. package/src/index.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site.d.ts","sourceRoot":"","sources":["../../src/types/site.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Represents a user object returned by the API.
3
+ */
4
+ export interface APIUser {
5
+ /**
6
+ * The ID of the user.
7
+ */
8
+ userid: number;
9
+ /**
10
+ * The name of the user.
11
+ */
12
+ name: string;
13
+ /**
14
+ * The registration date of the user.
15
+ */
16
+ registration?: string;
17
+ /**
18
+ * The groups the user belongs to.
19
+ */
20
+ groups?: string[];
21
+ /**
22
+ * Allow other properties.
23
+ */
24
+ [key: string]: unknown;
25
+ }
26
+ /**
27
+ * Represents a user contribution.
28
+ */
29
+ export interface UserContribution {
30
+ /**
31
+ * The ID of the user.
32
+ */
33
+ userid: number;
34
+ /**
35
+ * The name of the user.
36
+ */
37
+ user: string;
38
+ /**
39
+ * The ID of the page.
40
+ */
41
+ pageid: number;
42
+ /**
43
+ * The ID of the revision.
44
+ */
45
+ revid: number;
46
+ /**
47
+ * The ID of the parent revision.
48
+ */
49
+ parentid: number;
50
+ /**
51
+ * The namespace ID.
52
+ */
53
+ ns: number;
54
+ /**
55
+ * The title of the page.
56
+ */
57
+ title: string;
58
+ /**
59
+ * The timestamp of the contribution.
60
+ */
61
+ timestamp: string;
62
+ /**
63
+ * The comment associated with the contribution.
64
+ */
65
+ comment: string;
66
+ /**
67
+ * The size of the contribution.
68
+ */
69
+ size: number;
70
+ /**
71
+ * Allow other properties.
72
+ */
73
+ [key: string]: unknown;
74
+ }
75
+ /**
76
+ * Represents a user block event.
77
+ */
78
+ export interface UserBlockEvent {
79
+ /**
80
+ * The user who was blocked.
81
+ */
82
+ user: string;
83
+ /**
84
+ * The user who performed the block.
85
+ */
86
+ by: string;
87
+ /**
88
+ * The timestamp of the block.
89
+ */
90
+ timestamp: string;
91
+ /**
92
+ * The expiry time of the block.
93
+ */
94
+ expiry: string;
95
+ /**
96
+ * The reason for the block.
97
+ */
98
+ reason: string;
99
+ }
100
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/types/user.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,14 +1,60 @@
1
1
  {
2
2
  "name": "fandom.js",
3
- "version": "1.0.0",
4
- "description": "A way to interact with the Fandom/Wikia bot API",
5
- "main": "src/index.js",
3
+ "version": "1.1.0",
4
+ "description": "A powerful library to interact with the Fandom + MediaWiki APIs",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "type": "module",
8
+ "files": [
9
+ "dist",
10
+ "README.md"
11
+ ],
12
+ "authors": [
13
+ "Ferotiq <evanrayweigel@outlook.com>",
14
+ "ByJonas <me@binaryblazer.me>"
15
+ ],
16
+ "license": "MIT",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/fandomjs/fandom.js.git"
20
+ },
21
+ "homepage": "https://fandom.js.org",
22
+ "bugs": {
23
+ "url": "https://github.com/fandomjs/fandom.js/issues"
24
+ },
25
+ "engines": {
26
+ "node": ">=18"
27
+ },
6
28
  "keywords": [
29
+ "library",
30
+ "wikimedia",
7
31
  "fandom",
8
- "wikia",
9
- "fandom.js",
10
- "wikia.js"
32
+ "fandom-wiki",
33
+ "fandomjs"
11
34
  ],
12
- "author": "Ferotiq",
13
- "license": "ISC"
35
+ "scripts": {
36
+ "build": "tsc",
37
+ "test": "pnpm run test:types && vitest run",
38
+ "test:watch": "vitest --watch",
39
+ "test:coverage": "pnpm run test:types && vitest run --coverage",
40
+ "test:ci": "pnpm run test:types && vitest run --coverage --reporter=dot",
41
+ "test:types": "tsc -p tsconfig.json --noEmit",
42
+ "dev": "tsc -w",
43
+ "prepare": "pnpm build",
44
+ "prepublishOnly": "pnpm build",
45
+ "format": "prettier --write ."
46
+ },
47
+ "dependencies": {
48
+ "cross-fetch": "^4.1.0",
49
+ "eventemitter3": "^5.0.1",
50
+ "lru-cache": "^11.2.2"
51
+ },
52
+ "devDependencies": {
53
+ "@testing-library/jest-dom": "^6.9.1",
54
+ "@types/node": "^24.10.0",
55
+ "@vitest/coverage-v8": "4.0.8",
56
+ "prettier": "^3.6.2",
57
+ "typescript": "^5.9.3",
58
+ "vitest": "^4.0.8"
59
+ }
14
60
  }
package/src/index.js DELETED
File without changes