@mdfriday/foundry 25.9.2 → 25.9.4
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 +10 -0
- package/dist/internal/application/ssg.d.ts.map +1 -1
- package/dist/internal/application/ssg.js +12 -0
- package/dist/internal/application/ssg.js.map +1 -1
- package/dist/internal/domain/config/entity/config.d.ts +8 -2
- package/dist/internal/domain/config/entity/config.d.ts.map +1 -1
- package/dist/internal/domain/config/entity/config.js +10 -3
- package/dist/internal/domain/config/entity/config.js.map +1 -1
- package/dist/internal/domain/config/entity/social.d.ts +66 -0
- package/dist/internal/domain/config/entity/social.d.ts.map +1 -0
- package/dist/internal/domain/config/entity/social.js +126 -0
- package/dist/internal/domain/config/entity/social.js.map +1 -0
- package/dist/internal/domain/config/factory/config.d.ts.map +1 -1
- package/dist/internal/domain/config/factory/config.js +2 -1
- package/dist/internal/domain/config/factory/config.js.map +1 -1
- package/dist/internal/domain/config/index.d.ts +2 -0
- package/dist/internal/domain/config/index.d.ts.map +1 -1
- package/dist/internal/domain/config/index.js +5 -1
- package/dist/internal/domain/config/index.js.map +1 -1
- package/dist/internal/domain/config/tests/entity-config.test.js +16 -12
- package/dist/internal/domain/config/tests/entity-config.test.js.map +1 -1
- package/dist/internal/domain/config/tests/social.test.d.ts +2 -0
- package/dist/internal/domain/config/tests/social.test.d.ts.map +1 -0
- package/dist/internal/domain/config/tests/social.test.js +164 -0
- package/dist/internal/domain/config/tests/social.test.js.map +1 -0
- package/dist/internal/domain/config/type.d.ts +22 -0
- package/dist/internal/domain/config/type.d.ts.map +1 -1
- package/dist/internal/domain/config/type.js.map +1 -1
- package/dist/internal/domain/config/vo/root.d.ts.map +1 -1
- package/dist/internal/domain/config/vo/root.js +2 -1
- package/dist/internal/domain/config/vo/root.js.map +1 -1
- package/dist/internal/domain/config/vo/social.d.ts +23 -0
- package/dist/internal/domain/config/vo/social.d.ts.map +1 -0
- package/dist/internal/domain/config/vo/social.js +212 -0
- package/dist/internal/domain/config/vo/social.js.map +1 -0
- package/dist/internal/domain/content/entity/page.d.ts +7 -1
- package/dist/internal/domain/content/entity/page.d.ts.map +1 -1
- package/dist/internal/domain/content/entity/page.js +36 -3
- package/dist/internal/domain/content/entity/page.js.map +1 -1
- package/dist/internal/domain/content/entity/pagebuilder.d.ts +3 -2
- package/dist/internal/domain/content/entity/pagebuilder.d.ts.map +1 -1
- package/dist/internal/domain/content/entity/pagebuilder.js +16 -5
- package/dist/internal/domain/content/entity/pagebuilder.js.map +1 -1
- package/dist/internal/domain/content/entity/pagemeta.d.ts +10 -2
- package/dist/internal/domain/content/entity/pagemeta.d.ts.map +1 -1
- package/dist/internal/domain/content/entity/pagemeta.js +17 -1
- package/dist/internal/domain/content/entity/pagemeta.js.map +1 -1
- package/dist/internal/domain/content/entity/paginator.d.ts +6 -0
- package/dist/internal/domain/content/entity/paginator.d.ts.map +1 -1
- package/dist/internal/domain/content/entity/paginator.js +26 -2
- package/dist/internal/domain/content/entity/paginator.js.map +1 -1
- package/dist/internal/domain/content/entity/section.js +5 -5
- package/dist/internal/domain/content/entity/section.js.map +1 -1
- package/dist/internal/domain/content/factory/hub.d.ts.map +1 -1
- package/dist/internal/domain/content/factory/hub.js +2 -1
- package/dist/internal/domain/content/factory/hub.js.map +1 -1
- package/dist/internal/domain/content/type.d.ts +59 -1
- package/dist/internal/domain/content/type.d.ts.map +1 -1
- package/dist/internal/domain/content/type.js.map +1 -1
- package/dist/internal/domain/content/vo/frontmatter.d.ts +29 -1
- package/dist/internal/domain/content/vo/frontmatter.d.ts.map +1 -1
- package/dist/internal/domain/content/vo/frontmatter.js +242 -1
- package/dist/internal/domain/content/vo/frontmatter.js.map +1 -1
- package/dist/internal/domain/markdown/entity/markdown.d.ts.map +1 -1
- package/dist/internal/domain/markdown/entity/markdown.js +5 -4
- package/dist/internal/domain/markdown/entity/markdown.js.map +1 -1
- package/dist/internal/domain/markdown/vo/content.d.ts +3 -6
- package/dist/internal/domain/markdown/vo/content.d.ts.map +1 -1
- package/dist/internal/domain/markdown/vo/content.js +32 -31
- package/dist/internal/domain/markdown/vo/content.js.map +1 -1
- package/dist/internal/domain/module/entity/module.d.ts.map +1 -1
- package/dist/internal/domain/module/entity/module.js +10 -6
- package/dist/internal/domain/module/entity/module.js.map +1 -1
- package/dist/internal/domain/module/vo/themes.test.js +12 -8
- package/dist/internal/domain/module/vo/themes.test.js.map +1 -1
- package/dist/internal/domain/site/entity/language.d.ts.map +1 -1
- package/dist/internal/domain/site/entity/language.js +2 -0
- package/dist/internal/domain/site/entity/language.js.map +1 -1
- package/dist/internal/domain/site/entity/menu-builder.d.ts +39 -21
- package/dist/internal/domain/site/entity/menu-builder.d.ts.map +1 -1
- package/dist/internal/domain/site/entity/menu-builder.js +264 -107
- package/dist/internal/domain/site/entity/menu-builder.js.map +1 -1
- package/dist/internal/domain/site/entity/page.d.ts +22 -8
- package/dist/internal/domain/site/entity/page.d.ts.map +1 -1
- package/dist/internal/domain/site/entity/page.js +67 -6
- package/dist/internal/domain/site/entity/page.js.map +1 -1
- package/dist/internal/domain/site/entity/pager.d.ts +2 -0
- package/dist/internal/domain/site/entity/pager.d.ts.map +1 -1
- package/dist/internal/domain/site/entity/pager.js +11 -0
- package/dist/internal/domain/site/entity/pager.js.map +1 -1
- package/dist/internal/domain/site/entity/site.d.ts +14 -8
- package/dist/internal/domain/site/entity/site.d.ts.map +1 -1
- package/dist/internal/domain/site/entity/site.js +35 -8
- package/dist/internal/domain/site/entity/site.js.map +1 -1
- package/dist/internal/domain/site/entity/url.d.ts.map +1 -1
- package/dist/internal/domain/site/entity/url.js +3 -1
- package/dist/internal/domain/site/entity/url.js.map +1 -1
- package/dist/internal/domain/site/factory/navigation-factory.d.ts +4 -2
- package/dist/internal/domain/site/factory/navigation-factory.d.ts.map +1 -1
- package/dist/internal/domain/site/factory/navigation-factory.js +5 -4
- package/dist/internal/domain/site/factory/navigation-factory.js.map +1 -1
- package/dist/internal/domain/site/factory/site.d.ts.map +1 -1
- package/dist/internal/domain/site/factory/site.js +7 -9
- package/dist/internal/domain/site/factory/site.js.map +1 -1
- package/dist/internal/domain/site/type.d.ts +11 -0
- package/dist/internal/domain/site/type.d.ts.map +1 -1
- package/dist/internal/domain/site/valueobject/author.d.ts +14 -2
- package/dist/internal/domain/site/valueobject/author.d.ts.map +1 -1
- package/dist/internal/domain/site/valueobject/author.js +29 -4
- package/dist/internal/domain/site/valueobject/author.js.map +1 -1
- package/dist/internal/domain/site/valueobject/menu.d.ts +28 -115
- package/dist/internal/domain/site/valueobject/menu.d.ts.map +1 -1
- package/dist/internal/domain/site/valueobject/menu.js +44 -192
- package/dist/internal/domain/site/valueobject/menu.js.map +1 -1
- package/dist/internal/domain/site/valueobject/organization.d.ts +66 -0
- package/dist/internal/domain/site/valueobject/organization.d.ts.map +1 -0
- package/dist/internal/domain/site/valueobject/organization.js +115 -0
- package/dist/internal/domain/site/valueobject/organization.js.map +1 -0
- package/dist/internal/domain/site/valueobject/organization.test.d.ts +2 -0
- package/dist/internal/domain/site/valueobject/organization.test.d.ts.map +1 -0
- package/dist/internal/domain/site/valueobject/organization.test.js +78 -0
- package/dist/internal/domain/site/valueobject/organization.test.js.map +1 -0
- package/dist/internal/domain/template/vo/namespace.d.ts.map +1 -1
- package/dist/internal/domain/template/vo/namespace.js +8 -0
- package/dist/internal/domain/template/vo/namespace.js.map +1 -1
- package/dist/internal/domain/template/vo/registry.d.ts +18 -0
- package/dist/internal/domain/template/vo/registry.d.ts.map +1 -1
- package/dist/internal/domain/template/vo/registry.js +387 -9
- package/dist/internal/domain/template/vo/registry.js.map +1 -1
- package/dist/pkg/maps/scratch.d.ts +1 -0
- package/dist/pkg/maps/scratch.d.ts.map +1 -1
- package/dist/pkg/maps/scratch.js +4 -0
- package/dist/pkg/maps/scratch.js.map +1 -1
- package/package.json +1 -1
|
@@ -64,6 +64,7 @@ describe('Config Entity', () => {
|
|
|
64
64
|
let mockDir;
|
|
65
65
|
let mockModule;
|
|
66
66
|
let mockService;
|
|
67
|
+
let mockSocial;
|
|
67
68
|
let mockLanguage;
|
|
68
69
|
let mockTaxonomy;
|
|
69
70
|
beforeEach(() => {
|
|
@@ -77,6 +78,7 @@ describe('Config Entity', () => {
|
|
|
77
78
|
mockDir = {};
|
|
78
79
|
mockModule = {};
|
|
79
80
|
mockService = {};
|
|
81
|
+
mockSocial = {};
|
|
80
82
|
mockLanguage = {
|
|
81
83
|
validate: () => true
|
|
82
84
|
};
|
|
@@ -84,26 +86,27 @@ describe('Config Entity', () => {
|
|
|
84
86
|
});
|
|
85
87
|
describe('constructor', () => {
|
|
86
88
|
it('should create Config instance with all dependencies', () => {
|
|
87
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
89
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
88
90
|
expect(config.fs()).toBe(mockFs);
|
|
89
91
|
expect(config.getProvider()).toBe(mockProvider);
|
|
90
92
|
expect(config.getRoot()).toBe(mockRoot);
|
|
91
93
|
expect(config.getDir()).toBe(mockDir);
|
|
92
94
|
expect(config.getModule()).toBe(mockModule);
|
|
93
95
|
expect(config.getService()).toBe(mockService);
|
|
96
|
+
expect(config.getSocial()).toBe(mockSocial);
|
|
94
97
|
expect(config.getLanguage()).toBe(mockLanguage);
|
|
95
98
|
expect(config.getTaxonomy()).toBe(mockTaxonomy);
|
|
96
99
|
});
|
|
97
100
|
});
|
|
98
101
|
describe('theme', () => {
|
|
99
102
|
it('should return default theme from root', () => {
|
|
100
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
103
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
101
104
|
expect(config.theme()).toBe('test-theme');
|
|
102
105
|
});
|
|
103
106
|
});
|
|
104
107
|
describe('setLanguage', () => {
|
|
105
108
|
it('should update language entity', () => {
|
|
106
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
109
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
107
110
|
const newLanguage = { validate: () => true };
|
|
108
111
|
config.setLanguage(newLanguage);
|
|
109
112
|
expect(config.getLanguage()).toBe(newLanguage);
|
|
@@ -111,7 +114,7 @@ describe('Config Entity', () => {
|
|
|
111
114
|
});
|
|
112
115
|
describe('setTaxonomy', () => {
|
|
113
116
|
it('should update taxonomy entity', () => {
|
|
114
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
117
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
115
118
|
const newTaxonomy = {};
|
|
116
119
|
config.setTaxonomy(newTaxonomy);
|
|
117
120
|
expect(config.getTaxonomy()).toBe(newTaxonomy);
|
|
@@ -122,7 +125,7 @@ describe('Config Entity', () => {
|
|
|
122
125
|
const validLanguage = {
|
|
123
126
|
validate: jest.fn().mockReturnValue(true)
|
|
124
127
|
};
|
|
125
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, validLanguage, mockTaxonomy);
|
|
128
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, validLanguage, mockTaxonomy);
|
|
126
129
|
expect(config.validate()).toBe(true);
|
|
127
130
|
expect(validLanguage.validate).toHaveBeenCalled();
|
|
128
131
|
});
|
|
@@ -130,22 +133,22 @@ describe('Config Entity', () => {
|
|
|
130
133
|
const invalidLanguage = {
|
|
131
134
|
validate: jest.fn().mockReturnValue(false)
|
|
132
135
|
};
|
|
133
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, invalidLanguage, mockTaxonomy);
|
|
136
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, invalidLanguage, mockTaxonomy);
|
|
134
137
|
expect(config.validate()).toBe(false);
|
|
135
138
|
expect(invalidLanguage.validate).toHaveBeenCalled();
|
|
136
139
|
});
|
|
137
140
|
it('should handle null language gracefully', () => {
|
|
138
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, null, mockTaxonomy);
|
|
141
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, null, mockTaxonomy);
|
|
139
142
|
expect(config.validate()).toBe(true);
|
|
140
143
|
});
|
|
141
144
|
it('should handle undefined language gracefully', () => {
|
|
142
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, undefined, mockTaxonomy);
|
|
145
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, undefined, mockTaxonomy);
|
|
143
146
|
expect(config.validate()).toBe(true);
|
|
144
147
|
});
|
|
145
148
|
});
|
|
146
149
|
describe('newConfig factory function', () => {
|
|
147
150
|
it('should create Config instance using factory', () => {
|
|
148
|
-
const config = (0, config_1.newConfig)(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
151
|
+
const config = (0, config_1.newConfig)(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
149
152
|
expect(config).toBeInstanceOf(config_1.Config);
|
|
150
153
|
expect(config.fs()).toBe(mockFs);
|
|
151
154
|
expect(config.getProvider()).toBe(mockProvider);
|
|
@@ -157,7 +160,7 @@ describe('Config Entity', () => {
|
|
|
157
160
|
// Setup provider with some data
|
|
158
161
|
mockProvider.set('baseURL', 'https://test.com');
|
|
159
162
|
mockProvider.set('title', 'Test Site');
|
|
160
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
163
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
161
164
|
// Verify provider data is accessible
|
|
162
165
|
expect(config.getProvider().get('baseURL')).toBe('https://test.com');
|
|
163
166
|
expect(config.getProvider().get('title')).toBe('Test Site');
|
|
@@ -167,7 +170,7 @@ describe('Config Entity', () => {
|
|
|
167
170
|
expect(config.validate()).toBe(true);
|
|
168
171
|
});
|
|
169
172
|
it('should handle dynamic language and taxonomy updates', () => {
|
|
170
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
173
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
171
174
|
// Initial state
|
|
172
175
|
expect(config.getLanguage()).toBe(mockLanguage);
|
|
173
176
|
expect(config.getTaxonomy()).toBe(mockTaxonomy);
|
|
@@ -183,7 +186,7 @@ describe('Config Entity', () => {
|
|
|
183
186
|
expect(config.validate()).toBe(true);
|
|
184
187
|
});
|
|
185
188
|
it('should provide access to all subsystems', () => {
|
|
186
|
-
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockLanguage, mockTaxonomy);
|
|
189
|
+
const config = new config_1.Config(mockFs, mockProvider, mockRoot, mockDir, mockModule, mockService, mockSocial, mockLanguage, mockTaxonomy);
|
|
187
190
|
// Verify all getters return the correct instances
|
|
188
191
|
expect(config.fs()).toBe(mockFs);
|
|
189
192
|
expect(config.getProvider()).toBe(mockProvider);
|
|
@@ -191,6 +194,7 @@ describe('Config Entity', () => {
|
|
|
191
194
|
expect(config.getDir()).toBe(mockDir);
|
|
192
195
|
expect(config.getModule()).toBe(mockModule);
|
|
193
196
|
expect(config.getService()).toBe(mockService);
|
|
197
|
+
expect(config.getSocial()).toBe(mockSocial);
|
|
194
198
|
expect(config.getLanguage()).toBe(mockLanguage);
|
|
195
199
|
expect(config.getTaxonomy()).toBe(mockTaxonomy);
|
|
196
200
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-config.test.js","sourceRoot":"","sources":["../../../../../internal/domain/config/tests/entity-config.test.ts"],"names":[],"mappings":";;AAAA,6CAAqD;
|
|
1
|
+
{"version":3,"file":"entity-config.test.js","sourceRoot":"","sources":["../../../../../internal/domain/config/tests/entity-config.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"social.test.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/config/tests/social.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const social_1 = require("../entity/social");
|
|
4
|
+
const social_2 = require("../vo/social");
|
|
5
|
+
describe('Social Configuration', () => {
|
|
6
|
+
describe('decodeSocialConfig', () => {
|
|
7
|
+
it('should decode user social configuration correctly', () => {
|
|
8
|
+
const socialData = {
|
|
9
|
+
github: {
|
|
10
|
+
link: "https://github.com/mdfriday"
|
|
11
|
+
},
|
|
12
|
+
youtube: {
|
|
13
|
+
link: "https://www.youtube.com/@mdfriday"
|
|
14
|
+
},
|
|
15
|
+
twitter: {
|
|
16
|
+
link: "https://twitter.com/mdfriday"
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
const config = (0, social_2.decodeSocialConfig)(socialData);
|
|
20
|
+
expect(config.userConfig).toEqual({
|
|
21
|
+
github: {
|
|
22
|
+
link: "https://github.com/mdfriday"
|
|
23
|
+
},
|
|
24
|
+
youtube: {
|
|
25
|
+
link: "https://www.youtube.com/@mdfriday"
|
|
26
|
+
},
|
|
27
|
+
twitter: {
|
|
28
|
+
link: "https://twitter.com/mdfriday"
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
expect(config.platformTemplates.length).toBeGreaterThan(0);
|
|
32
|
+
});
|
|
33
|
+
it('should handle empty social configuration', () => {
|
|
34
|
+
const config = (0, social_2.decodeSocialConfig)({});
|
|
35
|
+
expect(config.userConfig).toEqual({});
|
|
36
|
+
expect(config.platformTemplates.length).toBeGreaterThan(0);
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
describe('getSocialPlatformTemplate', () => {
|
|
40
|
+
it('should return correct template for known platforms', () => {
|
|
41
|
+
const githubTemplate = (0, social_2.getSocialPlatformTemplate)('github');
|
|
42
|
+
expect(githubTemplate).toEqual({
|
|
43
|
+
id: "github",
|
|
44
|
+
title: "GitHub"
|
|
45
|
+
});
|
|
46
|
+
const youtubeTemplate = (0, social_2.getSocialPlatformTemplate)('youtube');
|
|
47
|
+
expect(youtubeTemplate).toEqual({
|
|
48
|
+
id: "youtube",
|
|
49
|
+
title: "Youtube"
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
it('should return undefined for unknown platforms', () => {
|
|
53
|
+
const unknownTemplate = (0, social_2.getSocialPlatformTemplate)('unknown-platform');
|
|
54
|
+
expect(unknownTemplate).toBeUndefined();
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
describe('Social Entity', () => {
|
|
58
|
+
let social;
|
|
59
|
+
beforeEach(() => {
|
|
60
|
+
const socialData = {
|
|
61
|
+
github: {
|
|
62
|
+
link: "https://github.com/mdfriday"
|
|
63
|
+
},
|
|
64
|
+
youtube: {
|
|
65
|
+
link: "https://www.youtube.com/@mdfriday"
|
|
66
|
+
},
|
|
67
|
+
twitter: {
|
|
68
|
+
link: "https://twitter.com/mdfriday"
|
|
69
|
+
},
|
|
70
|
+
customplatform: {
|
|
71
|
+
link: "https://custom.example.com/profile"
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
social = (0, social_1.newSocial)(socialData);
|
|
75
|
+
});
|
|
76
|
+
it('should check if platforms are configured', () => {
|
|
77
|
+
expect(social.isPlatformConfigured('github')).toBe(true);
|
|
78
|
+
expect(social.isPlatformConfigured('youtube')).toBe(true);
|
|
79
|
+
expect(social.isPlatformConfigured('facebook')).toBe(false);
|
|
80
|
+
});
|
|
81
|
+
it('should return configured platforms', () => {
|
|
82
|
+
const platforms = social.getConfiguredPlatforms();
|
|
83
|
+
expect(platforms).toContain('github');
|
|
84
|
+
expect(platforms).toContain('youtube');
|
|
85
|
+
expect(platforms).toContain('twitter');
|
|
86
|
+
expect(platforms).toContain('customplatform');
|
|
87
|
+
});
|
|
88
|
+
it('should process social links correctly', () => {
|
|
89
|
+
const links = social.getProcessedSocialLinks();
|
|
90
|
+
// GitHub with direct link
|
|
91
|
+
const githubLink = links.find(link => link.id === 'github');
|
|
92
|
+
expect(githubLink).toEqual({
|
|
93
|
+
id: 'github',
|
|
94
|
+
title: 'GitHub',
|
|
95
|
+
url: 'https://github.com/mdfriday'
|
|
96
|
+
});
|
|
97
|
+
// YouTube with direct link
|
|
98
|
+
const youtubeLink = links.find(link => link.id === 'youtube');
|
|
99
|
+
expect(youtubeLink).toEqual({
|
|
100
|
+
id: 'youtube',
|
|
101
|
+
title: 'Youtube',
|
|
102
|
+
url: 'https://www.youtube.com/@mdfriday'
|
|
103
|
+
});
|
|
104
|
+
// Twitter with direct link
|
|
105
|
+
const twitterLink = links.find(link => link.id === 'twitter');
|
|
106
|
+
expect(twitterLink).toEqual({
|
|
107
|
+
id: 'twitter',
|
|
108
|
+
title: 'Twitter',
|
|
109
|
+
url: 'https://twitter.com/mdfriday'
|
|
110
|
+
});
|
|
111
|
+
// Custom platform without template
|
|
112
|
+
const customLink = links.find(link => link.id === 'customplatform');
|
|
113
|
+
expect(customLink).toEqual({
|
|
114
|
+
id: 'customplatform',
|
|
115
|
+
title: 'Customplatform',
|
|
116
|
+
url: 'https://custom.example.com/profile'
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
it('should get individual social link', () => {
|
|
120
|
+
const githubLink = social.getSocialLink('github');
|
|
121
|
+
expect(githubLink).toEqual({
|
|
122
|
+
id: 'github',
|
|
123
|
+
title: 'GitHub',
|
|
124
|
+
url: 'https://github.com/mdfriday'
|
|
125
|
+
});
|
|
126
|
+
const nonExistentLink = social.getSocialLink('nonexistent');
|
|
127
|
+
expect(nonExistentLink).toBeUndefined();
|
|
128
|
+
});
|
|
129
|
+
it('should check if social links exist', () => {
|
|
130
|
+
expect(social.hasSocialLinks()).toBe(true);
|
|
131
|
+
expect(social.getSocialLinkCount()).toBe(4);
|
|
132
|
+
});
|
|
133
|
+
it('should return available platforms', () => {
|
|
134
|
+
const availablePlatforms = social.getAvailablePlatforms();
|
|
135
|
+
expect(availablePlatforms).toContain('github');
|
|
136
|
+
expect(availablePlatforms).toContain('youtube');
|
|
137
|
+
expect(availablePlatforms).toContain('twitter');
|
|
138
|
+
expect(availablePlatforms).toContain('facebook');
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
describe('Edge Cases', () => {
|
|
142
|
+
it('should handle platforms with special rel attribute', () => {
|
|
143
|
+
const socialData = {
|
|
144
|
+
mastodon: {
|
|
145
|
+
link: "https://mastodon.social/@mdfriday"
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
const social = (0, social_1.newSocial)(socialData);
|
|
149
|
+
const mastodonLink = social.getSocialLink('mastodon');
|
|
150
|
+
expect(mastodonLink).toEqual({
|
|
151
|
+
id: 'mastodon',
|
|
152
|
+
title: 'Mastodon',
|
|
153
|
+
url: 'https://mastodon.social/@mdfriday'
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
it('should handle empty social configuration', () => {
|
|
157
|
+
const social = (0, social_1.newSocial)({});
|
|
158
|
+
expect(social.hasSocialLinks()).toBe(false);
|
|
159
|
+
expect(social.getSocialLinkCount()).toBe(0);
|
|
160
|
+
expect(social.getProcessedSocialLinks()).toEqual([]);
|
|
161
|
+
});
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
//# sourceMappingURL=social.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"social.test.js","sourceRoot":"","sources":["../../../../../internal/domain/config/tests/social.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -124,6 +124,28 @@ export interface ServiceConfig {
|
|
|
124
124
|
rss: RSS;
|
|
125
125
|
x: X;
|
|
126
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Social platform template configuration
|
|
129
|
+
*/
|
|
130
|
+
export interface SocialPlatformTemplate {
|
|
131
|
+
id: string;
|
|
132
|
+
title: string;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* User social configuration
|
|
136
|
+
*/
|
|
137
|
+
export interface SocialUserConfig {
|
|
138
|
+
[key: string]: {
|
|
139
|
+
link: string;
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Social configuration
|
|
144
|
+
*/
|
|
145
|
+
export interface SocialConfig {
|
|
146
|
+
userConfig: SocialUserConfig;
|
|
147
|
+
platformTemplates: SocialPlatformTemplate[];
|
|
148
|
+
}
|
|
127
149
|
/**
|
|
128
150
|
* ViewName represents a taxonomy view
|
|
129
151
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../internal/domain/config/type.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../internal/domain/config/type.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../internal/domain/config/type.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../internal/domain/config/type.ts"],"names":[],"mappings":";;;AA8KA;;GAEG;AACH,MAAa,WAAY,SAAQ,KAAK;IACpC,YAAY,OAAe,EAAS,IAAa;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;QADmB,SAAI,GAAJ,IAAI,CAAS;QAE/C,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AALD,kCAKC;AAED;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,WAAW,CAAC,yBAAyB,EAAE,kBAAkB,CAAC,CAAC;AACnF,QAAA,gBAAgB,GAAG,IAAI,WAAW,CAAC,uBAAuB,EAAE,gBAAgB,CAAC,CAAC;AAC9E,QAAA,oBAAoB,GAAG,IAAI,WAAW,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,CAAC;AACrF,QAAA,qBAAqB,GAAG,IAAI,WAAW,CAAC,8BAA8B,EAAE,uBAAuB,CAAC,CAAC;AACjG,QAAA,sBAAsB,GAAG,IAAI,WAAW,CAAC,8BAA8B,EAAE,uBAAuB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/config/vo/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,UAAU,CA0BjD,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/config/vo/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,UAAU,CA0BjD,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,UAAU,CAiCtD"}
|
|
@@ -36,8 +36,9 @@ exports.DefaultRootConfig = {
|
|
|
36
36
|
* Creates a root configuration from provider data
|
|
37
37
|
*/
|
|
38
38
|
function decodeRootConfig(data) {
|
|
39
|
+
// TODO: all keys of data are lowercase, need to handle that properly
|
|
39
40
|
return {
|
|
40
|
-
baseURL: data.
|
|
41
|
+
baseURL: data.baseurl || exports.DefaultRootConfig.baseURL,
|
|
41
42
|
title: data.title || exports.DefaultRootConfig.title,
|
|
42
43
|
theme: data.theme || exports.DefaultRootConfig.theme,
|
|
43
44
|
timeout: data.timeout || exports.DefaultRootConfig.timeout,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"root.js","sourceRoot":"","sources":["../../../../../internal/domain/config/vo/root.ts"],"names":[],"mappings":";;;AAoCA,
|
|
1
|
+
{"version":3,"file":"root.js","sourceRoot":"","sources":["../../../../../internal/domain/config/vo/root.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SocialConfig, SocialPlatformTemplate } from '../type';
|
|
2
|
+
/**
|
|
3
|
+
* Predefined social platform templates
|
|
4
|
+
* Based on popular social platforms with their titles
|
|
5
|
+
*/
|
|
6
|
+
export declare const DefaultSocialPlatformTemplates: SocialPlatformTemplate[];
|
|
7
|
+
/**
|
|
8
|
+
* Default social configuration
|
|
9
|
+
*/
|
|
10
|
+
export declare const DefaultSocialConfig: SocialConfig;
|
|
11
|
+
/**
|
|
12
|
+
* Creates a social configuration from provider data
|
|
13
|
+
*/
|
|
14
|
+
export declare function decodeSocialConfig(social: any): SocialConfig;
|
|
15
|
+
/**
|
|
16
|
+
* Get social platform template by ID
|
|
17
|
+
*/
|
|
18
|
+
export declare function getSocialPlatformTemplate(id: string): SocialPlatformTemplate | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Get all available social platform IDs
|
|
21
|
+
*/
|
|
22
|
+
export declare function getAvailableSocialPlatforms(): string[];
|
|
23
|
+
//# sourceMappingURL=social.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"social.d.ts","sourceRoot":"","sources":["../../../../../internal/domain/config/vo/social.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAoB,MAAM,SAAS,CAAC;AAEjF;;;GAGG;AACH,eAAO,MAAM,8BAA8B,EAAE,sBAAsB,EA6JlE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,YAGjC,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,YAAY,CAsB5D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS,CAExF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,EAAE,CAEtD"}
|