@ndla/image-search 11.0.157-alpha.0 → 11.0.159-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/PreviewImage.mjs +1 -0
- package/es/PreviewImage.mjs.map +1 -1
- package/lib/PreviewImage.js +1 -0
- package/lib/PreviewImage.js.map +1 -1
- package/package.json +6 -6
package/es/PreviewImage.mjs
CHANGED
|
@@ -97,6 +97,7 @@ const PreviewImage = ({ id, image, onSelectImage, showCheckbox, translations, lo
|
|
|
97
97
|
contentType: image.image.contentType,
|
|
98
98
|
fileSize: image.image.size,
|
|
99
99
|
imageDimensions: image.image.dimensions,
|
|
100
|
+
originalDate: image.image.originalDate,
|
|
100
101
|
locale
|
|
101
102
|
}),
|
|
102
103
|
!!image.tags.tags.length && /* @__PURE__ */ jsxs(HashTagGroup, { children: [/* @__PURE__ */ jsx(Text, {
|
package/es/PreviewImage.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewImage.mjs","names":[],"sources":["../src/PreviewImage.tsx"],"sourcesContent":["/**\n * Copyright (c) 2017-present, NDLA.\n *\n * This source code is licensed under the GPLv3 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { CloseLine, HashTag, CheckLine } from \"@ndla/icons\";\nimport { getModelReleaseValue } from \"@ndla/licenses\";\nimport {\n Button,\n CheckboxControl,\n CheckboxHiddenInput,\n CheckboxIndicator,\n CheckboxLabel,\n CheckboxRoot,\n Text,\n Image,\n IconButton,\n FieldRoot,\n} from \"@ndla/primitives\";\nimport { styled } from \"@ndla/styled-system/jsx\";\nimport type { ImageMetaInformationV3DTO } from \"@ndla/types-backend/image-api\";\nimport { useState } from \"react\";\nimport { ImageMeta } from \"./ImageMeta\";\nimport type { PreviewTranslations } from \"./types\";\nimport { getSrcSets } from \"./util/imageUtil\";\n\nconst ImageContainer = styled(\"div\", {\n base: {\n flexShrink: \"0\",\n },\n});\n\nconst StyledImage = styled(Image, {\n base: {\n maxHeight: \"surface.xsmall\",\n },\n});\n\nconst StyledImageMetadata = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"xxsmall\",\n },\n});\n\nconst HashTagWrapper = styled(\"ul\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst HashTagGroup = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst StyledTagItem = styled(\"li\", {\n base: {\n display: \"flex\",\n alignItems: \"center\",\n },\n});\n\nconst StyledPreview = styled(\"div\", {\n base: {\n display: \"flex\",\n gridColumn: \"1 / -1\",\n borderColor: \"stroke.default\",\n border: \"1px solid\",\n borderRadius: \"xsmall\",\n gap: \"small\",\n padding: \"small\",\n flexWrap: \"wrap\",\n overflow: \"hidden\",\n },\n});\n\nconst StyledTopRow = styled(\"div\", {\n base: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n});\n\nconst ContentWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"medium\",\n flex: \"2\",\n },\n});\n\nconst ActionsWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"small\",\n marginBlockEnd: \"medium\",\n },\n});\n\nconst StyledFieldRoot = styled(FieldRoot, {\n base: { alignSelf: \"center\" },\n});\n\ninterface Props {\n id: string;\n image: ImageMetaInformationV3DTO;\n onSelectImage: (image: ImageMetaInformationV3DTO | undefined, saveAsMetaImage?: boolean) => void;\n showCheckbox: boolean;\n translations: PreviewTranslations;\n locale: string;\n}\n\nexport const PreviewImage = ({ id, image, onSelectImage, showCheckbox, translations, locale }: Props) => {\n const [saveAsMetaImage, setSaveAsMetaImage] = useState(false);\n\n return (\n <StyledPreview id={id}>\n <ImageContainer>\n <StyledImage\n alt=\"\"\n srcSet={getSrcSets(image.image.imageUrl)}\n sizes=\"(min-width: 800px) 360px, (min-width: 400px) 300px, 100vw\"\n src={image.image.imageUrl}\n aria-label={image.title.title}\n variant=\"rounded\"\n />\n </ImageContainer>\n <ContentWrapper>\n <StyledImageMetadata>\n <StyledTopRow>\n <Text textStyle=\"title.medium\">\n {image.title.title.trim() ? image.title.title : (translations.missingTitleFallback ?? `ID: ${image.id}`)}\n </Text>\n <IconButton\n variant=\"tertiary\"\n onClick={() => onSelectImage(undefined)}\n aria-label={translations.close}\n title={translations.close}\n >\n <CloseLine />\n </IconButton>\n </StyledTopRow>\n {!!image.copyright.creators.length && (\n <Text>\n <b>{`${translations.creatorsLabel}: `}</b>\n {image.copyright.creators.map((creator) => creator.name).join(\", \")}\n </Text>\n )}\n {!!image.copyright.license.description?.trim() && (\n <Text>\n <b>{`${translations.license}: `}</b>\n {image.copyright.license.description}\n </Text>\n )}\n {!!image.caption.caption.trim() && (\n <Text>\n <b>{`${translations.caption}: `}</b>\n {image.caption.caption}\n </Text>\n )}\n {!!image.alttext.alttext.trim() && (\n <Text>\n <b>{`${translations.altText}:`}</b> {image.alttext.alttext}\n </Text>\n )}\n {!!image.modelRelease.trim() && (\n <Text>\n <b>{`${translations.modelRelease}: `}</b>\n {getModelReleaseValue(image.modelRelease, locale)}\n </Text>\n )}\n <ImageMeta\n contentType={image.image.contentType}\n fileSize={image.image.size}\n imageDimensions={image.image.dimensions}\n locale={locale}\n />\n {!!image.tags.tags.length && (\n <HashTagGroup>\n <Text id=\"tags-title\">\n <b>{`${translations.tags}: `}</b>\n </Text>\n <HashTagWrapper aria-describedby=\"tags-title\">\n {image.tags.tags.map((tag) => (\n <StyledTagItem key={tag}>\n <HashTag size=\"small\" />\n {tag}\n </StyledTagItem>\n ))}\n </HashTagWrapper>\n </HashTagGroup>\n )}\n </StyledImageMetadata>\n <ActionsWrapper>\n <Button data-testid=\"use-image\" onClick={() => onSelectImage(image, saveAsMetaImage)}>\n {translations.useImageTitle}\n </Button>\n {!!showCheckbox && (\n <StyledFieldRoot>\n <CheckboxRoot checked={saveAsMetaImage} onCheckedChange={() => setSaveAsMetaImage((prev) => !prev)}>\n <CheckboxControl>\n <CheckboxIndicator asChild>\n <CheckLine />\n </CheckboxIndicator>\n </CheckboxControl>\n <CheckboxLabel>{translations.checkboxLabel}</CheckboxLabel>\n <CheckboxHiddenInput />\n </CheckboxRoot>\n </StyledFieldRoot>\n )}\n </ActionsWrapper>\n </ContentWrapper>\n </StyledPreview>\n );\n};\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PreviewImage.mjs","names":[],"sources":["../src/PreviewImage.tsx"],"sourcesContent":["/**\n * Copyright (c) 2017-present, NDLA.\n *\n * This source code is licensed under the GPLv3 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { CloseLine, HashTag, CheckLine } from \"@ndla/icons\";\nimport { getModelReleaseValue } from \"@ndla/licenses\";\nimport {\n Button,\n CheckboxControl,\n CheckboxHiddenInput,\n CheckboxIndicator,\n CheckboxLabel,\n CheckboxRoot,\n Text,\n Image,\n IconButton,\n FieldRoot,\n} from \"@ndla/primitives\";\nimport { styled } from \"@ndla/styled-system/jsx\";\nimport type { ImageMetaInformationV3DTO } from \"@ndla/types-backend/image-api\";\nimport { useState } from \"react\";\nimport { ImageMeta } from \"./ImageMeta\";\nimport type { PreviewTranslations } from \"./types\";\nimport { getSrcSets } from \"./util/imageUtil\";\n\nconst ImageContainer = styled(\"div\", {\n base: {\n flexShrink: \"0\",\n },\n});\n\nconst StyledImage = styled(Image, {\n base: {\n maxHeight: \"surface.xsmall\",\n },\n});\n\nconst StyledImageMetadata = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"xxsmall\",\n },\n});\n\nconst HashTagWrapper = styled(\"ul\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst HashTagGroup = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst StyledTagItem = styled(\"li\", {\n base: {\n display: \"flex\",\n alignItems: \"center\",\n },\n});\n\nconst StyledPreview = styled(\"div\", {\n base: {\n display: \"flex\",\n gridColumn: \"1 / -1\",\n borderColor: \"stroke.default\",\n border: \"1px solid\",\n borderRadius: \"xsmall\",\n gap: \"small\",\n padding: \"small\",\n flexWrap: \"wrap\",\n overflow: \"hidden\",\n },\n});\n\nconst StyledTopRow = styled(\"div\", {\n base: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n});\n\nconst ContentWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"medium\",\n flex: \"2\",\n },\n});\n\nconst ActionsWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"small\",\n marginBlockEnd: \"medium\",\n },\n});\n\nconst StyledFieldRoot = styled(FieldRoot, {\n base: { alignSelf: \"center\" },\n});\n\ninterface Props {\n id: string;\n image: ImageMetaInformationV3DTO;\n onSelectImage: (image: ImageMetaInformationV3DTO | undefined, saveAsMetaImage?: boolean) => void;\n showCheckbox: boolean;\n translations: PreviewTranslations;\n locale: string;\n}\n\nexport const PreviewImage = ({ id, image, onSelectImage, showCheckbox, translations, locale }: Props) => {\n const [saveAsMetaImage, setSaveAsMetaImage] = useState(false);\n\n return (\n <StyledPreview id={id}>\n <ImageContainer>\n <StyledImage\n alt=\"\"\n srcSet={getSrcSets(image.image.imageUrl)}\n sizes=\"(min-width: 800px) 360px, (min-width: 400px) 300px, 100vw\"\n src={image.image.imageUrl}\n aria-label={image.title.title}\n variant=\"rounded\"\n />\n </ImageContainer>\n <ContentWrapper>\n <StyledImageMetadata>\n <StyledTopRow>\n <Text textStyle=\"title.medium\">\n {image.title.title.trim() ? image.title.title : (translations.missingTitleFallback ?? `ID: ${image.id}`)}\n </Text>\n <IconButton\n variant=\"tertiary\"\n onClick={() => onSelectImage(undefined)}\n aria-label={translations.close}\n title={translations.close}\n >\n <CloseLine />\n </IconButton>\n </StyledTopRow>\n {!!image.copyright.creators.length && (\n <Text>\n <b>{`${translations.creatorsLabel}: `}</b>\n {image.copyright.creators.map((creator) => creator.name).join(\", \")}\n </Text>\n )}\n {!!image.copyright.license.description?.trim() && (\n <Text>\n <b>{`${translations.license}: `}</b>\n {image.copyright.license.description}\n </Text>\n )}\n {!!image.caption.caption.trim() && (\n <Text>\n <b>{`${translations.caption}: `}</b>\n {image.caption.caption}\n </Text>\n )}\n {!!image.alttext.alttext.trim() && (\n <Text>\n <b>{`${translations.altText}:`}</b> {image.alttext.alttext}\n </Text>\n )}\n {!!image.modelRelease.trim() && (\n <Text>\n <b>{`${translations.modelRelease}: `}</b>\n {getModelReleaseValue(image.modelRelease, locale)}\n </Text>\n )}\n <ImageMeta\n contentType={image.image.contentType}\n fileSize={image.image.size}\n imageDimensions={image.image.dimensions}\n originalDate={image.image.originalDate}\n locale={locale}\n />\n {!!image.tags.tags.length && (\n <HashTagGroup>\n <Text id=\"tags-title\">\n <b>{`${translations.tags}: `}</b>\n </Text>\n <HashTagWrapper aria-describedby=\"tags-title\">\n {image.tags.tags.map((tag) => (\n <StyledTagItem key={tag}>\n <HashTag size=\"small\" />\n {tag}\n </StyledTagItem>\n ))}\n </HashTagWrapper>\n </HashTagGroup>\n )}\n </StyledImageMetadata>\n <ActionsWrapper>\n <Button data-testid=\"use-image\" onClick={() => onSelectImage(image, saveAsMetaImage)}>\n {translations.useImageTitle}\n </Button>\n {!!showCheckbox && (\n <StyledFieldRoot>\n <CheckboxRoot checked={saveAsMetaImage} onCheckedChange={() => setSaveAsMetaImage((prev) => !prev)}>\n <CheckboxControl>\n <CheckboxIndicator asChild>\n <CheckLine />\n </CheckboxIndicator>\n </CheckboxControl>\n <CheckboxLabel>{translations.checkboxLabel}</CheckboxLabel>\n <CheckboxHiddenInput />\n </CheckboxRoot>\n </StyledFieldRoot>\n )}\n </ActionsWrapper>\n </ContentWrapper>\n </StyledPreview>\n );\n};\n"],"mappings":"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"}
|
package/lib/PreviewImage.js
CHANGED
|
@@ -97,6 +97,7 @@ const PreviewImage = ({ id, image, onSelectImage, showCheckbox, translations, lo
|
|
|
97
97
|
contentType: image.image.contentType,
|
|
98
98
|
fileSize: image.image.size,
|
|
99
99
|
imageDimensions: image.image.dimensions,
|
|
100
|
+
originalDate: image.image.originalDate,
|
|
100
101
|
locale
|
|
101
102
|
}),
|
|
102
103
|
!!image.tags.tags.length && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(HashTagGroup, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ndla_primitives.Text, {
|
package/lib/PreviewImage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewImage.js","names":["Image","FieldRoot","getSrcSets","Text","IconButton","CloseLine","ImageMeta","HashTag","Button","CheckboxRoot","CheckboxControl","CheckboxIndicator","CheckLine","CheckboxLabel","CheckboxHiddenInput"],"sources":["../src/PreviewImage.tsx"],"sourcesContent":["/**\n * Copyright (c) 2017-present, NDLA.\n *\n * This source code is licensed under the GPLv3 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { CloseLine, HashTag, CheckLine } from \"@ndla/icons\";\nimport { getModelReleaseValue } from \"@ndla/licenses\";\nimport {\n Button,\n CheckboxControl,\n CheckboxHiddenInput,\n CheckboxIndicator,\n CheckboxLabel,\n CheckboxRoot,\n Text,\n Image,\n IconButton,\n FieldRoot,\n} from \"@ndla/primitives\";\nimport { styled } from \"@ndla/styled-system/jsx\";\nimport type { ImageMetaInformationV3DTO } from \"@ndla/types-backend/image-api\";\nimport { useState } from \"react\";\nimport { ImageMeta } from \"./ImageMeta\";\nimport type { PreviewTranslations } from \"./types\";\nimport { getSrcSets } from \"./util/imageUtil\";\n\nconst ImageContainer = styled(\"div\", {\n base: {\n flexShrink: \"0\",\n },\n});\n\nconst StyledImage = styled(Image, {\n base: {\n maxHeight: \"surface.xsmall\",\n },\n});\n\nconst StyledImageMetadata = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"xxsmall\",\n },\n});\n\nconst HashTagWrapper = styled(\"ul\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst HashTagGroup = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst StyledTagItem = styled(\"li\", {\n base: {\n display: \"flex\",\n alignItems: \"center\",\n },\n});\n\nconst StyledPreview = styled(\"div\", {\n base: {\n display: \"flex\",\n gridColumn: \"1 / -1\",\n borderColor: \"stroke.default\",\n border: \"1px solid\",\n borderRadius: \"xsmall\",\n gap: \"small\",\n padding: \"small\",\n flexWrap: \"wrap\",\n overflow: \"hidden\",\n },\n});\n\nconst StyledTopRow = styled(\"div\", {\n base: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n});\n\nconst ContentWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"medium\",\n flex: \"2\",\n },\n});\n\nconst ActionsWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"small\",\n marginBlockEnd: \"medium\",\n },\n});\n\nconst StyledFieldRoot = styled(FieldRoot, {\n base: { alignSelf: \"center\" },\n});\n\ninterface Props {\n id: string;\n image: ImageMetaInformationV3DTO;\n onSelectImage: (image: ImageMetaInformationV3DTO | undefined, saveAsMetaImage?: boolean) => void;\n showCheckbox: boolean;\n translations: PreviewTranslations;\n locale: string;\n}\n\nexport const PreviewImage = ({ id, image, onSelectImage, showCheckbox, translations, locale }: Props) => {\n const [saveAsMetaImage, setSaveAsMetaImage] = useState(false);\n\n return (\n <StyledPreview id={id}>\n <ImageContainer>\n <StyledImage\n alt=\"\"\n srcSet={getSrcSets(image.image.imageUrl)}\n sizes=\"(min-width: 800px) 360px, (min-width: 400px) 300px, 100vw\"\n src={image.image.imageUrl}\n aria-label={image.title.title}\n variant=\"rounded\"\n />\n </ImageContainer>\n <ContentWrapper>\n <StyledImageMetadata>\n <StyledTopRow>\n <Text textStyle=\"title.medium\">\n {image.title.title.trim() ? image.title.title : (translations.missingTitleFallback ?? `ID: ${image.id}`)}\n </Text>\n <IconButton\n variant=\"tertiary\"\n onClick={() => onSelectImage(undefined)}\n aria-label={translations.close}\n title={translations.close}\n >\n <CloseLine />\n </IconButton>\n </StyledTopRow>\n {!!image.copyright.creators.length && (\n <Text>\n <b>{`${translations.creatorsLabel}: `}</b>\n {image.copyright.creators.map((creator) => creator.name).join(\", \")}\n </Text>\n )}\n {!!image.copyright.license.description?.trim() && (\n <Text>\n <b>{`${translations.license}: `}</b>\n {image.copyright.license.description}\n </Text>\n )}\n {!!image.caption.caption.trim() && (\n <Text>\n <b>{`${translations.caption}: `}</b>\n {image.caption.caption}\n </Text>\n )}\n {!!image.alttext.alttext.trim() && (\n <Text>\n <b>{`${translations.altText}:`}</b> {image.alttext.alttext}\n </Text>\n )}\n {!!image.modelRelease.trim() && (\n <Text>\n <b>{`${translations.modelRelease}: `}</b>\n {getModelReleaseValue(image.modelRelease, locale)}\n </Text>\n )}\n <ImageMeta\n contentType={image.image.contentType}\n fileSize={image.image.size}\n imageDimensions={image.image.dimensions}\n locale={locale}\n />\n {!!image.tags.tags.length && (\n <HashTagGroup>\n <Text id=\"tags-title\">\n <b>{`${translations.tags}: `}</b>\n </Text>\n <HashTagWrapper aria-describedby=\"tags-title\">\n {image.tags.tags.map((tag) => (\n <StyledTagItem key={tag}>\n <HashTag size=\"small\" />\n {tag}\n </StyledTagItem>\n ))}\n </HashTagWrapper>\n </HashTagGroup>\n )}\n </StyledImageMetadata>\n <ActionsWrapper>\n <Button data-testid=\"use-image\" onClick={() => onSelectImage(image, saveAsMetaImage)}>\n {translations.useImageTitle}\n </Button>\n {!!showCheckbox && (\n <StyledFieldRoot>\n <CheckboxRoot checked={saveAsMetaImage} onCheckedChange={() => setSaveAsMetaImage((prev) => !prev)}>\n <CheckboxControl>\n <CheckboxIndicator asChild>\n <CheckLine />\n </CheckboxIndicator>\n </CheckboxControl>\n <CheckboxLabel>{translations.checkboxLabel}</CheckboxLabel>\n <CheckboxHiddenInput />\n </CheckboxRoot>\n </StyledFieldRoot>\n )}\n </ActionsWrapper>\n </ContentWrapper>\n </StyledPreview>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PreviewImage.js","names":["Image","FieldRoot","getSrcSets","Text","IconButton","CloseLine","ImageMeta","HashTag","Button","CheckboxRoot","CheckboxControl","CheckboxIndicator","CheckLine","CheckboxLabel","CheckboxHiddenInput"],"sources":["../src/PreviewImage.tsx"],"sourcesContent":["/**\n * Copyright (c) 2017-present, NDLA.\n *\n * This source code is licensed under the GPLv3 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { CloseLine, HashTag, CheckLine } from \"@ndla/icons\";\nimport { getModelReleaseValue } from \"@ndla/licenses\";\nimport {\n Button,\n CheckboxControl,\n CheckboxHiddenInput,\n CheckboxIndicator,\n CheckboxLabel,\n CheckboxRoot,\n Text,\n Image,\n IconButton,\n FieldRoot,\n} from \"@ndla/primitives\";\nimport { styled } from \"@ndla/styled-system/jsx\";\nimport type { ImageMetaInformationV3DTO } from \"@ndla/types-backend/image-api\";\nimport { useState } from \"react\";\nimport { ImageMeta } from \"./ImageMeta\";\nimport type { PreviewTranslations } from \"./types\";\nimport { getSrcSets } from \"./util/imageUtil\";\n\nconst ImageContainer = styled(\"div\", {\n base: {\n flexShrink: \"0\",\n },\n});\n\nconst StyledImage = styled(Image, {\n base: {\n maxHeight: \"surface.xsmall\",\n },\n});\n\nconst StyledImageMetadata = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"xxsmall\",\n },\n});\n\nconst HashTagWrapper = styled(\"ul\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst HashTagGroup = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"xxsmall\",\n flexWrap: \"wrap\",\n },\n});\n\nconst StyledTagItem = styled(\"li\", {\n base: {\n display: \"flex\",\n alignItems: \"center\",\n },\n});\n\nconst StyledPreview = styled(\"div\", {\n base: {\n display: \"flex\",\n gridColumn: \"1 / -1\",\n borderColor: \"stroke.default\",\n border: \"1px solid\",\n borderRadius: \"xsmall\",\n gap: \"small\",\n padding: \"small\",\n flexWrap: \"wrap\",\n overflow: \"hidden\",\n },\n});\n\nconst StyledTopRow = styled(\"div\", {\n base: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n});\n\nconst ContentWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"medium\",\n flex: \"2\",\n },\n});\n\nconst ActionsWrapper = styled(\"div\", {\n base: {\n display: \"flex\",\n gap: \"small\",\n marginBlockEnd: \"medium\",\n },\n});\n\nconst StyledFieldRoot = styled(FieldRoot, {\n base: { alignSelf: \"center\" },\n});\n\ninterface Props {\n id: string;\n image: ImageMetaInformationV3DTO;\n onSelectImage: (image: ImageMetaInformationV3DTO | undefined, saveAsMetaImage?: boolean) => void;\n showCheckbox: boolean;\n translations: PreviewTranslations;\n locale: string;\n}\n\nexport const PreviewImage = ({ id, image, onSelectImage, showCheckbox, translations, locale }: Props) => {\n const [saveAsMetaImage, setSaveAsMetaImage] = useState(false);\n\n return (\n <StyledPreview id={id}>\n <ImageContainer>\n <StyledImage\n alt=\"\"\n srcSet={getSrcSets(image.image.imageUrl)}\n sizes=\"(min-width: 800px) 360px, (min-width: 400px) 300px, 100vw\"\n src={image.image.imageUrl}\n aria-label={image.title.title}\n variant=\"rounded\"\n />\n </ImageContainer>\n <ContentWrapper>\n <StyledImageMetadata>\n <StyledTopRow>\n <Text textStyle=\"title.medium\">\n {image.title.title.trim() ? image.title.title : (translations.missingTitleFallback ?? `ID: ${image.id}`)}\n </Text>\n <IconButton\n variant=\"tertiary\"\n onClick={() => onSelectImage(undefined)}\n aria-label={translations.close}\n title={translations.close}\n >\n <CloseLine />\n </IconButton>\n </StyledTopRow>\n {!!image.copyright.creators.length && (\n <Text>\n <b>{`${translations.creatorsLabel}: `}</b>\n {image.copyright.creators.map((creator) => creator.name).join(\", \")}\n </Text>\n )}\n {!!image.copyright.license.description?.trim() && (\n <Text>\n <b>{`${translations.license}: `}</b>\n {image.copyright.license.description}\n </Text>\n )}\n {!!image.caption.caption.trim() && (\n <Text>\n <b>{`${translations.caption}: `}</b>\n {image.caption.caption}\n </Text>\n )}\n {!!image.alttext.alttext.trim() && (\n <Text>\n <b>{`${translations.altText}:`}</b> {image.alttext.alttext}\n </Text>\n )}\n {!!image.modelRelease.trim() && (\n <Text>\n <b>{`${translations.modelRelease}: `}</b>\n {getModelReleaseValue(image.modelRelease, locale)}\n </Text>\n )}\n <ImageMeta\n contentType={image.image.contentType}\n fileSize={image.image.size}\n imageDimensions={image.image.dimensions}\n originalDate={image.image.originalDate}\n locale={locale}\n />\n {!!image.tags.tags.length && (\n <HashTagGroup>\n <Text id=\"tags-title\">\n <b>{`${translations.tags}: `}</b>\n </Text>\n <HashTagWrapper aria-describedby=\"tags-title\">\n {image.tags.tags.map((tag) => (\n <StyledTagItem key={tag}>\n <HashTag size=\"small\" />\n {tag}\n </StyledTagItem>\n ))}\n </HashTagWrapper>\n </HashTagGroup>\n )}\n </StyledImageMetadata>\n <ActionsWrapper>\n <Button data-testid=\"use-image\" onClick={() => onSelectImage(image, saveAsMetaImage)}>\n {translations.useImageTitle}\n </Button>\n {!!showCheckbox && (\n <StyledFieldRoot>\n <CheckboxRoot checked={saveAsMetaImage} onCheckedChange={() => setSaveAsMetaImage((prev) => !prev)}>\n <CheckboxControl>\n <CheckboxIndicator asChild>\n <CheckLine />\n </CheckboxIndicator>\n </CheckboxControl>\n <CheckboxLabel>{translations.checkboxLabel}</CheckboxLabel>\n <CheckboxHiddenInput />\n </CheckboxRoot>\n </StyledFieldRoot>\n )}\n </ActionsWrapper>\n </ContentWrapper>\n </StyledPreview>\n );\n};\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ndla/image-search",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "11.0.
|
|
4
|
+
"version": "11.0.159-alpha.0",
|
|
5
5
|
"description": "A simple library for searching images from NDLA",
|
|
6
6
|
"license": "GPL-3.0",
|
|
7
7
|
"exports": {
|
|
@@ -30,14 +30,14 @@
|
|
|
30
30
|
"es"
|
|
31
31
|
],
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@ndla/icons": "^8.0.
|
|
33
|
+
"@ndla/icons": "^8.0.91-alpha.0",
|
|
34
34
|
"@ndla/licenses": "^10.0.12-alpha.0",
|
|
35
|
-
"@ndla/primitives": "^1.0.
|
|
36
|
-
"@ndla/styled-system": "^0.0.
|
|
35
|
+
"@ndla/primitives": "^1.0.132-alpha.0",
|
|
36
|
+
"@ndla/styled-system": "^0.0.51",
|
|
37
37
|
"@ndla/util": "^5.0.21-alpha.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@ndla/preset-panda": "^0.0.
|
|
40
|
+
"@ndla/preset-panda": "^0.0.78",
|
|
41
41
|
"@ndla/types-backend": "^1.0.125",
|
|
42
42
|
"@pandacss/dev": "^1.10.0"
|
|
43
43
|
},
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"publishConfig": {
|
|
49
49
|
"access": "public"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "759d1a57b0a7ad06e831472aae9f8fba287d552e"
|
|
52
52
|
}
|