@haiilo/catalyst 0.9.0 → 0.10.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 (67) hide show
  1. package/dist/catalyst/catalyst.css +1 -1
  2. package/dist/catalyst/catalyst.esm.js +1 -1
  3. package/dist/catalyst/catalyst.esm.js.map +1 -1
  4. package/dist/catalyst/index.esm.js +1 -1
  5. package/dist/catalyst/{p-6a8a4dc0.js → p-8121572a.js} +3 -3
  6. package/dist/catalyst/p-8121572a.js.map +1 -0
  7. package/dist/catalyst/{p-0c1a611f.entry.js → p-a21823c9.entry.js} +5 -5
  8. package/dist/catalyst/p-a21823c9.entry.js.map +1 -0
  9. package/dist/catalyst/scss/core/_typography.scss +7 -7
  10. package/dist/catalyst/scss/index.scss +1 -5
  11. package/dist/cjs/cat-alert_20.cjs.entry.js +10 -10
  12. package/dist/cjs/cat-alert_20.cjs.entry.js.map +1 -1
  13. package/dist/cjs/{cat-notification-fe237312.js → cat-notification-c2859ed7.js} +121 -1
  14. package/dist/cjs/cat-notification-c2859ed7.js.map +1 -0
  15. package/dist/cjs/catalyst.cjs.js +0 -4
  16. package/dist/cjs/catalyst.cjs.js.map +1 -1
  17. package/dist/cjs/index.cjs.js +3 -4
  18. package/dist/cjs/index.cjs.js.map +1 -1
  19. package/dist/cjs/loader.cjs.js +0 -4
  20. package/dist/cjs/loader.cjs.js.map +1 -1
  21. package/dist/collection/collection-manifest.json +1 -2
  22. package/dist/collection/components/cat-card/cat-card.css +34 -0
  23. package/dist/collection/components/cat-i18n/cat-i18n-registry.js +3 -2
  24. package/dist/collection/components/cat-i18n/cat-i18n-registry.js.map +1 -1
  25. package/dist/collection/components/cat-select/cat-select.js +5 -4
  26. package/dist/collection/components/cat-select/cat-select.js.map +1 -1
  27. package/dist/collection/scss/core/_typography.scss +7 -7
  28. package/dist/collection/scss/index.scss +1 -5
  29. package/dist/components/cat-card.js +1 -1
  30. package/dist/components/cat-card.js.map +1 -1
  31. package/dist/components/cat-i18n-registry.js +3 -2
  32. package/dist/components/cat-i18n-registry.js.map +1 -1
  33. package/dist/components/cat-select.js +5 -4
  34. package/dist/components/cat-select.js.map +1 -1
  35. package/dist/components/index.js +0 -253
  36. package/dist/components/index.js.map +1 -1
  37. package/dist/esm/cat-alert_20.entry.js +7 -7
  38. package/dist/esm/cat-alert_20.entry.js.map +1 -1
  39. package/dist/esm/{cat-notification-a9655c00.js → cat-notification-3da6ddb1.js} +121 -3
  40. package/dist/esm/cat-notification-3da6ddb1.js.map +1 -0
  41. package/dist/esm/catalyst.js +0 -4
  42. package/dist/esm/catalyst.js.map +1 -1
  43. package/dist/esm/index.js +1 -2
  44. package/dist/esm/index.js.map +1 -1
  45. package/dist/esm/loader.js +0 -4
  46. package/dist/esm/loader.js.map +1 -1
  47. package/dist/types/components/cat-select/cat-select.d.ts +1 -1
  48. package/package.json +2 -2
  49. package/dist/catalyst/p-0c1a611f.entry.js.map +0 -1
  50. package/dist/catalyst/p-6a8a4dc0.js.map +0 -1
  51. package/dist/catalyst/p-decdc6f1.js +0 -2
  52. package/dist/catalyst/p-decdc6f1.js.map +0 -1
  53. package/dist/catalyst/p-f45bcfd6.js +0 -2
  54. package/dist/catalyst/p-f45bcfd6.js.map +0 -1
  55. package/dist/cjs/app-globals-79765026.js +0 -256
  56. package/dist/cjs/app-globals-79765026.js.map +0 -1
  57. package/dist/cjs/cat-icon-registry-b015a65f.js +0 -125
  58. package/dist/cjs/cat-icon-registry-b015a65f.js.map +0 -1
  59. package/dist/cjs/cat-notification-fe237312.js.map +0 -1
  60. package/dist/collection/init.js +0 -17
  61. package/dist/collection/init.js.map +0 -1
  62. package/dist/esm/app-globals-7d163b94.js +0 -254
  63. package/dist/esm/app-globals-7d163b94.js.map +0 -1
  64. package/dist/esm/cat-icon-registry-dc1ef79a.js +0 -122
  65. package/dist/esm/cat-icon-registry-dc1ef79a.js.map +0 -1
  66. package/dist/esm/cat-notification-a9655c00.js.map +0 -1
  67. package/dist/types/init.d.ts +0 -1
@@ -132,13 +132,13 @@ dl {
132
132
  }
133
133
  }
134
134
 
135
- nav {
136
- ol,
137
- ul {
138
- list-style-type: none;
139
- margin: 0;
140
- padding: 0;
141
- }
135
+ nav ol,
136
+ nav ul,
137
+ ol.cat-plain,
138
+ ul.cat-plain {
139
+ list-style: none;
140
+ margin: 0;
141
+ padding: 0;
142
142
  }
143
143
 
144
144
  dt {
@@ -1,26 +1,21 @@
1
1
  // -- Reset
2
-
3
2
  @import '~sanitize.css/sanitize.css';
4
3
  @import '~sanitize.css/assets.css';
5
4
  @import '~sanitize.css/reduce-motion.css';
6
5
 
7
6
  // -- Vendor
8
-
9
7
  @import '~toastify-js/src/toastify.css';
10
8
 
11
9
  // -- Fonts
12
-
13
10
  @import 'fonts/fonts-mixins';
14
11
 
15
12
  // -- Core
16
-
17
13
  @import 'core/base';
18
14
  @import 'core/nav';
19
15
  @import 'core/toast';
20
16
  @import 'core/typography';
21
17
 
22
18
  // -- Utils
23
-
24
19
  @import 'utils/color';
25
20
  @import 'utils/display';
26
21
  @import 'utils/elevation';
@@ -31,5 +26,6 @@
31
26
  @import 'utils/visibility';
32
27
  @import 'utils/ratio';
33
28
 
29
+ // -- Includes
34
30
  $cat-font-path: 'assets/fonts' !default;
35
31
  @include cat-fonts($cat-font-path);
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
 
3
- const catCardCss = ":host{display:block;margin-bottom:1rem;border-radius:0.5rem;background-color:white;padding:1.5rem}:host([hidden]){display:none}::slotted(nav){margin:-1rem -1.5rem !important}::slotted(:last-child){margin-bottom:0}";
3
+ const catCardCss = ":host{display:block;margin-bottom:1rem;border-radius:0.5rem;background-color:white;padding:1.5rem}:host([hidden]){display:none}::slotted(nav){margin:-1rem -1.5rem !important}::slotted(:last-child){margin-bottom:0}::slotted(.cat-card-pull){margin:-1.5rem !important;width:calc(100% + 3rem) !important;height:calc(100% + 3rem) !important}::slotted(.cat-card-pull-h){margin-left:-1.5rem !important;margin-right:-1.5rem !important;width:calc(100% + 3rem) !important}::slotted(.cat-card-pull-v){margin-top:-1.5rem !important;margin-bottom:-1.5rem !important;height:calc(100% + 3rem) !important}::slotted(.cat-card-pull-t){margin-top:-1.5rem !important}::slotted(.cat-card-pull-l){margin-left:-1.5rem !important}::slotted(.cat-card-pull-r){margin-right:-1.5rem !important}::slotted(.cat-card-pull-b){margin-bottom:-1.5rem !important}";
4
4
 
5
5
  const CatCard$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
6
  constructor() {
@@ -1 +1 @@
1
- {"file":"cat-card.js","mappings":";;AAAA,MAAM,UAAU,GAAG,uNAAuN;;MCW7NA,SAAO;;;;;;EAClB,MAAM;IACJ,QACE,EAAC,IAAI,QACH,eAAa,CACR,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;","names":["CatCard"],"sources":["./src/components/cat-card/cat-card.scss?tag=cat-card&encapsulation=shadow","./src/components/cat-card/cat-card.tsx"],"sourcesContent":["@use 'variables' as *;\n@use 'mixins' as *;\n\n$-padding: 1.5rem;\n\n:host {\n display: block;\n margin-bottom: $cat-body-margin-bottom;\n border-radius: cat-border-radius('l');\n background-color: cat-token('color.ui.background.body');\n padding: $-padding;\n}\n\n:host([hidden]) {\n display: none;\n}\n\n::slotted(nav) {\n margin: #{$cat-body-margin-bottom * 0.5 - $-padding} #{-$-padding} !important;\n}\n\n::slotted(:last-child) {\n margin-bottom: 0;\n}\n","import { Component, Host, h } from '@stencil/core';\n\n/**\n * Cards are surfaces that display content and actions on a single topic. They\n * should be easy to scan for relevant and actionable information.\n */\n@Component({\n tag: 'cat-card',\n styleUrl: 'cat-card.scss',\n shadow: true\n})\nexport class CatCard {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"cat-card.js","mappings":";;AAAA,MAAM,UAAU,GAAG,6zBAA6zB;;MCWn0BA,SAAO;;;;;;EAClB,MAAM;IACJ,QACE,EAAC,IAAI,QACH,eAAa,CACR,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;","names":["CatCard"],"sources":["./src/components/cat-card/cat-card.scss?tag=cat-card&encapsulation=shadow","./src/components/cat-card/cat-card.tsx"],"sourcesContent":["@use 'variables' as *;\n@use 'mixins' as *;\n\n$-padding: 1.5rem;\n\n:host {\n display: block;\n margin-bottom: $cat-body-margin-bottom;\n border-radius: cat-border-radius('l');\n background-color: cat-token('color.ui.background.body');\n padding: $-padding;\n}\n\n:host([hidden]) {\n display: none;\n}\n\n::slotted(nav) {\n margin: #{$cat-body-margin-bottom * 0.5 - $-padding} #{-$-padding} !important;\n}\n\n::slotted(:last-child) {\n margin-bottom: 0;\n}\n\n// --- pull out helper classes\n\n::slotted(.cat-card-pull) {\n margin: -$-padding !important;\n width: calc(100% + #{2 * $-padding}) !important;\n height: calc(100% + #{2 * $-padding}) !important;\n}\n\n::slotted(.cat-card-pull-h) {\n margin-left: -$-padding !important;\n margin-right: -$-padding !important;\n width: calc(100% + #{2 * $-padding}) !important;\n}\n\n::slotted(.cat-card-pull-v) {\n margin-top: -$-padding !important;\n margin-bottom: -$-padding !important;\n height: calc(100% + #{2 * $-padding}) !important;\n}\n\n::slotted(.cat-card-pull-t) {\n margin-top: -$-padding !important;\n}\n\n::slotted(.cat-card-pull-l) {\n margin-left: -$-padding !important;\n}\n\n::slotted(.cat-card-pull-r) {\n margin-right: -$-padding !important;\n}\n\n::slotted(.cat-card-pull-b) {\n margin-bottom: -$-padding !important;\n}\n","import { Component, Host, h } from '@stencil/core';\n\n/**\n * Cards are surfaces that display content and actions on a single topic. They\n * should be easy to scan for relevant and actionable information.\n */\n@Component({\n tag: 'cat-card',\n styleUrl: 'cat-card.scss',\n shadow: true\n})\nexport class CatCard {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -41,10 +41,11 @@ class CatI18nRegistry {
41
41
  t(key, params) {
42
42
  var _a;
43
43
  const message = (_a = this._dicts.get(this._locale)) === null || _a === void 0 ? void 0 : _a.get(key);
44
- if (!message) {
44
+ if (message === undefined) {
45
45
  loglevel.error(`[CatI18nRegistry] Unknown message for ${this._locale}: ${key}`);
46
+ return '';
46
47
  }
47
- return (message === null || message === void 0 ? void 0 : message.replace(/{{\s*([-a-zA-Z._]+)\s*}}/g, (_match, key) => { var _a; return `${(_a = params === null || params === void 0 ? void 0 : params[key]) !== null && _a !== void 0 ? _a : ''}`; })) || '';
48
+ return message.replace(/{{\s*([-a-zA-Z._]+)\s*}}/g, (_match, key) => { var _a; return `${(_a = params === null || params === void 0 ? void 0 : params[key]) !== null && _a !== void 0 ? _a : ''}`; });
48
49
  }
49
50
  buildEvent(name, detail) {
50
51
  return new CustomEvent(name, {
@@ -1 +1 @@
1
- {"file":"cat-i18n-registry.js","mappings":";;MAEa,eAAe;EAM1B;IAHQ,YAAO,GAAG,IAAI,CAAC;IACN,WAAM,GAAqC,IAAI,GAAG,EAAE,CAAC;;GAIrE;EAED,OAAO,WAAW;IAChB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE;MAC7B,eAAe,CAAC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;KAClD;IACD,OAAO,eAAe,CAAC,QAAQ,CAAC;GACjC;EAED,MAAM,CAAC,MAAe;IACpB,IAAI,MAAM,EAAE;MACV,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;MACtBA,QAAG,CAAC,IAAI,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;MACtD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;KACtE;IACD,OAAO,IAAI,CAAC,OAAO,CAAC;GACrB;EAED,QAAQ,CAAC,MAAc,EAAE,IAA+B;IACtD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IACzEA,QAAG,CAAC,IAAI,CAAC,6CAA6C,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;GACtE;EAED,KAAK,CAAC,MAAe;IACnB,IAAI,MAAM,EAAE;MACV,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;MAC7BA,QAAG,CAAC,IAAI,CAAC,0CAA0C,MAAM,EAAE,CAAC,CAAC;MAC7D,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;KACrE;SAAM;MACL,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;MACpBA,QAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;MAC/C,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;KACzD;GACF;EAED,CAAC,CAAC,GAAW,EAAE,MAA2C;;IACxD,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,0CAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACxD,IAAI,CAAC,OAAO,EAAE;MACZA,QAAG,CAAC,KAAK,CAAC,yCAAyC,IAAI,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;KAC5E;IACD,OAAO,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,GAAG,eAAK,OAAA,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,GAAG,CAAC,mCAAI,EAAE,EAAE,CAAA,EAAA,CAAC,KAAI,EAAE,CAAC;GACvG;EAEO,UAAU,CAAI,IAAY,EAAE,MAAU;IAC5C,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE;MAC3B,OAAO,EAAE,IAAI;MACb,QAAQ,EAAE,IAAI;MACd,MAAM;KACP,CAAC,CAAC;GACJ;EAEO,OAAO,CAAC,IAAY;IAC1B,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,IAAI,EAAE;MACT,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;MACjB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC7B;IACD,OAAO,IAAI,CAAC;GACb;;;;;","names":["log"],"sources":["./src/components/cat-i18n/cat-i18n-registry.ts"],"sourcesContent":["import log from 'loglevel';\n\nexport class CatI18nRegistry {\n private static instance: CatI18nRegistry;\n\n private _locale = 'en';\n private readonly _dicts: Map<string, Map<string, string>> = new Map();\n\n private constructor() {\n // hide constructor\n }\n\n static getInstance(): CatI18nRegistry {\n if (!CatI18nRegistry.instance) {\n CatI18nRegistry.instance = new CatI18nRegistry();\n }\n return CatI18nRegistry.instance;\n }\n\n locale(locale?: string): string {\n if (locale) {\n this._locale = locale;\n log.info(`[CatI18nRegistry] Locale set to ${locale}`);\n window.dispatchEvent(this.buildEvent('cat-i18n-locale', { locale }));\n }\n return this._locale;\n }\n\n register(locale: string, i18n: { [key: string]: string }): void {\n const dict = this.getDict(locale);\n Object.entries(i18n).forEach(([key, message]) => dict.set(key, message));\n log.info(`[CatI18nRegistry] Registered messages for ${locale}`, i18n);\n window.dispatchEvent(this.buildEvent('cat-i18n-register', { i18n }));\n }\n\n clear(locale?: string): void {\n if (locale) {\n this.getDict(locale).clear();\n log.info(`[CatI18nRegistry] Cleared messages for ${locale}`);\n window.dispatchEvent(this.buildEvent('cat-i18n-clear', { locale }));\n } else {\n this._dicts.clear();\n log.info(`[CatI18nRegistry] Cleared messages`);\n window.dispatchEvent(this.buildEvent('cat-i18n-clear'));\n }\n }\n\n t(key: string, params?: { [key: string]: string | number }): string {\n const message = this._dicts.get(this._locale)?.get(key);\n if (!message) {\n log.error(`[CatI18nRegistry] Unknown message for ${this._locale}: ${key}`);\n }\n return message?.replace(/{{\\s*([-a-zA-Z._]+)\\s*}}/g, (_match, key) => `${params?.[key] ?? ''}`) || '';\n }\n\n private buildEvent<T>(name: string, detail?: T) {\n return new CustomEvent(name, {\n bubbles: true,\n composed: true,\n detail\n });\n }\n\n private getDict(lang: string) {\n let dict = this._dicts.get(lang);\n if (!dict) {\n dict = new Map();\n this._dicts.set(lang, dict);\n }\n return dict;\n }\n}\n"],"version":3}
1
+ {"file":"cat-i18n-registry.js","mappings":"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","names":["log"],"sources":["./src/components/cat-i18n/cat-i18n-registry.ts"],"sourcesContent":["import log from 'loglevel';\n\nexport class CatI18nRegistry {\n private static instance: CatI18nRegistry;\n\n private _locale = 'en';\n private readonly _dicts: Map<string, Map<string, string>> = new Map();\n\n private constructor() {\n // hide constructor\n }\n\n static getInstance(): CatI18nRegistry {\n if (!CatI18nRegistry.instance) {\n CatI18nRegistry.instance = new CatI18nRegistry();\n }\n return CatI18nRegistry.instance;\n }\n\n locale(locale?: string): string {\n if (locale) {\n this._locale = locale;\n log.info(`[CatI18nRegistry] Locale set to ${locale}`);\n window.dispatchEvent(this.buildEvent('cat-i18n-locale', { locale }));\n }\n return this._locale;\n }\n\n register(locale: string, i18n: { [key: string]: string }): void {\n const dict = this.getDict(locale);\n Object.entries(i18n).forEach(([key, message]) => dict.set(key, message));\n log.info(`[CatI18nRegistry] Registered messages for ${locale}`, i18n);\n window.dispatchEvent(this.buildEvent('cat-i18n-register', { i18n }));\n }\n\n clear(locale?: string): void {\n if (locale) {\n this.getDict(locale).clear();\n log.info(`[CatI18nRegistry] Cleared messages for ${locale}`);\n window.dispatchEvent(this.buildEvent('cat-i18n-clear', { locale }));\n } else {\n this._dicts.clear();\n log.info(`[CatI18nRegistry] Cleared messages`);\n window.dispatchEvent(this.buildEvent('cat-i18n-clear'));\n }\n }\n\n t(key: string, params?: { [key: string]: string | number }): string {\n const message = this._dicts.get(this._locale)?.get(key);\n if (message === undefined) {\n log.error(`[CatI18nRegistry] Unknown message for ${this._locale}: ${key}`);\n return '';\n }\n return message.replace(/{{\\s*([-a-zA-Z._]+)\\s*}}/g, (_match, key) => `${params?.[key] ?? ''}`);\n }\n\n private buildEvent<T>(name: string, detail?: T) {\n return new CustomEvent(name, {\n bubbles: true,\n composed: true,\n detail\n });\n }\n\n private getDict(lang: string) {\n let dict = this._dicts.get(lang);\n if (!dict) {\n dict = new Map();\n this._dicts.set(lang, dict);\n }\n return dict;\n }\n}\n"],"version":3}
@@ -7557,9 +7557,10 @@ const CatSelect$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement$1
7557
7557
  return;
7558
7558
  this.setChoices(choices, 'value', 'label', true);
7559
7559
  }
7560
- setValueHandles(value) {
7561
- var _a;
7562
- (_a = this.choice) === null || _a === void 0 ? void 0 : _a.setValue(value || []);
7560
+ setValueHandler(value) {
7561
+ if (this.multiple)
7562
+ return;
7563
+ this.setValue(value || []);
7563
7564
  }
7564
7565
  componentWillRender() {
7565
7566
  this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
@@ -7775,7 +7776,7 @@ const CatSelect$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement$1
7775
7776
  get hostElement() { return this; }
7776
7777
  static get watchers() { return {
7777
7778
  "choices": ["setChoicesHandler"],
7778
- "value": ["setValueHandles"]
7779
+ "value": ["setValueHandler"]
7779
7780
  }; }
7780
7781
  static get style() { return catSelectCss; }
7781
7782
  }, [1, "cat-select", {