@jrmc/adonis-attachment 6.0.0-alpha.0 → 6.0.0-alpha.1

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 (94) hide show
  1. package/build/index.d.ts +23 -22
  2. package/build/index.d.ts.map +1 -1
  3. package/build/index.js +15 -14
  4. package/build/index.js.map +1 -1
  5. package/build/src/core/attachment.d.ts +37 -2
  6. package/build/src/core/attachment.d.ts.map +1 -1
  7. package/build/src/core/attachment.js +108 -5
  8. package/build/src/core/attachment.js.map +1 -1
  9. package/build/src/core/attachment_options.d.ts +32 -0
  10. package/build/src/core/attachment_options.d.ts.map +1 -0
  11. package/build/src/core/attachment_options.js +24 -0
  12. package/build/src/core/attachment_options.js.map +1 -0
  13. package/build/src/core/attachment_service.d.ts +7 -1
  14. package/build/src/core/attachment_service.d.ts.map +1 -1
  15. package/build/src/core/attachment_service.js +50 -4
  16. package/build/src/core/attachment_service.js.map +1 -1
  17. package/build/src/core/index.d.ts +2 -1
  18. package/build/src/core/index.d.ts.map +1 -1
  19. package/build/src/core/index.js +2 -1
  20. package/build/src/core/index.js.map +1 -1
  21. package/build/src/define_config.d.ts +4 -0
  22. package/build/src/define_config.d.ts.map +1 -1
  23. package/build/src/define_config.js +1 -0
  24. package/build/src/define_config.js.map +1 -1
  25. package/build/src/integrations/lucid/attachment_column.d.ts +8 -1
  26. package/build/src/integrations/lucid/attachment_column.d.ts.map +1 -1
  27. package/build/src/integrations/lucid/attachment_column.js +25 -12
  28. package/build/src/integrations/lucid/attachment_column.js.map +1 -1
  29. package/build/src/integrations/lucid/attachment_model.d.ts +1 -0
  30. package/build/src/integrations/lucid/attachment_model.d.ts.map +1 -1
  31. package/build/src/integrations/lucid/attachment_model.js +3 -0
  32. package/build/src/integrations/lucid/attachment_model.js.map +1 -1
  33. package/build/src/integrations/lucid/attachment_owner.d.ts +2 -1
  34. package/build/src/integrations/lucid/attachment_owner.d.ts.map +1 -1
  35. package/build/src/integrations/lucid/attachment_owner.js.map +1 -1
  36. package/build/src/integrations/lucid/attachment_relation.d.ts +60 -0
  37. package/build/src/integrations/lucid/attachment_relation.d.ts.map +1 -0
  38. package/build/src/integrations/lucid/attachment_relation.js +163 -0
  39. package/build/src/integrations/lucid/attachment_relation.js.map +1 -0
  40. package/build/src/integrations/lucid/index.d.ts +13 -12
  41. package/build/src/integrations/lucid/index.d.ts.map +1 -1
  42. package/build/src/integrations/lucid/index.js +13 -12
  43. package/build/src/integrations/lucid/index.js.map +1 -1
  44. package/build/src/integrations/lucid/lucid_attachment_lifecycle_service.d.ts +14 -5
  45. package/build/src/integrations/lucid/lucid_attachment_lifecycle_service.d.ts.map +1 -1
  46. package/build/src/integrations/lucid/lucid_attachment_lifecycle_service.js +130 -10
  47. package/build/src/integrations/lucid/lucid_attachment_lifecycle_service.js.map +1 -1
  48. package/build/src/integrations/lucid/lucid_attachment_store.d.ts +10 -1
  49. package/build/src/integrations/lucid/lucid_attachment_store.d.ts.map +1 -1
  50. package/build/src/integrations/lucid/lucid_attachment_store.js +102 -7
  51. package/build/src/integrations/lucid/lucid_attachment_store.js.map +1 -1
  52. package/build/src/integrations/lucid/migrate_legacy_attachment.d.ts +9 -2
  53. package/build/src/integrations/lucid/migrate_legacy_attachment.d.ts.map +1 -1
  54. package/build/src/integrations/lucid/migrate_legacy_attachment.js +25 -3
  55. package/build/src/integrations/lucid/migrate_legacy_attachment.js.map +1 -1
  56. package/build/src/sources/attachment_manager.d.ts +14 -12
  57. package/build/src/sources/attachment_manager.d.ts.map +1 -1
  58. package/build/src/sources/attachment_manager.js +14 -6
  59. package/build/src/sources/attachment_manager.js.map +1 -1
  60. package/build/stubs/migrations/attachments_table.stub +1 -0
  61. package/build/tests/attachment_manager.spec.js +21 -18
  62. package/build/tests/attachment_manager.spec.js.map +1 -1
  63. package/build/tests/attachment_manager_service.spec.js +2 -2
  64. package/build/tests/attachment_manager_service.spec.js.map +1 -1
  65. package/build/tests/attachment_options.spec.d.ts +2 -0
  66. package/build/tests/attachment_options.spec.d.ts.map +1 -0
  67. package/build/tests/attachment_options.spec.js +31 -0
  68. package/build/tests/attachment_options.spec.js.map +1 -0
  69. package/build/tests/attachment_service.spec.js +55 -0
  70. package/build/tests/attachment_service.spec.js.map +1 -1
  71. package/build/tests/attachments_table_stub.spec.js +1 -0
  72. package/build/tests/attachments_table_stub.spec.js.map +1 -1
  73. package/build/tests/define_config.spec.js +12 -0
  74. package/build/tests/define_config.spec.js.map +1 -1
  75. package/build/tests/helpers/lucid_test_database.d.ts.map +1 -1
  76. package/build/tests/helpers/lucid_test_database.js +1 -0
  77. package/build/tests/helpers/lucid_test_database.js.map +1 -1
  78. package/build/tests/lucid_attachment_collection_store.spec.d.ts +2 -0
  79. package/build/tests/lucid_attachment_collection_store.spec.d.ts.map +1 -0
  80. package/build/tests/lucid_attachment_collection_store.spec.js +52 -0
  81. package/build/tests/lucid_attachment_collection_store.spec.js.map +1 -0
  82. package/build/tests/lucid_attachment_column.spec.js +57 -1
  83. package/build/tests/lucid_attachment_column.spec.js.map +1 -1
  84. package/build/tests/lucid_attachment_lifecycle_service.spec.js +172 -0
  85. package/build/tests/lucid_attachment_lifecycle_service.spec.js.map +1 -1
  86. package/build/tests/lucid_attachment_relation.spec.d.ts +8 -0
  87. package/build/tests/lucid_attachment_relation.spec.d.ts.map +1 -0
  88. package/build/tests/lucid_attachment_relation.spec.js +216 -0
  89. package/build/tests/lucid_attachment_relation.spec.js.map +1 -0
  90. package/build/tests/lucid_attachment_store.spec.js +2 -0
  91. package/build/tests/lucid_attachment_store.spec.js.map +1 -1
  92. package/build/tests/migrate_legacy_attachment.spec.js +96 -54
  93. package/build/tests/migrate_legacy_attachment.spec.js.map +1 -1
  94. package/package.json +4 -2
@@ -4,88 +4,130 @@
4
4
  * @license MIT
5
5
  * @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
6
6
  */
7
- import { test } from '@japa/runner';
8
- import { migrateLegacyAttachment } from '../index.js';
9
- import { createAttachmentOwnerKey } from '../src/integrations/lucid/attachment_owner.js';
10
- test.group('migrateLegacyAttachment', () => {
11
- test('converts an original attachment and its variants to polymorphic rows', ({ assert }) => {
12
- const ids = ['original-id', 'thumbnail-id'];
7
+ import { test } from "@japa/runner";
8
+ import { migrateLegacyAttachment, migrateLegacyAttachmentColumn, } from "../index.js";
9
+ import { createAttachmentOwnerKey } from "../src/integrations/lucid/attachment_owner.js";
10
+ test.group("migrateLegacyAttachment", () => {
11
+ test("converts an original attachment and its variants to polymorphic rows", ({ assert, }) => {
12
+ const ids = ["original-id", "thumbnail-id"];
13
13
  const rows = migrateLegacyAttachment({
14
- name: 'avatar.jpg',
15
- originalName: 'profile.jpg',
14
+ name: "avatar.jpg",
15
+ originalName: "profile.jpg",
16
16
  size: 42,
17
- extname: 'jpg',
18
- mimeType: 'image/jpeg',
19
- disk: 's3',
20
- path: 'users/42/avatar.jpg',
17
+ extname: "jpg",
18
+ mimeType: "image/jpeg",
19
+ disk: "s3",
20
+ path: "users/42/avatar.jpg",
21
21
  meta: { width: 800 },
22
22
  variants: [
23
23
  {
24
- key: 'thumbnail',
25
- name: 'avatar.webp',
24
+ key: "thumbnail",
25
+ name: "avatar.webp",
26
26
  size: 12,
27
- extname: 'webp',
28
- mimeType: 'image/webp',
29
- path: 'users/42/variants/avatar.webp',
27
+ extname: "webp",
28
+ mimeType: "image/webp",
29
+ path: "users/42/variants/avatar.webp",
30
30
  },
31
31
  ],
32
32
  }, {
33
- owner: { type: 'users', id: '42', field: 'avatar' },
34
- defaultDisk: 'public',
33
+ owner: { type: "users", id: "42", field: "avatar" },
34
+ defaultDisk: "public",
35
35
  createId: () => ids.shift(),
36
36
  });
37
37
  assert.deepEqual(rows, [
38
38
  {
39
- id: 'original-id',
40
- attachableType: 'users',
41
- attachableId: '42',
42
- field: 'avatar',
43
- ownerKey: createAttachmentOwnerKey({ type: 'users', id: '42', field: 'avatar' }),
39
+ id: "original-id",
40
+ attachableType: "users",
41
+ attachableId: "42",
42
+ field: "avatar",
43
+ ownerKey: createAttachmentOwnerKey({
44
+ type: "users",
45
+ id: "42",
46
+ field: "avatar",
47
+ }),
44
48
  parentId: null,
45
49
  variantKey: null,
46
- disk: 's3',
47
- path: 'users/42/avatar.jpg',
48
- name: 'avatar.jpg',
49
- originalName: 'profile.jpg',
50
- mimeType: 'image/jpeg',
51
- extname: 'jpg',
50
+ disk: "s3",
51
+ path: "users/42/avatar.jpg",
52
+ name: "avatar.jpg",
53
+ originalName: "profile.jpg",
54
+ mimeType: "image/jpeg",
55
+ extname: "jpg",
52
56
  size: 42,
53
57
  metadata: { width: 800 },
54
58
  },
55
59
  {
56
- id: 'thumbnail-id',
57
- attachableType: 'users',
58
- attachableId: '42',
59
- field: 'avatar',
60
+ id: "thumbnail-id",
61
+ attachableType: "users",
62
+ attachableId: "42",
63
+ field: "avatar",
60
64
  ownerKey: null,
61
- parentId: 'original-id',
62
- variantKey: 'thumbnail',
63
- disk: 'public',
64
- path: 'users/42/variants/avatar.webp',
65
- name: 'avatar.webp',
66
- originalName: 'profile.jpg',
67
- mimeType: 'image/webp',
68
- extname: 'webp',
65
+ parentId: "original-id",
66
+ variantKey: "thumbnail",
67
+ disk: "public",
68
+ path: "users/42/variants/avatar.webp",
69
+ name: "avatar.webp",
70
+ originalName: "profile.jpg",
71
+ mimeType: "image/webp",
72
+ extname: "webp",
69
73
  size: 12,
70
74
  metadata: null,
71
75
  },
72
76
  ]);
73
77
  });
74
- test('accepts a serialized v5 document', ({ assert }) => {
78
+ test("accepts a serialized v5 document", ({ assert }) => {
75
79
  const rows = migrateLegacyAttachment('{"name":"report.pdf","size":10,"extname":"pdf","mimeType":"application/pdf"}', {
76
- owner: { type: 'reports', id: 'report-id', field: 'document' },
77
- defaultDisk: 'public',
78
- createId: () => 'attachment-id',
80
+ owner: { type: "reports", id: "report-id", field: "document" },
81
+ defaultDisk: "public",
82
+ createId: () => "attachment-id",
79
83
  });
80
- assert.equal(rows[0]?.disk, 'public');
81
- assert.equal(rows[0]?.originalName, 'report.pdf');
84
+ assert.equal(rows[0]?.disk, "public");
85
+ assert.equal(rows[0]?.originalName, "report.pdf");
82
86
  });
83
- test('rejects malformed serialized documents', ({ assert }) => {
84
- assert.throws(() => migrateLegacyAttachment('{not json}', {
85
- owner: { type: 'reports', id: 'report-id', field: 'document' },
86
- defaultDisk: 'public',
87
- createId: () => 'attachment-id',
88
- }), 'Legacy attachment value must be valid JSON');
87
+ test("rejects malformed serialized documents", ({ assert }) => {
88
+ assert.throws(() => migrateLegacyAttachment("{not json}", {
89
+ owner: { type: "reports", id: "report-id", field: "document" },
90
+ defaultDisk: "public",
91
+ createId: () => "attachment-id",
92
+ }), "Legacy attachment value must be valid JSON");
93
+ });
94
+ test("converts a v5 document for a retained single attachment column", ({ assert, }) => {
95
+ const attachment = migrateLegacyAttachmentColumn({
96
+ name: "avatar.jpg",
97
+ originalName: "profile.jpg",
98
+ size: 42,
99
+ extname: "jpg",
100
+ mimeType: "image/jpeg",
101
+ meta: { width: 800 },
102
+ }, { defaultDisk: "public", createId: () => "attachment-id" });
103
+ assert.deepEqual(attachment, {
104
+ id: "attachment-id",
105
+ disk: "public",
106
+ path: "avatar.jpg",
107
+ name: "avatar.jpg",
108
+ originalName: "profile.jpg",
109
+ mimeType: "image/jpeg",
110
+ extname: "jpg",
111
+ size: 42,
112
+ metadata: { width: 800 },
113
+ });
114
+ });
115
+ test("rejects legacy variants for a retained single attachment column", ({ assert, }) => {
116
+ assert.throws(() => migrateLegacyAttachmentColumn({
117
+ name: "avatar.jpg",
118
+ size: 42,
119
+ extname: "jpg",
120
+ mimeType: "image/jpeg",
121
+ variants: [
122
+ {
123
+ key: "thumbnail",
124
+ name: "thumbnail.jpg",
125
+ size: 10,
126
+ extname: "jpg",
127
+ mimeType: "image/jpeg",
128
+ },
129
+ ],
130
+ }, { defaultDisk: "public", createId: () => "attachment-id" }), "Legacy attachments with variants must migrate to the polymorphic table");
89
131
  });
90
132
  });
91
133
  //# sourceMappingURL=migrate_legacy_attachment.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrate_legacy_attachment.spec.js","sourceRoot":"","sources":["../../tests/migrate_legacy_attachment.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate_legacy_attachment.spec.js","sourceRoot":"","sources":["../../tests/migrate_legacy_attachment.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jrmc/adonis-attachment",
3
- "version": "6.0.0-alpha.0",
3
+ "version": "6.0.0-alpha.1",
4
4
  "type": "module",
5
5
  "description": "Next-generation attachment primitives for AdonisJS and standalone TypeScript applications",
6
6
  "repository": {
@@ -115,9 +115,11 @@
115
115
  "better-sqlite3": "^12.11.1",
116
116
  "copyfiles": "^2.4.1",
117
117
  "del-cli": "^7.0.0",
118
+ "mermaid": "^11.16.0",
118
119
  "prettier": "^3.9.5",
119
120
  "typescript": "^5.9.3",
120
- "vitepress": "^1.6.4"
121
+ "vitepress": "^1.6.4",
122
+ "vitepress-plugin-mermaid": "^2.0.17"
121
123
  },
122
124
  "peerDependencies": {
123
125
  "@adonisjs/core": "^7.0.0",