todo: write description implementing the Image API 3.0
Crop (Not Crop API entity): Primarily used for redefining the source image. Focal Point: Used primarily for "Art Direction" when automatically sizing images so we don't loose focus
- Requirements
Recommended modules- Installation
- Configuration
- Troubleshooting
- FAQ
- Maintainers
- Changelog
todo: add reqs.
Install as you would normally install a contributed Drupal module.
todo: write configuration.
todo:
Q: What kind of questions are being asked?
A: i dunno...
- Pete Inge - pingevt
Field:
- Field - should just be a copy of a text field
- Field has settings for server/prefix
- re-work Drupal\iiif_media_source\Plugin\Field\FieldType\IiifId:getImg() so it doesn't require the values param.
- Could add in some validation? but not sure what that would be... https://iiif.io/api/image/3.0/#2-uri-syntax
- getLocalThumbnailUri() still has hardcoded URLs.
- Default Widget should just be plain text, i think.
- Default Formatter should just display ID.
- need to verify and have fallbacks for each section.
- Add in loading attribute (lazy, eager) to basic formatter.
- Secondary (basic image) Widget includes image thumbnail.
- Secondary (basic image) Formatter, should implement and validate all the uri options.
- Do we need the base Iiif class?
- If so, needs to be a service?
- Inject it into the field class?
Image Styles / Responsive Images
- Image Style entity
- Responsive Image style entity
- IIIF Image style formatter
- IIIF Responsive Image style formatter
- We're going to need plugins... Imagestyle with plugins for the transformers.
- Add in some default IIIF Image Styles
- Admin library w/ CSS.
- Add in preview on Image Styles.
- Document plugin so others can create plugins.
- Documentation and helper text for forms.
- Fix errors when using "original image" for responsive images
Media Source
- Source just provides data for fields, if wanted on the media item.
- Provides:
- version
- width
- height
- sizes
- tiles???
- formats
- qualities
- maxArea
- maxHeight
- maxWidth
- supports
Submodule: Image Handling
- Class to handle form elements for adding to widgets.
- Need logic for 1 or other handlers.
- Class to handle form elements for own widgets.
- Need a common (CSS) library.
Submodule: Focalpoint
- Add in widget to define a focal point of the image.
- Third party settings or something so we can combine everything into 1 form element.
- Add third party settings for thumbnail size
- Allow for Contextual Media field
- Make sure settings are correct for Widget and 3rd party settings. (Add Test)
Submodule: Crop
- Add in widget to define a crop for the image.
- Third party settings or something so we can combine everything into 1 form element.
- Add third party settings for thumbnail size
- "Drupalize" js file.
- Need JS solution to hide field (copy from FP)
- Settings Page to variabalize settings for the cropper.js plugin.
- Allow for Contextual Media field
- Make sure settings are correct for Widget and 3rd party settings. (Add Test)
General:
- Check and confirm Config inspector
- Process js/css files
Tests:
- Unit Tests
- Need to test and finish Dimension in
IiifImageUrlParams
- Need to test and finish Dimension in
- Functional Tests
- [ ]
- Browser Tests
- Check each image style effect and combination. We should be able to set it and check the end of any image url string.
- Check responsive images
- Check "fallbacks" for responsive images
- lazy and eager loading attr
- Default IIIF Image Formatter
- Crop Image Formatter
- Focal Point Image formatter