From 1bdc242638609f52086fee5084d339642c207108 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Tue, 5 Sep 2023 00:56:07 +0200 Subject: Add build step for jsdoc. --- static/README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/README.md (limited to 'static/README.md') diff --git a/static/README.md b/static/README.md new file mode 100644 index 00000000..e69de29b -- cgit v1.2.3 From f653a01328be3b8be6af35c0c96867623765ca5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Tue, 5 Sep 2023 11:41:46 +0200 Subject: Move JS documentation into the JS-code. Texinfo was a bad match for how TypeScript is structured. This also allows generation of jsdoc pages, which can be nice. Another large win is that this opens up for the texinfo pages to replace the Guile heading with different subheadings, including - external library - internal library - C library - ... --- static/README.md | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'static/README.md') diff --git a/static/README.md b/static/README.md index e69de29b..fe5f775c 100644 --- a/static/README.md +++ b/static/README.md @@ -0,0 +1,36 @@ +The frontend code has its entry-point in `script.ts`. + +## web components + +All elements are initialized in components.ts + +#### Boolean attributes +Some components have properties/accessors which also appears as attributes on +the actuall component (usually with a two-way maping). + +For boolean attributes, the attribute is either present or absent. + +### General Components +- `components/date-time-input.ts` +- `components/input-list.ts` + +### VEvent Components +- `components/vevent.ts` +- `components/changelog.ts` +- `components/edit-rrule.ts` +- `components/popup-element.ts` +- `components/tab-group-element.ts` +- `components/vevent-block.ts` +- `components/vevent-description.ts` +- `components/vevent-dl.ts` +- `components/vevent-edit.ts` + +## About our buildsystem + +Currently (almost) everything is written in Typescript, and bundled +through browserify. Ideally we would, for debug builds, export the +single transplied Javascript files, but Chromium Chromium lacks +support for modules on XHTML documents +https://bugs.chromium.org/p/chromium/issues/detail?id=717643. +However, seeing as the issue still gets frequent updates as of 2021 I +believe that this might one day get resolved. -- cgit v1.2.3 From e753d721519f72014241b3d2fc804a919f655769 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Thu, 7 Sep 2023 02:58:41 +0200 Subject: Document remaining javascript items. --- static/README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'static/README.md') diff --git a/static/README.md b/static/README.md index fe5f775c..1cb18411 100644 --- a/static/README.md +++ b/static/README.md @@ -1,5 +1,15 @@ The frontend code has its entry-point in `script.ts`. +Much of this code assumes prior knowledge of the iCalendar standard (RFC +5545). Besides that, the term "VComponent" is used to refer to any Calendar +Component as specified in that RFC under 3.6. + +## Data Flow + +TODO document how data gets from the server to us, and from us to the server. + +A large part of this is how much we convert between serialization formats. + ## web components All elements are initialized in components.ts -- cgit v1.2.3