@mikezimm/fps-core-v7 1.0.87 → 1.0.89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/PackageVersion.js +3 -3
- package/lib/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.d.ts +3 -1
- package/lib/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.d.ts.map +1 -1
- package/lib/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.js.map +1 -1
- package/lib/components/molecules/SourcePage/ISourceRowRender.d.ts +1 -0
- package/lib/components/molecules/SourcePage/ISourceRowRender.d.ts.map +1 -1
- package/lib/logic/Strings/drillParse/getLetterBuckets.js.map +1 -1
- package/lib/logic/Strings/parseRichTextFieldAsJsonObject.d.ts +20 -0
- package/lib/logic/Strings/parseRichTextFieldAsJsonObject.d.ts.map +1 -0
- package/lib/logic/Strings/parseRichTextFieldAsJsonObject.js +43 -0
- package/lib/logic/Strings/parseRichTextFieldAsJsonObject.js.map +1 -0
- package/package.json +1 -1
package/lib/PackageVersion.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export const PackageNameFpsCv7 = 'fps-core-v7';
|
|
2
|
-
export const PackageVersionFpsCv7 = '1.0.
|
|
3
|
-
export const PackageVersionLabelFpsCv7 = 'fps-core-v7@1.0.
|
|
4
|
-
export const PackageVersionTimeFpsCv7 = '1/
|
|
2
|
+
export const PackageVersionFpsCv7 = '1.0.89';
|
|
3
|
+
export const PackageVersionLabelFpsCv7 = 'fps-core-v7@1.0.89';
|
|
4
|
+
export const PackageVersionTimeFpsCv7 = '1/17/2025, 2:04:21 AM EST';
|
|
5
5
|
//# sourceMappingURL=PackageVersion.js.map
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* 2024-09-06: Migrated from fps-library-v2\src\banner\components\EasyPages\Analytics\components\...
|
|
3
3
|
*/
|
|
4
4
|
import { IFPSGeneric_JSX_Element } from "../../../../types/react/IFPSJSX_Element";
|
|
5
|
+
import { IMinReactMouseEvent } from "../../../../types/react/IReactEvents";
|
|
5
6
|
import { ISourceRowRender } from "../../../molecules/SourcePage/ISourceRowRender";
|
|
6
7
|
import { IEasyPagesSourceProps } from "../../easy-pages/interfaces/IEasyPagesPageProps";
|
|
7
8
|
import { IZFullAnalytics } from "./analytics";
|
|
@@ -22,13 +23,14 @@ export interface IEasyAnalyticsProps {
|
|
|
22
23
|
* 2025-01-16: Added for custom row render.
|
|
23
24
|
* You need to pass in an array of strings or elements for EVERY renderItemsRow
|
|
24
25
|
*/
|
|
25
|
-
customItemsHeaders
|
|
26
|
+
customItemsHeaders?: (string | IFPSGeneric_JSX_Element)[][];
|
|
26
27
|
/**
|
|
27
28
|
* 2025-01-16: Currently only need these 3 for SP-API-Tester, but have the next 3 on hand and ready to go if needed
|
|
28
29
|
*/
|
|
29
30
|
renderCustomElement1?: (item: IZFullAnalytics, option: string, xFilter: string) => IFPSGeneric_JSX_Element;
|
|
30
31
|
renderCustomElement1B?: (item: IZFullAnalytics, option: string, xFilter: string) => IFPSGeneric_JSX_Element;
|
|
31
32
|
renderCustomElement1C?: (item: IZFullAnalytics, option: string, xFilter: string) => IFPSGeneric_JSX_Element;
|
|
33
|
+
sendItemToParent?: (command: string, Id: number, type: string, item: IZFullAnalytics, event?: IMinReactMouseEvent<HTMLElement>) => void;
|
|
32
34
|
}
|
|
33
35
|
export interface IEasyAnalyticsHookProps {
|
|
34
36
|
easyAnalyticsProps: IEasyAnalyticsProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IEasyAnalyticsHookProps.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAElC,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IAEf,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,uBAAuB,CAAC;IACtE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,uBAAuB,CAAC;IAErE;;;OAGG;IACH,kBAAkB,EAAE,CAAE,MAAM,GAAG,uBAAuB,CAAE,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"IEasyAnalyticsHookProps.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAElC,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IAEf,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,uBAAuB,CAAC;IACtE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,uBAAuB,CAAC;IAErE;;;OAGG;IACH,kBAAkB,CAAC,EAAE,CAAE,MAAM,GAAG,uBAAuB,CAAE,EAAE,EAAE,CAAC;IAE9D;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAM,uBAAuB,CAAC;IAC7G,qBAAqB,CAAC,EAAE,CAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAM,uBAAuB,CAAC;IAC9G,qBAAqB,CAAC,EAAE,CAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAM,uBAAuB,CAAC;IAM5G,gBAAgB,CAAC,EAAE,CAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;CAC7I;AAED,MAAM,WAAW,uBAAuB;IACtC,kBAAkB,EAAE,mBAAmB,CAAC;IACxC,oBAAoB,EAAE,qBAAqB,CAAC;CAE7C;AAED,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,MAAM,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC;AAC5G,eAAO,MAAM,aAAa,EAAE,aAAa,EAAgF,CAAC;AAE1H,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,YAAY,CAAC;AAC5E,eAAO,MAAM,UAAU,EAAE,WAAW,EAAqD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IEasyAnalyticsHookProps.js","sourceRoot":"","sources":["../../../../../src/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.tsx"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"IEasyAnalyticsHookProps.js","sourceRoot":"","sources":["../../../../../src/components/atoms/easy-analytics/interfaces/IEasyAnalyticsHookProps.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAsDH,MAAM,CAAC,MAAM,aAAa,GAAoB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;AAG1H,MAAM,CAAC,MAAM,UAAU,GAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC"}
|
|
@@ -25,6 +25,7 @@ export interface ISourceRowRender {
|
|
|
25
25
|
onTextFilter: (value: string, event: IMinReactMouseEvent<HTMLElement>) => void;
|
|
26
26
|
onOpenPanel?: (Id: number, type: string, item: IAnySourceItem, event: IMinReactMouseEvent<HTMLElement>) => void;
|
|
27
27
|
onParentCall?: (command: string, Id: number, type: string, item: IAnySourceItem, retainViewXdidUpdates?: number, event?: IMinReactMouseEvent<HTMLElement>) => void;
|
|
28
|
+
sendItemToParent?: (command: string, Id: number, type: string, item: IAnySourceItem, event?: IMinReactMouseEvent<HTMLElement>) => void;
|
|
28
29
|
details: boolean;
|
|
29
30
|
showItemType: boolean;
|
|
30
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ISourceRowRender.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SourcePage/ISourceRowRender.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D;;;;GAIG;AAIH,MAAM,WAAW,gBAAgB;IAE/B,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IAEnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG5B,OAAO,EAAE,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAE7G,YAAY,EAAE,CAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAE/F,YAAY,EAAE,CAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAO,IAAI,CAAC;IAGlF,WAAW,CAAC,EAAE,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAMlH,YAAY,CAAC,EAAG,CAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ISourceRowRender.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SourcePage/ISourceRowRender.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D;;;;GAIG;AAIH,MAAM,WAAW,gBAAgB;IAE/B,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IAEnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG5B,OAAO,EAAE,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAE7G,YAAY,EAAE,CAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAE/F,YAAY,EAAE,CAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAO,IAAI,CAAC;IAGlF,WAAW,CAAC,EAAE,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAMlH,YAAY,CAAC,EAAG,CAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAGtK,gBAAgB,CAAC,EAAE,CAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,KAAM,IAAI,CAAC;IAEzI,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;CACvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLetterBuckets.js","sourceRoot":"","sources":["../../../../src/logic/Strings/drillParse/getLetterBuckets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getLetterBuckets.js","sourceRoot":"","sources":["../../../../src/logic/Strings/drillParse/getLetterBuckets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,CAAC,MAAM,aAAa,GAAa,CAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AACvF,MAAM,CAAC,MAAM,kBAAkB,GAAa,CAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAEjF;;;;;;GAMG;AAEH,MAAM,UAAU,gBAAgB,CAAE,GAAW,EAAE,WAA2D;IAExG,IAAI,MAAM,GAAW,SAAS,CAAC;IAC/B,0CAA0C;IAC1C,MAAM,MAAM,GAAW,qBAAqB,CAAE,WAAW,CAAQ,CAAC;IAElE,IAAK,CAAC,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE;QAC3B,OAAO,MAAM,CAAC;KAEf;SAAM;QAEL,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAK,WAAW,KAAK,sBAAsB,CAAC,WAAW,EAAE,EAAG;YAC1D,MAAM,GAAG,YAAY,CAAE,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;SAExD;aAAM,IAAK,WAAW,KAAK,qBAAqB,CAAC,WAAW,EAAE,EAAG;YAChE,MAAM,GAAG,WAAW,CAAE,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;SACvD;QAED,MAAM,UAAU,GAAG,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,UAAU,CAAC,GAAG,CAAE,CAAE,KAAK,EAAE,KAAK,EAAG,EAAE;YACjC,IAAK,KAAK,CAAC,OAAO,CAAE,MAAM,CAAC,WAAW,EAAE,CAAE,GAAG,CAAC,CAAC,EAAG;gBAAE,MAAM,GAAG,SAAS,CAAE,KAAK,CAAE,CAAE;aAAE;QACrF,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;KACf;AAEH,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 2025-01-17: Migrated from SP-API-Tester
|
|
3
|
+
* The purpose of this function is to
|
|
4
|
+
* 1. Take a rich text field from a list item
|
|
5
|
+
* 2. Strip any Div tags from the string
|
|
6
|
+
* if onlyStripOutterTags === true, then it only strips the outter HTML tags from the RichText field
|
|
7
|
+
* if you set this to false, it may also strip any inner tags from things like analytics with rich text tags in the json
|
|
8
|
+
* onlyStripOutterTags has only been tested in it's default state for SP-API-Tester
|
|
9
|
+
* For example... zzzRichText1: '<div class="ExternalClassA265D727B17142199E957A374E3FD155">{html: "<span>Hello</span>" }'
|
|
10
|
+
* onlyStripOutterTags === true should return: {html: "<span>Hello</span>" }
|
|
11
|
+
* onlyStripOutterTags !== true should return: {html: "Hello" }
|
|
12
|
+
* 3. Decode any Html Entities
|
|
13
|
+
* 4. Try to convert the remaining string into a JSON object
|
|
14
|
+
*
|
|
15
|
+
* @param richTextValue
|
|
16
|
+
* @param onlyStripOutterTags
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export declare function parseRichTextFieldAsJsonObject(richTextValue: string, onlyStripOutterTags?: boolean): any;
|
|
20
|
+
//# sourceMappingURL=parseRichTextFieldAsJsonObject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseRichTextFieldAsJsonObject.d.ts","sourceRoot":"","sources":["../../../src/logic/Strings/parseRichTextFieldAsJsonObject.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,8BAA8B,CAAC,aAAa,EAAE,MAAM,EAAE,mBAAmB,GAAE,OAAc,GAAI,GAAG,CAiB/G"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 2025-01-17: Migrated from SP-API-Tester
|
|
3
|
+
* The purpose of this function is to
|
|
4
|
+
* 1. Take a rich text field from a list item
|
|
5
|
+
* 2. Strip any Div tags from the string
|
|
6
|
+
* if onlyStripOutterTags === true, then it only strips the outter HTML tags from the RichText field
|
|
7
|
+
* if you set this to false, it may also strip any inner tags from things like analytics with rich text tags in the json
|
|
8
|
+
* onlyStripOutterTags has only been tested in it's default state for SP-API-Tester
|
|
9
|
+
* For example... zzzRichText1: '<div class="ExternalClassA265D727B17142199E957A374E3FD155">{html: "<span>Hello</span>" }'
|
|
10
|
+
* onlyStripOutterTags === true should return: {html: "<span>Hello</span>" }
|
|
11
|
+
* onlyStripOutterTags !== true should return: {html: "Hello" }
|
|
12
|
+
* 3. Decode any Html Entities
|
|
13
|
+
* 4. Try to convert the remaining string into a JSON object
|
|
14
|
+
*
|
|
15
|
+
* @param richTextValue
|
|
16
|
+
* @param onlyStripOutterTags
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export function parseRichTextFieldAsJsonObject(richTextValue, onlyStripOutterTags = true) {
|
|
20
|
+
// Step 1: Strip HTML tags
|
|
21
|
+
if (!richTextValue)
|
|
22
|
+
return null;
|
|
23
|
+
const strippedValue = onlyStripOutterTags === true ? richTextValue.replace(/^<[^>]+>|<[^>]+>$/g, '') : richTextValue.replace(/<\/?[^>]+(>|$)/g, '');
|
|
24
|
+
// Step 2: Decode HTML entities
|
|
25
|
+
const decodedValue = decodeHtmlEntities(strippedValue);
|
|
26
|
+
// Step 3: Parse JSON
|
|
27
|
+
try {
|
|
28
|
+
const jsonObject = JSON.parse(decodedValue);
|
|
29
|
+
return jsonObject;
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
console.error('Failed to parse JSON:', error);
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function decodeHtmlEntities(htmlString) {
|
|
37
|
+
// Create a temporary DOM element to decode HTML entities
|
|
38
|
+
const textarea = document.createElement('textarea');
|
|
39
|
+
textarea.innerHTML = htmlString;
|
|
40
|
+
const value = `${textarea.value}`;
|
|
41
|
+
return value;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=parseRichTextFieldAsJsonObject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseRichTextFieldAsJsonObject.js","sourceRoot":"","sources":["../../../src/logic/Strings/parseRichTextFieldAsJsonObject.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,8BAA8B,CAAC,aAAqB,EAAE,sBAA+B,IAAI;IACvG,0BAA0B;IAC1B,IAAK,CAAC,aAAa;QAAG,OAAO,IAAI,CAAC;IAElC,MAAM,aAAa,GAAG,mBAAmB,KAAK,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IAEpJ,+BAA+B;IAC/B,MAAM,YAAY,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAEvD,qBAAqB;IACrB,IAAI;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC;KACnB;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAkB;IAC5C,yDAAyD;IACzD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACpD,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;IAChC,MAAM,KAAK,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;IAElC,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/package.json
CHANGED