payload 1.11.1 → 1.11.3

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 (136) hide show
  1. package/components/index.js +1 -1
  2. package/components/styles.css +1 -1
  3. package/dist/admin/components/elements/Button/index.scss +1 -0
  4. package/dist/admin/components/elements/Collapsible/index.js +5 -4
  5. package/dist/admin/components/elements/Collapsible/index.js.map +1 -1
  6. package/dist/admin/components/elements/Collapsible/index.scss +76 -16
  7. package/dist/admin/components/elements/Collapsible/types.d.ts +1 -0
  8. package/dist/admin/components/elements/DatePicker/DatePicker.js +2 -2
  9. package/dist/admin/components/elements/DatePicker/DatePicker.js.map +1 -1
  10. package/dist/admin/components/elements/DatePicker/index.scss +57 -2
  11. package/dist/admin/components/elements/ErrorPill/index.d.ts +4 -0
  12. package/dist/admin/components/elements/ErrorPill/index.js +28 -0
  13. package/dist/admin/components/elements/ErrorPill/index.js.map +1 -0
  14. package/dist/admin/components/elements/ErrorPill/index.scss +43 -0
  15. package/dist/admin/components/elements/ErrorPill/types.d.ts +5 -0
  16. package/dist/admin/components/elements/ErrorPill/types.js +3 -0
  17. package/dist/admin/components/elements/ErrorPill/types.js.map +1 -0
  18. package/dist/admin/components/elements/Pill/index.js +2 -1
  19. package/dist/admin/components/elements/Pill/index.js.map +1 -1
  20. package/dist/admin/components/elements/Pill/index.scss +26 -0
  21. package/dist/admin/components/elements/Pill/types.d.ts +2 -1
  22. package/dist/admin/components/elements/ReactSelect/index.scss +1 -1
  23. package/dist/admin/components/elements/Tooltip/index.scss +16 -0
  24. package/dist/admin/components/forms/Form/WatchFormErrors.d.ts +6 -0
  25. package/dist/admin/components/forms/Form/WatchFormErrors.js +15 -0
  26. package/dist/admin/components/forms/Form/WatchFormErrors.js.map +1 -0
  27. package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.js +2 -0
  28. package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  29. package/dist/admin/components/forms/Form/fieldReducer.js +9 -4
  30. package/dist/admin/components/forms/Form/fieldReducer.js.map +1 -1
  31. package/dist/admin/components/forms/Form/index.js +56 -2
  32. package/dist/admin/components/forms/Form/index.js.map +1 -1
  33. package/dist/admin/components/forms/Form/initContextState.js +1 -0
  34. package/dist/admin/components/forms/Form/initContextState.js.map +1 -1
  35. package/dist/admin/components/forms/Form/rows.js +2 -2
  36. package/dist/admin/components/forms/Form/rows.js.map +1 -1
  37. package/dist/admin/components/forms/Form/types.d.ts +6 -4
  38. package/dist/admin/components/forms/WatchChildErrors/index.d.ts +12 -0
  39. package/dist/admin/components/forms/WatchChildErrors/index.js +70 -0
  40. package/dist/admin/components/forms/WatchChildErrors/index.js.map +1 -0
  41. package/dist/admin/components/forms/field-types/Array/ArrayRow.d.ts +20 -0
  42. package/dist/admin/components/forms/field-types/Array/ArrayRow.js +49 -0
  43. package/dist/admin/components/forms/field-types/Array/ArrayRow.js.map +1 -0
  44. package/dist/admin/components/forms/field-types/Array/index.js +30 -44
  45. package/dist/admin/components/forms/field-types/Array/index.js.map +1 -1
  46. package/dist/admin/components/forms/field-types/Array/index.scss +43 -0
  47. package/dist/admin/components/forms/field-types/Blocks/BlockRow.d.ts +19 -0
  48. package/dist/admin/components/forms/field-types/Blocks/BlockRow.js +50 -0
  49. package/dist/admin/components/forms/field-types/Blocks/BlockRow.js.map +1 -0
  50. package/dist/admin/components/forms/field-types/Blocks/RowActions.d.ts +1 -2
  51. package/dist/admin/components/forms/field-types/Blocks/RowActions.js +2 -2
  52. package/dist/admin/components/forms/field-types/Blocks/RowActions.js.map +1 -1
  53. package/dist/admin/components/forms/field-types/Blocks/SectionTitle/index.scss +2 -3
  54. package/dist/admin/components/forms/field-types/Blocks/index.js +28 -46
  55. package/dist/admin/components/forms/field-types/Blocks/index.js.map +1 -1
  56. package/dist/admin/components/forms/field-types/Blocks/index.scss +40 -1
  57. package/dist/admin/components/forms/field-types/Checkbox/index.scss +22 -2
  58. package/dist/admin/components/forms/field-types/Code/index.scss +23 -0
  59. package/dist/admin/components/forms/field-types/Collapsible/index.js +16 -5
  60. package/dist/admin/components/forms/field-types/Collapsible/index.js.map +1 -1
  61. package/dist/admin/components/forms/field-types/Collapsible/index.scss +8 -1
  62. package/dist/admin/components/forms/field-types/ConfirmPassword/index.js.map +1 -1
  63. package/dist/admin/components/forms/field-types/ConfirmPassword/index.scss +17 -3
  64. package/dist/admin/components/forms/field-types/DateTime/index.scss +17 -3
  65. package/dist/admin/components/forms/field-types/Email/index.scss +21 -0
  66. package/dist/admin/components/forms/field-types/Group/index.js +13 -3
  67. package/dist/admin/components/forms/field-types/Group/index.js.map +1 -1
  68. package/dist/admin/components/forms/field-types/Group/index.scss +26 -0
  69. package/dist/admin/components/forms/field-types/JSON/index.scss +26 -3
  70. package/dist/admin/components/forms/field-types/Number/index.scss +17 -3
  71. package/dist/admin/components/forms/field-types/Password/index.scss +17 -3
  72. package/dist/admin/components/forms/field-types/Point/index.scss +17 -3
  73. package/dist/admin/components/forms/field-types/RadioGroup/index.scss +20 -0
  74. package/dist/admin/components/forms/field-types/Relationship/index.scss +32 -0
  75. package/dist/admin/components/forms/field-types/RichText/elements/link/LinkDrawer/baseFields.js +1 -3
  76. package/dist/admin/components/forms/field-types/RichText/elements/link/LinkDrawer/baseFields.js.map +1 -1
  77. package/dist/admin/components/forms/field-types/RichText/index.scss +20 -0
  78. package/dist/admin/components/forms/field-types/Select/index.scss +21 -1
  79. package/dist/admin/components/forms/field-types/Tabs/index.js +43 -22
  80. package/dist/admin/components/forms/field-types/Tabs/index.js.map +1 -1
  81. package/dist/admin/components/forms/field-types/Tabs/index.scss +25 -1
  82. package/dist/admin/components/forms/field-types/Text/index.js +1 -2
  83. package/dist/admin/components/forms/field-types/Text/index.js.map +1 -1
  84. package/dist/admin/components/forms/field-types/Text/index.scss +17 -3
  85. package/dist/admin/components/forms/field-types/Textarea/index.scss +20 -6
  86. package/dist/admin/components/forms/field-types/Upload/index.scss +30 -0
  87. package/dist/admin/components/forms/useField/index.js +13 -2
  88. package/dist/admin/components/forms/useField/index.js.map +1 -1
  89. package/dist/admin/components/forms/useField/types.d.ts +1 -0
  90. package/dist/admin/components/utilities/Auth/index.js +104 -35
  91. package/dist/admin/components/utilities/Auth/index.js.map +1 -1
  92. package/dist/admin/components/utilities/Auth/types.d.ts +3 -1
  93. package/dist/admin/components/views/Account/Default.js +33 -2
  94. package/dist/admin/components/views/Account/Default.js.map +1 -1
  95. package/dist/admin/components/views/Account/index.js +10 -9
  96. package/dist/admin/components/views/Account/index.js.map +1 -1
  97. package/dist/admin/components/views/collections/Edit/Auth/index.js.map +1 -1
  98. package/dist/admin/components/views/collections/Edit/Default.js +7 -2
  99. package/dist/admin/components/views/collections/Edit/Default.js.map +1 -1
  100. package/dist/admin/components/views/collections/Edit/index.js +32 -16
  101. package/dist/admin/components/views/collections/Edit/index.js.map +1 -1
  102. package/dist/admin/hooks/useTitle.d.ts +2 -2
  103. package/dist/admin/hooks/useTitle.js.map +1 -1
  104. package/dist/admin/scss/app.scss +4 -0
  105. package/dist/admin/scss/vars.scss +15 -0
  106. package/dist/auth/operations/getFieldsToSign.d.ts +7 -0
  107. package/dist/auth/operations/getFieldsToSign.js +29 -0
  108. package/dist/auth/operations/getFieldsToSign.js.map +1 -0
  109. package/dist/auth/operations/login.js +4 -19
  110. package/dist/auth/operations/login.js.map +1 -1
  111. package/dist/auth/operations/refresh.js +27 -14
  112. package/dist/auth/operations/refresh.js.map +1 -1
  113. package/dist/config/schema.js +5 -0
  114. package/dist/config/schema.js.map +1 -1
  115. package/dist/config/types.d.ts +14 -1
  116. package/dist/payload.js +1 -1
  117. package/dist/payload.js.map +1 -1
  118. package/dist/translations/en.json +3 -1
  119. package/dist/translations/index.d.ts +2 -0
  120. package/dist/translations/ua.json +5 -5
  121. package/dist/utilities/deepCopyObject.js +4 -0
  122. package/dist/utilities/deepCopyObject.js.map +1 -1
  123. package/dist/utilities/isNumber.d.ts +1 -1
  124. package/dist/utilities/isNumber.js.map +1 -1
  125. package/dist/utilities/logger.d.ts +1 -1
  126. package/dist/utilities/logger.js +2 -2
  127. package/dist/utilities/logger.js.map +1 -1
  128. package/dist/utilities/setsAreEqual.d.ts +1 -0
  129. package/dist/utilities/setsAreEqual.js +7 -0
  130. package/dist/utilities/setsAreEqual.js.map +1 -0
  131. package/dist/utilities/splitPathByArrayFields.d.ts +6 -0
  132. package/dist/utilities/splitPathByArrayFields.js +14 -0
  133. package/dist/utilities/splitPathByArrayFields.js.map +1 -0
  134. package/docs/authentication/config.mdx +16 -0
  135. package/docs/getting-started/installation.mdx +4 -0
  136. package/package.json +2 -2
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { Props } from './types';
3
+ import type { UseDraggableSortableReturn } from '../../../elements/DraggableSortable/useDraggableSortable/types';
4
+ import type { Row } from '../../Form/types';
5
+ import type { RowLabel as RowLabelType } from '../../RowLabel/types';
6
+ import './index.scss';
7
+ type ArrayRowProps = UseDraggableSortableReturn & Pick<Props, 'fields' | 'path' | 'indexPath' | 'fieldTypes' | 'permissions' | 'labels'> & {
8
+ addRow: (rowIndex: number) => void;
9
+ duplicateRow: (rowIndex: number) => void;
10
+ removeRow: (rowIndex: number) => void;
11
+ moveRow: (fromIndex: number, toIndex: number) => void;
12
+ setCollapse: (rowID: string, collapsed: boolean) => void;
13
+ rowCount: number;
14
+ rowIndex: number;
15
+ row: Row;
16
+ CustomRowLabel?: RowLabelType;
17
+ readOnly?: boolean;
18
+ };
19
+ export declare const ArrayRow: React.FC<ArrayRowProps>;
20
+ export {};
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ArrayRow = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_i18next_1 = require("react-i18next");
9
+ const Collapsible_1 = require("../../../elements/Collapsible");
10
+ const RenderFields_1 = __importDefault(require("../../RenderFields"));
11
+ const ArrayAction_1 = require("../../../elements/ArrayAction");
12
+ const HiddenInput_1 = __importDefault(require("../HiddenInput"));
13
+ const RowLabel_1 = require("../../RowLabel");
14
+ const getTranslation_1 = require("../../../../../utilities/getTranslation");
15
+ const createNestedFieldPath_1 = require("../../Form/createNestedFieldPath");
16
+ const context_1 = require("../../Form/context");
17
+ const ErrorPill_1 = require("../../../elements/ErrorPill");
18
+ require("./index.scss");
19
+ const baseClass = 'array-field';
20
+ const ArrayRow = ({ path: parentPath, addRow, removeRow, moveRow, duplicateRow, setCollapse, transform, listeners, attributes, setNodeRef, row, rowIndex, rowCount, indexPath, readOnly, labels, fieldTypes, permissions, CustomRowLabel, fields, }) => {
21
+ var _a;
22
+ const path = `${parentPath}.${rowIndex}`;
23
+ const { i18n } = (0, react_i18next_1.useTranslation)();
24
+ const hasSubmitted = (0, context_1.useFormSubmitted)();
25
+ const fallbackLabel = `${(0, getTranslation_1.getTranslation)(labels.singular, i18n)} ${String(rowIndex + 1).padStart(2, '0')}`;
26
+ const childErrorPathsCount = (_a = row.childErrorPaths) === null || _a === void 0 ? void 0 : _a.size;
27
+ const fieldHasErrors = hasSubmitted && childErrorPathsCount > 0;
28
+ const classNames = [
29
+ `${baseClass}__row`,
30
+ fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,
31
+ ].filter(Boolean).join(' ');
32
+ return (react_1.default.createElement("div", { key: `${parentPath}-row-${row.id}`, id: `${parentPath.split('.').join('-')}-row-${rowIndex}`, ref: setNodeRef, style: {
33
+ transform,
34
+ } },
35
+ react_1.default.createElement(Collapsible_1.Collapsible, { collapsed: row.collapsed, onToggle: (collapsed) => setCollapse(row.id, collapsed), className: classNames, collapsibleStyle: fieldHasErrors ? 'error' : 'default', dragHandleProps: {
36
+ id: row.id,
37
+ attributes,
38
+ listeners,
39
+ }, header: (react_1.default.createElement("div", { className: `${baseClass}__row-header` },
40
+ react_1.default.createElement(RowLabel_1.RowLabel, { path: path, label: CustomRowLabel || fallbackLabel, rowNumber: rowIndex + 1 }),
41
+ fieldHasErrors && (react_1.default.createElement(ErrorPill_1.ErrorPill, { count: childErrorPathsCount, withMessage: true })))), actions: !readOnly ? (react_1.default.createElement(ArrayAction_1.ArrayAction, { addRow: addRow, removeRow: removeRow, moveRow: moveRow, duplicateRow: duplicateRow, rowCount: rowCount, index: rowIndex })) : undefined },
42
+ react_1.default.createElement(HiddenInput_1.default, { name: `${path}.id`, value: row.id }),
43
+ react_1.default.createElement(RenderFields_1.default, { className: `${baseClass}__fields`, readOnly: readOnly, fieldTypes: fieldTypes, permissions: permissions === null || permissions === void 0 ? void 0 : permissions.fields, indexPath: indexPath, fieldSchema: fields.map((field) => ({
44
+ ...field,
45
+ path: (0, createNestedFieldPath_1.createNestedFieldPath)(path, field),
46
+ })) }))));
47
+ };
48
+ exports.ArrayRow = ArrayRow;
49
+ //# sourceMappingURL=ArrayRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayRow.js","sourceRoot":"","sources":["../../../../../../src/admin/components/forms/field-types/Array/ArrayRow.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,iDAA+C;AAC/C,+DAA4D;AAC5D,sEAA8C;AAE9C,+DAA4D;AAC5D,iEAAyC;AACzC,6CAA0C;AAC1C,4EAAyE;AACzE,4EAAyE;AAIzE,gDAAsD;AACtD,2DAAwD;AAExD,wBAAsB;AAEtB,MAAM,SAAS,GAAG,aAAa,CAAC;AAczB,MAAM,QAAQ,GAA4B,CAAC,EAChD,IAAI,EAAE,UAAU,EAChB,MAAM,EACN,SAAS,EACT,OAAO,EACP,YAAY,EACZ,WAAW,EACX,SAAS,EACT,SAAS,EACT,UAAU,EACV,UAAU,EACV,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,MAAM,EACN,UAAU,EACV,WAAW,EACX,cAAc,EACd,MAAM,GACP,EAAE,EAAE;;IACH,MAAM,IAAI,GAAG,GAAG,UAAU,IAAI,QAAQ,EAAE,CAAC;IACzC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAClC,MAAM,YAAY,GAAG,IAAA,0BAAgB,GAAE,CAAC;IAExC,MAAM,aAAa,GAAG,GAAG,IAAA,+BAAc,EAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAE1G,MAAM,oBAAoB,GAAG,MAAA,GAAG,CAAC,eAAe,0CAAE,IAAI,CAAC;IACvD,MAAM,cAAc,GAAG,YAAY,IAAI,oBAAoB,GAAG,CAAC,CAAC;IAEhE,MAAM,UAAU,GAAG;QACjB,GAAG,SAAS,OAAO;QACnB,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS,mBAAmB,CAAC,CAAC,CAAC,GAAG,SAAS,kBAAkB;KAClF,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,OAAO,CACL,uCACE,GAAG,EAAE,GAAG,UAAU,QAAQ,GAAG,CAAC,EAAE,EAAE,EAClC,EAAE,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,QAAQ,EAAE,EACxD,GAAG,EAAE,UAAU,EACf,KAAK,EAAE;YACL,SAAS;SACV;QAED,8BAAC,yBAAW,IACV,SAAS,EAAE,GAAG,CAAC,SAAS,EACxB,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,EACvD,SAAS,EAAE,UAAU,EACrB,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EACtD,eAAe,EAAE;gBACf,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,UAAU;gBACV,SAAS;aACV,EACD,MAAM,EAAE,CACN,uCAAK,SAAS,EAAE,GAAG,SAAS,cAAc;gBACxC,8BAAC,mBAAQ,IACP,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,IAAI,aAAa,EACtC,SAAS,EAAE,QAAQ,GAAG,CAAC,GACvB;gBACD,cAAc,IAAI,CACjB,8BAAC,qBAAS,IACR,KAAK,EAAE,oBAAoB,EAC3B,WAAW,SACX,CACH,CACG,CACP,EACD,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CACnB,8BAAC,yBAAW,IACV,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,QAAQ,GACf,CACH,CAAC,CAAC,CAAC,SAAS;YAEb,8BAAC,qBAAW,IACV,IAAI,EAAE,GAAG,IAAI,KAAK,EAClB,KAAK,EAAE,GAAG,CAAC,EAAE,GACb;YACF,8BAAC,sBAAY,IACX,SAAS,EAAE,GAAG,SAAS,UAAU,EACjC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,EAChC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAClC,GAAG,KAAK;oBACR,IAAI,EAAE,IAAA,6CAAqB,EAAC,IAAI,EAAE,KAAK,CAAC;iBACzC,CAAC,CAAC,GACH,CACU,CACV,CACP,CAAC;AACJ,CAAC,CAAC;AAnGW,QAAA,QAAQ,YAmGnB"}
@@ -41,18 +41,14 @@ const Banner_1 = __importDefault(require("../../../elements/Banner"));
41
41
  const FieldDescription_1 = __importDefault(require("../../FieldDescription"));
42
42
  const DocumentInfo_1 = require("../../../utilities/DocumentInfo");
43
43
  const OperationProvider_1 = require("../../../utilities/OperationProvider");
44
- const Collapsible_1 = require("../../../elements/Collapsible");
45
- const RenderFields_1 = __importDefault(require("../../RenderFields"));
46
- const ArrayAction_1 = require("../../../elements/ArrayAction");
47
44
  const scrollToID_1 = require("../../../../utilities/scrollToID");
48
- const HiddenInput_1 = __importDefault(require("../HiddenInput"));
49
- const RowLabel_1 = require("../../RowLabel");
50
45
  const getTranslation_1 = require("../../../../../utilities/getTranslation");
51
- const createNestedFieldPath_1 = require("../../Form/createNestedFieldPath");
52
46
  const Config_1 = require("../../../utilities/Config");
53
47
  const NullifyField_1 = require("../../NullifyField");
54
48
  const DraggableSortable_1 = __importDefault(require("../../../elements/DraggableSortable"));
55
49
  const DraggableSortableItem_1 = __importDefault(require("../../../elements/DraggableSortable/DraggableSortableItem"));
50
+ const ArrayRow_1 = require("./ArrayRow");
51
+ const ErrorPill_1 = require("../../../elements/ErrorPill");
56
52
  require("./index.scss");
57
53
  const baseClass = 'array-field';
58
54
  const ArrayFieldType = (props) => {
@@ -63,20 +59,20 @@ const ArrayFieldType = (props) => {
63
59
  const label = (_a = props === null || props === void 0 ? void 0 : props.label) !== null && _a !== void 0 ? _a : (_b = props === null || props === void 0 ? void 0 : props.labels) === null || _b === void 0 ? void 0 : _b.singular;
64
60
  const CustomRowLabel = (components === null || components === void 0 ? void 0 : components.RowLabel) || undefined;
65
61
  const { setDocFieldPreferences, id, getDocPreferences } = (0, DocumentInfo_1.useDocumentInfo)();
66
- const formContext = (0, context_1.useForm)();
62
+ const { dispatchFields, setModified } = (0, context_1.useForm)();
63
+ const submitted = (0, context_1.useFormSubmitted)();
67
64
  const { user } = (0, Auth_1.useAuth)();
68
65
  const locale = (0, Locale_1.useLocale)();
69
66
  const operation = (0, OperationProvider_1.useOperation)();
70
67
  const { t, i18n } = (0, react_i18next_1.useTranslation)('fields');
71
68
  const { localization } = (0, Config_1.useConfig)();
72
- const checkSkipValidation = (0, react_1.useCallback)((value) => {
73
- const defaultLocale = (localization && localization.defaultLocale) ? localization.defaultLocale : 'en';
74
- const isEditingDefaultLocale = locale === defaultLocale;
75
- const fallbackEnabled = (localization && localization.fallback);
76
- if (value === null && !isEditingDefaultLocale && fallbackEnabled)
77
- return true;
78
- return false;
79
- }, [locale, localization]);
69
+ const editingDefaultLocale = (() => {
70
+ if (localization && localization.fallback) {
71
+ const defaultLocale = localization.defaultLocale || 'en';
72
+ return locale === defaultLocale;
73
+ }
74
+ return true;
75
+ })();
80
76
  // Handle labeling for Arrays, Global Arrays, and Blocks
81
77
  const getLabels = (p) => {
82
78
  if (p === null || p === void 0 ? void 0 : p.labels)
@@ -86,13 +82,14 @@ const ArrayFieldType = (props) => {
86
82
  return { singular: t('row'), plural: t('rows') };
87
83
  };
88
84
  const labels = getLabels(props);
89
- const { dispatchFields, setModified } = formContext;
90
85
  const memoizedValidate = (0, react_1.useCallback)((value, options) => {
91
- if (checkSkipValidation(value))
86
+ // alternative locales can be null
87
+ if (!editingDefaultLocale && value === null) {
92
88
  return true;
89
+ }
93
90
  return validate(value, { ...options, minRows, maxRows, required });
94
- }, [maxRows, minRows, required, validate, checkSkipValidation]);
95
- const { showError, errorMessage, value, rows, } = (0, useField_1.default)({
91
+ }, [maxRows, minRows, required, validate, editingDefaultLocale]);
92
+ const { showError, errorMessage, value, rows, valid, } = (0, useField_1.default)({
96
93
  path,
97
94
  validate: memoizedValidate,
98
95
  condition,
@@ -122,17 +119,20 @@ const ArrayFieldType = (props) => {
122
119
  dispatchFields({ type: 'MOVE_ROW', moveFromIndex, moveToIndex, path });
123
120
  setModified(true);
124
121
  }, [dispatchFields, path, setModified]);
125
- const setCollapse = (0, react_1.useCallback)(async (rowID, collapsed) => {
126
- dispatchFields({ type: 'SET_ROW_COLLAPSED', path, collapsed, rowID, setDocFieldPreferences });
127
- }, [dispatchFields, path, setDocFieldPreferences]);
128
122
  const toggleCollapseAll = (0, react_1.useCallback)(async (collapsed) => {
129
123
  dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, collapsed, setDocFieldPreferences });
130
124
  }, [dispatchFields, path, setDocFieldPreferences]);
125
+ const setCollapse = (0, react_1.useCallback)(async (rowID, collapsed) => {
126
+ dispatchFields({ type: 'SET_ROW_COLLAPSED', path, collapsed, rowID, setDocFieldPreferences });
127
+ }, [dispatchFields, path, setDocFieldPreferences]);
131
128
  const hasMaxRows = maxRows && (rows === null || rows === void 0 ? void 0 : rows.length) >= maxRows;
129
+ const fieldErrorCount = rows.reduce((total, row) => { var _a; return total + (((_a = row === null || row === void 0 ? void 0 : row.childErrorPaths) === null || _a === void 0 ? void 0 : _a.size) || 0); }, 0) + (valid ? 0 : 1);
130
+ const fieldHasErrors = submitted && fieldErrorCount > 0;
132
131
  const classes = [
133
132
  'field-type',
134
133
  baseClass,
135
134
  className,
135
+ fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,
136
136
  ].filter(Boolean).join(' ');
137
137
  if (!rows)
138
138
  return null;
@@ -141,7 +141,9 @@ const ArrayFieldType = (props) => {
141
141
  react_1.default.createElement(Error_1.default, { showError: showError, message: errorMessage })),
142
142
  react_1.default.createElement("header", { className: `${baseClass}__header` },
143
143
  react_1.default.createElement("div", { className: `${baseClass}__header-wrap` },
144
- react_1.default.createElement("h3", null, (0, getTranslation_1.getTranslation)(label || name, i18n)),
144
+ react_1.default.createElement("div", { className: `${baseClass}__header-content` },
145
+ react_1.default.createElement("h3", null, (0, getTranslation_1.getTranslation)(label || name, i18n)),
146
+ fieldHasErrors && fieldErrorCount > 0 && (react_1.default.createElement(ErrorPill_1.ErrorPill, { count: fieldErrorCount, withMessage: true }))),
145
147
  react_1.default.createElement("ul", { className: `${baseClass}__header-actions` },
146
148
  react_1.default.createElement("li", null,
147
149
  react_1.default.createElement("button", { type: "button", onClick: () => toggleCollapseAll(true), className: `${baseClass}__header-action` }, t('collapseAll'))),
@@ -150,31 +152,15 @@ const ArrayFieldType = (props) => {
150
152
  react_1.default.createElement(FieldDescription_1.default, { className: `field-description-${path.replace(/\./gi, '__')}`, value: value, description: description })),
151
153
  react_1.default.createElement(NullifyField_1.NullifyLocaleField, { localized: localized, path: path, fieldValue: value }),
152
154
  react_1.default.createElement(DraggableSortable_1.default, { ids: rows.map((row) => row.id), onDragEnd: ({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex) },
153
- rows.length > 0 && rows.map((row, i) => {
154
- const rowNumber = i + 1;
155
- const fallbackLabel = `${(0, getTranslation_1.getTranslation)(labels.singular, i18n)} ${String(rowNumber).padStart(2, '0')}`;
156
- return (react_1.default.createElement(DraggableSortableItem_1.default, { key: row.id, id: row.id, disabled: readOnly }, ({ setNodeRef, transform, attributes, listeners }) => (react_1.default.createElement("div", { id: `${path}-row-${i}`, key: `${path}-row-${i}`, ref: setNodeRef, style: {
157
- transform,
158
- } },
159
- react_1.default.createElement(Collapsible_1.Collapsible, { collapsed: row.collapsed, onToggle: (collapsed) => setCollapse(row.id, collapsed), className: `${baseClass}__row`, key: row.id, dragHandleProps: {
160
- id: row.id,
161
- attributes,
162
- listeners,
163
- }, header: (react_1.default.createElement(RowLabel_1.RowLabel, { path: `${path}.${i}`, label: CustomRowLabel || fallbackLabel, rowNumber: rowNumber })), actions: !readOnly ? (react_1.default.createElement(ArrayAction_1.ArrayAction, { rowCount: rows.length, duplicateRow: duplicateRow, addRow: addRow, moveRow: moveRow, removeRow: removeRow, index: i })) : undefined },
164
- react_1.default.createElement(HiddenInput_1.default, { name: `${path}.${i}.id`, value: row.id }),
165
- react_1.default.createElement(RenderFields_1.default, { className: `${baseClass}__fields`, readOnly: readOnly, fieldTypes: fieldTypes, permissions: permissions === null || permissions === void 0 ? void 0 : permissions.fields, indexPath: indexPath, fieldSchema: fields.map((field) => ({
166
- ...field,
167
- path: (0, createNestedFieldPath_1.createNestedFieldPath)(`${path}.${i}`, field),
168
- })) }))))));
169
- }),
170
- !checkSkipValidation(value) && (react_1.default.createElement(react_1.default.Fragment, null,
155
+ rows.length > 0 && rows.map((row, i) => (react_1.default.createElement(DraggableSortableItem_1.default, { key: row.id, id: row.id, disabled: readOnly }, (draggableSortableItemProps) => (react_1.default.createElement(ArrayRow_1.ArrayRow, { ...draggableSortableItemProps, row: row, addRow: addRow, duplicateRow: duplicateRow, removeRow: removeRow, setCollapse: setCollapse, path: path, fieldTypes: fieldTypes, fields: fields, moveRow: moveRow, readOnly: readOnly, rowCount: rows.length, permissions: permissions, CustomRowLabel: CustomRowLabel, rowIndex: i, indexPath: indexPath, labels: labels }))))),
156
+ !valid && (react_1.default.createElement(react_1.default.Fragment, null,
157
+ readOnly && (rows.length === 0) && (react_1.default.createElement(Banner_1.default, null, t('validation:fieldHasNo', { label: (0, getTranslation_1.getTranslation)(labels.plural, i18n) }))),
171
158
  (rows.length < minRows || (required && rows.length === 0)) && (react_1.default.createElement(Banner_1.default, { type: "error" }, t('validation:requiresAtLeast', {
172
159
  count: minRows,
173
160
  label: (0, getTranslation_1.getTranslation)(minRows ? labels.plural : labels.singular, i18n) || t(minRows > 1 ? 'general:row' : 'general:rows'),
174
- }))),
175
- (rows.length === 0 && readOnly) && (react_1.default.createElement(Banner_1.default, null, t('validation:fieldHasNo', { label: (0, getTranslation_1.getTranslation)(labels.plural, i18n) })))))),
161
+ })))))),
176
162
  (!readOnly && !hasMaxRows) && (react_1.default.createElement("div", { className: `${baseClass}__add-button-wrap` },
177
- react_1.default.createElement(Button_1.default, { onClick: () => addRow(value), buttonStyle: "icon-label", icon: "plus", iconStyle: "with-border", iconPosition: "left" }, t('addLabel', { label: (0, getTranslation_1.getTranslation)(labels.singular, i18n) }))))));
163
+ react_1.default.createElement(Button_1.default, { icon: "plus", buttonStyle: "icon-label", iconStyle: "with-border", iconPosition: "left", onClick: () => addRow(value) }, t('addLabel', { label: (0, getTranslation_1.getTranslation)(labels.singular, i18n) }))))));
178
164
  };
179
165
  exports.default = (0, withCondition_1.default)(ArrayFieldType);
180
166
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/admin/components/forms/field-types/Array/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/admin/components/forms/field-types/Array/index.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,22 @@
3
3
  .array-field {
4
4
  margin: 0 0 base(2);
5
5
 
6
+ &:last-child {
7
+ margin-bottom: base(1.5);
8
+ }
9
+
10
+ &--has-no-error {
11
+ >.array-field__header .array-field__header-content {
12
+ color: var(--theme-text);
13
+ }
14
+ }
15
+
16
+ &__header-content {
17
+ display: flex;
18
+ align-items: center;
19
+ gap: base(.5);
20
+ }
21
+
6
22
  &__header {
7
23
  h3 {
8
24
  margin-bottom: 0;
@@ -42,6 +58,13 @@
42
58
  position: relative;
43
59
  }
44
60
 
61
+ &__row-header {
62
+ display: flex;
63
+ align-items: center;
64
+ gap: base(.5);
65
+ pointer-events: none;
66
+ }
67
+
45
68
  &__add-button-wrap {
46
69
  margin-top: base(1);
47
70
 
@@ -55,3 +78,23 @@
55
78
  }
56
79
  }
57
80
  }
81
+
82
+ html[data-theme=light] {
83
+ .array-field {
84
+ &--has-error {
85
+ >.array-field__header .array-field__header-content {
86
+ color: var(--theme-error-750);
87
+ }
88
+ }
89
+ }
90
+ }
91
+
92
+ html[data-theme=dark] {
93
+ .array-field {
94
+ &--has-error {
95
+ >.array-field__header .array-field__header-content {
96
+ color: var(--theme-error-500);
97
+ }
98
+ }
99
+ }
100
+ }
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import { Props } from './types';
3
+ import type { UseDraggableSortableReturn } from '../../../elements/DraggableSortable/useDraggableSortable/types';
4
+ import type { Row } from '../../Form/types';
5
+ import type { Block } from '../../../../../fields/config/types';
6
+ type BlockFieldProps = UseDraggableSortableReturn & Pick<Props, 'path' | 'labels' | 'blocks' | 'fieldTypes' | 'indexPath' | 'permissions'> & {
7
+ addRow: (rowIndex: number, blockType: string) => void;
8
+ duplicateRow: (rowIndex: number) => void;
9
+ removeRow: (rowIndex: number) => void;
10
+ moveRow: (fromIndex: number, toIndex: number) => void;
11
+ setCollapse: (id: string, collapsed: boolean) => void;
12
+ rowIndex: number;
13
+ row: Row;
14
+ readOnly: boolean;
15
+ rowCount: number;
16
+ blockToRender: Block;
17
+ };
18
+ export declare const BlockRow: React.FC<BlockFieldProps>;
19
+ export {};
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BlockRow = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_i18next_1 = require("react-i18next");
9
+ const Collapsible_1 = require("../../../elements/Collapsible");
10
+ const RenderFields_1 = __importDefault(require("../../RenderFields"));
11
+ const SectionTitle_1 = __importDefault(require("./SectionTitle"));
12
+ const Pill_1 = __importDefault(require("../../../elements/Pill"));
13
+ const HiddenInput_1 = __importDefault(require("../HiddenInput"));
14
+ const getTranslation_1 = require("../../../../../utilities/getTranslation");
15
+ const createNestedFieldPath_1 = require("../../Form/createNestedFieldPath");
16
+ const RowActions_1 = require("./RowActions");
17
+ const context_1 = require("../../Form/context");
18
+ const ErrorPill_1 = require("../../../elements/ErrorPill");
19
+ const baseClass = 'blocks-field';
20
+ const BlockRow = ({ path: parentPath, addRow, removeRow, moveRow, duplicateRow, setCollapse, transform, listeners, attributes, setNodeRef, row, rowIndex, rowCount, indexPath, readOnly, labels, fieldTypes, permissions, blocks, blockToRender, }) => {
21
+ var _a, _b, _c;
22
+ const path = `${parentPath}.${rowIndex}`;
23
+ const { i18n } = (0, react_i18next_1.useTranslation)();
24
+ const hasSubmitted = (0, context_1.useFormSubmitted)();
25
+ const childErrorPathsCount = (_a = row.childErrorPaths) === null || _a === void 0 ? void 0 : _a.size;
26
+ const fieldHasErrors = hasSubmitted && childErrorPathsCount > 0;
27
+ const classNames = [
28
+ `${baseClass}__row`,
29
+ fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,
30
+ ].filter(Boolean).join(' ');
31
+ return (react_1.default.createElement("div", { key: `${parentPath}-row-${rowIndex}`, id: `${parentPath.split('.').join('-')}-row-${rowIndex}`, ref: setNodeRef, style: {
32
+ transform,
33
+ } },
34
+ react_1.default.createElement(Collapsible_1.Collapsible, { collapsed: row.collapsed, onToggle: (collapsed) => setCollapse(row.id, collapsed), className: classNames, collapsibleStyle: fieldHasErrors ? 'error' : 'default', key: row.id, dragHandleProps: {
35
+ id: row.id,
36
+ attributes,
37
+ listeners,
38
+ }, header: (react_1.default.createElement("div", { className: `${baseClass}__block-header` },
39
+ react_1.default.createElement("span", { className: `${baseClass}__block-number` }, String(rowIndex + 1).padStart(2, '0')),
40
+ react_1.default.createElement(Pill_1.default, { pillStyle: "white", className: `${baseClass}__block-pill ${baseClass}__block-pill-${row.blockType}` }, (0, getTranslation_1.getTranslation)(blockToRender.labels.singular, i18n)),
41
+ react_1.default.createElement(SectionTitle_1.default, { path: `${path}.blockName`, readOnly: readOnly }),
42
+ fieldHasErrors && (react_1.default.createElement(ErrorPill_1.ErrorPill, { count: childErrorPathsCount, withMessage: true })))), actions: !readOnly ? (react_1.default.createElement(RowActions_1.RowActions, { addRow: addRow, removeRow: removeRow, moveRow: moveRow, duplicateRow: duplicateRow, rowCount: rowCount, rowIndex: rowIndex, blockType: row.blockType, blocks: blocks, labels: labels })) : undefined },
43
+ react_1.default.createElement(HiddenInput_1.default, { name: `${path}.id`, value: row.id }),
44
+ react_1.default.createElement(RenderFields_1.default, { className: `${baseClass}__fields`, readOnly: readOnly, fieldTypes: fieldTypes, permissions: (_c = (_b = permissions === null || permissions === void 0 ? void 0 : permissions.blocks) === null || _b === void 0 ? void 0 : _b[row.blockType]) === null || _c === void 0 ? void 0 : _c.fields, fieldSchema: blockToRender.fields.map((field) => ({
45
+ ...field,
46
+ path: (0, createNestedFieldPath_1.createNestedFieldPath)(path, field),
47
+ })), indexPath: indexPath }))));
48
+ };
49
+ exports.BlockRow = BlockRow;
50
+ //# sourceMappingURL=BlockRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlockRow.js","sourceRoot":"","sources":["../../../../../../src/admin/components/forms/field-types/Blocks/BlockRow.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import React from 'react';
2
2
  import { Block, Labels } from '../../../../../fields/config/types';
3
- import { Row } from '../../Form/types';
4
3
  export declare const RowActions: React.FC<{
5
4
  addRow: (rowIndex: number, blockType: string) => void;
6
5
  duplicateRow: (rowIndex: number, blockType: string) => void;
@@ -9,6 +8,6 @@ export declare const RowActions: React.FC<{
9
8
  labels: Labels;
10
9
  blocks: Block[];
11
10
  rowIndex: number;
12
- rows: Row[];
11
+ rowCount: number;
13
12
  blockType: string;
14
13
  }>;
@@ -10,7 +10,7 @@ const ArrayAction_1 = require("../../../elements/ArrayAction");
10
10
  const useDrawerSlug_1 = require("../../../elements/Drawer/useDrawerSlug");
11
11
  const BlocksDrawer_1 = require("./BlocksDrawer");
12
12
  const RowActions = (props) => {
13
- const { addRow, duplicateRow, removeRow, moveRow, labels, blocks, rowIndex, rows, blockType, } = props;
13
+ const { addRow, duplicateRow, removeRow, moveRow, labels, blocks, rowIndex, rowCount, blockType, } = props;
14
14
  const { openModal, closeModal } = (0, modal_1.useModal)();
15
15
  const drawerSlug = (0, useDrawerSlug_1.useDrawerSlug)('blocks-drawer');
16
16
  return (react_1.default.createElement(react_1.default.Fragment, null,
@@ -20,7 +20,7 @@ const RowActions = (props) => {
20
20
  }
21
21
  closeModal(drawerSlug);
22
22
  }, addRowIndex: rowIndex, labels: labels }),
23
- react_1.default.createElement(ArrayAction_1.ArrayAction, { rowCount: rows.length, addRow: () => {
23
+ react_1.default.createElement(ArrayAction_1.ArrayAction, { rowCount: rowCount, addRow: () => {
24
24
  openModal(drawerSlug);
25
25
  }, duplicateRow: () => duplicateRow(rowIndex, blockType), moveRow: moveRow, removeRow: removeRow, index: rowIndex })));
26
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"RowActions.js","sourceRoot":"","sources":["../../../../../../src/admin/components/forms/field-types/Blocks/RowActions.tsx"],"names":[],"mappings":";;;;;;AAAA,8CAA8C;AAC9C,kDAA0B;AAE1B,+DAA4D;AAC5D,0EAAuE;AACvE,iDAA8C;AAGvC,MAAM,UAAU,GAUlB,CAAC,KAAK,EAAE,EAAE;IACb,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,SAAS,EACT,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,SAAS,GACV,GAAG,KAAK,CAAC;IAEV,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAA,6BAAa,EAAC,eAAe,CAAC,CAAC;IAElD,OAAO,CACL,8BAAC,eAAK,CAAC,QAAQ;QACb,8BAAC,2BAAY,IACX,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;gBAC9B,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;oBAChC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;iBAC7B;gBACD,UAAU,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC,EACD,WAAW,EAAE,QAAQ,EACrB,MAAM,EAAE,MAAM,GACd;QACF,8BAAC,yBAAW,IACV,QAAQ,EAAE,IAAI,CAAC,MAAM,EACrB,MAAM,EAAE,GAAG,EAAE;gBACX,SAAS,CAAC,UAAU,CAAC,CAAC;YACxB,CAAC,EACD,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,EACrD,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,QAAQ,GACf,CACa,CAClB,CAAC;AACJ,CAAC,CAAC;AApDW,QAAA,UAAU,cAoDrB"}
1
+ {"version":3,"file":"RowActions.js","sourceRoot":"","sources":["../../../../../../src/admin/components/forms/field-types/Blocks/RowActions.tsx"],"names":[],"mappings":";;;;;;AAAA,8CAA8C;AAC9C,kDAA0B;AAE1B,+DAA4D;AAC5D,0EAAuE;AACvE,iDAA8C;AAEvC,MAAM,UAAU,GAUlB,CAAC,KAAK,EAAE,EAAE;IACb,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,SAAS,EACT,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,SAAS,GACV,GAAG,KAAK,CAAC;IAEV,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAA,6BAAa,EAAC,eAAe,CAAC,CAAC;IAElD,OAAO,CACL,8BAAC,eAAK,CAAC,QAAQ;QACb,8BAAC,2BAAY,IACX,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;gBAC9B,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;oBAChC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;iBAC7B;gBACD,UAAU,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC,EACD,WAAW,EAAE,QAAQ,EACrB,MAAM,EAAE,MAAM,GACd;QACF,8BAAC,yBAAW,IACV,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,GAAG,EAAE;gBACX,SAAS,CAAC,UAAU,CAAC,CAAC;YACxB,CAAC,EACD,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,EACrD,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,QAAQ,GACf,CACa,CAClB,CAAC;AACJ,CAAC,CAAC;AApDW,QAAA,UAAU,cAoDrB"}
@@ -1,7 +1,6 @@
1
1
  @import '../../../../../scss/styles.scss';
2
2
 
3
3
  .section-title {
4
- margin-left: base(.375);
5
4
  position: relative;
6
5
 
7
6
  &:after {
@@ -9,7 +8,7 @@
9
8
  content: attr(data-value) ' ';
10
9
  visibility: hidden;
11
10
  white-space: nowrap;
12
- min-width: base(3);
11
+ min-width: base(2.5);
13
12
  }
14
13
 
15
14
  &:after,
@@ -47,4 +46,4 @@
47
46
  box-shadow: none;
48
47
  }
49
48
  }
50
- }
49
+ }