{"ref":"artifact:marianfoo-ui5-cc-dayjs","page":"/artifacts/marianfoo-ui5-cc-dayjs","json":"/artifacts/marianfoo-ui5-cc-dayjs.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"marianfoo-ui5-cc-dayjs","name":"@marianfoo/ui5-cc-dayjs","artifact_type":"package","ecosystem":"ui5","domain":"ui-and-frontend-bridge","origin_ring":"independent","description":{"one_line":"A UI5 custom control that writes a date to the page through [Day.js](external:dayjs), with the input format, the output format and any shift of days or months set as control properties.","short":"UI5 custom control formatting dates with Day.js","what_it_solves":"Two controls declared in an XML view under the `ui5-community.dayjs` namespace, both extending `sap.m.Text`. DayjsText renders one date and takes `value`, `inputFormat`, `outputFormat` and a `manipulate` property covering add, subtract, startOf and endOf; DayjsDiff renders the distance between two dates in a unit the view names, as an integer or a float and optionally absolute. Both read the locale from the Fiori launchpad where there is one and from the browser otherwise, and `getDayjsObject` hands back the underlying Day.js object where the properties do not reach. It renders text: neither control takes input, so a date a user edits still goes through the framework's own types and a date picker."},"links":{"repo":"https://github.com/marianfoo/ui5-dayjs","npm":"https://www.npmjs.com/package/@marianfoo/ui5-cc-dayjs"},"type_properties":{"placement":{"value":"in-host","sources":[{"url":"https://github.com/marianfoo/ui5-dayjs","title":"@marianfoo/ui5-cc-dayjs — README","checked":"2026-10-18","quote":"Usage of dayjs directly in a UI5 custom control."}]},"distribution":{"value":["npm"],"sources":[{"url":"https://github.com/marianfoo/ui5-dayjs","title":"@marianfoo/ui5-cc-dayjs — README","checked":"2026-10-18","quote":"> yarn add @marianfoo/ui5-cc-dayjs"}]}},"identity":{"license":"Apache-2.0 or the Derived Beer-ware License, at the user's choice"},"provides":[{"capability":"capability:ui5-custom-controls","what_it_does":"Wraps Day.js as two controls a view can declare, so formatting, shifting and comparing a date happen in the control rather than in a formatter function of the app's own.","sources":[{"url":"https://github.com/marianfoo/ui5-dayjs","title":"marianfoo/ui5-dayjs — README","checked":"2026-09-25","quote":"Usage of dayjs directly in a UI5 custom control."},{"url":"https://github.com/marianfoo/ui5-dayjs","title":"marianfoo/ui5-dayjs — README, Features","checked":"2026-09-25","quote":"use custom input and output formats (i.e. input format `YYYY-MM-DD` and output format `We/May/2022`)"}]}],"requires":[{"ref":"external:dayjs","for":"The library that parses, formats and shifts the date; the controls expose its options as properties and return its object from getDayjsObject.","sources":[{"url":"https://github.com/marianfoo/ui5-dayjs","title":"marianfoo/ui5-dayjs — README","checked":"2026-09-25","quote":"Dayjs is a JavaScript library for parsing, validating, and formatting dates."}]}],"maintainers":["actor:marianfoo"],"source_available":true,"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:github-orgs","channel":"marianfoo"}],"first_seen":"2026-09-25"},"contributors":["actor:marianfoo"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"one contributor, personally owned"},{"label":"Repository","tier":"poor","evidence":"pushed 2022-06, not archived"}],"compatibility":[{"label":"Declared for","tier":"unknown","evidence":"no UI5 release lines in the atlas"},{"label":"Survived majors","tier":"unknown","evidence":"no UI5 release lines in the atlas"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"good","evidence":"22 test files"},{"label":"Docs","tier":"good","evidence":"README 5 KB"},{"label":"Changelog","tier":"good","evidence":"CHANGELOG in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":2,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":2,"forks":1,"open_issues":0,"archived":false,"pushed_at":"2022-06-15","license_spdx":null,"org_owned":false,"default_branch":"main","created_at":"2022-02-20T16:51:23Z","open_prs":0,"tree_truncated":false,"test_files":22,"workflows":0,"other_ci":false,"readme_bytes":4699,"docs_files":0,"changelog":true,"license_file":false,"dts_files":0,"first_commit":"2022-02-20","last_commit":"2022-06-15","commits":12,"contributors":1,"readme_path":"README.md","readme_sha":"c95482d9a45538977f63c85bfeab3d65c6d0a422","repo_read":"2026-10-26"},"release_notes":{"license":"Apache-2.0 or the Derived Beer-ware License, at the user's choice","quotable":false,"source":{"kind":"repo","path":"CHANGELOG","ref":"main","url":"https://github.com/marianfoo/ui5-dayjs/blob/main/CHANGELOG"},"format":"keep-a-changelog","releases":[{"version":"0.0.5","date":"2022-02-27","date_source":"heading","heading":"[0.0.5] - 2022-02-27","url":"https://github.com/marianfoo/ui5-dayjs/blob/main/CHANGELOG","sections":[{"kind":"feature","heading":"Added","items":1},{"kind":"change","heading":"Changed","items":0},{"kind":"fix","heading":"Fixed","items":0}],"hash":"e4b2f75b087494af"},{"version":"0.0.4","date":"2022-02-22","date_source":"heading","heading":"[0.0.4] - 2022-02-22","url":"https://github.com/marianfoo/ui5-dayjs/blob/main/CHANGELOG","sections":[{"kind":"feature","heading":"Added","items":1},{"kind":"change","heading":"Changed","items":0},{"kind":"fix","heading":"Fixed","items":0}],"hash":"f81b846e6b5208dc"},{"version":"0.0.3","date":"2022-02-20","date_source":"heading","heading":"[0.0.3] - 2022-02-20","url":"https://github.com/marianfoo/ui5-dayjs/blob/main/CHANGELOG","sections":[{"kind":"feature","heading":"Added","items":0},{"kind":"change","heading":"Changed","items":1},{"kind":"fix","heading":"Fixed","items":0}],"hash":"9d190ebbfd9874ce"},{"version":"0.0.2","date":"2022-02-20","date_source":"heading","heading":"[0.0.2] - 2022-02-20","url":"https://github.com/marianfoo/ui5-dayjs/blob/main/CHANGELOG","sections":[{"kind":"feature","heading":"Added","items":0},{"kind":"change","heading":"Changed","items":1},{"kind":"fix","heading":"Fixed","items":0}],"hash":"4d6f390e29858cc8"},{"version":"0.0.1","date":"2022-02-20","date_source":"heading","heading":"[0.0.1] - 2022-02-20","url":"https://github.com/marianfoo/ui5-dayjs/blob/main/CHANGELOG","sections":[{"kind":"feature","heading":"Added","items":1},{"kind":"change","heading":"Changed","items":0},{"kind":"fix","heading":"Fixed","items":0}],"hash":"b8abe26a8d435b3e"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:marianfoo","name":"Marian Zeis","json":"/actors/marianfoo.json"}],"contributors":[{"ref":"actor:marianfoo","name":"Marian Zeis","json":"/actors/marianfoo.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}