@dani-builder/strapi-plugin-builder 0.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 (87) hide show
  1. package/bin/sync.js +320 -0
  2. package/dist/server/src/bootstrap.d.ts +6 -0
  3. package/dist/server/src/bootstrap.d.ts.map +1 -0
  4. package/dist/server/src/bootstrap.js +8 -0
  5. package/dist/server/src/bootstrap.js.map +1 -0
  6. package/dist/server/src/components/blocks/bento-grid.json +29 -0
  7. package/dist/server/src/components/blocks/content.json +23 -0
  8. package/dist/server/src/components/blocks/cta.json +37 -0
  9. package/dist/server/src/components/blocks/faq.json +20 -0
  10. package/dist/server/src/components/blocks/features.json +32 -0
  11. package/dist/server/src/components/blocks/hero.json +42 -0
  12. package/dist/server/src/components/blocks/highlights.json +32 -0
  13. package/dist/server/src/components/blocks/inquiry-form.json +18 -0
  14. package/dist/server/src/components/blocks/logo-cloud.json +27 -0
  15. package/dist/server/src/components/blocks/pricing.json +27 -0
  16. package/dist/server/src/components/blocks/slider.json +27 -0
  17. package/dist/server/src/components/blocks/stats.json +32 -0
  18. package/dist/server/src/components/blocks/team.json +27 -0
  19. package/dist/server/src/components/blocks/testimonials.json +32 -0
  20. package/dist/server/src/components/elements/footer.json +36 -0
  21. package/dist/server/src/components/elements/section.json +41 -0
  22. package/dist/server/src/components/shared/analytics-setting.json +26 -0
  23. package/dist/server/src/components/shared/bento-item.json +42 -0
  24. package/dist/server/src/components/shared/brand-colors.json +17 -0
  25. package/dist/server/src/components/shared/chatbot-setting.json +25 -0
  26. package/dist/server/src/components/shared/feature-item.json +28 -0
  27. package/dist/server/src/components/shared/highlight-item.json +27 -0
  28. package/dist/server/src/components/shared/link.json +27 -0
  29. package/dist/server/src/components/shared/logo-item.json +24 -0
  30. package/dist/server/src/components/shared/navigation-group.json +21 -0
  31. package/dist/server/src/components/shared/pricing-tier.json +36 -0
  32. package/dist/server/src/components/shared/seo.json +39 -0
  33. package/dist/server/src/components/shared/site-verification.json +22 -0
  34. package/dist/server/src/components/shared/slider-item.json +27 -0
  35. package/dist/server/src/components/shared/stat-item.json +20 -0
  36. package/dist/server/src/components/shared/team-member.json +30 -0
  37. package/dist/server/src/components/shared/testimonial-item.json +35 -0
  38. package/dist/server/src/controllers/global.d.ts +12 -0
  39. package/dist/server/src/controllers/global.d.ts.map +1 -0
  40. package/dist/server/src/controllers/global.js +22 -0
  41. package/dist/server/src/controllers/global.js.map +1 -0
  42. package/dist/server/src/controllers/index.d.ts +3 -0
  43. package/dist/server/src/controllers/index.d.ts.map +1 -0
  44. package/dist/server/src/controllers/index.js +13 -0
  45. package/dist/server/src/controllers/index.js.map +1 -0
  46. package/dist/server/src/controllers/page.d.ts +17 -0
  47. package/dist/server/src/controllers/page.d.ts.map +1 -0
  48. package/dist/server/src/controllers/page.js +37 -0
  49. package/dist/server/src/controllers/page.js.map +1 -0
  50. package/dist/server/src/index.d.ts +3 -0
  51. package/dist/server/src/index.d.ts.map +1 -0
  52. package/dist/server/src/index.js +19 -0
  53. package/dist/server/src/index.js.map +1 -0
  54. package/dist/server/src/register.d.ts +11 -0
  55. package/dist/server/src/register.d.ts.map +1 -0
  56. package/dist/server/src/register.js +48 -0
  57. package/dist/server/src/register.js.map +1 -0
  58. package/dist/server/src/routes/content-api.d.ts +14 -0
  59. package/dist/server/src/routes/content-api.d.ts.map +1 -0
  60. package/dist/server/src/routes/content-api.js +35 -0
  61. package/dist/server/src/routes/content-api.js.map +1 -0
  62. package/dist/server/src/routes/index.d.ts +16 -0
  63. package/dist/server/src/routes/index.d.ts.map +1 -0
  64. package/dist/server/src/routes/index.js +10 -0
  65. package/dist/server/src/routes/index.js.map +1 -0
  66. package/dist/server/src/services/index.d.ts +3 -0
  67. package/dist/server/src/services/index.d.ts.map +1 -0
  68. package/dist/server/src/services/index.js +11 -0
  69. package/dist/server/src/services/index.js.map +1 -0
  70. package/dist/server/src/services/populate.d.ts +75 -0
  71. package/dist/server/src/services/populate.d.ts.map +1 -0
  72. package/dist/server/src/services/populate.js +252 -0
  73. package/dist/server/src/services/populate.js.map +1 -0
  74. package/package.json +55 -0
  75. package/schemas/api/article/content-types/article/schema.json +102 -0
  76. package/schemas/api/author/content-types/author/schema.json +44 -0
  77. package/schemas/api/category/content-types/category/schema.json +43 -0
  78. package/schemas/api/faq/content-types/faq/schema.json +36 -0
  79. package/schemas/api/global/content-types/global/schema.json +64 -0
  80. package/schemas/api/inquiry/content-types/inquiry/schema.json +31 -0
  81. package/schemas/api/navigation/content-types/navigation/schema.json +52 -0
  82. package/schemas/api/page/content-types/page/schema.json +62 -0
  83. package/schemas/api/series/content-types/series/schema.json +44 -0
  84. package/schemas/api/site-setting/content-types/site-setting/schema.json +35 -0
  85. package/schemas/api/tag/content-types/tag/schema.json +44 -0
  86. package/schemas/manifest.json +16 -0
  87. package/strapi-server.js +3 -0
@@ -0,0 +1,32 @@
1
+ {
2
+ "collectionName": "components_blocks_stats",
3
+ "info": {
4
+ "displayName": "Stats",
5
+ "icon": "chartBubble",
6
+ "description": "Key metrics/numbers showcase block"
7
+ },
8
+ "attributes": {
9
+ "name": {
10
+ "type": "string"
11
+ },
12
+ "variant": {
13
+ "type": "enumeration",
14
+ "enum": ["simple", "card-grid", "split"]
15
+ },
16
+ "section": {
17
+ "type": "component",
18
+ "component": "elements.section",
19
+ "repeatable": false
20
+ },
21
+ "media": {
22
+ "type": "media",
23
+ "multiple": false,
24
+ "allowedTypes": ["images", "videos"]
25
+ },
26
+ "items": {
27
+ "type": "component",
28
+ "component": "shared.stat-item",
29
+ "repeatable": true
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "collectionName": "components_blocks_teams",
3
+ "info": {
4
+ "displayName": "Team",
5
+ "icon": "user",
6
+ "description": "Team member showcase block"
7
+ },
8
+ "attributes": {
9
+ "name": {
10
+ "type": "string"
11
+ },
12
+ "variant": {
13
+ "type": "enumeration",
14
+ "enum": ["grid", "large-image", "compact"]
15
+ },
16
+ "section": {
17
+ "type": "component",
18
+ "component": "elements.section",
19
+ "repeatable": false
20
+ },
21
+ "items": {
22
+ "type": "component",
23
+ "component": "shared.team-member",
24
+ "repeatable": true
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "collectionName": "components_blocks_testimonials",
3
+ "info": {
4
+ "displayName": "Testimonials",
5
+ "icon": "quote",
6
+ "description": "Customer testimonials/reviews block"
7
+ },
8
+ "attributes": {
9
+ "name": {
10
+ "type": "string"
11
+ },
12
+ "variant": {
13
+ "type": "enumeration",
14
+ "enum": ["centered", "side-by-side", "card-grid", "subtle-grid"]
15
+ },
16
+ "section": {
17
+ "type": "component",
18
+ "component": "elements.section",
19
+ "repeatable": false
20
+ },
21
+ "media": {
22
+ "type": "media",
23
+ "multiple": false,
24
+ "allowedTypes": ["images", "videos"]
25
+ },
26
+ "items": {
27
+ "type": "component",
28
+ "component": "shared.testimonial-item",
29
+ "repeatable": true
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "collectionName": "components_elements_footers",
3
+ "info": {
4
+ "displayName": "Footer",
5
+ "icon": "layout",
6
+ "description": "Footer layout with organization info, links, and sitemap"
7
+ },
8
+ "attributes": {
9
+ "organization": {
10
+ "type": "string"
11
+ },
12
+ "businessInfo": {
13
+ "type": "text"
14
+ },
15
+ "socialLinks": {
16
+ "type": "component",
17
+ "component": "shared.link",
18
+ "repeatable": true
19
+ },
20
+ "otherLinks": {
21
+ "type": "component",
22
+ "component": "shared.link",
23
+ "repeatable": true
24
+ },
25
+ "sitemap": {
26
+ "type": "component",
27
+ "component": "shared.navigation-group",
28
+ "repeatable": true
29
+ },
30
+ "logo": {
31
+ "type": "media",
32
+ "multiple": false,
33
+ "allowedTypes": ["images"]
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "collectionName": "components_elements_sections",
3
+ "info": {
4
+ "displayName": "Section",
5
+ "icon": "layout",
6
+ "description": "Section wrapper with heading, theme, and background"
7
+ },
8
+ "attributes": {
9
+ "heading": {
10
+ "type": "text"
11
+ },
12
+ "subheading": {
13
+ "type": "text"
14
+ },
15
+ "kickerText": {
16
+ "type": "string"
17
+ },
18
+ "anchorId": {
19
+ "type": "string"
20
+ },
21
+ "headerAlign": {
22
+ "type": "enumeration",
23
+ "enum": ["auto", "left", "center", "right"]
24
+ },
25
+ "theme": {
26
+ "type": "enumeration",
27
+ "enum": ["default", "light", "dark", "accent", "muted", "contrast"],
28
+ "default": "default"
29
+ },
30
+ "backgroundImage": {
31
+ "type": "media",
32
+ "multiple": false,
33
+ "allowedTypes": ["images"]
34
+ },
35
+ "backgroundImageOpacity": {
36
+ "type": "decimal",
37
+ "min": 0,
38
+ "max": 1
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "collectionName": "components_shared_analytics_settings",
3
+ "info": {
4
+ "displayName": "Analytics Setting",
5
+ "icon": "chartCircle",
6
+ "description": "Web analytics tool configuration"
7
+ },
8
+ "attributes": {
9
+ "provider": {
10
+ "type": "enumeration",
11
+ "enum": ["google-tag-manager", "google-analytics", "matomo"],
12
+ "required": true
13
+ },
14
+ "trackingId": {
15
+ "type": "string",
16
+ "required": true
17
+ },
18
+ "customDomain": {
19
+ "type": "string"
20
+ },
21
+ "enabled": {
22
+ "type": "boolean",
23
+ "default": true
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "collectionName": "components_shared_bento_items",
3
+ "info": {
4
+ "displayName": "Bento Item",
5
+ "icon": "grid",
6
+ "description": "Bento grid item with span control and optional link"
7
+ },
8
+ "attributes": {
9
+ "title": {
10
+ "type": "string"
11
+ },
12
+ "description": {
13
+ "type": "text"
14
+ },
15
+ "media": {
16
+ "type": "media",
17
+ "multiple": false,
18
+ "allowedTypes": ["images"]
19
+ },
20
+ "icon": {
21
+ "type": "customField",
22
+ "customField": "plugin::icon-picker.icon"
23
+ },
24
+ "colSpan": {
25
+ "type": "integer",
26
+ "min": 1,
27
+ "max": 4,
28
+ "default": 1
29
+ },
30
+ "rowSpan": {
31
+ "type": "integer",
32
+ "min": 1,
33
+ "max": 3,
34
+ "default": 1
35
+ },
36
+ "link": {
37
+ "type": "component",
38
+ "component": "shared.link",
39
+ "repeatable": false
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "collectionName": "components_shared_brand_colors",
3
+ "info": {
4
+ "displayName": "Brand Colors",
5
+ "icon": "palette",
6
+ "description": "Brand color overrides for the site theme"
7
+ },
8
+ "attributes": {
9
+ "primary": { "type": "string", "customField": "plugin::color-picker.color" },
10
+ "primaryLight": { "type": "string", "customField": "plugin::color-picker.color" },
11
+ "cta": { "type": "string", "customField": "plugin::color-picker.color" },
12
+ "ctaHover": { "type": "string", "customField": "plugin::color-picker.color" },
13
+ "background": { "type": "string", "customField": "plugin::color-picker.color" },
14
+ "text": { "type": "string", "customField": "plugin::color-picker.color" },
15
+ "textMuted": { "type": "string", "customField": "plugin::color-picker.color" }
16
+ }
17
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "collectionName": "components_shared_chatbot_settings",
3
+ "info": {
4
+ "displayName": "Chatbot Setting",
5
+ "icon": "discuss",
6
+ "description": "Chatbot integration configuration"
7
+ },
8
+ "attributes": {
9
+ "provider": {
10
+ "type": "enumeration",
11
+ "enum": ["channel-talk", "zendesk", "intercom"],
12
+ "required": true
13
+ },
14
+ "appId": {
15
+ "type": "string",
16
+ "required": true
17
+ },
18
+ "key": {
19
+ "type": "string"
20
+ },
21
+ "secret": {
22
+ "type": "string"
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "collectionName": "components_shared_feature_items",
3
+ "info": {
4
+ "displayName": "Feature Item",
5
+ "icon": "star",
6
+ "description": "Feature item with icon, label, description, and link"
7
+ },
8
+ "attributes": {
9
+ "label": {
10
+ "type": "string"
11
+ },
12
+ "description": {
13
+ "type": "richtext"
14
+ },
15
+ "icon": {
16
+ "type": "customField",
17
+ "customField": "plugin::icon-picker.icon"
18
+ },
19
+ "infoText": {
20
+ "type": "string"
21
+ },
22
+ "link": {
23
+ "type": "component",
24
+ "component": "shared.link",
25
+ "repeatable": false
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "collectionName": "components_shared_highlight_items",
3
+ "info": {
4
+ "displayName": "Highlight Item",
5
+ "icon": "picture",
6
+ "description": "Highlight item with required media, label, description, and link"
7
+ },
8
+ "attributes": {
9
+ "label": {
10
+ "type": "string"
11
+ },
12
+ "description": {
13
+ "type": "richtext"
14
+ },
15
+ "media": {
16
+ "type": "media",
17
+ "multiple": false,
18
+ "required": true,
19
+ "allowedTypes": ["images", "videos"]
20
+ },
21
+ "link": {
22
+ "type": "component",
23
+ "component": "shared.link",
24
+ "repeatable": false
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "collectionName": "components_shared_links",
3
+ "info": {
4
+ "displayName": "Link",
5
+ "icon": "link",
6
+ "description": "Link with label, URL, icon, and new window option"
7
+ },
8
+ "attributes": {
9
+ "label": {
10
+ "type": "string",
11
+ "required": true,
12
+ "maxLength": 80
13
+ },
14
+ "href": {
15
+ "type": "string",
16
+ "required": true
17
+ },
18
+ "newWindow": {
19
+ "type": "boolean",
20
+ "default": false
21
+ },
22
+ "icon": {
23
+ "type": "customField",
24
+ "customField": "plugin::icon-picker.icon"
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "collectionName": "components_shared_logo_items",
3
+ "info": {
4
+ "displayName": "Logo Item",
5
+ "icon": "picture",
6
+ "description": "Company/partner logo with optional link"
7
+ },
8
+ "attributes": {
9
+ "logo": {
10
+ "type": "media",
11
+ "multiple": false,
12
+ "required": true,
13
+ "allowedTypes": ["images"]
14
+ },
15
+ "companyName": {
16
+ "type": "string"
17
+ },
18
+ "link": {
19
+ "type": "component",
20
+ "component": "shared.link",
21
+ "repeatable": false
22
+ }
23
+ }
24
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "collectionName": "components_shared_navigation_groups",
3
+ "info": {
4
+ "displayName": "Navigation Group",
5
+ "icon": "layer",
6
+ "description": "Navigation group with label and child links"
7
+ },
8
+ "attributes": {
9
+ "label": {
10
+ "type": "string"
11
+ },
12
+ "href": {
13
+ "type": "string"
14
+ },
15
+ "links": {
16
+ "type": "component",
17
+ "component": "shared.link",
18
+ "repeatable": true
19
+ }
20
+ }
21
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "collectionName": "components_shared_pricing_tiers",
3
+ "info": {
4
+ "displayName": "Pricing Tier",
5
+ "icon": "priceTag",
6
+ "description": "Pricing plan with name, price, features, and CTA"
7
+ },
8
+ "attributes": {
9
+ "planName": {
10
+ "type": "string",
11
+ "required": true
12
+ },
13
+ "price": {
14
+ "type": "string",
15
+ "required": true
16
+ },
17
+ "billingPeriod": {
18
+ "type": "string"
19
+ },
20
+ "description": {
21
+ "type": "text"
22
+ },
23
+ "featureList": {
24
+ "type": "richtext"
25
+ },
26
+ "ctaLink": {
27
+ "type": "component",
28
+ "component": "shared.link",
29
+ "repeatable": false
30
+ },
31
+ "highlighted": {
32
+ "type": "boolean",
33
+ "default": false
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "collectionName": "components_shared_seos",
3
+ "info": {
4
+ "displayName": "SEO",
5
+ "icon": "search",
6
+ "description": "SEO meta tags and structured data"
7
+ },
8
+ "attributes": {
9
+ "metaTitle": {
10
+ "type": "string",
11
+ "maxLength": 120
12
+ },
13
+ "metaDescription": {
14
+ "type": "text"
15
+ },
16
+ "ogImage": {
17
+ "type": "media",
18
+ "multiple": false,
19
+ "allowedTypes": ["images"]
20
+ },
21
+ "canonicalURL": {
22
+ "type": "string"
23
+ },
24
+ "noindex": {
25
+ "type": "boolean",
26
+ "default": false
27
+ },
28
+ "nofollow": {
29
+ "type": "boolean",
30
+ "default": false
31
+ },
32
+ "structuredData": {
33
+ "type": "json"
34
+ }
35
+ },
36
+ "pluginOptions": {
37
+ "i18n": { "localized": true }
38
+ }
39
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "collectionName": "components_shared_site_verifications",
3
+ "info": {
4
+ "displayName": "Site Verification",
5
+ "icon": "check",
6
+ "description": "Search engine site verification"
7
+ },
8
+ "attributes": {
9
+ "service": {
10
+ "type": "enumeration",
11
+ "enum": ["google", "bing", "naver", "custom"],
12
+ "required": true
13
+ },
14
+ "name": {
15
+ "type": "string"
16
+ },
17
+ "content": {
18
+ "type": "string",
19
+ "required": true
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "collectionName": "components_shared_slider_items",
3
+ "info": {
4
+ "displayName": "Slider Item",
5
+ "icon": "slideshow",
6
+ "description": "Slider carousel item with required media, label, and link"
7
+ },
8
+ "attributes": {
9
+ "label": {
10
+ "type": "string"
11
+ },
12
+ "description": {
13
+ "type": "text"
14
+ },
15
+ "link": {
16
+ "type": "component",
17
+ "component": "shared.link",
18
+ "repeatable": false
19
+ },
20
+ "media": {
21
+ "type": "media",
22
+ "multiple": false,
23
+ "required": true,
24
+ "allowedTypes": ["images", "videos"]
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "collectionName": "components_shared_stat_items",
3
+ "info": {
4
+ "displayName": "Stat Item",
5
+ "icon": "chartBubble",
6
+ "description": "Metric item with value, label, and description"
7
+ },
8
+ "attributes": {
9
+ "value": {
10
+ "type": "string",
11
+ "required": true
12
+ },
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "description": {
17
+ "type": "text"
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "collectionName": "components_shared_team_members",
3
+ "info": {
4
+ "displayName": "Team Member",
5
+ "icon": "user",
6
+ "description": "Team member with name, role, bio, photo, and social links"
7
+ },
8
+ "attributes": {
9
+ "memberName": {
10
+ "type": "string",
11
+ "required": true
12
+ },
13
+ "role": {
14
+ "type": "string"
15
+ },
16
+ "bio": {
17
+ "type": "text"
18
+ },
19
+ "photo": {
20
+ "type": "media",
21
+ "multiple": false,
22
+ "allowedTypes": ["images"]
23
+ },
24
+ "socialLinks": {
25
+ "type": "component",
26
+ "component": "shared.link",
27
+ "repeatable": true
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "collectionName": "components_shared_testimonial_items",
3
+ "info": {
4
+ "displayName": "Testimonial Item",
5
+ "icon": "quote",
6
+ "description": "Testimonial with quote, author info, and optional rating"
7
+ },
8
+ "attributes": {
9
+ "quote": {
10
+ "type": "text",
11
+ "required": true
12
+ },
13
+ "authorName": {
14
+ "type": "string"
15
+ },
16
+ "authorRole": {
17
+ "type": "string"
18
+ },
19
+ "avatar": {
20
+ "type": "media",
21
+ "multiple": false,
22
+ "allowedTypes": ["images"]
23
+ },
24
+ "logo": {
25
+ "type": "media",
26
+ "multiple": false,
27
+ "allowedTypes": ["images"]
28
+ },
29
+ "rating": {
30
+ "type": "integer",
31
+ "min": 1,
32
+ "max": 5
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,12 @@
1
+ import type { Core } from '@strapi/strapi';
2
+ declare const global: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => {
5
+ /**
6
+ * GET /api/builder/global
7
+ * Global settings with deep populate (siteWideBlocks + footer)
8
+ */
9
+ find(ctx: any): Promise<any>;
10
+ };
11
+ export default global;
12
+ //# sourceMappingURL=global.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/global.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE3C,QAAA,MAAM,MAAM,GAAI,YAAY;IAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;CAAE;IACjD;;;OAGG;cACa,GAAG;CAenB,CAAC;AAEH,eAAe,MAAM,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const global = ({ strapi }) => ({
4
+ /**
5
+ * GET /api/builder/global
6
+ * Global settings with deep populate (siteWideBlocks + footer)
7
+ */
8
+ async find(ctx) {
9
+ const populateService = strapi.plugin('builder').service('populate');
10
+ const populate = populateService.getGlobalPopulate();
11
+ const result = await strapi.documents('api::global.global').findFirst({
12
+ populate,
13
+ ...ctx.query,
14
+ });
15
+ if (!result) {
16
+ return ctx.notFound('Global not found');
17
+ }
18
+ ctx.body = { data: result };
19
+ },
20
+ });
21
+ exports.default = global;
22
+ //# sourceMappingURL=global.js.map