@atproto/ozone 0.1.126 → 0.1.127

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 (111) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/api/index.d.ts.map +1 -1
  3. package/dist/api/index.js +10 -0
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/safelink/addRule.d.ts +4 -0
  6. package/dist/api/safelink/addRule.d.ts.map +1 -0
  7. package/dist/api/safelink/addRule.js +37 -0
  8. package/dist/api/safelink/addRule.js.map +1 -0
  9. package/dist/api/safelink/queryEvents.d.ts +4 -0
  10. package/dist/api/safelink/queryEvents.d.ts.map +1 -0
  11. package/dist/api/safelink/queryEvents.js +29 -0
  12. package/dist/api/safelink/queryEvents.js.map +1 -0
  13. package/dist/api/safelink/queryRules.d.ts +4 -0
  14. package/dist/api/safelink/queryRules.d.ts.map +1 -0
  15. package/dist/api/safelink/queryRules.js +43 -0
  16. package/dist/api/safelink/queryRules.js.map +1 -0
  17. package/dist/api/safelink/removeRule.d.ts +4 -0
  18. package/dist/api/safelink/removeRule.d.ts.map +1 -0
  19. package/dist/api/safelink/removeRule.js +35 -0
  20. package/dist/api/safelink/removeRule.js.map +1 -0
  21. package/dist/api/safelink/updateRule.d.ts +4 -0
  22. package/dist/api/safelink/updateRule.d.ts.map +1 -0
  23. package/dist/api/safelink/updateRule.js +37 -0
  24. package/dist/api/safelink/updateRule.js.map +1 -0
  25. package/dist/api/util.d.ts +8 -0
  26. package/dist/api/util.d.ts.map +1 -1
  27. package/dist/api/util.js +33 -1
  28. package/dist/api/util.js.map +1 -1
  29. package/dist/context.d.ts +3 -0
  30. package/dist/context.d.ts.map +1 -1
  31. package/dist/context.js +12 -6
  32. package/dist/context.js.map +1 -1
  33. package/dist/db/migrations/20250609T110704000Z-safelink.d.ts +4 -0
  34. package/dist/db/migrations/20250609T110704000Z-safelink.d.ts.map +1 -0
  35. package/dist/db/migrations/20250609T110704000Z-safelink.js +51 -0
  36. package/dist/db/migrations/20250609T110704000Z-safelink.js.map +1 -0
  37. package/dist/db/migrations/index.d.ts +1 -0
  38. package/dist/db/migrations/index.d.ts.map +1 -1
  39. package/dist/db/migrations/index.js +2 -1
  40. package/dist/db/migrations/index.js.map +1 -1
  41. package/dist/db/schema/index.d.ts +2 -1
  42. package/dist/db/schema/index.d.ts.map +1 -1
  43. package/dist/db/schema/safelink.d.ts +31 -0
  44. package/dist/db/schema/safelink.d.ts.map +1 -0
  45. package/dist/db/schema/safelink.js +6 -0
  46. package/dist/db/schema/safelink.js.map +1 -0
  47. package/dist/lexicon/index.d.ts +15 -0
  48. package/dist/lexicon/index.d.ts.map +1 -1
  49. package/dist/lexicon/index.js +40 -1
  50. package/dist/lexicon/index.js.map +1 -1
  51. package/dist/lexicon/lexicons.d.ts +10972 -10140
  52. package/dist/lexicon/lexicons.d.ts.map +1 -1
  53. package/dist/lexicon/lexicons.js +446 -0
  54. package/dist/lexicon/lexicons.js.map +1 -1
  55. package/dist/lexicon/types/tools/ozone/safelink/addRule.d.ts +47 -0
  56. package/dist/lexicon/types/tools/ozone/safelink/addRule.d.ts.map +1 -0
  57. package/dist/lexicon/types/tools/ozone/safelink/addRule.js +7 -0
  58. package/dist/lexicon/types/tools/ozone/safelink/addRule.js.map +1 -0
  59. package/dist/lexicon/types/tools/ozone/safelink/defs.d.ts +47 -0
  60. package/dist/lexicon/types/tools/ozone/safelink/defs.d.ts.map +1 -0
  61. package/dist/lexicon/types/tools/ozone/safelink/defs.js +25 -0
  62. package/dist/lexicon/types/tools/ozone/safelink/defs.js.map +1 -0
  63. package/dist/lexicon/types/tools/ozone/safelink/queryEvents.d.ts +51 -0
  64. package/dist/lexicon/types/tools/ozone/safelink/queryEvents.d.ts.map +1 -0
  65. package/dist/lexicon/types/tools/ozone/safelink/queryEvents.js +7 -0
  66. package/dist/lexicon/types/tools/ozone/safelink/queryEvents.js.map +1 -0
  67. package/dist/lexicon/types/tools/ozone/safelink/queryRules.d.ts +57 -0
  68. package/dist/lexicon/types/tools/ozone/safelink/queryRules.d.ts.map +1 -0
  69. package/dist/lexicon/types/tools/ozone/safelink/queryRules.js +7 -0
  70. package/dist/lexicon/types/tools/ozone/safelink/queryRules.js.map +1 -0
  71. package/dist/lexicon/types/tools/ozone/safelink/removeRule.d.ts +45 -0
  72. package/dist/lexicon/types/tools/ozone/safelink/removeRule.d.ts.map +1 -0
  73. package/dist/lexicon/types/tools/ozone/safelink/removeRule.js +7 -0
  74. package/dist/lexicon/types/tools/ozone/safelink/removeRule.js.map +1 -0
  75. package/dist/lexicon/types/tools/ozone/safelink/updateRule.d.ts +47 -0
  76. package/dist/lexicon/types/tools/ozone/safelink/updateRule.d.ts.map +1 -0
  77. package/dist/lexicon/types/tools/ozone/safelink/updateRule.js +7 -0
  78. package/dist/lexicon/types/tools/ozone/safelink/updateRule.js.map +1 -0
  79. package/dist/mod-service/status.d.ts +6 -0
  80. package/dist/mod-service/status.d.ts.map +1 -1
  81. package/dist/safelink/service.d.ts +69 -0
  82. package/dist/safelink/service.d.ts.map +1 -0
  83. package/dist/safelink/service.js +179 -0
  84. package/dist/safelink/service.js.map +1 -0
  85. package/package.json +4 -4
  86. package/src/api/index.ts +10 -0
  87. package/src/api/safelink/addRule.ts +48 -0
  88. package/src/api/safelink/queryEvents.ts +32 -0
  89. package/src/api/safelink/queryRules.ts +58 -0
  90. package/src/api/safelink/removeRule.ts +42 -0
  91. package/src/api/safelink/updateRule.ts +48 -0
  92. package/src/api/util.ts +38 -0
  93. package/src/context.ts +11 -0
  94. package/src/db/migrations/20250609T110704000Z-safelink.ts +53 -0
  95. package/src/db/migrations/index.ts +1 -0
  96. package/src/db/schema/index.ts +3 -1
  97. package/src/db/schema/safelink.ts +39 -0
  98. package/src/lexicon/index.ts +70 -0
  99. package/src/lexicon/lexicons.ts +451 -0
  100. package/src/lexicon/types/tools/ozone/safelink/addRule.ts +64 -0
  101. package/src/lexicon/types/tools/ozone/safelink/defs.ts +76 -0
  102. package/src/lexicon/types/tools/ozone/safelink/queryEvents.ts +68 -0
  103. package/src/lexicon/types/tools/ozone/safelink/queryRules.ts +74 -0
  104. package/src/lexicon/types/tools/ozone/safelink/removeRule.ts +62 -0
  105. package/src/lexicon/types/tools/ozone/safelink/updateRule.ts +64 -0
  106. package/src/safelink/service.ts +304 -0
  107. package/tests/__snapshots__/safelink.test.ts.snap +179 -0
  108. package/tests/communication-templates.test.ts +7 -7
  109. package/tests/safelink.test.ts +534 -0
  110. package/tsconfig.build.tsbuildinfo +1 -1
  111. package/tsconfig.tests.tsbuildinfo +1 -1
@@ -0,0 +1,179 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`safelink management addRule allows admins to add rules 1`] = `
4
+ Object {
5
+ "action": "block",
6
+ "comment": "Known phishing domain targeting users",
7
+ "createdAt": "1970-01-01T00:00:00.000Z",
8
+ "createdBy": "user(0)",
9
+ "eventType": "addRule",
10
+ "id": 1,
11
+ "pattern": "domain",
12
+ "reason": "phishing",
13
+ "url": "https://malicious-site.com",
14
+ }
15
+ `;
16
+
17
+ exports[`safelink management queryEvents allows querying safelink events 1`] = `
18
+ Array [
19
+ Object {
20
+ "action": "block",
21
+ "comment": "Escalated to block",
22
+ "createdAt": "1970-01-01T00:00:00.000Z",
23
+ "createdBy": "user(0)",
24
+ "eventType": "updateRule",
25
+ "id": 10,
26
+ "pattern": "domain",
27
+ "reason": "phishing",
28
+ "url": "https://events-test.com",
29
+ },
30
+ Object {
31
+ "action": "warn",
32
+ "comment": "Initial rule creation",
33
+ "createdAt": "1970-01-01T00:00:00.000Z",
34
+ "createdBy": "user(0)",
35
+ "eventType": "addRule",
36
+ "id": 9,
37
+ "pattern": "domain",
38
+ "reason": "spam",
39
+ "url": "https://events-test.com",
40
+ },
41
+ Object {
42
+ "action": "warn",
43
+ "createdAt": "1970-01-01T00:00:00.000Z",
44
+ "createdBy": "user(0)",
45
+ "eventType": "addRule",
46
+ "id": 8,
47
+ "pattern": "url",
48
+ "reason": "spam",
49
+ "url": "https://query-test2.com/specific-path",
50
+ },
51
+ Object {
52
+ "action": "block",
53
+ "createdAt": "1970-01-01T00:00:00.000Z",
54
+ "createdBy": "user(0)",
55
+ "eventType": "addRule",
56
+ "id": 7,
57
+ "pattern": "domain",
58
+ "reason": "phishing",
59
+ "url": "https://query-test1.com",
60
+ },
61
+ Object {
62
+ "action": "block",
63
+ "createdAt": "1970-01-01T00:00:00.000Z",
64
+ "createdBy": "user(0)",
65
+ "eventType": "addRule",
66
+ "id": 6,
67
+ "pattern": "domain",
68
+ "reason": "spam",
69
+ "url": "https://remove-test2.com",
70
+ },
71
+ Object {
72
+ "action": "block",
73
+ "comment": "Removing rule - false positive",
74
+ "createdAt": "1970-01-01T00:00:00.000Z",
75
+ "createdBy": "user(0)",
76
+ "eventType": "removeRule",
77
+ "id": 5,
78
+ "pattern": "url",
79
+ "reason": "csam",
80
+ "url": "https://remove-test.com",
81
+ },
82
+ Object {
83
+ "action": "block",
84
+ "comment": "Rule to be removed",
85
+ "createdAt": "1970-01-01T00:00:00.000Z",
86
+ "createdBy": "user(0)",
87
+ "eventType": "addRule",
88
+ "id": 4,
89
+ "pattern": "url",
90
+ "reason": "csam",
91
+ "url": "https://remove-test.com",
92
+ },
93
+ Object {
94
+ "action": "block",
95
+ "comment": "Updated: confirmed phishing site",
96
+ "createdAt": "1970-01-01T00:00:00.000Z",
97
+ "createdBy": "user(0)",
98
+ "eventType": "updateRule",
99
+ "id": 3,
100
+ "pattern": "domain",
101
+ "reason": "phishing",
102
+ "url": "https://update-test.com",
103
+ },
104
+ Object {
105
+ "action": "warn",
106
+ "comment": "Initially marked as spam",
107
+ "createdAt": "1970-01-01T00:00:00.000Z",
108
+ "createdBy": "user(0)",
109
+ "eventType": "addRule",
110
+ "id": 2,
111
+ "pattern": "domain",
112
+ "reason": "spam",
113
+ "url": "https://update-test.com",
114
+ },
115
+ Object {
116
+ "action": "block",
117
+ "comment": "Known phishing domain targeting users",
118
+ "createdAt": "1970-01-01T00:00:00.000Z",
119
+ "createdBy": "user(0)",
120
+ "eventType": "addRule",
121
+ "id": 1,
122
+ "pattern": "domain",
123
+ "reason": "phishing",
124
+ "url": "https://malicious-site.com",
125
+ },
126
+ ]
127
+ `;
128
+
129
+ exports[`safelink management queryRules allows querying all active rules 1`] = `
130
+ Array [
131
+ Object {
132
+ "action": "warn",
133
+ "createdAt": "1970-01-01T00:00:00.000Z",
134
+ "createdBy": "user(0)",
135
+ "pattern": "url",
136
+ "reason": "spam",
137
+ "updatedAt": "1970-01-01T00:00:00.000Z",
138
+ "url": "https://query-test2.com/specific-path",
139
+ },
140
+ Object {
141
+ "action": "block",
142
+ "createdAt": "1970-01-01T00:00:00.000Z",
143
+ "createdBy": "user(0)",
144
+ "pattern": "domain",
145
+ "reason": "phishing",
146
+ "updatedAt": "1970-01-01T00:00:00.000Z",
147
+ "url": "https://query-test1.com",
148
+ },
149
+ Object {
150
+ "action": "block",
151
+ "createdAt": "1970-01-01T00:00:00.000Z",
152
+ "createdBy": "user(0)",
153
+ "pattern": "domain",
154
+ "reason": "spam",
155
+ "updatedAt": "1970-01-01T00:00:00.000Z",
156
+ "url": "https://remove-test2.com",
157
+ },
158
+ Object {
159
+ "action": "block",
160
+ "comment": "Updated: confirmed phishing site",
161
+ "createdAt": "1970-01-01T00:00:00.000Z",
162
+ "createdBy": "user(0)",
163
+ "pattern": "domain",
164
+ "reason": "phishing",
165
+ "updatedAt": "1970-01-01T00:00:00.000Z",
166
+ "url": "https://update-test.com",
167
+ },
168
+ Object {
169
+ "action": "block",
170
+ "comment": "Known phishing domain targeting users",
171
+ "createdAt": "1970-01-01T00:00:00.000Z",
172
+ "createdBy": "user(0)",
173
+ "pattern": "domain",
174
+ "reason": "phishing",
175
+ "updatedAt": "1970-01-01T00:00:00.000Z",
176
+ "url": "https://malicious-site.com",
177
+ },
178
+ ]
179
+ `;
@@ -28,7 +28,7 @@ describe('communication-templates', () => {
28
28
  }
29
29
 
30
30
  const listTemplates = async () => {
31
- const { data } = await agent.api.tools.ozone.communication.listTemplates(
31
+ const { data } = await agent.tools.ozone.communication.listTemplates(
32
32
  {},
33
33
  {
34
34
  headers: await network.ozone.modHeaders(
@@ -42,7 +42,7 @@ describe('communication-templates', () => {
42
42
 
43
43
  describe('create templates', () => {
44
44
  it('only allows admins to create new templates', async () => {
45
- const moderatorReq = agent.api.tools.ozone.communication.createTemplate(
45
+ const moderatorReq = agent.tools.ozone.communication.createTemplate(
46
46
  { ...templateOne, createdBy: sc.dids.bob },
47
47
  {
48
48
  encoding: 'application/json',
@@ -55,7 +55,7 @@ describe('communication-templates', () => {
55
55
  await expect(moderatorReq).rejects.toThrow(
56
56
  'Must be a moderator to create a communication template',
57
57
  )
58
- const modReq = await agent.api.tools.ozone.communication.createTemplate(
58
+ const modReq = await agent.tools.ozone.communication.createTemplate(
59
59
  { ...templateOne, createdBy: sc.dids.bob },
60
60
  {
61
61
  encoding: 'application/json',
@@ -82,7 +82,7 @@ describe('communication-templates', () => {
82
82
  ...templateOne,
83
83
  name: 'Test template 2',
84
84
  }
85
- await agent.api.tools.ozone.communication.createTemplate(
85
+ await agent.tools.ozone.communication.createTemplate(
86
86
  { ...templateTwo, createdBy: sc.dids.bob },
87
87
  {
88
88
  encoding: 'application/json',
@@ -100,7 +100,7 @@ describe('communication-templates', () => {
100
100
  })
101
101
  describe('update template', () => {
102
102
  it('allows moderators to update a template by id', async () => {
103
- const { data } = await agent.api.tools.ozone.communication.updateTemplate(
103
+ const { data } = await agent.tools.ozone.communication.updateTemplate(
104
104
  { id: '1', updatedBy: sc.dids.bob, name: '1 Test template' },
105
105
  {
106
106
  encoding: 'application/json',
@@ -117,7 +117,7 @@ describe('communication-templates', () => {
117
117
  })
118
118
  describe('delete template', () => {
119
119
  it('allows admins to remove a template by id', async () => {
120
- const modReq = agent.api.tools.ozone.communication.deleteTemplate(
120
+ const modReq = agent.tools.ozone.communication.deleteTemplate(
121
121
  { id: '1' },
122
122
  {
123
123
  encoding: 'application/json',
@@ -132,7 +132,7 @@ describe('communication-templates', () => {
132
132
  'Must be a moderator to delete a communication template',
133
133
  )
134
134
 
135
- await agent.api.tools.ozone.communication.deleteTemplate(
135
+ await agent.tools.ozone.communication.deleteTemplate(
136
136
  { id: '1' },
137
137
  {
138
138
  encoding: 'application/json',