@universityofmaryland/web-feeds-library 1.2.2 → 1.2.6

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.
Files changed (96) hide show
  1. package/README.md +1 -1
  2. package/dist/composite/academic/slider.js +2 -0
  3. package/dist/composite/academic/slider.js.map +1 -1
  4. package/dist/composite/academic/slider.mjs +2 -0
  5. package/dist/composite/academic/slider.mjs.map +1 -1
  6. package/dist/composite/events/common/data.d.ts +1 -5
  7. package/dist/composite/events/common/data.d.ts.map +1 -1
  8. package/dist/composite/events/common/data.js +1 -0
  9. package/dist/composite/events/common/data.js.map +1 -1
  10. package/dist/composite/events/common/data.mjs +1 -0
  11. package/dist/composite/events/common/data.mjs.map +1 -1
  12. package/dist/composite/events/common/display.d.ts +1 -0
  13. package/dist/composite/events/common/display.d.ts.map +1 -1
  14. package/dist/composite/events/common/display.js +2 -1
  15. package/dist/composite/events/common/display.js.map +1 -1
  16. package/dist/composite/events/common/display.mjs +2 -1
  17. package/dist/composite/events/common/display.mjs.map +1 -1
  18. package/dist/composite/events/common/fetch.d.ts +3 -0
  19. package/dist/composite/events/common/fetch.d.ts.map +1 -1
  20. package/dist/composite/events/common/fetch.js +20 -8
  21. package/dist/composite/events/common/fetch.js.map +1 -1
  22. package/dist/composite/events/common/fetch.mjs +20 -8
  23. package/dist/composite/events/common/fetch.mjs.map +1 -1
  24. package/dist/composite/events/common/queries.d.ts +4 -2
  25. package/dist/composite/events/common/queries.d.ts.map +1 -1
  26. package/dist/composite/events/common/queries.js +10 -4
  27. package/dist/composite/events/common/queries.js.map +1 -1
  28. package/dist/composite/events/common/queries.mjs +11 -5
  29. package/dist/composite/events/common/queries.mjs.map +1 -1
  30. package/dist/composite/events/grid.js +2 -0
  31. package/dist/composite/events/grid.js.map +1 -1
  32. package/dist/composite/events/grid.mjs +2 -0
  33. package/dist/composite/events/grid.mjs.map +1 -1
  34. package/dist/composite/events/grouped.d.ts.map +1 -1
  35. package/dist/composite/events/grouped.js +94 -37
  36. package/dist/composite/events/grouped.js.map +1 -1
  37. package/dist/composite/events/grouped.mjs +95 -38
  38. package/dist/composite/events/grouped.mjs.map +1 -1
  39. package/dist/composite/events/list.js +2 -0
  40. package/dist/composite/events/list.js.map +1 -1
  41. package/dist/composite/events/list.mjs +2 -0
  42. package/dist/composite/events/list.mjs.map +1 -1
  43. package/dist/composite/events/slider.js +2 -0
  44. package/dist/composite/events/slider.js.map +1 -1
  45. package/dist/composite/events/slider.mjs +2 -0
  46. package/dist/composite/events/slider.mjs.map +1 -1
  47. package/dist/composite/news/common/data.js +1 -0
  48. package/dist/composite/news/common/data.js.map +1 -1
  49. package/dist/composite/news/common/data.mjs +1 -0
  50. package/dist/composite/news/common/data.mjs.map +1 -1
  51. package/dist/composite/news/common/fetch.js +3 -1
  52. package/dist/composite/news/common/fetch.js.map +1 -1
  53. package/dist/composite/news/common/fetch.mjs +3 -1
  54. package/dist/composite/news/common/fetch.mjs.map +1 -1
  55. package/dist/composite/news/featured.js +2 -0
  56. package/dist/composite/news/featured.js.map +1 -1
  57. package/dist/composite/news/featured.mjs +2 -0
  58. package/dist/composite/news/featured.mjs.map +1 -1
  59. package/dist/composite/news/grid.js +2 -0
  60. package/dist/composite/news/grid.js.map +1 -1
  61. package/dist/composite/news/grid.mjs +2 -0
  62. package/dist/composite/news/grid.mjs.map +1 -1
  63. package/dist/composite/news/list.js +2 -0
  64. package/dist/composite/news/list.js.map +1 -1
  65. package/dist/composite/news/list.mjs +2 -0
  66. package/dist/composite/news/list.mjs.map +1 -1
  67. package/dist/elements/layout.d.ts +5 -17
  68. package/dist/elements/layout.d.ts.map +1 -1
  69. package/dist/elements/layout.js +36 -44
  70. package/dist/elements/layout.js.map +1 -1
  71. package/dist/elements/layout.mjs +37 -45
  72. package/dist/elements/layout.mjs.map +1 -1
  73. package/dist/macros/lazy-load.d.ts +2 -5
  74. package/dist/macros/lazy-load.d.ts.map +1 -1
  75. package/dist/macros/lazy-load.js +9 -18
  76. package/dist/macros/lazy-load.js.map +1 -1
  77. package/dist/macros/lazy-load.mjs +9 -18
  78. package/dist/macros/lazy-load.mjs.map +1 -1
  79. package/dist/macros/loader.d.ts +2 -5
  80. package/dist/macros/loader.d.ts.map +1 -1
  81. package/dist/macros/loader.js +39 -59
  82. package/dist/macros/loader.js.map +1 -1
  83. package/dist/macros/loader.mjs +39 -59
  84. package/dist/macros/loader.mjs.map +1 -1
  85. package/dist/macros/no-results.d.ts +2 -5
  86. package/dist/macros/no-results.d.ts.map +1 -1
  87. package/dist/macros/no-results.js +21 -26
  88. package/dist/macros/no-results.js.map +1 -1
  89. package/dist/macros/no-results.mjs +21 -26
  90. package/dist/macros/no-results.mjs.map +1 -1
  91. package/dist/macros/slider.d.ts.map +1 -1
  92. package/dist/macros/slider.js +2 -4
  93. package/dist/macros/slider.js.map +1 -1
  94. package/dist/macros/slider.mjs +2 -4
  95. package/dist/macros/slider.mjs.map +1 -1
  96. package/package.json +12 -3
@@ -1 +1 @@
1
- {"version":3,"file":"list.mjs","sources":["../../../source/composite/news/list.ts"],"sourcesContent":["import { Composite } from '@universityofmaryland/web-elements-library';\nimport * as feedElements from 'elements';\nimport * as feedMacros from 'macros';\nimport * as feedFetch from './common/fetch';\nimport * as feedDisplay from './common/display';\nimport * as dataComposed from './common/data';\nimport { type ListProps, type FeedDisplay } from './_types';\nimport { type ElementModel } from '../../_types';\n\nexport default (props: ListProps): ElementModel =>\n (() => {\n const { isThemeDark } = props;\n const loader = feedMacros.loader.create({ isThemeDark });\n const container = document.createElement('div');\n const setTotalEntries = (count: number) => (totalEntries = count);\n const setOffset = (count: number) => (offset = offset + count);\n const setStyles = (additonalStyles: string) => (styles += additonalStyles);\n const getContainer = () => container;\n const getTotalEntries = () => totalEntries;\n const getOffset = () => offset;\n const getStyles = () => styles;\n const getShadowRoot = () => shadowRoot;\n let totalEntries = 0;\n let offset = 0;\n let styles = `\n ${loader.styles}\n `;\n let shadowRoot: ShadowRoot | null = null;\n\n const helperFunctions = {\n setTotalEntries,\n setOffset,\n setStyles,\n getContainer,\n getOffset,\n getTotalEntries,\n getStyles,\n getShadowRoot,\n };\n\n const callback = (shadow: ShadowRoot) => {\n shadowRoot = shadow;\n };\n\n const displayResults = async ({ feedData }: FeedDisplay) => {\n await feedDisplay.resultLoad({\n ...props,\n ...helperFunctions,\n displayResults,\n entries: feedData.map((entry) =>\n Composite.card.list({\n ...dataComposed.display({ entry, isThemeDark }),\n image: feedElements.asset.standard({\n images: entry.image,\n url: entry.url,\n }),\n isAligned: false,\n }),\n ),\n });\n\n if (shadowRoot) {\n feedDisplay.setShadowStyles({\n shadowRoot,\n styles,\n });\n }\n };\n\n container.appendChild(loader.element);\n\n feedFetch.start({\n ...props,\n ...helperFunctions,\n displayResults,\n displayResultStart: feedDisplay.resultStart,\n displayNoResults: feedDisplay.noResults,\n layoutElement: feedElements.layout.stacked(isThemeDark),\n });\n\n return {\n element: container,\n styles,\n events: {\n callback,\n },\n };\n })();\n"],"names":["loader","feedMacros.loader","feedDisplay.resultLoad","dataComposed.display","feedElements.asset.standard","feedDisplay.setShadowStyles","feedFetch.start","feedDisplay.resultStart","feedDisplay.noResults","feedElements.layout.stacked"],"mappings":";;;;;;;;;;;AASA,MAAA,OAAe,CAAC,WACb,MAAM;AACL,QAAM,EAAE,gBAAgB;AACxB,QAAMA,WAASC,OAAkB,OAAO,EAAE,aAAa;AACvD,QAAM,YAAY,SAAS,cAAc,KAAK;AAC9C,QAAM,kBAAkB,CAAC,UAAmB,eAAe;AAC3D,QAAM,YAAY,CAAC,UAAmB,SAAS,SAAS;AACxD,QAAM,YAAY,CAAC,oBAA6B,UAAU;AAC1D,QAAM,eAAe,MAAM;AAC3B,QAAM,kBAAkB,MAAM;AAC9B,QAAM,YAAY,MAAM;AACxB,QAAM,YAAY,MAAM;AACxB,QAAM,gBAAgB,MAAM;AAC5B,MAAI,eAAe;AACnB,MAAI,SAAS;AACb,MAAI,SAAS;AAAA,QACTD,SAAO,MAAM;AAAA;AAEjB,MAAI,aAAgC;AAEpC,QAAM,kBAAkB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAGF,QAAM,WAAW,CAAC,WAAuB;AACvC,iBAAa;AAAA,EACf;AAEA,QAAM,iBAAiB,OAAO,EAAE,eAA4B;AAC1D,UAAME,WAAuB;AAAA,MAC3B,GAAG;AAAA,MACH,GAAG;AAAA,MACH;AAAA,MACA,SAAS,SAAS;AAAA,QAAI,CAAC,UACrB,UAAU,KAAK,KAAK;AAAA,UAClB,GAAGC,QAAqB,EAAE,OAAO,aAAa;AAAA,UAC9C,OAAOC,SAA4B;AAAA,YACjC,QAAQ,MAAM;AAAA,YACd,KAAK,MAAM;AAAA,UAAA,CACZ;AAAA,UACD,WAAW;AAAA,QAAA,CACZ;AAAA,MAAA;AAAA,IACH,CACD;AAED,QAAI,YAAY;AACdC,sBAA4B;AAAA,QAC1B;AAAA,QACA;AAAA,MAAA,CACD;AAAA,IACH;AAAA,EACF;AAEA,YAAU,YAAYL,SAAO,OAAO;AAEpCM,QAAgB;AAAA,IACd,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA,oBAAoBC;AAAAA,IACpB,kBAAkBC;AAAAA,IAClB,eAAeC,QAA4B,WAAW;AAAA,EAAA,CACvD;AAED,SAAO;AAAA,IACL,SAAS;AAAA,IACT;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,IAAA;AAAA,EACF;AAEJ,GAAA;"}
1
+ {"version":3,"file":"list.mjs","sources":["../../../source/composite/news/list.ts"],"sourcesContent":["import { Composite } from '@universityofmaryland/web-elements-library';\nimport * as feedElements from 'elements';\nimport * as feedMacros from 'macros';\nimport * as feedFetch from './common/fetch';\nimport * as feedDisplay from './common/display';\nimport * as dataComposed from './common/data';\nimport { type ListProps, type FeedDisplay } from './_types';\nimport { type ElementModel } from '../../_types';\n\nexport default (props: ListProps): ElementModel =>\n (() => {\n const { isThemeDark } = props;\n const loader = feedMacros.loader.create({ isThemeDark });\n const container = document.createElement('div');\n const setTotalEntries = (count: number) => (totalEntries = count);\n const setOffset = (count: number) => (offset = offset + count);\n const setStyles = (additonalStyles: string) => (styles += additonalStyles);\n const getContainer = () => container;\n const getTotalEntries = () => totalEntries;\n const getOffset = () => offset;\n const getStyles = () => styles;\n const getShadowRoot = () => shadowRoot;\n let totalEntries = 0;\n let offset = 0;\n let styles = `\n ${loader.styles}\n `;\n let shadowRoot: ShadowRoot | null = null;\n\n const helperFunctions = {\n setTotalEntries,\n setOffset,\n setStyles,\n getContainer,\n getOffset,\n getTotalEntries,\n getStyles,\n getShadowRoot,\n };\n\n const callback = (shadow: ShadowRoot) => {\n shadowRoot = shadow;\n };\n\n const displayResults = async ({ feedData }: FeedDisplay) => {\n await feedDisplay.resultLoad({\n ...props,\n ...helperFunctions,\n displayResults,\n entries: feedData.map((entry) =>\n Composite.card.list({\n ...dataComposed.display({ entry, isThemeDark }),\n image: feedElements.asset.standard({\n images: entry.image,\n url: entry.url,\n }),\n isAligned: false,\n }),\n ),\n });\n\n if (shadowRoot) {\n feedDisplay.setShadowStyles({\n shadowRoot,\n styles,\n });\n }\n };\n\n container.appendChild(loader.element);\n\n feedFetch.start({\n ...props,\n ...helperFunctions,\n displayResults,\n displayResultStart: feedDisplay.resultStart,\n displayNoResults: feedDisplay.noResults,\n layoutElement: feedElements.layout.stacked(isThemeDark),\n });\n\n return {\n element: container,\n styles,\n events: {\n callback,\n },\n };\n })();\n"],"names":["loader","feedMacros.loader","feedDisplay.resultLoad","dataComposed.display","feedElements.asset.standard","feedDisplay.setShadowStyles","feedFetch.start","feedDisplay.resultStart","feedDisplay.noResults","feedElements.layout.stacked"],"mappings":";;;;;;;;;;;;;AASA,MAAA,OAAe,CAAC,WACb,MAAM;AACL,QAAM,EAAE,gBAAgB;AACxB,QAAMA,WAASC,OAAkB,OAAO,EAAE,aAAa;AACvD,QAAM,YAAY,SAAS,cAAc,KAAK;AAC9C,QAAM,kBAAkB,CAAC,UAAmB,eAAe;AAC3D,QAAM,YAAY,CAAC,UAAmB,SAAS,SAAS;AACxD,QAAM,YAAY,CAAC,oBAA6B,UAAU;AAC1D,QAAM,eAAe,MAAM;AAC3B,QAAM,kBAAkB,MAAM;AAC9B,QAAM,YAAY,MAAM;AACxB,QAAM,YAAY,MAAM;AACxB,QAAM,gBAAgB,MAAM;AAC5B,MAAI,eAAe;AACnB,MAAI,SAAS;AACb,MAAI,SAAS;AAAA,QACTD,SAAO,MAAM;AAAA;AAEjB,MAAI,aAAgC;AAEpC,QAAM,kBAAkB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAGF,QAAM,WAAW,CAAC,WAAuB;AACvC,iBAAa;AAAA,EACf;AAEA,QAAM,iBAAiB,OAAO,EAAE,eAA4B;AAC1D,UAAME,WAAuB;AAAA,MAC3B,GAAG;AAAA,MACH,GAAG;AAAA,MACH;AAAA,MACA,SAAS,SAAS;AAAA,QAAI,CAAC,UACrB,UAAU,KAAK,KAAK;AAAA,UAClB,GAAGC,QAAqB,EAAE,OAAO,aAAa;AAAA,UAC9C,OAAOC,SAA4B;AAAA,YACjC,QAAQ,MAAM;AAAA,YACd,KAAK,MAAM;AAAA,UAAA,CACZ;AAAA,UACD,WAAW;AAAA,QAAA,CACZ;AAAA,MAAA;AAAA,IACH,CACD;AAED,QAAI,YAAY;AACdC,sBAA4B;AAAA,QAC1B;AAAA,QACA;AAAA,MAAA,CACD;AAAA,IACH;AAAA,EACF;AAEA,YAAU,YAAYL,SAAO,OAAO;AAEpCM,QAAgB;AAAA,IACd,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA,oBAAoBC;AAAAA,IACpB,kBAAkBC;AAAAA,IAClB,eAAeC,QAA4B,WAAW;AAAA,EAAA,CACvD;AAED,SAAO;AAAA,IACL,SAAS;AAAA,IACT;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,IAAA;AAAA,EACF;AAEJ,GAAA;"}
@@ -1,27 +1,15 @@
1
- export declare const stacked: (isThemeDark?: boolean) => {
2
- element: HTMLElement;
3
- styles: string;
4
- };
1
+ import { ElementModel } from '../_types';
2
+ export declare const stacked: (isThemeDark?: boolean) => ElementModel;
5
3
  export declare const grid: ({ count, }: {
6
4
  count?: number;
7
5
  isTypeGap?: boolean;
8
- }) => {
9
- element: HTMLElement;
10
- styles: string;
11
- };
6
+ }) => ElementModel;
12
7
  export declare const gridGap: ({ count, }: {
13
8
  count?: number;
14
- }) => {
15
- element: HTMLElement;
16
- styles: string;
17
- };
9
+ }) => ElementModel;
18
10
  export declare const gridOffsetGap: ({ count, isLayoutReversed, overwriteStickyPosition, }: {
19
11
  count?: number;
20
12
  isLayoutReversed?: boolean;
21
13
  overwriteStickyPosition?: number;
22
- }) => {
23
- element: HTMLElement;
24
- className: string;
25
- styles: string;
26
- };
14
+ }) => ElementModel;
27
15
  //# sourceMappingURL=layout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../source/elements/layout.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,GAClB,cAAc,OAAO,KACpB;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAyBrC,CAAC;AAEL,eAAO,MAAM,IAAI,GAAI,YAElB;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,KAAG;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAiBtC,CAAC;AAEL,eAAO,MAAM,OAAO,GAAI,YAErB;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,KAAG;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAetC,CAAC;AAEL,eAAO,MAAM,aAAa,GAAI,uDAI3B;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;;;;CAyCG,CAAC"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../source/elements/layout.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,eAAO,MAAM,OAAO,GAClB,cAAc,OAAO,KACpB,YAyBS,CAAC;AAEb,eAAO,MAAM,IAAI,GAAI,YAElB;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,KAAG,YAkBH,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,YAErB;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,KAAG,YAgBH,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,uDAI3B;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC,KAAG,YA0CH,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const Styles = require("@universityofmaryland/web-styles-library");
4
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
4
5
  const webElementsLibrary = require("@universityofmaryland/web-elements-library");
5
6
  function _interopNamespaceDefault(e) {
6
7
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -19,30 +20,29 @@ function _interopNamespaceDefault(e) {
19
20
  return Object.freeze(n);
20
21
  }
21
22
  const Styles__namespace = /* @__PURE__ */ _interopNamespaceDefault(Styles);
22
- const stacked = (isThemeDark) => webElementsLibrary.Model.ElementModel.layout.gridStacked({
23
- element: document.createElement("div"),
24
- elementStyles: {
25
- element: {
26
- gridGap: `${Styles__namespace.token.spacing.md}`,
27
- [` > *`]: {
28
- containerType: "inline-size"
29
- },
30
- [` > *:not(:last-child)`]: {
31
- paddingBottom: `${Styles__namespace.token.spacing.md}`,
32
- marginBottom: `${Styles__namespace.token.spacing.md}`,
33
- borderBottom: `${isThemeDark ? `1px solid ${Styles__namespace.token.color.gray.dark}` : `1px solid ${Styles__namespace.token.color.gray.light}`}`
34
- },
35
- [`& .${Styles__namespace.element.asset.image.wrapperScaled.className}`]: {
36
- alignSelf: "flex-start"
37
- }
23
+ const stacked = (isThemeDark) => new webBuilderLibrary.ElementBuilder().styled(Styles__namespace.layout.grid.stacked).withStyles({
24
+ element: {
25
+ gridGap: `${Styles__namespace.token.spacing.md}`,
26
+ [` > *`]: {
27
+ containerType: "inline-size"
28
+ },
29
+ [` > *:not(:last-child)`]: {
30
+ paddingBottom: `${Styles__namespace.token.spacing.md}`,
31
+ marginBottom: `${Styles__namespace.token.spacing.md}`,
32
+ borderBottom: `${isThemeDark ? `1px solid ${Styles__namespace.token.color.gray.dark}` : `1px solid ${Styles__namespace.token.color.gray.light}`}`
33
+ },
34
+ [`& .${Styles__namespace.element.asset.image.wrapperScaled.className}`]: {
35
+ alignSelf: "flex-start"
38
36
  }
39
37
  }
40
- });
38
+ }).build();
41
39
  const grid = ({
42
40
  count = 2
43
- }) => webElementsLibrary.Model.ElementModel.layout.grid({
44
- element: document.createElement("div"),
45
- elementStyles: {
41
+ }) => {
42
+ let gridStyle = Styles__namespace.layout.grid.columnsTwo;
43
+ if (count === 3) gridStyle = Styles__namespace.layout.grid.columnsThree;
44
+ if (count === 4) gridStyle = Styles__namespace.layout.grid.columnsFour;
45
+ return new webBuilderLibrary.ElementBuilder().styled(gridStyle).withStyles({
46
46
  element: {
47
47
  [` > *`]: {
48
48
  containerType: "inline-size",
@@ -51,36 +51,32 @@ const grid = ({
51
51
  }
52
52
  }
53
53
  }
54
- },
55
- isGap: false,
56
- isColumnsTwo: count === 2,
57
- isColumnsThree: count === 3,
58
- isColumnsFour: count === 4
59
- });
54
+ }).build();
55
+ };
60
56
  const gridGap = ({
61
57
  count = 2
62
- }) => webElementsLibrary.Model.ElementModel.layout.grid({
63
- element: document.createElement("div"),
64
- elementStyles: {
58
+ }) => {
59
+ let gridStyle = Styles__namespace.layout.grid.gap.two;
60
+ if (count === 3) gridStyle = Styles__namespace.layout.grid.gap.three;
61
+ if (count === 4) gridStyle = Styles__namespace.layout.grid.gap.four;
62
+ return new webBuilderLibrary.ElementBuilder().styled(gridStyle).withStyles({
65
63
  element: {
66
64
  [` > *`]: {
67
65
  alignSelf: "flex-start",
68
66
  containerType: "inline-size"
69
67
  }
70
68
  }
71
- },
72
- isGap: true,
73
- isColumnsTwo: count === 2,
74
- isColumnsThree: count === 3,
75
- isColumnsFour: count === 4
76
- });
69
+ }).build();
70
+ };
77
71
  const gridOffsetGap = ({
78
72
  count = 2,
79
73
  isLayoutReversed,
80
74
  overwriteStickyPosition = 0
81
- }) => webElementsLibrary.Model.ElementModel.layout.grid({
82
- element: document.createElement("div"),
83
- elementStyles: {
75
+ }) => {
76
+ let gridStyle = Styles__namespace.layout.grid.gap.two;
77
+ if (count === 3) gridStyle = Styles__namespace.layout.grid.gap.three;
78
+ if (count === 4) gridStyle = Styles__namespace.layout.grid.gap.four;
79
+ return new webBuilderLibrary.ElementBuilder().styled(gridStyle).withStyles({
84
80
  element: {
85
81
  [` > *`]: {
86
82
  alignSelf: "flex-start",
@@ -108,12 +104,8 @@ const gridOffsetGap = ({
108
104
  }
109
105
  }
110
106
  }
111
- },
112
- isGap: true,
113
- isColumnsTwo: count === 2,
114
- isColumnsThree: count === 3,
115
- isColumnsFour: count === 4
116
- });
107
+ }).build();
108
+ };
117
109
  exports.grid = grid;
118
110
  exports.gridGap = gridGap;
119
111
  exports.gridOffsetGap = gridOffsetGap;
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sources":["../../source/elements/layout.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { Model, Composite } from '@universityofmaryland/web-elements-library';\n\nexport const stacked = (\n isThemeDark?: boolean,\n): { element: HTMLElement; styles: string } =>\n Model.ElementModel.layout.gridStacked({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n gridGap: `${Styles.token.spacing.md}`,\n [` > *`]: {\n containerType: 'inline-size',\n },\n\n [` > *:not(:last-child)`]: {\n paddingBottom: `${Styles.token.spacing.md}`,\n marginBottom: `${Styles.token.spacing.md}`,\n borderBottom: `${\n isThemeDark\n ? `1px solid ${Styles.token.color.gray.dark}`\n : `1px solid ${Styles.token.color.gray.light}`\n }`,\n },\n\n [`& .${Styles.element.asset.image.wrapperScaled.className}`]: {\n alignSelf: 'flex-start',\n },\n },\n },\n });\n\nexport const grid = ({\n count = 2,\n}: {\n count?: number;\n isTypeGap?: boolean;\n}): { element: HTMLElement; styles: string } =>\n Model.ElementModel.layout.grid({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n [` > *`]: {\n containerType: 'inline-size',\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n },\n },\n isGap: false,\n isColumnsTwo: count === 2,\n isColumnsThree: count === 3,\n isColumnsFour: count === 4,\n });\n\nexport const gridGap = ({\n count = 2,\n}: {\n count?: number;\n}): { element: HTMLElement; styles: string } =>\n Model.ElementModel.layout.grid({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n },\n },\n isGap: true,\n isColumnsTwo: count === 2,\n isColumnsThree: count === 3,\n isColumnsFour: count === 4,\n });\n\nexport const gridOffsetGap = ({\n count = 2,\n isLayoutReversed,\n overwriteStickyPosition = 0,\n}: {\n count?: number;\n isLayoutReversed?: boolean;\n overwriteStickyPosition?: number;\n}) =>\n Model.ElementModel.layout.grid({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n\n [` > *:first-child`]: {\n order: isLayoutReversed ? 2 : -1,\n },\n\n [`& .${Composite.card.overlay.imageClassRef}`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n height: 'inherit',\n position: 'sticky',\n top: `${overwriteStickyPosition}px`,\n },\n\n [`*`]: {\n color: `${Styles.token.color.white}`,\n },\n\n [`& > div`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n\n [`.${Styles.element.asset.image.wrapperScaled.className}`]: {\n position: 'absolute',\n },\n },\n },\n },\n isGap: true,\n isColumnsTwo: count === 2,\n isColumnsThree: count === 3,\n isColumnsFour: count === 4,\n });\n"],"names":["Model","Styles","Composite"],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sources":["../../source/elements/layout.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { Composite } from '@universityofmaryland/web-elements-library';\nimport { type ElementModel } from '../_types';\n\nexport const stacked = (\n isThemeDark?: boolean,\n): ElementModel =>\n new ElementBuilder()\n .styled(Styles.layout.grid.stacked)\n .withStyles({\n element: {\n gridGap: `${Styles.token.spacing.md}`,\n [` > *`]: {\n containerType: 'inline-size',\n },\n\n [` > *:not(:last-child)`]: {\n paddingBottom: `${Styles.token.spacing.md}`,\n marginBottom: `${Styles.token.spacing.md}`,\n borderBottom: `${\n isThemeDark\n ? `1px solid ${Styles.token.color.gray.dark}`\n : `1px solid ${Styles.token.color.gray.light}`\n }`,\n },\n\n [`& .${Styles.element.asset.image.wrapperScaled.className}`]: {\n alignSelf: 'flex-start',\n },\n },\n })\n .build();\n\nexport const grid = ({\n count = 2,\n}: {\n count?: number;\n isTypeGap?: boolean;\n}): ElementModel => {\n let gridStyle = Styles.layout.grid.columnsTwo;\n if (count === 3) gridStyle = Styles.layout.grid.columnsThree;\n if (count === 4) gridStyle = Styles.layout.grid.columnsFour;\n\n return new ElementBuilder()\n .styled(gridStyle)\n .withStyles({\n element: {\n [` > *`]: {\n containerType: 'inline-size',\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n },\n })\n .build();\n};\n\nexport const gridGap = ({\n count = 2,\n}: {\n count?: number;\n}): ElementModel => {\n let gridStyle = Styles.layout.grid.gap.two;\n if (count === 3) gridStyle = Styles.layout.grid.gap.three;\n if (count === 4) gridStyle = Styles.layout.grid.gap.four;\n\n return new ElementBuilder()\n .styled(gridStyle)\n .withStyles({\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n },\n })\n .build();\n};\n\nexport const gridOffsetGap = ({\n count = 2,\n isLayoutReversed,\n overwriteStickyPosition = 0,\n}: {\n count?: number;\n isLayoutReversed?: boolean;\n overwriteStickyPosition?: number;\n}): ElementModel => {\n let gridStyle = Styles.layout.grid.gap.two;\n if (count === 3) gridStyle = Styles.layout.grid.gap.three;\n if (count === 4) gridStyle = Styles.layout.grid.gap.four;\n\n return new ElementBuilder()\n .styled(gridStyle)\n .withStyles({\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n\n [` > *:first-child`]: {\n order: isLayoutReversed ? 2 : -1,\n },\n\n [`& .${Composite.card.overlay.imageClassRef}`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n height: 'inherit',\n position: 'sticky',\n top: `${overwriteStickyPosition}px`,\n },\n\n [`*`]: {\n color: `${Styles.token.color.white}`,\n },\n\n [`& > div`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n\n [`.${Styles.element.asset.image.wrapperScaled.className}`]: {\n position: 'absolute',\n },\n },\n },\n })\n .build();\n};\n"],"names":["ElementBuilder","Styles","Composite"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAKO,MAAM,UAAU,CACrB,gBAEA,IAAIA,kBAAAA,iBACD,OAAOC,kBAAO,OAAO,KAAK,OAAO,EACjC,WAAW;AAAA,EACV,SAAS;AAAA,IACP,SAAS,GAAGA,kBAAO,MAAM,QAAQ,EAAE;AAAA,IACnC,CAAC,MAAM,GAAG;AAAA,MACR,eAAe;AAAA,IAAA;AAAA,IAGjB,CAAC,uBAAuB,GAAG;AAAA,MACzB,eAAe,GAAGA,kBAAO,MAAM,QAAQ,EAAE;AAAA,MACzC,cAAc,GAAGA,kBAAO,MAAM,QAAQ,EAAE;AAAA,MACxC,cAAc,GACZ,cACI,aAAaA,kBAAO,MAAM,MAAM,KAAK,IAAI,KACzC,aAAaA,kBAAO,MAAM,MAAM,KAAK,KAAK,EAChD;AAAA,IAAA;AAAA,IAGF,CAAC,MAAMA,kBAAO,QAAQ,MAAM,MAAM,cAAc,SAAS,EAAE,GAAG;AAAA,MAC5D,WAAW;AAAA,IAAA;AAAA,EACb;AAEJ,CAAC,EACA,MAAA;AAEE,MAAM,OAAO,CAAC;AAAA,EACnB,QAAQ;AACV,MAGoB;AAClB,MAAI,YAAYA,kBAAO,OAAO,KAAK;AACnC,MAAI,UAAU,EAAG,aAAYA,kBAAO,OAAO,KAAK;AAChD,MAAI,UAAU,EAAG,aAAYA,kBAAO,OAAO,KAAK;AAEhD,SAAO,IAAID,kBAAAA,eAAA,EACR,OAAO,SAAS,EAChB,WAAW;AAAA,IACV,SAAS;AAAA,MACP,CAAC,MAAM,GAAG;AAAA,QACR,eAAe;AAAA,QACf,CAAC,WAAWC,kBAAO,MAAM,MAAM,QAAQ,MAAM,GAAG,GAAG,GAAG;AAAA,UACpD,WAAW;AAAA,QAAA;AAAA,MACb;AAAA,IACF;AAAA,EACF,CACD,EACA,MAAA;AACL;AAEO,MAAM,UAAU,CAAC;AAAA,EACtB,QAAQ;AACV,MAEoB;AAClB,MAAI,YAAYA,kBAAO,OAAO,KAAK,IAAI;AACvC,MAAI,UAAU,EAAG,aAAYA,kBAAO,OAAO,KAAK,IAAI;AACpD,MAAI,UAAU,EAAG,aAAYA,kBAAO,OAAO,KAAK,IAAI;AAEpD,SAAO,IAAID,kBAAAA,eAAA,EACR,OAAO,SAAS,EAChB,WAAW;AAAA,IACV,SAAS;AAAA,MACP,CAAC,MAAM,GAAG;AAAA,QACR,WAAW;AAAA,QACX,eAAe;AAAA,MAAA;AAAA,IACjB;AAAA,EACF,CACD,EACA,MAAA;AACL;AAEO,MAAM,gBAAgB,CAAC;AAAA,EAC5B,QAAQ;AAAA,EACR;AAAA,EACA,0BAA0B;AAC5B,MAIoB;AAClB,MAAI,YAAYC,kBAAO,OAAO,KAAK,IAAI;AACvC,MAAI,UAAU,EAAG,aAAYA,kBAAO,OAAO,KAAK,IAAI;AACpD,MAAI,UAAU,EAAG,aAAYA,kBAAO,OAAO,KAAK,IAAI;AAEpD,SAAO,IAAID,kBAAAA,eAAA,EACR,OAAO,SAAS,EAChB,WAAW;AAAA,IACV,SAAS;AAAA,MACP,CAAC,MAAM,GAAG;AAAA,QACR,WAAW;AAAA,QACX,eAAe;AAAA,MAAA;AAAA,MAGjB,CAAC,kBAAkB,GAAG;AAAA,QACpB,OAAO,mBAAmB,IAAI;AAAA,MAAA;AAAA,MAGhC,CAAC,MAAME,mBAAAA,UAAU,KAAK,QAAQ,aAAa,EAAE,GAAG;AAAA,QAC9C,CAAC,WAAWD,kBAAO,MAAM,MAAM,QAAQ,MAAM,GAAG,GAAG,GAAG;AAAA,UACpD,QAAQ;AAAA,UACR,UAAU;AAAA,UACV,KAAK,GAAG,uBAAuB;AAAA,QAAA;AAAA,QAGjC,CAAC,GAAG,GAAG;AAAA,UACL,OAAO,GAAGA,kBAAO,MAAM,MAAM,KAAK;AAAA,QAAA;AAAA,QAGpC,CAAC,SAAS,GAAG;AAAA,UACX,CAAC,WAAWA,kBAAO,MAAM,MAAM,QAAQ,MAAM,GAAG,GAAG,GAAG;AAAA,YACpD,WAAW;AAAA,UAAA;AAAA,QACb;AAAA,QAGF,CAAC,IAAIA,kBAAO,QAAQ,MAAM,MAAM,cAAc,SAAS,EAAE,GAAG;AAAA,UAC1D,UAAU;AAAA,QAAA;AAAA,MACZ;AAAA,IACF;AAAA,EACF,CACD,EACA,MAAA;AACL;;;;;"}
@@ -1,29 +1,29 @@
1
1
  import * as Styles from "@universityofmaryland/web-styles-library";
2
- import { Model, Composite } from "@universityofmaryland/web-elements-library";
3
- const stacked = (isThemeDark) => Model.ElementModel.layout.gridStacked({
4
- element: document.createElement("div"),
5
- elementStyles: {
6
- element: {
7
- gridGap: `${Styles.token.spacing.md}`,
8
- [` > *`]: {
9
- containerType: "inline-size"
10
- },
11
- [` > *:not(:last-child)`]: {
12
- paddingBottom: `${Styles.token.spacing.md}`,
13
- marginBottom: `${Styles.token.spacing.md}`,
14
- borderBottom: `${isThemeDark ? `1px solid ${Styles.token.color.gray.dark}` : `1px solid ${Styles.token.color.gray.light}`}`
15
- },
16
- [`& .${Styles.element.asset.image.wrapperScaled.className}`]: {
17
- alignSelf: "flex-start"
18
- }
2
+ import { ElementBuilder } from "@universityofmaryland/web-builder-library";
3
+ import { Composite } from "@universityofmaryland/web-elements-library";
4
+ const stacked = (isThemeDark) => new ElementBuilder().styled(Styles.layout.grid.stacked).withStyles({
5
+ element: {
6
+ gridGap: `${Styles.token.spacing.md}`,
7
+ [` > *`]: {
8
+ containerType: "inline-size"
9
+ },
10
+ [` > *:not(:last-child)`]: {
11
+ paddingBottom: `${Styles.token.spacing.md}`,
12
+ marginBottom: `${Styles.token.spacing.md}`,
13
+ borderBottom: `${isThemeDark ? `1px solid ${Styles.token.color.gray.dark}` : `1px solid ${Styles.token.color.gray.light}`}`
14
+ },
15
+ [`& .${Styles.element.asset.image.wrapperScaled.className}`]: {
16
+ alignSelf: "flex-start"
19
17
  }
20
18
  }
21
- });
19
+ }).build();
22
20
  const grid = ({
23
21
  count = 2
24
- }) => Model.ElementModel.layout.grid({
25
- element: document.createElement("div"),
26
- elementStyles: {
22
+ }) => {
23
+ let gridStyle = Styles.layout.grid.columnsTwo;
24
+ if (count === 3) gridStyle = Styles.layout.grid.columnsThree;
25
+ if (count === 4) gridStyle = Styles.layout.grid.columnsFour;
26
+ return new ElementBuilder().styled(gridStyle).withStyles({
27
27
  element: {
28
28
  [` > *`]: {
29
29
  containerType: "inline-size",
@@ -32,36 +32,32 @@ const grid = ({
32
32
  }
33
33
  }
34
34
  }
35
- },
36
- isGap: false,
37
- isColumnsTwo: count === 2,
38
- isColumnsThree: count === 3,
39
- isColumnsFour: count === 4
40
- });
35
+ }).build();
36
+ };
41
37
  const gridGap = ({
42
38
  count = 2
43
- }) => Model.ElementModel.layout.grid({
44
- element: document.createElement("div"),
45
- elementStyles: {
39
+ }) => {
40
+ let gridStyle = Styles.layout.grid.gap.two;
41
+ if (count === 3) gridStyle = Styles.layout.grid.gap.three;
42
+ if (count === 4) gridStyle = Styles.layout.grid.gap.four;
43
+ return new ElementBuilder().styled(gridStyle).withStyles({
46
44
  element: {
47
45
  [` > *`]: {
48
46
  alignSelf: "flex-start",
49
47
  containerType: "inline-size"
50
48
  }
51
49
  }
52
- },
53
- isGap: true,
54
- isColumnsTwo: count === 2,
55
- isColumnsThree: count === 3,
56
- isColumnsFour: count === 4
57
- });
50
+ }).build();
51
+ };
58
52
  const gridOffsetGap = ({
59
53
  count = 2,
60
54
  isLayoutReversed,
61
55
  overwriteStickyPosition = 0
62
- }) => Model.ElementModel.layout.grid({
63
- element: document.createElement("div"),
64
- elementStyles: {
56
+ }) => {
57
+ let gridStyle = Styles.layout.grid.gap.two;
58
+ if (count === 3) gridStyle = Styles.layout.grid.gap.three;
59
+ if (count === 4) gridStyle = Styles.layout.grid.gap.four;
60
+ return new ElementBuilder().styled(gridStyle).withStyles({
65
61
  element: {
66
62
  [` > *`]: {
67
63
  alignSelf: "flex-start",
@@ -89,12 +85,8 @@ const gridOffsetGap = ({
89
85
  }
90
86
  }
91
87
  }
92
- },
93
- isGap: true,
94
- isColumnsTwo: count === 2,
95
- isColumnsThree: count === 3,
96
- isColumnsFour: count === 4
97
- });
88
+ }).build();
89
+ };
98
90
  export {
99
91
  grid,
100
92
  gridGap,
@@ -1 +1 @@
1
- {"version":3,"file":"layout.mjs","sources":["../../source/elements/layout.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { Model, Composite } from '@universityofmaryland/web-elements-library';\n\nexport const stacked = (\n isThemeDark?: boolean,\n): { element: HTMLElement; styles: string } =>\n Model.ElementModel.layout.gridStacked({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n gridGap: `${Styles.token.spacing.md}`,\n [` > *`]: {\n containerType: 'inline-size',\n },\n\n [` > *:not(:last-child)`]: {\n paddingBottom: `${Styles.token.spacing.md}`,\n marginBottom: `${Styles.token.spacing.md}`,\n borderBottom: `${\n isThemeDark\n ? `1px solid ${Styles.token.color.gray.dark}`\n : `1px solid ${Styles.token.color.gray.light}`\n }`,\n },\n\n [`& .${Styles.element.asset.image.wrapperScaled.className}`]: {\n alignSelf: 'flex-start',\n },\n },\n },\n });\n\nexport const grid = ({\n count = 2,\n}: {\n count?: number;\n isTypeGap?: boolean;\n}): { element: HTMLElement; styles: string } =>\n Model.ElementModel.layout.grid({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n [` > *`]: {\n containerType: 'inline-size',\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n },\n },\n isGap: false,\n isColumnsTwo: count === 2,\n isColumnsThree: count === 3,\n isColumnsFour: count === 4,\n });\n\nexport const gridGap = ({\n count = 2,\n}: {\n count?: number;\n}): { element: HTMLElement; styles: string } =>\n Model.ElementModel.layout.grid({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n },\n },\n isGap: true,\n isColumnsTwo: count === 2,\n isColumnsThree: count === 3,\n isColumnsFour: count === 4,\n });\n\nexport const gridOffsetGap = ({\n count = 2,\n isLayoutReversed,\n overwriteStickyPosition = 0,\n}: {\n count?: number;\n isLayoutReversed?: boolean;\n overwriteStickyPosition?: number;\n}) =>\n Model.ElementModel.layout.grid({\n element: document.createElement('div'),\n elementStyles: {\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n\n [` > *:first-child`]: {\n order: isLayoutReversed ? 2 : -1,\n },\n\n [`& .${Composite.card.overlay.imageClassRef}`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n height: 'inherit',\n position: 'sticky',\n top: `${overwriteStickyPosition}px`,\n },\n\n [`*`]: {\n color: `${Styles.token.color.white}`,\n },\n\n [`& > div`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n\n [`.${Styles.element.asset.image.wrapperScaled.className}`]: {\n position: 'absolute',\n },\n },\n },\n },\n isGap: true,\n isColumnsTwo: count === 2,\n isColumnsThree: count === 3,\n isColumnsFour: count === 4,\n });\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.mjs","sources":["../../source/elements/layout.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { Composite } from '@universityofmaryland/web-elements-library';\nimport { type ElementModel } from '../_types';\n\nexport const stacked = (\n isThemeDark?: boolean,\n): ElementModel =>\n new ElementBuilder()\n .styled(Styles.layout.grid.stacked)\n .withStyles({\n element: {\n gridGap: `${Styles.token.spacing.md}`,\n [` > *`]: {\n containerType: 'inline-size',\n },\n\n [` > *:not(:last-child)`]: {\n paddingBottom: `${Styles.token.spacing.md}`,\n marginBottom: `${Styles.token.spacing.md}`,\n borderBottom: `${\n isThemeDark\n ? `1px solid ${Styles.token.color.gray.dark}`\n : `1px solid ${Styles.token.color.gray.light}`\n }`,\n },\n\n [`& .${Styles.element.asset.image.wrapperScaled.className}`]: {\n alignSelf: 'flex-start',\n },\n },\n })\n .build();\n\nexport const grid = ({\n count = 2,\n}: {\n count?: number;\n isTypeGap?: boolean;\n}): ElementModel => {\n let gridStyle = Styles.layout.grid.columnsTwo;\n if (count === 3) gridStyle = Styles.layout.grid.columnsThree;\n if (count === 4) gridStyle = Styles.layout.grid.columnsFour;\n\n return new ElementBuilder()\n .styled(gridStyle)\n .withStyles({\n element: {\n [` > *`]: {\n containerType: 'inline-size',\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n },\n })\n .build();\n};\n\nexport const gridGap = ({\n count = 2,\n}: {\n count?: number;\n}): ElementModel => {\n let gridStyle = Styles.layout.grid.gap.two;\n if (count === 3) gridStyle = Styles.layout.grid.gap.three;\n if (count === 4) gridStyle = Styles.layout.grid.gap.four;\n\n return new ElementBuilder()\n .styled(gridStyle)\n .withStyles({\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n },\n })\n .build();\n};\n\nexport const gridOffsetGap = ({\n count = 2,\n isLayoutReversed,\n overwriteStickyPosition = 0,\n}: {\n count?: number;\n isLayoutReversed?: boolean;\n overwriteStickyPosition?: number;\n}): ElementModel => {\n let gridStyle = Styles.layout.grid.gap.two;\n if (count === 3) gridStyle = Styles.layout.grid.gap.three;\n if (count === 4) gridStyle = Styles.layout.grid.gap.four;\n\n return new ElementBuilder()\n .styled(gridStyle)\n .withStyles({\n element: {\n [` > *`]: {\n alignSelf: 'flex-start',\n containerType: 'inline-size',\n },\n\n [` > *:first-child`]: {\n order: isLayoutReversed ? 2 : -1,\n },\n\n [`& .${Composite.card.overlay.imageClassRef}`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n height: 'inherit',\n position: 'sticky',\n top: `${overwriteStickyPosition}px`,\n },\n\n [`*`]: {\n color: `${Styles.token.color.white}`,\n },\n\n [`& > div`]: {\n [`@media (${Styles.token.media.queries.large.min})`]: {\n minHeight: '560px !important',\n },\n },\n\n [`.${Styles.element.asset.image.wrapperScaled.className}`]: {\n position: 'absolute',\n },\n },\n },\n })\n .build();\n};\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { ElementModel } from '../_types';
1
2
  type LazyLoadCreate = {
2
3
  callback: (args: any) => void;
3
4
  isThemeDark?: boolean;
@@ -9,11 +10,7 @@ declare const _default: {
9
10
  remove: ({ container }: {
10
11
  container: HTMLElement;
11
12
  }) => void;
12
- create: ({ callback, isThemeDark, isLazyLoad, totalEntries, offset, }: LazyLoadCreate) => {
13
- element: HTMLElement;
14
- className: string;
15
- styles: string;
16
- } | undefined;
13
+ create: ({ callback, isThemeDark, isLazyLoad, totalEntries, offset, }: LazyLoadCreate) => ElementModel | undefined;
17
14
  };
18
15
  export default _default;
19
16
  //# sourceMappingURL=lazy-load.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-load.d.ts","sourceRoot":"","sources":["../../source/macros/lazy-load.ts"],"names":[],"mappings":"AAGA,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;;4BAuC6B;QAAE,SAAS,EAAE,WAAW,CAAA;KAAE;2EA/BtD,cAAc;;;;;;AAuCjB,wBAGE"}
1
+ {"version":3,"file":"lazy-load.d.ts","sourceRoot":"","sources":["../../source/macros/lazy-load.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;;4BAkC6B;QAAE,SAAS,EAAE,WAAW,CAAA;KAAE;2EA1BtD,cAAc,KAAG,YAAY,GAAG,SAAS;;AAkC5C,wBAGE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  const Styles = require("@universityofmaryland/web-styles-library");
3
- const webElementsLibrary = require("@universityofmaryland/web-elements-library");
3
+ const webBuilderLibrary = require("@universityofmaryland/web-builder-library");
4
4
  function _interopNamespaceDefault(e) {
5
5
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
6
6
  if (e) {
@@ -30,24 +30,15 @@ const create = ({
30
30
  if (!offset) return;
31
31
  if (!callback) return;
32
32
  if (offset >= totalEntries) return;
33
- const composite = webElementsLibrary.Model.ElementModel.layout.alignedCenter({
34
- element: document.createElement("div"),
35
- isThemeDark,
36
- elementStyles: {
37
- element: {
38
- marginTop: `${Styles__namespace.token.spacing.lg}`
39
- }
33
+ const button = document.createElement("button");
34
+ button.innerHTML = "Load more";
35
+ button.addEventListener("click", callback);
36
+ const ctaButton = new webBuilderLibrary.ElementBuilder(button).styled(Styles__namespace.element.action.outline.normal).build();
37
+ return new webBuilderLibrary.ElementBuilder().styled(Styles__namespace.layout.alignment.block.center).withChild(ctaButton).withStyles({
38
+ element: {
39
+ marginTop: `${Styles__namespace.token.spacing.lg}`
40
40
  }
41
- });
42
- const ctaButton = webElementsLibrary.Model.ElementModel.actions.outlineOptions({
43
- element: document.createElement("button"),
44
- isThemeDark
45
- });
46
- ctaButton.element.innerHTML = "Load more";
47
- ctaButton.element.addEventListener("click", callback);
48
- composite.element.appendChild(ctaButton.element);
49
- composite.styles += ctaButton.styles;
50
- return composite;
41
+ }).build();
51
42
  };
52
43
  const remove = ({ container }) => {
53
44
  const button = container.querySelector(
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-load.js","sources":["../../source/macros/lazy-load.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { Model } from '@universityofmaryland/web-elements-library';\n\ntype LazyLoadCreate = {\n callback: (args: any) => void;\n isThemeDark?: boolean;\n isLazyLoad: boolean;\n totalEntries: number | null;\n offset: number;\n};\n\nconst create = ({\n callback,\n isThemeDark,\n isLazyLoad,\n totalEntries,\n offset,\n}: LazyLoadCreate) => {\n if (!isLazyLoad) return;\n if (!totalEntries) return;\n if (!offset) return;\n if (!callback) return;\n if (offset >= totalEntries) return;\n\n const composite = Model.ElementModel.layout.alignedCenter({\n element: document.createElement('div'),\n isThemeDark,\n elementStyles: {\n element: {\n marginTop: `${Styles.token.spacing.lg}`,\n },\n },\n });\n\n const ctaButton = Model.ElementModel.actions.outlineOptions({\n element: document.createElement('button'),\n isThemeDark,\n });\n\n ctaButton.element.innerHTML = 'Load more';\n ctaButton.element.addEventListener('click', callback);\n\n composite.element.appendChild(ctaButton.element);\n composite.styles += ctaButton.styles;\n\n return composite;\n};\n\nconst remove = ({ container }: { container: HTMLElement }) => {\n const button = container.querySelector(\n `.${Styles.layout.alignment.block.center.className}`,\n ) as HTMLDivElement;\n\n if (button) button.remove();\n};\n\nexport default {\n remove,\n create,\n};\n"],"names":["Model","Styles"],"mappings":";;;;;;;;;;;;;;;;;;;;AAWA,MAAM,SAAS,CAAC;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAsB;AACpB,MAAI,CAAC,WAAY;AACjB,MAAI,CAAC,aAAc;AACnB,MAAI,CAAC,OAAQ;AACb,MAAI,CAAC,SAAU;AACf,MAAI,UAAU,aAAc;AAE5B,QAAM,YAAYA,mBAAAA,MAAM,aAAa,OAAO,cAAc;AAAA,IACxD,SAAS,SAAS,cAAc,KAAK;AAAA,IACrC;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,QACP,WAAW,GAAGC,kBAAO,MAAM,QAAQ,EAAE;AAAA,MAAA;AAAA,IACvC;AAAA,EACF,CACD;AAED,QAAM,YAAYD,mBAAAA,MAAM,aAAa,QAAQ,eAAe;AAAA,IAC1D,SAAS,SAAS,cAAc,QAAQ;AAAA,IACxC;AAAA,EAAA,CACD;AAED,YAAU,QAAQ,YAAY;AAC9B,YAAU,QAAQ,iBAAiB,SAAS,QAAQ;AAEpD,YAAU,QAAQ,YAAY,UAAU,OAAO;AAC/C,YAAU,UAAU,UAAU;AAE9B,SAAO;AACT;AAEA,MAAM,SAAS,CAAC,EAAE,gBAA4C;AAC5D,QAAM,SAAS,UAAU;AAAA,IACvB,IAAIC,kBAAO,OAAO,UAAU,MAAM,OAAO,SAAS;AAAA,EAAA;AAGpD,MAAI,eAAe,OAAA;AACrB;AAEA,MAAA,WAAe;AAAA,EACb;AAAA,EACA;AACF;;"}
1
+ {"version":3,"file":"lazy-load.js","sources":["../../source/macros/lazy-load.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { type ElementModel } from '../_types';\n\ntype LazyLoadCreate = {\n callback: (args: any) => void;\n isThemeDark?: boolean;\n isLazyLoad: boolean;\n totalEntries: number | null;\n offset: number;\n};\n\nconst create = ({\n callback,\n isThemeDark,\n isLazyLoad,\n totalEntries,\n offset,\n}: LazyLoadCreate): ElementModel | undefined => {\n if (!isLazyLoad) return;\n if (!totalEntries) return;\n if (!offset) return;\n if (!callback) return;\n if (offset >= totalEntries) return;\n\n const button = document.createElement('button');\n button.innerHTML = 'Load more';\n button.addEventListener('click', callback);\n\n const ctaButton = new ElementBuilder(button)\n .styled(Styles.element.action.outline.normal)\n .build();\n\n return new ElementBuilder()\n .styled(Styles.layout.alignment.block.center)\n .withChild(ctaButton)\n .withStyles({\n element: {\n marginTop: `${Styles.token.spacing.lg}`,\n },\n })\n .build();\n};\n\nconst remove = ({ container }: { container: HTMLElement }) => {\n const button = container.querySelector(\n `.${Styles.layout.alignment.block.center.className}`,\n ) as HTMLDivElement;\n\n if (button) button.remove();\n};\n\nexport default {\n remove,\n create,\n};\n"],"names":["ElementBuilder","Styles"],"mappings":";;;;;;;;;;;;;;;;;;;;AAYA,MAAM,SAAS,CAAC;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAgD;AAC9C,MAAI,CAAC,WAAY;AACjB,MAAI,CAAC,aAAc;AACnB,MAAI,CAAC,OAAQ;AACb,MAAI,CAAC,SAAU;AACf,MAAI,UAAU,aAAc;AAE5B,QAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,SAAO,YAAY;AACnB,SAAO,iBAAiB,SAAS,QAAQ;AAEzC,QAAM,YAAY,IAAIA,iCAAe,MAAM,EACxC,OAAOC,kBAAO,QAAQ,OAAO,QAAQ,MAAM,EAC3C,MAAA;AAEH,SAAO,IAAID,kBAAAA,eAAA,EACR,OAAOC,kBAAO,OAAO,UAAU,MAAM,MAAM,EAC3C,UAAU,SAAS,EACnB,WAAW;AAAA,IACV,SAAS;AAAA,MACP,WAAW,GAAGA,kBAAO,MAAM,QAAQ,EAAE;AAAA,IAAA;AAAA,EACvC,CACD,EACA,MAAA;AACL;AAEA,MAAM,SAAS,CAAC,EAAE,gBAA4C;AAC5D,QAAM,SAAS,UAAU;AAAA,IACvB,IAAIA,kBAAO,OAAO,UAAU,MAAM,OAAO,SAAS;AAAA,EAAA;AAGpD,MAAI,eAAe,OAAA;AACrB;AAEA,MAAA,WAAe;AAAA,EACb;AAAA,EACA;AACF;;"}
@@ -1,5 +1,5 @@
1
1
  import * as Styles from "@universityofmaryland/web-styles-library";
2
- import { Model } from "@universityofmaryland/web-elements-library";
2
+ import { ElementBuilder } from "@universityofmaryland/web-builder-library";
3
3
  const create = ({
4
4
  callback,
5
5
  isThemeDark,
@@ -12,24 +12,15 @@ const create = ({
12
12
  if (!offset) return;
13
13
  if (!callback) return;
14
14
  if (offset >= totalEntries) return;
15
- const composite = Model.ElementModel.layout.alignedCenter({
16
- element: document.createElement("div"),
17
- isThemeDark,
18
- elementStyles: {
19
- element: {
20
- marginTop: `${Styles.token.spacing.lg}`
21
- }
15
+ const button = document.createElement("button");
16
+ button.innerHTML = "Load more";
17
+ button.addEventListener("click", callback);
18
+ const ctaButton = new ElementBuilder(button).styled(Styles.element.action.outline.normal).build();
19
+ return new ElementBuilder().styled(Styles.layout.alignment.block.center).withChild(ctaButton).withStyles({
20
+ element: {
21
+ marginTop: `${Styles.token.spacing.lg}`
22
22
  }
23
- });
24
- const ctaButton = Model.ElementModel.actions.outlineOptions({
25
- element: document.createElement("button"),
26
- isThemeDark
27
- });
28
- ctaButton.element.innerHTML = "Load more";
29
- ctaButton.element.addEventListener("click", callback);
30
- composite.element.appendChild(ctaButton.element);
31
- composite.styles += ctaButton.styles;
32
- return composite;
23
+ }).build();
33
24
  };
34
25
  const remove = ({ container }) => {
35
26
  const button = container.querySelector(
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-load.mjs","sources":["../../source/macros/lazy-load.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { Model } from '@universityofmaryland/web-elements-library';\n\ntype LazyLoadCreate = {\n callback: (args: any) => void;\n isThemeDark?: boolean;\n isLazyLoad: boolean;\n totalEntries: number | null;\n offset: number;\n};\n\nconst create = ({\n callback,\n isThemeDark,\n isLazyLoad,\n totalEntries,\n offset,\n}: LazyLoadCreate) => {\n if (!isLazyLoad) return;\n if (!totalEntries) return;\n if (!offset) return;\n if (!callback) return;\n if (offset >= totalEntries) return;\n\n const composite = Model.ElementModel.layout.alignedCenter({\n element: document.createElement('div'),\n isThemeDark,\n elementStyles: {\n element: {\n marginTop: `${Styles.token.spacing.lg}`,\n },\n },\n });\n\n const ctaButton = Model.ElementModel.actions.outlineOptions({\n element: document.createElement('button'),\n isThemeDark,\n });\n\n ctaButton.element.innerHTML = 'Load more';\n ctaButton.element.addEventListener('click', callback);\n\n composite.element.appendChild(ctaButton.element);\n composite.styles += ctaButton.styles;\n\n return composite;\n};\n\nconst remove = ({ container }: { container: HTMLElement }) => {\n const button = container.querySelector(\n `.${Styles.layout.alignment.block.center.className}`,\n ) as HTMLDivElement;\n\n if (button) button.remove();\n};\n\nexport default {\n remove,\n create,\n};\n"],"names":[],"mappings":";;AAWA,MAAM,SAAS,CAAC;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAsB;AACpB,MAAI,CAAC,WAAY;AACjB,MAAI,CAAC,aAAc;AACnB,MAAI,CAAC,OAAQ;AACb,MAAI,CAAC,SAAU;AACf,MAAI,UAAU,aAAc;AAE5B,QAAM,YAAY,MAAM,aAAa,OAAO,cAAc;AAAA,IACxD,SAAS,SAAS,cAAc,KAAK;AAAA,IACrC;AAAA,IACA,eAAe;AAAA,MACb,SAAS;AAAA,QACP,WAAW,GAAG,OAAO,MAAM,QAAQ,EAAE;AAAA,MAAA;AAAA,IACvC;AAAA,EACF,CACD;AAED,QAAM,YAAY,MAAM,aAAa,QAAQ,eAAe;AAAA,IAC1D,SAAS,SAAS,cAAc,QAAQ;AAAA,IACxC;AAAA,EAAA,CACD;AAED,YAAU,QAAQ,YAAY;AAC9B,YAAU,QAAQ,iBAAiB,SAAS,QAAQ;AAEpD,YAAU,QAAQ,YAAY,UAAU,OAAO;AAC/C,YAAU,UAAU,UAAU;AAE9B,SAAO;AACT;AAEA,MAAM,SAAS,CAAC,EAAE,gBAA4C;AAC5D,QAAM,SAAS,UAAU;AAAA,IACvB,IAAI,OAAO,OAAO,UAAU,MAAM,OAAO,SAAS;AAAA,EAAA;AAGpD,MAAI,eAAe,OAAA;AACrB;AAEA,MAAA,WAAe;AAAA,EACb;AAAA,EACA;AACF;"}
1
+ {"version":3,"file":"lazy-load.mjs","sources":["../../source/macros/lazy-load.ts"],"sourcesContent":["import * as Styles from '@universityofmaryland/web-styles-library';\nimport { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport { type ElementModel } from '../_types';\n\ntype LazyLoadCreate = {\n callback: (args: any) => void;\n isThemeDark?: boolean;\n isLazyLoad: boolean;\n totalEntries: number | null;\n offset: number;\n};\n\nconst create = ({\n callback,\n isThemeDark,\n isLazyLoad,\n totalEntries,\n offset,\n}: LazyLoadCreate): ElementModel | undefined => {\n if (!isLazyLoad) return;\n if (!totalEntries) return;\n if (!offset) return;\n if (!callback) return;\n if (offset >= totalEntries) return;\n\n const button = document.createElement('button');\n button.innerHTML = 'Load more';\n button.addEventListener('click', callback);\n\n const ctaButton = new ElementBuilder(button)\n .styled(Styles.element.action.outline.normal)\n .build();\n\n return new ElementBuilder()\n .styled(Styles.layout.alignment.block.center)\n .withChild(ctaButton)\n .withStyles({\n element: {\n marginTop: `${Styles.token.spacing.lg}`,\n },\n })\n .build();\n};\n\nconst remove = ({ container }: { container: HTMLElement }) => {\n const button = container.querySelector(\n `.${Styles.layout.alignment.block.center.className}`,\n ) as HTMLDivElement;\n\n if (button) button.remove();\n};\n\nexport default {\n remove,\n create,\n};\n"],"names":[],"mappings":";;AAYA,MAAM,SAAS,CAAC;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAgD;AAC9C,MAAI,CAAC,WAAY;AACjB,MAAI,CAAC,aAAc;AACnB,MAAI,CAAC,OAAQ;AACb,MAAI,CAAC,SAAU;AACf,MAAI,UAAU,aAAc;AAE5B,QAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,SAAO,YAAY;AACnB,SAAO,iBAAiB,SAAS,QAAQ;AAEzC,QAAM,YAAY,IAAI,eAAe,MAAM,EACxC,OAAO,OAAO,QAAQ,OAAO,QAAQ,MAAM,EAC3C,MAAA;AAEH,SAAO,IAAI,eAAA,EACR,OAAO,OAAO,OAAO,UAAU,MAAM,MAAM,EAC3C,UAAU,SAAS,EACnB,WAAW;AAAA,IACV,SAAS;AAAA,MACP,WAAW,GAAG,OAAO,MAAM,QAAQ,EAAE;AAAA,IAAA;AAAA,EACvC,CACD,EACA,MAAA;AACL;AAEA,MAAM,SAAS,CAAC,EAAE,gBAA4C;AAC5D,QAAM,SAAS,UAAU;AAAA,IACvB,IAAI,OAAO,OAAO,UAAU,MAAM,OAAO,SAAS;AAAA,EAAA;AAGpD,MAAI,eAAe,OAAA;AACrB;AAEA,MAAA,WAAe;AAAA,EACb;AAAA,EACA;AACF;"}
@@ -1,11 +1,8 @@
1
+ import { ElementModel } from '../_types';
1
2
  declare const _default: {
2
3
  create: ({ isThemeDark }: {
3
4
  isThemeDark?: boolean;
4
- }) => {
5
- element: HTMLElement;
6
- className: string;
7
- styles: string;
8
- };
5
+ }) => ElementModel;
9
6
  display: ({ container, isThemeDark, }: {
10
7
  container: HTMLElement;
11
8
  isThemeDark?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../source/macros/loader.ts"],"names":[],"mappings":";8BAkCiC;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;2CAmGvD;QACD,SAAS,EAAE,WAAW,CAAC;QACvB,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB;4BAZ8B;QAAE,SAAS,EAAE,WAAW,CAAA;KAAE;;AAkBzD,wBAIE"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../source/macros/loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;;8BAiCb;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,KAAG,YAAY;2CAuGtE;QACD,SAAS,EAAE,WAAW,CAAC;QACvB,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB;4BAZ8B;QAAE,SAAS,EAAE,WAAW,CAAA;KAAE;;AAkBzD,wBAIE"}