@plasmicpkgs/plasmic-yotpo 0.0.13 → 0.0.15
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/dist/plasmic-yotpo.cjs.development.js +4 -4
- package/dist/plasmic-yotpo.cjs.development.js.map +1 -1
- package/dist/plasmic-yotpo.cjs.production.min.js +1 -1
- package/dist/plasmic-yotpo.cjs.production.min.js.map +1 -1
- package/dist/plasmic-yotpo.esm.js +4 -4
- package/dist/plasmic-yotpo.esm.js.map +1 -1
- package/package.json +4 -4
|
@@ -6,10 +6,10 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
|
|
|
6
6
|
|
|
7
7
|
var registerComponent = _interopDefault(require('@plasmicapp/host/registerComponent'));
|
|
8
8
|
var registerGlobalContext = _interopDefault(require('@plasmicapp/host/registerGlobalContext'));
|
|
9
|
+
var query = require('@plasmicapp/query');
|
|
10
|
+
var isArray = _interopDefault(require('lodash/isArray'));
|
|
9
11
|
var React = require('react');
|
|
10
12
|
var React__default = _interopDefault(React);
|
|
11
|
-
var query = require('@plasmicapp/query');
|
|
12
|
-
var L = _interopDefault(require('lodash'));
|
|
13
13
|
|
|
14
14
|
function _regeneratorRuntime() {
|
|
15
15
|
_regeneratorRuntime = function () {
|
|
@@ -515,7 +515,7 @@ function YotpoReviews(_ref2) {
|
|
|
515
515
|
return React__default.createElement("div", null, " Please enter Product price and Currency");
|
|
516
516
|
}
|
|
517
517
|
var review = Object.values(reviewsData).flatMap(function (item, i) {
|
|
518
|
-
return (
|
|
518
|
+
return (isArray(item) ? item : [item]).filter(function (review) {
|
|
519
519
|
return review.id === reviewId;
|
|
520
520
|
});
|
|
521
521
|
});
|
|
@@ -652,7 +652,7 @@ function YotpoStarRating(_ref5) {
|
|
|
652
652
|
return React__default.createElement("div", null, "Please configure the Yotpo Credentials provider with valid AppKey.");
|
|
653
653
|
}
|
|
654
654
|
var product = Object.values(reviews).flatMap(function (item, i) {
|
|
655
|
-
return (
|
|
655
|
+
return (isArray(item) ? item : [item]).filter(function (review) {
|
|
656
656
|
return review.id === productId;
|
|
657
657
|
});
|
|
658
658
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmic-yotpo.cjs.development.js","sources":["../src/yotpo.tsx","../src/index.tsx"],"sourcesContent":["import { ComponentMeta, GlobalContextMeta } from \"@plasmicapp/host\";\nimport React, { useContext } from \"react\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\n\nimport L from \"lodash\";\nimport { ProductElement, ReviewResponse, Image } from \"./types\";\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n\nconst modulePath = \"@plasmicpkgs/plasmic-yotpo\";\n\ninterface YotpoProps {\n appKey: string;\n uToken: string;\n}\n\nconst CredentialsContext =\n React.createContext<YotpoProps | undefined>(undefined);\n\nexport const YotpoCredentialsProviderMeta: GlobalContextMeta<YotpoProps> = {\n name: \"Yotpo\",\n displayName: \"Yotpo Credentials Provider\",\n description:\n \"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).\",\n importName: \"Yotpo\",\n importPath: modulePath,\n props: {\n appKey: {\n type: \"string\",\n displayName: \"App Key\",\n description: \"App Key of your Yotpo Store \",\n },\n uToken: {\n type: \"string\",\n displayName: \"UToken\",\n description:\n \"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users.\",\n },\n },\n};\n\nexport function YotpoCredentialsProvider({\n appKey,\n uToken,\n children,\n}: React.PropsWithChildren<YotpoProps>) {\n return (\n <CredentialsContext.Provider value={{ appKey, uToken }}>\n {children}\n </CredentialsContext.Provider>\n );\n}\n\ninterface YotpoReviewsProps {\n reviewId?: string;\n productPrice?: string;\n currency?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n className?: string;\n}\n\nexport const YotpoReviewsMeta: ComponentMeta<YotpoReviewsProps> = {\n name: \"Yotpo Reviews\",\n displayName: \"Yotpo Reviews\",\n importName: \"YotpoReviews\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Reviews for your product pages \",\n defaultStyles: {\n width: \"400px\",\n height: \"600px\",\n },\n props: {\n reviewId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Review\",\n description: \"Review Widget which to be displayed\",\n },\n productPrice: {\n type: \"string\",\n displayName: \"Price\",\n description: \"Price of the Product\",\n },\n currency: {\n type: \"string\",\n displayName: \"Currency\",\n description: \"Currency\",\n },\n },\n};\n\nexport function YotpoReviews({\n reviewId,\n setControlContextData,\n productPrice,\n currency,\n className,\n}: YotpoReviewsProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n reviewId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviewsData } = usePlasmicQueryData<any | null>(\n `${cacheKey}/reviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n const { data: reviewData } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/review`,\n async () => {\n if (!reviewId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${reviewId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!reviewsData) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const data = Object.values(reviewsData).map((item: any) => item);\n \n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviewData) {\n return <div>Please choose the reviewId</div>;\n }\n\n if (!productPrice || !currency) {\n return <div> Please enter Product price and Currency</div>;\n }\n\n const review = Object.values(reviewsData).flatMap((item: any, i: number) =>\n (L.isArray(item) ? item : [item]).filter(\n (review: any) => review.id === reviewId\n )\n );\n\n const renderedData = reviewData?.response.review.products.map(\n (item: ProductElement) => {\n const imageUrl = item?.Product.images.map((image: Image) => {\n return image.image_url;\n });\n return (\n <div\n key={item.Product.id}\n className=\"yotpo yotpo-main-widget\"\n data-product-id={review[0]?.sku}\n data-price={productPrice}\n data-currency={currency}\n data-name={item?.Product.name}\n data-url={item?.Product.shorten_url}\n data-image-url={imageUrl}\n ></div>\n );\n }\n );\n return <div className={className}>{renderedData}</div>;\n}\n\ninterface YotpoStarRatingProps {\n productId: string;\n className?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n}\n\nexport const YotpoStarRatingMeta: ComponentMeta<YotpoStarRatingProps> = {\n name: \"Yotpo Star Rating\",\n displayName: \"Yotpo Star Rating\",\n importName: \"YotpoStarRating\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Star Rating for your product pages \",\n props: {\n productId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Product\",\n description: \"Product which you want to show rating\",\n },\n },\n};\n\nexport function YotpoStarRating({\n productId,\n className,\n setControlContextData,\n}: YotpoStarRatingProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n productId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviews } = usePlasmicQueryData<any | null>(\n `${cacheKey}/starReviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n const { data: review } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/starReview`,\n async () => {\n if (!productId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${productId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviews) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n\n const data = Object.values(reviews).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!review) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const product = Object.values(reviews).flatMap((item: any, i: number) =>\n (L.isArray(item) ? item : [item]).filter(\n (review: any) => review.id === productId\n )\n );\n\n const renderedData = review?.response.review.products.map(\n (item: ProductElement) => (\n <div\n className=\"yotpo bottomLine\"\n data-product-id={product[0]?.sku}\n data-url={item.Product.product_url}\n />\n )\n );\n\n return <div className={className}>{renderedData}</div>;\n}\n","import React from 'react'\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta,\n YotpoReviewsMeta,\n YotpoReviews,\n YotpoStarRating,\n YotpoStarRatingMeta\n} from \"./yotpo\";\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n registerGlobalContext: typeof registerGlobalContext;\n}) {\n const _registerComponent = <T extends React.ComponentType<any>>(\n Component: T,\n defaultMeta: ComponentMeta<React.ComponentProps<T>>\n ) => {\n if (loader) {\n loader.registerComponent(Component, defaultMeta);\n } else {\n registerComponent(Component, defaultMeta);\n }\n };\n\n if (loader) {\n loader.registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n } else {\n registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n }\n\n _registerComponent(YotpoReviews, YotpoReviewsMeta);\n _registerComponent(YotpoStarRating, YotpoStarRatingMeta);\n\n}\n\nexport * from \"./yotpo\";\n"],"names":["ensure","x","undefined","Error","modulePath","CredentialsContext","React","createContext","YotpoCredentialsProviderMeta","name","displayName","description","importName","importPath","props","appKey","type","uToken","YotpoCredentialsProvider","_ref","children","Provider","value","YotpoReviewsMeta","providesData","defaultStyles","width","height","reviewId","options","ctx","_ctx$reviews$map","_ctx$reviews","reviews","map","item","label","id","productPrice","currency","YotpoReviews","_ref2","setControlContextData","className","creds","useContext","cacheKey","JSON","stringify","useEffect","script","document","createElement","async","innerHTML","body","appendChild","removeChild","_usePlasmicQueryData","usePlasmicQueryData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","res","wrap","_callee$","_context","prev","next","method","headers","accept","fetch","sent","abrupt","json","stop","reviewsData","data","_usePlasmicQueryData2","_callee2","_callee2$","_context2","reviewData","Object","values","review","flatMap","i","L","isArray","filter","renderedData","response","products","imageUrl","Product","images","image","image_url","key","_review$","sku","shorten_url","YotpoStarRatingMeta","productId","_ctx$reviews$map2","_ctx$reviews2","YotpoStarRating","_ref5","_usePlasmicQueryData3","_callee3","_callee3$","_context3","_usePlasmicQueryData4","_callee4","_callee4$","_context4","product","_product$","product_url","registerAll","loader","_registerComponent","Component","defaultMeta","registerComponent","registerGlobalContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plasmic-yotpo.cjs.development.js","sources":["../src/yotpo.tsx","../src/index.tsx"],"sourcesContent":["import { ComponentMeta, GlobalContextMeta } from \"@plasmicapp/host\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport isArray from \"lodash/isArray\";\nimport React, { useContext } from \"react\";\n\nimport { Image, ProductElement, ReviewResponse } from \"./types\";\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n\nconst modulePath = \"@plasmicpkgs/plasmic-yotpo\";\n\ninterface YotpoProps {\n appKey: string;\n uToken: string;\n}\n\nconst CredentialsContext = React.createContext<YotpoProps | undefined>(\n undefined\n);\n\nexport const YotpoCredentialsProviderMeta: GlobalContextMeta<YotpoProps> = {\n name: \"Yotpo\",\n displayName: \"Yotpo Credentials Provider\",\n description:\n \"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).\",\n importName: \"Yotpo\",\n importPath: modulePath,\n props: {\n appKey: {\n type: \"string\",\n displayName: \"App Key\",\n description: \"App Key of your Yotpo Store \",\n },\n uToken: {\n type: \"string\",\n displayName: \"UToken\",\n description:\n \"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users.\",\n },\n },\n};\n\nexport function YotpoCredentialsProvider({\n appKey,\n uToken,\n children,\n}: React.PropsWithChildren<YotpoProps>) {\n return (\n <CredentialsContext.Provider value={{ appKey, uToken }}>\n {children}\n </CredentialsContext.Provider>\n );\n}\n\ninterface YotpoReviewsProps {\n reviewId?: string;\n productPrice?: string;\n currency?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n className?: string;\n}\n\nexport const YotpoReviewsMeta: ComponentMeta<YotpoReviewsProps> = {\n name: \"Yotpo Reviews\",\n displayName: \"Yotpo Reviews\",\n importName: \"YotpoReviews\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Reviews for your product pages \",\n defaultStyles: {\n width: \"400px\",\n height: \"600px\",\n },\n props: {\n reviewId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Review\",\n description: \"Review Widget which to be displayed\",\n },\n productPrice: {\n type: \"string\",\n displayName: \"Price\",\n description: \"Price of the Product\",\n },\n currency: {\n type: \"string\",\n displayName: \"Currency\",\n description: \"Currency\",\n },\n },\n};\n\nexport function YotpoReviews({\n reviewId,\n setControlContextData,\n productPrice,\n currency,\n className,\n}: YotpoReviewsProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n reviewId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviewsData } = usePlasmicQueryData<any | null>(\n `${cacheKey}/reviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n const { data: reviewData } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/review`,\n async () => {\n if (!reviewId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${reviewId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!reviewsData) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const data = Object.values(reviewsData).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviewData) {\n return <div>Please choose the reviewId</div>;\n }\n\n if (!productPrice || !currency) {\n return <div> Please enter Product price and Currency</div>;\n }\n\n const review = Object.values(reviewsData).flatMap((item: any, i: number) =>\n (isArray(item) ? item : [item]).filter(\n (review: any) => review.id === reviewId\n )\n );\n\n const renderedData = reviewData?.response.review.products.map(\n (item: ProductElement) => {\n const imageUrl = item?.Product.images.map((image: Image) => {\n return image.image_url;\n });\n return (\n <div\n key={item.Product.id}\n className=\"yotpo yotpo-main-widget\"\n data-product-id={review[0]?.sku}\n data-price={productPrice}\n data-currency={currency}\n data-name={item?.Product.name}\n data-url={item?.Product.shorten_url}\n data-image-url={imageUrl}\n ></div>\n );\n }\n );\n return <div className={className}>{renderedData}</div>;\n}\n\ninterface YotpoStarRatingProps {\n productId: string;\n className?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n}\n\nexport const YotpoStarRatingMeta: ComponentMeta<YotpoStarRatingProps> = {\n name: \"Yotpo Star Rating\",\n displayName: \"Yotpo Star Rating\",\n importName: \"YotpoStarRating\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Star Rating for your product pages \",\n props: {\n productId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Product\",\n description: \"Product which you want to show rating\",\n },\n },\n};\n\nexport function YotpoStarRating({\n productId,\n className,\n setControlContextData,\n}: YotpoStarRatingProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n productId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviews } = usePlasmicQueryData<any | null>(\n `${cacheKey}/starReviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n const { data: review } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/starReview`,\n async () => {\n if (!productId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${productId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviews) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n\n const data = Object.values(reviews).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!review) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const product = Object.values(reviews).flatMap((item: any, i: number) =>\n (isArray(item) ? item : [item]).filter(\n (review: any) => review.id === productId\n )\n );\n\n const renderedData = review?.response.review.products.map(\n (item: ProductElement) => (\n <div\n className=\"yotpo bottomLine\"\n data-product-id={product[0]?.sku}\n data-url={item.Product.product_url}\n />\n )\n );\n\n return <div className={className}>{renderedData}</div>;\n}\n","import React from 'react'\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta,\n YotpoReviewsMeta,\n YotpoReviews,\n YotpoStarRating,\n YotpoStarRatingMeta\n} from \"./yotpo\";\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n registerGlobalContext: typeof registerGlobalContext;\n}) {\n const _registerComponent = <T extends React.ComponentType<any>>(\n Component: T,\n defaultMeta: ComponentMeta<React.ComponentProps<T>>\n ) => {\n if (loader) {\n loader.registerComponent(Component, defaultMeta);\n } else {\n registerComponent(Component, defaultMeta);\n }\n };\n\n if (loader) {\n loader.registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n } else {\n registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n }\n\n _registerComponent(YotpoReviews, YotpoReviewsMeta);\n _registerComponent(YotpoStarRating, YotpoStarRatingMeta);\n\n}\n\nexport * from \"./yotpo\";\n"],"names":["ensure","x","undefined","Error","modulePath","CredentialsContext","React","createContext","YotpoCredentialsProviderMeta","name","displayName","description","importName","importPath","props","appKey","type","uToken","YotpoCredentialsProvider","_ref","children","Provider","value","YotpoReviewsMeta","providesData","defaultStyles","width","height","reviewId","options","ctx","_ctx$reviews$map","_ctx$reviews","reviews","map","item","label","id","productPrice","currency","YotpoReviews","_ref2","setControlContextData","className","creds","useContext","cacheKey","JSON","stringify","useEffect","script","document","createElement","async","innerHTML","body","appendChild","removeChild","_usePlasmicQueryData","usePlasmicQueryData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","res","wrap","_callee$","_context","prev","next","method","headers","accept","fetch","sent","abrupt","json","stop","reviewsData","data","_usePlasmicQueryData2","_callee2","_callee2$","_context2","reviewData","Object","values","review","flatMap","i","isArray","filter","renderedData","response","products","imageUrl","Product","images","image","image_url","key","_review$","sku","shorten_url","YotpoStarRatingMeta","productId","_ctx$reviews$map2","_ctx$reviews2","YotpoStarRating","_ref5","_usePlasmicQueryData3","_callee3","_callee3$","_context3","_usePlasmicQueryData4","_callee4","_callee4$","_context4","product","_product$","product_url","registerAll","loader","_registerComponent","Component","defaultMeta","registerComponent","registerGlobalContext"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("@plasmicapp/host/registerComponent")),r=e(require("@plasmicapp/host/registerGlobalContext")),n=require("react"),o=e(n),a=require("@plasmicapp/query"),i=e(require("lodash"));function u(){u=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag";function p(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{p({},"")}catch(e){p=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var a=Object.create((t&&t.prototype instanceof m?t:m).prototype),i=new Y(n||[]);return o(a,"_invoke",{value:N(e,r,i)}),a}function d(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var f="suspendedStart",v="executing",h="completed",y={};function m(){}function g(){}function w(){}var x={};p(x,i,(function(){return this}));var b=Object.getPrototypeOf,E=b&&b(b(O([])));E&&E!==r&&n.call(E,i)&&(x=E);var P=w.prototype=m.prototype=Object.create(x);function k(e){["next","throw","return"].forEach((function(t){p(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function r(o,a,i,u){var c=d(e[o],e,a);if("throw"!==c.type){var s=c.arg,p=s.value;return p&&"object"==typeof p&&n.call(p,"__await")?t.resolve(p.__await).then((function(e){r("next",e,i,u)}),(function(e){r("throw",e,i,u)})):t.resolve(p).then((function(e){s.value=e,i(s)}),(function(e){return r("throw",e,i,u)}))}u(c.arg)}var a;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return a=a?a.then(o,o):o()}})}function N(t,r,n){var o=f;return function(a,i){if(o===v)throw new Error("Generator is already running");if(o===h){if("throw"===a)throw i;return{value:e,done:!0}}for(n.method=a,n.arg=i;;){var u=n.delegate;if(u){var c=L(u,n);if(c){if(c===y)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var s=d(t,r,n);if("normal"===s.type){if(o=n.done?h:"suspendedYield",s.arg===y)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=h,n.method="throw",n.arg=s.arg)}}}function L(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,L(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),y;var a=d(o,t.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,y;var i=a.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,y):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,y)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function Y(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function O(t){if(t||""===t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return a.next=a}}throw new TypeError(typeof t+" is not iterable")}return g.prototype=w,o(P,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=p(w,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,p(e,s,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},k(j.prototype),p(j.prototype,c,(function(){return this})),t.AsyncIterator=j,t.async=function(e,r,n,o,a){void 0===a&&(a=Promise);var i=new j(l(e,r,n,o),a);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},k(P),p(P,s,"Generator"),p(P,i,(function(){return this})),p(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=O,Y.prototype={constructor:Y,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return u.type="throw",u.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],u=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var c=n.call(i,"catchLoc"),s=n.call(i,"finallyLoc");if(c&&s){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,y):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),T(r),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:O(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),y}},t}function c(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,o)}function s(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var a=e.apply(t,r);function i(e){c(a,n,o,i,u,"next",e)}function u(e){c(a,n,o,i,u,"throw",e)}i(void 0)}))}}function p(e){if(null==e)throw new Error("Value must not be undefined or null");return e}var l="@plasmicpkgs/plasmic-yotpo",d=o.createContext(void 0),f={name:"Yotpo",displayName:"Yotpo Credentials Provider",description:"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).",importName:"Yotpo",importPath:l,props:{appKey:{type:"string",displayName:"App Key",description:"App Key of your Yotpo Store "},uToken:{type:"string",displayName:"UToken",description:"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users."}}};function v(e){return o.createElement(d.Provider,{value:{appKey:e.appKey,uToken:e.uToken}},e.children)}var h={name:"Yotpo Reviews",displayName:"Yotpo Reviews",importName:"YotpoReviews",importPath:l,providesData:!0,description:"Yotpo Reviews for your product pages ",defaultStyles:{width:"400px",height:"600px"},props:{reviewId:{type:"choice",options:function(e,t){var r,n;return null!=(r=null==t||null==(n=t.reviews)?void 0:n.map((function(e){return{label:null==e?void 0:e.name,value:null==e?void 0:e.id}})))?r:[]},displayName:"Review",description:"Review Widget which to be displayed"},productPrice:{type:"string",displayName:"Price",description:"Price of the Product"},currency:{type:"string",displayName:"Currency",description:"Currency"}}};function y(e){var t=e.reviewId,r=e.setControlContextData,c=e.productPrice,l=e.currency,f=e.className,v=p(n.useContext(d)),h=JSON.stringify({creds:v,reviewId:t});o.useEffect((function(){var e=document.createElement("script");return e.type="text/javascript",e.async=!0,e.innerHTML='(function e(){var e=document.createElement("script");e.type="text/javascript",e.async=true,e.src="//staticw2.yotpo.com/'+v.appKey+'/widget.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})();',document.body.appendChild(e),function(){document.body.removeChild(e)}}),[v]);var y=a.usePlasmicQueryData(h+"/reviews",s(u().mark((function e(){var t;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=3,fetch("https://api.yotpo.com/v1/apps/"+v.appKey+"/reviews?utoken="+v.uToken,t);case 3:return e.abrupt("return",e.sent.json());case 5:case"end":return e.stop()}}),e)})))).data,m=a.usePlasmicQueryData(h+"/review",s(u().mark((function e(){var r;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return",void 0);case 2:return r={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=5,fetch("https://api.yotpo.com/reviews/"+t+"?utoken="+v.uToken,r);case 5:return e.abrupt("return",e.sent.json());case 7:case"end":return e.stop()}}),e)})))).data;if(!y)return o.createElement("div",null,"Please configure the Yotpo Credentials provider with valid AppKey.");var g=Object.values(y).map((function(e){return e}));if(null==r||r({reviews:g[0]||[]}),!v.uToken||!v.appKey)return o.createElement("div",null,"Please specify a valid API Credentials: uToken,appKey");if(!m)return o.createElement("div",null,"Please choose the reviewId");if(!c||!l)return o.createElement("div",null," Please enter Product price and Currency");var w=Object.values(y).flatMap((function(e,r){return(i.isArray(e)?e:[e]).filter((function(e){return e.id===t}))})),x=null==m?void 0:m.response.review.products.map((function(e){var t,r=null==e?void 0:e.Product.images.map((function(e){return e.image_url}));return o.createElement("div",{key:e.Product.id,className:"yotpo yotpo-main-widget","data-product-id":null==(t=w[0])?void 0:t.sku,"data-price":c,"data-currency":l,"data-name":null==e?void 0:e.Product.name,"data-url":null==e?void 0:e.Product.shorten_url,"data-image-url":r})}));return o.createElement("div",{className:f},x)}var m={name:"Yotpo Star Rating",displayName:"Yotpo Star Rating",importName:"YotpoStarRating",importPath:l,providesData:!0,description:"Yotpo Star Rating for your product pages ",props:{productId:{type:"choice",options:function(e,t){var r,n;return null!=(r=null==t||null==(n=t.reviews)?void 0:n.map((function(e){return{label:null==e?void 0:e.name,value:null==e?void 0:e.id}})))?r:[]},displayName:"Product",description:"Product which you want to show rating"}}};function g(e){var t=e.productId,r=e.className,c=e.setControlContextData,l=p(n.useContext(d)),f=JSON.stringify({creds:l,productId:t});o.useEffect((function(){var e=document.createElement("script");return e.type="text/javascript",e.async=!0,e.innerHTML='(function e(){var e=document.createElement("script");e.type="text/javascript",e.async=true,e.src="//staticw2.yotpo.com/'+l.appKey+'/widget.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})();',document.body.appendChild(e),function(){document.body.removeChild(e)}}),[l]);var v=a.usePlasmicQueryData(f+"/starReviews",s(u().mark((function e(){var t;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=3,fetch("https://api.yotpo.com/v1/apps/"+l.appKey+"/reviews?utoken="+l.uToken,t);case 3:return e.abrupt("return",e.sent.json());case 5:case"end":return e.stop()}}),e)})))).data,h=a.usePlasmicQueryData(f+"/starReview",s(u().mark((function e(){var r;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return",void 0);case 2:return r={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=5,fetch("https://api.yotpo.com/reviews/"+t+"?utoken="+l.uToken,r);case 5:return e.abrupt("return",e.sent.json());case 7:case"end":return e.stop()}}),e)})))).data;if(!l.uToken||!l.appKey)return o.createElement("div",null,"Please specify a valid API Credentials: uToken,appKey");if(!v)return o.createElement("div",null,"Please configure the Yotpo Credentials provider with valid AppKey.");var y=Object.values(v).map((function(e){return e}));if(null==c||c({reviews:y[0]||[]}),!h)return o.createElement("div",null,"Please configure the Yotpo Credentials provider with valid AppKey.");var m=Object.values(v).flatMap((function(e,r){return(i.isArray(e)?e:[e]).filter((function(e){return e.id===t}))})),g=null==h?void 0:h.response.review.products.map((function(e){var t;return o.createElement("div",{className:"yotpo bottomLine","data-product-id":null==(t=m[0])?void 0:t.sku,"data-url":e.Product.product_url})}));return o.createElement("div",{className:r},g)}exports.YotpoCredentialsProvider=v,exports.YotpoCredentialsProviderMeta=f,exports.YotpoReviews=y,exports.YotpoReviewsMeta=h,exports.YotpoStarRating=g,exports.YotpoStarRatingMeta=m,exports.ensure=p,exports.registerAll=function(e){var n=function(r,n){e?e.registerComponent(r,n):t(r,n)};e?e.registerGlobalContext(v,f):r(v,f),n(y,h),n(g,m)};
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("@plasmicapp/host/registerComponent")),r=e(require("@plasmicapp/host/registerGlobalContext")),n=require("@plasmicapp/query"),o=e(require("lodash/isArray")),a=require("react"),i=e(a);function u(){u=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag";function p(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{p({},"")}catch(e){p=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var a=Object.create((t&&t.prototype instanceof m?t:m).prototype),i=new Y(n||[]);return o(a,"_invoke",{value:N(e,r,i)}),a}function d(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var f="suspendedStart",v="executing",h="completed",y={};function m(){}function g(){}function w(){}var x={};p(x,i,(function(){return this}));var b=Object.getPrototypeOf,E=b&&b(b(O([])));E&&E!==r&&n.call(E,i)&&(x=E);var P=w.prototype=m.prototype=Object.create(x);function k(e){["next","throw","return"].forEach((function(t){p(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function r(o,a,i,u){var c=d(e[o],e,a);if("throw"!==c.type){var s=c.arg,p=s.value;return p&&"object"==typeof p&&n.call(p,"__await")?t.resolve(p.__await).then((function(e){r("next",e,i,u)}),(function(e){r("throw",e,i,u)})):t.resolve(p).then((function(e){s.value=e,i(s)}),(function(e){return r("throw",e,i,u)}))}u(c.arg)}var a;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return a=a?a.then(o,o):o()}})}function N(t,r,n){var o=f;return function(a,i){if(o===v)throw new Error("Generator is already running");if(o===h){if("throw"===a)throw i;return{value:e,done:!0}}for(n.method=a,n.arg=i;;){var u=n.delegate;if(u){var c=L(u,n);if(c){if(c===y)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var s=d(t,r,n);if("normal"===s.type){if(o=n.done?h:"suspendedYield",s.arg===y)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=h,n.method="throw",n.arg=s.arg)}}}function L(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,L(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),y;var a=d(o,t.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,y;var i=a.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,y):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,y)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function Y(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function O(t){if(t||""===t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return a.next=a}}throw new TypeError(typeof t+" is not iterable")}return g.prototype=w,o(P,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=p(w,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,p(e,s,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},k(j.prototype),p(j.prototype,c,(function(){return this})),t.AsyncIterator=j,t.async=function(e,r,n,o,a){void 0===a&&(a=Promise);var i=new j(l(e,r,n,o),a);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},k(P),p(P,s,"Generator"),p(P,i,(function(){return this})),p(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=O,Y.prototype={constructor:Y,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return u.type="throw",u.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],u=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var c=n.call(i,"catchLoc"),s=n.call(i,"finallyLoc");if(c&&s){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,y):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),T(r),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:O(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),y}},t}function c(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,o)}function s(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var a=e.apply(t,r);function i(e){c(a,n,o,i,u,"next",e)}function u(e){c(a,n,o,i,u,"throw",e)}i(void 0)}))}}function p(e){if(null==e)throw new Error("Value must not be undefined or null");return e}var l="@plasmicpkgs/plasmic-yotpo",d=i.createContext(void 0),f={name:"Yotpo",displayName:"Yotpo Credentials Provider",description:"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).",importName:"Yotpo",importPath:l,props:{appKey:{type:"string",displayName:"App Key",description:"App Key of your Yotpo Store "},uToken:{type:"string",displayName:"UToken",description:"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users."}}};function v(e){return i.createElement(d.Provider,{value:{appKey:e.appKey,uToken:e.uToken}},e.children)}var h={name:"Yotpo Reviews",displayName:"Yotpo Reviews",importName:"YotpoReviews",importPath:l,providesData:!0,description:"Yotpo Reviews for your product pages ",defaultStyles:{width:"400px",height:"600px"},props:{reviewId:{type:"choice",options:function(e,t){var r,n;return null!=(r=null==t||null==(n=t.reviews)?void 0:n.map((function(e){return{label:null==e?void 0:e.name,value:null==e?void 0:e.id}})))?r:[]},displayName:"Review",description:"Review Widget which to be displayed"},productPrice:{type:"string",displayName:"Price",description:"Price of the Product"},currency:{type:"string",displayName:"Currency",description:"Currency"}}};function y(e){var t=e.reviewId,r=e.setControlContextData,c=e.productPrice,l=e.currency,f=e.className,v=p(a.useContext(d)),h=JSON.stringify({creds:v,reviewId:t});i.useEffect((function(){var e=document.createElement("script");return e.type="text/javascript",e.async=!0,e.innerHTML='(function e(){var e=document.createElement("script");e.type="text/javascript",e.async=true,e.src="//staticw2.yotpo.com/'+v.appKey+'/widget.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})();',document.body.appendChild(e),function(){document.body.removeChild(e)}}),[v]);var y=n.usePlasmicQueryData(h+"/reviews",s(u().mark((function e(){var t;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=3,fetch("https://api.yotpo.com/v1/apps/"+v.appKey+"/reviews?utoken="+v.uToken,t);case 3:return e.abrupt("return",e.sent.json());case 5:case"end":return e.stop()}}),e)})))).data,m=n.usePlasmicQueryData(h+"/review",s(u().mark((function e(){var r;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return",void 0);case 2:return r={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=5,fetch("https://api.yotpo.com/reviews/"+t+"?utoken="+v.uToken,r);case 5:return e.abrupt("return",e.sent.json());case 7:case"end":return e.stop()}}),e)})))).data;if(!y)return i.createElement("div",null,"Please configure the Yotpo Credentials provider with valid AppKey.");var g=Object.values(y).map((function(e){return e}));if(null==r||r({reviews:g[0]||[]}),!v.uToken||!v.appKey)return i.createElement("div",null,"Please specify a valid API Credentials: uToken,appKey");if(!m)return i.createElement("div",null,"Please choose the reviewId");if(!c||!l)return i.createElement("div",null," Please enter Product price and Currency");var w=Object.values(y).flatMap((function(e,r){return(o(e)?e:[e]).filter((function(e){return e.id===t}))})),x=null==m?void 0:m.response.review.products.map((function(e){var t,r=null==e?void 0:e.Product.images.map((function(e){return e.image_url}));return i.createElement("div",{key:e.Product.id,className:"yotpo yotpo-main-widget","data-product-id":null==(t=w[0])?void 0:t.sku,"data-price":c,"data-currency":l,"data-name":null==e?void 0:e.Product.name,"data-url":null==e?void 0:e.Product.shorten_url,"data-image-url":r})}));return i.createElement("div",{className:f},x)}var m={name:"Yotpo Star Rating",displayName:"Yotpo Star Rating",importName:"YotpoStarRating",importPath:l,providesData:!0,description:"Yotpo Star Rating for your product pages ",props:{productId:{type:"choice",options:function(e,t){var r,n;return null!=(r=null==t||null==(n=t.reviews)?void 0:n.map((function(e){return{label:null==e?void 0:e.name,value:null==e?void 0:e.id}})))?r:[]},displayName:"Product",description:"Product which you want to show rating"}}};function g(e){var t=e.productId,r=e.className,c=e.setControlContextData,l=p(a.useContext(d)),f=JSON.stringify({creds:l,productId:t});i.useEffect((function(){var e=document.createElement("script");return e.type="text/javascript",e.async=!0,e.innerHTML='(function e(){var e=document.createElement("script");e.type="text/javascript",e.async=true,e.src="//staticw2.yotpo.com/'+l.appKey+'/widget.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})();',document.body.appendChild(e),function(){document.body.removeChild(e)}}),[l]);var v=n.usePlasmicQueryData(f+"/starReviews",s(u().mark((function e(){var t;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=3,fetch("https://api.yotpo.com/v1/apps/"+l.appKey+"/reviews?utoken="+l.uToken,t);case 3:return e.abrupt("return",e.sent.json());case 5:case"end":return e.stop()}}),e)})))).data,h=n.usePlasmicQueryData(f+"/starReview",s(u().mark((function e(){var r;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return",void 0);case 2:return r={method:"GET",headers:{accept:"application/json","Content-Type":"application/json"}},e.next=5,fetch("https://api.yotpo.com/reviews/"+t+"?utoken="+l.uToken,r);case 5:return e.abrupt("return",e.sent.json());case 7:case"end":return e.stop()}}),e)})))).data;if(!l.uToken||!l.appKey)return i.createElement("div",null,"Please specify a valid API Credentials: uToken,appKey");if(!v)return i.createElement("div",null,"Please configure the Yotpo Credentials provider with valid AppKey.");var y=Object.values(v).map((function(e){return e}));if(null==c||c({reviews:y[0]||[]}),!h)return i.createElement("div",null,"Please configure the Yotpo Credentials provider with valid AppKey.");var m=Object.values(v).flatMap((function(e,r){return(o(e)?e:[e]).filter((function(e){return e.id===t}))})),g=null==h?void 0:h.response.review.products.map((function(e){var t;return i.createElement("div",{className:"yotpo bottomLine","data-product-id":null==(t=m[0])?void 0:t.sku,"data-url":e.Product.product_url})}));return i.createElement("div",{className:r},g)}exports.YotpoCredentialsProvider=v,exports.YotpoCredentialsProviderMeta=f,exports.YotpoReviews=y,exports.YotpoReviewsMeta=h,exports.YotpoStarRating=g,exports.YotpoStarRatingMeta=m,exports.ensure=p,exports.registerAll=function(e){var n=function(r,n){e?e.registerComponent(r,n):t(r,n)};e?e.registerGlobalContext(v,f):r(v,f),n(y,h),n(g,m)};
|
|
2
2
|
//# sourceMappingURL=plasmic-yotpo.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmic-yotpo.cjs.production.min.js","sources":["../src/yotpo.tsx","../src/index.tsx"],"sourcesContent":["import { ComponentMeta, GlobalContextMeta } from \"@plasmicapp/host\";\nimport React, { useContext } from \"react\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\n\nimport L from \"lodash\";\nimport { ProductElement, ReviewResponse, Image } from \"./types\";\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n\nconst modulePath = \"@plasmicpkgs/plasmic-yotpo\";\n\ninterface YotpoProps {\n appKey: string;\n uToken: string;\n}\n\nconst CredentialsContext =\n React.createContext<YotpoProps | undefined>(undefined);\n\nexport const YotpoCredentialsProviderMeta: GlobalContextMeta<YotpoProps> = {\n name: \"Yotpo\",\n displayName: \"Yotpo Credentials Provider\",\n description:\n \"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).\",\n importName: \"Yotpo\",\n importPath: modulePath,\n props: {\n appKey: {\n type: \"string\",\n displayName: \"App Key\",\n description: \"App Key of your Yotpo Store \",\n },\n uToken: {\n type: \"string\",\n displayName: \"UToken\",\n description:\n \"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users.\",\n },\n },\n};\n\nexport function YotpoCredentialsProvider({\n appKey,\n uToken,\n children,\n}: React.PropsWithChildren<YotpoProps>) {\n return (\n <CredentialsContext.Provider value={{ appKey, uToken }}>\n {children}\n </CredentialsContext.Provider>\n );\n}\n\ninterface YotpoReviewsProps {\n reviewId?: string;\n productPrice?: string;\n currency?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n className?: string;\n}\n\nexport const YotpoReviewsMeta: ComponentMeta<YotpoReviewsProps> = {\n name: \"Yotpo Reviews\",\n displayName: \"Yotpo Reviews\",\n importName: \"YotpoReviews\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Reviews for your product pages \",\n defaultStyles: {\n width: \"400px\",\n height: \"600px\",\n },\n props: {\n reviewId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Review\",\n description: \"Review Widget which to be displayed\",\n },\n productPrice: {\n type: \"string\",\n displayName: \"Price\",\n description: \"Price of the Product\",\n },\n currency: {\n type: \"string\",\n displayName: \"Currency\",\n description: \"Currency\",\n },\n },\n};\n\nexport function YotpoReviews({\n reviewId,\n setControlContextData,\n productPrice,\n currency,\n className,\n}: YotpoReviewsProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n reviewId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviewsData } = usePlasmicQueryData<any | null>(\n `${cacheKey}/reviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n const { data: reviewData } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/review`,\n async () => {\n if (!reviewId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${reviewId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!reviewsData) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const data = Object.values(reviewsData).map((item: any) => item);\n \n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviewData) {\n return <div>Please choose the reviewId</div>;\n }\n\n if (!productPrice || !currency) {\n return <div> Please enter Product price and Currency</div>;\n }\n\n const review = Object.values(reviewsData).flatMap((item: any, i: number) =>\n (L.isArray(item) ? item : [item]).filter(\n (review: any) => review.id === reviewId\n )\n );\n\n const renderedData = reviewData?.response.review.products.map(\n (item: ProductElement) => {\n const imageUrl = item?.Product.images.map((image: Image) => {\n return image.image_url;\n });\n return (\n <div\n key={item.Product.id}\n className=\"yotpo yotpo-main-widget\"\n data-product-id={review[0]?.sku}\n data-price={productPrice}\n data-currency={currency}\n data-name={item?.Product.name}\n data-url={item?.Product.shorten_url}\n data-image-url={imageUrl}\n ></div>\n );\n }\n );\n return <div className={className}>{renderedData}</div>;\n}\n\ninterface YotpoStarRatingProps {\n productId: string;\n className?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n}\n\nexport const YotpoStarRatingMeta: ComponentMeta<YotpoStarRatingProps> = {\n name: \"Yotpo Star Rating\",\n displayName: \"Yotpo Star Rating\",\n importName: \"YotpoStarRating\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Star Rating for your product pages \",\n props: {\n productId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Product\",\n description: \"Product which you want to show rating\",\n },\n },\n};\n\nexport function YotpoStarRating({\n productId,\n className,\n setControlContextData,\n}: YotpoStarRatingProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n productId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviews } = usePlasmicQueryData<any | null>(\n `${cacheKey}/starReviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n const { data: review } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/starReview`,\n async () => {\n if (!productId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${productId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviews) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n\n const data = Object.values(reviews).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!review) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const product = Object.values(reviews).flatMap((item: any, i: number) =>\n (L.isArray(item) ? item : [item]).filter(\n (review: any) => review.id === productId\n )\n );\n\n const renderedData = review?.response.review.products.map(\n (item: ProductElement) => (\n <div\n className=\"yotpo bottomLine\"\n data-product-id={product[0]?.sku}\n data-url={item.Product.product_url}\n />\n )\n );\n\n return <div className={className}>{renderedData}</div>;\n}\n","import React from 'react'\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta,\n YotpoReviewsMeta,\n YotpoReviews,\n YotpoStarRating,\n YotpoStarRatingMeta\n} from \"./yotpo\";\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n registerGlobalContext: typeof registerGlobalContext;\n}) {\n const _registerComponent = <T extends React.ComponentType<any>>(\n Component: T,\n defaultMeta: ComponentMeta<React.ComponentProps<T>>\n ) => {\n if (loader) {\n loader.registerComponent(Component, defaultMeta);\n } else {\n registerComponent(Component, defaultMeta);\n }\n };\n\n if (loader) {\n loader.registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n } else {\n registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n }\n\n _registerComponent(YotpoReviews, YotpoReviewsMeta);\n _registerComponent(YotpoStarRating, YotpoStarRatingMeta);\n\n}\n\nexport * from \"./yotpo\";\n"],"names":["ensure","x","Error","modulePath","CredentialsContext","React","createContext","undefined","YotpoCredentialsProviderMeta","name","displayName","description","importName","importPath","props","appKey","type","uToken","YotpoCredentialsProvider","_ref","Provider","value","children","YotpoReviewsMeta","providesData","defaultStyles","width","height","reviewId","options","ctx","_ctx$reviews$map","_ctx$reviews","reviews","map","item","label","id","productPrice","currency","YotpoReviews","_ref2","setControlContextData","className","creds","useContext","cacheKey","JSON","stringify","useEffect","script","document","createElement","async","innerHTML","body","appendChild","removeChild","reviewsData","usePlasmicQueryData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","method","headers","accept","Content-Type","fetch","abrupt","sent","json","stop","data","reviewData","_callee2","_context2","Object","values","review","flatMap","i","L","isArray","filter","renderedData","response","products","imageUrl","Product","images","image","image_url","key","_review$","sku","shorten_url","YotpoStarRatingMeta","productId","_ctx$reviews$map2","_ctx$reviews2","YotpoStarRating","_ref5","_callee3","_context3","_callee4","_context4","product","_product$","product_url","loader","_registerComponent","Component","defaultMeta","registerComponent","registerGlobalContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plasmic-yotpo.cjs.production.min.js","sources":["../src/yotpo.tsx","../src/index.tsx"],"sourcesContent":["import { ComponentMeta, GlobalContextMeta } from \"@plasmicapp/host\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport isArray from \"lodash/isArray\";\nimport React, { useContext } from \"react\";\n\nimport { Image, ProductElement, ReviewResponse } from \"./types\";\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n\nconst modulePath = \"@plasmicpkgs/plasmic-yotpo\";\n\ninterface YotpoProps {\n appKey: string;\n uToken: string;\n}\n\nconst CredentialsContext = React.createContext<YotpoProps | undefined>(\n undefined\n);\n\nexport const YotpoCredentialsProviderMeta: GlobalContextMeta<YotpoProps> = {\n name: \"Yotpo\",\n displayName: \"Yotpo Credentials Provider\",\n description:\n \"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).\",\n importName: \"Yotpo\",\n importPath: modulePath,\n props: {\n appKey: {\n type: \"string\",\n displayName: \"App Key\",\n description: \"App Key of your Yotpo Store \",\n },\n uToken: {\n type: \"string\",\n displayName: \"UToken\",\n description:\n \"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users.\",\n },\n },\n};\n\nexport function YotpoCredentialsProvider({\n appKey,\n uToken,\n children,\n}: React.PropsWithChildren<YotpoProps>) {\n return (\n <CredentialsContext.Provider value={{ appKey, uToken }}>\n {children}\n </CredentialsContext.Provider>\n );\n}\n\ninterface YotpoReviewsProps {\n reviewId?: string;\n productPrice?: string;\n currency?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n className?: string;\n}\n\nexport const YotpoReviewsMeta: ComponentMeta<YotpoReviewsProps> = {\n name: \"Yotpo Reviews\",\n displayName: \"Yotpo Reviews\",\n importName: \"YotpoReviews\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Reviews for your product pages \",\n defaultStyles: {\n width: \"400px\",\n height: \"600px\",\n },\n props: {\n reviewId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Review\",\n description: \"Review Widget which to be displayed\",\n },\n productPrice: {\n type: \"string\",\n displayName: \"Price\",\n description: \"Price of the Product\",\n },\n currency: {\n type: \"string\",\n displayName: \"Currency\",\n description: \"Currency\",\n },\n },\n};\n\nexport function YotpoReviews({\n reviewId,\n setControlContextData,\n productPrice,\n currency,\n className,\n}: YotpoReviewsProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n reviewId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviewsData } = usePlasmicQueryData<any | null>(\n `${cacheKey}/reviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n const { data: reviewData } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/review`,\n async () => {\n if (!reviewId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${reviewId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!reviewsData) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const data = Object.values(reviewsData).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviewData) {\n return <div>Please choose the reviewId</div>;\n }\n\n if (!productPrice || !currency) {\n return <div> Please enter Product price and Currency</div>;\n }\n\n const review = Object.values(reviewsData).flatMap((item: any, i: number) =>\n (isArray(item) ? item : [item]).filter(\n (review: any) => review.id === reviewId\n )\n );\n\n const renderedData = reviewData?.response.review.products.map(\n (item: ProductElement) => {\n const imageUrl = item?.Product.images.map((image: Image) => {\n return image.image_url;\n });\n return (\n <div\n key={item.Product.id}\n className=\"yotpo yotpo-main-widget\"\n data-product-id={review[0]?.sku}\n data-price={productPrice}\n data-currency={currency}\n data-name={item?.Product.name}\n data-url={item?.Product.shorten_url}\n data-image-url={imageUrl}\n ></div>\n );\n }\n );\n return <div className={className}>{renderedData}</div>;\n}\n\ninterface YotpoStarRatingProps {\n productId: string;\n className?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n}\n\nexport const YotpoStarRatingMeta: ComponentMeta<YotpoStarRatingProps> = {\n name: \"Yotpo Star Rating\",\n displayName: \"Yotpo Star Rating\",\n importName: \"YotpoStarRating\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Star Rating for your product pages \",\n props: {\n productId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Product\",\n description: \"Product which you want to show rating\",\n },\n },\n};\n\nexport function YotpoStarRating({\n productId,\n className,\n setControlContextData,\n}: YotpoStarRatingProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n productId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviews } = usePlasmicQueryData<any | null>(\n `${cacheKey}/starReviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n const { data: review } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/starReview`,\n async () => {\n if (!productId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${productId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviews) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n\n const data = Object.values(reviews).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!review) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const product = Object.values(reviews).flatMap((item: any, i: number) =>\n (isArray(item) ? item : [item]).filter(\n (review: any) => review.id === productId\n )\n );\n\n const renderedData = review?.response.review.products.map(\n (item: ProductElement) => (\n <div\n className=\"yotpo bottomLine\"\n data-product-id={product[0]?.sku}\n data-url={item.Product.product_url}\n />\n )\n );\n\n return <div className={className}>{renderedData}</div>;\n}\n","import React from 'react'\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta,\n YotpoReviewsMeta,\n YotpoReviews,\n YotpoStarRating,\n YotpoStarRatingMeta\n} from \"./yotpo\";\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n registerGlobalContext: typeof registerGlobalContext;\n}) {\n const _registerComponent = <T extends React.ComponentType<any>>(\n Component: T,\n defaultMeta: ComponentMeta<React.ComponentProps<T>>\n ) => {\n if (loader) {\n loader.registerComponent(Component, defaultMeta);\n } else {\n registerComponent(Component, defaultMeta);\n }\n };\n\n if (loader) {\n loader.registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n } else {\n registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n }\n\n _registerComponent(YotpoReviews, YotpoReviewsMeta);\n _registerComponent(YotpoStarRating, YotpoStarRatingMeta);\n\n}\n\nexport * from \"./yotpo\";\n"],"names":["ensure","x","Error","modulePath","CredentialsContext","React","createContext","undefined","YotpoCredentialsProviderMeta","name","displayName","description","importName","importPath","props","appKey","type","uToken","YotpoCredentialsProvider","_ref","Provider","value","children","YotpoReviewsMeta","providesData","defaultStyles","width","height","reviewId","options","ctx","_ctx$reviews$map","_ctx$reviews","reviews","map","item","label","id","productPrice","currency","YotpoReviews","_ref2","setControlContextData","className","creds","useContext","cacheKey","JSON","stringify","useEffect","script","document","createElement","async","innerHTML","body","appendChild","removeChild","reviewsData","usePlasmicQueryData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","method","headers","accept","Content-Type","fetch","abrupt","sent","json","stop","data","reviewData","_callee2","_context2","Object","values","review","flatMap","i","isArray","filter","renderedData","response","products","imageUrl","Product","images","image","image_url","key","_review$","sku","shorten_url","YotpoStarRatingMeta","productId","_ctx$reviews$map2","_ctx$reviews2","YotpoStarRating","_ref5","_callee3","_context3","_callee4","_context4","product","_product$","product_url","loader","_registerComponent","Component","defaultMeta","registerComponent","registerGlobalContext"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import registerComponent from '@plasmicapp/host/registerComponent';
|
|
2
2
|
import registerGlobalContext from '@plasmicapp/host/registerGlobalContext';
|
|
3
|
-
import React, { useContext } from 'react';
|
|
4
3
|
import { usePlasmicQueryData } from '@plasmicapp/query';
|
|
5
|
-
import
|
|
4
|
+
import isArray from 'lodash-es/isArray';
|
|
5
|
+
import React, { useContext } from 'react';
|
|
6
6
|
|
|
7
7
|
function _regeneratorRuntime() {
|
|
8
8
|
_regeneratorRuntime = function () {
|
|
@@ -508,7 +508,7 @@ function YotpoReviews(_ref2) {
|
|
|
508
508
|
return React.createElement("div", null, " Please enter Product price and Currency");
|
|
509
509
|
}
|
|
510
510
|
var review = Object.values(reviewsData).flatMap(function (item, i) {
|
|
511
|
-
return (
|
|
511
|
+
return (isArray(item) ? item : [item]).filter(function (review) {
|
|
512
512
|
return review.id === reviewId;
|
|
513
513
|
});
|
|
514
514
|
});
|
|
@@ -645,7 +645,7 @@ function YotpoStarRating(_ref5) {
|
|
|
645
645
|
return React.createElement("div", null, "Please configure the Yotpo Credentials provider with valid AppKey.");
|
|
646
646
|
}
|
|
647
647
|
var product = Object.values(reviews).flatMap(function (item, i) {
|
|
648
|
-
return (
|
|
648
|
+
return (isArray(item) ? item : [item]).filter(function (review) {
|
|
649
649
|
return review.id === productId;
|
|
650
650
|
});
|
|
651
651
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmic-yotpo.esm.js","sources":["../src/yotpo.tsx","../src/index.tsx"],"sourcesContent":["import { ComponentMeta, GlobalContextMeta } from \"@plasmicapp/host\";\nimport React, { useContext } from \"react\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\n\nimport L from \"lodash\";\nimport { ProductElement, ReviewResponse, Image } from \"./types\";\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n\nconst modulePath = \"@plasmicpkgs/plasmic-yotpo\";\n\ninterface YotpoProps {\n appKey: string;\n uToken: string;\n}\n\nconst CredentialsContext =\n React.createContext<YotpoProps | undefined>(undefined);\n\nexport const YotpoCredentialsProviderMeta: GlobalContextMeta<YotpoProps> = {\n name: \"Yotpo\",\n displayName: \"Yotpo Credentials Provider\",\n description:\n \"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).\",\n importName: \"Yotpo\",\n importPath: modulePath,\n props: {\n appKey: {\n type: \"string\",\n displayName: \"App Key\",\n description: \"App Key of your Yotpo Store \",\n },\n uToken: {\n type: \"string\",\n displayName: \"UToken\",\n description:\n \"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users.\",\n },\n },\n};\n\nexport function YotpoCredentialsProvider({\n appKey,\n uToken,\n children,\n}: React.PropsWithChildren<YotpoProps>) {\n return (\n <CredentialsContext.Provider value={{ appKey, uToken }}>\n {children}\n </CredentialsContext.Provider>\n );\n}\n\ninterface YotpoReviewsProps {\n reviewId?: string;\n productPrice?: string;\n currency?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n className?: string;\n}\n\nexport const YotpoReviewsMeta: ComponentMeta<YotpoReviewsProps> = {\n name: \"Yotpo Reviews\",\n displayName: \"Yotpo Reviews\",\n importName: \"YotpoReviews\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Reviews for your product pages \",\n defaultStyles: {\n width: \"400px\",\n height: \"600px\",\n },\n props: {\n reviewId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Review\",\n description: \"Review Widget which to be displayed\",\n },\n productPrice: {\n type: \"string\",\n displayName: \"Price\",\n description: \"Price of the Product\",\n },\n currency: {\n type: \"string\",\n displayName: \"Currency\",\n description: \"Currency\",\n },\n },\n};\n\nexport function YotpoReviews({\n reviewId,\n setControlContextData,\n productPrice,\n currency,\n className,\n}: YotpoReviewsProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n reviewId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviewsData } = usePlasmicQueryData<any | null>(\n `${cacheKey}/reviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n const { data: reviewData } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/review`,\n async () => {\n if (!reviewId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${reviewId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!reviewsData) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const data = Object.values(reviewsData).map((item: any) => item);\n \n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviewData) {\n return <div>Please choose the reviewId</div>;\n }\n\n if (!productPrice || !currency) {\n return <div> Please enter Product price and Currency</div>;\n }\n\n const review = Object.values(reviewsData).flatMap((item: any, i: number) =>\n (L.isArray(item) ? item : [item]).filter(\n (review: any) => review.id === reviewId\n )\n );\n\n const renderedData = reviewData?.response.review.products.map(\n (item: ProductElement) => {\n const imageUrl = item?.Product.images.map((image: Image) => {\n return image.image_url;\n });\n return (\n <div\n key={item.Product.id}\n className=\"yotpo yotpo-main-widget\"\n data-product-id={review[0]?.sku}\n data-price={productPrice}\n data-currency={currency}\n data-name={item?.Product.name}\n data-url={item?.Product.shorten_url}\n data-image-url={imageUrl}\n ></div>\n );\n }\n );\n return <div className={className}>{renderedData}</div>;\n}\n\ninterface YotpoStarRatingProps {\n productId: string;\n className?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n}\n\nexport const YotpoStarRatingMeta: ComponentMeta<YotpoStarRatingProps> = {\n name: \"Yotpo Star Rating\",\n displayName: \"Yotpo Star Rating\",\n importName: \"YotpoStarRating\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Star Rating for your product pages \",\n props: {\n productId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Product\",\n description: \"Product which you want to show rating\",\n },\n },\n};\n\nexport function YotpoStarRating({\n productId,\n className,\n setControlContextData,\n}: YotpoStarRatingProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n productId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviews } = usePlasmicQueryData<any | null>(\n `${cacheKey}/starReviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n const { data: review } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/starReview`,\n async () => {\n if (!productId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${productId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviews) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n\n const data = Object.values(reviews).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!review) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const product = Object.values(reviews).flatMap((item: any, i: number) =>\n (L.isArray(item) ? item : [item]).filter(\n (review: any) => review.id === productId\n )\n );\n\n const renderedData = review?.response.review.products.map(\n (item: ProductElement) => (\n <div\n className=\"yotpo bottomLine\"\n data-product-id={product[0]?.sku}\n data-url={item.Product.product_url}\n />\n )\n );\n\n return <div className={className}>{renderedData}</div>;\n}\n","import React from 'react'\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta,\n YotpoReviewsMeta,\n YotpoReviews,\n YotpoStarRating,\n YotpoStarRatingMeta\n} from \"./yotpo\";\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n registerGlobalContext: typeof registerGlobalContext;\n}) {\n const _registerComponent = <T extends React.ComponentType<any>>(\n Component: T,\n defaultMeta: ComponentMeta<React.ComponentProps<T>>\n ) => {\n if (loader) {\n loader.registerComponent(Component, defaultMeta);\n } else {\n registerComponent(Component, defaultMeta);\n }\n };\n\n if (loader) {\n loader.registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n } else {\n registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n }\n\n _registerComponent(YotpoReviews, YotpoReviewsMeta);\n _registerComponent(YotpoStarRating, YotpoStarRatingMeta);\n\n}\n\nexport * from \"./yotpo\";\n"],"names":["ensure","x","undefined","Error","modulePath","CredentialsContext","React","createContext","YotpoCredentialsProviderMeta","name","displayName","description","importName","importPath","props","appKey","type","uToken","YotpoCredentialsProvider","_ref","children","Provider","value","YotpoReviewsMeta","providesData","defaultStyles","width","height","reviewId","options","ctx","_ctx$reviews$map","_ctx$reviews","reviews","map","item","label","id","productPrice","currency","YotpoReviews","_ref2","setControlContextData","className","creds","useContext","cacheKey","JSON","stringify","useEffect","script","document","createElement","async","innerHTML","body","appendChild","removeChild","_usePlasmicQueryData","usePlasmicQueryData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","res","wrap","_callee$","_context","prev","next","method","headers","accept","fetch","sent","abrupt","json","stop","reviewsData","data","_usePlasmicQueryData2","_callee2","_callee2$","_context2","reviewData","Object","values","review","flatMap","i","L","isArray","filter","renderedData","response","products","imageUrl","Product","images","image","image_url","key","_review$","sku","shorten_url","YotpoStarRatingMeta","productId","_ctx$reviews$map2","_ctx$reviews2","YotpoStarRating","_ref5","_usePlasmicQueryData3","_callee3","_callee3$","_context3","_usePlasmicQueryData4","_callee4","_callee4$","_context4","product","_product$","product_url","registerAll","loader","_registerComponent","Component","defaultMeta","registerComponent","registerGlobalContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plasmic-yotpo.esm.js","sources":["../src/yotpo.tsx","../src/index.tsx"],"sourcesContent":["import { ComponentMeta, GlobalContextMeta } from \"@plasmicapp/host\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport isArray from \"lodash/isArray\";\nimport React, { useContext } from \"react\";\n\nimport { Image, ProductElement, ReviewResponse } from \"./types\";\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n\nconst modulePath = \"@plasmicpkgs/plasmic-yotpo\";\n\ninterface YotpoProps {\n appKey: string;\n uToken: string;\n}\n\nconst CredentialsContext = React.createContext<YotpoProps | undefined>(\n undefined\n);\n\nexport const YotpoCredentialsProviderMeta: GlobalContextMeta<YotpoProps> = {\n name: \"Yotpo\",\n displayName: \"Yotpo Credentials Provider\",\n description:\n \"Your app key is sometimes referred to as your Store ID.[get your App Key](https://support.yotpo.com/en/article/finding-your-yotpo-app-key-and-secret-key).\",\n importName: \"Yotpo\",\n importPath: modulePath,\n props: {\n appKey: {\n type: \"string\",\n displayName: \"App Key\",\n description: \"App Key of your Yotpo Store \",\n },\n uToken: {\n type: \"string\",\n displayName: \"UToken\",\n description:\n \"Utoken is required in non-public API calls to ensure private account data is accessible only by authorized users.\",\n },\n },\n};\n\nexport function YotpoCredentialsProvider({\n appKey,\n uToken,\n children,\n}: React.PropsWithChildren<YotpoProps>) {\n return (\n <CredentialsContext.Provider value={{ appKey, uToken }}>\n {children}\n </CredentialsContext.Provider>\n );\n}\n\ninterface YotpoReviewsProps {\n reviewId?: string;\n productPrice?: string;\n currency?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n className?: string;\n}\n\nexport const YotpoReviewsMeta: ComponentMeta<YotpoReviewsProps> = {\n name: \"Yotpo Reviews\",\n displayName: \"Yotpo Reviews\",\n importName: \"YotpoReviews\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Reviews for your product pages \",\n defaultStyles: {\n width: \"400px\",\n height: \"600px\",\n },\n props: {\n reviewId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Review\",\n description: \"Review Widget which to be displayed\",\n },\n productPrice: {\n type: \"string\",\n displayName: \"Price\",\n description: \"Price of the Product\",\n },\n currency: {\n type: \"string\",\n displayName: \"Currency\",\n description: \"Currency\",\n },\n },\n};\n\nexport function YotpoReviews({\n reviewId,\n setControlContextData,\n productPrice,\n currency,\n className,\n}: YotpoReviewsProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n reviewId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviewsData } = usePlasmicQueryData<any | null>(\n `${cacheKey}/reviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n const { data: reviewData } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/review`,\n async () => {\n if (!reviewId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${reviewId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!reviewsData) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const data = Object.values(reviewsData).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviewData) {\n return <div>Please choose the reviewId</div>;\n }\n\n if (!productPrice || !currency) {\n return <div> Please enter Product price and Currency</div>;\n }\n\n const review = Object.values(reviewsData).flatMap((item: any, i: number) =>\n (isArray(item) ? item : [item]).filter(\n (review: any) => review.id === reviewId\n )\n );\n\n const renderedData = reviewData?.response.review.products.map(\n (item: ProductElement) => {\n const imageUrl = item?.Product.images.map((image: Image) => {\n return image.image_url;\n });\n return (\n <div\n key={item.Product.id}\n className=\"yotpo yotpo-main-widget\"\n data-product-id={review[0]?.sku}\n data-price={productPrice}\n data-currency={currency}\n data-name={item?.Product.name}\n data-url={item?.Product.shorten_url}\n data-image-url={imageUrl}\n ></div>\n );\n }\n );\n return <div className={className}>{renderedData}</div>;\n}\n\ninterface YotpoStarRatingProps {\n productId: string;\n className?: string;\n setControlContextData?: (data: {\n reviews?: { name: string; id: number }[];\n }) => void;\n}\n\nexport const YotpoStarRatingMeta: ComponentMeta<YotpoStarRatingProps> = {\n name: \"Yotpo Star Rating\",\n displayName: \"Yotpo Star Rating\",\n importName: \"YotpoStarRating\",\n importPath: modulePath,\n providesData: true,\n description: \"Yotpo Star Rating for your product pages \",\n props: {\n productId: {\n type: \"choice\",\n options: (props, ctx) =>\n ctx?.reviews?.map((item: any) => ({\n label: item?.name,\n value: item?.id,\n })) ?? [],\n displayName: \"Product\",\n description: \"Product which you want to show rating\",\n },\n },\n};\n\nexport function YotpoStarRating({\n productId,\n className,\n setControlContextData,\n}: YotpoStarRatingProps) {\n const creds = ensure(useContext(CredentialsContext));\n const cacheKey = JSON.stringify({\n creds,\n productId,\n });\n React.useEffect(() => {\n const script = document.createElement(\"script\");\n script.type = \"text/javascript\";\n script.async = true;\n script.innerHTML = `(function e(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=true,e.src=\"//staticw2.yotpo.com/${creds.appKey}/widget.js\";var t=document.getElementsByTagName(\"script\")[0];t.parentNode.insertBefore(e,t)})();`;\n document.body.appendChild(script);\n\n return () => {\n document.body.removeChild(script);\n };\n }, [creds]);\n\n const { data: reviews } = usePlasmicQueryData<any | null>(\n `${cacheKey}/starReviews`,\n async () => {\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/v1/apps/${creds.appKey}/reviews?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n const { data: review } = usePlasmicQueryData<ReviewResponse | null>(\n `${cacheKey}/starReview`,\n async () => {\n if (!productId) {\n return undefined;\n }\n const options = {\n method: \"GET\",\n headers: {\n accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n };\n\n const res = await fetch(\n `https://api.yotpo.com/reviews/${productId}?utoken=${creds.uToken}`,\n options\n );\n return res.json();\n }\n );\n\n if (!creds.uToken || !creds.appKey) {\n return <div>Please specify a valid API Credentials: uToken,appKey</div>;\n }\n\n if (!reviews) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n\n const data = Object.values(reviews).map((item: any) => item);\n\n setControlContextData?.({\n reviews: data[0] || [],\n });\n\n if (!review) {\n return (\n <div>\n Please configure the Yotpo Credentials provider with valid AppKey.\n </div>\n );\n }\n const product = Object.values(reviews).flatMap((item: any, i: number) =>\n (isArray(item) ? item : [item]).filter(\n (review: any) => review.id === productId\n )\n );\n\n const renderedData = review?.response.review.products.map(\n (item: ProductElement) => (\n <div\n className=\"yotpo bottomLine\"\n data-product-id={product[0]?.sku}\n data-url={item.Product.product_url}\n />\n )\n );\n\n return <div className={className}>{renderedData}</div>;\n}\n","import React from 'react'\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport registerGlobalContext from \"@plasmicapp/host/registerGlobalContext\";\nimport {\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta,\n YotpoReviewsMeta,\n YotpoReviews,\n YotpoStarRating,\n YotpoStarRatingMeta\n} from \"./yotpo\";\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n registerGlobalContext: typeof registerGlobalContext;\n}) {\n const _registerComponent = <T extends React.ComponentType<any>>(\n Component: T,\n defaultMeta: ComponentMeta<React.ComponentProps<T>>\n ) => {\n if (loader) {\n loader.registerComponent(Component, defaultMeta);\n } else {\n registerComponent(Component, defaultMeta);\n }\n };\n\n if (loader) {\n loader.registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n } else {\n registerGlobalContext(\n YotpoCredentialsProvider,\n YotpoCredentialsProviderMeta\n );\n }\n\n _registerComponent(YotpoReviews, YotpoReviewsMeta);\n _registerComponent(YotpoStarRating, YotpoStarRatingMeta);\n\n}\n\nexport * from \"./yotpo\";\n"],"names":["ensure","x","undefined","Error","modulePath","CredentialsContext","React","createContext","YotpoCredentialsProviderMeta","name","displayName","description","importName","importPath","props","appKey","type","uToken","YotpoCredentialsProvider","_ref","children","Provider","value","YotpoReviewsMeta","providesData","defaultStyles","width","height","reviewId","options","ctx","_ctx$reviews$map","_ctx$reviews","reviews","map","item","label","id","productPrice","currency","YotpoReviews","_ref2","setControlContextData","className","creds","useContext","cacheKey","JSON","stringify","useEffect","script","document","createElement","async","innerHTML","body","appendChild","removeChild","_usePlasmicQueryData","usePlasmicQueryData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","res","wrap","_callee$","_context","prev","next","method","headers","accept","fetch","sent","abrupt","json","stop","reviewsData","data","_usePlasmicQueryData2","_callee2","_callee2$","_context2","reviewData","Object","values","review","flatMap","i","isArray","filter","renderedData","response","products","imageUrl","Product","images","image","image_url","key","_review$","sku","shorten_url","YotpoStarRatingMeta","productId","_ctx$reviews$map2","_ctx$reviews2","YotpoStarRating","_ref5","_usePlasmicQueryData3","_callee3","_callee3$","_context3","_usePlasmicQueryData4","_callee4","_callee4$","_context4","product","_product$","product_url","registerAll","loader","_registerComponent","Component","defaultMeta","registerComponent","registerGlobalContext"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/plasmic-yotpo",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"description": "Plasmic Yotpo components.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
}
|
|
35
35
|
],
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@plasmicapp/host": "1.0.
|
|
38
|
-
"@plasmicapp/query": "0.1.
|
|
37
|
+
"@plasmicapp/host": "1.0.173",
|
|
38
|
+
"@plasmicapp/query": "0.1.74",
|
|
39
39
|
"@size-limit/preset-small-lib": "^7.0.8",
|
|
40
40
|
"@types/dlv": "^1.1.2",
|
|
41
41
|
"@types/react": "^18.0.27",
|
|
@@ -53,5 +53,5 @@
|
|
|
53
53
|
"dlv": "^1.1.3",
|
|
54
54
|
"lodash": "^4.17.21"
|
|
55
55
|
},
|
|
56
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "7e568e741a82d5b77452edbc4d8d4492bf02441f"
|
|
57
57
|
}
|