nodality 1.0.212 → 1.0.214
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/dist/animator.cjs.js +1 -1
- package/dist/animator.cjs.js.LICENSE.txt +1 -1
- package/dist/animator.esm.js +1 -1
- package/dist/animator.esm.js.LICENSE.txt +1 -1
- package/dist/audionew.cjs.js +1 -1
- package/dist/audionew.cjs.js.LICENSE.txt +1 -1
- package/dist/audionew.esm.js +1 -1
- package/dist/audionew.esm.js.LICENSE.txt +1 -1
- package/dist/base.cjs.js.LICENSE.txt +1 -1
- package/dist/base.esm.js.LICENSE.txt +1 -1
- package/dist/beta-desktop-bar.cjs.js +1 -1
- package/dist/beta-desktop-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/beta-desktop-bar.esm.js +1 -1
- package/dist/beta-desktop-bar.esm.js.LICENSE.txt +1 -1
- package/dist/beta-mobile-bar.cjs.js +1 -1
- package/dist/beta-mobile-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/beta-mobile-bar.esm.js +1 -1
- package/dist/beta-mobile-bar.esm.js.LICENSE.txt +1 -1
- package/dist/bundle.umd.js +1 -1
- package/dist/bundle.umd.js.LICENSE.txt +1 -1
- package/dist/button.cjs.js +1 -1
- package/dist/button.cjs.js.LICENSE.txt +1 -1
- package/dist/button.esm.js +1 -1
- package/dist/button.esm.js.LICENSE.txt +1 -1
- package/dist/card-getter.cjs.js.LICENSE.txt +1 -1
- package/dist/card-getter.esm.js.LICENSE.txt +1 -1
- package/dist/center.cjs.js +1 -1
- package/dist/center.cjs.js.LICENSE.txt +1 -1
- package/dist/center.esm.js +1 -1
- package/dist/center.esm.js.LICENSE.txt +1 -1
- package/dist/checkbox.cjs.js +1 -1
- package/dist/checkbox.cjs.js.LICENSE.txt +1 -1
- package/dist/checkbox.esm.js +1 -1
- package/dist/checkbox.esm.js.LICENSE.txt +1 -1
- package/dist/code.cjs.js +1 -1
- package/dist/code.cjs.js.LICENSE.txt +1 -1
- package/dist/code.esm.js +1 -1
- package/dist/code.esm.js.LICENSE.txt +1 -1
- package/dist/container.cjs.js +1 -1
- package/dist/container.cjs.js.LICENSE.txt +1 -1
- package/dist/container.esm.js +1 -1
- package/dist/container.esm.js.LICENSE.txt +1 -1
- package/dist/data-list.cjs.js.LICENSE.txt +1 -1
- package/dist/data-list.esm.js.LICENSE.txt +1 -1
- package/dist/designer.cjs.js +1 -1
- package/dist/designer.cjs.js.LICENSE.txt +1 -1
- package/dist/designer.esm.js +1 -1
- package/dist/designer.esm.js.LICENSE.txt +1 -1
- package/dist/dropdown.cjs.js +1 -1
- package/dist/dropdown.cjs.js.LICENSE.txt +1 -1
- package/dist/dropdown.esm.js +1 -1
- package/dist/dropdown.esm.js.LICENSE.txt +1 -1
- package/dist/element-mapper.cjs.js +1 -1
- package/dist/element-mapper.cjs.js.LICENSE.txt +1 -1
- package/dist/element-mapper.esm.js +1 -1
- package/dist/element-mapper.esm.js.LICENSE.txt +1 -1
- package/dist/finalresult.esm.js +1 -1
- package/dist/finalresult.esm.js.LICENSE.txt +1 -1
- package/dist/flex-card.cjs.js +1 -1
- package/dist/flex-card.cjs.js.LICENSE.txt +1 -1
- package/dist/flex-card.esm.js +1 -1
- package/dist/flex-card.esm.js.LICENSE.txt +1 -1
- package/dist/flex-grid.cjs.js +1 -1
- package/dist/flex-grid.cjs.js.LICENSE.txt +1 -1
- package/dist/flex-grid.esm.js +1 -1
- package/dist/flex-grid.esm.js.LICENSE.txt +1 -1
- package/dist/flex-row.cjs.js +1 -1
- package/dist/flex-row.cjs.js.LICENSE.txt +1 -1
- package/dist/flex-row.esm.js +1 -1
- package/dist/flex-row.esm.js.LICENSE.txt +1 -1
- package/dist/floating-input.cjs.js +1 -1
- package/dist/floating-input.cjs.js.LICENSE.txt +1 -1
- package/dist/floating-input.esm.js +1 -1
- package/dist/floating-input.esm.js.LICENSE.txt +1 -1
- package/dist/free.cjs.js +1 -1
- package/dist/free.cjs.js.LICENSE.txt +1 -1
- package/dist/free.esm.js +1 -1
- package/dist/free.esm.js.LICENSE.txt +1 -1
- package/dist/horizontal-scroller.cjs.js.LICENSE.txt +1 -1
- package/dist/horizontal-scroller.esm.js.LICENSE.txt +1 -1
- package/dist/image-picker.cjs.js +1 -1
- package/dist/image-picker.cjs.js.LICENSE.txt +1 -1
- package/dist/image-picker.esm.js +1 -1
- package/dist/image-picker.esm.js.LICENSE.txt +1 -1
- package/dist/image.cjs.js +1 -1
- package/dist/image.cjs.js.LICENSE.txt +1 -1
- package/dist/image.esm.js +1 -1
- package/dist/image.esm.js.LICENSE.txt +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.LICENSE.txt +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.LICENSE.txt +1 -1
- package/dist/keyframe-animation.cjs.js.LICENSE.txt +1 -1
- package/dist/keyframe-animation.esm.js.LICENSE.txt +1 -1
- package/dist/link-getter.cjs.js +1 -1
- package/dist/link-getter.cjs.js.LICENSE.txt +1 -1
- package/dist/link-getter.esm.js +1 -1
- package/dist/link-getter.esm.js.LICENSE.txt +1 -1
- package/dist/link.cjs.js +1 -1
- package/dist/link.cjs.js.LICENSE.txt +1 -1
- package/dist/link.esm.js +1 -1
- package/dist/link.esm.js.LICENSE.txt +1 -1
- package/dist/meta-adder.cjs.js.LICENSE.txt +1 -1
- package/dist/meta-adder.esm.js.LICENSE.txt +1 -1
- package/dist/modal-2025.cjs.js.LICENSE.txt +1 -1
- package/dist/modal-2025.esm.js.LICENSE.txt +1 -1
- package/dist/multiswitcher.cjs.js +1 -1
- package/dist/multiswitcher.cjs.js.LICENSE.txt +1 -1
- package/dist/multiswitcher.esm.js +1 -1
- package/dist/multiswitcher.esm.js.LICENSE.txt +1 -1
- package/dist/new-nav-bar.cjs.js +1 -1
- package/dist/new-nav-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/new-nav-bar.esm.js +1 -1
- package/dist/new-nav-bar.esm.js.LICENSE.txt +1 -1
- package/dist/picker.cjs.js +1 -1
- package/dist/picker.cjs.js.LICENSE.txt +1 -1
- package/dist/picker.esm.js +1 -1
- package/dist/picker.esm.js.LICENSE.txt +1 -1
- package/dist/progress.cjs.js +1 -1
- package/dist/progress.cjs.js.LICENSE.txt +1 -1
- package/dist/progress.esm.js +1 -1
- package/dist/progress.esm.js.LICENSE.txt +1 -1
- package/dist/radio.cjs.js.LICENSE.txt +1 -1
- package/dist/radio.esm.js.LICENSE.txt +1 -1
- package/dist/range.cjs.js.LICENSE.txt +1 -1
- package/dist/range.esm.js.LICENSE.txt +1 -1
- package/dist/scroll-video.cjs.js.LICENSE.txt +1 -1
- package/dist/scroll-video.esm.js.LICENSE.txt +1 -1
- package/dist/side-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/side-bar.esm.js.LICENSE.txt +1 -1
- package/dist/side-nav-bar.cjs.js +1 -1
- package/dist/side-nav-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/side-nav-bar.esm.js +1 -1
- package/dist/side-nav-bar.esm.js.LICENSE.txt +1 -1
- package/dist/simple-bar.cjs.js +1 -1
- package/dist/simple-bar.cjs.js.LICENSE.txt +1 -1
- package/dist/simple-bar.esm.js +1 -1
- package/dist/simple-bar.esm.js.LICENSE.txt +1 -1
- package/dist/slider-2025.cjs.js +1 -1
- package/dist/slider-2025.cjs.js.LICENSE.txt +1 -1
- package/dist/slider-2025.esm.js +1 -1
- package/dist/slider-2025.esm.js.LICENSE.txt +1 -1
- package/dist/spacer.cjs.js.LICENSE.txt +1 -1
- package/dist/spacer.esm.js.LICENSE.txt +1 -1
- package/dist/stack.cjs.js.LICENSE.txt +1 -1
- package/dist/stack.esm.js.LICENSE.txt +1 -1
- package/dist/stacker.cjs.js.LICENSE.txt +1 -1
- package/dist/stacker.esm.js.LICENSE.txt +1 -1
- package/dist/table.cjs.js +1 -1
- package/dist/table.cjs.js.LICENSE.txt +1 -1
- package/dist/table.esm.js +1 -1
- package/dist/table.esm.js.LICENSE.txt +1 -1
- package/dist/text-field.cjs.js +1 -1
- package/dist/text-field.cjs.js.LICENSE.txt +1 -1
- package/dist/text-field.esm.js +1 -1
- package/dist/text-field.esm.js.LICENSE.txt +1 -1
- package/dist/text.cjs.js +1 -1
- package/dist/text.cjs.js.LICENSE.txt +1 -1
- package/dist/text.esm.js +1 -1
- package/dist/text.esm.js.LICENSE.txt +1 -1
- package/dist/theme.cjs.js.LICENSE.txt +1 -1
- package/dist/theme.esm.js.LICENSE.txt +1 -1
- package/dist/transform-anim.cjs.js.LICENSE.txt +1 -1
- package/dist/transform-anim.esm.js.LICENSE.txt +1 -1
- package/dist/ulist.cjs.js +1 -1
- package/dist/ulist.cjs.js.LICENSE.txt +1 -1
- package/dist/ulist.esm.js +1 -1
- package/dist/ulist.esm.js.LICENSE.txt +1 -1
- package/dist/video.cjs.js +1 -1
- package/dist/video.cjs.js.LICENSE.txt +1 -1
- package/dist/video.esm.js +1 -1
- package/dist/video.esm.js.LICENSE.txt +1 -1
- package/dist/wrap.cjs.js.LICENSE.txt +1 -1
- package/dist/wrap.esm.js.LICENSE.txt +1 -1
- package/dist/zoom-card.cjs.js +1 -1
- package/dist/zoom-card.cjs.js.LICENSE.txt +1 -1
- package/dist/zoom-card.esm.js +1 -1
- package/dist/zoom-card.esm.js.LICENSE.txt +1 -1
- package/layout/animator.js +97 -30
- package/layout/audio.js +1 -1
- package/layout/audionew.js +1 -1
- package/layout/base-2.js +1 -1
- package/layout/base.js +1 -1
- package/layout/beta-desktop-bar.js +1 -1
- package/layout/beta-mobile-bar.js +1 -1
- package/layout/box.js +1 -1
- package/layout/button.js +1 -84
- package/layout/cards.js +1 -1
- package/layout/center.js +1 -21
- package/layout/checkbox.js +1 -1
- package/layout/circle.js +1 -2
- package/layout/clean-row.js +1 -87
- package/layout/code.js +1 -1
- package/layout/container.js +24 -152
- package/layout/custom.js +7 -5
- package/layout/div-image.js +1 -49
- package/layout/dropdown-2025.js +1 -1
- package/layout/dropdown.js +1 -1
- package/layout/empty-element.js +1 -1
- package/layout/external-stylesheet.js +1 -1
- package/layout/flex-card.js +2 -90
- package/layout/flex-grid.js +1 -6
- package/layout/flex-row.js +1 -86
- package/layout/footer.js +1 -1
- package/layout/form-components/custom.js +1 -1
- package/layout/form-components/data-list.js +1 -1
- package/layout/form-components/floating-input.js +1 -1
- package/layout/form-components/form-all.js +1 -1
- package/layout/form-components/form.js +1 -1
- package/layout/form-components/image-picker.js +1 -1
- package/layout/form-components/picker.js +1 -1
- package/layout/form-components/radio.js +1 -1
- package/layout/form-components/radiogroup.js +1 -1
- package/layout/form-components/range.js +1 -1
- package/layout/free.js +1 -1
- package/layout/grid-new.js +1 -1
- package/layout/grid-switcher.js +1 -1
- package/layout/grid.js +1 -1
- package/layout/group.js +1 -41
- package/layout/header.js +1 -1
- package/layout/horizontal-scroller.js +3 -3
- package/layout/image-old.js +1 -41
- package/layout/image.js +1 -79
- package/layout/index.js +1 -1
- package/layout/label.js +1 -1
- package/layout/link.js +7 -101
- package/layout/list-OLD.js +1 -1
- package/layout/list.js +1 -1
- package/layout/meta-adder.js +1 -1
- package/layout/modal-2025.js +1 -1
- package/layout/modernwrap.js +1 -1
- package/layout/multiswitcher.js +1 -1
- package/layout/multiswitcherBeta.js +1 -1
- package/layout/nav-bar.js +1 -1
- package/layout/nav-factor/custom-div.js +1 -1
- package/layout/navBar-OLD.js +1 -1
- package/layout/new-flat-adder.js +1 -1
- package/layout/new-nav-bar.js +2 -2
- package/layout/offset-container.js +2 -9
- package/layout/polygon.js +1 -6
- package/layout/prerender-site.js +1 -1
- package/layout/prerender.js +1 -1
- package/layout/progress.js +1 -21
- package/layout/row.js +1 -1
- package/layout/saved-new-nav-bar.js +1 -1
- package/layout/scroll-video.js +1 -1
- package/layout/side-bar.js +1 -1
- package/layout/side-nav-bar.js +1 -1
- package/layout/simple-bar.js +1 -1
- package/layout/slider-2025.js +3 -3
- package/layout/spacer.js +1 -1
- package/layout/stack.js +1 -1
- package/layout/svg.js +1 -1
- package/layout/switcher.js +1 -1
- package/layout/table.js +1 -6
- package/layout/text-field.js +1 -65
- package/layout/text.js +5 -100
- package/layout/ulist.js +1 -1
- package/layout/video.js +1 -1
- package/layout/without-new.js +1 -1
- package/layout/wrap.js +1 -1
- package/layout/zoom-card.js +1 -3
- package/lib/card-getter.js +1 -1
- package/lib/data.js +1 -1
- package/lib/designer.js +1 -1
- package/lib/element-mapper.js +1 -1
- package/lib/keyframe-animation.js +1 -1
- package/lib/link-getter.js +1 -1
- package/lib/raster-ops.js +1 -1
- package/lib/scroll-video.js +1 -1
- package/lib/seo.js +1 -1
- package/lib/stacker.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/transform-anim.js +1 -1
- package/package.json +1 -1
- package/layout/styler.js +0 -119
package/layout/animator.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.0.
|
|
2
|
+
* nodality v1.0.214
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -355,11 +355,11 @@ class Animator {
|
|
|
355
355
|
}
|
|
356
356
|
//alert(obj.respad);
|
|
357
357
|
// Special methods
|
|
358
|
-
//@ pad: Padding.
|
|
358
|
+
//@ pad: Padding. An array of side objects: `pad: [{a: 40}]`. Keys are `a` all, `t` top, `r` right, `b` bottom, `l` left. Keys combine, so `{tb: 12}` sets top and bottom. A bare number is treated as px; any string is passed through, so `{a: "2rem"}` works.
|
|
359
359
|
obj.pad && this.pad(obj.pad);
|
|
360
|
-
//@ mar: Margin.
|
|
360
|
+
//@ mar: Margin. The same array-of-side-objects form as `pad`: `mar: [{a: 40}]`, keys `a t r b l`, combinable. Additionally `mar: "center"` sets left and right to auto, as does `{a: "auto"}` or `{center: true}`.
|
|
361
361
|
obj.mar && this.mar(obj.mar);
|
|
362
|
-
//@ respad: Responsive padding — per-breakpoint overrides of `pad
|
|
362
|
+
//@ respad: Responsive padding — per-breakpoint overrides of `pad`, in the same form.
|
|
363
363
|
obj.respad && this.respad(obj.respad);
|
|
364
364
|
|
|
365
365
|
// `borderObj` was never dispatched from here, so a component with no
|
|
@@ -383,19 +383,34 @@ class Animator {
|
|
|
383
383
|
// idempotent for them.
|
|
384
384
|
//@ borderObj: Border as {width, color, type?, radius?}. Width carries its unit, e.g. "1px".
|
|
385
385
|
obj.borderObj && obj.borderObj.width && this.borderObj(obj.borderObj);
|
|
386
|
+
//@ resmar: Responsive margin — per-breakpoint overrides of `mar`, in the same form.
|
|
386
387
|
obj.resmar && this.resmar(obj.resmar);
|
|
388
|
+
//@ hover: Styles applied on hover, e.g. {color, background, animation: "0.2s ease"}.
|
|
387
389
|
obj.hover && this.hover(obj.hover);
|
|
390
|
+
//@ size: Fluid type scale step (S1…S6) — font size that scales with the viewport.
|
|
388
391
|
obj.size && this.fluidCopy(obj.size);
|
|
392
|
+
//@ resprop: Per-breakpoint style overrides — [{breakpoint, ...css}]. `exact` is font size.
|
|
389
393
|
obj.resprop && this.resprop(obj.resprop, obj);
|
|
390
394
|
//@ keySet: Escape hatch — {key, value} written straight to element.style, or an array of them.
|
|
391
395
|
obj.keySet && this.keySet(obj.keySet);
|
|
396
|
+
//@ noTheme: Opt this element out of Theme.setDefaults light/dark colouring.
|
|
392
397
|
obj.noTheme && (this._noTheme = true);
|
|
398
|
+
//@ theme: Explicit light/dark overrides — {light: {...}, dark: {...}}.
|
|
393
399
|
obj.theme && this.theme(obj.theme);
|
|
400
|
+
//@ hide: Hide the element without removing it from the tree.
|
|
394
401
|
obj.hide && this.isHidden(obj.hide);
|
|
395
402
|
//@ raster: Attach a WebGL raster pipeline. Array of op nodes; see the Raster section.
|
|
396
403
|
obj.raster && this.rasterize(obj.raster);
|
|
404
|
+
|
|
405
|
+
//@ center: Centres this element's CHILDREN. `true` for both axes, `"x"` horizontal, `"y"` vertical. Axis-aware: in a flex column `"y"` is justify-content, in a row it is align-items; a grid uses justify-items/align-items. To centre the element itself inside its parent, use `mar: "center"`.
|
|
406
|
+
// Dispatched here rather than per component, so it means the same thing
|
|
407
|
+
// on all of them. It was wired only into Wrapper before, while other
|
|
408
|
+
// components either had their own copy with a different meaning or no
|
|
409
|
+
// centring at all.
|
|
410
|
+
obj.center && this.center(obj.center, {display: obj.disp || obj.display, flexDirection: obj.flexDir || obj.flexDirection});
|
|
397
411
|
// Only route to the animation system for object-shaped transforms.
|
|
398
412
|
// String transforms are applied above via the styleMap path.
|
|
413
|
+
//@ transform: A CSS transform string applied verbatim, or an object handled by reactOnTransform(). Composed with `scale` when both are given.
|
|
399
414
|
(obj.transform && typeof obj.transform === "object") && this.reactOnTransform(obj.transform);
|
|
400
415
|
|
|
401
416
|
(obj.opacity !== undefined) && (this.res.style.opacity = obj.opacity);
|
|
@@ -1579,6 +1594,75 @@ resmar(arr) {
|
|
|
1579
1594
|
react();
|
|
1580
1595
|
}*/
|
|
1581
1596
|
|
|
1597
|
+
/**
|
|
1598
|
+
* Tells the caller they passed an option that no longer exists as the
|
|
1599
|
+
* way to do this, and what to use instead.
|
|
1600
|
+
*
|
|
1601
|
+
* console.error only, deliberately. alert() is banned in live modules
|
|
1602
|
+
* (see the "no live module calls alert()" invariant): alerts had sat in
|
|
1603
|
+
* ordinary paths and blocked the page for every visitor, and the ban is
|
|
1604
|
+
* worth more than making this one warning louder.
|
|
1605
|
+
*/
|
|
1606
|
+
deprecatedOption(name, replacement) {
|
|
1607
|
+
console.error(`nodality: \`${name}\` is deprecated — use \`${replacement}\` instead.`);
|
|
1608
|
+
return this;
|
|
1609
|
+
}
|
|
1610
|
+
|
|
1611
|
+
/**
|
|
1612
|
+
* Centres this element's CHILDREN.
|
|
1613
|
+
*
|
|
1614
|
+
* center: true both axes
|
|
1615
|
+
* center: "x" horizontally only
|
|
1616
|
+
* center: "y" vertically only
|
|
1617
|
+
*
|
|
1618
|
+
* Replaces six overlapping methods — toCenter(), toCenter("both"),
|
|
1619
|
+
* flexc(), toCol(), centerColumn and simpleCenter(). flexc() was
|
|
1620
|
+
* byte-identical to toCenter() and toCol() to toCenter("both"), so the
|
|
1621
|
+
* same behaviour had four names and the two that differed did so by
|
|
1622
|
+
* one property each.
|
|
1623
|
+
*
|
|
1624
|
+
* To centre the element ITSELF inside its parent, that is `mar:
|
|
1625
|
+
* "center"` — a different thing, and the reason the old names were so
|
|
1626
|
+
* easy to confuse.
|
|
1627
|
+
*
|
|
1628
|
+
* Axis-aware rather than fixed. justify-content runs along the main
|
|
1629
|
+
* axis, so in a flex column it is the VERTICAL one and align-items is
|
|
1630
|
+
* horizontal — the opposite of a flex row. The old methods hardcoded
|
|
1631
|
+
* flex-direction: column and so only ever worked one way round; this
|
|
1632
|
+
* reads the direction already set and centres the axis you asked for.
|
|
1633
|
+
* A grid gets justify-items/align-items instead, which is what
|
|
1634
|
+
* simpleCenter() was reaching for without setting a display at all.
|
|
1635
|
+
*/
|
|
1636
|
+
center(axis = true, hint = {}){
|
|
1637
|
+
const s = this.res.style;
|
|
1638
|
+
// The hints matter because this runs from commonMethods, before a
|
|
1639
|
+
// component applies its own `disp`/`flexDir` aliases. Without them
|
|
1640
|
+
// center() sees a bare element, assumes a flex column, and puts the
|
|
1641
|
+
// centring on the wrong property for every row and grid.
|
|
1642
|
+
const display = s.display || hint.display || "";
|
|
1643
|
+
const direction = s.flexDirection || hint.flexDirection || "";
|
|
1644
|
+
const grid = display.includes("grid");
|
|
1645
|
+
|
|
1646
|
+
const x = axis === true || axis === "both" || axis === "x";
|
|
1647
|
+
const y = axis === true || axis === "both" || axis === "y";
|
|
1648
|
+
|
|
1649
|
+
if (grid){
|
|
1650
|
+
if (x){ s.justifyItems = "center"; s.justifyContent = "center"; }
|
|
1651
|
+
if (y){ s.alignItems = "center"; s.alignContent = "center"; }
|
|
1652
|
+
return this;
|
|
1653
|
+
}
|
|
1654
|
+
|
|
1655
|
+
if (!display.includes("flex")) s.display = "flex";
|
|
1656
|
+
if (!s.flexDirection) s.flexDirection = direction || "column";
|
|
1657
|
+
|
|
1658
|
+
const column = (s.flexDirection || "column").startsWith("column");
|
|
1659
|
+
const mainIsY = column;
|
|
1660
|
+
|
|
1661
|
+
if (mainIsY ? y : x) s.justifyContent = "center";
|
|
1662
|
+
if (mainIsY ? x : y) s.alignItems = "center";
|
|
1663
|
+
return this;
|
|
1664
|
+
}
|
|
1665
|
+
|
|
1582
1666
|
isNumber(value) {
|
|
1583
1667
|
return typeof value === 'number' && !isNaN(value);
|
|
1584
1668
|
}
|
|
@@ -3314,35 +3398,18 @@ removeQuotesFromFirstWord(jsonString) {
|
|
|
3314
3398
|
}
|
|
3315
3399
|
|
|
3316
3400
|
|
|
3317
|
-
arrayMargin(arr, value) { // 224857 redefined earlier
|
|
3318
3401
|
|
|
3319
|
-
// // console.log(arr);
|
|
3320
|
-
if (arr.includes("left")){
|
|
3321
|
-
this.res.style.marginLeft = value;
|
|
3322
|
-
}
|
|
3323
|
-
|
|
3324
|
-
if (arr.includes("right")){
|
|
3325
|
-
this.res.style.marginRight = value;
|
|
3326
|
-
}
|
|
3327
|
-
|
|
3328
|
-
if (arr.includes("top")){
|
|
3329
|
-
this.res.style.marginTop = value;
|
|
3330
|
-
}
|
|
3331
|
-
|
|
3332
|
-
if (arr.includes("bottom")){
|
|
3333
|
-
this.res.style.marginBottom = value;
|
|
3334
|
-
}
|
|
3335
3402
|
|
|
3336
|
-
if (arr.includes("all")){
|
|
3337
|
-
this.res.style.margin = value;
|
|
3338
|
-
}
|
|
3339
3403
|
|
|
3340
|
-
|
|
3341
|
-
|
|
3342
|
-
|
|
3343
|
-
|
|
3344
|
-
|
|
3345
|
-
|
|
3404
|
+
|
|
3405
|
+
|
|
3406
|
+
|
|
3407
|
+
|
|
3408
|
+
|
|
3409
|
+
|
|
3410
|
+
|
|
3411
|
+
|
|
3412
|
+
|
|
3346
3413
|
/*
|
|
3347
3414
|
|
|
3348
3415
|
navBarExpand(){
|
package/layout/audio.js
CHANGED
package/layout/audionew.js
CHANGED
package/layout/base-2.js
CHANGED
package/layout/base.js
CHANGED
package/layout/box.js
CHANGED
package/layout/button.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.0.
|
|
2
|
+
* nodality v1.0.214
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -187,11 +187,7 @@ this.options = obj;
|
|
|
187
187
|
obj.frame && this.frame(obj.frame);
|
|
188
188
|
obj.frame && (stra += `\n frame: "${obj.frame}",`);
|
|
189
189
|
|
|
190
|
-
obj.arrpad && this.arrayPadding(obj.arrpad.sides, obj.arrpad.value);
|
|
191
|
-
obj.arrpad && (stra += `\n arrpad: {sides: ["${obj.arrpad.sides}"], value: "${obj.arrpad.value}"},`); // 2345 06/03
|
|
192
190
|
|
|
193
|
-
obj.arrayMargin && this.arrayMargin(obj.arrayMargin.sides, obj.arrayMargin.value);
|
|
194
|
-
obj.arrayMargin && (stra += `\n arrayMargin: {sides: ["${obj.arrayMargin.sides}"], value: "${obj.arrayMargin.value}"},`); // 2345 06/03
|
|
195
191
|
|
|
196
192
|
obj.keySet && this.keySet(obj.keySet); // 165411 22/01/25 Nice!
|
|
197
193
|
|
|
@@ -218,86 +214,7 @@ this.options = obj;
|
|
|
218
214
|
|
|
219
215
|
|
|
220
216
|
|
|
221
|
-
arrayPadding(arr, value) {
|
|
222
|
-
|
|
223
|
-
if (arr.includes("left")){
|
|
224
|
-
this.res.style.paddingLeft = value;
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
// console.log("PAD");
|
|
228
|
-
// console.log(this.res.style.paddingLeft);
|
|
229
|
-
// console.log(arr);
|
|
230
|
-
// console.log(value);
|
|
231
|
-
|
|
232
|
-
if (arr.includes("right")){
|
|
233
|
-
this.res.style.paddingRight = value;
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
if (arr.includes("top")){
|
|
237
|
-
this.res.style.paddingTop = value;
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
if (arr.includes("bottom")){
|
|
241
|
-
this.res.style.paddingBottom = value;
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
if (arr.includes("all")){
|
|
245
|
-
this.res.style.padding = value;
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
if (!value){
|
|
249
|
-
this.res.style.paddingBottom = arr;
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
return this;
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
arrayMargin(arr, value) { // 224857 redefined earlier
|
|
257
|
-
|
|
258
|
-
if (!value){ // LTRB
|
|
259
|
-
this.res.style.marginLeft = `${arr[0]}px`;
|
|
260
|
-
this.res.style.marginTop = `${arr[1]}px`;
|
|
261
|
-
this.res.style.marginRight = `${arr[2]}px`;
|
|
262
|
-
this.res.style.marginBottom = `${arr[3]}px`;
|
|
263
|
-
}
|
|
264
217
|
|
|
265
|
-
|
|
266
|
-
if (value === "7rem"){
|
|
267
|
-
// The text does not react to margin changes
|
|
268
|
-
// alert(arr);
|
|
269
|
-
// alert(value);
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
// // console.log(arr);
|
|
275
|
-
if (arr.includes("left")){
|
|
276
|
-
this.res.style.marginLeft = value;
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
if (arr.includes("right")){
|
|
280
|
-
this.res.style.marginRight = value;
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
if (arr.includes("top")){
|
|
284
|
-
this.res.style.marginTop = value;
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
if (arr.includes("bottom")){
|
|
288
|
-
this.res.style.marginBottom = value;
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
if (arr.includes("all")){
|
|
292
|
-
this.res.style.margin = value;
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
if (!value){
|
|
296
|
-
this.res.style.marginBottom = arr;
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
return this;
|
|
300
|
-
}
|
|
301
218
|
|
|
302
219
|
|
|
303
220
|
fluidButtonCopy(name){
|
package/layout/cards.js
CHANGED
package/layout/center.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.0.
|
|
2
|
+
* nodality v1.0.214
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -100,26 +100,6 @@ return this;
|
|
|
100
100
|
return this;
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
-
arrayPadding(arr, value) {
|
|
104
|
-
if (arr.includes("left")){
|
|
105
|
-
this.res.style.paddingLeft = value;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
if (arr.includes("right")){
|
|
109
|
-
this.res.style.paddingRight = value;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
if (arr.includes("top")){
|
|
113
|
-
this.res.style.paddingTop = value;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
if (arr.includes("bottom")){
|
|
117
|
-
this.res.style.paddingBottom = value;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
return this;
|
|
122
|
-
}
|
|
123
103
|
|
|
124
104
|
itemWidth(w){
|
|
125
105
|
for (var i = 0; i < this.res.childNodes.length; i++){
|
package/layout/checkbox.js
CHANGED
package/layout/circle.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.0.
|
|
2
|
+
* nodality v1.0.214
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -51,7 +51,6 @@ class Circle extends Animator {
|
|
|
51
51
|
// --- Circle-specific API ---
|
|
52
52
|
diameter(px) { this.res.style.width = this.res.style.height = typeof px === "number" ? px + "px" : px; this.res.style.borderRadius = "50%"; return this; }
|
|
53
53
|
size(w, h = w) { this.res.style.width = typeof w === "number" ? w + "px" : w; this.res.style.height = typeof h === "number" ? h + "px" : h; this.res.style.borderRadius = "50%"; return this; }
|
|
54
|
-
center() { this.res.style.marginLeft = this.res.style.marginRight = "auto"; return this; }
|
|
55
54
|
color(c) { this.res.style.backgroundColor = c; return this; }
|
|
56
55
|
border(spec) { this.res.style.border = typeof spec === "string" ? spec : `${spec?.width || 1}px solid ${spec?.color || "black"}`; return this; }
|
|
57
56
|
radius(r) { this.res.style.borderRadius = typeof r === "number" ? r + "px" : r; return this; }
|
package/layout/clean-row.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.0.
|
|
2
|
+
* nodality v1.0.214
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -183,16 +183,11 @@ class CleanRow extends Animator {
|
|
|
183
183
|
|
|
184
184
|
|
|
185
185
|
//alert(options.arrpad);
|
|
186
|
-
options.arrayPadding && this.arrayPadding(options.arrayPadding.sides, options.arrayPadding.value);
|
|
187
186
|
|
|
188
187
|
|
|
189
|
-
options.arrayMargin && this.arrayMargin(options.arrayMargin.sides, options.arrayMargin.value);
|
|
190
|
-
this.arrayMarginValue = options.arrayMargin;
|
|
191
|
-
options.arrayMargin && this.code.push(`\n arrayMargin: {sides: [${options.arrayMargin.sides.map(m => `"${m}"`).join(", ")}], value: "${options.arrayMargin.value}"},`); // 2345 06/03
|
|
192
188
|
|
|
193
189
|
// alert(options.multipad);
|
|
194
190
|
|
|
195
|
-
options.multipad && this.makeMultiPad(options.multipad);
|
|
196
191
|
|
|
197
192
|
if (options.align){
|
|
198
193
|
//alert("K")
|
|
@@ -335,27 +330,6 @@ class CleanRow extends Animator {
|
|
|
335
330
|
return this.code; // 21:40:09
|
|
336
331
|
}
|
|
337
332
|
|
|
338
|
-
arrayPadding(arr, value) {
|
|
339
|
-
if (arr.includes("left")){
|
|
340
|
-
this.res.style.paddingLeft = value;
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
if (arr.includes("right")){
|
|
344
|
-
//alert("P")
|
|
345
|
-
this.res.style.paddingRight = value;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
if (arr.includes("top")){
|
|
349
|
-
this.res.style.paddingTop = value;
|
|
350
|
-
}
|
|
351
|
-
|
|
352
|
-
if (arr.includes("bottom")){
|
|
353
|
-
this.res.style.paddingBottom = value;
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
return this;
|
|
358
|
-
}
|
|
359
333
|
|
|
360
334
|
borderAround(data){
|
|
361
335
|
this.res.style.border = data;
|
|
@@ -412,21 +386,6 @@ class CleanRow extends Animator {
|
|
|
412
386
|
}
|
|
413
387
|
|
|
414
388
|
|
|
415
|
-
makeMultiPad(obj){
|
|
416
|
-
|
|
417
|
-
for (var i = 0; i < obj.length; i++){
|
|
418
|
-
if (obj[i].side === "left"){
|
|
419
|
-
|
|
420
|
-
this.res.style.paddingLeft = obj[i].value;
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
if (obj[i].side === "right"){
|
|
424
|
-
this.res.style.paddingRight = obj[i].value;
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
|
-
|
|
428
|
-
return this;
|
|
429
|
-
}
|
|
430
389
|
|
|
431
390
|
|
|
432
391
|
|
|
@@ -435,10 +394,6 @@ class CleanRow extends Animator {
|
|
|
435
394
|
return this;
|
|
436
395
|
}
|
|
437
396
|
|
|
438
|
-
center() {
|
|
439
|
-
// this.res.style.justifyItems = "center";
|
|
440
|
-
return this;
|
|
441
|
-
}
|
|
442
397
|
|
|
443
398
|
toColumn(){
|
|
444
399
|
this.res.style.flexDirection = "column";
|
|
@@ -452,12 +407,6 @@ class CleanRow extends Animator {
|
|
|
452
407
|
return this;
|
|
453
408
|
}
|
|
454
409
|
|
|
455
|
-
toCenter(classa) {
|
|
456
|
-
this.res.style.marginLeft = "auto";
|
|
457
|
-
this.res.style.marginRight = "auto";
|
|
458
|
-
this.res.setAttribute("class", classa);
|
|
459
|
-
return this;
|
|
460
|
-
}
|
|
461
410
|
|
|
462
411
|
setup() {
|
|
463
412
|
let flex = document.createElement("div");
|
|
@@ -502,41 +451,6 @@ class CleanRow extends Animator {
|
|
|
502
451
|
|
|
503
452
|
*/
|
|
504
453
|
|
|
505
|
-
arrayMargin(arr, value) {
|
|
506
|
-
|
|
507
|
-
//alert(arr);
|
|
508
|
-
//alert(value);
|
|
509
|
-
|
|
510
|
-
// alert(window.matchMedia("(max-device-width: 415px)").matches)
|
|
511
|
-
//alert("K")
|
|
512
|
-
if (!value){ // LTRB
|
|
513
|
-
this.res.style.marginLeft = `${arr[0]}px`;
|
|
514
|
-
this.res.style.marginTop = `${arr[1]}px`;
|
|
515
|
-
this.res.style.marginRight = `${arr[2]}px`;
|
|
516
|
-
this.res.style.marginBottom = `${arr[3]}px`;
|
|
517
|
-
}
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
// alert("ROW.js 452"); //003337
|
|
521
|
-
//alert(value);
|
|
522
|
-
if (arr.includes("left")){
|
|
523
|
-
this.res.style.marginLeft = `${value}px`;
|
|
524
|
-
}
|
|
525
|
-
|
|
526
|
-
if (arr.includes("right")){
|
|
527
|
-
this.res.style.marginRight = `${value}px`;
|
|
528
|
-
} // 161357 Surovikin line
|
|
529
|
-
|
|
530
|
-
if (arr.includes("top")){
|
|
531
|
-
// alert(value)
|
|
532
|
-
this.res.style.marginTop = `${value}px`;
|
|
533
|
-
}
|
|
534
|
-
|
|
535
|
-
if (arr.includes("bottom")){
|
|
536
|
-
this.res.style.marginBottom = `${value}px`;
|
|
537
|
-
}
|
|
538
|
-
return this;
|
|
539
|
-
}
|
|
540
454
|
|
|
541
455
|
|
|
542
456
|
|
package/layout/code.js
CHANGED