NH_widget

Widgets for user interactions.

Αυτές είναι εκδόσεις αυτού του κώδικα όπου ο κώδικας έχει ενημερωθεί. Προβολή όλων των εκδόσεων.

  • v45 04/03/2024

    Initial build() support for Tabs.

    Issue #258.

    Migrate most modules to use base.Exception.

    Issue #259.

    Bump version number.

  • v44 26/02/2024

    JSDoc: Correct return type.

    Issue #185.

    Flesh out TabEntry a bit.

    Highly inspired by GridColumn and Layout.

    Issue #258.

    Bump version number.

  • v43 25/02/2024

    Initial rough out of a Tabs widget.

    Issue #258.

    Bump version number.

  • v42 23/02/2024

    Use thead/tbody elements to build a Grid.

    Issue #185.

    Minor indentation tweak.

    Bump version number.

  • v41 19/02/2024

    Clear the Grid container when building.

    The regexp was too forgiving and did not detect that contents were duplicated.

    Issue #185.

    General improvements to use of RegExp in tests.

    The recent experience with an overly forgiving expression suggests another look at the whole set of tests, particularly the use of .*.

    Hoisted the GUID expression to the file level and used in a few other locations.

    It is well known that using RegExp with HTML is generally a Bad Idea(tm). These tests really should be rewritten to compare at the DOM level.

    Issues #190, #254.

    Bump version number.

  • v40 18/02/2024

    Support CSS classes in GridColumn.

    These are accessible as a separate method that Grid can use to style the resulting td element, like it does for tr.

    Issue #185.

    Bump version number.

  • v39 16/02/2024

    Remove now redundant call to contentWrapper().

    Issue #185.

    Wrap items in the built array in an object.

    This will allow for a future change to have a parallel item.

    Issue #185.

    Bump version number.

  • v38 14/02/2024

    Make sure GridColumn.render() always returns a Widget.

    Issue #185.

    Rename ClassesFunc to RowClassesFunc.

    A forth coming ColClassesFunc will have a slightly different signature, so keep the names a bit more explicit.

    Along similar lines, also rename the associated methods.

    Issue #185.

    Stop using event as a local name as it shadows a global.

    Issue #238.

    Bump version number.

  • v37 12/02/2024

    JSDoc: Indicate func is optional.

    Issue #185.

    Remove old renderFunc initilization.

    Issue #185.

    Change GridColumn to use a setter for title.

    More like Grid.

    Issue #185.

    Bump version number.

  • v36 08/02/2024

    Set the renderFunc using a setter rather than in the config.

    This makes it consistent with Grid.rowClasses().

    Issue #185.

    Validate the rowClasses() callback.

    Issue #185.

    Bump version number.

  • v35 02/02/2024

    Make field a required property for GridColumn.

    Issue #185.

    Bump version number.

  • v34 31/01/2024

    Support per-row styling via CSS classes.

    Issue #185.

    Bump version number.

  • v33 29/01/2024

    Change RenderFunc to return Content instead of Widget.

    More consistent with other APIs.

    Issue #185.

    Additionaly GridColumn test.

    Issue #185.

    Finally build the Grid.

    Issue #185.

    Export GridColumn and Grid.

    Not complete, but will display.

    Issue #185.

    Bump version number.

  • v32 27/01/2024

    Add initial column support.

    Like data, this will start off live and manipulated directly. Convience methods, if any, will come later.

    Also, remove a bit of snarkiness from the data comment.

    Issue #185.

    Bump version number.

  • v31 24/01/2024

    Expose a GridColumn.render() method.

    Issue #185.

    Bump version number.

  • v30 21/01/2024

    Give each GridColumn instance a unique id.

    Issue #185.

    Bump version number.

  • v29 17/01/2024

    JSDoc: Add some missing types.

    Issue #185.

    Update RenderFunc to return a Widget.

    Issue #185.

    Derive a default column title from field name and tests.

    Issue #185.

    Replace if check with optional chaining.

    Issue #192.

    Be sure to destroy previous content when setting new.

    Issue #194.

    Bump version number.

  • v28 14/01/2024

    Remove explicit uid support.

    If a caller needs it, they can supply it.

    Issue #185.

    Support live data.

    Issue #185.

    Simplify Modal by always having content present.

    Similar to what we did for Layout.

    Issue #194.

    Bump version number.

  • v27 11/01/2024

    Give GridColumn an empty config in the test.

    Issue #185.

    Be sure to destroy previous panel when setting a new one.

    Issue #192.

    Bump version number.

  • v26 09/01/2024

    Initial rough out of a Grid widget.

    Issue #185.

    Bump version number.

  • v25 06/01/2024

    Implement Layout.#onDestroy().

    Issue #192.

    Export Layout.

    By no means complete, but, good enough for experimentation.

    Issue #192.

    Bump version number.

  • v24 05/01/2024

    Loop over panels rather than explicitly listing them.

    Issue #192.

    Bump version number.

  • v23 04/01/2024

    Initialize the panels to an empty string.

    Simplifies the code in #onBuild() quite a bit.

    Issue #192.

    Bump version number.

  • v22 03/01/2024

    Rename Layout.#panel to #panels.

    Issue #192.

    Make the panel constants opaque rather than strings.

    Issue #192.

    Bump version number.

  • v21 02/01/2024

    Add a test for ints with contentWrapper().

    Very rough initial Layout widget.

    Issue #192.

    Bump version number.

  • v20 16/12/2023

    Add descriptive text to some assertions.

    Issue #215.

    Bump version number.

  • v19 14/12/2023

    Add descriptive text to some assertions.

    Issue #215.

    Bump version number.

  • v18 04/12/2023

    Make use of new TestCase features in testing.

    Issue #183.

    JSDoc: Update some references to the new (or correct) location.

    Closes #214.

    Bump version number.

  • v17 27/11/2023

    Make use of the new TestCase.assertNoRaises() method.

    Issue #211.

    Bump version number.

  • v16 26/11/2023

    Briefly document aria-describedby in Modal.

    Issue #194.

    Bump version number.

  • v15 25/11/2023

    Verify Modal has exactly one of the mandatory ARIA attributes.

    Issue #194.

    Bump version number.

  • v14 24/11/2023

    JSDoc: Correct the documentation for a couple of methods.

    Issue #190.

    Implement a generic verification framework for Widgets.

    Currently automatically called after build() and before show() and users may call explicitly.

    Issue #194.

    Bump version number.

  • v13 23/11/2023

    Implement helper methods for adding HTML attributes to a Widget.

    Issue #194.

    eslint: Fixup for forthcoming newline-per-chained-call tweak.

    Issue #203.

    Bump version number.

  • v12 22/11/2023

    Rename ContentTestCase to ContentWrapperTestCase.

    Issue #191.

    Factor out the types that contentWrapper() accepts for reuse.

    Issue #191.

    Initial implementation of Modal.

    Issue #194.

    JSDoc: Correct some types.

    Issue #190.

    Bump version number.

  • v11 19/11/2023

    Implement ElementAdapter.

    Issue #191.

    Bump version number.

  • v10 18/11/2023

    Have contentWrapper() support Widget.

    It is a pass-thru, no wrapping.

    Issue #191.

    style-nudge: Right-place #private property.

    Darn regressions.

    Issue #197.

    Bump version number.

  • v9 17/11/2023

    Rename Content to StringAdapter.

    It will probably be easier to have one adapter per type, and a wrapper function to select them.

    Issue #191.

    Introduce contentWrapper().

    It will figure out the appropriate adapter to use for various types.

    Issue #191.

    Bump version number.

  • v8 16/11/2023

    Initial Content adapter than handles strings.

    Issue #191.

    Bump version number.

  • v7 15/11/2023

    Provide a way to install Widget styles on demand.

    Documents and demonstrates how to have a class specific style and make sure it is installed upon instantiation.

    Issue #190.

    Bump version number.

  • v6 12/11/2023

    Log that Widget.clear() is deprecated.

    Issue #190.

    JSDoc: Document that when replacing a widget, destroy the old one.

    Issue #190.

    Implement Widget.{show,hide}() methods and visible getter.

    Issue #190.

    Bump version number.

  • v5 10/11/2023

    Document how Widget subclasses should generally work.

    Issue #190.

    Implement Widget.{build,destroy}() methods.

    Issue #190.

    Emphasize that Widget needs to be subclassed.

    Issue #190.

    Tests for Widget.

    Issue #190.

    Bump version number.

  • v4 09/11/2023

    Add a Dispatcher to Widget and expose on()/off() methods.

    Currently there are no supported events. Those will be added later.

    Issue #190.

    Bump version number.

  • v3 08/11/2023

    Remove experimental support for w2ui.

    Issue #189.

    Bump version numbers.

  • v2 04/11/2023

    Experiment with using the w2ui library.

    Issue #185.

    Bump version numbers.

  • v1 31/10/2023

    Export the Widget base class.

    Originally the idea had been to keep it closed. But there might be needs to create app specific widgets that do not need to be in this library.

    Issue #167.

    Bump version numbers.

  • v0 31/10/2023
  • v0 31/10/2023 Imported from URL