@strapi/content-type-builder 5.30.0 → 5.31.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 (111) hide show
  1. package/dist/admin/components/AIChat/FeedbackModal.js.map +1 -1
  2. package/dist/admin/components/AIChat/FeedbackModal.mjs.map +1 -1
  3. package/dist/admin/components/AIChat/UploadFigmaModal.js.map +1 -1
  4. package/dist/admin/components/AIChat/UploadFigmaModal.mjs.map +1 -1
  5. package/dist/admin/components/AIChat/components/Base64Image.js.map +1 -1
  6. package/dist/admin/components/AIChat/components/Base64Image.mjs.map +1 -1
  7. package/dist/admin/components/AIChat/components/Collapsible.js.map +1 -1
  8. package/dist/admin/components/AIChat/components/Collapsible.mjs.map +1 -1
  9. package/dist/admin/components/AIChat/components/FullScreenImage.js.map +1 -1
  10. package/dist/admin/components/AIChat/components/FullScreenImage.mjs.map +1 -1
  11. package/dist/admin/components/AIChat/components/Messages/Message.js.map +1 -1
  12. package/dist/admin/components/AIChat/components/Messages/Message.mjs.map +1 -1
  13. package/dist/admin/components/AIChat/hooks/useAIFetch.js.map +1 -1
  14. package/dist/admin/components/AIChat/hooks/useAIFetch.mjs.map +1 -1
  15. package/dist/admin/components/AIChat/hooks/useCodeUpload.js.map +1 -1
  16. package/dist/admin/components/AIChat/hooks/useCodeUpload.mjs.map +1 -1
  17. package/dist/admin/components/AIChat/hooks/useFigmaUpload.js.map +1 -1
  18. package/dist/admin/components/AIChat/hooks/useFigmaUpload.mjs.map +1 -1
  19. package/dist/admin/components/AIChat/lib/aiClient.js.map +1 -1
  20. package/dist/admin/components/AIChat/lib/aiClient.mjs.map +1 -1
  21. package/dist/admin/components/AIChat/lib/constants.js.map +1 -1
  22. package/dist/admin/components/AIChat/lib/constants.mjs.map +1 -1
  23. package/dist/admin/components/AIChat/providers/SchemaProvider.js.map +1 -1
  24. package/dist/admin/components/AIChat/providers/SchemaProvider.mjs.map +1 -1
  25. package/dist/admin/components/AttributeOptions/AttributeOption.js.map +1 -1
  26. package/dist/admin/components/AttributeOptions/AttributeOption.mjs.map +1 -1
  27. package/dist/admin/components/AttributeOptions/AttributeOptions.js.map +1 -1
  28. package/dist/admin/components/AttributeOptions/AttributeOptions.mjs.map +1 -1
  29. package/dist/admin/components/AttributeOptions/EmptyAttributes.js.map +1 -1
  30. package/dist/admin/components/AttributeOptions/EmptyAttributes.mjs.map +1 -1
  31. package/dist/admin/components/AttributeRow.js.map +1 -1
  32. package/dist/admin/components/AttributeRow.mjs.map +1 -1
  33. package/dist/admin/components/ComponentCard/ComponentCard.js.map +1 -1
  34. package/dist/admin/components/ComponentCard/ComponentCard.mjs.map +1 -1
  35. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js.map +1 -1
  36. package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs.map +1 -1
  37. package/dist/admin/components/DataManager/utils/cleanData.js.map +1 -1
  38. package/dist/admin/components/DataManager/utils/cleanData.mjs.map +1 -1
  39. package/dist/admin/components/DisplayedType.js.map +1 -1
  40. package/dist/admin/components/DisplayedType.mjs.map +1 -1
  41. package/dist/admin/components/DynamicZoneList.js.map +1 -1
  42. package/dist/admin/components/DynamicZoneList.mjs.map +1 -1
  43. package/dist/admin/components/Footers.js.map +1 -1
  44. package/dist/admin/components/Footers.mjs.map +1 -1
  45. package/dist/admin/components/FormModal/FormModal.js.map +1 -1
  46. package/dist/admin/components/FormModal/FormModal.mjs.map +1 -1
  47. package/dist/admin/components/FormModal/attributes/ConditionForm.js.map +1 -1
  48. package/dist/admin/components/FormModal/attributes/ConditionForm.mjs.map +1 -1
  49. package/dist/admin/components/FormModal/attributes/advancedForm.js.map +1 -1
  50. package/dist/admin/components/FormModal/attributes/advancedForm.mjs.map +1 -1
  51. package/dist/admin/components/FormModal/attributes/baseForm.js.map +1 -1
  52. package/dist/admin/components/FormModal/attributes/baseForm.mjs.map +1 -1
  53. package/dist/admin/components/FormModal/component/componentForm.js.map +1 -1
  54. package/dist/admin/components/FormModal/component/componentForm.mjs.map +1 -1
  55. package/dist/admin/components/FormModal/forms/utils/createCollectionName.js.map +1 -1
  56. package/dist/admin/components/FormModal/forms/utils/createCollectionName.mjs.map +1 -1
  57. package/dist/admin/components/FormModal/utils/createUid.js.map +1 -1
  58. package/dist/admin/components/FormModal/utils/createUid.mjs.map +1 -1
  59. package/dist/admin/components/FormModalHeader.js.map +1 -1
  60. package/dist/admin/components/FormModalHeader.mjs.map +1 -1
  61. package/dist/admin/components/FormModalSubHeader.js.map +1 -1
  62. package/dist/admin/components/FormModalSubHeader.mjs.map +1 -1
  63. package/dist/admin/components/GenericInputs.js +7 -4
  64. package/dist/admin/components/GenericInputs.js.map +1 -1
  65. package/dist/admin/components/GenericInputs.mjs +7 -4
  66. package/dist/admin/components/GenericInputs.mjs.map +1 -1
  67. package/dist/admin/components/IconPicker/constants.js +3 -0
  68. package/dist/admin/components/IconPicker/constants.js.map +1 -1
  69. package/dist/admin/components/IconPicker/constants.mjs +3 -0
  70. package/dist/admin/components/IconPicker/constants.mjs.map +1 -1
  71. package/dist/admin/components/List.js.map +1 -1
  72. package/dist/admin/components/List.mjs.map +1 -1
  73. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js.map +1 -1
  74. package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs.map +1 -1
  75. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js.map +1 -1
  76. package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs.map +1 -1
  77. package/dist/admin/components/SelectComponent.js.map +1 -1
  78. package/dist/admin/components/SelectComponent.mjs.map +1 -1
  79. package/dist/admin/components/TabForm.js.map +1 -1
  80. package/dist/admin/components/TabForm.mjs.map +1 -1
  81. package/dist/admin/index.js.map +1 -1
  82. package/dist/admin/index.mjs.map +1 -1
  83. package/dist/admin/pages/App/index.js.map +1 -1
  84. package/dist/admin/pages/App/index.mjs.map +1 -1
  85. package/dist/admin/pages/ListView/ListView.js.map +1 -1
  86. package/dist/admin/pages/ListView/ListView.mjs.map +1 -1
  87. package/dist/admin/utils/conditions.js.map +1 -1
  88. package/dist/admin/utils/conditions.mjs.map +1 -1
  89. package/dist/admin/utils/getTrad.js.map +1 -1
  90. package/dist/admin/utils/getTrad.mjs.map +1 -1
  91. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -1
  92. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -1
  93. package/dist/admin/utils/timeFormat.js.map +1 -1
  94. package/dist/admin/utils/timeFormat.mjs.map +1 -1
  95. package/dist/server/controllers/validation/common.js.map +1 -1
  96. package/dist/server/controllers/validation/common.mjs.map +1 -1
  97. package/dist/server/controllers/validation/content-type.js.map +1 -1
  98. package/dist/server/controllers/validation/content-type.mjs.map +1 -1
  99. package/dist/server/controllers/validation/model-schema.js.map +1 -1
  100. package/dist/server/controllers/validation/model-schema.mjs.map +1 -1
  101. package/dist/server/controllers/validation/relations.js.map +1 -1
  102. package/dist/server/controllers/validation/relations.mjs.map +1 -1
  103. package/dist/server/services/api-handler.js.map +1 -1
  104. package/dist/server/services/api-handler.mjs.map +1 -1
  105. package/dist/server/services/component-categories.js.map +1 -1
  106. package/dist/server/services/component-categories.mjs.map +1 -1
  107. package/dist/server/services/schema-builder/component-builder.js.map +1 -1
  108. package/dist/server/services/schema-builder/component-builder.mjs.map +1 -1
  109. package/dist/server/services/schema-builder/content-type-builder.js.map +1 -1
  110. package/dist/server/services/schema-builder/content-type-builder.mjs.map +1 -1
  111. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"baseForm.mjs","sources":["../../../../../admin/src/components/FormModal/attributes/baseForm.ts"],"sourcesContent":["import { getTrad } from '../../../utils/getTrad';\nimport { componentField } from '../component/componentField';\nimport { componentForm } from '../component/componentForm';\n\nimport { nameField } from './nameField';\n\nexport const baseForm = {\n component(data: { createComponent: boolean }, step: string) {\n if (step === '1') {\n const itemsToConcat =\n data.createComponent === true ? componentForm.base('componentToCreate.') : [];\n\n return {\n sections: [{ sectionTitle: null, items: [componentField] }, ...itemsToConcat],\n };\n }\n\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n nameField,\n {\n name: 'component',\n type: 'select-component',\n intlLabel: {\n id: getTrad('modalForm.attributes.select-component'),\n defaultMessage: 'Select a component',\n },\n isMultiple: false,\n },\n ],\n },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'repeatable',\n type: 'boolean-radio-group',\n size: 12,\n radios: [\n {\n title: {\n id: getTrad('form.attribute.component.option.repeatable'),\n defaultMessage: 'Repeatable component',\n },\n description: {\n id: getTrad('form.attribute.component.option.repeatable.description'),\n defaultMessage:\n 'Best for multiple instances (array) of ingredients, meta tags, etc..',\n },\n value: true,\n },\n {\n title: {\n id: getTrad('form.attribute.component.option.single'),\n defaultMessage: 'Single component',\n },\n description: {\n id: getTrad('form.attribute.component.option.single.description'),\n defaultMessage:\n 'Best for grouping fields like full address, main information, etc...',\n },\n value: false,\n },\n ],\n },\n ],\n },\n ],\n };\n },\n date() {\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n nameField,\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'type',\n type: 'select-date',\n options: [\n {\n key: '__null_reset_value__',\n value: '',\n metadatas: {\n intlLabel: {\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n },\n hidden: true,\n },\n },\n {\n key: 'date',\n value: 'date',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.date.type.date'),\n defaultMessage: 'date (ex: 01/01/{currentYear})',\n values: { currentYear: new Date().getFullYear() },\n },\n },\n },\n {\n key: 'datetime',\n value: 'datetime',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.date.type.datetime'),\n defaultMessage: 'datetime (ex: 01/01/{currentYear} 00:00 AM)',\n values: { currentYear: new Date().getFullYear() },\n },\n },\n },\n {\n key: 'time',\n value: 'time',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.date.type.time'),\n defaultMessage: 'time (ex: 00:00 AM)',\n },\n },\n },\n ],\n },\n ],\n },\n ],\n };\n },\n enumeration() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n name: 'enum',\n type: 'textarea-enum',\n size: 6,\n intlLabel: {\n id: getTrad('form.attribute.item.enumeration.rules'),\n defaultMessage: 'Values (one line per value)',\n },\n placeholder: {\n id: getTrad('form.attribute.item.enumeration.placeholder'),\n defaultMessage: 'Ex:\\nmorning\\nnoon\\nevening',\n },\n validations: {\n required: true,\n },\n },\n ],\n },\n ],\n };\n },\n media() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'multiple',\n size: 12,\n type: 'boolean-radio-group',\n radios: [\n {\n title: {\n id: getTrad('form.attribute.media.option.multiple'),\n defaultMessage: 'Multiple media',\n },\n description: {\n id: getTrad('form.attribute.media.option.multiple.description'),\n defaultMessage: 'Best for sliders, carousels or multiple files download',\n },\n value: true,\n },\n {\n title: {\n id: getTrad('form.attribute.media.option.single'),\n defaultMessage: 'Single media',\n },\n description: {\n id: getTrad('form.attribute.media.option.single.description'),\n defaultMessage: 'Best for avatar, profile picture or cover',\n },\n value: false,\n },\n ],\n },\n ],\n },\n ],\n };\n },\n number() {\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n nameField,\n {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type'),\n defaultMessage: 'Number format',\n },\n name: 'type',\n type: 'select-number',\n options: [\n {\n key: '__null_reset_value__',\n value: '',\n metadatas: {\n intlLabel: {\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n },\n hidden: true,\n },\n },\n {\n key: 'integer',\n value: 'integer',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.integer'),\n defaultMessage: 'integer (ex: 10)',\n },\n },\n },\n {\n key: 'biginteger',\n value: 'biginteger',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.biginteger'),\n defaultMessage: 'biginteger (ex: 123456789)',\n },\n },\n },\n {\n key: 'decimal',\n value: 'decimal',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.decimal'),\n defaultMessage: 'decimal (ex: 2.22)',\n },\n },\n },\n {\n key: 'float',\n value: 'float',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.float'),\n defaultMessage: 'decimal (ex: 3.3333333)',\n },\n },\n },\n ],\n },\n ],\n },\n ],\n };\n },\n relation() {\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: { id: 'FIXME', defaultMessage: 'FIXME' },\n name: 'relation',\n size: 12,\n type: 'relation',\n },\n ],\n },\n ],\n };\n },\n string() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'type',\n size: 12,\n type: 'radio-group',\n radios: [\n {\n title: {\n id: getTrad('form.attribute.text.option.short-text'),\n defaultMessage: 'Sort text',\n },\n description: {\n id: getTrad('form.attribute.text.option.short-text.description'),\n defaultMessage:\n 'Best for titles, names, links (URL). It also enables exact search on the field.',\n },\n value: 'string',\n },\n {\n title: {\n id: getTrad('form.attribute.text.option.long-text'),\n defaultMessage: 'Long text',\n },\n description: {\n id: getTrad('form.attribute.text.option.long-text.description'),\n defaultMessage: 'Best for descriptions, biography. Exact search is disabled.',\n },\n value: 'text',\n },\n ],\n },\n ],\n },\n ],\n };\n },\n text() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'type',\n size: 12,\n type: 'radio-group',\n radios: [\n {\n title: {\n id: getTrad('form.attribute.text.option.short-text'),\n defaultMessage: 'Sort text',\n },\n description: {\n id: getTrad('form.attribute.text.option.short-text.description'),\n defaultMessage:\n 'Best for titles, names, links (URL). It also enables exact search on the field.',\n },\n value: 'string',\n },\n {\n title: {\n id: getTrad('form.attribute.text.option.long-text'),\n defaultMessage: 'Long text',\n },\n description: {\n id: getTrad('form.attribute.text.option.long-text.description'),\n defaultMessage: 'Best for descriptions, biography. Exact search is disabled.',\n },\n value: 'text',\n },\n ],\n },\n ],\n },\n ],\n };\n },\n uid(_data: unknown, step: string, attributes: Array<{ type: string; name: string }>) {\n const options = attributes\n .filter(({ type }) => ['string', 'text'].includes(type))\n .map(({ name }) => ({\n key: name,\n value: name,\n metadatas: {\n intlLabel: { id: `${name}.no-override`, defaultMessage: name },\n },\n }));\n\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n {\n ...nameField,\n placeholder: {\n id: getTrad('modalForm.attribute.form.base.name.placeholder'),\n defaultMessage: 'e.g. slug, seoUrl, canonicalUrl',\n },\n },\n {\n intlLabel: {\n id: getTrad('modalForm.attribute.target-field'),\n defaultMessage: 'Attached field',\n },\n name: 'targetField',\n type: 'select',\n options: [\n {\n key: '__null_reset_value__',\n value: '',\n metadatas: { intlLabel: { id: 'global.none', defaultMessage: 'None' } },\n },\n ...options,\n ],\n },\n ],\n },\n ],\n };\n },\n};\n"],"names":["baseForm","component","data","step","itemsToConcat","createComponent","componentForm","base","sections","sectionTitle","items","componentField","nameField","name","type","intlLabel","id","getTrad","defaultMessage","isMultiple","size","radios","title","description","value","date","options","key","metadatas","hidden","values","currentYear","Date","getFullYear","enumeration","placeholder","validations","required","media","number","relation","string","text","uid","_data","attributes","filter","includes","map"],"mappings":"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"}
1
+ {"version":3,"file":"baseForm.mjs","sources":["../../../../../admin/src/components/FormModal/attributes/baseForm.ts"],"sourcesContent":["import { getTrad } from '../../../utils/getTrad';\nimport { componentField } from '../component/componentField';\nimport { componentForm } from '../component/componentForm';\n\nimport { nameField } from './nameField';\n\nexport const baseForm = {\n component(data: { createComponent: boolean }, step: string) {\n if (step === '1') {\n const itemsToConcat =\n data.createComponent === true ? componentForm.base('componentToCreate.') : [];\n\n return {\n sections: [{ sectionTitle: null, items: [componentField] }, ...itemsToConcat],\n };\n }\n\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n nameField,\n {\n name: 'component',\n type: 'select-component',\n intlLabel: {\n id: getTrad('modalForm.attributes.select-component'),\n defaultMessage: 'Select a component',\n },\n isMultiple: false,\n },\n ],\n },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'repeatable',\n type: 'boolean-radio-group',\n size: 12,\n radios: [\n {\n title: {\n id: getTrad('form.attribute.component.option.repeatable'),\n defaultMessage: 'Repeatable component',\n },\n description: {\n id: getTrad('form.attribute.component.option.repeatable.description'),\n defaultMessage:\n 'Best for multiple instances (array) of ingredients, meta tags, etc..',\n },\n value: true,\n },\n {\n title: {\n id: getTrad('form.attribute.component.option.single'),\n defaultMessage: 'Single component',\n },\n description: {\n id: getTrad('form.attribute.component.option.single.description'),\n defaultMessage:\n 'Best for grouping fields like full address, main information, etc...',\n },\n value: false,\n },\n ],\n },\n ],\n },\n ],\n };\n },\n date() {\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n nameField,\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'type',\n type: 'select-date',\n options: [\n {\n key: '__null_reset_value__',\n value: '',\n metadatas: {\n intlLabel: {\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n },\n hidden: true,\n },\n },\n {\n key: 'date',\n value: 'date',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.date.type.date'),\n defaultMessage: 'date (ex: 01/01/{currentYear})',\n values: { currentYear: new Date().getFullYear() },\n },\n },\n },\n {\n key: 'datetime',\n value: 'datetime',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.date.type.datetime'),\n defaultMessage: 'datetime (ex: 01/01/{currentYear} 00:00 AM)',\n values: { currentYear: new Date().getFullYear() },\n },\n },\n },\n {\n key: 'time',\n value: 'time',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.date.type.time'),\n defaultMessage: 'time (ex: 00:00 AM)',\n },\n },\n },\n ],\n },\n ],\n },\n ],\n };\n },\n enumeration() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n name: 'enum',\n type: 'textarea-enum',\n size: 6,\n intlLabel: {\n id: getTrad('form.attribute.item.enumeration.rules'),\n defaultMessage: 'Values (one line per value)',\n },\n placeholder: {\n id: getTrad('form.attribute.item.enumeration.placeholder'),\n defaultMessage: 'Ex:\\nmorning\\nnoon\\nevening',\n },\n validations: {\n required: true,\n },\n },\n ],\n },\n ],\n };\n },\n media() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'multiple',\n size: 12,\n type: 'boolean-radio-group',\n radios: [\n {\n title: {\n id: getTrad('form.attribute.media.option.multiple'),\n defaultMessage: 'Multiple media',\n },\n description: {\n id: getTrad('form.attribute.media.option.multiple.description'),\n defaultMessage: 'Best for sliders, carousels or multiple files download',\n },\n value: true,\n },\n {\n title: {\n id: getTrad('form.attribute.media.option.single'),\n defaultMessage: 'Single media',\n },\n description: {\n id: getTrad('form.attribute.media.option.single.description'),\n defaultMessage: 'Best for avatar, profile picture or cover',\n },\n value: false,\n },\n ],\n },\n ],\n },\n ],\n };\n },\n number() {\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n nameField,\n {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type'),\n defaultMessage: 'Number format',\n },\n name: 'type',\n type: 'select-number',\n options: [\n {\n key: '__null_reset_value__',\n value: '',\n metadatas: {\n intlLabel: {\n id: 'components.InputSelect.option.placeholder',\n defaultMessage: 'Choose here',\n },\n hidden: true,\n },\n },\n {\n key: 'integer',\n value: 'integer',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.integer'),\n defaultMessage: 'integer (ex: 10)',\n },\n },\n },\n {\n key: 'biginteger',\n value: 'biginteger',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.biginteger'),\n defaultMessage: 'biginteger (ex: 123456789)',\n },\n },\n },\n {\n key: 'decimal',\n value: 'decimal',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.decimal'),\n defaultMessage: 'decimal (ex: 2.22)',\n },\n },\n },\n {\n key: 'float',\n value: 'float',\n metadatas: {\n intlLabel: {\n id: getTrad('form.attribute.item.number.type.float'),\n defaultMessage: 'decimal (ex: 3.3333333)',\n },\n },\n },\n ],\n },\n ],\n },\n ],\n };\n },\n relation() {\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: { id: 'FIXME', defaultMessage: 'FIXME' },\n name: 'relation',\n size: 12,\n type: 'relation',\n },\n ],\n },\n ],\n };\n },\n string() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'type',\n size: 12,\n type: 'radio-group',\n radios: [\n {\n title: {\n id: getTrad('form.attribute.text.option.short-text'),\n defaultMessage: 'Sort text',\n },\n description: {\n id: getTrad('form.attribute.text.option.short-text.description'),\n defaultMessage:\n 'Best for titles, names, links (URL). It also enables exact search on the field.',\n },\n value: 'string',\n },\n {\n title: {\n id: getTrad('form.attribute.text.option.long-text'),\n defaultMessage: 'Long text',\n },\n description: {\n id: getTrad('form.attribute.text.option.long-text.description'),\n defaultMessage: 'Best for descriptions, biography. Exact search is disabled.',\n },\n value: 'text',\n },\n ],\n },\n ],\n },\n ],\n };\n },\n text() {\n return {\n sections: [\n { sectionTitle: null, items: [nameField] },\n {\n sectionTitle: null,\n items: [\n {\n intlLabel: {\n id: 'global.type',\n defaultMessage: 'Type',\n },\n name: 'type',\n size: 12,\n type: 'radio-group',\n radios: [\n {\n title: {\n id: getTrad('form.attribute.text.option.short-text'),\n defaultMessage: 'Sort text',\n },\n description: {\n id: getTrad('form.attribute.text.option.short-text.description'),\n defaultMessage:\n 'Best for titles, names, links (URL). It also enables exact search on the field.',\n },\n value: 'string',\n },\n {\n title: {\n id: getTrad('form.attribute.text.option.long-text'),\n defaultMessage: 'Long text',\n },\n description: {\n id: getTrad('form.attribute.text.option.long-text.description'),\n defaultMessage: 'Best for descriptions, biography. Exact search is disabled.',\n },\n value: 'text',\n },\n ],\n },\n ],\n },\n ],\n };\n },\n uid(_data: unknown, step: string, attributes: Array<{ type: string; name: string }>) {\n const options = attributes\n .filter(({ type }) => ['string', 'text'].includes(type))\n .map(({ name }) => ({\n key: name,\n value: name,\n metadatas: {\n intlLabel: { id: `${name}.no-override`, defaultMessage: name },\n },\n }));\n\n return {\n sections: [\n {\n sectionTitle: null,\n items: [\n {\n ...nameField,\n placeholder: {\n id: getTrad('modalForm.attribute.form.base.name.placeholder'),\n defaultMessage: 'e.g. slug, seoUrl, canonicalUrl',\n },\n },\n {\n intlLabel: {\n id: getTrad('modalForm.attribute.target-field'),\n defaultMessage: 'Attached field',\n },\n name: 'targetField',\n type: 'select',\n options: [\n {\n key: '__null_reset_value__',\n value: '',\n metadatas: { intlLabel: { id: 'global.none', defaultMessage: 'None' } },\n },\n ...options,\n ],\n },\n ],\n },\n ],\n };\n },\n};\n"],"names":["baseForm","component","data","step","itemsToConcat","createComponent","componentForm","base","sections","sectionTitle","items","componentField","nameField","name","type","intlLabel","id","getTrad","defaultMessage","isMultiple","size","radios","title","description","value","date","options","key","metadatas","hidden","values","currentYear","Date","getFullYear","enumeration","placeholder","validations","required","media","number","relation","string","text","uid","_data","attributes","filter","includes","map"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"componentForm.js","sources":["../../../../../admin/src/components/FormModal/component/componentForm.ts"],"sourcesContent":["import { getTrad } from '../../../utils/getTrad';\n\nexport const componentForm = {\n base(prefix = '') {\n const sections = [\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}displayName`,\n type: 'text',\n intlLabel: {\n id: getTrad('contentType.displayName.label'),\n defaultMessage: 'Display Name',\n },\n },\n {\n name: `${prefix}category`,\n type: 'select-category',\n intlLabel: {\n id: getTrad('modalForm.components.create-component.category.label'),\n defaultMessage: 'Select a category or enter a name to create a new one',\n },\n },\n ],\n },\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}icon`,\n type: 'icon-picker',\n size: 12,\n intlLabel: {\n id: getTrad('modalForm.components.icon.label'),\n defaultMessage: 'Icon',\n },\n },\n ],\n },\n ];\n\n return sections;\n },\n advanced() {\n const sections: Array<unknown> = [];\n\n return sections;\n },\n};\n"],"names":["componentForm","base","prefix","sections","sectionTitle","items","name","type","intlLabel","id","getTrad","defaultMessage","size","advanced"],"mappings":";;;;MAEaA,aAAgB,GAAA;AAC3BC,IAAAA,IAAAA,CAAAA,CAAKC,SAAS,EAAE,EAAA;AACd,QAAA,MAAMC,QAAW,GAAA;AACf,YAAA;gBACEC,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;AACEC,wBAAAA,IAAAA,EAAM,CAAC,EAAEJ,MAAO,CAAA,WAAW,CAAC;wBAC5BK,IAAM,EAAA,MAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,eAAQ,CAAA,+BAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF,qBAAA;AACA,oBAAA;AACEL,wBAAAA,IAAAA,EAAM,CAAC,EAAEJ,MAAO,CAAA,QAAQ,CAAC;wBACzBK,IAAM,EAAA,iBAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,eAAQ,CAAA,sDAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH,aAAA;AACA,YAAA;gBACEP,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;AACEC,wBAAAA,IAAAA,EAAM,CAAC,EAAEJ,MAAO,CAAA,IAAI,CAAC;wBACrBK,IAAM,EAAA,aAAA;wBACNK,IAAM,EAAA,EAAA;wBACNJ,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,eAAQ,CAAA,iCAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH;AACD,SAAA;QAED,OAAOR,QAAAA;AACT,KAAA;AACAU,IAAAA,QAAAA,CAAAA,GAAAA;AACE,QAAA,MAAMV,WAA2B,EAAE;QAEnC,OAAOA,QAAAA;AACT;AACF;;;;"}
1
+ {"version":3,"file":"componentForm.js","sources":["../../../../../admin/src/components/FormModal/component/componentForm.ts"],"sourcesContent":["import { getTrad } from '../../../utils/getTrad';\n\nexport const componentForm = {\n base(prefix = '') {\n const sections = [\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}displayName`,\n type: 'text',\n intlLabel: {\n id: getTrad('contentType.displayName.label'),\n defaultMessage: 'Display Name',\n },\n },\n {\n name: `${prefix}category`,\n type: 'select-category',\n intlLabel: {\n id: getTrad('modalForm.components.create-component.category.label'),\n defaultMessage: 'Select a category or enter a name to create a new one',\n },\n },\n ],\n },\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}icon`,\n type: 'icon-picker',\n size: 12,\n intlLabel: {\n id: getTrad('modalForm.components.icon.label'),\n defaultMessage: 'Icon',\n },\n },\n ],\n },\n ];\n\n return sections;\n },\n advanced() {\n const sections: Array<unknown> = [];\n\n return sections;\n },\n};\n"],"names":["componentForm","base","prefix","sections","sectionTitle","items","name","type","intlLabel","id","getTrad","defaultMessage","size","advanced"],"mappings":";;;;MAEaA,aAAgB,GAAA;AAC3BC,IAAAA,IAAAA,CAAAA,CAAKC,SAAS,EAAE,EAAA;AACd,QAAA,MAAMC,QAAW,GAAA;AACf,YAAA;gBACEC,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;wBACEC,IAAM,EAAA,CAAA,EAAGJ,MAAO,CAAA,WAAW,CAAC;wBAC5BK,IAAM,EAAA,MAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,eAAQ,CAAA,+BAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF,qBAAA;AACA,oBAAA;wBACEL,IAAM,EAAA,CAAA,EAAGJ,MAAO,CAAA,QAAQ,CAAC;wBACzBK,IAAM,EAAA,iBAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,eAAQ,CAAA,sDAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH,aAAA;AACA,YAAA;gBACEP,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;wBACEC,IAAM,EAAA,CAAA,EAAGJ,MAAO,CAAA,IAAI,CAAC;wBACrBK,IAAM,EAAA,aAAA;wBACNK,IAAM,EAAA,EAAA;wBACNJ,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,eAAQ,CAAA,iCAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH;AACD,SAAA;QAED,OAAOR,QAAAA;AACT,KAAA;AACAU,IAAAA,QAAAA,CAAAA,GAAAA;AACE,QAAA,MAAMV,WAA2B,EAAE;QAEnC,OAAOA,QAAAA;AACT;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"componentForm.mjs","sources":["../../../../../admin/src/components/FormModal/component/componentForm.ts"],"sourcesContent":["import { getTrad } from '../../../utils/getTrad';\n\nexport const componentForm = {\n base(prefix = '') {\n const sections = [\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}displayName`,\n type: 'text',\n intlLabel: {\n id: getTrad('contentType.displayName.label'),\n defaultMessage: 'Display Name',\n },\n },\n {\n name: `${prefix}category`,\n type: 'select-category',\n intlLabel: {\n id: getTrad('modalForm.components.create-component.category.label'),\n defaultMessage: 'Select a category or enter a name to create a new one',\n },\n },\n ],\n },\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}icon`,\n type: 'icon-picker',\n size: 12,\n intlLabel: {\n id: getTrad('modalForm.components.icon.label'),\n defaultMessage: 'Icon',\n },\n },\n ],\n },\n ];\n\n return sections;\n },\n advanced() {\n const sections: Array<unknown> = [];\n\n return sections;\n },\n};\n"],"names":["componentForm","base","prefix","sections","sectionTitle","items","name","type","intlLabel","id","getTrad","defaultMessage","size","advanced"],"mappings":";;MAEaA,aAAgB,GAAA;AAC3BC,IAAAA,IAAAA,CAAAA,CAAKC,SAAS,EAAE,EAAA;AACd,QAAA,MAAMC,QAAW,GAAA;AACf,YAAA;gBACEC,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;AACEC,wBAAAA,IAAAA,EAAM,CAAC,EAAEJ,MAAO,CAAA,WAAW,CAAC;wBAC5BK,IAAM,EAAA,MAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,OAAQ,CAAA,+BAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF,qBAAA;AACA,oBAAA;AACEL,wBAAAA,IAAAA,EAAM,CAAC,EAAEJ,MAAO,CAAA,QAAQ,CAAC;wBACzBK,IAAM,EAAA,iBAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,OAAQ,CAAA,sDAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH,aAAA;AACA,YAAA;gBACEP,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;AACEC,wBAAAA,IAAAA,EAAM,CAAC,EAAEJ,MAAO,CAAA,IAAI,CAAC;wBACrBK,IAAM,EAAA,aAAA;wBACNK,IAAM,EAAA,EAAA;wBACNJ,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,OAAQ,CAAA,iCAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH;AACD,SAAA;QAED,OAAOR,QAAAA;AACT,KAAA;AACAU,IAAAA,QAAAA,CAAAA,GAAAA;AACE,QAAA,MAAMV,WAA2B,EAAE;QAEnC,OAAOA,QAAAA;AACT;AACF;;;;"}
1
+ {"version":3,"file":"componentForm.mjs","sources":["../../../../../admin/src/components/FormModal/component/componentForm.ts"],"sourcesContent":["import { getTrad } from '../../../utils/getTrad';\n\nexport const componentForm = {\n base(prefix = '') {\n const sections = [\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}displayName`,\n type: 'text',\n intlLabel: {\n id: getTrad('contentType.displayName.label'),\n defaultMessage: 'Display Name',\n },\n },\n {\n name: `${prefix}category`,\n type: 'select-category',\n intlLabel: {\n id: getTrad('modalForm.components.create-component.category.label'),\n defaultMessage: 'Select a category or enter a name to create a new one',\n },\n },\n ],\n },\n {\n sectionTitle: null,\n items: [\n {\n name: `${prefix}icon`,\n type: 'icon-picker',\n size: 12,\n intlLabel: {\n id: getTrad('modalForm.components.icon.label'),\n defaultMessage: 'Icon',\n },\n },\n ],\n },\n ];\n\n return sections;\n },\n advanced() {\n const sections: Array<unknown> = [];\n\n return sections;\n },\n};\n"],"names":["componentForm","base","prefix","sections","sectionTitle","items","name","type","intlLabel","id","getTrad","defaultMessage","size","advanced"],"mappings":";;MAEaA,aAAgB,GAAA;AAC3BC,IAAAA,IAAAA,CAAAA,CAAKC,SAAS,EAAE,EAAA;AACd,QAAA,MAAMC,QAAW,GAAA;AACf,YAAA;gBACEC,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;wBACEC,IAAM,EAAA,CAAA,EAAGJ,MAAO,CAAA,WAAW,CAAC;wBAC5BK,IAAM,EAAA,MAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,OAAQ,CAAA,+BAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF,qBAAA;AACA,oBAAA;wBACEL,IAAM,EAAA,CAAA,EAAGJ,MAAO,CAAA,QAAQ,CAAC;wBACzBK,IAAM,EAAA,iBAAA;wBACNC,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,OAAQ,CAAA,sDAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH,aAAA;AACA,YAAA;gBACEP,YAAc,EAAA,IAAA;gBACdC,KAAO,EAAA;AACL,oBAAA;wBACEC,IAAM,EAAA,CAAA,EAAGJ,MAAO,CAAA,IAAI,CAAC;wBACrBK,IAAM,EAAA,aAAA;wBACNK,IAAM,EAAA,EAAA;wBACNJ,SAAW,EAAA;AACTC,4BAAAA,EAAAA,EAAIC,OAAQ,CAAA,iCAAA,CAAA;4BACZC,cAAgB,EAAA;AAClB;AACF;AACD;AACH;AACD,SAAA;QAED,OAAOR,QAAAA;AACT,KAAA;AACAU,IAAAA,QAAAA,CAAAA,GAAAA;AACE,QAAA,MAAMV,WAA2B,EAAE;QAEnC,OAAOA,QAAAA;AACT;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createCollectionName.js","sources":["../../../../../../admin/src/components/FormModal/forms/utils/createCollectionName.ts"],"sourcesContent":["import { snakeCase } from 'lodash/fp';\nimport pluralize from 'pluralize';\n\n// TODO: create a utility for this\n// Duplicate in server/src/services/schema-builder/component-builder.ts\nconst createComponentCollectionName = (name: string, category: string) => {\n return `components_${snakeCase(category)}_${pluralize(snakeCase(name))}`;\n};\n\nexport { createComponentCollectionName };\n"],"names":["createComponentCollectionName","name","category","snakeCase","pluralize"],"mappings":";;;;;AAGA;AACA;AACMA,MAAAA,6BAAAA,GAAgC,CAACC,IAAcC,EAAAA,QAAAA,GAAAA;IACnD,OAAO,CAAC,WAAW,EAAEC,YAAUD,CAAAA,QAAAA,CAAAA,CAAU,CAAC,EAAEE,SAAAA,CAAUD,YAAUF,CAAAA,IAAAA,CAAAA,CAAAA,CAAO,CAAC;AAC1E;;;;"}
1
+ {"version":3,"file":"createCollectionName.js","sources":["../../../../../../admin/src/components/FormModal/forms/utils/createCollectionName.ts"],"sourcesContent":["import { snakeCase } from 'lodash/fp';\nimport pluralize from 'pluralize';\n\n// TODO: create a utility for this\n// Duplicate in server/src/services/schema-builder/component-builder.ts\nconst createComponentCollectionName = (name: string, category: string) => {\n return `components_${snakeCase(category)}_${pluralize(snakeCase(name))}`;\n};\n\nexport { createComponentCollectionName };\n"],"names":["createComponentCollectionName","name","category","snakeCase","pluralize"],"mappings":";;;;;AAGA;AACA;AACMA,MAAAA,6BAAAA,GAAgC,CAACC,IAAcC,EAAAA,QAAAA,GAAAA;IACnD,OAAO,CAAC,WAAW,EAAEC,YAAAA,CAAUD,UAAU,CAAC,EAAEE,SAAUD,CAAAA,YAAAA,CAAUF,IAAQ,CAAA,CAAA,CAAA,CAAA;AAC1E;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createCollectionName.mjs","sources":["../../../../../../admin/src/components/FormModal/forms/utils/createCollectionName.ts"],"sourcesContent":["import { snakeCase } from 'lodash/fp';\nimport pluralize from 'pluralize';\n\n// TODO: create a utility for this\n// Duplicate in server/src/services/schema-builder/component-builder.ts\nconst createComponentCollectionName = (name: string, category: string) => {\n return `components_${snakeCase(category)}_${pluralize(snakeCase(name))}`;\n};\n\nexport { createComponentCollectionName };\n"],"names":["createComponentCollectionName","name","category","snakeCase","pluralize"],"mappings":";;;AAGA;AACA;AACMA,MAAAA,6BAAAA,GAAgC,CAACC,IAAcC,EAAAA,QAAAA,GAAAA;IACnD,OAAO,CAAC,WAAW,EAAEC,SAAUD,CAAAA,QAAAA,CAAAA,CAAU,CAAC,EAAEE,SAAAA,CAAUD,SAAUF,CAAAA,IAAAA,CAAAA,CAAAA,CAAO,CAAC;AAC1E;;;;"}
1
+ {"version":3,"file":"createCollectionName.mjs","sources":["../../../../../../admin/src/components/FormModal/forms/utils/createCollectionName.ts"],"sourcesContent":["import { snakeCase } from 'lodash/fp';\nimport pluralize from 'pluralize';\n\n// TODO: create a utility for this\n// Duplicate in server/src/services/schema-builder/component-builder.ts\nconst createComponentCollectionName = (name: string, category: string) => {\n return `components_${snakeCase(category)}_${pluralize(snakeCase(name))}`;\n};\n\nexport { createComponentCollectionName };\n"],"names":["createComponentCollectionName","name","category","snakeCase","pluralize"],"mappings":";;;AAGA;AACA;AACMA,MAAAA,6BAAAA,GAAgC,CAACC,IAAcC,EAAAA,QAAAA,GAAAA;IACnD,OAAO,CAAC,WAAW,EAAEC,SAAAA,CAAUD,UAAU,CAAC,EAAEE,SAAUD,CAAAA,SAAAA,CAAUF,IAAQ,CAAA,CAAA,CAAA,CAAA;AAC1E;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createUid.js","sources":["../../../../../admin/src/components/FormModal/utils/createUid.ts"],"sourcesContent":["import { nameToSlug } from '../../../utils/nameToSlug';\n\nimport type { Internal } from '@strapi/types';\n\nconst createUid = (name: string): Internal.UID.ContentType => {\n const modelName = nameToSlug(name);\n return `api::${modelName}.${modelName}`;\n};\n\n// From `content-type-builder/services/Components/createComponentUid`\nconst createComponentUid = (name: string, category: string): Internal.UID.Component => {\n return `${nameToSlug(category)}.${nameToSlug(name)}`;\n};\n\nexport { createComponentUid, createUid };\n"],"names":["createUid","name","modelName","nameToSlug","createComponentUid","category"],"mappings":";;;;AAIA,MAAMA,YAAY,CAACC,IAAAA,GAAAA;AACjB,IAAA,MAAMC,YAAYC,qBAAWF,CAAAA,IAAAA,CAAAA;AAC7B,IAAA,OAAO,CAAC,KAAK,EAAEC,UAAU,CAAC,EAAEA,UAAU,CAAC;AACzC;AAEA;AACME,MAAAA,kBAAAA,GAAqB,CAACH,IAAcI,EAAAA,QAAAA,GAAAA;IACxC,OAAO,CAAC,EAAEF,qBAAWE,CAAAA,QAAAA,CAAAA,CAAU,CAAC,EAAEF,qBAAAA,CAAWF,MAAM,CAAC;AACtD;;;;;"}
1
+ {"version":3,"file":"createUid.js","sources":["../../../../../admin/src/components/FormModal/utils/createUid.ts"],"sourcesContent":["import { nameToSlug } from '../../../utils/nameToSlug';\n\nimport type { Internal } from '@strapi/types';\n\nconst createUid = (name: string): Internal.UID.ContentType => {\n const modelName = nameToSlug(name);\n return `api::${modelName}.${modelName}`;\n};\n\n// From `content-type-builder/services/Components/createComponentUid`\nconst createComponentUid = (name: string, category: string): Internal.UID.Component => {\n return `${nameToSlug(category)}.${nameToSlug(name)}`;\n};\n\nexport { createComponentUid, createUid };\n"],"names":["createUid","name","modelName","nameToSlug","createComponentUid","category"],"mappings":";;;;AAIA,MAAMA,YAAY,CAACC,IAAAA,GAAAA;AACjB,IAAA,MAAMC,YAAYC,qBAAWF,CAAAA,IAAAA,CAAAA;AAC7B,IAAA,OAAO,CAAC,KAAK,EAAEC,SAAU,CAAA,CAAC,EAAEA,SAAW,CAAA,CAAA;AACzC;AAEA;AACME,MAAAA,kBAAAA,GAAqB,CAACH,IAAcI,EAAAA,QAAAA,GAAAA;AACxC,IAAA,OAAO,GAAGF,qBAAWE,CAAAA,QAAAA,CAAAA,CAAU,CAAC,EAAEF,sBAAWF,IAAO,CAAA,CAAA,CAAA;AACtD;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"createUid.mjs","sources":["../../../../../admin/src/components/FormModal/utils/createUid.ts"],"sourcesContent":["import { nameToSlug } from '../../../utils/nameToSlug';\n\nimport type { Internal } from '@strapi/types';\n\nconst createUid = (name: string): Internal.UID.ContentType => {\n const modelName = nameToSlug(name);\n return `api::${modelName}.${modelName}`;\n};\n\n// From `content-type-builder/services/Components/createComponentUid`\nconst createComponentUid = (name: string, category: string): Internal.UID.Component => {\n return `${nameToSlug(category)}.${nameToSlug(name)}`;\n};\n\nexport { createComponentUid, createUid };\n"],"names":["createUid","name","modelName","nameToSlug","createComponentUid","category"],"mappings":";;AAIA,MAAMA,YAAY,CAACC,IAAAA,GAAAA;AACjB,IAAA,MAAMC,YAAYC,UAAWF,CAAAA,IAAAA,CAAAA;AAC7B,IAAA,OAAO,CAAC,KAAK,EAAEC,UAAU,CAAC,EAAEA,UAAU,CAAC;AACzC;AAEA;AACME,MAAAA,kBAAAA,GAAqB,CAACH,IAAcI,EAAAA,QAAAA,GAAAA;IACxC,OAAO,CAAC,EAAEF,UAAWE,CAAAA,QAAAA,CAAAA,CAAU,CAAC,EAAEF,UAAAA,CAAWF,MAAM,CAAC;AACtD;;;;"}
1
+ {"version":3,"file":"createUid.mjs","sources":["../../../../../admin/src/components/FormModal/utils/createUid.ts"],"sourcesContent":["import { nameToSlug } from '../../../utils/nameToSlug';\n\nimport type { Internal } from '@strapi/types';\n\nconst createUid = (name: string): Internal.UID.ContentType => {\n const modelName = nameToSlug(name);\n return `api::${modelName}.${modelName}`;\n};\n\n// From `content-type-builder/services/Components/createComponentUid`\nconst createComponentUid = (name: string, category: string): Internal.UID.Component => {\n return `${nameToSlug(category)}.${nameToSlug(name)}`;\n};\n\nexport { createComponentUid, createUid };\n"],"names":["createUid","name","modelName","nameToSlug","createComponentUid","category"],"mappings":";;AAIA,MAAMA,YAAY,CAACC,IAAAA,GAAAA;AACjB,IAAA,MAAMC,YAAYC,UAAWF,CAAAA,IAAAA,CAAAA;AAC7B,IAAA,OAAO,CAAC,KAAK,EAAEC,SAAU,CAAA,CAAC,EAAEA,SAAW,CAAA,CAAA;AACzC;AAEA;AACME,MAAAA,kBAAAA,GAAqB,CAACH,IAAcI,EAAAA,QAAAA,GAAAA;AACxC,IAAA,OAAO,GAAGF,UAAWE,CAAAA,QAAAA,CAAAA,CAAU,CAAC,EAAEF,WAAWF,IAAO,CAAA,CAAA,CAAA;AACtD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormModalHeader.js","sources":["../../../admin/src/components/FormModalHeader.tsx"],"sourcesContent":["/**\n *\n * FormModalHeader\n *\n */\nimport { Box, Flex, Breadcrumbs, Crumb, Link, Modal } from '@strapi/design-system';\nimport { ArrowLeft } from '@strapi/icons';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport { AttributeIcon, IconByType } from './AttributeIcon';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\n\nimport type { Internal } from '@strapi/types';\n\ninterface Header {\n label: string;\n info?: { category: string; name: string };\n}\n\ntype BaseProps = {\n actionType?: string | null;\n attributeName: string;\n attributeType: IconByType;\n contentTypeKind: IconByType;\n dynamicZoneTarget: string;\n modalType: string | null;\n customFieldUid?: string | null;\n showBackLink?: boolean;\n};\n\ntype FormModalHeaderProps = BaseProps &\n (\n | { forTarget: 'component'; targetUid: Internal.UID.Component }\n | { forTarget: 'contentType'; targetUid: Internal.UID.ContentType }\n );\n\nexport const FormModalHeader = ({\n actionType = null,\n attributeName,\n attributeType,\n contentTypeKind,\n dynamicZoneTarget,\n forTarget,\n modalType = null,\n targetUid,\n customFieldUid = null,\n showBackLink = false,\n}: FormModalHeaderProps) => {\n const { formatMessage } = useIntl();\n const { components, contentTypes } = useDataManager();\n const { onOpenModalAddField } = useFormModalNavigation();\n\n let icon: IconByType = 'component';\n let headers: Header[] = [];\n\n const type = forTarget === 'component' ? components[targetUid] : contentTypes[targetUid];\n\n const displayName = type?.info.displayName;\n\n if (modalType === 'contentType') {\n icon = contentTypeKind;\n }\n\n if (['component'].includes(modalType || '')) {\n icon = 'component';\n }\n\n const isCreatingMainSchema = ['component', 'contentType'].includes(modalType || '');\n\n if (isCreatingMainSchema) {\n let headerId = getTrad(`modalForm.component.header-${actionType}`);\n\n if (modalType === 'contentType') {\n headerId = getTrad(`modalForm.${contentTypeKind}.header-create`);\n }\n\n if (actionType === 'edit') {\n headerId = getTrad(`modalForm.header-edit`);\n }\n\n return (\n <Modal.Header>\n <Flex>\n <Box>\n <AttributeIcon type={icon} />\n </Box>\n <Box paddingLeft={3}>\n <Modal.Title>{formatMessage({ id: headerId }, { name: displayName })}</Modal.Title>\n </Box>\n </Flex>\n </Modal.Header>\n );\n }\n\n headers = [\n {\n label: displayName,\n info: {\n category: ('category' in type && type?.category) || '',\n name: type?.info?.displayName,\n },\n },\n ];\n\n if (modalType === 'chooseAttribute') {\n icon = forTarget === 'component' ? 'component' : 'kind' in type ? type.kind : '';\n }\n\n if (modalType === 'addComponentToDynamicZone') {\n icon = 'dynamiczone';\n headers.push({ label: dynamicZoneTarget });\n }\n\n if (modalType === 'attribute' || modalType === 'customField') {\n icon = attributeType;\n headers.push({ label: attributeName });\n }\n\n return (\n <Modal.Header>\n <Flex gap={3}>\n {showBackLink && (\n // This is a workaround and should use the LinkButton with a variant that currently doesn't exist\n <Link\n aria-label={formatMessage({\n id: getTrad('modalForm.header.back'),\n defaultMessage: 'Back',\n })}\n startIcon={<ArrowLeft />}\n onClick={() => onOpenModalAddField({ forTarget, targetUid })}\n href=\"#back\"\n isExternal={false}\n />\n )}\n <AttributeIcon type={icon} customField={customFieldUid} />\n\n <Breadcrumbs label={headers.map(({ label }) => label).join(',')}>\n {headers.map(({ label, info }, index, arr) => {\n label = upperFirst(label);\n\n if (!label) {\n return null;\n }\n\n const key = `${label}.${index}`;\n\n if (info?.category) {\n label = `${label} (${upperFirst(info.category)} - ${upperFirst(info.name)})`;\n }\n\n return (\n <Crumb isCurrent={index === arr.length - 1} key={key}>\n {label}\n </Crumb>\n );\n })}\n </Breadcrumbs>\n </Flex>\n </Modal.Header>\n );\n};\n"],"names":["FormModalHeader","actionType","attributeName","attributeType","contentTypeKind","dynamicZoneTarget","forTarget","modalType","targetUid","customFieldUid","showBackLink","formatMessage","useIntl","components","contentTypes","useDataManager","onOpenModalAddField","useFormModalNavigation","icon","headers","type","displayName","info","includes","isCreatingMainSchema","headerId","getTrad","_jsx","Modal","Header","_jsxs","Flex","Box","AttributeIcon","paddingLeft","Title","id","name","label","category","kind","push","gap","Link","aria-label","defaultMessage","startIcon","ArrowLeft","onClick","href","isExternal","customField","Breadcrumbs","map","join","index","arr","upperFirst","key","Crumb","isCurrent","length"],"mappings":"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"}
1
+ {"version":3,"file":"FormModalHeader.js","sources":["../../../admin/src/components/FormModalHeader.tsx"],"sourcesContent":["/**\n *\n * FormModalHeader\n *\n */\nimport { Box, Flex, Breadcrumbs, Crumb, Link, Modal } from '@strapi/design-system';\nimport { ArrowLeft } from '@strapi/icons';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport { AttributeIcon, IconByType } from './AttributeIcon';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\n\nimport type { Internal } from '@strapi/types';\n\ninterface Header {\n label: string;\n info?: { category: string; name: string };\n}\n\ntype BaseProps = {\n actionType?: string | null;\n attributeName: string;\n attributeType: IconByType;\n contentTypeKind: IconByType;\n dynamicZoneTarget: string;\n modalType: string | null;\n customFieldUid?: string | null;\n showBackLink?: boolean;\n};\n\ntype FormModalHeaderProps = BaseProps &\n (\n | { forTarget: 'component'; targetUid: Internal.UID.Component }\n | { forTarget: 'contentType'; targetUid: Internal.UID.ContentType }\n );\n\nexport const FormModalHeader = ({\n actionType = null,\n attributeName,\n attributeType,\n contentTypeKind,\n dynamicZoneTarget,\n forTarget,\n modalType = null,\n targetUid,\n customFieldUid = null,\n showBackLink = false,\n}: FormModalHeaderProps) => {\n const { formatMessage } = useIntl();\n const { components, contentTypes } = useDataManager();\n const { onOpenModalAddField } = useFormModalNavigation();\n\n let icon: IconByType = 'component';\n let headers: Header[] = [];\n\n const type = forTarget === 'component' ? components[targetUid] : contentTypes[targetUid];\n\n const displayName = type?.info.displayName;\n\n if (modalType === 'contentType') {\n icon = contentTypeKind;\n }\n\n if (['component'].includes(modalType || '')) {\n icon = 'component';\n }\n\n const isCreatingMainSchema = ['component', 'contentType'].includes(modalType || '');\n\n if (isCreatingMainSchema) {\n let headerId = getTrad(`modalForm.component.header-${actionType}`);\n\n if (modalType === 'contentType') {\n headerId = getTrad(`modalForm.${contentTypeKind}.header-create`);\n }\n\n if (actionType === 'edit') {\n headerId = getTrad(`modalForm.header-edit`);\n }\n\n return (\n <Modal.Header>\n <Flex>\n <Box>\n <AttributeIcon type={icon} />\n </Box>\n <Box paddingLeft={3}>\n <Modal.Title>{formatMessage({ id: headerId }, { name: displayName })}</Modal.Title>\n </Box>\n </Flex>\n </Modal.Header>\n );\n }\n\n headers = [\n {\n label: displayName,\n info: {\n category: ('category' in type && type?.category) || '',\n name: type?.info?.displayName,\n },\n },\n ];\n\n if (modalType === 'chooseAttribute') {\n icon = forTarget === 'component' ? 'component' : 'kind' in type ? type.kind : '';\n }\n\n if (modalType === 'addComponentToDynamicZone') {\n icon = 'dynamiczone';\n headers.push({ label: dynamicZoneTarget });\n }\n\n if (modalType === 'attribute' || modalType === 'customField') {\n icon = attributeType;\n headers.push({ label: attributeName });\n }\n\n return (\n <Modal.Header>\n <Flex gap={3}>\n {showBackLink && (\n // This is a workaround and should use the LinkButton with a variant that currently doesn't exist\n <Link\n aria-label={formatMessage({\n id: getTrad('modalForm.header.back'),\n defaultMessage: 'Back',\n })}\n startIcon={<ArrowLeft />}\n onClick={() => onOpenModalAddField({ forTarget, targetUid })}\n href=\"#back\"\n isExternal={false}\n />\n )}\n <AttributeIcon type={icon} customField={customFieldUid} />\n\n <Breadcrumbs label={headers.map(({ label }) => label).join(',')}>\n {headers.map(({ label, info }, index, arr) => {\n label = upperFirst(label);\n\n if (!label) {\n return null;\n }\n\n const key = `${label}.${index}`;\n\n if (info?.category) {\n label = `${label} (${upperFirst(info.category)} - ${upperFirst(info.name)})`;\n }\n\n return (\n <Crumb isCurrent={index === arr.length - 1} key={key}>\n {label}\n </Crumb>\n );\n })}\n </Breadcrumbs>\n </Flex>\n </Modal.Header>\n );\n};\n"],"names":["FormModalHeader","actionType","attributeName","attributeType","contentTypeKind","dynamicZoneTarget","forTarget","modalType","targetUid","customFieldUid","showBackLink","formatMessage","useIntl","components","contentTypes","useDataManager","onOpenModalAddField","useFormModalNavigation","icon","headers","type","displayName","info","includes","isCreatingMainSchema","headerId","getTrad","_jsx","Modal","Header","_jsxs","Flex","Box","AttributeIcon","paddingLeft","Title","id","name","label","category","kind","push","gap","Link","aria-label","defaultMessage","startIcon","ArrowLeft","onClick","href","isExternal","customField","Breadcrumbs","map","join","index","arr","upperFirst","key","Crumb","isCurrent","length"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormModalHeader.mjs","sources":["../../../admin/src/components/FormModalHeader.tsx"],"sourcesContent":["/**\n *\n * FormModalHeader\n *\n */\nimport { Box, Flex, Breadcrumbs, Crumb, Link, Modal } from '@strapi/design-system';\nimport { ArrowLeft } from '@strapi/icons';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport { AttributeIcon, IconByType } from './AttributeIcon';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\n\nimport type { Internal } from '@strapi/types';\n\ninterface Header {\n label: string;\n info?: { category: string; name: string };\n}\n\ntype BaseProps = {\n actionType?: string | null;\n attributeName: string;\n attributeType: IconByType;\n contentTypeKind: IconByType;\n dynamicZoneTarget: string;\n modalType: string | null;\n customFieldUid?: string | null;\n showBackLink?: boolean;\n};\n\ntype FormModalHeaderProps = BaseProps &\n (\n | { forTarget: 'component'; targetUid: Internal.UID.Component }\n | { forTarget: 'contentType'; targetUid: Internal.UID.ContentType }\n );\n\nexport const FormModalHeader = ({\n actionType = null,\n attributeName,\n attributeType,\n contentTypeKind,\n dynamicZoneTarget,\n forTarget,\n modalType = null,\n targetUid,\n customFieldUid = null,\n showBackLink = false,\n}: FormModalHeaderProps) => {\n const { formatMessage } = useIntl();\n const { components, contentTypes } = useDataManager();\n const { onOpenModalAddField } = useFormModalNavigation();\n\n let icon: IconByType = 'component';\n let headers: Header[] = [];\n\n const type = forTarget === 'component' ? components[targetUid] : contentTypes[targetUid];\n\n const displayName = type?.info.displayName;\n\n if (modalType === 'contentType') {\n icon = contentTypeKind;\n }\n\n if (['component'].includes(modalType || '')) {\n icon = 'component';\n }\n\n const isCreatingMainSchema = ['component', 'contentType'].includes(modalType || '');\n\n if (isCreatingMainSchema) {\n let headerId = getTrad(`modalForm.component.header-${actionType}`);\n\n if (modalType === 'contentType') {\n headerId = getTrad(`modalForm.${contentTypeKind}.header-create`);\n }\n\n if (actionType === 'edit') {\n headerId = getTrad(`modalForm.header-edit`);\n }\n\n return (\n <Modal.Header>\n <Flex>\n <Box>\n <AttributeIcon type={icon} />\n </Box>\n <Box paddingLeft={3}>\n <Modal.Title>{formatMessage({ id: headerId }, { name: displayName })}</Modal.Title>\n </Box>\n </Flex>\n </Modal.Header>\n );\n }\n\n headers = [\n {\n label: displayName,\n info: {\n category: ('category' in type && type?.category) || '',\n name: type?.info?.displayName,\n },\n },\n ];\n\n if (modalType === 'chooseAttribute') {\n icon = forTarget === 'component' ? 'component' : 'kind' in type ? type.kind : '';\n }\n\n if (modalType === 'addComponentToDynamicZone') {\n icon = 'dynamiczone';\n headers.push({ label: dynamicZoneTarget });\n }\n\n if (modalType === 'attribute' || modalType === 'customField') {\n icon = attributeType;\n headers.push({ label: attributeName });\n }\n\n return (\n <Modal.Header>\n <Flex gap={3}>\n {showBackLink && (\n // This is a workaround and should use the LinkButton with a variant that currently doesn't exist\n <Link\n aria-label={formatMessage({\n id: getTrad('modalForm.header.back'),\n defaultMessage: 'Back',\n })}\n startIcon={<ArrowLeft />}\n onClick={() => onOpenModalAddField({ forTarget, targetUid })}\n href=\"#back\"\n isExternal={false}\n />\n )}\n <AttributeIcon type={icon} customField={customFieldUid} />\n\n <Breadcrumbs label={headers.map(({ label }) => label).join(',')}>\n {headers.map(({ label, info }, index, arr) => {\n label = upperFirst(label);\n\n if (!label) {\n return null;\n }\n\n const key = `${label}.${index}`;\n\n if (info?.category) {\n label = `${label} (${upperFirst(info.category)} - ${upperFirst(info.name)})`;\n }\n\n return (\n <Crumb isCurrent={index === arr.length - 1} key={key}>\n {label}\n </Crumb>\n );\n })}\n </Breadcrumbs>\n </Flex>\n </Modal.Header>\n );\n};\n"],"names":["FormModalHeader","actionType","attributeName","attributeType","contentTypeKind","dynamicZoneTarget","forTarget","modalType","targetUid","customFieldUid","showBackLink","formatMessage","useIntl","components","contentTypes","useDataManager","onOpenModalAddField","useFormModalNavigation","icon","headers","type","displayName","info","includes","isCreatingMainSchema","headerId","getTrad","_jsx","Modal","Header","_jsxs","Flex","Box","AttributeIcon","paddingLeft","Title","id","name","label","category","kind","push","gap","Link","aria-label","defaultMessage","startIcon","ArrowLeft","onClick","href","isExternal","customField","Breadcrumbs","map","join","index","arr","upperFirst","key","Crumb","isCurrent","length"],"mappings":"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"}
1
+ {"version":3,"file":"FormModalHeader.mjs","sources":["../../../admin/src/components/FormModalHeader.tsx"],"sourcesContent":["/**\n *\n * FormModalHeader\n *\n */\nimport { Box, Flex, Breadcrumbs, Crumb, Link, Modal } from '@strapi/design-system';\nimport { ArrowLeft } from '@strapi/icons';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport { AttributeIcon, IconByType } from './AttributeIcon';\nimport { useDataManager } from './DataManager/useDataManager';\nimport { useFormModalNavigation } from './FormModalNavigation/useFormModalNavigation';\n\nimport type { Internal } from '@strapi/types';\n\ninterface Header {\n label: string;\n info?: { category: string; name: string };\n}\n\ntype BaseProps = {\n actionType?: string | null;\n attributeName: string;\n attributeType: IconByType;\n contentTypeKind: IconByType;\n dynamicZoneTarget: string;\n modalType: string | null;\n customFieldUid?: string | null;\n showBackLink?: boolean;\n};\n\ntype FormModalHeaderProps = BaseProps &\n (\n | { forTarget: 'component'; targetUid: Internal.UID.Component }\n | { forTarget: 'contentType'; targetUid: Internal.UID.ContentType }\n );\n\nexport const FormModalHeader = ({\n actionType = null,\n attributeName,\n attributeType,\n contentTypeKind,\n dynamicZoneTarget,\n forTarget,\n modalType = null,\n targetUid,\n customFieldUid = null,\n showBackLink = false,\n}: FormModalHeaderProps) => {\n const { formatMessage } = useIntl();\n const { components, contentTypes } = useDataManager();\n const { onOpenModalAddField } = useFormModalNavigation();\n\n let icon: IconByType = 'component';\n let headers: Header[] = [];\n\n const type = forTarget === 'component' ? components[targetUid] : contentTypes[targetUid];\n\n const displayName = type?.info.displayName;\n\n if (modalType === 'contentType') {\n icon = contentTypeKind;\n }\n\n if (['component'].includes(modalType || '')) {\n icon = 'component';\n }\n\n const isCreatingMainSchema = ['component', 'contentType'].includes(modalType || '');\n\n if (isCreatingMainSchema) {\n let headerId = getTrad(`modalForm.component.header-${actionType}`);\n\n if (modalType === 'contentType') {\n headerId = getTrad(`modalForm.${contentTypeKind}.header-create`);\n }\n\n if (actionType === 'edit') {\n headerId = getTrad(`modalForm.header-edit`);\n }\n\n return (\n <Modal.Header>\n <Flex>\n <Box>\n <AttributeIcon type={icon} />\n </Box>\n <Box paddingLeft={3}>\n <Modal.Title>{formatMessage({ id: headerId }, { name: displayName })}</Modal.Title>\n </Box>\n </Flex>\n </Modal.Header>\n );\n }\n\n headers = [\n {\n label: displayName,\n info: {\n category: ('category' in type && type?.category) || '',\n name: type?.info?.displayName,\n },\n },\n ];\n\n if (modalType === 'chooseAttribute') {\n icon = forTarget === 'component' ? 'component' : 'kind' in type ? type.kind : '';\n }\n\n if (modalType === 'addComponentToDynamicZone') {\n icon = 'dynamiczone';\n headers.push({ label: dynamicZoneTarget });\n }\n\n if (modalType === 'attribute' || modalType === 'customField') {\n icon = attributeType;\n headers.push({ label: attributeName });\n }\n\n return (\n <Modal.Header>\n <Flex gap={3}>\n {showBackLink && (\n // This is a workaround and should use the LinkButton with a variant that currently doesn't exist\n <Link\n aria-label={formatMessage({\n id: getTrad('modalForm.header.back'),\n defaultMessage: 'Back',\n })}\n startIcon={<ArrowLeft />}\n onClick={() => onOpenModalAddField({ forTarget, targetUid })}\n href=\"#back\"\n isExternal={false}\n />\n )}\n <AttributeIcon type={icon} customField={customFieldUid} />\n\n <Breadcrumbs label={headers.map(({ label }) => label).join(',')}>\n {headers.map(({ label, info }, index, arr) => {\n label = upperFirst(label);\n\n if (!label) {\n return null;\n }\n\n const key = `${label}.${index}`;\n\n if (info?.category) {\n label = `${label} (${upperFirst(info.category)} - ${upperFirst(info.name)})`;\n }\n\n return (\n <Crumb isCurrent={index === arr.length - 1} key={key}>\n {label}\n </Crumb>\n );\n })}\n </Breadcrumbs>\n </Flex>\n </Modal.Header>\n );\n};\n"],"names":["FormModalHeader","actionType","attributeName","attributeType","contentTypeKind","dynamicZoneTarget","forTarget","modalType","targetUid","customFieldUid","showBackLink","formatMessage","useIntl","components","contentTypes","useDataManager","onOpenModalAddField","useFormModalNavigation","icon","headers","type","displayName","info","includes","isCreatingMainSchema","headerId","getTrad","_jsx","Modal","Header","_jsxs","Flex","Box","AttributeIcon","paddingLeft","Title","id","name","label","category","kind","push","gap","Link","aria-label","defaultMessage","startIcon","ArrowLeft","onClick","href","isExternal","customField","Breadcrumbs","map","join","index","arr","upperFirst","key","Crumb","isCurrent","length"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormModalSubHeader.js","sources":["../../../admin/src/components/FormModalSubHeader.tsx"],"sourcesContent":["import { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Flex, Typography } from '@strapi/design-system';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport type { Struct } from '@strapi/types';\n\ntype ModalTitleProps = {\n forTarget?: Struct.ModelType;\n step?: string;\n kind?: string;\n modalType?: string;\n actionType?: string;\n};\n\nexport const getModalTitleSubHeader = ({\n modalType,\n forTarget,\n kind,\n actionType,\n step,\n}: ModalTitleProps) => {\n switch (modalType) {\n case 'chooseAttribute':\n return getTrad(\n `modalForm.sub-header.chooseAttribute.${\n forTarget?.includes('component') ? 'component' : kind || 'collectionType'\n }`\n );\n case 'attribute': {\n return getTrad(\n `modalForm.sub-header.attribute.${actionType}${\n step !== 'null' && step !== null && actionType !== 'edit' ? '.step' : ''\n }`\n );\n }\n case 'customField': {\n return getTrad(`modalForm.sub-header.attribute.${actionType}`);\n }\n case 'addComponentToDynamicZone':\n return getTrad('modalForm.sub-header.addComponentToDynamicZone');\n default:\n return getTrad('configurations');\n }\n};\n\ntype FormModalSubHeaderProps = {\n actionType: string;\n modalType: string;\n forTarget: Struct.ModelType;\n kind?: string;\n step?: string;\n attributeType: string;\n attributeName: string;\n customField?: ReturnType<StrapiAppContextValue['customFields']['get']>;\n};\n\nexport const FormModalSubHeader = ({\n actionType,\n modalType,\n forTarget,\n kind,\n step,\n attributeType,\n attributeName,\n customField,\n}: FormModalSubHeaderProps) => {\n const { formatMessage } = useIntl();\n const intlLabel =\n modalType === 'customField'\n ? customField?.intlLabel\n : { id: getTrad(`attribute.${attributeType}`) };\n\n return (\n <Flex direction=\"column\" alignItems=\"flex-start\" paddingBottom={1} gap={1}>\n <Typography tag=\"h2\" variant=\"beta\">\n {formatMessage(\n {\n id: getModalTitleSubHeader({\n actionType,\n forTarget,\n kind,\n step,\n modalType,\n }),\n defaultMessage: 'Add new field',\n },\n {\n type: intlLabel ? upperFirst(formatMessage(intlLabel)) : '',\n name: upperFirst(attributeName),\n step,\n }\n )}\n </Typography>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad(`attribute.${attributeType}.description`),\n defaultMessage: 'A type for modeling data',\n })}\n </Typography>\n </Flex>\n );\n};\n"],"names":["getModalTitleSubHeader","modalType","forTarget","kind","actionType","step","getTrad","includes","FormModalSubHeader","attributeType","attributeName","customField","formatMessage","useIntl","intlLabel","id","_jsxs","Flex","direction","alignItems","paddingBottom","gap","_jsx","Typography","tag","variant","defaultMessage","type","upperFirst","name","textColor"],"mappings":";;;;;;;;AAiBaA,MAAAA,sBAAAA,GAAyB,CAAC,EACrCC,SAAS,EACTC,SAAS,EACTC,IAAI,EACJC,UAAU,EACVC,IAAI,EACY,GAAA;IAChB,OAAQJ,SAAAA;QACN,KAAK,iBAAA;YACH,OAAOK,eAAAA,CACL,CAAC,qCAAqC,EACpCJ,SAAAA,EAAWK,SAAS,WAAe,CAAA,GAAA,WAAA,GAAcJ,IAAQ,IAAA,gBAAA,CAC1D,CAAC,CAAA;QAEN,KAAK,WAAA;AAAa,YAAA;AAChB,gBAAA,OAAOG,eACL,CAAA,CAAC,+BAA+B,EAAEF,WAAW,EAC3CC,IAAAA,KAAS,MAAUA,IAAAA,IAAAA,KAAS,IAAQD,IAAAA,UAAAA,KAAe,MAAS,GAAA,OAAA,GAAU,GACvE,CAAC,CAAA;AAEN;QACA,KAAK,aAAA;AAAe,YAAA;AAClB,gBAAA,OAAOE,eAAQ,CAAA,CAAC,+BAA+B,EAAEF,WAAW,CAAC,CAAA;AAC/D;QACA,KAAK,2BAAA;AACH,YAAA,OAAOE,eAAQ,CAAA,gDAAA,CAAA;AACjB,QAAA;AACE,YAAA,OAAOA,eAAQ,CAAA,gBAAA,CAAA;AACnB;AACF;MAaaE,kBAAqB,GAAA,CAAC,EACjCJ,UAAU,EACVH,SAAS,EACTC,SAAS,EACTC,IAAI,EACJE,IAAI,EACJI,aAAa,EACbC,aAAa,EACbC,WAAW,EACa,GAAA;IACxB,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAC1B,IAAA,MAAMC,SACJb,GAAAA,SAAAA,KAAc,aACVU,GAAAA,WAAAA,EAAaG,SACb,GAAA;AAAEC,QAAAA,EAAAA,EAAIT,eAAQ,CAAA,CAAC,UAAU,EAAEG,cAAc,CAAC;AAAE,KAAA;AAElD,IAAA,qBACEO,eAACC,CAAAA,iBAAAA,EAAAA;QAAKC,SAAU,EAAA,QAAA;QAASC,UAAW,EAAA,YAAA;QAAaC,aAAe,EAAA,CAAA;QAAGC,GAAK,EAAA,CAAA;;0BACtEC,cAACC,CAAAA,uBAAAA,EAAAA;gBAAWC,GAAI,EAAA,IAAA;gBAAKC,OAAQ,EAAA,MAAA;0BAC1Bb,aACC,CAAA;AACEG,oBAAAA,EAAAA,EAAIf,sBAAuB,CAAA;AACzBI,wBAAAA,UAAAA;AACAF,wBAAAA,SAAAA;AACAC,wBAAAA,IAAAA;AACAE,wBAAAA,IAAAA;AACAJ,wBAAAA;AACF,qBAAA,CAAA;oBACAyB,cAAgB,EAAA;iBAElB,EAAA;oBACEC,IAAMb,EAAAA,SAAAA,GAAYc,UAAWhB,CAAAA,aAAAA,CAAcE,SAAc,CAAA,CAAA,GAAA,EAAA;AACzDe,oBAAAA,IAAAA,EAAMD,UAAWlB,CAAAA,aAAAA,CAAAA;AACjBL,oBAAAA;AACF,iBAAA;;0BAGJiB,cAACC,CAAAA,uBAAAA,EAAAA;gBAAWE,OAAQ,EAAA,IAAA;gBAAKK,SAAU,EAAA,YAAA;0BAChClB,aAAc,CAAA;AACbG,oBAAAA,EAAAA,EAAIT,gBAAQ,CAAC,UAAU,EAAEG,aAAAA,CAAc,YAAY,CAAC,CAAA;oBACpDiB,cAAgB,EAAA;AAClB,iBAAA;;;;AAIR;;;;;"}
1
+ {"version":3,"file":"FormModalSubHeader.js","sources":["../../../admin/src/components/FormModalSubHeader.tsx"],"sourcesContent":["import { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Flex, Typography } from '@strapi/design-system';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport type { Struct } from '@strapi/types';\n\ntype ModalTitleProps = {\n forTarget?: Struct.ModelType;\n step?: string;\n kind?: string;\n modalType?: string;\n actionType?: string;\n};\n\nexport const getModalTitleSubHeader = ({\n modalType,\n forTarget,\n kind,\n actionType,\n step,\n}: ModalTitleProps) => {\n switch (modalType) {\n case 'chooseAttribute':\n return getTrad(\n `modalForm.sub-header.chooseAttribute.${\n forTarget?.includes('component') ? 'component' : kind || 'collectionType'\n }`\n );\n case 'attribute': {\n return getTrad(\n `modalForm.sub-header.attribute.${actionType}${\n step !== 'null' && step !== null && actionType !== 'edit' ? '.step' : ''\n }`\n );\n }\n case 'customField': {\n return getTrad(`modalForm.sub-header.attribute.${actionType}`);\n }\n case 'addComponentToDynamicZone':\n return getTrad('modalForm.sub-header.addComponentToDynamicZone');\n default:\n return getTrad('configurations');\n }\n};\n\ntype FormModalSubHeaderProps = {\n actionType: string;\n modalType: string;\n forTarget: Struct.ModelType;\n kind?: string;\n step?: string;\n attributeType: string;\n attributeName: string;\n customField?: ReturnType<StrapiAppContextValue['customFields']['get']>;\n};\n\nexport const FormModalSubHeader = ({\n actionType,\n modalType,\n forTarget,\n kind,\n step,\n attributeType,\n attributeName,\n customField,\n}: FormModalSubHeaderProps) => {\n const { formatMessage } = useIntl();\n const intlLabel =\n modalType === 'customField'\n ? customField?.intlLabel\n : { id: getTrad(`attribute.${attributeType}`) };\n\n return (\n <Flex direction=\"column\" alignItems=\"flex-start\" paddingBottom={1} gap={1}>\n <Typography tag=\"h2\" variant=\"beta\">\n {formatMessage(\n {\n id: getModalTitleSubHeader({\n actionType,\n forTarget,\n kind,\n step,\n modalType,\n }),\n defaultMessage: 'Add new field',\n },\n {\n type: intlLabel ? upperFirst(formatMessage(intlLabel)) : '',\n name: upperFirst(attributeName),\n step,\n }\n )}\n </Typography>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad(`attribute.${attributeType}.description`),\n defaultMessage: 'A type for modeling data',\n })}\n </Typography>\n </Flex>\n );\n};\n"],"names":["getModalTitleSubHeader","modalType","forTarget","kind","actionType","step","getTrad","includes","FormModalSubHeader","attributeType","attributeName","customField","formatMessage","useIntl","intlLabel","id","_jsxs","Flex","direction","alignItems","paddingBottom","gap","_jsx","Typography","tag","variant","defaultMessage","type","upperFirst","name","textColor"],"mappings":";;;;;;;;AAiBaA,MAAAA,sBAAAA,GAAyB,CAAC,EACrCC,SAAS,EACTC,SAAS,EACTC,IAAI,EACJC,UAAU,EACVC,IAAI,EACY,GAAA;IAChB,OAAQJ,SAAAA;QACN,KAAK,iBAAA;YACH,OAAOK,eAAAA,CACL,CAAC,qCAAqC,EACpCJ,WAAWK,QAAS,CAAA,WAAA,CAAA,GAAe,WAAcJ,GAAAA,IAAAA,IAAQ,gBACzD,CAAA,CAAA,CAAA;QAEN,KAAK,WAAA;AAAa,YAAA;AAChB,gBAAA,OAAOG,eACL,CAAA,CAAC,+BAA+B,EAAEF,UAChCC,CAAAA,EAAAA,IAAAA,KAAS,MAAUA,IAAAA,IAAAA,KAAS,IAAQD,IAAAA,UAAAA,KAAe,MAAS,GAAA,OAAA,GAAU,EACtE,CAAA,CAAA,CAAA;AAEN;QACA,KAAK,aAAA;AAAe,YAAA;AAClB,gBAAA,OAAOE,eAAQ,CAAA,CAAC,+BAA+B,EAAEF,UAAY,CAAA,CAAA,CAAA;AAC/D;QACA,KAAK,2BAAA;AACH,YAAA,OAAOE,eAAQ,CAAA,gDAAA,CAAA;AACjB,QAAA;AACE,YAAA,OAAOA,eAAQ,CAAA,gBAAA,CAAA;AACnB;AACF;MAaaE,kBAAqB,GAAA,CAAC,EACjCJ,UAAU,EACVH,SAAS,EACTC,SAAS,EACTC,IAAI,EACJE,IAAI,EACJI,aAAa,EACbC,aAAa,EACbC,WAAW,EACa,GAAA;IACxB,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAC1B,IAAA,MAAMC,SACJb,GAAAA,SAAAA,KAAc,aACVU,GAAAA,WAAAA,EAAaG,SACb,GAAA;AAAEC,QAAAA,EAAAA,EAAIT,eAAQ,CAAA,CAAC,UAAU,EAAEG,aAAe,CAAA,CAAA;AAAE,KAAA;AAElD,IAAA,qBACEO,eAACC,CAAAA,iBAAAA,EAAAA;QAAKC,SAAU,EAAA,QAAA;QAASC,UAAW,EAAA,YAAA;QAAaC,aAAe,EAAA,CAAA;QAAGC,GAAK,EAAA,CAAA;;0BACtEC,cAACC,CAAAA,uBAAAA,EAAAA;gBAAWC,GAAI,EAAA,IAAA;gBAAKC,OAAQ,EAAA,MAAA;0BAC1Bb,aACC,CAAA;AACEG,oBAAAA,EAAAA,EAAIf,sBAAuB,CAAA;AACzBI,wBAAAA,UAAAA;AACAF,wBAAAA,SAAAA;AACAC,wBAAAA,IAAAA;AACAE,wBAAAA,IAAAA;AACAJ,wBAAAA;AACF,qBAAA,CAAA;oBACAyB,cAAgB,EAAA;iBAElB,EAAA;oBACEC,IAAMb,EAAAA,SAAAA,GAAYc,UAAWhB,CAAAA,aAAAA,CAAcE,SAAc,CAAA,CAAA,GAAA,EAAA;AACzDe,oBAAAA,IAAAA,EAAMD,UAAWlB,CAAAA,aAAAA,CAAAA;AACjBL,oBAAAA;AACF,iBAAA;;0BAGJiB,cAACC,CAAAA,uBAAAA,EAAAA;gBAAWE,OAAQ,EAAA,IAAA;gBAAKK,SAAU,EAAA,YAAA;0BAChClB,aAAc,CAAA;AACbG,oBAAAA,EAAAA,EAAIT,gBAAQ,CAAC,UAAU,EAAEG,aAAAA,CAAc,YAAY,CAAC,CAAA;oBACpDiB,cAAgB,EAAA;AAClB,iBAAA;;;;AAIR;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormModalSubHeader.mjs","sources":["../../../admin/src/components/FormModalSubHeader.tsx"],"sourcesContent":["import { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Flex, Typography } from '@strapi/design-system';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport type { Struct } from '@strapi/types';\n\ntype ModalTitleProps = {\n forTarget?: Struct.ModelType;\n step?: string;\n kind?: string;\n modalType?: string;\n actionType?: string;\n};\n\nexport const getModalTitleSubHeader = ({\n modalType,\n forTarget,\n kind,\n actionType,\n step,\n}: ModalTitleProps) => {\n switch (modalType) {\n case 'chooseAttribute':\n return getTrad(\n `modalForm.sub-header.chooseAttribute.${\n forTarget?.includes('component') ? 'component' : kind || 'collectionType'\n }`\n );\n case 'attribute': {\n return getTrad(\n `modalForm.sub-header.attribute.${actionType}${\n step !== 'null' && step !== null && actionType !== 'edit' ? '.step' : ''\n }`\n );\n }\n case 'customField': {\n return getTrad(`modalForm.sub-header.attribute.${actionType}`);\n }\n case 'addComponentToDynamicZone':\n return getTrad('modalForm.sub-header.addComponentToDynamicZone');\n default:\n return getTrad('configurations');\n }\n};\n\ntype FormModalSubHeaderProps = {\n actionType: string;\n modalType: string;\n forTarget: Struct.ModelType;\n kind?: string;\n step?: string;\n attributeType: string;\n attributeName: string;\n customField?: ReturnType<StrapiAppContextValue['customFields']['get']>;\n};\n\nexport const FormModalSubHeader = ({\n actionType,\n modalType,\n forTarget,\n kind,\n step,\n attributeType,\n attributeName,\n customField,\n}: FormModalSubHeaderProps) => {\n const { formatMessage } = useIntl();\n const intlLabel =\n modalType === 'customField'\n ? customField?.intlLabel\n : { id: getTrad(`attribute.${attributeType}`) };\n\n return (\n <Flex direction=\"column\" alignItems=\"flex-start\" paddingBottom={1} gap={1}>\n <Typography tag=\"h2\" variant=\"beta\">\n {formatMessage(\n {\n id: getModalTitleSubHeader({\n actionType,\n forTarget,\n kind,\n step,\n modalType,\n }),\n defaultMessage: 'Add new field',\n },\n {\n type: intlLabel ? upperFirst(formatMessage(intlLabel)) : '',\n name: upperFirst(attributeName),\n step,\n }\n )}\n </Typography>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad(`attribute.${attributeType}.description`),\n defaultMessage: 'A type for modeling data',\n })}\n </Typography>\n </Flex>\n );\n};\n"],"names":["getModalTitleSubHeader","modalType","forTarget","kind","actionType","step","getTrad","includes","FormModalSubHeader","attributeType","attributeName","customField","formatMessage","useIntl","intlLabel","id","_jsxs","Flex","direction","alignItems","paddingBottom","gap","_jsx","Typography","tag","variant","defaultMessage","type","upperFirst","name","textColor"],"mappings":";;;;;;AAiBaA,MAAAA,sBAAAA,GAAyB,CAAC,EACrCC,SAAS,EACTC,SAAS,EACTC,IAAI,EACJC,UAAU,EACVC,IAAI,EACY,GAAA;IAChB,OAAQJ,SAAAA;QACN,KAAK,iBAAA;YACH,OAAOK,OAAAA,CACL,CAAC,qCAAqC,EACpCJ,SAAAA,EAAWK,SAAS,WAAe,CAAA,GAAA,WAAA,GAAcJ,IAAQ,IAAA,gBAAA,CAC1D,CAAC,CAAA;QAEN,KAAK,WAAA;AAAa,YAAA;AAChB,gBAAA,OAAOG,OACL,CAAA,CAAC,+BAA+B,EAAEF,WAAW,EAC3CC,IAAAA,KAAS,MAAUA,IAAAA,IAAAA,KAAS,IAAQD,IAAAA,UAAAA,KAAe,MAAS,GAAA,OAAA,GAAU,GACvE,CAAC,CAAA;AAEN;QACA,KAAK,aAAA;AAAe,YAAA;AAClB,gBAAA,OAAOE,OAAQ,CAAA,CAAC,+BAA+B,EAAEF,WAAW,CAAC,CAAA;AAC/D;QACA,KAAK,2BAAA;AACH,YAAA,OAAOE,OAAQ,CAAA,gDAAA,CAAA;AACjB,QAAA;AACE,YAAA,OAAOA,OAAQ,CAAA,gBAAA,CAAA;AACnB;AACF;MAaaE,kBAAqB,GAAA,CAAC,EACjCJ,UAAU,EACVH,SAAS,EACTC,SAAS,EACTC,IAAI,EACJE,IAAI,EACJI,aAAa,EACbC,aAAa,EACbC,WAAW,EACa,GAAA;IACxB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAMC,SACJb,GAAAA,SAAAA,KAAc,aACVU,GAAAA,WAAAA,EAAaG,SACb,GAAA;AAAEC,QAAAA,EAAAA,EAAIT,OAAQ,CAAA,CAAC,UAAU,EAAEG,cAAc,CAAC;AAAE,KAAA;AAElD,IAAA,qBACEO,IAACC,CAAAA,IAAAA,EAAAA;QAAKC,SAAU,EAAA,QAAA;QAASC,UAAW,EAAA,YAAA;QAAaC,aAAe,EAAA,CAAA;QAAGC,GAAK,EAAA,CAAA;;0BACtEC,GAACC,CAAAA,UAAAA,EAAAA;gBAAWC,GAAI,EAAA,IAAA;gBAAKC,OAAQ,EAAA,MAAA;0BAC1Bb,aACC,CAAA;AACEG,oBAAAA,EAAAA,EAAIf,sBAAuB,CAAA;AACzBI,wBAAAA,UAAAA;AACAF,wBAAAA,SAAAA;AACAC,wBAAAA,IAAAA;AACAE,wBAAAA,IAAAA;AACAJ,wBAAAA;AACF,qBAAA,CAAA;oBACAyB,cAAgB,EAAA;iBAElB,EAAA;oBACEC,IAAMb,EAAAA,SAAAA,GAAYc,UAAWhB,CAAAA,aAAAA,CAAcE,SAAc,CAAA,CAAA,GAAA,EAAA;AACzDe,oBAAAA,IAAAA,EAAMD,UAAWlB,CAAAA,aAAAA,CAAAA;AACjBL,oBAAAA;AACF,iBAAA;;0BAGJiB,GAACC,CAAAA,UAAAA,EAAAA;gBAAWE,OAAQ,EAAA,IAAA;gBAAKK,SAAU,EAAA,YAAA;0BAChClB,aAAc,CAAA;AACbG,oBAAAA,EAAAA,EAAIT,QAAQ,CAAC,UAAU,EAAEG,aAAAA,CAAc,YAAY,CAAC,CAAA;oBACpDiB,cAAgB,EAAA;AAClB,iBAAA;;;;AAIR;;;;"}
1
+ {"version":3,"file":"FormModalSubHeader.mjs","sources":["../../../admin/src/components/FormModalSubHeader.tsx"],"sourcesContent":["import { StrapiAppContextValue } from '@strapi/admin/strapi-admin';\nimport { Flex, Typography } from '@strapi/design-system';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\n\nimport { getTrad } from '../utils';\n\nimport type { Struct } from '@strapi/types';\n\ntype ModalTitleProps = {\n forTarget?: Struct.ModelType;\n step?: string;\n kind?: string;\n modalType?: string;\n actionType?: string;\n};\n\nexport const getModalTitleSubHeader = ({\n modalType,\n forTarget,\n kind,\n actionType,\n step,\n}: ModalTitleProps) => {\n switch (modalType) {\n case 'chooseAttribute':\n return getTrad(\n `modalForm.sub-header.chooseAttribute.${\n forTarget?.includes('component') ? 'component' : kind || 'collectionType'\n }`\n );\n case 'attribute': {\n return getTrad(\n `modalForm.sub-header.attribute.${actionType}${\n step !== 'null' && step !== null && actionType !== 'edit' ? '.step' : ''\n }`\n );\n }\n case 'customField': {\n return getTrad(`modalForm.sub-header.attribute.${actionType}`);\n }\n case 'addComponentToDynamicZone':\n return getTrad('modalForm.sub-header.addComponentToDynamicZone');\n default:\n return getTrad('configurations');\n }\n};\n\ntype FormModalSubHeaderProps = {\n actionType: string;\n modalType: string;\n forTarget: Struct.ModelType;\n kind?: string;\n step?: string;\n attributeType: string;\n attributeName: string;\n customField?: ReturnType<StrapiAppContextValue['customFields']['get']>;\n};\n\nexport const FormModalSubHeader = ({\n actionType,\n modalType,\n forTarget,\n kind,\n step,\n attributeType,\n attributeName,\n customField,\n}: FormModalSubHeaderProps) => {\n const { formatMessage } = useIntl();\n const intlLabel =\n modalType === 'customField'\n ? customField?.intlLabel\n : { id: getTrad(`attribute.${attributeType}`) };\n\n return (\n <Flex direction=\"column\" alignItems=\"flex-start\" paddingBottom={1} gap={1}>\n <Typography tag=\"h2\" variant=\"beta\">\n {formatMessage(\n {\n id: getModalTitleSubHeader({\n actionType,\n forTarget,\n kind,\n step,\n modalType,\n }),\n defaultMessage: 'Add new field',\n },\n {\n type: intlLabel ? upperFirst(formatMessage(intlLabel)) : '',\n name: upperFirst(attributeName),\n step,\n }\n )}\n </Typography>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad(`attribute.${attributeType}.description`),\n defaultMessage: 'A type for modeling data',\n })}\n </Typography>\n </Flex>\n );\n};\n"],"names":["getModalTitleSubHeader","modalType","forTarget","kind","actionType","step","getTrad","includes","FormModalSubHeader","attributeType","attributeName","customField","formatMessage","useIntl","intlLabel","id","_jsxs","Flex","direction","alignItems","paddingBottom","gap","_jsx","Typography","tag","variant","defaultMessage","type","upperFirst","name","textColor"],"mappings":";;;;;;AAiBaA,MAAAA,sBAAAA,GAAyB,CAAC,EACrCC,SAAS,EACTC,SAAS,EACTC,IAAI,EACJC,UAAU,EACVC,IAAI,EACY,GAAA;IAChB,OAAQJ,SAAAA;QACN,KAAK,iBAAA;YACH,OAAOK,OAAAA,CACL,CAAC,qCAAqC,EACpCJ,WAAWK,QAAS,CAAA,WAAA,CAAA,GAAe,WAAcJ,GAAAA,IAAAA,IAAQ,gBACzD,CAAA,CAAA,CAAA;QAEN,KAAK,WAAA;AAAa,YAAA;AAChB,gBAAA,OAAOG,OACL,CAAA,CAAC,+BAA+B,EAAEF,UAChCC,CAAAA,EAAAA,IAAAA,KAAS,MAAUA,IAAAA,IAAAA,KAAS,IAAQD,IAAAA,UAAAA,KAAe,MAAS,GAAA,OAAA,GAAU,EACtE,CAAA,CAAA,CAAA;AAEN;QACA,KAAK,aAAA;AAAe,YAAA;AAClB,gBAAA,OAAOE,OAAQ,CAAA,CAAC,+BAA+B,EAAEF,UAAY,CAAA,CAAA,CAAA;AAC/D;QACA,KAAK,2BAAA;AACH,YAAA,OAAOE,OAAQ,CAAA,gDAAA,CAAA;AACjB,QAAA;AACE,YAAA,OAAOA,OAAQ,CAAA,gBAAA,CAAA;AACnB;AACF;MAaaE,kBAAqB,GAAA,CAAC,EACjCJ,UAAU,EACVH,SAAS,EACTC,SAAS,EACTC,IAAI,EACJE,IAAI,EACJI,aAAa,EACbC,aAAa,EACbC,WAAW,EACa,GAAA;IACxB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAMC,SACJb,GAAAA,SAAAA,KAAc,aACVU,GAAAA,WAAAA,EAAaG,SACb,GAAA;AAAEC,QAAAA,EAAAA,EAAIT,OAAQ,CAAA,CAAC,UAAU,EAAEG,aAAe,CAAA,CAAA;AAAE,KAAA;AAElD,IAAA,qBACEO,IAACC,CAAAA,IAAAA,EAAAA;QAAKC,SAAU,EAAA,QAAA;QAASC,UAAW,EAAA,YAAA;QAAaC,aAAe,EAAA,CAAA;QAAGC,GAAK,EAAA,CAAA;;0BACtEC,GAACC,CAAAA,UAAAA,EAAAA;gBAAWC,GAAI,EAAA,IAAA;gBAAKC,OAAQ,EAAA,MAAA;0BAC1Bb,aACC,CAAA;AACEG,oBAAAA,EAAAA,EAAIf,sBAAuB,CAAA;AACzBI,wBAAAA,UAAAA;AACAF,wBAAAA,SAAAA;AACAC,wBAAAA,IAAAA;AACAE,wBAAAA,IAAAA;AACAJ,wBAAAA;AACF,qBAAA,CAAA;oBACAyB,cAAgB,EAAA;iBAElB,EAAA;oBACEC,IAAMb,EAAAA,SAAAA,GAAYc,UAAWhB,CAAAA,aAAAA,CAAcE,SAAc,CAAA,CAAA,GAAA,EAAA;AACzDe,oBAAAA,IAAAA,EAAMD,UAAWlB,CAAAA,aAAAA,CAAAA;AACjBL,oBAAAA;AACF,iBAAA;;0BAGJiB,GAACC,CAAAA,UAAAA,EAAAA;gBAAWE,OAAQ,EAAA,IAAA;gBAAKK,SAAU,EAAA,YAAA;0BAChClB,aAAc,CAAA;AACbG,oBAAAA,EAAAA,EAAIT,QAAQ,CAAC,UAAU,EAAEG,aAAAA,CAAc,YAAY,CAAC,CAAA;oBACpDiB,cAAgB,EAAA;AAClB,iBAAA;;;;AAIR;;;;"}
@@ -479,10 +479,13 @@ const GenericInput = ({ autoComplete, customInputs, description, disabled, intlL
479
479
  };
480
480
  };
481
481
  const getFieldUnits = ({ type, minimum, maximum })=>{
482
- if (type && [
483
- 'biginteger',
484
- 'integer',
485
- 'number'
482
+ if (type && ![
483
+ 'string',
484
+ 'uid',
485
+ 'richtext',
486
+ 'email',
487
+ 'password',
488
+ 'text'
486
489
  ].includes(type)) {
487
490
  return {};
488
491
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GenericInputs.js","sources":["../../../admin/src/components/GenericInputs.tsx"],"sourcesContent":["/**\n * TODO: we should be using the FormRenderer from the admin to do this,\n * but the CTB has no tests or types, so we can't refactor it safely.\n * So we're just adding this to the tech debt.\n */\n\nimport * as React from 'react';\n\nimport {\n Checkbox,\n DatePicker,\n DateTimePicker,\n Field,\n JSONInput,\n NumberInput,\n SingleSelect,\n SingleSelectOption,\n Textarea,\n TextInput,\n TimePicker,\n Toggle,\n} from '@strapi/design-system';\nimport { Eye, EyeStriked } from '@strapi/icons';\nimport formatISO from 'date-fns/formatISO';\nimport isEqual from 'lodash/isEqual';\nimport { type MessageDescriptor, type PrimitiveType, useIntl } from 'react-intl';\n\nimport { parseDateValue } from '../utils/parseDateValue';\nimport { handleTimeChange, handleTimeChangeEvent } from '../utils/timeFormat';\n\nimport type { Schema } from '@strapi/types';\n\ninterface TranslationMessage extends MessageDescriptor {\n values?: Record<string, PrimitiveType>;\n}\n\ninterface InputOption {\n metadatas: {\n intlLabel: TranslationMessage;\n disabled: boolean;\n hidden: boolean;\n };\n key: string;\n value: string;\n}\n\ninterface CustomInputProps<\n TAttribute extends Schema.Attribute.AnyAttribute = Schema.Attribute.AnyAttribute,\n> {\n attribute?: TAttribute;\n autoComplete?: string;\n description?: TranslationMessage;\n disabled?: boolean;\n error?: string;\n hint?: string | React.JSX.Element | (string | React.JSX.Element)[];\n intlLabel: TranslationMessage;\n labelAction?: React.ReactNode;\n name: string;\n onChange: (\n payload: {\n target: {\n name: string;\n value: Schema.Attribute.Value<TAttribute>;\n type?: string;\n };\n },\n shouldSetInitialValue?: boolean\n ) => void;\n onDelete?: () => void;\n options?: InputOption[];\n placeholder?: TranslationMessage;\n required?: boolean;\n step?: number;\n type: string;\n value?: Schema.Attribute.Value<TAttribute>;\n autoFocus?: boolean;\n attributeName?: string;\n conditionFields?: Record<string, boolean>;\n}\n\ninterface GenericInputProps<\n TAttribute extends Schema.Attribute.AnyAttribute = Schema.Attribute.AnyAttribute,\n> {\n attribute?: TAttribute;\n autoComplete?: string;\n customInputs?: Record<string, React.ComponentType<CustomInputProps<TAttribute>>>;\n description?: TranslationMessage;\n disabled?: boolean;\n error?: string | TranslationMessage;\n intlLabel: TranslationMessage;\n labelAction?: React.ReactNode;\n name: string;\n onChange: (\n payload: {\n target: {\n name: string;\n value: Schema.Attribute.Value<TAttribute>;\n type?: string;\n };\n },\n shouldSetInitialValue?: boolean\n ) => void;\n onDelete?: () => void;\n options?: InputOption[];\n placeholder?: TranslationMessage;\n required?: boolean;\n step?: number;\n type: string;\n // TODO: The value depends on the input type, too complicated to handle all cases here\n value?: Schema.Attribute.Value<TAttribute>;\n isNullable?: boolean;\n autoFocus?: boolean;\n attributeName?: string;\n conditionFields?: Record<string, boolean>;\n}\n\nconst GenericInput = ({\n autoComplete,\n customInputs,\n description,\n disabled,\n intlLabel,\n labelAction,\n error,\n name,\n onChange,\n onDelete,\n options = [],\n placeholder,\n required,\n step,\n type,\n value: defaultValue,\n isNullable,\n autoFocus,\n attribute,\n attributeName,\n conditionFields,\n ...rest\n}: GenericInputProps) => {\n const { formatMessage } = useIntl();\n\n // TODO: Workaround to get the field hint values if they exist on the type\n const getFieldHintValue = (\n attribute?: Schema.Attribute.AnyAttribute,\n key?: keyof FieldSchema\n ) => {\n if (!attribute) return;\n\n if (key === 'minLength' && key in attribute) {\n return attribute[key];\n }\n\n if (key === 'maxLength' && key in attribute) {\n return attribute[key];\n }\n\n if (key === 'max' && key in attribute) {\n return attribute[key];\n }\n\n if (key === 'min' && key in attribute) {\n return attribute[key];\n }\n };\n\n const { hint } = useFieldHint({\n description,\n fieldSchema: {\n minLength: getFieldHintValue(attribute, 'minLength'),\n maxLength: getFieldHintValue(attribute, 'maxLength'),\n max: getFieldHintValue(attribute, 'max'),\n min: getFieldHintValue(attribute, 'min'),\n },\n type: attribute?.type || type,\n });\n\n const [showPassword, setShowPassword] = React.useState(false);\n\n const CustomInput = customInputs ? customInputs[type] : null;\n\n // the API always returns null, which throws an error in React,\n // therefore we cast this case to undefined\n const value = defaultValue ?? undefined;\n\n /*\n TODO: ideally we should pass in `defaultValue` and `value` for\n inputs, in order to make them controlled components. This variable\n acts as a fallback for now, to prevent React errors in devopment mode\n\n See: https://github.com/strapi/strapi/pull/12861\n */\n const valueWithEmptyStringFallback = value ?? '';\n\n function getErrorMessage(error: string | TranslationMessage | undefined) {\n if (!error) {\n return null;\n }\n\n if (typeof error === 'string') {\n return formatMessage({ id: error, defaultMessage: error });\n }\n\n const values = {\n ...error.values,\n };\n\n return formatMessage(\n {\n id: error.id,\n defaultMessage: error?.defaultMessage ?? error.id,\n },\n values\n );\n }\n\n const errorMessage = getErrorMessage(error) ?? undefined;\n\n if (CustomInput) {\n return (\n <CustomInput\n {...rest}\n attribute={attribute}\n description={description}\n hint={hint}\n disabled={disabled}\n intlLabel={intlLabel}\n labelAction={labelAction}\n error={errorMessage || ''}\n name={name}\n onChange={onChange}\n onDelete={onDelete}\n options={options}\n required={required}\n placeholder={placeholder}\n type={type}\n value={value}\n autoFocus={autoFocus}\n attributeName={attributeName}\n conditionFields={conditionFields}\n />\n );\n }\n\n const label = intlLabel.id\n ? formatMessage(\n { id: intlLabel.id, defaultMessage: intlLabel.defaultMessage },\n { ...intlLabel.values }\n )\n : name;\n\n const formattedPlaceholder = placeholder\n ? formatMessage(\n { id: placeholder.id, defaultMessage: placeholder.defaultMessage },\n { ...placeholder.values }\n )\n : '';\n\n const getComponent = () => {\n switch (type) {\n case 'json': {\n return (\n <JSONInput\n value={value}\n disabled={disabled}\n onChange={(json) => {\n // Default to null when the field is not required and there is no input value\n const value =\n attribute && 'required' in attribute && !attribute?.required && !json.length\n ? null\n : json;\n onChange({ target: { name, value } }, false);\n }}\n minHeight=\"25.2rem\"\n maxHeight=\"50.4rem\"\n />\n );\n }\n case 'bool': {\n return (\n <Toggle\n checked={defaultValue === null ? null : defaultValue || false}\n disabled={disabled}\n offLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.off-label',\n defaultMessage: 'False',\n })}\n onLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.on-label',\n defaultMessage: 'True',\n })}\n onChange={(e) => {\n onChange({ target: { name, value: e.target.checked } });\n }}\n />\n );\n }\n case 'checkbox': {\n return (\n <Checkbox\n disabled={disabled}\n onCheckedChange={(value) => {\n onChange({ target: { name, value } });\n }}\n checked={Boolean(value)}\n >\n {label}\n </Checkbox>\n );\n }\n case 'datetime': {\n const dateValue = parseDateValue(value);\n return (\n <DateTimePicker\n clearLabel={formatMessage({ id: 'clearLabel', defaultMessage: 'Clear' })}\n disabled={disabled}\n onChange={(date) => {\n // check if date is not null or undefined\n const formattedDate = date ? date.toISOString() : null;\n\n onChange({ target: { name, value: formattedDate, type } });\n }}\n onClear={() => onChange({ target: { name, value: null, type } })}\n placeholder={formattedPlaceholder}\n value={dateValue}\n />\n );\n }\n case 'date': {\n const dateValue = parseDateValue(value);\n return (\n <DatePicker\n clearLabel={formatMessage({ id: 'clearLabel', defaultMessage: 'Clear' })}\n disabled={disabled}\n onChange={(date) => {\n onChange({\n target: {\n name,\n value: date ? formatISO(date, { representation: 'date' }) : null,\n type,\n },\n });\n }}\n onClear={() => onChange({ target: { name, value: null, type } })}\n placeholder={formattedPlaceholder}\n value={dateValue}\n />\n );\n }\n case 'number': {\n return (\n <NumberInput\n disabled={disabled}\n onValueChange={(value) => {\n onChange({ target: { name, value, type } });\n }}\n placeholder={formattedPlaceholder}\n step={step}\n value={value}\n autoFocus={autoFocus}\n />\n );\n }\n case 'email': {\n return (\n <TextInput\n autoComplete={autoComplete}\n disabled={disabled}\n onChange={(e) => {\n onChange({ target: { name, value: e.target.value, type } });\n }}\n placeholder={formattedPlaceholder}\n type=\"email\"\n value={valueWithEmptyStringFallback}\n autoFocus={autoFocus}\n />\n );\n }\n case 'timestamp':\n case 'text':\n case 'string': {\n return (\n <TextInput\n autoComplete={autoComplete}\n disabled={disabled}\n onChange={(e) => {\n onChange({ target: { name, value: e.target.value, type } });\n }}\n placeholder={formattedPlaceholder}\n type=\"text\"\n value={valueWithEmptyStringFallback}\n autoFocus={autoFocus}\n />\n );\n }\n case 'password': {\n return (\n <TextInput\n autoComplete={autoComplete}\n disabled={disabled}\n endAction={\n <button\n aria-label={formatMessage({\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n })}\n onClick={() => {\n setShowPassword((prev) => !prev);\n }}\n style={{\n border: 'none',\n padding: 0,\n background: 'transparent',\n }}\n type=\"button\"\n >\n {showPassword ? <Eye fill=\"neutral500\" /> : <EyeStriked fill=\"neutral500\" />}\n </button>\n }\n onChange={(e) => {\n onChange({ target: { name, value: e.target.value, type } });\n }}\n placeholder={formattedPlaceholder}\n type={showPassword ? 'text' : 'password'}\n value={valueWithEmptyStringFallback}\n />\n );\n }\n case 'select': {\n return (\n <SingleSelect\n disabled={disabled}\n onChange={(value) => {\n onChange({ target: { name, value, type: 'select' } });\n }}\n placeholder={formattedPlaceholder}\n value={value}\n >\n {options.map(({ metadatas: { intlLabel, disabled, hidden }, key, value }) => {\n return (\n <SingleSelectOption key={key} value={value} disabled={disabled} hidden={hidden}>\n {formatMessage(intlLabel)}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n );\n }\n case 'textarea': {\n return (\n <Textarea\n disabled={disabled}\n onChange={(event) => onChange({ target: { name, value: event.target.value, type } })}\n placeholder={formattedPlaceholder}\n value={valueWithEmptyStringFallback}\n />\n );\n }\n case 'time': {\n const formattedValue = handleTimeChange({ value, onChange, name, type });\n\n return (\n <TimePicker\n clearLabel={formatMessage({ id: 'clearLabel', defaultMessage: 'Clear' })}\n disabled={disabled}\n onChange={(time) => handleTimeChangeEvent(onChange, name, type, time)}\n onClear={() => handleTimeChangeEvent(onChange, name, type, undefined)}\n value={formattedValue}\n />\n );\n }\n default: {\n /**\n * If there's no component for the given type, we return a disabled text input\n * showing a \"Not supported\" title to illustrate the issue.\n */\n return <TextInput disabled placeholder=\"Not supported\" type=\"text\" value=\"\" />;\n }\n }\n };\n\n return (\n <Field.Root error={errorMessage} name={name} hint={hint} required={required}>\n {type !== 'checkbox' ? <Field.Label action={labelAction}>{label}</Field.Label> : null}\n {getComponent()}\n <Field.Error />\n <Field.Hint />\n </Field.Root>\n );\n};\n\ntype FieldSchema = {\n minLength?: number | string;\n maxLength?: number | string;\n max?: number | string;\n min?: number | string;\n};\ninterface UseFieldHintProps {\n description?: MessageDescriptor & { values?: Record<string, PrimitiveType> };\n fieldSchema?: FieldSchema;\n type?: string;\n}\n\n/**\n * @description\n * A hook for generating the hint for a field\n */\nconst useFieldHint = ({ description, fieldSchema, type }: UseFieldHintProps) => {\n const { formatMessage } = useIntl();\n\n const buildDescription = () =>\n description?.id\n ? formatMessage(\n { id: description.id, defaultMessage: description.defaultMessage },\n { ...description.values }\n )\n : '';\n\n const buildHint = () => {\n const { maximum, minimum } = getMinMax(fieldSchema);\n const units = getFieldUnits({\n type,\n minimum,\n maximum,\n });\n\n const minIsNumber = typeof minimum === 'number';\n const maxIsNumber = typeof maximum === 'number';\n const hasMinAndMax = maxIsNumber && minIsNumber;\n const hasMinOrMax = maxIsNumber || minIsNumber;\n\n if (!description?.id && !hasMinOrMax) {\n return '';\n }\n\n return formatMessage(\n {\n id: 'content-manager.form.Input.hint.text',\n defaultMessage:\n '{min, select, undefined {} other {min. {min}}}{divider}{max, select, undefined {} other {max. {max}}}{unit}{br}{description}',\n },\n {\n min: minimum,\n max: maximum,\n description: buildDescription(),\n unit: units?.message && hasMinOrMax ? formatMessage(units.message, units.values) : null,\n divider: hasMinAndMax\n ? formatMessage({\n id: 'content-manager.form.Input.hint.minMaxDivider',\n defaultMessage: ' / ',\n })\n : null,\n br: hasMinOrMax ? <br /> : null,\n }\n );\n };\n\n return { hint: buildHint() };\n};\n\nconst getFieldUnits = ({\n type,\n minimum,\n maximum,\n}: {\n type?: string;\n minimum?: number;\n maximum?: number;\n}) => {\n if (type && ['biginteger', 'integer', 'number'].includes(type)) {\n return {};\n }\n const maxValue = Math.max(minimum || 0, maximum || 0);\n\n return {\n message: {\n id: 'content-manager.form.Input.hint.character.unit',\n defaultMessage: '{maxValue, plural, one { character} other { characters}}',\n },\n values: {\n maxValue,\n },\n };\n};\n\nconst getMinMax = (fieldSchema?: FieldSchema) => {\n if (!fieldSchema) {\n return { maximum: undefined, minimum: undefined };\n }\n\n const { minLength, maxLength, max, min } = fieldSchema;\n\n let minimum;\n let maximum;\n\n const parsedMin = Number(min);\n const parsedMinLength = Number(minLength);\n\n if (!Number.isNaN(parsedMin)) {\n minimum = parsedMin;\n } else if (!Number.isNaN(parsedMinLength)) {\n minimum = parsedMinLength;\n }\n\n const parsedMax = Number(max);\n const parsedMaxLength = Number(maxLength);\n\n if (!Number.isNaN(parsedMax)) {\n maximum = parsedMax;\n } else if (!Number.isNaN(parsedMaxLength)) {\n maximum = parsedMaxLength;\n }\n\n return { maximum, minimum };\n};\n\n/**\n * we've memoized this component because we use a context to store all the data in our form in the content-manager.\n * This then causes _every_ component to re-render because there are no selects incurring performance issues\n * in content-types as the content-type gets more complicated.\n */\nconst MemoizedGenericInput = React.memo(GenericInput, isEqual);\n\nexport type { GenericInputProps, CustomInputProps };\nexport { MemoizedGenericInput as GenericInput };\n"],"names":["GenericInput","autoComplete","customInputs","description","disabled","intlLabel","labelAction","error","name","onChange","onDelete","options","placeholder","required","step","type","value","defaultValue","isNullable","autoFocus","attribute","attributeName","conditionFields","rest","formatMessage","useIntl","getFieldHintValue","key","hint","useFieldHint","fieldSchema","minLength","maxLength","max","min","showPassword","setShowPassword","React","useState","CustomInput","undefined","valueWithEmptyStringFallback","getErrorMessage","id","defaultMessage","values","errorMessage","_jsx","label","formattedPlaceholder","getComponent","JSONInput","json","length","target","minHeight","maxHeight","Toggle","checked","offLabel","onLabel","e","Checkbox","onCheckedChange","Boolean","dateValue","parseDateValue","DateTimePicker","clearLabel","date","formattedDate","toISOString","onClear","DatePicker","formatISO","representation","NumberInput","onValueChange","TextInput","endAction","button","aria-label","onClick","prev","style","border","padding","background","Eye","fill","EyeStriked","SingleSelect","map","metadatas","hidden","SingleSelectOption","Textarea","event","formattedValue","handleTimeChange","TimePicker","time","handleTimeChangeEvent","_jsxs","Field","Root","Label","action","Error","Hint","buildDescription","buildHint","maximum","minimum","getMinMax","units","getFieldUnits","minIsNumber","maxIsNumber","hasMinAndMax","hasMinOrMax","unit","message","divider","br","includes","maxValue","Math","parsedMin","Number","parsedMinLength","isNaN","parsedMax","parsedMaxLength","MemoizedGenericInput","memo","isEqual"],"mappings":"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"}
1
+ {"version":3,"file":"GenericInputs.js","sources":["../../../admin/src/components/GenericInputs.tsx"],"sourcesContent":["/**\n * TODO: we should be using the FormRenderer from the admin to do this,\n * but the CTB has no tests or types, so we can't refactor it safely.\n * So we're just adding this to the tech debt.\n */\n\nimport * as React from 'react';\n\nimport {\n Checkbox,\n DatePicker,\n DateTimePicker,\n Field,\n JSONInput,\n NumberInput,\n SingleSelect,\n SingleSelectOption,\n Textarea,\n TextInput,\n TimePicker,\n Toggle,\n} from '@strapi/design-system';\nimport { Eye, EyeStriked } from '@strapi/icons';\nimport formatISO from 'date-fns/formatISO';\nimport isEqual from 'lodash/isEqual';\nimport { type MessageDescriptor, type PrimitiveType, useIntl } from 'react-intl';\n\nimport { parseDateValue } from '../utils/parseDateValue';\nimport { handleTimeChange, handleTimeChangeEvent } from '../utils/timeFormat';\n\nimport type { Schema } from '@strapi/types';\n\ninterface TranslationMessage extends MessageDescriptor {\n values?: Record<string, PrimitiveType>;\n}\n\ninterface InputOption {\n metadatas: {\n intlLabel: TranslationMessage;\n disabled: boolean;\n hidden: boolean;\n };\n key: string;\n value: string;\n}\n\ninterface CustomInputProps<\n TAttribute extends Schema.Attribute.AnyAttribute = Schema.Attribute.AnyAttribute,\n> {\n attribute?: TAttribute;\n autoComplete?: string;\n description?: TranslationMessage;\n disabled?: boolean;\n error?: string;\n hint?: string | React.JSX.Element | (string | React.JSX.Element)[];\n intlLabel: TranslationMessage;\n labelAction?: React.ReactNode;\n name: string;\n onChange: (\n payload: {\n target: {\n name: string;\n value: Schema.Attribute.Value<TAttribute>;\n type?: string;\n };\n },\n shouldSetInitialValue?: boolean\n ) => void;\n onDelete?: () => void;\n options?: InputOption[];\n placeholder?: TranslationMessage;\n required?: boolean;\n step?: number;\n type: string;\n value?: Schema.Attribute.Value<TAttribute>;\n autoFocus?: boolean;\n attributeName?: string;\n conditionFields?: Record<string, boolean>;\n}\n\ninterface GenericInputProps<\n TAttribute extends Schema.Attribute.AnyAttribute = Schema.Attribute.AnyAttribute,\n> {\n attribute?: TAttribute;\n autoComplete?: string;\n customInputs?: Record<string, React.ComponentType<CustomInputProps<TAttribute>>>;\n description?: TranslationMessage;\n disabled?: boolean;\n error?: string | TranslationMessage;\n intlLabel: TranslationMessage;\n labelAction?: React.ReactNode;\n name: string;\n onChange: (\n payload: {\n target: {\n name: string;\n value: Schema.Attribute.Value<TAttribute>;\n type?: string;\n };\n },\n shouldSetInitialValue?: boolean\n ) => void;\n onDelete?: () => void;\n options?: InputOption[];\n placeholder?: TranslationMessage;\n required?: boolean;\n step?: number;\n type: string;\n // TODO: The value depends on the input type, too complicated to handle all cases here\n value?: Schema.Attribute.Value<TAttribute>;\n isNullable?: boolean;\n autoFocus?: boolean;\n attributeName?: string;\n conditionFields?: Record<string, boolean>;\n}\n\nconst GenericInput = ({\n autoComplete,\n customInputs,\n description,\n disabled,\n intlLabel,\n labelAction,\n error,\n name,\n onChange,\n onDelete,\n options = [],\n placeholder,\n required,\n step,\n type,\n value: defaultValue,\n isNullable,\n autoFocus,\n attribute,\n attributeName,\n conditionFields,\n ...rest\n}: GenericInputProps) => {\n const { formatMessage } = useIntl();\n\n // TODO: Workaround to get the field hint values if they exist on the type\n const getFieldHintValue = (\n attribute?: Schema.Attribute.AnyAttribute,\n key?: keyof FieldSchema\n ) => {\n if (!attribute) return;\n\n if (key === 'minLength' && key in attribute) {\n return attribute[key];\n }\n\n if (key === 'maxLength' && key in attribute) {\n return attribute[key];\n }\n\n if (key === 'max' && key in attribute) {\n return attribute[key];\n }\n\n if (key === 'min' && key in attribute) {\n return attribute[key];\n }\n };\n\n const { hint } = useFieldHint({\n description,\n fieldSchema: {\n minLength: getFieldHintValue(attribute, 'minLength'),\n maxLength: getFieldHintValue(attribute, 'maxLength'),\n max: getFieldHintValue(attribute, 'max'),\n min: getFieldHintValue(attribute, 'min'),\n },\n type: attribute?.type || type,\n });\n\n const [showPassword, setShowPassword] = React.useState(false);\n\n const CustomInput = customInputs ? customInputs[type] : null;\n\n // the API always returns null, which throws an error in React,\n // therefore we cast this case to undefined\n const value = defaultValue ?? undefined;\n\n /*\n TODO: ideally we should pass in `defaultValue` and `value` for\n inputs, in order to make them controlled components. This variable\n acts as a fallback for now, to prevent React errors in devopment mode\n\n See: https://github.com/strapi/strapi/pull/12861\n */\n const valueWithEmptyStringFallback = value ?? '';\n\n function getErrorMessage(error: string | TranslationMessage | undefined) {\n if (!error) {\n return null;\n }\n\n if (typeof error === 'string') {\n return formatMessage({ id: error, defaultMessage: error });\n }\n\n const values = {\n ...error.values,\n };\n\n return formatMessage(\n {\n id: error.id,\n defaultMessage: error?.defaultMessage ?? error.id,\n },\n values\n );\n }\n\n const errorMessage = getErrorMessage(error) ?? undefined;\n\n if (CustomInput) {\n return (\n <CustomInput\n {...rest}\n attribute={attribute}\n description={description}\n hint={hint}\n disabled={disabled}\n intlLabel={intlLabel}\n labelAction={labelAction}\n error={errorMessage || ''}\n name={name}\n onChange={onChange}\n onDelete={onDelete}\n options={options}\n required={required}\n placeholder={placeholder}\n type={type}\n value={value}\n autoFocus={autoFocus}\n attributeName={attributeName}\n conditionFields={conditionFields}\n />\n );\n }\n\n const label = intlLabel.id\n ? formatMessage(\n { id: intlLabel.id, defaultMessage: intlLabel.defaultMessage },\n { ...intlLabel.values }\n )\n : name;\n\n const formattedPlaceholder = placeholder\n ? formatMessage(\n { id: placeholder.id, defaultMessage: placeholder.defaultMessage },\n { ...placeholder.values }\n )\n : '';\n\n const getComponent = () => {\n switch (type) {\n case 'json': {\n return (\n <JSONInput\n value={value}\n disabled={disabled}\n onChange={(json) => {\n // Default to null when the field is not required and there is no input value\n const value =\n attribute && 'required' in attribute && !attribute?.required && !json.length\n ? null\n : json;\n onChange({ target: { name, value } }, false);\n }}\n minHeight=\"25.2rem\"\n maxHeight=\"50.4rem\"\n />\n );\n }\n case 'bool': {\n return (\n <Toggle\n checked={defaultValue === null ? null : defaultValue || false}\n disabled={disabled}\n offLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.off-label',\n defaultMessage: 'False',\n })}\n onLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.on-label',\n defaultMessage: 'True',\n })}\n onChange={(e) => {\n onChange({ target: { name, value: e.target.checked } });\n }}\n />\n );\n }\n case 'checkbox': {\n return (\n <Checkbox\n disabled={disabled}\n onCheckedChange={(value) => {\n onChange({ target: { name, value } });\n }}\n checked={Boolean(value)}\n >\n {label}\n </Checkbox>\n );\n }\n case 'datetime': {\n const dateValue = parseDateValue(value);\n return (\n <DateTimePicker\n clearLabel={formatMessage({ id: 'clearLabel', defaultMessage: 'Clear' })}\n disabled={disabled}\n onChange={(date) => {\n // check if date is not null or undefined\n const formattedDate = date ? date.toISOString() : null;\n\n onChange({ target: { name, value: formattedDate, type } });\n }}\n onClear={() => onChange({ target: { name, value: null, type } })}\n placeholder={formattedPlaceholder}\n value={dateValue}\n />\n );\n }\n case 'date': {\n const dateValue = parseDateValue(value);\n return (\n <DatePicker\n clearLabel={formatMessage({ id: 'clearLabel', defaultMessage: 'Clear' })}\n disabled={disabled}\n onChange={(date) => {\n onChange({\n target: {\n name,\n value: date ? formatISO(date, { representation: 'date' }) : null,\n type,\n },\n });\n }}\n onClear={() => onChange({ target: { name, value: null, type } })}\n placeholder={formattedPlaceholder}\n value={dateValue}\n />\n );\n }\n case 'number': {\n return (\n <NumberInput\n disabled={disabled}\n onValueChange={(value) => {\n onChange({ target: { name, value, type } });\n }}\n placeholder={formattedPlaceholder}\n step={step}\n value={value}\n autoFocus={autoFocus}\n />\n );\n }\n case 'email': {\n return (\n <TextInput\n autoComplete={autoComplete}\n disabled={disabled}\n onChange={(e) => {\n onChange({ target: { name, value: e.target.value, type } });\n }}\n placeholder={formattedPlaceholder}\n type=\"email\"\n value={valueWithEmptyStringFallback}\n autoFocus={autoFocus}\n />\n );\n }\n case 'timestamp':\n case 'text':\n case 'string': {\n return (\n <TextInput\n autoComplete={autoComplete}\n disabled={disabled}\n onChange={(e) => {\n onChange({ target: { name, value: e.target.value, type } });\n }}\n placeholder={formattedPlaceholder}\n type=\"text\"\n value={valueWithEmptyStringFallback}\n autoFocus={autoFocus}\n />\n );\n }\n case 'password': {\n return (\n <TextInput\n autoComplete={autoComplete}\n disabled={disabled}\n endAction={\n <button\n aria-label={formatMessage({\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n })}\n onClick={() => {\n setShowPassword((prev) => !prev);\n }}\n style={{\n border: 'none',\n padding: 0,\n background: 'transparent',\n }}\n type=\"button\"\n >\n {showPassword ? <Eye fill=\"neutral500\" /> : <EyeStriked fill=\"neutral500\" />}\n </button>\n }\n onChange={(e) => {\n onChange({ target: { name, value: e.target.value, type } });\n }}\n placeholder={formattedPlaceholder}\n type={showPassword ? 'text' : 'password'}\n value={valueWithEmptyStringFallback}\n />\n );\n }\n case 'select': {\n return (\n <SingleSelect\n disabled={disabled}\n onChange={(value) => {\n onChange({ target: { name, value, type: 'select' } });\n }}\n placeholder={formattedPlaceholder}\n value={value}\n >\n {options.map(({ metadatas: { intlLabel, disabled, hidden }, key, value }) => {\n return (\n <SingleSelectOption key={key} value={value} disabled={disabled} hidden={hidden}>\n {formatMessage(intlLabel)}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n );\n }\n case 'textarea': {\n return (\n <Textarea\n disabled={disabled}\n onChange={(event) => onChange({ target: { name, value: event.target.value, type } })}\n placeholder={formattedPlaceholder}\n value={valueWithEmptyStringFallback}\n />\n );\n }\n case 'time': {\n const formattedValue = handleTimeChange({ value, onChange, name, type });\n\n return (\n <TimePicker\n clearLabel={formatMessage({ id: 'clearLabel', defaultMessage: 'Clear' })}\n disabled={disabled}\n onChange={(time) => handleTimeChangeEvent(onChange, name, type, time)}\n onClear={() => handleTimeChangeEvent(onChange, name, type, undefined)}\n value={formattedValue}\n />\n );\n }\n default: {\n /**\n * If there's no component for the given type, we return a disabled text input\n * showing a \"Not supported\" title to illustrate the issue.\n */\n return <TextInput disabled placeholder=\"Not supported\" type=\"text\" value=\"\" />;\n }\n }\n };\n\n return (\n <Field.Root error={errorMessage} name={name} hint={hint} required={required}>\n {type !== 'checkbox' ? <Field.Label action={labelAction}>{label}</Field.Label> : null}\n {getComponent()}\n <Field.Error />\n <Field.Hint />\n </Field.Root>\n );\n};\n\ntype FieldSchema = {\n minLength?: number | string;\n maxLength?: number | string;\n max?: number | string;\n min?: number | string;\n};\ninterface UseFieldHintProps {\n description?: MessageDescriptor & { values?: Record<string, PrimitiveType> };\n fieldSchema?: FieldSchema;\n type?: string;\n}\n\n/**\n * @description\n * A hook for generating the hint for a field\n */\nconst useFieldHint = ({ description, fieldSchema, type }: UseFieldHintProps) => {\n const { formatMessage } = useIntl();\n\n const buildDescription = () =>\n description?.id\n ? formatMessage(\n { id: description.id, defaultMessage: description.defaultMessage },\n { ...description.values }\n )\n : '';\n\n const buildHint = () => {\n const { maximum, minimum } = getMinMax(fieldSchema);\n const units = getFieldUnits({\n type,\n minimum,\n maximum,\n });\n\n const minIsNumber = typeof minimum === 'number';\n const maxIsNumber = typeof maximum === 'number';\n const hasMinAndMax = maxIsNumber && minIsNumber;\n const hasMinOrMax = maxIsNumber || minIsNumber;\n\n if (!description?.id && !hasMinOrMax) {\n return '';\n }\n\n return formatMessage(\n {\n id: 'content-manager.form.Input.hint.text',\n defaultMessage:\n '{min, select, undefined {} other {min. {min}}}{divider}{max, select, undefined {} other {max. {max}}}{unit}{br}{description}',\n },\n {\n min: minimum,\n max: maximum,\n description: buildDescription(),\n unit: units?.message && hasMinOrMax ? formatMessage(units.message, units.values) : null,\n divider: hasMinAndMax\n ? formatMessage({\n id: 'content-manager.form.Input.hint.minMaxDivider',\n defaultMessage: ' / ',\n })\n : null,\n br: hasMinOrMax ? <br /> : null,\n }\n );\n };\n\n return { hint: buildHint() };\n};\n\nconst getFieldUnits = ({\n type,\n minimum,\n maximum,\n}: {\n type?: string;\n minimum?: number;\n maximum?: number;\n}) => {\n if (type && !['string', 'uid', 'richtext', 'email', 'password', 'text'].includes(type)) {\n return {};\n }\n const maxValue = Math.max(minimum || 0, maximum || 0);\n\n return {\n message: {\n id: 'content-manager.form.Input.hint.character.unit',\n defaultMessage: '{maxValue, plural, one { character} other { characters}}',\n },\n values: {\n maxValue,\n },\n };\n};\n\nconst getMinMax = (fieldSchema?: FieldSchema) => {\n if (!fieldSchema) {\n return { maximum: undefined, minimum: undefined };\n }\n\n const { minLength, maxLength, max, min } = fieldSchema;\n\n let minimum;\n let maximum;\n\n const parsedMin = Number(min);\n const parsedMinLength = Number(minLength);\n\n if (!Number.isNaN(parsedMin)) {\n minimum = parsedMin;\n } else if (!Number.isNaN(parsedMinLength)) {\n minimum = parsedMinLength;\n }\n\n const parsedMax = Number(max);\n const parsedMaxLength = Number(maxLength);\n\n if (!Number.isNaN(parsedMax)) {\n maximum = parsedMax;\n } else if (!Number.isNaN(parsedMaxLength)) {\n maximum = parsedMaxLength;\n }\n\n return { maximum, minimum };\n};\n\n/**\n * we've memoized this component because we use a context to store all the data in our form in the content-manager.\n * This then causes _every_ component to re-render because there are no selects incurring performance issues\n * in content-types as the content-type gets more complicated.\n */\nconst MemoizedGenericInput = React.memo(GenericInput, isEqual);\n\nexport type { GenericInputProps, CustomInputProps };\nexport { MemoizedGenericInput as GenericInput };\n"],"names":["GenericInput","autoComplete","customInputs","description","disabled","intlLabel","labelAction","error","name","onChange","onDelete","options","placeholder","required","step","type","value","defaultValue","isNullable","autoFocus","attribute","attributeName","conditionFields","rest","formatMessage","useIntl","getFieldHintValue","key","hint","useFieldHint","fieldSchema","minLength","maxLength","max","min","showPassword","setShowPassword","React","useState","CustomInput","undefined","valueWithEmptyStringFallback","getErrorMessage","id","defaultMessage","values","errorMessage","_jsx","label","formattedPlaceholder","getComponent","JSONInput","json","length","target","minHeight","maxHeight","Toggle","checked","offLabel","onLabel","e","Checkbox","onCheckedChange","Boolean","dateValue","parseDateValue","DateTimePicker","clearLabel","date","formattedDate","toISOString","onClear","DatePicker","formatISO","representation","NumberInput","onValueChange","TextInput","endAction","button","aria-label","onClick","prev","style","border","padding","background","Eye","fill","EyeStriked","SingleSelect","map","metadatas","hidden","SingleSelectOption","Textarea","event","formattedValue","handleTimeChange","TimePicker","time","handleTimeChangeEvent","_jsxs","Field","Root","Label","action","Error","Hint","buildDescription","buildHint","maximum","minimum","getMinMax","units","getFieldUnits","minIsNumber","maxIsNumber","hasMinAndMax","hasMinOrMax","unit","message","divider","br","includes","maxValue","Math","parsedMin","Number","parsedMinLength","isNaN","parsedMax","parsedMaxLength","MemoizedGenericInput","memo","isEqual"],"mappings":"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"}
@@ -458,10 +458,13 @@ const GenericInput = ({ autoComplete, customInputs, description, disabled, intlL
458
458
  };
459
459
  };
460
460
  const getFieldUnits = ({ type, minimum, maximum })=>{
461
- if (type && [
462
- 'biginteger',
463
- 'integer',
464
- 'number'
461
+ if (type && ![
462
+ 'string',
463
+ 'uid',
464
+ 'richtext',
465
+ 'email',
466
+ 'password',
467
+ 'text'
465
468
  ].includes(type)) {
466
469
  return {};
467
470
  }