@payloadcms/ui 3.68.0-internal-debug.35482da → 3.68.0-internal-debug.654e4ad

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.
@@ -1,15 +1,15 @@
1
1
  import React from 'react';
2
2
  import './index.scss';
3
3
  export type Props = {
4
- addRow: (current: number, blockType?: string) => Promise<void> | void;
5
- copyRow: (index: number) => void;
6
- duplicateRow: (current: number) => void;
4
+ addRow?: (current: number, blockType?: string) => Promise<void> | void;
5
+ copyRow?: (index: number) => void;
6
+ duplicateRow?: (current: number) => void;
7
7
  hasMaxRows: boolean;
8
8
  index: number;
9
9
  isSortable?: boolean;
10
- moveRow: (from: number, to: number) => void;
11
- pasteRow: (index: number) => void;
12
- removeRow: (index: number) => void;
10
+ moveRow?: (from: number, to: number) => void;
11
+ pasteRow?: (index: number) => void;
12
+ removeRow?: (index: number) => void;
13
13
  rowCount: number;
14
14
  };
15
15
  export declare const ArrayAction: React.FC<Props>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ArrayAction/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,OAAO,cAAc,CAAA;AAKrB,MAAM,MAAM,KAAK,GAAG;IAClB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACrE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA6GvC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ArrayAction/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACtE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuHvC,CAAA"}
@@ -8,8 +8,8 @@ import { PlusIcon } from '../../icons/Plus/index.js';
8
8
  import { XIcon } from '../../icons/X/index.js';
9
9
  import { useTranslation } from '../../providers/Translation/index.js';
10
10
  import { ClipboardActionLabel } from '../ClipboardAction/ClipboardActionLabel.js';
11
- import './index.scss';
12
11
  import { Popup, PopupList } from '../Popup/index.js';
12
+ import './index.scss';
13
13
  const baseClass = 'array-actions';
14
14
  export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index, isSortable, moveRow, pasteRow, removeRow, rowCount })=>{
15
15
  const { t } = useTranslation();
@@ -26,7 +26,7 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
26
26
  return /*#__PURE__*/ _jsxDEV(PopupList.ButtonGroup, {
27
27
  buttonSize: "small",
28
28
  children: [
29
- isSortable && index !== 0 && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
29
+ isSortable && index !== 0 && moveRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
30
30
  className: `${baseClass}__action ${baseClass}__move-up`,
31
31
  onClick: ()=>{
32
32
  moveRow(index, index - 1);
@@ -54,7 +54,7 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
54
54
  lineNumber: 53,
55
55
  columnNumber: 15
56
56
  }, void 0),
57
- isSortable && index < rowCount - 1 && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
57
+ isSortable && index < rowCount - 1 && moveRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
58
58
  className: `${baseClass}__action`,
59
59
  onClick: ()=>{
60
60
  moveRow(index, index + 1);
@@ -82,7 +82,7 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
82
82
  }, void 0),
83
83
  !hasMaxRows && /*#__PURE__*/ _jsxDEV(React.Fragment, {
84
84
  children: [
85
- /*#__PURE__*/ _jsxDEV(PopupList.Button, {
85
+ addRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
86
86
  className: `${baseClass}__action ${baseClass}__add`,
87
87
  onClick: ()=>{
88
88
  void addRow(index + 1);
@@ -91,17 +91,17 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
91
91
  children: [
92
92
  /*#__PURE__*/ _jsxDEV(PlusIcon, {}, void 0, false, {
93
93
  fileName: "src/elements/ArrayAction/index.tsx",
94
- lineNumber: 89,
95
- columnNumber: 19
94
+ lineNumber: 90,
95
+ columnNumber: 21
96
96
  }, void 0),
97
97
  t('general:addBelow')
98
98
  ]
99
99
  }, void 0, true, {
100
100
  fileName: "src/elements/ArrayAction/index.tsx",
101
- lineNumber: 82,
102
- columnNumber: 17
101
+ lineNumber: 83,
102
+ columnNumber: 19
103
103
  }, void 0),
104
- /*#__PURE__*/ _jsxDEV(PopupList.Button, {
104
+ duplicateRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
105
105
  className: `${baseClass}__action ${baseClass}__duplicate`,
106
106
  onClick: ()=>{
107
107
  duplicateRow(index);
@@ -110,15 +110,15 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
110
110
  children: [
111
111
  /*#__PURE__*/ _jsxDEV(CopyIcon, {}, void 0, false, {
112
112
  fileName: "src/elements/ArrayAction/index.tsx",
113
- lineNumber: 99,
114
- columnNumber: 19
113
+ lineNumber: 102,
114
+ columnNumber: 21
115
115
  }, void 0),
116
116
  t('general:duplicate')
117
117
  ]
118
118
  }, void 0, true, {
119
119
  fileName: "src/elements/ArrayAction/index.tsx",
120
- lineNumber: 92,
121
- columnNumber: 17
120
+ lineNumber: 95,
121
+ columnNumber: 19
122
122
  }, void 0)
123
123
  ]
124
124
  }, void 0, true, {
@@ -126,7 +126,7 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
126
126
  lineNumber: 81,
127
127
  columnNumber: 15
128
128
  }, void 0),
129
- /*#__PURE__*/ _jsxDEV(PopupList.Button, {
129
+ copyRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
130
130
  className: `${baseClass}__action ${baseClass}__copy`,
131
131
  onClick: ()=>{
132
132
  copyRow(index);
@@ -136,15 +136,15 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
136
136
  isRow: true
137
137
  }, void 0, false, {
138
138
  fileName: "src/elements/ArrayAction/index.tsx",
139
- lineNumber: 111,
140
- columnNumber: 15
139
+ lineNumber: 116,
140
+ columnNumber: 17
141
141
  }, void 0)
142
142
  }, void 0, false, {
143
143
  fileName: "src/elements/ArrayAction/index.tsx",
144
- lineNumber: 104,
145
- columnNumber: 13
144
+ lineNumber: 109,
145
+ columnNumber: 15
146
146
  }, void 0),
147
- /*#__PURE__*/ _jsxDEV(PopupList.Button, {
147
+ pasteRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
148
148
  className: `${baseClass}__action ${baseClass}__paste`,
149
149
  onClick: ()=>{
150
150
  pasteRow(index);
@@ -155,15 +155,15 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
155
155
  isRow: true
156
156
  }, void 0, false, {
157
157
  fileName: "src/elements/ArrayAction/index.tsx",
158
- lineNumber: 120,
159
- columnNumber: 15
158
+ lineNumber: 127,
159
+ columnNumber: 17
160
160
  }, void 0)
161
161
  }, void 0, false, {
162
162
  fileName: "src/elements/ArrayAction/index.tsx",
163
- lineNumber: 113,
164
- columnNumber: 13
163
+ lineNumber: 120,
164
+ columnNumber: 15
165
165
  }, void 0),
166
- /*#__PURE__*/ _jsxDEV(PopupList.Button, {
166
+ removeRow && /*#__PURE__*/ _jsxDEV(PopupList.Button, {
167
167
  className: `${baseClass}__action ${baseClass}__remove`,
168
168
  onClick: ()=>{
169
169
  removeRow(index);
@@ -172,15 +172,15 @@ export const ArrayAction = ({ addRow, copyRow, duplicateRow, hasMaxRows, index,
172
172
  children: [
173
173
  /*#__PURE__*/ _jsxDEV(XIcon, {}, void 0, false, {
174
174
  fileName: "src/elements/ArrayAction/index.tsx",
175
- lineNumber: 129,
176
- columnNumber: 15
175
+ lineNumber: 138,
176
+ columnNumber: 17
177
177
  }, void 0),
178
178
  t('general:remove')
179
179
  ]
180
180
  }, void 0, true, {
181
181
  fileName: "src/elements/ArrayAction/index.tsx",
182
- lineNumber: 122,
183
- columnNumber: 13
182
+ lineNumber: 131,
183
+ columnNumber: 15
184
184
  }, void 0)
185
185
  ]
186
186
  }, void 0, true, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/ArrayAction/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { CopyIcon } from '../../icons/Copy/index.js'\nimport { MoreIcon } from '../../icons/More/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ClipboardActionLabel } from '../ClipboardAction/ClipboardActionLabel.js'\nimport './index.scss'\nimport { Popup, PopupList } from '../Popup/index.js'\n\nconst baseClass = 'array-actions'\n\nexport type Props = {\n addRow: (current: number, blockType?: string) => Promise<void> | void\n copyRow: (index: number) => void\n duplicateRow: (current: number) => void\n hasMaxRows: boolean\n index: number\n isSortable?: boolean\n moveRow: (from: number, to: number) => void\n pasteRow: (index: number) => void\n removeRow: (index: number) => void\n rowCount: number\n}\n\nexport const ArrayAction: React.FC<Props> = ({\n addRow,\n copyRow,\n duplicateRow,\n hasMaxRows,\n index,\n isSortable,\n moveRow,\n pasteRow,\n removeRow,\n rowCount,\n}) => {\n const { t } = useTranslation()\n\n return (\n <Popup\n button={<MoreIcon />}\n buttonClassName={`${baseClass}__button`}\n className={baseClass}\n horizontalAlign=\"center\"\n render={({ close }) => {\n return (\n <PopupList.ButtonGroup buttonSize=\"small\">\n {isSortable && index !== 0 && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__move-up`}\n onClick={() => {\n moveRow(index, index - 1)\n close()\n }}\n >\n <div className={`${baseClass}__action-chevron`}>\n <ChevronIcon direction=\"up\" />\n </div>\n {t('general:moveUp')}\n </PopupList.Button>\n )}\n {isSortable && index < rowCount - 1 && (\n <PopupList.Button\n className={`${baseClass}__action`}\n onClick={() => {\n moveRow(index, index + 1)\n close()\n }}\n >\n <div className={`${baseClass}__action-chevron`}>\n <ChevronIcon />\n </div>\n {t('general:moveDown')}\n </PopupList.Button>\n )}\n {!hasMaxRows && (\n <React.Fragment>\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__add`}\n onClick={() => {\n void addRow(index + 1)\n close()\n }}\n >\n <PlusIcon />\n {t('general:addBelow')}\n </PopupList.Button>\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__duplicate`}\n onClick={() => {\n duplicateRow(index)\n close()\n }}\n >\n <CopyIcon />\n {t('general:duplicate')}\n </PopupList.Button>\n </React.Fragment>\n )}\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__copy`}\n onClick={() => {\n copyRow(index)\n close()\n }}\n >\n <ClipboardActionLabel isRow />\n </PopupList.Button>\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__paste`}\n onClick={() => {\n pasteRow(index)\n close()\n }}\n >\n <ClipboardActionLabel isPaste isRow />\n </PopupList.Button>\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__remove`}\n onClick={() => {\n removeRow(index)\n close()\n }}\n >\n <XIcon />\n {t('general:remove')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n }}\n size=\"medium\"\n />\n )\n}\n"],"names":["React","ChevronIcon","CopyIcon","MoreIcon","PlusIcon","XIcon","useTranslation","ClipboardActionLabel","Popup","PopupList","baseClass","ArrayAction","addRow","copyRow","duplicateRow","hasMaxRows","index","isSortable","moveRow","pasteRow","removeRow","rowCount","t","button","buttonClassName","className","horizontalAlign","render","close","ButtonGroup","buttonSize","Button","onClick","div","direction","Fragment","isRow","isPaste","size"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/elements/ArrayAction/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { CopyIcon } from '../../icons/Copy/index.js'\nimport { MoreIcon } from '../../icons/More/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ClipboardActionLabel } from '../ClipboardAction/ClipboardActionLabel.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport './index.scss'\n\nconst baseClass = 'array-actions'\n\nexport type Props = {\n addRow?: (current: number, blockType?: string) => Promise<void> | void\n copyRow?: (index: number) => void\n duplicateRow?: (current: number) => void\n hasMaxRows: boolean\n index: number\n isSortable?: boolean\n moveRow?: (from: number, to: number) => void\n pasteRow?: (index: number) => void\n removeRow?: (index: number) => void\n rowCount: number\n}\n\nexport const ArrayAction: React.FC<Props> = ({\n addRow,\n copyRow,\n duplicateRow,\n hasMaxRows,\n index,\n isSortable,\n moveRow,\n pasteRow,\n removeRow,\n rowCount,\n}) => {\n const { t } = useTranslation()\n\n return (\n <Popup\n button={<MoreIcon />}\n buttonClassName={`${baseClass}__button`}\n className={baseClass}\n horizontalAlign=\"center\"\n render={({ close }) => {\n return (\n <PopupList.ButtonGroup buttonSize=\"small\">\n {isSortable && index !== 0 && moveRow && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__move-up`}\n onClick={() => {\n moveRow(index, index - 1)\n close()\n }}\n >\n <div className={`${baseClass}__action-chevron`}>\n <ChevronIcon direction=\"up\" />\n </div>\n {t('general:moveUp')}\n </PopupList.Button>\n )}\n {isSortable && index < rowCount - 1 && moveRow && (\n <PopupList.Button\n className={`${baseClass}__action`}\n onClick={() => {\n moveRow(index, index + 1)\n close()\n }}\n >\n <div className={`${baseClass}__action-chevron`}>\n <ChevronIcon />\n </div>\n {t('general:moveDown')}\n </PopupList.Button>\n )}\n {!hasMaxRows && (\n <React.Fragment>\n {addRow && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__add`}\n onClick={() => {\n void addRow(index + 1)\n close()\n }}\n >\n <PlusIcon />\n {t('general:addBelow')}\n </PopupList.Button>\n )}\n {duplicateRow && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__duplicate`}\n onClick={() => {\n duplicateRow(index)\n close()\n }}\n >\n <CopyIcon />\n {t('general:duplicate')}\n </PopupList.Button>\n )}\n </React.Fragment>\n )}\n {copyRow && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__copy`}\n onClick={() => {\n copyRow(index)\n close()\n }}\n >\n <ClipboardActionLabel isRow />\n </PopupList.Button>\n )}\n {pasteRow && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__paste`}\n onClick={() => {\n pasteRow(index)\n close()\n }}\n >\n <ClipboardActionLabel isPaste isRow />\n </PopupList.Button>\n )}\n {removeRow && (\n <PopupList.Button\n className={`${baseClass}__action ${baseClass}__remove`}\n onClick={() => {\n removeRow(index)\n close()\n }}\n >\n <XIcon />\n {t('general:remove')}\n </PopupList.Button>\n )}\n </PopupList.ButtonGroup>\n )\n }}\n size=\"medium\"\n />\n )\n}\n"],"names":["React","ChevronIcon","CopyIcon","MoreIcon","PlusIcon","XIcon","useTranslation","ClipboardActionLabel","Popup","PopupList","baseClass","ArrayAction","addRow","copyRow","duplicateRow","hasMaxRows","index","isSortable","moveRow","pasteRow","removeRow","rowCount","t","button","buttonClassName","className","horizontalAlign","render","close","ButtonGroup","buttonSize","Button","onClick","div","direction","Fragment","isRow","isPaste","size"],"mappings":"AAAA;;AACA,OAAOA,WAAW,QAAO;AAEzB,SAASC,WAAW,QAAQ,+BAA8B;AAC1D,SAASC,QAAQ,QAAQ,4BAA2B;AACpD,SAASC,QAAQ,QAAQ,4BAA2B;AACpD,SAASC,QAAQ,QAAQ,4BAA2B;AACpD,SAASC,KAAK,QAAQ,yBAAwB;AAC9C,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,oBAAoB,QAAQ,6CAA4C;AACjF,SAASC,KAAK,EAAEC,SAAS,QAAQ,oBAAmB;AACpD,OAAO,eAAc;AAErB,MAAMC,YAAY;AAelB,OAAO,MAAMC,cAA+B,CAAC,EAC3CC,MAAM,EACNC,OAAO,EACPC,YAAY,EACZC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,OAAO,EACPC,QAAQ,EACRC,SAAS,EACTC,QAAQ,EACT;IACC,MAAM,EAAEC,CAAC,EAAE,GAAGhB;IAEd,qBACE,QAACE;QACCe,sBAAQ,QAACpB;;;;;QACTqB,iBAAiB,GAAGd,UAAU,QAAQ,CAAC;QACvCe,WAAWf;QACXgB,iBAAgB;QAChBC,QAAQ,CAAC,EAAEC,KAAK,EAAE;YAChB,qBACE,QAACnB,UAAUoB,WAAW;gBAACC,YAAW;;oBAC/Bb,cAAcD,UAAU,KAAKE,yBAC5B,QAACT,UAAUsB,MAAM;wBACfN,WAAW,GAAGf,UAAU,SAAS,EAAEA,UAAU,SAAS,CAAC;wBACvDsB,SAAS;4BACPd,QAAQF,OAAOA,QAAQ;4BACvBY;wBACF;;0CAEA,QAACK;gCAAIR,WAAW,GAAGf,UAAU,gBAAgB,CAAC;0CAC5C,cAAA,QAACT;oCAAYiC,WAAU;;;;;;;;;;;4BAExBZ,EAAE;;;;;;;oBAGNL,cAAcD,QAAQK,WAAW,KAAKH,yBACrC,QAACT,UAAUsB,MAAM;wBACfN,WAAW,GAAGf,UAAU,QAAQ,CAAC;wBACjCsB,SAAS;4BACPd,QAAQF,OAAOA,QAAQ;4BACvBY;wBACF;;0CAEA,QAACK;gCAAIR,WAAW,GAAGf,UAAU,gBAAgB,CAAC;0CAC5C,cAAA,QAACT;;;;;;;;;;4BAEFqB,EAAE;;;;;;;oBAGN,CAACP,4BACA,QAACf,MAAMmC,QAAQ;;4BACZvB,wBACC,QAACH,UAAUsB,MAAM;gCACfN,WAAW,GAAGf,UAAU,SAAS,EAAEA,UAAU,KAAK,CAAC;gCACnDsB,SAAS;oCACP,KAAKpB,OAAOI,QAAQ;oCACpBY;gCACF;;kDAEA,QAACxB;;;;;oCACAkB,EAAE;;;;;;;4BAGNR,8BACC,QAACL,UAAUsB,MAAM;gCACfN,WAAW,GAAGf,UAAU,SAAS,EAAEA,UAAU,WAAW,CAAC;gCACzDsB,SAAS;oCACPlB,aAAaE;oCACbY;gCACF;;kDAEA,QAAC1B;;;;;oCACAoB,EAAE;;;;;;;;;;;;;oBAKVT,yBACC,QAACJ,UAAUsB,MAAM;wBACfN,WAAW,GAAGf,UAAU,SAAS,EAAEA,UAAU,MAAM,CAAC;wBACpDsB,SAAS;4BACPnB,QAAQG;4BACRY;wBACF;kCAEA,cAAA,QAACrB;4BAAqB6B,KAAK;;;;;;;;;;;oBAG9BjB,0BACC,QAACV,UAAUsB,MAAM;wBACfN,WAAW,GAAGf,UAAU,SAAS,EAAEA,UAAU,OAAO,CAAC;wBACrDsB,SAAS;4BACPb,SAASH;4BACTY;wBACF;kCAEA,cAAA,QAACrB;4BAAqB8B,OAAO;4BAACD,KAAK;;;;;;;;;;;oBAGtChB,2BACC,QAACX,UAAUsB,MAAM;wBACfN,WAAW,GAAGf,UAAU,SAAS,EAAEA,UAAU,QAAQ,CAAC;wBACtDsB,SAAS;4BACPZ,UAAUJ;4BACVY;wBACF;;0CAEA,QAACvB;;;;;4BACAiB,EAAE;;;;;;;;;;;;;QAKb;QACAgB,MAAK;;;;;;AAGX,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/HTMLDiff/diff/index.ts"],"sourcesContent":["// Taken and modified from https://github.com/Arman19941113/html-diff/blob/master/packages/html-diff/src/index.ts\n\ninterface MatchedBlock {\n newEnd: number\n newStart: number\n oldEnd: number\n oldStart: number\n size: number\n}\n\ninterface Operation {\n /**\n * Index of entry in tokenized token list\n */\n newEnd: number\n newStart: number\n oldEnd: number\n oldStart: number\n type: 'create' | 'delete' | 'equal' | 'replace'\n}\n\ntype BaseOpType = 'create' | 'delete'\n\ninterface HtmlDiffConfig {\n classNames: {\n createBlock: string\n createInline: string\n deleteBlock: string\n deleteInline: string\n }\n greedyBoundary: number\n greedyMatch: boolean\n minMatchedSize: number\n}\n\nexport interface HtmlDiffOptions {\n /**\n * The classNames for wrapper DOM.\n * Use this to configure your own styles without importing the built-in CSS file\n */\n classNames?: Partial<{\n createBlock?: string\n createInline?: string\n deleteBlock?: string\n deleteInline?: string\n }>\n /**\n * @defaultValue 1000\n */\n greedyBoundary?: number\n /**\n * When greedyMatch is enabled, if the length of the sub-tokens exceeds greedyBoundary,\n * we will use the matched sub-tokens that are sufficiently good, even if they are not optimal, to enhance performance.\n * @defaultValue true\n */\n greedyMatch?: boolean\n /**\n * Determine the minimum threshold for calculating common sub-tokens.\n * You may adjust it to a value larger than 2, but not lower, due to the potential inclusion of HTML tags in the count.\n * @defaultValue 2\n */\n minMatchedSize?: number\n /**\n * Whether to tokenize by character or by word.\n * @defaultValue false\n */\n tokenizeByCharacter?: boolean\n}\n\n// eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation\nconst htmlStartTagReg = /^<(?<name>[^\\s/>]+)[^>]*>$/\n// eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation\nconst htmlTagWithNameReg = /^<(?<isEnd>\\/)?(?<name>[^\\s>]+)[^>]*>$/\n\nconst htmlTagReg = /^<[^>]+>/\nconst htmlImgTagReg = /^<img[^>]*>$/\nconst htmlVideoTagReg = /^<video[^>]*>.*?<\\/video>$/ms\n\nexport class HtmlDiff {\n private readonly config: HtmlDiffConfig\n private leastCommonLength: number = Infinity\n private readonly matchedBlockList: MatchedBlock[] = []\n private readonly newTokens: string[] = []\n private readonly oldTokens: string[] = []\n private readonly operationList: Operation[] = []\n private sideBySideContents?: [string, string]\n private unifiedContent?: string\n\n constructor(\n oldHtml: string,\n newHtml: string,\n {\n classNames = {\n createBlock: 'html-diff-create-block-wrapper',\n createInline: 'html-diff-create-inline-wrapper',\n deleteBlock: 'html-diff-delete-block-wrapper',\n deleteInline: 'html-diff-delete-inline-wrapper',\n },\n greedyBoundary = 1000,\n greedyMatch = true,\n minMatchedSize = 2,\n tokenizeByCharacter = false,\n }: HtmlDiffOptions = {},\n ) {\n // init config\n this.config = {\n classNames: {\n createBlock: 'html-diff-create-block-wrapper',\n createInline: 'html-diff-create-inline-wrapper',\n deleteBlock: 'html-diff-delete-block-wrapper',\n deleteInline: 'html-diff-delete-inline-wrapper',\n ...classNames,\n },\n greedyBoundary,\n greedyMatch,\n minMatchedSize,\n }\n // white space is junk\n oldHtml = oldHtml.trim()\n newHtml = newHtml.trim()\n\n // no need to diff\n if (oldHtml === newHtml) {\n this.unifiedContent = oldHtml\n let equalSequence = 0\n // eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation\n const content = oldHtml.replace(/<([^\\s/>]+)[^>]*>/g, (match: string, name: string) => {\n const tagNameLength = name.length + 1\n return `${match.slice(0, tagNameLength)} data-seq=\"${++equalSequence}\"${match.slice(tagNameLength)}`\n })\n this.sideBySideContents = [content, content]\n return\n }\n\n // step1: split HTML to tokens(atomic tokens)\n const tokenizeFn = tokenizeByCharacter ? this.tokenizeByCharacter : this.tokenizeByWord\n this.oldTokens = tokenizeFn(oldHtml)\n this.newTokens = tokenizeFn(newHtml)\n // step2: find matched blocks\n this.matchedBlockList = this.getMatchedBlockList()\n\n // step3: generate operation list\n this.operationList = this.getOperationList()\n }\n\n // Find the longest matched block between tokens\n private computeBestMatchedBlock(\n oldStart: number,\n oldEnd: number,\n newStart: number,\n newEnd: number,\n ): MatchedBlock | null {\n let bestMatchedBlock = null\n for (let i = oldStart; i < oldEnd; i++) {\n const len = Math.min(oldEnd - i, newEnd - newStart)\n const ret = this.slideBestMatchedBlock(i, newStart, len)\n if (ret && (!bestMatchedBlock || ret.size > bestMatchedBlock.size)) {\n bestMatchedBlock = ret\n if (ret.size > this.leastCommonLength) {\n return bestMatchedBlock\n }\n }\n }\n for (let j = newStart; j < newEnd; j++) {\n const len = Math.min(oldEnd - oldStart, newEnd - j)\n const ret = this.slideBestMatchedBlock(oldStart, j, len)\n if (ret && (!bestMatchedBlock || ret.size > bestMatchedBlock.size)) {\n bestMatchedBlock = ret\n if (ret.size > this.leastCommonLength) {\n return bestMatchedBlock\n }\n }\n }\n return bestMatchedBlock\n }\n\n private computeMatchedBlockList(\n oldStart: number,\n oldEnd: number,\n newStart: number,\n newEnd: number,\n matchedBlockList: MatchedBlock[] = [],\n ): MatchedBlock[] {\n const matchBlock = this.computeBestMatchedBlock(oldStart, oldEnd, newStart, newEnd)\n\n if (!matchBlock) {\n return []\n }\n\n if (oldStart < matchBlock.oldStart && newStart < matchBlock.newStart) {\n this.computeMatchedBlockList(\n oldStart,\n matchBlock.oldStart,\n newStart,\n matchBlock.newStart,\n matchedBlockList,\n )\n }\n matchedBlockList.push(matchBlock)\n if (oldEnd > matchBlock.oldEnd && newEnd > matchBlock.newEnd) {\n this.computeMatchedBlockList(\n matchBlock.oldEnd,\n oldEnd,\n matchBlock.newEnd,\n newEnd,\n matchedBlockList,\n )\n }\n return matchedBlockList\n }\n\n private dressUpBlockTag(type: BaseOpType, token: string): string {\n if (type === 'create') {\n return `<div class=\"${this.config.classNames.createBlock}\">${token}</div>`\n }\n if (type === 'delete') {\n return `<div class=\"${this.config.classNames.deleteBlock}\">${token}</div>`\n }\n return ''\n }\n\n private dressUpDiffContent(type: BaseOpType, tokens: string[]): string {\n const tokensLength = tokens.length\n if (!tokensLength) {\n return ''\n }\n\n let result = ''\n let textStartIndex = 0\n let i = -1\n for (const token of tokens) {\n i++\n\n // If this is true, this HTML should be diffed as well - not just its children\n const isMatchElement = token.includes('data-enable-match=\"true\"')\n const isMatchExplicitlyDisabled = token.includes('data-enable-match=\"false\"')\n const isHtmlTag = !!token.match(htmlTagReg)?.length\n\n if (isMatchExplicitlyDisabled) {\n textStartIndex = i + 1\n result += token\n }\n // this token is html tag\n else if (!isMatchElement && isHtmlTag) {\n // handle text tokens before\n if (i > textStartIndex) {\n result += this.dressUpText(type, tokens.slice(textStartIndex, i))\n }\n // handle this tag\n textStartIndex = i + 1\n if (token.match(htmlVideoTagReg)) {\n result += this.dressUpBlockTag(type, token)\n } /* else if ([htmlImgTagReg].some((item) => token.match(item))) {\n result += this.dressUpInlineTag(type, token)\n }*/ else {\n result += token\n }\n } else if (isMatchElement && isHtmlTag) {\n // handle text tokens before\n if (i > textStartIndex) {\n result += this.dressUpText(type, tokens.slice(textStartIndex, i))\n }\n\n // handle this tag\n textStartIndex = i + 1\n // Add data-match-type to the tag that can be styled\n const newToken = this.dressupMatchEnabledHtmlTag(type, token)\n\n result += newToken\n }\n }\n if (textStartIndex < tokensLength) {\n result += this.dressUpText(type, tokens.slice(textStartIndex))\n }\n return result\n }\n\n private dressUpInlineTag(type: BaseOpType, token: string): string {\n if (type === 'create') {\n return `<span class=\"${this.config.classNames.createInline}\">${token}</span>`\n }\n if (type === 'delete') {\n return `<span class=\"${this.config.classNames.deleteInline}\">${token}</span>`\n }\n return ''\n }\n\n private dressupMatchEnabledHtmlTag(type: BaseOpType, token: string): string {\n // token is a single html tag, e.g. <a data-enable-match=\"true\" href=\"https://2\" rel=undefined target=undefined>\n // add data-match-type to the tag\n const tagName = token.match(htmlStartTagReg)?.groups?.name\n if (!tagName) {\n return token\n }\n const tagNameLength = tagName.length + 1\n const matchType = type === 'create' ? 'create' : 'delete'\n return `${token.slice(0, tagNameLength)} data-match-type=\"${matchType}\"${token.slice(\n tagNameLength,\n token.length,\n )}`\n }\n\n private dressUpText(type: BaseOpType, tokens: string[]): string {\n const text = tokens.join('')\n if (!text.trim()) {\n return ''\n }\n if (type === 'create') {\n return `<span data-match-type=\"create\">${text}</span>`\n }\n if (type === 'delete') {\n return `<span data-match-type=\"delete\">${text}</span>`\n }\n return ''\n }\n\n /**\n * Generates a list of token entries that are matched between the old and new HTML. This list will not\n * include token ranges that differ.\n */\n private getMatchedBlockList(): MatchedBlock[] {\n const n1 = this.oldTokens.length\n const n2 = this.newTokens.length\n\n // 1. sync from start\n let start: MatchedBlock | null = null\n let i = 0\n while (i < n1 && i < n2 && this.oldTokens[i] === this.newTokens[i]) {\n i++\n }\n if (i >= this.config.minMatchedSize) {\n start = {\n newEnd: i,\n newStart: 0,\n oldEnd: i,\n oldStart: 0,\n size: i,\n }\n }\n\n // 2. sync from end\n let end: MatchedBlock | null = null\n let e1 = n1 - 1\n let e2 = n2 - 1\n while (i <= e1 && i <= e2 && this.oldTokens[e1] === this.newTokens[e2]) {\n e1--\n e2--\n }\n const size = n1 - 1 - e1\n if (size >= this.config.minMatchedSize) {\n end = {\n newEnd: n2,\n newStart: e2 + 1,\n oldEnd: n1,\n oldStart: e1 + 1,\n size,\n }\n }\n\n // 3. handle rest\n const oldStart = start ? i : 0\n const oldEnd = end ? e1 + 1 : n1\n const newStart = start ? i : 0\n const newEnd = end ? e2 + 1 : n2\n // optimize for large tokens\n if (this.config.greedyMatch) {\n const commonLength = Math.min(oldEnd - oldStart, newEnd - newStart)\n if (commonLength > this.config.greedyBoundary) {\n this.leastCommonLength = Math.floor(commonLength / 3)\n }\n }\n const ret = this.computeMatchedBlockList(oldStart, oldEnd, newStart, newEnd)\n if (start) {\n ret.unshift(start)\n }\n if (end) {\n ret.push(end)\n }\n\n return ret\n }\n\n // Generate operation list by matchedBlockList\n private getOperationList(): Operation[] {\n const operationList: Operation[] = []\n let walkIndexOld = 0\n let walkIndexNew = 0\n for (const matchedBlock of this.matchedBlockList) {\n const isOldStartIndexMatched = walkIndexOld === matchedBlock.oldStart\n const isNewStartIndexMatched = walkIndexNew === matchedBlock.newStart\n const operationBase = {\n newEnd: matchedBlock.newStart,\n newStart: walkIndexNew,\n oldEnd: matchedBlock.oldStart,\n oldStart: walkIndexOld,\n }\n if (!isOldStartIndexMatched && !isNewStartIndexMatched) {\n operationList.push(Object.assign(operationBase, { type: 'replace' as const }))\n } else if (isOldStartIndexMatched && !isNewStartIndexMatched) {\n operationList.push(Object.assign(operationBase, { type: 'create' as const }))\n } else if (!isOldStartIndexMatched && isNewStartIndexMatched) {\n operationList.push(Object.assign(operationBase, { type: 'delete' as const }))\n }\n\n operationList.push({\n type: 'equal',\n newEnd: matchedBlock.newEnd,\n newStart: matchedBlock.newStart,\n oldEnd: matchedBlock.oldEnd,\n oldStart: matchedBlock.oldStart,\n })\n walkIndexOld = matchedBlock.oldEnd\n walkIndexNew = matchedBlock.newEnd\n }\n // handle the tail content\n const maxIndexOld = this.oldTokens.length\n const maxIndexNew = this.newTokens.length\n const tailOperationBase = {\n newEnd: maxIndexNew,\n newStart: walkIndexNew,\n oldEnd: maxIndexOld,\n oldStart: walkIndexOld,\n }\n const isOldFinished = walkIndexOld === maxIndexOld\n const isNewFinished = walkIndexNew === maxIndexNew\n if (!isOldFinished && !isNewFinished) {\n operationList.push(Object.assign(tailOperationBase, { type: 'replace' as const }))\n } else if (isOldFinished && !isNewFinished) {\n operationList.push(Object.assign(tailOperationBase, { type: 'create' as const }))\n } else if (!isOldFinished && isNewFinished) {\n operationList.push(Object.assign(tailOperationBase, { type: 'delete' as const }))\n }\n return operationList\n }\n\n private slideBestMatchedBlock(addA: number, addB: number, len: number): MatchedBlock | null {\n let maxSize = 0\n let bestMatchedBlock: MatchedBlock | null = null\n\n let continuousSize = 0\n for (let i = 0; i < len; i++) {\n if (this.oldTokens[addA + i] === this.newTokens[addB + i]) {\n continuousSize++\n } else {\n continuousSize = 0\n }\n if (continuousSize > maxSize) {\n maxSize = continuousSize\n bestMatchedBlock = {\n newEnd: addB + i + 1,\n newStart: addB + i - continuousSize + 1,\n oldEnd: addA + i + 1,\n oldStart: addA + i - continuousSize + 1,\n size: continuousSize,\n }\n }\n }\n\n return maxSize >= this.config.minMatchedSize ? bestMatchedBlock : null\n }\n\n /**\n * Convert HTML to tokens at character level, preserving HTML tags as complete tokens\n * @example\n * tokenize(\"<a> Hello World </a>\")\n * [\"<a>\", \" \", \"H\", \"e\", \"l\", \"l\", \"o\", \" \", \"W\", \"o\", \"r\", \"l\", \"d\", \" \", \"</a>\"]\n */\n private tokenizeByCharacter(html: string): string[] {\n // First, identify HTML tags and preserve them as complete tokens\n const tokens: string[] = []\n let currentPos = 0\n\n // Regular expression to match HTML tags (including picture and video tags with content)\n const tagRegex = /<picture[^>]*>.*?<\\/picture>|<video[^>]*>.*?<\\/video>|<[^>]+>/gs\n let match: null | RegExpExecArray\n\n while ((match = tagRegex.exec(html)) !== null) {\n // Add characters before the tag\n const beforeTag = html.substring(currentPos, match.index)\n if (beforeTag) {\n // Split non-tag content into individual characters\n for (const char of beforeTag) {\n tokens.push(char)\n }\n }\n\n // Add the complete tag as a single token\n tokens.push(match[0])\n currentPos = match.index + match[0].length\n }\n\n // Add any remaining characters after the last tag\n const remaining = html.substring(currentPos)\n for (const char of remaining) {\n tokens.push(char)\n }\n\n return tokens\n }\n\n /**\n * convert HTML to tokens\n * @example\n * tokenize(\"<a> Hello World </a>\")\n * [\"<a>\",\" \", \"Hello\", \" \", \"World\", \" \", \"</a>\"]\n */\n private tokenizeByWord(html: string): string[] {\n // atomic token: html tag、continuous numbers or letters、blank spaces、other symbol\n return (\n html.match(\n /<picture[^>]*>.*?<\\/picture>|<video[^>]*>.*?<\\/video>|<[^>]+>|\\w+\\b|\\s+|[^<>\\w]/gs,\n ) || []\n )\n }\n\n public getSideBySideContents(): string[] {\n if (this.sideBySideContents !== undefined) {\n return this.sideBySideContents\n }\n\n let oldHtml = ''\n let newHtml = ''\n let equalSequence = 0\n this.operationList.forEach((operation) => {\n switch (operation.type) {\n case 'create': {\n newHtml += this.dressUpDiffContent(\n 'create',\n this.newTokens.slice(operation.newStart, operation.newEnd),\n )\n break\n }\n\n case 'delete': {\n const deletedTokens = this.oldTokens.slice(operation.oldStart, operation.oldEnd)\n oldHtml += this.dressUpDiffContent('delete', deletedTokens)\n break\n }\n case 'equal': {\n const equalTokens = this.newTokens.slice(operation.newStart, operation.newEnd)\n let equalString = ''\n for (const token of equalTokens) {\n // find start tags and add data-seq to enable sync scroll\n const startTagMatch = token.match(htmlStartTagReg)\n if (startTagMatch) {\n equalSequence += 1\n const tagNameLength = (startTagMatch?.groups?.name?.length ?? 0) + 1\n equalString += `${token.slice(0, tagNameLength)} data-seq=\"${equalSequence}\"${token.slice(tagNameLength)}`\n } else {\n equalString += token\n }\n }\n oldHtml += equalString\n newHtml += equalString\n break\n }\n\n case 'replace': {\n oldHtml += this.dressUpDiffContent(\n 'delete',\n this.oldTokens.slice(operation.oldStart, operation.oldEnd),\n )\n newHtml += this.dressUpDiffContent(\n 'create',\n this.newTokens.slice(operation.newStart, operation.newEnd),\n )\n break\n }\n\n default: {\n console.error('Richtext diff error - invalid operation: ' + String(operation.type))\n }\n }\n })\n\n const result: [string, string] = [oldHtml, newHtml]\n this.sideBySideContents = result\n return result\n }\n\n public getUnifiedContent(): string {\n if (this.unifiedContent !== undefined) {\n return this.unifiedContent\n }\n\n let result = ''\n this.operationList.forEach((operation) => {\n switch (operation.type) {\n case 'create': {\n result += this.dressUpDiffContent(\n 'create',\n this.newTokens.slice(operation.newStart, operation.newEnd),\n )\n break\n }\n\n case 'delete': {\n result += this.dressUpDiffContent(\n 'delete',\n this.oldTokens.slice(operation.oldStart, operation.oldEnd),\n )\n break\n }\n\n case 'equal': {\n for (const token of this.newTokens.slice(operation.newStart, operation.newEnd)) {\n result += token\n }\n break\n }\n\n case 'replace': {\n // handle specially tag replace\n const olds = this.oldTokens.slice(operation.oldStart, operation.oldEnd)\n const news = this.newTokens.slice(operation.newStart, operation.newEnd)\n if (\n olds.length === 1 &&\n news.length === 1 &&\n olds[0]?.match(htmlTagReg) &&\n news[0]?.match(htmlTagReg)\n ) {\n result += news[0]\n break\n }\n\n const deletedTokens: string[] = []\n const createdTokens: string[] = []\n let createIndex = operation.newStart\n for (\n let deleteIndex = operation.oldStart;\n deleteIndex < operation.oldEnd;\n deleteIndex++\n ) {\n const deletedToken = this.oldTokens[deleteIndex]\n\n if (!deletedToken) {\n continue\n }\n\n const matchTagResultD = deletedToken?.match(htmlTagWithNameReg)\n if (matchTagResultD) {\n // handle replaced tag token\n\n // skip special tag\n if ([htmlImgTagReg, htmlVideoTagReg].some((item) => deletedToken?.match(item))) {\n deletedTokens.push(deletedToken)\n continue\n }\n\n // handle normal tag\n result += this.dressUpDiffContent('delete', deletedTokens)\n deletedTokens.splice(0)\n let isTagInNewFind = false\n for (\n let tempCreateIndex = createIndex;\n tempCreateIndex < operation.newEnd;\n tempCreateIndex++\n ) {\n const createdToken = this.newTokens[tempCreateIndex]\n if (!createdToken) {\n continue\n }\n const matchTagResultC = createdToken?.match(htmlTagWithNameReg)\n if (\n matchTagResultC &&\n matchTagResultC.groups?.name === matchTagResultD.groups?.name &&\n matchTagResultC.groups?.isEnd === matchTagResultD.groups?.isEnd\n ) {\n // find first matched tag, but not maybe the expected tag(to optimize)\n isTagInNewFind = true\n result += this.dressUpDiffContent('create', createdTokens)\n result += createdToken\n createdTokens.splice(0)\n createIndex = tempCreateIndex + 1\n break\n } else {\n createdTokens.push(createdToken)\n }\n }\n if (!isTagInNewFind) {\n result += deletedToken\n createdTokens.splice(0)\n }\n } else {\n // token is not a tag\n deletedTokens.push(deletedToken)\n }\n }\n if (createIndex < operation.newEnd) {\n createdTokens.push(...this.newTokens.slice(createIndex, operation.newEnd))\n }\n result += this.dressUpDiffContent('delete', deletedTokens)\n result += this.dressUpDiffContent('create', createdTokens)\n break\n }\n\n default: {\n console.error('Richtext diff error - invalid operation: ' + String(operation.type))\n }\n }\n })\n this.unifiedContent = result\n return result\n }\n}\n"],"names":["htmlStartTagReg","htmlTagWithNameReg","htmlTagReg","htmlImgTagReg","htmlVideoTagReg","HtmlDiff","config","leastCommonLength","Infinity","matchedBlockList","newTokens","oldTokens","operationList","sideBySideContents","unifiedContent","constructor","oldHtml","newHtml","classNames","createBlock","createInline","deleteBlock","deleteInline","greedyBoundary","greedyMatch","minMatchedSize","tokenizeByCharacter","trim","equalSequence","content","replace","match","name","tagNameLength","length","slice","tokenizeFn","tokenizeByWord","getMatchedBlockList","getOperationList","computeBestMatchedBlock","oldStart","oldEnd","newStart","newEnd","bestMatchedBlock","i","len","Math","min","ret","slideBestMatchedBlock","size","j","computeMatchedBlockList","matchBlock","push","dressUpBlockTag","type","token","dressUpDiffContent","tokens","tokensLength","result","textStartIndex","isMatchElement","includes","isMatchExplicitlyDisabled","isHtmlTag","dressUpText","newToken","dressupMatchEnabledHtmlTag","dressUpInlineTag","tagName","groups","matchType","text","join","n1","n2","start","end","e1","e2","commonLength","floor","unshift","walkIndexOld","walkIndexNew","matchedBlock","isOldStartIndexMatched","isNewStartIndexMatched","operationBase","Object","assign","maxIndexOld","maxIndexNew","tailOperationBase","isOldFinished","isNewFinished","addA","addB","maxSize","continuousSize","html","currentPos","tagRegex","exec","beforeTag","substring","index","char","remaining","getSideBySideContents","undefined","forEach","operation","deletedTokens","equalTokens","equalString","startTagMatch","console","error","String","getUnifiedContent","olds","news","createdTokens","createIndex","deleteIndex","deletedToken","matchTagResultD","some","item","splice","isTagInNewFind","tempCreateIndex","createdToken","matchTagResultC","isEnd"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/elements/HTMLDiff/diff/index.ts"],"sourcesContent":["// Taken and modified from https://github.com/Arman19941113/html-diff/blob/master/packages/html-diff/src/index.ts\n\ninterface MatchedBlock {\n newEnd: number\n newStart: number\n oldEnd: number\n oldStart: number\n size: number\n}\n\ninterface Operation {\n /**\n * Index of entry in tokenized token list\n */\n newEnd: number\n newStart: number\n oldEnd: number\n oldStart: number\n type: 'create' | 'delete' | 'equal' | 'replace'\n}\n\ntype BaseOpType = 'create' | 'delete'\n\ninterface HtmlDiffConfig {\n classNames: {\n createBlock: string\n createInline: string\n deleteBlock: string\n deleteInline: string\n }\n greedyBoundary: number\n greedyMatch: boolean\n minMatchedSize: number\n}\n\nexport interface HtmlDiffOptions {\n /**\n * The classNames for wrapper DOM.\n * Use this to configure your own styles without importing the built-in CSS file\n */\n classNames?: Partial<{\n createBlock?: string\n createInline?: string\n deleteBlock?: string\n deleteInline?: string\n }>\n /**\n * @defaultValue 1000\n */\n greedyBoundary?: number\n /**\n * When greedyMatch is enabled, if the length of the sub-tokens exceeds greedyBoundary,\n * we will use the matched sub-tokens that are sufficiently good, even if they are not optimal, to enhance performance.\n * @defaultValue true\n */\n greedyMatch?: boolean\n /**\n * Determine the minimum threshold for calculating common sub-tokens.\n * You may adjust it to a value larger than 2, but not lower, due to the potential inclusion of HTML tags in the count.\n * @defaultValue 2\n */\n minMatchedSize?: number\n /**\n * Whether to tokenize by character or by word.\n * @defaultValue false\n */\n tokenizeByCharacter?: boolean\n}\n\n// eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation\nconst htmlStartTagReg = /^<(?<name>[^\\s/>]+)[^>]*>$/\n// eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation\nconst htmlTagWithNameReg = /^<(?<isEnd>\\/)?(?<name>[^\\s>]+)[^>]*>$/\n\nconst htmlTagReg = /^<[^>]+>/\nconst htmlImgTagReg = /^<img[^>]*>$/\nconst htmlVideoTagReg = /^<video[^>]*>.*?<\\/video>$/ms\n\nexport class HtmlDiff {\n private readonly config: HtmlDiffConfig\n private leastCommonLength: number = Infinity\n private readonly matchedBlockList: MatchedBlock[] = []\n private readonly newTokens: string[] = []\n private readonly oldTokens: string[] = []\n private readonly operationList: Operation[] = []\n private sideBySideContents?: [string, string]\n private unifiedContent?: string\n\n constructor(\n oldHtml: string,\n newHtml: string,\n {\n classNames = {\n createBlock: 'html-diff-create-block-wrapper',\n createInline: 'html-diff-create-inline-wrapper',\n deleteBlock: 'html-diff-delete-block-wrapper',\n deleteInline: 'html-diff-delete-inline-wrapper',\n },\n greedyBoundary = 1000,\n greedyMatch = true,\n minMatchedSize = 2,\n tokenizeByCharacter = false,\n }: HtmlDiffOptions = {},\n ) {\n // init config\n this.config = {\n classNames: {\n createBlock: 'html-diff-create-block-wrapper',\n createInline: 'html-diff-create-inline-wrapper',\n deleteBlock: 'html-diff-delete-block-wrapper',\n deleteInline: 'html-diff-delete-inline-wrapper',\n ...classNames,\n },\n greedyBoundary,\n greedyMatch,\n minMatchedSize,\n }\n // white space is junk\n oldHtml = oldHtml.trim()\n newHtml = newHtml.trim()\n\n // no need to diff\n if (oldHtml === newHtml) {\n this.unifiedContent = oldHtml\n let equalSequence = 0\n // eslint-disable-next-line regexp/no-super-linear-backtracking, regexp/optimal-quantifier-concatenation\n const content = oldHtml.replace(/<([^\\s/>]+)[^>]*>/g, (match: string, name: string) => {\n const tagNameLength = name.length + 1\n return `${match.slice(0, tagNameLength)} data-seq=\"${++equalSequence}\"${match.slice(tagNameLength)}`\n })\n this.sideBySideContents = [content, content]\n return\n }\n\n // step1: split HTML to tokens(atomic tokens)\n const tokenizeFn = tokenizeByCharacter ? this.tokenizeByCharacter : this.tokenizeByWord\n this.oldTokens = tokenizeFn(oldHtml)\n this.newTokens = tokenizeFn(newHtml)\n // step2: find matched blocks\n this.matchedBlockList = this.getMatchedBlockList()\n\n // step3: generate operation list\n this.operationList = this.getOperationList()\n }\n\n // Find the longest matched block between tokens\n private computeBestMatchedBlock(\n oldStart: number,\n oldEnd: number,\n newStart: number,\n newEnd: number,\n ): MatchedBlock | null {\n let bestMatchedBlock = null\n for (let i = oldStart; i < oldEnd; i++) {\n const len = Math.min(oldEnd - i, newEnd - newStart)\n const ret = this.slideBestMatchedBlock(i, newStart, len)\n if (ret && (!bestMatchedBlock || ret.size > bestMatchedBlock.size)) {\n bestMatchedBlock = ret\n if (ret.size > this.leastCommonLength) {\n return bestMatchedBlock\n }\n }\n }\n for (let j = newStart; j < newEnd; j++) {\n const len = Math.min(oldEnd - oldStart, newEnd - j)\n const ret = this.slideBestMatchedBlock(oldStart, j, len)\n if (ret && (!bestMatchedBlock || ret.size > bestMatchedBlock.size)) {\n bestMatchedBlock = ret\n if (ret.size > this.leastCommonLength) {\n return bestMatchedBlock\n }\n }\n }\n return bestMatchedBlock\n }\n\n private computeMatchedBlockList(\n oldStart: number,\n oldEnd: number,\n newStart: number,\n newEnd: number,\n matchedBlockList: MatchedBlock[] = [],\n ): MatchedBlock[] {\n const matchBlock = this.computeBestMatchedBlock(oldStart, oldEnd, newStart, newEnd)\n\n if (!matchBlock) {\n return []\n }\n\n if (oldStart < matchBlock.oldStart && newStart < matchBlock.newStart) {\n this.computeMatchedBlockList(\n oldStart,\n matchBlock.oldStart,\n newStart,\n matchBlock.newStart,\n matchedBlockList,\n )\n }\n matchedBlockList.push(matchBlock)\n if (oldEnd > matchBlock.oldEnd && newEnd > matchBlock.newEnd) {\n this.computeMatchedBlockList(\n matchBlock.oldEnd,\n oldEnd,\n matchBlock.newEnd,\n newEnd,\n matchedBlockList,\n )\n }\n return matchedBlockList\n }\n\n private dressUpBlockTag(type: BaseOpType, token: string): string {\n if (type === 'create') {\n return `<div class=\"${this.config.classNames.createBlock}\">${token}</div>`\n }\n if (type === 'delete') {\n return `<div class=\"${this.config.classNames.deleteBlock}\">${token}</div>`\n }\n return ''\n }\n\n private dressUpDiffContent(type: BaseOpType, tokens: string[]): string {\n const tokensLength = tokens.length\n if (!tokensLength) {\n return ''\n }\n\n let result = ''\n let textStartIndex = 0\n let i = -1\n for (const token of tokens) {\n i++\n\n // If this is true, this HTML should be diffed as well - not just its children\n const isMatchElement = token.includes('data-enable-match=\"true\"')\n const isMatchExplicitlyDisabled = token.includes('data-enable-match=\"false\"')\n const isHtmlTag = !!token.match(htmlTagReg)?.length\n\n if (isMatchExplicitlyDisabled) {\n textStartIndex = i + 1\n result += token\n }\n // this token is html tag\n else if (!isMatchElement && isHtmlTag) {\n // handle text tokens before\n if (i > textStartIndex) {\n result += this.dressUpText(type, tokens.slice(textStartIndex, i))\n }\n // handle this tag\n textStartIndex = i + 1\n if (token.match(htmlVideoTagReg)) {\n result += this.dressUpBlockTag(type, token)\n } /* else if ([htmlImgTagReg].some((item) => token.match(item))) {\n result += this.dressUpInlineTag(type, token)\n }*/ else {\n result += token\n }\n } else if (isMatchElement && isHtmlTag) {\n // handle text tokens before\n if (i > textStartIndex) {\n result += this.dressUpText(type, tokens.slice(textStartIndex, i))\n }\n\n // handle this tag\n textStartIndex = i + 1\n // Add data-match-type to the tag that can be styled\n const newToken = this.dressupMatchEnabledHtmlTag(type, token)\n\n result += newToken\n }\n }\n if (textStartIndex < tokensLength) {\n result += this.dressUpText(type, tokens.slice(textStartIndex))\n }\n return result\n }\n\n private dressUpInlineTag(type: BaseOpType, token: string): string {\n if (type === 'create') {\n return `<span class=\"${this.config.classNames.createInline}\">${token}</span>`\n }\n if (type === 'delete') {\n return `<span class=\"${this.config.classNames.deleteInline}\">${token}</span>`\n }\n return ''\n }\n\n private dressupMatchEnabledHtmlTag(type: BaseOpType, token: string): string {\n // token is a single html tag, e.g. <a data-enable-match=\"true\" href=\"https://2\" rel=undefined target=undefined>\n // add data-match-type to the tag\n const tagName = token.match(htmlStartTagReg)?.groups?.name\n if (!tagName) {\n return token\n }\n const tagNameLength = tagName.length + 1\n const matchType = type === 'create' ? 'create' : 'delete'\n return `${token.slice(0, tagNameLength)} data-match-type=\"${matchType}\"${token.slice(\n tagNameLength,\n token.length,\n )}`\n }\n\n private dressUpText(type: BaseOpType, tokens: string[]): string {\n const text = tokens.join('')\n if (!text.trim()) {\n return ''\n }\n if (type === 'create') {\n return `<span data-match-type=\"create\">${text}</span>`\n }\n if (type === 'delete') {\n return `<span data-match-type=\"delete\">${text}</span>`\n }\n return ''\n }\n\n /**\n * Generates a list of token entries that are matched between the old and new HTML. This list will not\n * include token ranges that differ.\n */\n private getMatchedBlockList(): MatchedBlock[] {\n const n1 = this.oldTokens.length\n const n2 = this.newTokens.length\n\n // 1. sync from start\n let start: MatchedBlock | null = null\n let i = 0\n while (i < n1 && i < n2 && this.oldTokens[i] === this.newTokens[i]) {\n i++\n }\n if (i >= this.config.minMatchedSize) {\n start = {\n newEnd: i,\n newStart: 0,\n oldEnd: i,\n oldStart: 0,\n size: i,\n }\n }\n\n // 2. sync from end\n let end: MatchedBlock | null = null\n let e1 = n1 - 1\n let e2 = n2 - 1\n while (i <= e1 && i <= e2 && this.oldTokens[e1] === this.newTokens[e2]) {\n e1--\n e2--\n }\n const size = n1 - 1 - e1\n if (size >= this.config.minMatchedSize) {\n end = {\n newEnd: n2,\n newStart: e2 + 1,\n oldEnd: n1,\n oldStart: e1 + 1,\n size,\n }\n }\n\n // 3. handle rest\n const oldStart = start ? i : 0\n const oldEnd = end ? e1 + 1 : n1\n const newStart = start ? i : 0\n const newEnd = end ? e2 + 1 : n2\n // optimize for large tokens\n if (this.config.greedyMatch) {\n const commonLength = Math.min(oldEnd - oldStart, newEnd - newStart)\n if (commonLength > this.config.greedyBoundary) {\n this.leastCommonLength = Math.floor(commonLength / 3)\n }\n }\n const ret = this.computeMatchedBlockList(oldStart, oldEnd, newStart, newEnd)\n if (start) {\n ret.unshift(start)\n }\n if (end) {\n ret.push(end)\n }\n\n return ret\n }\n\n // Generate operation list by matchedBlockList\n private getOperationList(): Operation[] {\n const operationList: Operation[] = []\n let walkIndexOld = 0\n let walkIndexNew = 0\n for (const matchedBlock of this.matchedBlockList) {\n const isOldStartIndexMatched = walkIndexOld === matchedBlock.oldStart\n const isNewStartIndexMatched = walkIndexNew === matchedBlock.newStart\n const operationBase = {\n newEnd: matchedBlock.newStart,\n newStart: walkIndexNew,\n oldEnd: matchedBlock.oldStart,\n oldStart: walkIndexOld,\n }\n if (!isOldStartIndexMatched && !isNewStartIndexMatched) {\n operationList.push(Object.assign(operationBase, { type: 'replace' as const }))\n } else if (isOldStartIndexMatched && !isNewStartIndexMatched) {\n operationList.push(Object.assign(operationBase, { type: 'create' as const }))\n } else if (!isOldStartIndexMatched && isNewStartIndexMatched) {\n operationList.push(Object.assign(operationBase, { type: 'delete' as const }))\n }\n\n operationList.push({\n type: 'equal',\n newEnd: matchedBlock.newEnd,\n newStart: matchedBlock.newStart,\n oldEnd: matchedBlock.oldEnd,\n oldStart: matchedBlock.oldStart,\n })\n walkIndexOld = matchedBlock.oldEnd\n walkIndexNew = matchedBlock.newEnd\n }\n // handle the tail content\n const maxIndexOld = this.oldTokens.length\n const maxIndexNew = this.newTokens.length\n const tailOperationBase = {\n newEnd: maxIndexNew,\n newStart: walkIndexNew,\n oldEnd: maxIndexOld,\n oldStart: walkIndexOld,\n }\n const isOldFinished = walkIndexOld === maxIndexOld\n const isNewFinished = walkIndexNew === maxIndexNew\n if (!isOldFinished && !isNewFinished) {\n operationList.push(Object.assign(tailOperationBase, { type: 'replace' as const }))\n } else if (isOldFinished && !isNewFinished) {\n operationList.push(Object.assign(tailOperationBase, { type: 'create' as const }))\n } else if (!isOldFinished && isNewFinished) {\n operationList.push(Object.assign(tailOperationBase, { type: 'delete' as const }))\n }\n return operationList\n }\n\n private slideBestMatchedBlock(addA: number, addB: number, len: number): MatchedBlock | null {\n let maxSize = 0\n let bestMatchedBlock: MatchedBlock | null = null\n\n let continuousSize = 0\n for (let i = 0; i < len; i++) {\n if (this.oldTokens[addA + i] === this.newTokens[addB + i]) {\n continuousSize++\n } else {\n continuousSize = 0\n }\n if (continuousSize > maxSize) {\n maxSize = continuousSize\n bestMatchedBlock = {\n newEnd: addB + i + 1,\n newStart: addB + i - continuousSize + 1,\n oldEnd: addA + i + 1,\n oldStart: addA + i - continuousSize + 1,\n size: continuousSize,\n }\n }\n }\n\n return maxSize >= this.config.minMatchedSize ? bestMatchedBlock : null\n }\n\n /**\n * Convert HTML to tokens at character level, preserving HTML tags as complete tokens\n * @example\n * tokenize(\"<a> Hello World </a>\")\n * [\"<a>\", \" \", \"H\", \"e\", \"l\", \"l\", \"o\", \" \", \"W\", \"o\", \"r\", \"l\", \"d\", \" \", \"</a>\"]\n */\n private tokenizeByCharacter(html: string): string[] {\n // First, identify HTML tags and preserve them as complete tokens\n const tokens: string[] = []\n let currentPos = 0\n\n // Regular expression to match HTML tags (including picture and video tags with content)\n const tagRegex = /<picture[^>]*>.*?<\\/picture>|<video[^>]*>.*?<\\/video>|<[^>]+>/gs\n let match: null | RegExpExecArray\n\n while ((match = tagRegex.exec(html)) !== null) {\n // Add characters before the tag\n const beforeTag = html.substring(currentPos, match.index)\n if (beforeTag) {\n // Split non-tag content into individual characters\n for (const char of beforeTag) {\n tokens.push(char)\n }\n }\n\n // Add the complete tag as a single token\n tokens.push(match[0])\n currentPos = match.index + match[0].length\n }\n\n // Add any remaining characters after the last tag\n const remaining = html.substring(currentPos)\n for (const char of remaining) {\n tokens.push(char)\n }\n\n return tokens\n }\n\n /**\n * convert HTML to tokens\n * @example\n * tokenize(\"<a> Hello World </a>\")\n * [\"<a>\",\" \", \"Hello\", \" \", \"World\", \" \", \"</a>\"]\n */\n private tokenizeByWord(html: string): string[] {\n // atomic token: html tag、continuous numbers or letters、blank spaces、other symbol\n return (\n html.match(\n /<picture[^>]*>.*?<\\/picture>|<video[^>]*>.*?<\\/video>|<[^>]+>|\\w+\\b|\\s+|[^<>\\w]/gs,\n ) || []\n )\n }\n\n public getSideBySideContents(): string[] {\n if (this.sideBySideContents !== undefined) {\n return this.sideBySideContents\n }\n\n let oldHtml = ''\n let newHtml = ''\n let equalSequence = 0\n this.operationList.forEach((operation) => {\n switch (operation.type) {\n case 'create': {\n newHtml += this.dressUpDiffContent(\n 'create',\n this.newTokens.slice(operation.newStart, operation.newEnd),\n )\n break\n }\n\n case 'delete': {\n const deletedTokens = this.oldTokens.slice(operation.oldStart, operation.oldEnd)\n oldHtml += this.dressUpDiffContent('delete', deletedTokens)\n break\n }\n case 'equal': {\n const equalTokens = this.newTokens.slice(operation.newStart, operation.newEnd)\n let equalString = ''\n for (const token of equalTokens) {\n // find start tags and add data-seq to enable sync scroll\n const startTagMatch = token.match(htmlStartTagReg)\n if (startTagMatch) {\n equalSequence += 1\n const tagNameLength = (startTagMatch?.groups?.name?.length ?? 0) + 1\n equalString += `${token.slice(0, tagNameLength)} data-seq=\"${equalSequence}\"${token.slice(tagNameLength)}`\n } else {\n equalString += token\n }\n }\n oldHtml += equalString\n newHtml += equalString\n break\n }\n\n case 'replace': {\n oldHtml += this.dressUpDiffContent(\n 'delete',\n this.oldTokens.slice(operation.oldStart, operation.oldEnd),\n )\n newHtml += this.dressUpDiffContent(\n 'create',\n this.newTokens.slice(operation.newStart, operation.newEnd),\n )\n break\n }\n\n default: {\n console.error('Richtext diff error - invalid operation: ' + String(operation.type))\n }\n }\n })\n\n const result: [string, string] = [oldHtml, newHtml]\n this.sideBySideContents = result\n return result\n }\n\n public getUnifiedContent(): string {\n if (this.unifiedContent !== undefined) {\n return this.unifiedContent\n }\n\n let result = ''\n this.operationList.forEach((operation) => {\n switch (operation.type) {\n case 'create': {\n result += this.dressUpDiffContent(\n 'create',\n this.newTokens.slice(operation.newStart, operation.newEnd),\n )\n break\n }\n\n case 'delete': {\n result += this.dressUpDiffContent(\n 'delete',\n this.oldTokens.slice(operation.oldStart, operation.oldEnd),\n )\n break\n }\n\n case 'equal': {\n for (const token of this.newTokens.slice(operation.newStart, operation.newEnd)) {\n result += token\n }\n break\n }\n\n case 'replace': {\n // handle specially tag replace\n const olds = this.oldTokens.slice(operation.oldStart, operation.oldEnd)\n const news = this.newTokens.slice(operation.newStart, operation.newEnd)\n if (\n olds.length === 1 &&\n news.length === 1 &&\n olds[0]?.match(htmlTagReg) &&\n news[0]?.match(htmlTagReg)\n ) {\n result += news[0]\n break\n }\n\n const deletedTokens: string[] = []\n const createdTokens: string[] = []\n let createIndex = operation.newStart\n for (\n let deleteIndex = operation.oldStart;\n deleteIndex < operation.oldEnd;\n deleteIndex++\n ) {\n const deletedToken = this.oldTokens[deleteIndex]\n\n if (!deletedToken) {\n continue\n }\n\n const matchTagResultD = deletedToken?.match(htmlTagWithNameReg)\n if (matchTagResultD) {\n // handle replaced tag token\n\n // skip special tag\n if ([htmlImgTagReg, htmlVideoTagReg].some((item) => deletedToken?.match(item))) {\n deletedTokens.push(deletedToken)\n continue\n }\n\n // handle normal tag\n result += this.dressUpDiffContent('delete', deletedTokens)\n deletedTokens.splice(0)\n let isTagInNewFind = false\n for (\n let tempCreateIndex = createIndex;\n tempCreateIndex < operation.newEnd;\n tempCreateIndex++\n ) {\n const createdToken = this.newTokens[tempCreateIndex]\n if (!createdToken) {\n continue\n }\n const matchTagResultC = createdToken?.match(htmlTagWithNameReg)\n if (\n matchTagResultC &&\n matchTagResultC.groups?.name === matchTagResultD.groups?.name &&\n matchTagResultC.groups?.isEnd === matchTagResultD.groups?.isEnd\n ) {\n // find first matched tag, but not maybe the expected tag(to optimize)\n isTagInNewFind = true\n result += this.dressUpDiffContent('create', createdTokens)\n result += createdToken\n createdTokens.splice(0)\n createIndex = tempCreateIndex + 1\n break\n } else {\n createdTokens.push(createdToken)\n }\n }\n if (!isTagInNewFind) {\n result += deletedToken\n createdTokens.splice(0)\n }\n } else {\n // token is not a tag\n deletedTokens.push(deletedToken)\n }\n }\n if (createIndex < operation.newEnd) {\n createdTokens.push(...this.newTokens.slice(createIndex, operation.newEnd))\n }\n result += this.dressUpDiffContent('delete', deletedTokens)\n result += this.dressUpDiffContent('create', createdTokens)\n break\n }\n\n default: {\n console.error('Richtext diff error - invalid operation: ' + String(operation.type))\n }\n }\n })\n this.unifiedContent = result\n return result\n }\n}\n"],"names":["htmlStartTagReg","htmlTagWithNameReg","htmlTagReg","htmlImgTagReg","htmlVideoTagReg","HtmlDiff","config","leastCommonLength","Infinity","matchedBlockList","newTokens","oldTokens","operationList","sideBySideContents","unifiedContent","oldHtml","newHtml","classNames","createBlock","createInline","deleteBlock","deleteInline","greedyBoundary","greedyMatch","minMatchedSize","tokenizeByCharacter","trim","equalSequence","content","replace","match","name","tagNameLength","length","slice","tokenizeFn","tokenizeByWord","getMatchedBlockList","getOperationList","computeBestMatchedBlock","oldStart","oldEnd","newStart","newEnd","bestMatchedBlock","i","len","Math","min","ret","slideBestMatchedBlock","size","j","computeMatchedBlockList","matchBlock","push","dressUpBlockTag","type","token","dressUpDiffContent","tokens","tokensLength","result","textStartIndex","isMatchElement","includes","isMatchExplicitlyDisabled","isHtmlTag","dressUpText","newToken","dressupMatchEnabledHtmlTag","dressUpInlineTag","tagName","groups","matchType","text","join","n1","n2","start","end","e1","e2","commonLength","floor","unshift","walkIndexOld","walkIndexNew","matchedBlock","isOldStartIndexMatched","isNewStartIndexMatched","operationBase","Object","assign","maxIndexOld","maxIndexNew","tailOperationBase","isOldFinished","isNewFinished","addA","addB","maxSize","continuousSize","html","currentPos","tagRegex","exec","beforeTag","substring","index","char","remaining","getSideBySideContents","undefined","forEach","operation","deletedTokens","equalTokens","equalString","startTagMatch","console","error","String","getUnifiedContent","olds","news","createdTokens","createIndex","deleteIndex","deletedToken","matchTagResultD","some","item","splice","isTagInNewFind","tempCreateIndex","createdToken","matchTagResultC","isEnd"],"mappings":"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"}
@@ -8,7 +8,7 @@ import React from 'react';
8
8
  * rendering the original component.
9
9
  *
10
10
  * @example
11
- * const PredefinedComponent = getMergedPropsComponent({
11
+ * const PredefinedComponent = withMergedProps({
12
12
  * Component: OriginalComponent,
13
13
  * toMergeIntoProps: { someExtraValue: 5 }
14
14
  * });
@@ -10,7 +10,7 @@ import React from 'react';
10
10
  * rendering the original component.
11
11
  *
12
12
  * @example
13
- * const PredefinedComponent = getMergedPropsComponent({
13
+ * const PredefinedComponent = withMergedProps({
14
14
  * Component: OriginalComponent,
15
15
  * toMergeIntoProps: { someExtraValue: 5 }
16
16
  * });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/withMergedProps/index.tsx"],"sourcesContent":["import { isReactServerComponentOrFunction, serverProps } from 'payload/shared'\nimport React from 'react'\n\n/**\n * Creates a higher-order component (HOC) that merges predefined properties (`toMergeIntoProps`)\n * with any properties passed to the resulting component.\n *\n * Use this when you want to pre-specify some props for a component, while also allowing users to\n * pass in their own props. The HOC ensures the passed props and predefined props are combined before\n * rendering the original component.\n *\n * @example\n * const PredefinedComponent = getMergedPropsComponent({\n * Component: OriginalComponent,\n * toMergeIntoProps: { someExtraValue: 5 }\n * });\n * // Using <PredefinedComponent customProp=\"value\" /> will result in\n * // <OriginalComponent customProp=\"value\" someExtraValue={5} />\n *\n * @returns A higher-order component with combined properties.\n *\n * @param Component - The original component to wrap.\n * @param sanitizeServerOnlyProps - If true, server-only props will be removed from the merged props. @default true if the component is not a server component, false otherwise.\n * @param toMergeIntoProps - The properties to merge into the passed props.\n */\nexport function withMergedProps<ToMergeIntoProps, CompleteReturnProps>({\n Component,\n sanitizeServerOnlyProps,\n toMergeIntoProps,\n}: {\n Component: React.FC<CompleteReturnProps>\n sanitizeServerOnlyProps?: boolean\n toMergeIntoProps: ToMergeIntoProps\n}): React.FC<CompleteReturnProps> {\n if (sanitizeServerOnlyProps === undefined) {\n sanitizeServerOnlyProps = !isReactServerComponentOrFunction(Component)\n }\n // A wrapper around the args.Component to inject the args.toMergeArgs as props, which are merged with the passed props\n const MergedPropsComponent: React.FC<CompleteReturnProps> = (passedProps) => {\n const mergedProps = simpleMergeProps(passedProps, toMergeIntoProps) as CompleteReturnProps\n\n if (sanitizeServerOnlyProps) {\n serverProps.forEach((prop) => {\n delete mergedProps[prop]\n })\n }\n\n return <Component {...mergedProps} />\n }\n\n return MergedPropsComponent\n}\n\nfunction simpleMergeProps(props, toMerge) {\n return { ...props, ...toMerge }\n}\n"],"names":["isReactServerComponentOrFunction","serverProps","React","withMergedProps","Component","sanitizeServerOnlyProps","toMergeIntoProps","undefined","MergedPropsComponent","passedProps","mergedProps","simpleMergeProps","forEach","prop","props","toMerge"],"mappings":";AAAA,SAASA,gCAAgC,EAAEC,WAAW,QAAQ,iBAAgB;AAC9E,OAAOC,WAAW,QAAO;AAEzB;;;;;;;;;;;;;;;;;;;;;CAqBC,GACD,OAAO,SAASC,gBAAuD,EACrEC,SAAS,EACTC,uBAAuB,EACvBC,gBAAgB,EAKjB;IACC,IAAID,4BAA4BE,WAAW;QACzCF,0BAA0B,CAACL,iCAAiCI;IAC9D;IACA,sHAAsH;IACtH,MAAMI,uBAAsD,CAACC;QAC3D,MAAMC,cAAcC,iBAAiBF,aAAaH;QAElD,IAAID,yBAAyB;YAC3BJ,YAAYW,OAAO,CAAC,CAACC;gBACnB,OAAOH,WAAW,CAACG,KAAK;YAC1B;QACF;QAEA,qBAAO,QAACT;YAAW,GAAGM,WAAW;;;;;;IACnC;IAEA,OAAOF;AACT;AAEA,SAASG,iBAAiBG,KAAK,EAAEC,OAAO;IACtC,OAAO;QAAE,GAAGD,KAAK;QAAE,GAAGC,OAAO;IAAC;AAChC"}
1
+ {"version":3,"sources":["../../../src/elements/withMergedProps/index.tsx"],"sourcesContent":["import { isReactServerComponentOrFunction, serverProps } from 'payload/shared'\nimport React from 'react'\n\n/**\n * Creates a higher-order component (HOC) that merges predefined properties (`toMergeIntoProps`)\n * with any properties passed to the resulting component.\n *\n * Use this when you want to pre-specify some props for a component, while also allowing users to\n * pass in their own props. The HOC ensures the passed props and predefined props are combined before\n * rendering the original component.\n *\n * @example\n * const PredefinedComponent = withMergedProps({\n * Component: OriginalComponent,\n * toMergeIntoProps: { someExtraValue: 5 }\n * });\n * // Using <PredefinedComponent customProp=\"value\" /> will result in\n * // <OriginalComponent customProp=\"value\" someExtraValue={5} />\n *\n * @returns A higher-order component with combined properties.\n *\n * @param Component - The original component to wrap.\n * @param sanitizeServerOnlyProps - If true, server-only props will be removed from the merged props. @default true if the component is not a server component, false otherwise.\n * @param toMergeIntoProps - The properties to merge into the passed props.\n */\nexport function withMergedProps<ToMergeIntoProps, CompleteReturnProps>({\n Component,\n sanitizeServerOnlyProps,\n toMergeIntoProps,\n}: {\n Component: React.FC<CompleteReturnProps>\n sanitizeServerOnlyProps?: boolean\n toMergeIntoProps: ToMergeIntoProps\n}): React.FC<CompleteReturnProps> {\n if (sanitizeServerOnlyProps === undefined) {\n sanitizeServerOnlyProps = !isReactServerComponentOrFunction(Component)\n }\n // A wrapper around the args.Component to inject the args.toMergeArgs as props, which are merged with the passed props\n const MergedPropsComponent: React.FC<CompleteReturnProps> = (passedProps) => {\n const mergedProps = simpleMergeProps(passedProps, toMergeIntoProps) as CompleteReturnProps\n\n if (sanitizeServerOnlyProps) {\n serverProps.forEach((prop) => {\n delete mergedProps[prop]\n })\n }\n\n return <Component {...mergedProps} />\n }\n\n return MergedPropsComponent\n}\n\nfunction simpleMergeProps(props, toMerge) {\n return { ...props, ...toMerge }\n}\n"],"names":["isReactServerComponentOrFunction","serverProps","React","withMergedProps","Component","sanitizeServerOnlyProps","toMergeIntoProps","undefined","MergedPropsComponent","passedProps","mergedProps","simpleMergeProps","forEach","prop","props","toMerge"],"mappings":";AAAA,SAASA,gCAAgC,EAAEC,WAAW,QAAQ,iBAAgB;AAC9E,OAAOC,WAAW,QAAO;AAEzB;;;;;;;;;;;;;;;;;;;;;CAqBC,GACD,OAAO,SAASC,gBAAuD,EACrEC,SAAS,EACTC,uBAAuB,EACvBC,gBAAgB,EAKjB;IACC,IAAID,4BAA4BE,WAAW;QACzCF,0BAA0B,CAACL,iCAAiCI;IAC9D;IACA,sHAAsH;IACtH,MAAMI,uBAAsD,CAACC;QAC3D,MAAMC,cAAcC,iBAAiBF,aAAaH;QAElD,IAAID,yBAAyB;YAC3BJ,YAAYW,OAAO,CAAC,CAACC;gBACnB,OAAOH,WAAW,CAACG,KAAK;YAC1B;QACF;QAEA,qBAAO,QAACT;YAAW,GAAGM,WAAW;;;;;;IACnC;IAEA,OAAOF;AACT;AAEA,SAASG,iBAAiBG,KAAK,EAAEC,OAAO;IACtC,OAAO;QAAE,GAAGD,KAAK;QAAE,GAAGC,OAAO;IAAC;AAChC"}
@@ -140,7 +140,9 @@ export { BlockSelector } from '../../fields/Blocks/BlockSelector/index.js';
140
140
  export { SectionTitle } from '../../fields/Blocks/SectionTitle/index.js';
141
141
  export { HiddenField } from '../../fields/Hidden/index.js';
142
142
  export { ArrayField } from '../../fields/Array/index.js';
143
+ export { ArrayRow } from '../../fields/Array/ArrayRow.js';
143
144
  export { BlocksField } from '../../fields/Blocks/index.js';
145
+ export { BlockRow } from '../../fields/Blocks/BlockRow.js';
144
146
  export { CheckboxField, CheckboxInput } from '../../fields/Checkbox/index.js';
145
147
  export { CodeField } from '../../fields/Code/index.js';
146
148
  export { CodeEditor as CodeEditorLazy } from '../../elements/CodeEditor/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exports/client/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAA;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AAGvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAA;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAA;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,uDAAuD,CAAA;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAA;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAA;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wDAAwD,CAAA;AAC/F,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAA;AAGnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAC7E,YAAY,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAC7F,OAAO,EACL,iBAAiB,EACjB,YAAY,GACb,MAAM,yDAAyD,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,uDAAuD,CAAA;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAA;AACrF,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,uBAAuB,GACxB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAA;AACvF,YAAY,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AACnG,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AACxE,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAA;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAA;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,4BAA4B,EAC5B,aAAa,GACd,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,EAAE,oBAAoB,IAAI,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AAErE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,+CAA+C,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,CAAA;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAC3D,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AAGzE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yDAAyD,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,oDAAoD,CAAA;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,oDAAoD,CAAA;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAA;AAE9E,OAAO,EAAE,KAAK,MAAM,IAAI,iBAAiB,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACnG,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,qCAAqC,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAC5D,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,oDAAoD,CAAA;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAA;AACrD,YAAY;AACV;;;;GAIG;AACH,MAAM,GACP,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9B,OAAO,EAAE,KAAK,EAAE,CAAA;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,oDAAoD,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAA;AAGxE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACjF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yCAAyC,CAAA;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AACvE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC7E,YAAY,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AACvE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAI7D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,OAAO,EACP,2BAA2B,EAC3B,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAChE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEhE,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAA;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AACtE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAG5E,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AAGnD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAClF,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,8CAA8C,CAAA;AAC/E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iDAAiD,CAAA;AACxF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iDAAiD,CAAA;AAGxF,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAC9E,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AACrE,YAAY,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAClE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AACpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAA;AAE9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAA;AAClF,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAC/F,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AACnG,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EACL,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,2CAA2C,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EACL,UAAU,IAAI,kBAAkB,EAChC,aAAa,GACd,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACvF,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAC7F,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AACnG,YAAY,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,EAAE,YAAY,EAAE,KAAK,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAClG,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAE1E,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,qDAAqD,CAAA;AAC3F,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uDAAuD,CAAA;AACjG,OAAO,EAAE,kBAAkB,IAAI,qBAAqB,EAAE,MAAM,6DAA6D,CAAA;AACzH,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,uDAAuD,CAAA;AACvG,OAAO,EAAE,UAAU,IAAI,aAAa,EAAE,MAAM,qDAAqD,CAAA;AACjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAA;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAA;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAA;AAE/E,YAAY;AACV;;;;GAIG;AACH,aAAa,GACd,MAAM,SAAS,CAAA;AAEhB,YAAY;AACV;;;;GAIG;AACH,mBAAmB,GACpB,MAAM,SAAS,CAAA;AAEhB,YAAY;AACV;;;;GAIG;AACH,mBAAmB,IAAI,wBAAwB,GAChD,MAAM,SAAS,CAAA;AAEhB,YAAY;AACV;;;;GAIG;AACH,mBAAmB,IAAI,wBAAwB,GAChD,MAAM,SAAS,CAAA;AAEhB,YAAY;AACV;;;;GAIG;AACH,eAAe,GAChB,MAAM,SAAS,CAAA;AAEhB,YAAY,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AAE3E,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAE7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAA;AACnF,YAAY,EACV,uBAAuB,EACvB,6BAA6B,GAC9B,MAAM,4EAA4E,CAAA;AAEnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exports/client/index.ts"],"names":[],"mappings":"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"}
@@ -139,7 +139,9 @@ export { SectionTitle } from '../../fields/Blocks/SectionTitle/index.js';
139
139
  // fields
140
140
  export { HiddenField } from '../../fields/Hidden/index.js';
141
141
  export { ArrayField } from '../../fields/Array/index.js';
142
+ export { ArrayRow } from '../../fields/Array/ArrayRow.js';
142
143
  export { BlocksField } from '../../fields/Blocks/index.js';
144
+ export { BlockRow } from '../../fields/Blocks/BlockRow.js';
143
145
  export { CheckboxField, CheckboxInput } from '../../fields/Checkbox/index.js';
144
146
  export { CodeField } from '../../fields/Code/index.js';
145
147
  export { CodeEditor as CodeEditorLazy } from '../../elements/CodeEditor/index.js';