payload 0.20.1 → 0.20.4-beta.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.
- package/.eslintrc.js +21 -0
- package/CHANGELOG.md +33 -1
- package/components/elements.ts +1 -0
- package/components/index.js +2 -2
- package/components/styles.css +1 -1
- package/dist/admin/assets/fonts/SuisseIntl-Medium.woff +0 -0
- package/dist/admin/assets/fonts/SuisseIntl-Medium.woff2 +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-700.woff +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-700.woff2 +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-700italic.woff +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-700italic.woff2 +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-italic.woff +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-italic.woff2 +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-regular.woff +0 -0
- package/dist/admin/assets/fonts/merriweather-v30-latin-regular.woff2 +0 -0
- package/dist/admin/components/{forms/DraggableSection/ActionPanel → elements/ArrayAction}/index.d.ts +1 -2
- package/dist/admin/components/elements/ArrayAction/index.js +44 -0
- package/dist/admin/components/elements/ArrayAction/index.scss +54 -0
- package/dist/admin/components/elements/ArrayAction/types.d.ts +8 -0
- package/dist/admin/components/{forms/DraggableSection/ActionPanel → elements/ArrayAction}/types.js +0 -0
- package/dist/admin/components/elements/Banner/index.scss +13 -12
- package/dist/admin/components/elements/Button/index.js +2 -1
- package/dist/admin/components/elements/Button/index.scss +22 -21
- package/dist/admin/components/elements/Button/types.d.ts +2 -0
- package/dist/admin/components/elements/Card/index.js +3 -2
- package/dist/admin/components/elements/Card/index.scss +2 -2
- package/dist/admin/components/elements/Card/types.d.ts +1 -0
- package/dist/admin/components/{forms/DraggableSection/PositionPanel → elements/Collapsible}/index.d.ts +1 -2
- package/dist/admin/components/elements/Collapsible/index.js +43 -0
- package/dist/admin/components/elements/Collapsible/index.scss +113 -0
- package/dist/admin/components/elements/Collapsible/provider.d.ts +8 -0
- package/dist/admin/components/elements/Collapsible/provider.js +7 -0
- package/dist/admin/components/{forms/FieldTypeGutter → elements/Collapsible}/types.d.ts +7 -4
- package/dist/admin/components/{forms/DraggableSection/PositionPanel → elements/Collapsible}/types.js +0 -0
- package/dist/admin/components/elements/ColumnSelector/index.js +6 -3
- package/dist/admin/components/elements/ColumnSelector/index.scss +10 -1
- package/dist/admin/components/elements/DatePicker/index.scss +92 -47
- package/dist/admin/components/elements/DeleteDocument/index.js +5 -5
- package/dist/admin/components/elements/DeleteDocument/index.scss +5 -0
- package/dist/admin/components/elements/DeleteDocument/types.d.ts +1 -0
- package/dist/admin/components/elements/DuplicateDocument/index.js +1 -1
- package/dist/admin/components/elements/Eyebrow/index.js +4 -2
- package/dist/admin/components/elements/Eyebrow/index.scss +10 -6
- package/dist/admin/components/elements/FileDetails/index.scss +4 -4
- package/dist/admin/components/elements/GenerateConfirmation/index.js +1 -1
- package/dist/admin/components/elements/GenerateConfirmation/index.scss +5 -0
- package/dist/admin/components/elements/Gutter/index.d.ts +13 -0
- package/dist/admin/components/elements/Gutter/index.js +16 -0
- package/dist/admin/components/elements/Gutter/index.scss +19 -0
- package/dist/admin/components/elements/IDLabel/index.scss +2 -2
- package/dist/admin/components/elements/Loading/index.js +1 -1
- package/dist/admin/components/elements/Localizer/index.scss +2 -1
- package/dist/admin/components/elements/Nav/index.scss +12 -7
- package/dist/admin/components/elements/Paginator/ClickableArrow/index.scss +2 -2
- package/dist/admin/components/elements/Paginator/index.scss +5 -5
- package/dist/admin/components/elements/PerPage/index.js +1 -1
- package/dist/admin/components/elements/PerPage/index.scss +1 -2
- package/dist/admin/components/elements/Pill/index.scss +20 -16
- package/dist/admin/components/elements/Popup/PopupButton/index.js +2 -1
- package/dist/admin/components/elements/Popup/PopupButton/types.d.ts +1 -0
- package/dist/admin/components/elements/Popup/index.js +7 -7
- package/dist/admin/components/elements/Popup/index.scss +20 -17
- package/dist/admin/components/elements/Popup/types.d.ts +1 -0
- package/dist/admin/components/elements/ReactSelect/index.scss +20 -12
- package/dist/admin/components/elements/SortComplex/index.scss +3 -2
- package/dist/admin/components/elements/Status/index.js +2 -2
- package/dist/admin/components/elements/Status/index.scss +5 -0
- package/dist/admin/components/elements/StepNav/index.scss +0 -6
- package/dist/admin/components/elements/Table/index.js +2 -2
- package/dist/admin/components/elements/Table/index.scss +7 -4
- package/dist/admin/components/elements/Tooltip/index.scss +9 -9
- package/dist/admin/components/elements/UploadCard/index.scss +1 -1
- package/dist/admin/components/elements/WhereBuilder/Condition/Relationship/index.scss +3 -3
- package/dist/admin/components/elements/WhereBuilder/Condition/index.js +2 -2
- package/dist/admin/components/elements/WhereBuilder/index.js +1 -1
- package/dist/admin/components/elements/WhereBuilder/index.scss +1 -1
- package/dist/admin/components/forms/Error/index.scss +2 -3
- package/dist/admin/components/forms/FieldDescription/index.js +6 -2
- package/dist/admin/components/forms/FieldDescription/index.scss +1 -1
- package/dist/admin/components/forms/FieldDescription/types.d.ts +3 -2
- package/dist/admin/components/forms/FieldDescription/types.js +1 -1
- package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.js +17 -0
- package/dist/admin/components/forms/Form/fieldReducer.js +18 -0
- package/dist/admin/components/forms/Label/index.scss +2 -2
- package/dist/admin/components/forms/RenderFields/index.js +2 -2
- package/dist/admin/components/forms/RenderFields/types.d.ts +1 -0
- package/dist/admin/components/forms/Submit/index.js +2 -2
- package/dist/admin/components/forms/field-types/Array/Array.js +93 -12
- package/dist/admin/components/forms/field-types/Array/index.scss +33 -35
- package/dist/admin/components/forms/field-types/Blocks/BlockSelector/BlockSelection/index.scss +3 -1
- package/dist/admin/components/forms/field-types/Blocks/Blocks.js +83 -37
- package/dist/admin/components/forms/{DraggableSection → field-types/Blocks}/SectionTitle/index.d.ts +0 -0
- package/dist/admin/components/forms/{DraggableSection → field-types/Blocks}/SectionTitle/index.js +8 -6
- package/dist/admin/components/forms/field-types/Blocks/SectionTitle/index.scss +49 -0
- package/dist/admin/components/forms/{DraggableSection → field-types/Blocks}/SectionTitle/types.d.ts +0 -1
- package/dist/admin/components/forms/{DraggableSection → field-types/Blocks}/SectionTitle/types.js +0 -0
- package/dist/admin/components/forms/field-types/Blocks/index.scss +53 -27
- package/dist/admin/components/forms/field-types/Checkbox/index.js +1 -1
- package/dist/admin/components/forms/field-types/Checkbox/index.scss +2 -2
- package/dist/admin/components/forms/field-types/Code/Code.js +4 -4
- package/dist/admin/components/forms/field-types/Code/index.scss +4 -4
- package/dist/admin/components/forms/{FieldTypeGutter → field-types/Collapsible}/index.d.ts +2 -2
- package/dist/admin/components/forms/field-types/Collapsible/index.js +44 -0
- package/dist/admin/components/forms/field-types/Collapsible/index.scss +11 -0
- package/dist/admin/components/forms/field-types/Collapsible/types.d.ts +8 -0
- package/dist/admin/components/forms/{DraggableSection → field-types/Collapsible}/types.js +0 -0
- package/dist/admin/components/forms/field-types/ConfirmPassword/index.js +2 -2
- package/dist/admin/components/forms/field-types/ConfirmPassword/index.scss +9 -9
- package/dist/admin/components/forms/field-types/DateTime/index.js +1 -1
- package/dist/admin/components/forms/field-types/DateTime/index.scss +1 -1
- package/dist/admin/components/forms/field-types/Email/index.js +1 -1
- package/dist/admin/components/forms/field-types/Email/index.scss +8 -8
- package/dist/admin/components/forms/field-types/Group/index.js +11 -14
- package/dist/admin/components/forms/field-types/Group/index.scss +25 -37
- package/dist/admin/components/forms/field-types/HiddenInput/index.js +1 -1
- package/dist/admin/components/forms/field-types/Number/index.js +2 -2
- package/dist/admin/components/forms/field-types/Number/index.scss +9 -9
- package/dist/admin/components/forms/field-types/Password/index.js +2 -2
- package/dist/admin/components/forms/field-types/Password/index.scss +9 -9
- package/dist/admin/components/forms/field-types/Point/index.js +4 -4
- package/dist/admin/components/forms/field-types/Point/index.scss +9 -9
- package/dist/admin/components/forms/field-types/RadioGroup/Input.d.ts +22 -0
- package/dist/admin/components/forms/field-types/RadioGroup/Input.js +41 -0
- package/dist/admin/components/forms/field-types/RadioGroup/RadioInput/index.js +1 -1
- package/dist/admin/components/forms/field-types/RadioGroup/RadioInput/index.scss +4 -4
- package/dist/admin/components/forms/field-types/RadioGroup/RadioInput/types.d.ts +2 -1
- package/dist/admin/components/forms/field-types/RadioGroup/index.d.ts +0 -1
- package/dist/admin/components/forms/field-types/RadioGroup/index.js +2 -35
- package/dist/admin/components/forms/field-types/RadioGroup/types.d.ts +1 -0
- package/dist/admin/components/forms/field-types/Relationship/index.js +1 -1
- package/dist/admin/components/forms/field-types/Relationship/index.scss +4 -4
- package/dist/admin/components/forms/field-types/RichText/RichText.js +30 -31
- package/dist/admin/components/forms/field-types/RichText/elements/link/index.js +1 -1
- package/dist/admin/components/forms/field-types/RichText/elements/link/index.scss +6 -6
- package/dist/admin/components/forms/field-types/RichText/elements/ol/index.d.ts +1 -0
- package/dist/admin/components/forms/field-types/RichText/elements/ol/index.js +2 -1
- package/dist/admin/components/forms/field-types/RichText/elements/ol/index.scss +7 -0
- package/dist/admin/components/forms/field-types/RichText/elements/relationship/Button/index.js +1 -1
- package/dist/admin/components/forms/field-types/RichText/elements/relationship/Button/index.scss +5 -3
- package/dist/admin/components/forms/field-types/RichText/elements/relationship/Element/index.scss +13 -2
- package/dist/admin/components/forms/field-types/RichText/elements/ul/index.d.ts +1 -0
- package/dist/admin/components/forms/field-types/RichText/elements/ul/index.js +2 -1
- package/dist/admin/components/forms/field-types/RichText/elements/ul/index.scss +7 -0
- package/dist/admin/components/forms/field-types/RichText/elements/upload/Element/EditModal/index.scss +6 -2
- package/dist/admin/components/forms/field-types/RichText/elements/upload/Element/index.js +1 -1
- package/dist/admin/components/forms/field-types/RichText/elements/upload/Element/index.scss +17 -4
- package/dist/admin/components/forms/field-types/RichText/elements/upload/addSwapModals.scss +2 -0
- package/dist/admin/components/forms/field-types/RichText/index.scss +66 -20
- package/dist/admin/components/forms/field-types/Select/Input.js +1 -1
- package/dist/admin/components/forms/field-types/Select/index.scss +1 -1
- package/dist/admin/components/forms/field-types/Tabs/index.d.ts +5 -0
- package/dist/admin/components/forms/field-types/Tabs/index.js +36 -0
- package/dist/admin/components/forms/field-types/Tabs/index.scss +91 -0
- package/dist/admin/components/forms/field-types/Tabs/types.d.ts +8 -0
- package/dist/admin/components/forms/{FieldTypeGutter → field-types/Tabs}/types.js +0 -0
- package/dist/admin/components/forms/field-types/Text/Input.js +2 -2
- package/dist/admin/components/forms/field-types/Text/index.scss +9 -9
- package/dist/admin/components/forms/field-types/Textarea/Input.js +2 -2
- package/dist/admin/components/forms/field-types/Textarea/index.scss +1 -1
- package/dist/admin/components/forms/field-types/Upload/Add/index.js +1 -3
- package/dist/admin/components/forms/field-types/Upload/Add/index.scss +2 -0
- package/dist/admin/components/forms/field-types/Upload/SelectExisting/index.scss +2 -0
- package/dist/admin/components/forms/field-types/Upload/index.scss +2 -2
- package/dist/admin/components/forms/field-types/index.d.ts +2 -0
- package/dist/admin/components/forms/field-types/index.js +4 -0
- package/dist/admin/components/forms/field-types/rowReducer.d.ts +39 -1
- package/dist/admin/components/forms/field-types/rowReducer.js +18 -5
- package/dist/admin/components/forms/useField/index.js +4 -5
- package/dist/admin/components/graphics/Account/index.js +14 -4
- package/dist/admin/components/graphics/Icon/index.js +9 -3
- package/dist/admin/components/graphics/Logo/index.js +16 -10
- package/dist/admin/components/icons/Calendar/index.scss +1 -1
- package/dist/admin/components/icons/Check/index.scss +1 -1
- package/dist/admin/components/icons/Chevron/index.scss +1 -1
- package/dist/admin/components/icons/CloseMenu/index.scss +1 -1
- package/dist/admin/components/icons/Copy/index.scss +1 -1
- package/dist/admin/components/icons/Drag/index.d.ts +6 -0
- package/dist/admin/components/icons/Drag/index.js +13 -0
- package/dist/admin/components/icons/Drag/index.scss +10 -0
- package/dist/admin/components/icons/Edit/index.scss +1 -1
- package/dist/admin/components/icons/IndentLeft/index.scss +2 -2
- package/dist/admin/components/icons/IndentRight/index.js +1 -1
- package/dist/admin/components/icons/IndentRight/index.scss +2 -2
- package/dist/admin/components/icons/LogOut/index.scss +1 -1
- package/dist/admin/components/icons/Menu/index.d.ts +1 -0
- package/dist/admin/components/icons/Menu/index.js +5 -4
- package/dist/admin/components/icons/Menu/index.scss +7 -0
- package/dist/admin/components/icons/More/index.d.ts +6 -0
- package/dist/admin/components/icons/More/index.js +10 -0
- package/dist/admin/components/icons/More/index.scss +10 -0
- package/dist/admin/components/icons/Plus/index.scss +1 -1
- package/dist/admin/components/icons/Relationship/index.scss +1 -1
- package/dist/admin/components/icons/Search/index.d.ts +1 -0
- package/dist/admin/components/icons/Search/index.js +4 -3
- package/dist/admin/components/icons/Search/index.scss +11 -0
- package/dist/admin/components/icons/Swap/index.scss +1 -1
- package/dist/admin/components/icons/Upload/index.scss +1 -1
- package/dist/admin/components/icons/X/index.d.ts +3 -1
- package/dist/admin/components/icons/X/index.js +4 -1
- package/dist/admin/components/icons/X/index.scss +1 -1
- package/dist/admin/components/modals/LeaveWithoutSaving/index.js +1 -1
- package/dist/admin/components/modals/LeaveWithoutSaving/index.scss +5 -0
- package/dist/admin/components/modals/StayLoggedIn/index.js +1 -1
- package/dist/admin/components/modals/StayLoggedIn/index.scss +5 -0
- package/dist/admin/components/templates/Default/index.scss +1 -7
- package/dist/admin/components/utilities/DocumentInfo/index.js +11 -0
- package/dist/admin/components/utilities/DocumentInfo/types.d.ts +2 -0
- package/dist/admin/components/utilities/Theme/index.d.ts +13 -0
- package/dist/admin/components/utilities/Theme/index.js +47 -0
- package/dist/admin/components/views/Account/Default.js +9 -4
- package/dist/admin/components/views/Account/ToggleTheme/index.d.ts +2 -0
- package/dist/admin/components/views/Account/ToggleTheme/index.js +23 -0
- package/dist/admin/components/views/Account/index.js +12 -14
- package/dist/admin/components/views/Account/index.scss +37 -21
- package/dist/admin/components/views/CreateFirstUser/index.js +4 -6
- package/dist/admin/components/views/Dashboard/Default.js +5 -4
- package/dist/admin/components/views/Dashboard/index.scss +3 -11
- package/dist/admin/components/views/Global/Default.js +3 -2
- package/dist/admin/components/views/Global/index.js +12 -14
- package/dist/admin/components/views/Global/index.scss +22 -22
- package/dist/admin/components/views/NotFound/index.d.ts +0 -1
- package/dist/admin/components/views/NotFound/index.js +2 -2
- package/dist/admin/components/views/Version/Compare/index.scss +3 -3
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +4 -4
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +1 -1
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +2 -1
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +1 -1
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +7 -0
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +8 -0
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Text/index.js +2 -1
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/Text/index.scss +1 -1
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/index.d.ts +6 -0
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/index.js +3 -0
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/styles.d.ts +13 -0
- package/dist/admin/components/views/Version/RenderFieldsToDiff/fields/styles.js +13 -0
- package/dist/admin/components/views/Version/RenderFieldsToDiff/index.js +5 -1
- package/dist/admin/components/views/Version/Restore/index.js +1 -1
- package/dist/admin/components/views/Version/Restore/index.scss +5 -0
- package/dist/admin/components/views/Version/Version.js +2 -1
- package/dist/admin/components/views/Version/index.scss +4 -7
- package/dist/admin/components/views/Versions/index.js +3 -2
- package/dist/admin/components/views/Versions/index.scss +2 -12
- package/dist/admin/components/views/collections/Edit/Auth/index.scss +3 -2
- package/dist/admin/components/views/collections/Edit/Default.js +5 -4
- package/dist/admin/components/views/collections/Edit/Upload/index.scss +5 -5
- package/dist/admin/components/views/collections/Edit/index.js +16 -18
- package/dist/admin/components/views/collections/Edit/index.scss +20 -21
- package/dist/admin/components/views/collections/List/Cell/field-types/Checkbox/index.scss +4 -4
- package/dist/admin/components/views/collections/List/Cell/field-types/Code/index.scss +4 -4
- package/dist/admin/components/views/collections/List/Cell/field-types/Relationship/index.d.ts +1 -0
- package/dist/admin/components/views/collections/List/Cell/field-types/Relationship/index.js +41 -34
- package/dist/admin/components/views/collections/List/Cell/field-types/Relationship/index.scss +3 -0
- package/dist/admin/components/views/collections/List/Cell/field-types/Upload/index.d.ts +0 -5
- package/dist/admin/components/views/collections/List/Cell/field-types/Upload/index.js +0 -4
- package/dist/admin/components/views/collections/List/Cell/field-types/index.d.ts +1 -3
- package/dist/admin/components/views/collections/List/Cell/field-types/index.js +1 -2
- package/dist/admin/components/views/collections/List/Default.js +8 -6
- package/dist/admin/components/views/collections/List/RelationshipProvider/index.d.ts +19 -0
- package/dist/admin/components/views/collections/List/RelationshipProvider/index.js +46 -0
- package/dist/admin/components/views/collections/List/RelationshipProvider/reducer.d.ts +18 -0
- package/dist/admin/components/views/collections/List/RelationshipProvider/reducer.js +34 -0
- package/dist/admin/components/views/collections/List/buildColumns.js +26 -31
- package/dist/admin/components/views/collections/List/getInitialColumns.js +25 -23
- package/dist/admin/components/views/collections/List/index.js +2 -2
- package/dist/admin/components/views/collections/List/index.scss +4 -15
- package/dist/admin/index.js +7 -5
- package/dist/admin/scss/app.scss +52 -14
- package/dist/admin/scss/colors.scss +245 -0
- package/dist/admin/scss/fonts.scss +41 -14
- package/dist/admin/scss/resets.scss +1 -0
- package/dist/admin/scss/styles.scss +0 -2
- package/dist/admin/scss/toastify.scss +12 -8
- package/dist/admin/scss/type.scss +11 -9
- package/dist/admin/scss/vars.scss +50 -53
- package/dist/admin/utilities/flattenTopLevelFields.d.ts +3 -0
- package/dist/admin/utilities/flattenTopLevelFields.js +30 -0
- package/dist/admin/utilities/getOffsetTop.d.ts +1 -2
- package/dist/admin/utilities/getOffsetTop.js +1 -1
- package/dist/admin/utilities/scrollToID.d.ts +1 -0
- package/dist/admin/utilities/scrollToID.js +10 -0
- package/dist/auth/operations/access.js +6 -1
- package/dist/bin/generateTypes.js +11 -2
- package/dist/collections/graphql/init.js +2 -2
- package/dist/collections/operations/local/create.js +1 -1
- package/dist/collections/tests/collections.spec.js +1 -78
- package/dist/config/defaults.js +1 -2
- package/dist/config/schema.js +2 -2
- package/dist/config/types.d.ts +2 -2
- package/dist/express/admin.js +2 -2
- package/dist/fields/config/sanitize.js +8 -1
- package/dist/fields/config/schema.d.ts +2 -0
- package/dist/fields/config/schema.js +19 -7
- package/dist/fields/config/types.d.ts +19 -11
- package/dist/fields/config/types.js +2 -2
- package/dist/fields/hooks/afterChange/promise.js +18 -2
- package/dist/fields/hooks/afterRead/promise.js +22 -2
- package/dist/fields/hooks/beforeChange/promise.js +25 -2
- package/dist/fields/hooks/beforeValidate/promise.js +20 -2
- package/dist/fields/richText/recurseNestedFields.js +15 -1
- package/dist/graphql/schema/buildMutationInputType.d.ts +4 -1
- package/dist/graphql/schema/buildMutationInputType.js +94 -70
- package/dist/graphql/schema/buildObjectType.d.ts +5 -3
- package/dist/graphql/schema/buildObjectType.js +114 -71
- package/dist/graphql/schema/buildPoliciesType.js +9 -1
- package/dist/graphql/schema/buildWhereInputType.js +2 -2
- package/dist/graphql/schema/fieldToWhereInputSchemaMap.js +56 -7
- package/dist/graphql/schema/withNullableType.js +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +9 -7
- package/dist/mongoose/buildSchema.js +28 -7
- package/dist/mongoose/connect.d.ts +1 -1
- package/dist/mongoose/connect.js +24 -19
- package/dist/mongoose/testCredentials.d.ts +7 -7
- package/dist/mongoose/testCredentials.js +1 -1
- package/dist/utilities/mapAsync.d.ts +1 -0
- package/dist/utilities/mapAsync.js +8 -0
- package/dist/webpack/getBaseConfig.js +1 -2
- package/docs/admin/customizing-css.mdx +16 -28
- package/docs/fields/collapsible.mdx +44 -0
- package/docs/fields/date.mdx +1 -1
- package/docs/fields/email.mdx +1 -1
- package/docs/fields/group.mdx +1 -1
- package/docs/fields/number.mdx +1 -1
- package/docs/fields/overview.mdx +1 -0
- package/docs/fields/point.mdx +1 -1
- package/docs/fields/radio.mdx +1 -1
- package/docs/fields/relationship.mdx +1 -1
- package/docs/fields/rich-text.mdx +1 -1
- package/docs/fields/row.mdx +1 -1
- package/docs/fields/select.mdx +1 -1
- package/docs/fields/tabs.mdx +9 -0
- package/docs/fields/text.mdx +1 -1
- package/docs/fields/textarea.mdx +1 -1
- package/docs/fields/ui.mdx +1 -1
- package/docs/fields/upload.mdx +1 -1
- package/package.json +13 -11
- package/scss/index.scss +0 -7
- package/dist/admin/assets/fonts/SuisseIntl-Light.woff +0 -0
- package/dist/admin/assets/fonts/SuisseIntl-Light.woff2 +0 -0
- package/dist/admin/assets/fonts/SuisseIntl-Thin.woff +0 -0
- package/dist/admin/assets/fonts/SuisseIntl-Thin.woff2 +0 -0
- package/dist/admin/components/forms/DraggableSection/ActionPanel/index.js +0 -22
- package/dist/admin/components/forms/DraggableSection/ActionPanel/index.scss +0 -12
- package/dist/admin/components/forms/DraggableSection/ActionPanel/types.d.ts +0 -11
- package/dist/admin/components/forms/DraggableSection/PositionPanel/index.js +0 -18
- package/dist/admin/components/forms/DraggableSection/PositionPanel/index.scss +0 -21
- package/dist/admin/components/forms/DraggableSection/PositionPanel/types.d.ts +0 -6
- package/dist/admin/components/forms/DraggableSection/SectionTitle/index.scss +0 -37
- package/dist/admin/components/forms/DraggableSection/index.d.ts +0 -5
- package/dist/admin/components/forms/DraggableSection/index.js +0 -40
- package/dist/admin/components/forms/DraggableSection/index.scss +0 -113
- package/dist/admin/components/forms/DraggableSection/types.d.ts +0 -24
- package/dist/admin/components/forms/FieldTypeGutter/context.d.ts +0 -6
- package/dist/admin/components/forms/FieldTypeGutter/context.js +0 -9
- package/dist/admin/components/forms/FieldTypeGutter/index.js +0 -18
- package/dist/admin/components/forms/FieldTypeGutter/index.scss +0 -87
- package/dist/admin/components/views/NotFound/index.scss +0 -10
- package/dist/collections/tests/uploads.spec.d.ts +0 -1
- package/dist/collections/tests/uploads.spec.js +0 -365
- package/dist/errors/errors.spec.d.ts +0 -1
- package/dist/errors/errors.spec.js +0 -29
- package/dist/utilities/flattenTopLevelFields.d.ts +0 -2
- package/dist/utilities/flattenTopLevelFields.js +0 -16
|
@@ -5,28 +5,76 @@
|
|
|
5
5
|
display: flex;
|
|
6
6
|
|
|
7
7
|
&__toolbar {
|
|
8
|
-
@include blur-bg(
|
|
9
|
-
display: flex;
|
|
10
|
-
flex-wrap: wrap;
|
|
11
|
-
align-items: stretch;
|
|
8
|
+
@include blur-bg(var(--theme-elevation-0));
|
|
12
9
|
margin-bottom: $baseline;
|
|
13
|
-
border: $style-stroke-width-s solid
|
|
14
|
-
padding: base(.25);
|
|
10
|
+
border: $style-stroke-width-s solid var(--theme-elevation-150);
|
|
15
11
|
position: sticky;
|
|
16
|
-
|
|
12
|
+
z-index: 2;
|
|
13
|
+
top: base(4);
|
|
17
14
|
}
|
|
18
15
|
|
|
19
|
-
&
|
|
16
|
+
&__toolbar-wrap {
|
|
17
|
+
padding: base(.25);
|
|
18
|
+
display: flex;
|
|
19
|
+
flex-wrap: wrap;
|
|
20
|
+
align-items: stretch;
|
|
21
|
+
position: relative;
|
|
22
|
+
z-index: 1;
|
|
20
23
|
|
|
21
|
-
|
|
22
|
-
|
|
24
|
+
&:after {
|
|
25
|
+
content: ' ';
|
|
26
|
+
opacity: .8;
|
|
27
|
+
position: absolute;
|
|
28
|
+
top: calc(100% + 1px);
|
|
29
|
+
background: linear-gradient(var(--theme-elevation-0), transparent);
|
|
30
|
+
display: block;
|
|
31
|
+
left: -1px;
|
|
32
|
+
right: -1px;
|
|
33
|
+
height: base(1);
|
|
23
34
|
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
&__editor {
|
|
38
|
+
font-family: var(--font-serif);
|
|
39
|
+
font-size: base(.625);
|
|
24
40
|
|
|
25
41
|
h1,
|
|
26
42
|
h2,
|
|
27
43
|
h3,
|
|
28
|
-
h4
|
|
29
|
-
|
|
44
|
+
h4,
|
|
45
|
+
h5,
|
|
46
|
+
h6 {
|
|
47
|
+
font-family: var(--font-body);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
h1[data-slate-node=element] {
|
|
51
|
+
font-size: base(1.5);
|
|
52
|
+
margin: base(1) 0 base(.5);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
h2[data-slate-node=element] {
|
|
56
|
+
font-size: base(1.25);
|
|
57
|
+
margin: base(1) 0 base(.5);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
h3[data-slate-node=element] {
|
|
61
|
+
font-size: base(1.125);
|
|
62
|
+
margin: base(.75) 0 base(.5);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
h4[data-slate-node=element] {
|
|
66
|
+
font-size: base(1);
|
|
67
|
+
margin: base(.5) 0 base(.5);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
h5[data-slate-node=element] {
|
|
71
|
+
font-size: base(.875);
|
|
72
|
+
margin: base(.25) 0 base(.25);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
h6[data-slate-node=element] {
|
|
76
|
+
font-size: base(.75);
|
|
77
|
+
margin: base(.25) 0 base(.25);
|
|
30
78
|
}
|
|
31
79
|
}
|
|
32
80
|
|
|
@@ -45,7 +93,7 @@
|
|
|
45
93
|
|
|
46
94
|
&--read-only {
|
|
47
95
|
.rich-text__editor {
|
|
48
|
-
background-color:
|
|
96
|
+
background-color: var(--theme-elevation-150);
|
|
49
97
|
padding: base(.5);
|
|
50
98
|
}
|
|
51
99
|
}
|
|
@@ -55,24 +103,22 @@
|
|
|
55
103
|
padding: base(0.25);
|
|
56
104
|
|
|
57
105
|
svg {
|
|
58
|
-
@include color-svg(
|
|
106
|
+
@include color-svg(var(--theme-elevation-800));
|
|
59
107
|
width: base(0.75);
|
|
60
108
|
height: base(0.75);
|
|
61
109
|
}
|
|
62
110
|
|
|
63
111
|
&:hover {
|
|
64
|
-
background-color:
|
|
112
|
+
background-color: var(--theme-elevation-100);
|
|
65
113
|
}
|
|
66
114
|
|
|
67
115
|
&__button--active,
|
|
68
116
|
&__button--active:hover {
|
|
69
|
-
background-color:
|
|
117
|
+
background-color: var(--theme-elevation-150);
|
|
70
118
|
}
|
|
71
119
|
}
|
|
72
120
|
}
|
|
73
121
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
top: base(7);
|
|
77
|
-
}
|
|
122
|
+
[data-slate-node=element] {
|
|
123
|
+
margin-bottom: base(0.25);
|
|
78
124
|
}
|
|
@@ -21,7 +21,7 @@ const SelectInput = (props) => {
|
|
|
21
21
|
else {
|
|
22
22
|
valueToRender = options.find((option) => option.value === value);
|
|
23
23
|
}
|
|
24
|
-
return (React.createElement("div", { className: classes, style: {
|
|
24
|
+
return (React.createElement("div", { id: `field-${path}`, className: classes, style: {
|
|
25
25
|
...style,
|
|
26
26
|
width,
|
|
27
27
|
} },
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import RenderFields from '../../RenderFields';
|
|
3
|
+
import withCondition from '../../withCondition';
|
|
4
|
+
import { fieldAffectsData } from '../../../../../fields/config/types';
|
|
5
|
+
import FieldDescription from '../../FieldDescription';
|
|
6
|
+
import toKebabCase from '../../../../../utilities/toKebabCase';
|
|
7
|
+
import { useCollapsible } from '../../../elements/Collapsible/provider';
|
|
8
|
+
import './index.scss';
|
|
9
|
+
const baseClass = 'tabs-field';
|
|
10
|
+
const TabsField = (props) => {
|
|
11
|
+
const { tabs, fieldTypes, path, permissions, admin: { readOnly, className, }, } = props;
|
|
12
|
+
const isWithinCollapsible = useCollapsible();
|
|
13
|
+
const [active, setActive] = useState(0);
|
|
14
|
+
const activeTab = tabs[active];
|
|
15
|
+
return (React.createElement("div", { className: [
|
|
16
|
+
className,
|
|
17
|
+
baseClass,
|
|
18
|
+
isWithinCollapsible && `${baseClass}--within-collapsible`,
|
|
19
|
+
].filter(Boolean).join(' ') },
|
|
20
|
+
React.createElement("div", { className: `${baseClass}__tabs` }, tabs.map((tab, i) => {
|
|
21
|
+
return (React.createElement("button", { key: i, type: "button", className: [
|
|
22
|
+
`${baseClass}__tab-button`,
|
|
23
|
+
active === i && `${baseClass}__tab-button--active`,
|
|
24
|
+
].filter(Boolean).join(' '), onClick: () => setActive(i) }, tab.label));
|
|
25
|
+
})),
|
|
26
|
+
React.createElement("div", { className: `${baseClass}__content-wrap` }, activeTab && (React.createElement("div", { className: [
|
|
27
|
+
`${baseClass}__tab`,
|
|
28
|
+
`${baseClass}__tab-${toKebabCase(activeTab.label)}`,
|
|
29
|
+
].join(' ') },
|
|
30
|
+
React.createElement(FieldDescription, { className: `${baseClass}__description`, description: activeTab.description }),
|
|
31
|
+
React.createElement(RenderFields, { forceRender: true, readOnly: readOnly, permissions: permissions === null || permissions === void 0 ? void 0 : permissions.fields, fieldTypes: fieldTypes, fieldSchema: activeTab.fields.map((field) => ({
|
|
32
|
+
...field,
|
|
33
|
+
path: `${path ? `${path}.` : ''}${fieldAffectsData(field) ? field.name : ''}`,
|
|
34
|
+
})) }))))));
|
|
35
|
+
};
|
|
36
|
+
export default withCondition(TabsField);
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
@import '../../../../scss/styles.scss';
|
|
2
|
+
|
|
3
|
+
.tabs-field {
|
|
4
|
+
margin-left: calc(var(--gutter-h) * -1);
|
|
5
|
+
margin-right: calc(var(--gutter-h) * -1);
|
|
6
|
+
margin-bottom: base(2);
|
|
7
|
+
|
|
8
|
+
&__tabs,
|
|
9
|
+
&__content-wrap {
|
|
10
|
+
padding-left: var(--gutter-h);
|
|
11
|
+
padding-right: var(--gutter-h);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
&--within-collapsible {
|
|
15
|
+
margin-left: calc(#{$baseline} * -1);
|
|
16
|
+
margin-right: calc(#{$baseline} * -1);
|
|
17
|
+
margin-bottom: 0;
|
|
18
|
+
|
|
19
|
+
.tabs-field__tabs,
|
|
20
|
+
.tabs-field__content-wrap {
|
|
21
|
+
padding-left: $baseline;
|
|
22
|
+
padding-right: $baseline;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&__tabs {
|
|
27
|
+
border-bottom: 1px solid var(--theme-elevation-100);
|
|
28
|
+
margin-bottom: $baseline;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&__tab-button {
|
|
32
|
+
@extend %btn-reset;
|
|
33
|
+
@extend %h4;
|
|
34
|
+
padding-bottom: base(.5);
|
|
35
|
+
margin: 0 $baseline 0 0;
|
|
36
|
+
cursor: pointer;
|
|
37
|
+
opacity: .5;
|
|
38
|
+
position: relative;
|
|
39
|
+
|
|
40
|
+
&:last-child {
|
|
41
|
+
margin: 0;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
&:after {
|
|
45
|
+
content: ' ';
|
|
46
|
+
position: absolute;
|
|
47
|
+
right: 0;
|
|
48
|
+
bottom: -1px;
|
|
49
|
+
left: 0;
|
|
50
|
+
height: 1px;
|
|
51
|
+
background: var(--theme-elevation-800);
|
|
52
|
+
opacity: 0;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
&:hover {
|
|
56
|
+
opacity: .75;
|
|
57
|
+
|
|
58
|
+
&:after {
|
|
59
|
+
opacity: .2;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
&__tab-button--active {
|
|
65
|
+
opacity: 1 !important;
|
|
66
|
+
|
|
67
|
+
&:after {
|
|
68
|
+
opacity: 1 !important;
|
|
69
|
+
height: 2px;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
&__description {
|
|
74
|
+
margin-bottom: $baseline;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
@include small-break {
|
|
78
|
+
&--within-collapsible {
|
|
79
|
+
margin-left: calc(var(--gutter-h) * -1);
|
|
80
|
+
margin-right: calc(var(--gutter-h) * -1);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
&__tab-button {
|
|
84
|
+
margin: 0 base(.75) 0 0;
|
|
85
|
+
|
|
86
|
+
&:last-child {
|
|
87
|
+
margin: 0;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TabsField } from '../../../../../fields/config/types';
|
|
2
|
+
import { FieldTypes } from '..';
|
|
3
|
+
import { FieldPermissions } from '../../../../../auth/types';
|
|
4
|
+
export declare type Props = Omit<TabsField, 'type'> & {
|
|
5
|
+
path?: string;
|
|
6
|
+
fieldTypes: FieldTypes;
|
|
7
|
+
permissions: FieldPermissions;
|
|
8
|
+
};
|
|
File without changes
|
|
@@ -18,8 +18,8 @@ const TextInput = (props) => {
|
|
|
18
18
|
width,
|
|
19
19
|
} },
|
|
20
20
|
React.createElement(Error, { showError: showError, message: errorMessage }),
|
|
21
|
-
React.createElement(Label, { htmlFor: path
|
|
22
|
-
React.createElement("input", { value: value || '', onChange: onChange, disabled: readOnly, placeholder: placeholder, type: "text",
|
|
21
|
+
React.createElement(Label, { htmlFor: `field-${path}`, label: label, required: required }),
|
|
22
|
+
React.createElement("input", { id: `field-${path}`, value: value || '', onChange: onChange, disabled: readOnly, placeholder: placeholder, type: "text", name: path }),
|
|
23
23
|
React.createElement(FieldDescription, { value: value, description: description })));
|
|
24
24
|
};
|
|
25
25
|
export default TextInput;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
@import '../../../../scss/styles.scss';
|
|
2
2
|
|
|
3
3
|
.field-type.text {
|
|
4
|
-
|
|
4
|
+
position: relative;
|
|
5
5
|
margin-bottom: $baseline;
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
input {
|
|
8
|
+
@include formInput;
|
|
9
|
+
}
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
background-color:
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
&.error {
|
|
12
|
+
input {
|
|
13
|
+
background-color: var(--theme-error-200);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
16
|
}
|
|
@@ -17,8 +17,8 @@ const TextareaInput = (props) => {
|
|
|
17
17
|
width,
|
|
18
18
|
} },
|
|
19
19
|
React.createElement(Error, { showError: showError, message: errorMessage }),
|
|
20
|
-
React.createElement(Label, { htmlFor: path
|
|
21
|
-
React.createElement("textarea", { value: value || '', onChange: onChange, disabled: readOnly, placeholder: placeholder,
|
|
20
|
+
React.createElement(Label, { htmlFor: `field-${path}`, label: label, required: required }),
|
|
21
|
+
React.createElement("textarea", { id: `field-${path}`, value: value || '', onChange: onChange, disabled: readOnly, placeholder: placeholder, name: path, rows: rows }),
|
|
22
22
|
React.createElement(FieldDescription, { value: value, description: description })));
|
|
23
23
|
};
|
|
24
24
|
export default TextareaInput;
|
|
@@ -8,7 +8,6 @@ import Button from '../../../../elements/Button';
|
|
|
8
8
|
import RenderFields from '../../../RenderFields';
|
|
9
9
|
import FormSubmit from '../../../Submit';
|
|
10
10
|
import Upload from '../../../../views/collections/Edit/Upload';
|
|
11
|
-
import { NegativeFieldGutterProvider } from '../../../FieldTypeGutter/context';
|
|
12
11
|
import ViewDescription from '../../../../elements/ViewDescription';
|
|
13
12
|
import './index.scss';
|
|
14
13
|
const baseClass = 'add-upload-modal';
|
|
@@ -40,7 +39,6 @@ const AddUploadModal = (props) => {
|
|
|
40
39
|
description && (React.createElement("div", { className: `${baseClass}__sub-header` },
|
|
41
40
|
React.createElement(ViewDescription, { description: description })))),
|
|
42
41
|
React.createElement(Upload, { collection: collection }),
|
|
43
|
-
React.createElement(
|
|
44
|
-
React.createElement(RenderFields, { permissions: collectionPermissions, readOnly: false, fieldTypes: fieldTypes, fieldSchema: collection.fields }))))));
|
|
42
|
+
React.createElement(RenderFields, { permissions: collectionPermissions, readOnly: false, fieldTypes: fieldTypes, fieldSchema: collection.fields })))));
|
|
45
43
|
};
|
|
46
44
|
export default AddUploadModal;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
@import '../../../../scss/styles';
|
|
2
2
|
|
|
3
3
|
.upload {
|
|
4
|
-
|
|
4
|
+
position: relative;
|
|
5
5
|
margin-bottom: $baseline;
|
|
6
6
|
min-width: base(15);
|
|
7
7
|
|
|
8
8
|
&__wrap {
|
|
9
9
|
display: flex;
|
|
10
10
|
padding: base(1.5) base(1.5) $baseline;
|
|
11
|
-
background:
|
|
11
|
+
background: var(--theme-elevation-100);
|
|
12
12
|
|
|
13
13
|
.btn {
|
|
14
14
|
margin: 0 $baseline base(.5) 0;
|
|
@@ -17,6 +17,8 @@ import blocks from './Blocks';
|
|
|
17
17
|
import group from './Group';
|
|
18
18
|
import array from './Array';
|
|
19
19
|
import row from './Row';
|
|
20
|
+
import collapsible from './Collapsible';
|
|
21
|
+
import tabs from './Tabs';
|
|
20
22
|
import upload from './Upload';
|
|
21
23
|
import ui from './UI';
|
|
22
24
|
const fieldTypes = {
|
|
@@ -39,6 +41,8 @@ const fieldTypes = {
|
|
|
39
41
|
group,
|
|
40
42
|
array,
|
|
41
43
|
row,
|
|
44
|
+
collapsible,
|
|
45
|
+
tabs,
|
|
42
46
|
upload,
|
|
43
47
|
ui,
|
|
44
48
|
};
|
|
@@ -1,2 +1,40 @@
|
|
|
1
|
-
declare
|
|
1
|
+
export declare type Row = {
|
|
2
|
+
id: string;
|
|
3
|
+
collapsed?: boolean;
|
|
4
|
+
blockType?: string;
|
|
5
|
+
};
|
|
6
|
+
declare type SET_ALL = {
|
|
7
|
+
type: 'SET_ALL';
|
|
8
|
+
data: {
|
|
9
|
+
id?: string;
|
|
10
|
+
blockType?: string;
|
|
11
|
+
}[];
|
|
12
|
+
collapsedState?: string[];
|
|
13
|
+
blockType?: string;
|
|
14
|
+
};
|
|
15
|
+
declare type SET_COLLAPSE = {
|
|
16
|
+
type: 'SET_COLLAPSE';
|
|
17
|
+
id: string;
|
|
18
|
+
collapsed: boolean;
|
|
19
|
+
};
|
|
20
|
+
declare type SET_ALL_COLLAPSED = {
|
|
21
|
+
type: 'SET_ALL_COLLAPSED';
|
|
22
|
+
collapse: boolean;
|
|
23
|
+
};
|
|
24
|
+
declare type ADD = {
|
|
25
|
+
type: 'ADD';
|
|
26
|
+
rowIndex: number;
|
|
27
|
+
blockType?: string;
|
|
28
|
+
};
|
|
29
|
+
declare type REMOVE = {
|
|
30
|
+
type: 'REMOVE';
|
|
31
|
+
rowIndex: number;
|
|
32
|
+
};
|
|
33
|
+
declare type MOVE = {
|
|
34
|
+
type: 'MOVE';
|
|
35
|
+
moveFromIndex: number;
|
|
36
|
+
moveToIndex: number;
|
|
37
|
+
};
|
|
38
|
+
declare type Action = SET_ALL | SET_COLLAPSE | SET_ALL_COLLAPSED | ADD | REMOVE | MOVE;
|
|
39
|
+
declare const reducer: (currentState: Row[], action: Action) => Row[];
|
|
2
40
|
export default reducer;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import ObjectID from 'bson-objectid';
|
|
2
2
|
const reducer = (currentState, action) => {
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
switch (type) {
|
|
3
|
+
const stateCopy = [...currentState || []];
|
|
4
|
+
switch (action.type) {
|
|
6
5
|
case 'SET_ALL': {
|
|
6
|
+
const { data, collapsedState } = action;
|
|
7
7
|
if (Array.isArray(data)) {
|
|
8
8
|
return data.map((dataRow, i) => {
|
|
9
9
|
const row = {
|
|
@@ -17,16 +17,26 @@ const reducer = (currentState, action) => {
|
|
|
17
17
|
return [];
|
|
18
18
|
}
|
|
19
19
|
case 'SET_COLLAPSE': {
|
|
20
|
+
const { collapsed, id } = action;
|
|
20
21
|
const matchedRowIndex = stateCopy.findIndex(({ id: rowID }) => rowID === id);
|
|
21
22
|
if (matchedRowIndex > -1 && stateCopy[matchedRowIndex]) {
|
|
22
23
|
stateCopy[matchedRowIndex].collapsed = collapsed;
|
|
23
24
|
}
|
|
24
25
|
return stateCopy;
|
|
25
26
|
}
|
|
27
|
+
case 'SET_ALL_COLLAPSED': {
|
|
28
|
+
const { collapse } = action;
|
|
29
|
+
const newState = stateCopy.map((row) => ({
|
|
30
|
+
...row,
|
|
31
|
+
collapsed: collapse,
|
|
32
|
+
}));
|
|
33
|
+
return newState;
|
|
34
|
+
}
|
|
26
35
|
case 'ADD': {
|
|
36
|
+
const { rowIndex, blockType } = action;
|
|
27
37
|
const newRow = {
|
|
28
38
|
id: new ObjectID().toHexString(),
|
|
29
|
-
|
|
39
|
+
collapsed: false,
|
|
30
40
|
blockType: undefined,
|
|
31
41
|
};
|
|
32
42
|
if (blockType)
|
|
@@ -34,10 +44,13 @@ const reducer = (currentState, action) => {
|
|
|
34
44
|
stateCopy.splice(rowIndex + 1, 0, newRow);
|
|
35
45
|
return stateCopy;
|
|
36
46
|
}
|
|
37
|
-
case 'REMOVE':
|
|
47
|
+
case 'REMOVE': {
|
|
48
|
+
const { rowIndex } = action;
|
|
38
49
|
stateCopy.splice(rowIndex, 1);
|
|
39
50
|
return stateCopy;
|
|
51
|
+
}
|
|
40
52
|
case 'MOVE': {
|
|
53
|
+
const { moveFromIndex, moveToIndex } = action;
|
|
41
54
|
const movingRowState = { ...stateCopy[moveFromIndex] };
|
|
42
55
|
stateCopy.splice(moveFromIndex, 1);
|
|
43
56
|
stateCopy.splice(moveToIndex, 0, movingRowState);
|
|
@@ -14,13 +14,13 @@ const useField = (options) => {
|
|
|
14
14
|
const { id } = useDocumentInfo();
|
|
15
15
|
const operation = useOperation();
|
|
16
16
|
const { dispatchFields, getField, getData, getSiblingData, setModified, } = formContext || {};
|
|
17
|
-
const [internalValue, setInternalValue] = useState(undefined);
|
|
18
|
-
const [internallyValid, setInternallyValid] = useState(undefined);
|
|
19
|
-
// Debounce internal values to update form state only every 60ms
|
|
20
|
-
const debouncedValue = useDebounce(internalValue, 120);
|
|
21
17
|
// Get field by path
|
|
22
18
|
const field = getField(path);
|
|
23
19
|
const initialValue = field === null || field === void 0 ? void 0 : field.initialValue;
|
|
20
|
+
const [internalValue, setInternalValue] = useState(field === null || field === void 0 ? void 0 : field.value);
|
|
21
|
+
const [internallyValid, setInternallyValid] = useState(undefined);
|
|
22
|
+
// Debounce internal values to update form state only every 60ms
|
|
23
|
+
const debouncedValue = useDebounce(internalValue, 120);
|
|
24
24
|
// Validation is defined by two ways -
|
|
25
25
|
// 1. by field state
|
|
26
26
|
// 2. maintained locally to reflect instant validation state changes
|
|
@@ -95,7 +95,6 @@ const useField = (options) => {
|
|
|
95
95
|
modified,
|
|
96
96
|
]);
|
|
97
97
|
useEffect(() => {
|
|
98
|
-
setInternalValue(initialValue);
|
|
99
98
|
setInternallyValid(undefined);
|
|
100
99
|
}, [initialValue]);
|
|
101
100
|
// The only time that the FORM value should be updated
|
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
const css = `
|
|
3
|
+
.graphic-account .circle1 {
|
|
4
|
+
fill: var(--theme-elevation-100);
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.graphic-account .circle2, .graphic-account path {
|
|
8
|
+
fill: var(--theme-elevation-300);
|
|
9
|
+
}
|
|
10
|
+
`;
|
|
11
|
+
const Account = () => (React.createElement("svg", { className: "graphic-account", width: "25", height: "25", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 25 25" },
|
|
12
|
+
React.createElement("style", null, css),
|
|
13
|
+
React.createElement("circle", { className: "circle1", cx: "12.5", cy: "12.5", r: "11.5" }),
|
|
14
|
+
React.createElement("circle", { className: "circle2", cx: "12.5", cy: "10.73", r: "3.98" }),
|
|
15
|
+
React.createElement("path", { d: "M12.5,24a11.44,11.44,0,0,0,7.66-2.94c-.5-2.71-3.73-4.8-7.66-4.8s-7.16,2.09-7.66,4.8A11.44,11.44,0,0,0,12.5,24Z" })));
|
|
6
16
|
export default Account;
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useConfig } from '../../utilities/Config';
|
|
3
3
|
import RenderCustomComponent from '../../utilities/RenderCustomComponent';
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
const css = `
|
|
5
|
+
.graphic-icon path {
|
|
6
|
+
fill: var(--theme-elevation-1000);
|
|
7
|
+
}
|
|
8
|
+
`;
|
|
9
|
+
const PayloadIcon = () => (React.createElement("svg", { width: "25", height: "25", viewBox: "0 0 25 25", xmlns: "http://www.w3.org/2000/svg", className: "graphic-icon" },
|
|
10
|
+
React.createElement("style", null, css),
|
|
11
|
+
React.createElement("path", { d: "M11.5293 0L23 6.90096V19.9978L14.3608 25V11.9032L2.88452 5.00777L11.5293 0Z" }),
|
|
12
|
+
React.createElement("path", { d: "M10.6559 24.2727V14.0518L2 19.0651L10.6559 24.2727Z" })));
|
|
7
13
|
const Icon = () => {
|
|
8
14
|
const { admin: { components: { graphics: { Icon: CustomIcon, } = {
|
|
9
15
|
Icon: undefined,
|
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useConfig } from '../../utilities/Config';
|
|
3
3
|
import RenderCustomComponent from '../../utilities/RenderCustomComponent';
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
React.createElement("
|
|
11
|
-
React.createElement("path", { d: "
|
|
12
|
-
React.createElement("path", { d: "
|
|
13
|
-
React.createElement("path", { d: "
|
|
4
|
+
const css = `
|
|
5
|
+
.graphic-logo path {
|
|
6
|
+
fill: var(--theme-elevation-1000);
|
|
7
|
+
}
|
|
8
|
+
`;
|
|
9
|
+
const PayloadLogo = () => (React.createElement("svg", { width: "180", height: "50", viewBox: "0 0 180 50", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: "graphic-logo" },
|
|
10
|
+
React.createElement("style", null, css),
|
|
11
|
+
React.createElement("path", { d: "M65.922 13.8685C71.1075 13.8685 77.0257 14.6014 77.0257 22.2185C77.0257 28.6587 71.8736 30.2243 66.0664 30.2243H62.2689V39.0961H57.2944V13.8685H65.922ZM62.2689 17.7659V26.3602H66.3773C69.4752 26.3602 71.9069 25.594 71.9069 22.2518C71.9069 18.1101 68.7424 17.7659 66.022 17.7659H62.2689Z" }),
|
|
12
|
+
React.createElement("path", { d: "M84.3209 39.5514C80.7344 39.5514 77.5698 37.4639 77.5698 34.0884C77.5698 29.6358 82.5443 28.3145 89.8949 27.4706V27.1264C89.8949 24.2394 88.3626 23.2623 86.3084 23.2623C84.2542 23.2623 82.7219 24.2394 82.622 26.2936H78.1361C78.4803 22.6072 81.7226 19.8867 86.4861 19.8867C91.1163 19.8867 94.7028 21.7633 94.7028 28.1035C94.7028 28.692 94.6362 31.2014 94.6362 32.9114C94.6362 35.865 94.8472 37.5416 95.1914 39.1073H90.7721C90.6278 38.5188 90.4945 37.6083 90.4279 36.7089C89.0844 38.6853 87.1412 39.5514 84.3209 39.5514ZM90.0282 30.5463C84.6651 31.1015 82.511 31.7344 82.511 33.8219C82.511 35.1766 83.588 36.298 85.7532 36.298C88.7512 36.298 90.0393 34.5547 90.0393 31.4901V30.5463H90.0282Z" }),
|
|
13
|
+
React.createElement("path", { d: "M97.2899 45.1921V41.5057H99.0998C100.699 41.5057 101.432 41.539 102.231 39.5514L102.442 39.0295L95.269 20.3753H100.521L104.763 33.8774L109.115 20.3753H113.99L107.139 38.541C104.951 44.3593 103.974 45.1921 99.3108 45.1921H97.2899Z" }),
|
|
14
|
+
React.createElement("path", { d: "M120.263 39.1073H115.456V13.8685H120.263V39.1073Z" }),
|
|
15
|
+
React.createElement("path", { d: "M122.406 29.7801C122.406 23.2067 126.826 19.9645 131.7 19.9645C136.575 19.9645 140.994 23.2067 140.994 29.7801C140.994 36.3535 136.575 39.5625 131.7 39.5625C126.826 39.5514 122.406 36.3535 122.406 29.7801ZM127.281 29.7801C127.281 33.6775 128.913 35.7984 131.7 35.7984C134.487 35.7984 136.119 33.6775 136.119 29.7801C136.119 25.8494 134.487 23.7286 131.7 23.7286C128.913 23.7286 127.281 25.8383 127.281 29.7801Z" }),
|
|
16
|
+
React.createElement("path", { d: "M149.167 39.5514C145.58 39.5514 142.416 37.4639 142.416 34.0884C142.416 29.6358 147.39 28.3145 154.741 27.4706V27.1264C154.741 24.2394 153.208 23.2623 151.154 23.2623C149.1 23.2623 147.568 24.2394 147.468 26.2936H142.982C143.326 22.6072 146.568 19.8867 151.332 19.8867C155.962 19.8867 159.549 21.7633 159.549 28.1035C159.549 28.692 159.482 31.2014 159.482 32.9114C159.482 35.865 159.693 37.5416 160.037 39.1073H155.618C155.473 38.5188 155.34 37.6083 155.274 36.7089C153.941 38.6853 151.987 39.5514 149.167 39.5514ZM154.874 30.5463C149.511 31.1015 147.357 31.7344 147.357 33.8219C147.357 35.1766 148.434 36.298 150.599 36.298C153.597 36.298 154.885 34.5547 154.885 31.4901V30.5463H154.874Z" }),
|
|
17
|
+
React.createElement("path", { d: "M175.06 39.1073V36.7422C173.872 38.7964 171.618 39.5625 169.664 39.5625C165.067 39.5625 161.625 35.7317 161.625 29.7468C161.625 23.8619 165 19.9645 169.664 19.9645C172.029 19.9645 174.05 21.0415 175.06 22.7848V13.8796H179.868V39.1073H175.06ZM175.238 29.7357C175.238 25.9716 173.494 23.6398 170.852 23.6398C168.242 23.6398 166.677 26.1159 166.677 29.7691C166.677 33.4222 168.242 35.865 170.852 35.865C173.494 35.865 175.238 33.5665 175.238 29.7357Z" }),
|
|
18
|
+
React.createElement("path", { d: "M19.1531 0L42.049 13.8019V39.9956L24.8049 50V23.8064L1.89795 10.0155L19.1531 0Z" }),
|
|
19
|
+
React.createElement("path", { d: "M17.4097 48.5454V28.1035L0.132324 38.1301L17.4097 48.5454Z" })));
|
|
14
20
|
const Logo = () => {
|
|
15
21
|
const { admin: { components: { graphics: { Logo: CustomLogo, } = {
|
|
16
22
|
Logo: undefined,
|