@dani-builder/strapi-plugin-builder 1.5.1 → 2.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 (74) hide show
  1. package/AGENTS.md +12 -7
  2. package/README.md +7 -1
  3. package/dist/admin/api.d.ts +4 -8
  4. package/dist/admin/api.d.ts.map +1 -1
  5. package/dist/admin/app.d.ts +0 -1
  6. package/dist/admin/app.d.ts.map +1 -1
  7. package/dist/admin/field-editor.d.ts.map +1 -1
  8. package/dist/admin/field-modal.d.ts +9 -0
  9. package/dist/admin/field-modal.d.ts.map +1 -0
  10. package/dist/admin/form-editor-page.d.ts.map +1 -1
  11. package/dist/admin/form-list-page.d.ts.map +1 -1
  12. package/dist/admin/form-select.d.ts +21 -0
  13. package/dist/admin/form-select.d.ts.map +1 -0
  14. package/dist/admin/form.d.ts +9 -1
  15. package/dist/admin/form.d.ts.map +1 -1
  16. package/dist/admin/index.d.ts +6 -0
  17. package/dist/admin/index.d.ts.map +1 -1
  18. package/dist/admin/index.mjs +2476 -1119
  19. package/dist/admin/notification-editor.d.ts.map +1 -1
  20. package/dist/admin/notifications.d.ts +1 -1
  21. package/dist/admin/notifications.d.ts.map +1 -1
  22. package/dist/admin/submission-detail-modal.d.ts +14 -0
  23. package/dist/admin/submission-detail-modal.d.ts.map +1 -0
  24. package/dist/admin/submission-page.d.ts +3 -0
  25. package/dist/admin/submission-page.d.ts.map +1 -1
  26. package/dist/admin/submission.d.ts +32 -0
  27. package/dist/admin/submission.d.ts.map +1 -1
  28. package/dist/admin/ui.d.ts.map +1 -1
  29. package/dist/server/src/components/blocks/inquiry-form.json +2 -8
  30. package/dist/server/src/components/blocks/previews/price-list.jpg +0 -0
  31. package/dist/server/src/components/blocks/price-list.json +37 -0
  32. package/dist/server/src/components/shared/price-group.json +22 -0
  33. package/dist/server/src/components/shared/price-item.json +42 -0
  34. package/dist/server/src/config/index.d.ts.map +1 -1
  35. package/dist/server/src/config/index.js +6 -0
  36. package/dist/server/src/config/index.js.map +1 -1
  37. package/dist/server/src/content-types/page/schema.json +1 -0
  38. package/dist/server/src/controllers/submission.d.ts +1 -0
  39. package/dist/server/src/controllers/submission.d.ts.map +1 -1
  40. package/dist/server/src/controllers/submission.js +11 -1
  41. package/dist/server/src/controllers/submission.js.map +1 -1
  42. package/dist/server/src/mcp/index.d.ts.map +1 -1
  43. package/dist/server/src/mcp/index.js +3 -1
  44. package/dist/server/src/mcp/index.js.map +1 -1
  45. package/dist/server/src/mcp/schema.d.ts +1 -0
  46. package/dist/server/src/mcp/schema.d.ts.map +1 -1
  47. package/dist/server/src/mcp/schema.js +26 -1
  48. package/dist/server/src/mcp/schema.js.map +1 -1
  49. package/dist/server/src/register.d.ts.map +1 -1
  50. package/dist/server/src/register.js +5 -0
  51. package/dist/server/src/register.js.map +1 -1
  52. package/dist/server/src/routes/admin.d.ts.map +1 -1
  53. package/dist/server/src/routes/admin.js +1 -0
  54. package/dist/server/src/routes/admin.js.map +1 -1
  55. package/dist/server/src/services/form.d.ts.map +1 -1
  56. package/dist/server/src/services/form.js +65 -39
  57. package/dist/server/src/services/form.js.map +1 -1
  58. package/dist/server/src/services/populate.d.ts.map +1 -1
  59. package/dist/server/src/services/populate.js +6 -0
  60. package/dist/server/src/services/populate.js.map +1 -1
  61. package/dist/server/src/services/submission-detail.d.ts +24 -0
  62. package/dist/server/src/services/submission-detail.d.ts.map +1 -0
  63. package/dist/server/src/services/submission-detail.js +125 -0
  64. package/dist/server/src/services/submission-detail.js.map +1 -0
  65. package/dist/server/src/services/submission.d.ts +25 -1
  66. package/dist/server/src/services/submission.d.ts.map +1 -1
  67. package/dist/server/src/services/submission.js +55 -3
  68. package/dist/server/src/services/submission.js.map +1 -1
  69. package/dist/server/src/validation/form.d.ts.map +1 -1
  70. package/dist/server/src/validation/form.js +12 -4
  71. package/dist/server/src/validation/form.js.map +1 -1
  72. package/package.json +7 -3
  73. package/dist/admin/import-form.d.ts +0 -6
  74. package/dist/admin/import-form.d.ts.map +0 -1
package/AGENTS.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @dani-builder/strapi-plugin-builder
2
2
 
3
- Strapi v5 plugin providing 12 content types, 36 components, and smart API endpoints for a page builder CMS. Installed as a Strapi plugin — not used standalone.
3
+ Strapi v5 plugin providing 12 content types, 39 components, and smart API endpoints for a page builder CMS. Installed as a Strapi plugin — not used standalone.
4
4
 
5
5
  ## Installation & Setup
6
6
 
@@ -20,6 +20,9 @@ export default () => ({
20
20
  types and their core REST routes; copied schemas duplicate collection names and
21
21
  prevent Strapi from booting.
22
22
 
23
+ Install `react-intl` at the host `@strapi/admin` version (6.6.2 for Strapi
24
+ 5.60.0), so Builder hooks share the host IntlProvider context.
25
+
23
26
  ## Content Types (12)
24
27
 
25
28
  ### Collection Types (9)
@@ -46,19 +49,19 @@ prevent Strapi from booting.
46
49
 
47
50
  **Series quirk:** `pluralName` is `all-series` (not `series`) because Strapi requires singular and plural names to differ.
48
51
 
49
- ## Components (36)
52
+ ## Components (39)
50
53
 
51
- ### Blocks (14) — used in Page.blocks dynamic zone
54
+ ### Blocks (15) — used in Page.blocks dynamic zone
52
55
 
53
- `blocks.hero`, `blocks.features`, `blocks.cta`, `blocks.slider`, `blocks.inquiry-form`, `blocks.faq`, `blocks.highlights`, `blocks.bento-grid`, `blocks.testimonials`, `blocks.logo-cloud`, `blocks.stats`, `blocks.pricing`, `blocks.content`, `blocks.team`
56
+ `blocks.hero`, `blocks.features`, `blocks.cta`, `blocks.slider`, `blocks.inquiry-form`, `blocks.faq`, `blocks.highlights`, `blocks.bento-grid`, `blocks.testimonials`, `blocks.logo-cloud`, `blocks.stats`, `blocks.pricing`, `blocks.price-list`, `blocks.content`, `blocks.team`
54
57
 
55
58
  ### Elements (2)
56
59
 
57
60
  `elements.section`, `elements.footer`
58
61
 
59
- ### Shared (20)
62
+ ### Shared (22)
60
63
 
61
- `shared.action`, `shared.analytics-setting`, `shared.bento-item`, `shared.brand-colors`, `shared.chatbot-setting`, `shared.feature-item`, `shared.highlight-item`, `shared.image`, `shared.link`, `shared.logo-item`, `shared.navigation-group`, `shared.organization`, `shared.postal-address`, `shared.pricing-tier`, `shared.seo`, `shared.site-verification`, `shared.slider-item`, `shared.stat-item`, `shared.team-member`, `shared.testimonial-item`
64
+ `shared.action`, `shared.analytics-setting`, `shared.bento-item`, `shared.brand-colors`, `shared.chatbot-setting`, `shared.feature-item`, `shared.highlight-item`, `shared.image`, `shared.link`, `shared.logo-item`, `shared.navigation-group`, `shared.organization`, `shared.postal-address`, `shared.pricing-tier`, `shared.price-group`, `shared.price-item`, `shared.seo`, `shared.site-verification`, `shared.slider-item`, `shared.stat-item`, `shared.team-member`, `shared.testimonial-item`
62
65
 
63
66
  ## Smart API Endpoints
64
67
 
@@ -93,6 +96,7 @@ Blocks use a `variant` enum instead of separate components per layout. Only use
93
96
  | hero | `side-by-side`, `media-extending`, `fullscreen-media`, `stacked-media` |
94
97
  | highlights | `dual-column`, `triple-column`, `alternating` |
95
98
  | logo-cloud | `inline`, `grid`, `split`, `marquee` |
99
+ | price-list | `table`, `list` |
96
100
  | pricing | `two-column`, `three-column`, `single`, `with-comparison` |
97
101
  | slider | `cover-flow`, `card-slider` |
98
102
  | stats | `simple`, `card-grid`, `split` |
@@ -140,7 +144,7 @@ server/src/
140
144
  content-types/ — Plugin-owned content type schemas
141
145
  register.ts — Programmatic component registration
142
146
  controllers/ — Smart API controllers (page, global)
143
- services/ — Populate service (deep populate definitions for all 14 blocks)
147
+ services/ — Populate service (deep populate definitions for all 15 blocks)
144
148
  routes/ — Core and smart API route definitions
145
149
  components/ — Component JSON schemas (blocks, elements, shared)
146
150
  ```
@@ -154,6 +158,7 @@ server/src/
154
158
  - `@d3levvv/strapi-react-icons-plugin` ^1.0.0
155
159
  - `react` ^17.0.0 || ^18.0.0
156
160
  - `react-router-dom` ^6.30.3
161
+ - `react-intl` ^6.6.2
157
162
  - `@strapi/design-system` ^2.2.0
158
163
  - `@strapi/icons` ^2.2.0
159
164
 
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @dani-builder/strapi-plugin-builder
2
2
 
3
- Reusable CMS building blocks for **Strapi v5** — 12 content types, 36 block/element/shared
3
+ Reusable CMS building blocks for **Strapi v5** — 12 content types, 39 block/element/shared
4
4
  components, and a "smart API" that returns fully deep-populated pages and globals
5
5
  in a single request. Powers the [Daniworks Builder](https://github.com/HJ-company/daniworks-builder-v2)
6
6
  block-based site builder.
@@ -16,6 +16,12 @@ fields (`plugin::color-picker.color`, `plugin::icon-picker.icon`), and Strapi
16
16
  only loads plugins listed in your own `package.json`. Without them the app fails
17
17
  to boot with `Could not find Custom Field: plugin::color-picker.color`.
18
18
 
19
+ Builder also requires the `react-intl` peer to share the host admin translation
20
+ context. Install the same version used by your installed `@strapi/admin`; for
21
+ Strapi 5.60.0, run `pnpm add react-intl@6.6.2` in the CMS. Keep this dependency
22
+ aligned when upgrading Strapi. A separate copy can make Forms fail with
23
+ `Could not find required intl object` even though Strapi provides IntlProvider.
24
+
19
25
  The S3 upload provider is an optional peer for local-only projects, but it must
20
26
  be a direct dependency of the CMS when `AWS_BUCKET` enables S3, R2, or MinIO.
21
27
  Use `@strapi/provider-upload-aws-s3` version 5.36.0 or later within Strapi v5.
@@ -1,4 +1,4 @@
1
- import type { SubmissionDocument, SubmissionList, SubmissionStatus } from "./submission";
1
+ import type { SubmissionDocument, SubmissionDetail, SubmissionFilterOption, SubmissionQuery, SubmissionList, SubmissionStatus } from "./submission";
2
2
  import type { useFetchClient } from "@strapi/strapi/admin";
3
3
  import type { Delivery, FormDocument, FormDraft, FormField, FormTarget } from "./form";
4
4
  type Client = ReturnType<typeof useFetchClient>;
@@ -13,14 +13,10 @@ export declare function formApi(client: Client): {
13
13
  export(id: string): Promise<Record<string, unknown>>;
14
14
  import(data: Record<string, unknown>, id?: string): Promise<FormDocument>;
15
15
  };
16
- export declare function downloadForm(value: Record<string, unknown>, slug: string): void;
17
16
  export declare function submissionApi(client: Client): {
18
- list(params: {
19
- slug?: string;
20
- status?: string;
21
- page: number;
22
- }): Promise<SubmissionList>;
23
- get(id: string): Promise<SubmissionDocument>;
17
+ list(params: SubmissionQuery): Promise<SubmissionList>;
18
+ filterOptions(): Promise<SubmissionFilterOption[]>;
19
+ get(id: string): Promise<SubmissionDetail>;
24
20
  status(id: string, status: SubmissionStatus): Promise<SubmissionDocument>;
25
21
  redeliver(id: string): Promise<Delivery[]>;
26
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../admin/src/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,SAAS,EACT,UAAU,EACX,MAAM,QAAQ,CAAC;AAEhB,KAAK,MAAM,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAEhD,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM;;YAKpB,MAAM;;sBAWI,MAAM;eAOb,SAAS,OAAO,MAAM;iBAWpB,MAAM,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;eAQ/C,MAAM;eAGN,MAAM;iBAOJ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,MAAM;EAa1D;AACD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,QASxE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM;iBAGrB;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;YAGrD,MAAM;eAOH,MAAM,UAAU,gBAAgB;kBAQ7B,MAAM;EAQ7B"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../admin/src/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,SAAS,EACT,UAAU,EACX,MAAM,QAAQ,CAAC;AAEhB,KAAK,MAAM,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAEhD,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM;;YAKpB,MAAM;;sBAWI,MAAM;eAOb,SAAS,OAAO,MAAM;iBAWpB,MAAM,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;eAQ/C,MAAM;eAGN,MAAM;iBAOJ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,MAAM;EAa1D;AACD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM;iBAGrB,eAAe;;YAUpB,MAAM;eAOH,MAAM,UAAU,gBAAgB;kBAQ7B,MAAM;EAQ7B"}
@@ -1,3 +1,2 @@
1
- export declare function SubmissionsApp(): import("react").JSX.Element;
2
1
  export default function App(): import("react").JSX.Element;
3
2
  //# sourceMappingURL=app.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../admin/src/app.tsx"],"names":[],"mappings":"AAuCA,wBAAgB,cAAc,gCAc7B;AACD,MAAM,CAAC,OAAO,UAAU,GAAG,gCAO1B"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../admin/src/app.tsx"],"names":[],"mappings":"AAiBA,MAAM,CAAC,OAAO,UAAU,GAAG,gCA+H1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"field-editor.d.ts","sourceRoot":"","sources":["../../admin/src/field-editor.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,MAAM,EACN,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;CACzC,+BA6IA"}
1
+ {"version":3,"file":"field-editor.d.ts","sourceRoot":"","sources":["../../admin/src/field-editor.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,MAAM,EACN,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;CACzC,+BAsPA"}
@@ -0,0 +1,9 @@
1
+ import type { FormField } from "./form";
2
+ export declare function FieldModal({ fields, schema, initial, onApply, onClose, }: {
3
+ fields: FormField[];
4
+ schema: FormField[];
5
+ initial?: FormField;
6
+ onApply: (field: FormField) => void;
7
+ onClose: () => void;
8
+ }): import("react").JSX.Element;
9
+ //# sourceMappingURL=field-modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-modal.d.ts","sourceRoot":"","sources":["../../admin/src/field-modal.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAaxC,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,EACP,OAAO,GACR,EAAE;IACD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,+BAgPA"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-editor-page.d.ts","sourceRoot":"","sources":["../../admin/src/form-editor-page.tsx"],"names":[],"mappings":"AAWA,wBAAgB,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,+BA+TnE"}
1
+ {"version":3,"file":"form-editor-page.d.ts","sourceRoot":"","sources":["../../admin/src/form-editor-page.tsx"],"names":[],"mappings":"AA+BA,wBAAgB,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,+BAuenE"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-list-page.d.ts","sourceRoot":"","sources":["../../admin/src/form-list-page.tsx"],"names":[],"mappings":"AAmBA,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,+BAmMjE"}
1
+ {"version":3,"file":"form-list-page.d.ts","sourceRoot":"","sources":["../../admin/src/form-list-page.tsx"],"names":[],"mappings":"AAuBA,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,+BAqRjE"}
@@ -0,0 +1,21 @@
1
+ import type { ReactNode } from "react";
2
+ interface FormSelectProps {
3
+ name?: string;
4
+ value?: string | null;
5
+ onChange?: (event: {
6
+ target: {
7
+ name: string;
8
+ value: string | null;
9
+ type: "string";
10
+ };
11
+ }) => void;
12
+ label?: string;
13
+ hint?: ReactNode;
14
+ error?: string;
15
+ required?: boolean;
16
+ disabled?: boolean;
17
+ onBlur?: () => void;
18
+ }
19
+ export declare const FormSelect: import("react").ForwardRefExoticComponent<FormSelectProps & import("react").RefAttributes<HTMLDivElement>>;
20
+ export {};
21
+ //# sourceMappingURL=form-select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-select.d.ts","sourceRoot":"","sources":["../../admin/src/form-select.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAcvC,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE;QACjB,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,IAAI,EAAE,QAAQ,CAAA;SAAE,CAAC;KAChE,KAAK,IAAI,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,4GA8ItB,CAAC"}
@@ -49,16 +49,24 @@ export interface FormDraft {
49
49
  export interface FormDocument extends FormDraft {
50
50
  documentId: string;
51
51
  version: number;
52
+ targetDisplayName?: string | null;
53
+ publicUrl?: string;
54
+ hasSubmissions?: boolean;
55
+ latestSubmissionAt?: string | null;
52
56
  }
53
57
  export interface FormTarget {
54
58
  uid: string;
55
59
  name: string;
56
60
  }
57
61
  export declare const emptyForm: FormDraft;
62
+ /** Use the admin's local date when creating a draft or requesting a suggestion. */
63
+ export declare function suggestConsentVersion(current?: string, date?: Date, savedVersion?: string): string;
64
+ export declare function createEmptyForm(): FormDraft;
58
65
  /** Only send notifications after the editor has been opened. */
59
66
  export declare function savePayload(form: FormDraft, includeNotifications?: boolean): FormDraft;
60
67
  export declare function moveField(fields: FormField[], index: number, direction: number): FormField[];
61
68
  export declare function setRequired(field: FormField, required: boolean, schema: FormField): FormField;
62
- export declare function parseImport(source: string): Record<string, unknown>;
63
69
  export declare function errorMessage(error: unknown): string;
70
+ export declare function suggestSlug(name: string): string;
71
+ export declare function missingRequired(fields: FormField[], schema: FormField[]): FormField[];
64
72
  //# sourceMappingURL=form.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../admin/src/form.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AACD,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE;QACN,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;QACd,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,OAAO,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CAC9E;AACD,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;IAC3C,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AACD,MAAM,WAAW,SAAS;IACxB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C;AACD,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AACD,eAAO,MAAM,SAAS,EAAE,SAMvB,CAAC;AACF,gEAAgE;AAChE,wBAAgB,WAAW,CACzB,IAAI,EAAE,SAAS,EACf,oBAAoB,UAAQ,GAC3B,SAAS,CAqBX;AACD,wBAAgB,SAAS,CACvB,MAAM,EAAE,SAAS,EAAE,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,SAAS,EAAE,CAQb;AACD,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,SAAS,GAChB,SAAS,CAEX;AACD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUnE;AACD,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAUnD"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../admin/src/form.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
1
  import type { StrapiApp } from "@strapi/strapi/admin";
2
2
  declare const _default: {
3
3
  register(app: StrapiApp): void;
4
+ registerTrads({ locales }: {
5
+ locales: string[];
6
+ }): Promise<{
7
+ locale: string;
8
+ data: Record<string, string>;
9
+ }[]>;
4
10
  };
5
11
  export default _default;
6
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../admin/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;;kBAGtC,SAAS;;AADzB,wBA0BE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../admin/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;;kBAOtC,SAAS;+BA6BU;QAAE,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;;;;;AA9BxD,wBAoCE"}