@maggioli-design-system/mds-list 3.10.0 → 3.11.0

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 (63) hide show
  1. package/dist/cjs/{index-232619f0.js → index-8dfd69fc.js} +41 -4
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/mds-list.cjs.entry.js +2 -2
  4. package/dist/cjs/mds-list.cjs.js +1 -1
  5. package/dist/collection/common/aria.js +17 -1
  6. package/dist/collection/common/device.js +6 -0
  7. package/dist/collection/common/keyboard-manager.js +2 -2
  8. package/dist/collection/components/mds-list/mds-list.js +1 -1
  9. package/dist/collection/dictionary/file-extensions.js +114 -56
  10. package/dist/collection/dictionary/text.js +60 -1
  11. package/dist/components/mds-list.js +1 -1
  12. package/dist/documentation.json +1 -1
  13. package/dist/esm/{index-e077427b.js → index-bedd40c7.js} +41 -4
  14. package/dist/esm/loader.js +2 -2
  15. package/dist/esm/mds-list.entry.js +2 -2
  16. package/dist/esm/mds-list.js +2 -2
  17. package/dist/esm-es5/index-bedd40c7.js +1 -0
  18. package/dist/esm-es5/loader.js +1 -1
  19. package/dist/esm-es5/mds-list.entry.js +1 -1
  20. package/dist/esm-es5/mds-list.js +1 -1
  21. package/dist/mds-list/mds-list.esm.js +1 -1
  22. package/dist/mds-list/mds-list.js +1 -1
  23. package/dist/mds-list/{p-ac8bdeb1.system.js → p-05fa6e18.system.js} +1 -1
  24. package/dist/mds-list/p-14eb1f8d.js +2 -0
  25. package/dist/mds-list/p-5614d698.entry.js +1 -0
  26. package/dist/mds-list/p-c2cbab2d.system.entry.js +1 -0
  27. package/dist/mds-list/p-d0ee89fd.system.js +2 -0
  28. package/dist/stats.json +36 -33
  29. package/dist/types/common/aria.d.ts +3 -1
  30. package/dist/types/common/device.d.ts +2 -0
  31. package/dist/types/dictionary/text.d.ts +3 -1
  32. package/dist/types/type/text.d.ts +2 -0
  33. package/documentation.json +9 -4
  34. package/package.json +2 -2
  35. package/src/common/aria.ts +22 -2
  36. package/src/common/device.ts +9 -0
  37. package/src/common/keyboard-manager.ts +2 -2
  38. package/src/components/mds-list/mds-list.tsx +1 -1
  39. package/src/dictionary/file-extensions.ts +115 -56
  40. package/src/dictionary/text.ts +64 -0
  41. package/src/fixtures/icons.json +8 -0
  42. package/src/fixtures/iconsauce.json +5 -0
  43. package/src/meta/file-format/locale.el.json +39 -0
  44. package/src/meta/file-format/locale.en.json +39 -0
  45. package/src/meta/file-format/locale.es.json +39 -0
  46. package/src/meta/file-format/locale.it.json +39 -0
  47. package/src/type/text.ts +59 -0
  48. package/www/build/mds-list.esm.js +1 -1
  49. package/www/build/mds-list.js +1 -1
  50. package/www/build/{p-ac8bdeb1.system.js → p-05fa6e18.system.js} +1 -1
  51. package/www/build/p-14eb1f8d.js +2 -0
  52. package/www/build/p-5614d698.entry.js +1 -0
  53. package/www/build/p-c2cbab2d.system.entry.js +1 -0
  54. package/www/build/p-d0ee89fd.system.js +2 -0
  55. package/dist/esm-es5/index-e077427b.js +0 -1
  56. package/dist/mds-list/p-189b3b99.system.js +0 -2
  57. package/dist/mds-list/p-301e6693.js +0 -2
  58. package/dist/mds-list/p-3ad56505.system.entry.js +0 -1
  59. package/dist/mds-list/p-cbed8f41.entry.js +0 -1
  60. package/www/build/p-189b3b99.system.js +0 -2
  61. package/www/build/p-301e6693.js +0 -2
  62. package/www/build/p-3ad56505.system.entry.js +0 -1
  63. package/www/build/p-cbed8f41.entry.js +0 -1
@@ -21,7 +21,7 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'mds-list';
24
- const BUILD = /* mds-list */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: true, hydratedClass: false, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: false, lifecycleDOMEvents: false, member: false, method: false, mode: false, observeAttribute: false, profile: false, prop: false, propBoolean: false, propMutable: false, propNumber: false, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: false, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: false, vdomAttribute: true, vdomClass: false, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: false, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
24
+ const BUILD = /* mds-list */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: true, hydratedClass: false, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: false, lifecycleDOMEvents: false, member: false, method: false, mode: false, observeAttribute: false, profile: false, prop: false, propBoolean: false, propMutable: false, propNumber: false, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: false, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: false, vdomAttribute: true, vdomClass: false, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
25
25
 
26
26
  /*
27
27
  Stencil Client Platform v4.22.2 | MIT Licensed | https://stenciljs.com
@@ -48,6 +48,7 @@ var registerHost = (hostElement, cmpMeta) => {
48
48
  }
49
49
  return hostRefs.set(hostElement, hostRef);
50
50
  };
51
+ var isMemberInElement = (elm, memberName) => memberName in elm;
51
52
  var consoleError = (e, el) => (0, console.error)(e, el);
52
53
 
53
54
  // src/client/client-load-module.ts
@@ -383,7 +384,42 @@ var attachStyles = (hostRef) => {
383
384
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
384
385
  var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
385
386
  if (oldValue !== newValue) {
387
+ let isProp = isMemberInElement(elm, memberName);
386
388
  memberName.toLowerCase();
389
+ if (memberName === "key") ; else {
390
+ const isComplex = isComplexType(newValue);
391
+ if ((isProp || isComplex && newValue !== null) && !isSvg) {
392
+ try {
393
+ if (!elm.tagName.includes("-")) {
394
+ const n = newValue == null ? "" : newValue;
395
+ if (memberName === "list") {
396
+ isProp = false;
397
+ } else if (oldValue == null || elm[memberName] != n) {
398
+ if (typeof elm.__lookupSetter__(memberName) === "function") {
399
+ elm[memberName] = n;
400
+ } else {
401
+ elm.setAttribute(memberName, n);
402
+ }
403
+ }
404
+ } else {
405
+ elm[memberName] = newValue;
406
+ }
407
+ } catch (e) {
408
+ }
409
+ }
410
+ if (newValue == null || newValue === false) {
411
+ if (newValue !== false || elm.getAttribute(memberName) === "") {
412
+ {
413
+ elm.removeAttribute(memberName);
414
+ }
415
+ }
416
+ } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {
417
+ newValue = newValue === true ? "" : newValue;
418
+ {
419
+ elm.setAttribute(memberName, newValue);
420
+ }
421
+ }
422
+ }
387
423
  }
388
424
  };
389
425
 
@@ -393,7 +429,7 @@ var updateElement = (oldVnode, newVnode, isSvgMode2) => {
393
429
  const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;
394
430
  const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;
395
431
  for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {
396
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName]);
432
+ setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);
397
433
  }
398
434
  };
399
435
  function sortedAttrNames(attrNames) {
@@ -410,6 +446,7 @@ function sortedAttrNames(attrNames) {
410
446
  var scopeId;
411
447
  var hostTagName;
412
448
  var useNativeShadowDom = false;
449
+ var isSvgMode = false;
413
450
  var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
414
451
  const newVNode2 = newParentVNode.$children$[childIndex];
415
452
  let i2 = 0;
@@ -420,7 +457,7 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
420
457
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
421
458
  );
422
459
  {
423
- updateElement(null, newVNode2);
460
+ updateElement(null, newVNode2, isSvgMode);
424
461
  }
425
462
  const rootNode = elm.getRootNode();
426
463
  const isElementWithinShadowRoot = !rootNode.querySelector("body");
@@ -474,7 +511,7 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
474
511
  {
475
512
  {
476
513
  if (tag === "slot" && !useNativeShadowDom) ; else {
477
- updateElement(oldVNode, newVNode2);
514
+ updateElement(oldVNode, newVNode2, isSvgMode);
478
515
  }
479
516
  }
480
517
  if (newChildren !== null) {
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-232619f0.js');
5
+ const index = require('./index-8dfd69fc.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  const defineCustomElements = async (win, options) => {
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-232619f0.js');
5
+ const index = require('./index-8dfd69fc.js');
6
6
 
7
7
  const mdsListCss = ":host{gap:1rem;padding-left:1rem;display:grid}ul{margin:0rem;padding:0rem}";
8
8
  const MdsListStyle0 = mdsListCss;
@@ -12,7 +12,7 @@ const MdsList = class {
12
12
  index.registerInstance(this, hostRef);
13
13
  }
14
14
  render() {
15
- return (index.h(index.Host, { key: 'e1d36240d2c1fb7c148dc7baf2ab0c3ac114370b' }, index.h("slot", { key: 'c325885b8fc1e43a65911e60b4dda42d249614af' })));
15
+ return (index.h(index.Host, { key: '62900dba66a8d7e9068965cfabef00a5d8403e78', role: "list" }, index.h("slot", { key: '7359b396a6a6253b5c55ed6c1c864d88835c0d6b' })));
16
16
  }
17
17
  };
18
18
  MdsList.style = MdsListStyle0;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-232619f0.js');
5
+ const index = require('./index-8dfd69fc.js');
6
6
  const appGlobals = require('./app-globals-3a1e7e63.js');
7
7
 
8
8
  /*
@@ -18,6 +18,22 @@ const setAttributeIfEmpty = (element, attribute, value) => {
18
18
  element.setAttribute(attribute, value);
19
19
  return value;
20
20
  };
21
+ const removeAttributesIf = (element, attribute, valueCheck = 'true', cleanAttributes) => {
22
+ if (ifAttribute(element, attribute, valueCheck)) {
23
+ const attributesList = Array.isArray(cleanAttributes) ? cleanAttributes : [cleanAttributes];
24
+ attributesList.forEach(attributeToRemove => {
25
+ element.removeAttribute(attributeToRemove);
26
+ });
27
+ return true;
28
+ }
29
+ return false;
30
+ };
31
+ const ifAttribute = (element, attribute, valueCheck = 'true') => {
32
+ if (element.hasAttribute(attribute) && element.getAttribute(attribute) === valueCheck) {
33
+ return true;
34
+ }
35
+ return false;
36
+ };
21
37
  const hashValue = (value) => `${value}-${hash(value)}`;
22
38
  const hashRandomValue = (value) => {
23
39
  const randomValue = randomInt(1000000);
@@ -26,4 +42,4 @@ const hashRandomValue = (value) => {
26
42
  }
27
43
  return hash(randomValue.toString());
28
44
  };
29
- export { unslugName, setAttributeIfEmpty, hashRandomValue, hashValue, };
45
+ export { hashRandomValue, hashValue, removeAttributesIf, setAttributeIfEmpty, ifAttribute, unslugName, };
@@ -0,0 +1,6 @@
1
+ const isMobileDevice = () => {
2
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
+ const userAgent = navigator.userAgent || navigator.vendor || window.opera;
4
+ return /android|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(userAgent);
5
+ };
6
+ export { isMobileDevice, };
@@ -31,13 +31,13 @@ export class KeyboardManager {
31
31
  };
32
32
  this.attachEscapeBehavior = (callback) => {
33
33
  this.escapeCallback = callback;
34
- if (window !== undefined) {
34
+ if (typeof window !== 'undefined') {
35
35
  window.addEventListener('keydown', this.handleEscapeBehaviorDispatchEvent.bind(this));
36
36
  }
37
37
  };
38
38
  this.detachEscapeBehavior = () => {
39
39
  this.escapeCallback = () => { return; };
40
- if (window !== undefined) {
40
+ if (typeof window !== 'undefined') {
41
41
  window.removeEventListener('keydown', this.handleEscapeBehaviorDispatchEvent.bind(this));
42
42
  }
43
43
  };
@@ -4,7 +4,7 @@ import { Host, h } from "@stencil/core";
4
4
  */
5
5
  export class MdsList {
6
6
  render() {
7
- return (h(Host, { key: 'e1d36240d2c1fb7c148dc7baf2ab0c3ac114370b' }, h("slot", { key: 'c325885b8fc1e43a65911e60b4dda42d249614af' })));
7
+ return (h(Host, { key: '62900dba66a8d7e9068965cfabef00a5d8403e78', role: "list" }, h("slot", { key: '7359b396a6a6253b5c55ed6c1c864d88835c0d6b' })));
8
8
  }
9
9
  static get is() { return "mds-list"; }
10
10
  static get encapsulation() { return "shadow"; }
@@ -1,61 +1,119 @@
1
1
  const fileExtensionsDictionary = {
2
- '7z': { format: 'archive', description: 'Archivio compresso' },
3
- ace: { format: 'archive', description: 'Archivio compresso' },
4
- ai: { format: 'vector', description: 'Vettoriale Adobe Illustrator' },
5
- dart: { format: 'code', description: 'Dart' },
6
- db: { format: 'data', description: 'File di database' },
7
- default: { format: 'attachment', description: 'Formato sconosciuto' },
8
- dmg: { format: 'executable', description: 'Apple Disk Image' },
9
- doc: { format: 'text', description: 'Documento Microsoft Word' },
10
- docm: { format: 'text', description: 'Documento Microsoft Word' },
11
- docx: { format: 'text', description: 'Documento Microsoft Word Compresso' },
12
- eml: { format: 'email', description: 'E-mail di posta elettronica' },
13
- eps: { format: 'vector', description: 'Vettoriale Corel Draw' },
14
- exe: { format: 'executable', description: 'File eseguibile Windows' },
15
- flac: { format: 'audio', description: 'Audio non compresso' },
16
- gif: { format: 'image', description: 'Immagine compressa', preview: true },
17
- htm: { format: 'markup', description: 'Pagina web' },
18
- heic: { format: 'image', description: 'High Efficiency Image File Format' },
19
- html: { format: 'markup', description: 'Pagina web' },
20
- jpe: { format: 'image', description: 'Immagine compressa', preview: true },
21
- jpeg: { format: 'image', description: 'Immagine compressa', preview: true },
22
- jpg: { format: 'image', description: 'Immagine compressa', preview: true },
23
- js: { format: 'code', description: 'JavaScript' },
24
- json: { format: 'data', description: 'JavaScript Object Notation' },
25
- jsx: { format: 'code', description: 'JavaScript' },
26
- m2v: { format: 'video', description: 'Filmato SD' },
27
- mp2: { format: 'audio', description: 'Audio compresso' },
28
- mp3: { format: 'audio', description: 'Audio compresso' },
29
- mp4: { format: 'video', description: 'Filmato HD' },
30
- mp4v: { format: 'video', description: 'Filmato HD' },
31
- mpeg: { format: 'video', description: 'Filmato SD' },
32
- mpg4: { format: 'video', description: 'Filmato SD' },
33
- mpg: { format: 'video', description: 'Filmato SD' },
34
- mpga: { format: 'audio', description: 'Audio compresso' },
35
- odp: { format: 'slide', description: 'Slide di presentazione LibreOffice' },
36
- ods: { format: 'spreadsheet', description: 'Foglio di calcolo LibreOffice' },
37
- odt: { format: 'text', description: 'File di testo LibreOffice' },
38
- pdf: { format: 'document', description: 'Documento Adobe' },
39
- php: { format: 'code', description: 'Hypertext Preprocessor' },
40
- png: { format: 'image', description: 'Immagine Portable Network Graphics', preview: true },
41
- ppt: { format: 'slide', description: 'Slide di presentazione PowerPoint' },
42
- rar: { format: 'archive', description: 'Archivio compresso' },
43
- rtf: { format: 'text', description: 'Documento di testo Rich Text Format' },
44
- sass: { format: 'code', description: 'Syntactically Awesome StyleSheets' },
45
- shtml: { format: 'markup', description: 'Pagina web' },
46
- svg: { format: 'vector', description: 'Scalable Vector Graphics', preview: true },
47
- tar: { format: 'archive', description: 'Archivio non compresso' },
48
- tiff: { format: 'image', description: 'Tag Image File Format' },
49
- ts: { format: 'code', description: 'TypeScript' },
50
- tsx: { format: 'code', description: 'TypeScript Extended Syntax' },
51
- txt: { format: 'text', description: 'Documento di testo non formattato' },
52
- wav: { format: 'audio', description: 'Audio non compresso' },
53
- webp: { format: 'image', description: 'Immagine Web Picture', preview: true },
54
- xar: { format: 'archive', description: 'Archivio compresso' },
55
- xls: { format: 'spreadsheet', description: 'Foglio di calcolo Office' },
56
- xlsx: { format: 'spreadsheet', description: 'Foglio di calcolo Office' },
57
- zip: { format: 'archive', description: 'Archivio compresso' },
2
+ '7z': { format: 'archive', description: 'compressedArchive' },
3
+ ace: { format: 'archive', description: 'compressedArchive' },
4
+ ai: { format: 'vector', description: 'fileAI' },
5
+ dart: { format: 'code', description: 'dart' },
6
+ db: { format: 'data', description: 'fileDB' },
7
+ default: { format: 'attachment', description: 'unknown' },
8
+ dmg: { format: 'executable', description: 'appleDiskImage' },
9
+ doc: { format: 'text', description: 'documentMS' },
10
+ docm: { format: 'text', description: 'documentMS' },
11
+ docx: { format: 'text', description: 'compressedDocumentMS' },
12
+ eml: { format: 'email', description: 'email' },
13
+ eps: { format: 'vector', description: 'fileEPS' },
14
+ exe: { format: 'executable', description: 'fileEXE' },
15
+ flac: { format: 'audio', description: 'uncompressedAudio' },
16
+ gif: { format: 'image', description: 'compressedImage', preview: true },
17
+ htm: { format: 'markup', description: 'documentWeb' },
18
+ heic: { format: 'image', description: 'imageHEFF' },
19
+ html: { format: 'markup', description: 'documentWeb' },
20
+ jpe: { format: 'image', description: 'compressedImage', preview: true },
21
+ jpeg: { format: 'image', description: 'compressedImage', preview: true },
22
+ jpg: { format: 'image', description: 'compressedImage', preview: true },
23
+ js: { format: 'code', description: 'fileJS' },
24
+ json: { format: 'data', description: 'fileJSON' },
25
+ jsx: { format: 'code', description: 'fileJS' },
26
+ m2v: { format: 'video', description: 'videoSD' },
27
+ mp2: { format: 'audio', description: 'compressedAudio' },
28
+ mp3: { format: 'audio', description: 'compressedAudio' },
29
+ mp4: { format: 'video', description: 'videoHD' },
30
+ mp4v: { format: 'video', description: 'videoHD' },
31
+ mpeg: { format: 'video', description: 'videoSD' },
32
+ mpg4: { format: 'video', description: 'videoSD' },
33
+ mpg: { format: 'video', description: 'videoSD' },
34
+ mpga: { format: 'audio', description: 'compressedAudio' },
35
+ odp: { format: 'slide', description: 'slideLO' },
36
+ ods: { format: 'spreadsheet', description: 'spreadsheetLO' },
37
+ odt: { format: 'text', description: 'documentLO' },
38
+ pdf: { format: 'document', description: 'documentAdobe' },
39
+ php: { format: 'code', description: 'filePHP' },
40
+ png: { format: 'image', description: 'imagePNG', preview: true },
41
+ ppt: { format: 'slide', description: 'slidePowerPoint' },
42
+ rar: { format: 'archive', description: 'compressedArchive' },
43
+ rtf: { format: 'text', description: 'documentRTF' },
44
+ sass: { format: 'code', description: 'fileSASS' },
45
+ shtml: { format: 'markup', description: 'documentWeb' },
46
+ svg: { format: 'vector', description: 'imageSVG', preview: true },
47
+ tar: { format: 'archive', description: 'uncompressedArchive' },
48
+ tiff: { format: 'image', description: 'imageTIFF' },
49
+ ts: { format: 'code', description: 'fileTS' },
50
+ tsx: { format: 'code', description: 'fileTSX' },
51
+ txt: { format: 'text', description: 'documentTXT' },
52
+ wav: { format: 'audio', description: 'uncompressedAudio' },
53
+ webp: { format: 'image', description: 'imageWEBP', preview: true },
54
+ xar: { format: 'archive', description: 'compressedArchive' },
55
+ xls: { format: 'spreadsheet', description: 'spreadsheetMS' },
56
+ xlsx: { format: 'spreadsheet', description: 'spreadsheetMS' },
57
+ zip: { format: 'archive', description: 'compressedArchive' },
58
58
  };
59
+ // const fileExtensionsDictionary: FileExtenstion = {
60
+ // '7z': { format: 'archive', description: 'Archivio compresso' },
61
+ // ace: { format: 'archive', description: 'Archivio compresso' },
62
+ // ai: { format: 'vector', description: 'Vettoriale Adobe Illustrator' },
63
+ // dart: { format: 'code', description: 'Dart' },
64
+ // db: { format: 'data', description: 'File di database' },
65
+ // default: { format: 'attachment', description: 'Formato sconosciuto' },
66
+ // dmg: { format: 'executable', description: 'Apple Disk Image' },
67
+ // doc: { format: 'text', description: 'Documento Microsoft Word' },
68
+ // docm: { format: 'text', description: 'Documento Microsoft Word' },
69
+ // docx: { format: 'text', description: 'Documento Microsoft Word Compresso' },
70
+ // eml: { format: 'email', description: 'E-mail di posta elettronica' },
71
+ // eps: { format: 'vector', description: 'Vettoriale Corel Draw' },
72
+ // exe: { format: 'executable', description: 'File eseguibile Windows' },
73
+ // flac: { format: 'audio', description: 'Audio non compresso' },
74
+ // gif: { format: 'image', description: 'Immagine compressa', preview: true },
75
+ // htm: { format: 'markup', description: 'Pagina web' },
76
+ // heic: { format: 'image', description: 'High Efficiency Image File Format' },
77
+ // html: { format: 'markup', description: 'Pagina web' },
78
+ // jpe: { format: 'image', description: 'Immagine compressa', preview: true },
79
+ // jpeg: { format: 'image', description: 'Immagine compressa', preview: true },
80
+ // jpg: { format: 'image', description: 'Immagine compressa', preview: true },
81
+ // js: { format: 'code', description: 'JavaScript' },
82
+ // json: { format: 'data', description: 'JavaScript Object Notation' },
83
+ // jsx: { format: 'code', description: 'JavaScript' },
84
+ // m2v: { format: 'video', description: 'Filmato SD' },
85
+ // mp2: { format: 'audio', description: 'Audio compresso' },
86
+ // mp3: { format: 'audio', description: 'Audio compresso' },
87
+ // mp4: { format: 'video', description: 'Filmato HD' },
88
+ // mp4v: { format: 'video', description: 'Filmato HD' },
89
+ // mpeg: { format: 'video', description: 'Filmato SD' },
90
+ // mpg4: { format: 'video', description: 'Filmato SD' },
91
+ // mpg: { format: 'video', description: 'Filmato SD' },
92
+ // mpga: { format: 'audio', description: 'Audio compresso' },
93
+ // odp: { format: 'slide', description: 'Slide di presentazione LibreOffice' },
94
+ // ods: { format: 'spreadsheet', description: 'Foglio di calcolo LibreOffice' },
95
+ // odt: { format: 'text', description: 'File di testo LibreOffice' },
96
+ // pdf: { format: 'document', description: 'Documento Adobe' },
97
+ // php: { format: 'code', description: 'Hypertext Preprocessor' },
98
+ // png: { format: 'image', description: 'Immagine Portable Network Graphics', preview: true },
99
+ // ppt: { format: 'slide', description: 'Slide di presentazione PowerPoint' },
100
+ // rar: { format: 'archive', description: 'Archivio compresso' },
101
+ // rtf: { format: 'text', description: 'Documento di testo Rich Text Format' },
102
+ // sass: { format: 'code', description: 'Syntactically Awesome StyleSheets' },
103
+ // shtml: { format: 'markup', description: 'Pagina web' },
104
+ // svg: { format: 'vector', description: 'Scalable Vector Graphics', preview: true },
105
+ // tar: { format: 'archive', description: 'Archivio non compresso' },
106
+ // tiff: { format: 'image', description: 'Tag Image File Format' },
107
+ // ts: { format: 'code', description: 'TypeScript' },
108
+ // tsx: { format: 'code', description: 'TypeScript Extended Syntax' },
109
+ // txt: { format: 'text', description: 'Documento di testo non formattato' },
110
+ // wav: { format: 'audio', description: 'Audio non compresso' },
111
+ // webp: { format: 'image', description: 'Immagine Web Picture', preview: true },
112
+ // xar: { format: 'archive', description: 'Archivio compresso' },
113
+ // xls: { format: 'spreadsheet', description: 'Foglio di calcolo Office' },
114
+ // xlsx: { format: 'spreadsheet', description: 'Foglio di calcolo Office' },
115
+ // zip: { format: 'archive', description: 'Archivio compresso' },
116
+ // }
59
117
  const genericMimeToExt = new Map([
60
118
  ['image', ['.png', '.jpg', '.jpeg', '.tiff', '.webp', '.jpe', '.gif', '.heic']],
61
119
  ['audio', ['.mp2', '.mp3', '.mpga', '.wav', '.flac']],
@@ -1,6 +1,65 @@
1
+ const typographyTagDictionary = [
2
+ 'abbr',
3
+ 'address',
4
+ 'article',
5
+ 'b',
6
+ 'bdo',
7
+ 'blockquote',
8
+ 'cite',
9
+ 'code',
10
+ 'dd',
11
+ 'del',
12
+ 'details',
13
+ 'dfn',
14
+ 'div',
15
+ 'dl',
16
+ 'dt',
17
+ 'em',
18
+ 'figcaption',
19
+ 'h1',
20
+ 'h2',
21
+ 'h3',
22
+ 'h4',
23
+ 'h5',
24
+ 'h6',
25
+ 'i',
26
+ 'ins',
27
+ 'kbd',
28
+ 'label',
29
+ 'legend',
30
+ 'li',
31
+ 'mark',
32
+ 'ol',
33
+ 'p',
34
+ 'pre',
35
+ 'q',
36
+ 'rb',
37
+ 'rt',
38
+ 'ruby',
39
+ 's',
40
+ 'samp',
41
+ 'small',
42
+ 'span',
43
+ 'strong',
44
+ 'sub',
45
+ 'summary',
46
+ 'sup',
47
+ 'time',
48
+ 'u',
49
+ 'ul',
50
+ 'var',
51
+ ];
52
+ const typographyHeadingTagDictionary = [
53
+ 'h1',
54
+ 'h2',
55
+ 'h3',
56
+ 'h4',
57
+ 'h5',
58
+ 'h6',
59
+ ];
1
60
  const truncateDictionary = [
2
61
  'all',
3
62
  'none',
4
63
  'word',
5
64
  ];
6
- export { truncateDictionary, };
65
+ export { truncateDictionary, typographyHeadingTagDictionary, typographyTagDictionary, };
@@ -10,7 +10,7 @@ const MdsList$1 = /*@__PURE__*/ proxyCustomElement(class MdsList extends HTMLEle
10
10
  this.__attachShadow();
11
11
  }
12
12
  render() {
13
- return (h(Host, { key: 'e1d36240d2c1fb7c148dc7baf2ab0c3ac114370b' }, h("slot", { key: 'c325885b8fc1e43a65911e60b4dda42d249614af' })));
13
+ return (h(Host, { key: '62900dba66a8d7e9068965cfabef00a5d8403e78', role: "list" }, h("slot", { key: '7359b396a6a6253b5c55ed6c1c864d88835c0d6b' })));
14
14
  }
15
15
  static get style() { return MdsListStyle0; }
16
16
  }, [1, "mds-list"]);
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2024-11-25T16:41:47",
2
+ "timestamp": "2024-12-05T08:36:27",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.22.2",
@@ -1,5 +1,5 @@
1
1
  const NAMESPACE = 'mds-list';
2
- const BUILD = /* mds-list */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: true, hydratedClass: false, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: false, lifecycleDOMEvents: false, member: false, method: false, mode: false, observeAttribute: false, profile: false, prop: false, propBoolean: false, propMutable: false, propNumber: false, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: false, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: false, vdomAttribute: true, vdomClass: false, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: false, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
2
+ const BUILD = /* mds-list */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: true, hydratedClass: false, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: false, lifecycleDOMEvents: false, member: false, method: false, mode: false, observeAttribute: false, profile: false, prop: false, propBoolean: false, propMutable: false, propNumber: false, propString: false, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: false, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: false, vdomAttribute: true, vdomClass: false, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: false, vdomXlink: false, watchCallback: false };
3
3
 
4
4
  /*
5
5
  Stencil Client Platform v4.22.2 | MIT Licensed | https://stenciljs.com
@@ -26,6 +26,7 @@ var registerHost = (hostElement, cmpMeta) => {
26
26
  }
27
27
  return hostRefs.set(hostElement, hostRef);
28
28
  };
29
+ var isMemberInElement = (elm, memberName) => memberName in elm;
29
30
  var consoleError = (e, el) => (0, console.error)(e, el);
30
31
 
31
32
  // src/client/client-load-module.ts
@@ -361,7 +362,42 @@ var attachStyles = (hostRef) => {
361
362
  var getScopeId = (cmp, mode) => "sc-" + (cmp.$tagName$);
362
363
  var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
363
364
  if (oldValue !== newValue) {
365
+ let isProp = isMemberInElement(elm, memberName);
364
366
  memberName.toLowerCase();
367
+ if (memberName === "key") ; else {
368
+ const isComplex = isComplexType(newValue);
369
+ if ((isProp || isComplex && newValue !== null) && !isSvg) {
370
+ try {
371
+ if (!elm.tagName.includes("-")) {
372
+ const n = newValue == null ? "" : newValue;
373
+ if (memberName === "list") {
374
+ isProp = false;
375
+ } else if (oldValue == null || elm[memberName] != n) {
376
+ if (typeof elm.__lookupSetter__(memberName) === "function") {
377
+ elm[memberName] = n;
378
+ } else {
379
+ elm.setAttribute(memberName, n);
380
+ }
381
+ }
382
+ } else {
383
+ elm[memberName] = newValue;
384
+ }
385
+ } catch (e) {
386
+ }
387
+ }
388
+ if (newValue == null || newValue === false) {
389
+ if (newValue !== false || elm.getAttribute(memberName) === "") {
390
+ {
391
+ elm.removeAttribute(memberName);
392
+ }
393
+ }
394
+ } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {
395
+ newValue = newValue === true ? "" : newValue;
396
+ {
397
+ elm.setAttribute(memberName, newValue);
398
+ }
399
+ }
400
+ }
365
401
  }
366
402
  };
367
403
 
@@ -371,7 +407,7 @@ var updateElement = (oldVnode, newVnode, isSvgMode2) => {
371
407
  const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;
372
408
  const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;
373
409
  for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {
374
- setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName]);
410
+ setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);
375
411
  }
376
412
  };
377
413
  function sortedAttrNames(attrNames) {
@@ -388,6 +424,7 @@ function sortedAttrNames(attrNames) {
388
424
  var scopeId;
389
425
  var hostTagName;
390
426
  var useNativeShadowDom = false;
427
+ var isSvgMode = false;
391
428
  var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
392
429
  const newVNode2 = newParentVNode.$children$[childIndex];
393
430
  let i2 = 0;
@@ -398,7 +435,7 @@ var createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
398
435
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
399
436
  );
400
437
  {
401
- updateElement(null, newVNode2);
438
+ updateElement(null, newVNode2, isSvgMode);
402
439
  }
403
440
  const rootNode = elm.getRootNode();
404
441
  const isElementWithinShadowRoot = !rootNode.querySelector("body");
@@ -452,7 +489,7 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
452
489
  {
453
490
  {
454
491
  if (tag === "slot" && !useNativeShadowDom) ; else {
455
- updateElement(oldVNode, newVNode2);
492
+ updateElement(oldVNode, newVNode2, isSvgMode);
456
493
  }
457
494
  }
458
495
  if (newChildren !== null) {
@@ -1,5 +1,5 @@
1
- import { b as bootstrapLazy } from './index-e077427b.js';
2
- export { s as setNonce } from './index-e077427b.js';
1
+ import { b as bootstrapLazy } from './index-bedd40c7.js';
2
+ export { s as setNonce } from './index-bedd40c7.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  const defineCustomElements = async (win, options) => {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-e077427b.js';
1
+ import { r as registerInstance, h, H as Host } from './index-bedd40c7.js';
2
2
 
3
3
  const mdsListCss = ":host{gap:1rem;padding-left:1rem;display:grid}ul{margin:0rem;padding:0rem}";
4
4
  const MdsListStyle0 = mdsListCss;
@@ -8,7 +8,7 @@ const MdsList = class {
8
8
  registerInstance(this, hostRef);
9
9
  }
10
10
  render() {
11
- return (h(Host, { key: 'e1d36240d2c1fb7c148dc7baf2ab0c3ac114370b' }, h("slot", { key: 'c325885b8fc1e43a65911e60b4dda42d249614af' })));
11
+ return (h(Host, { key: '62900dba66a8d7e9068965cfabef00a5d8403e78', role: "list" }, h("slot", { key: '7359b396a6a6253b5c55ed6c1c864d88835c0d6b' })));
12
12
  }
13
13
  };
14
14
  MdsList.style = MdsListStyle0;
@@ -1,5 +1,5 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-e077427b.js';
2
- export { s as setNonce } from './index-e077427b.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-bedd40c7.js';
2
+ export { s as setNonce } from './index-bedd40c7.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  /*