@kubex/zinc 1.0.7 → 1.0.8

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 (31) hide show
  1. package/dist/custom-elements.json +318 -10
  2. package/dist/vscode.html-custom-data.json +33 -5
  3. package/dist/web-types.json +80 -12
  4. package/dist/zn.d.ts +53 -3
  5. package/dist/zn.min.js +371 -311
  6. package/docs/data/products-table.json +203 -0
  7. package/docs/pages/components/button.md +25 -0
  8. package/docs/pages/components/data-table.md +21 -0
  9. package/docs/pages/components/header.md +7 -0
  10. package/docs/pages/components/order-table.md +82 -5
  11. package/package.json +1 -1
  12. package/src/components/button/button.component.ts +168 -10
  13. package/src/components/button/button.scss +115 -0
  14. package/src/components/content-block/content-block.component.ts +18 -7
  15. package/src/components/content-block/content-block.scss +4 -2
  16. package/src/components/data-select/data-select.component.ts +0 -1
  17. package/src/components/data-table/data-table.component.ts +112 -20
  18. package/src/components/data-table/data-table.scss +14 -3
  19. package/src/components/editor/editor.scss +1 -0
  20. package/src/components/expanding-action/expanding-action.component.ts +1 -1
  21. package/src/components/header/header.component.ts +8 -2
  22. package/src/components/header/header.scss +5 -1
  23. package/src/components/linked-select/linked-select.component.ts +1 -0
  24. package/src/components/menu/menu.component.ts +0 -1
  25. package/src/components/navbar/navbar.component.ts +1 -1
  26. package/src/components/note/note.component.ts +70 -2
  27. package/src/components/note/note.scss +26 -4
  28. package/src/components/order-table/order-table.component.ts +49 -28
  29. package/src/components/panel/panel.component.ts +3 -1
  30. package/src/components/rating/rating.component.ts +10 -9
  31. package/src/components/rating/rating.scss +15 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@kubex/zinc",
4
- "version": "1.0.7",
4
+ "version": "1.0.8",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -132,7 +132,7 @@
132
132
  },
133
133
  {
134
134
  "name": "zn-button",
135
- "description": "Buttons represent actions that are available to the user.\n---\n\n\n### **Events:**\n - **zn-blur** - Emitted when the button loses focus.\n- **zn-focus** - Emitted when the button gains focus.\n- **zn-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Slots:**\n - _default_ - The button's label.\n- **prefix** - A presentational prefix icon or similar element.\n- **suffix** - A presentational suffix icon or similar element.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **prefix** - The container that wraps the prefix.\n- **label** - The button's label.\n- **suffix** - The container that wraps the suffix.\n- **caret** - The button's caret icon, an `<zn-icon>` element.\n- **spinner** - The spinner that shows when the button is in the loading state.",
135
+ "description": "Buttons represent actions that are available to the user.\n---\n\n\n### **Events:**\n - **zn-blur** - Emitted when the button loses focus.\n- **zn-focus** - Emitted when the button gains focus.\n- **zn-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Slots:**\n - _default_ - The button's label.\n- **prefix** - A presentational prefix icon or similar element.\n- **suffix** - A presentational suffix icon or similar element.\n- **cancel** - Slot for custom cancel button/content when autoClick is active.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **prefix** - The container that wraps the prefix.\n- **label** - The button's label.\n- **suffix** - The container that wraps the suffix.\n- **caret** - The button's caret icon, an `<zn-icon>` element.\n- **spinner** - The spinner that shows when the button is in the loading state.",
136
136
  "doc-url": "",
137
137
  "attributes": [
138
138
  {
@@ -231,7 +231,30 @@
231
231
  "name": "rel",
232
232
  "value": { "type": "string", "default": "'noreferrer noopener'" }
233
233
  },
234
- { "name": "tooltip", "value": { "type": "string" } }
234
+ { "name": "tooltip", "value": { "type": "string" } },
235
+ {
236
+ "name": "auto-click",
237
+ "value": { "type": "boolean", "default": "false" }
238
+ },
239
+ {
240
+ "name": "auto-click-delay",
241
+ "value": { "type": "number", "default": "2000" }
242
+ },
243
+ {
244
+ "name": "loading-text",
245
+ "value": { "type": "string", "default": "'Loading...'" }
246
+ },
247
+ {
248
+ "name": "loading-text-position",
249
+ "value": {
250
+ "type": "'left' | 'right' | 'center' | string",
251
+ "default": "'center'"
252
+ }
253
+ },
254
+ {
255
+ "name": "loading",
256
+ "value": { "type": "boolean", "default": "false" }
257
+ }
235
258
  ],
236
259
  "slots": [
237
260
  { "name": "", "description": "The button's label." },
@@ -242,6 +265,10 @@
242
265
  {
243
266
  "name": "suffix",
244
267
  "description": "A presentational suffix icon or similar element."
268
+ },
269
+ {
270
+ "name": "cancel",
271
+ "description": "Slot for custom cancel button/content when autoClick is active."
245
272
  }
246
273
  ],
247
274
  "events": [
@@ -261,6 +288,7 @@
261
288
  "js": {
262
289
  "properties": [
263
290
  { "name": "button", "type": "HTMLButtonElement" },
291
+ { "name": "countdownContainer", "type": "HTMLElement[]" },
264
292
  {
265
293
  "name": "color",
266
294
  "type": "'default' | 'secondary' | 'error' | 'info' | 'success' | 'warning' |\n 'transparent' | 'star'"
@@ -307,6 +335,14 @@
307
335
  { "name": "dataTarget", "type": "'modal' | 'slide' | string" },
308
336
  { "name": "rel", "type": "string" },
309
337
  { "name": "tooltip", "type": "string" },
338
+ { "name": "autoClick", "type": "boolean" },
339
+ { "name": "autoClickDelay", "type": "number" },
340
+ { "name": "loadingText", "type": "string" },
341
+ {
342
+ "name": "loadingTextPosition",
343
+ "type": "'left' | 'right' | 'center' | string"
344
+ },
345
+ { "name": "loading", "type": "boolean" },
310
346
  { "name": "validity" },
311
347
  { "name": "validationMessage" },
312
348
  { "name": "handleClick" }
@@ -1195,6 +1231,10 @@
1195
1231
  "name": "outbound",
1196
1232
  "value": { "type": "boolean", "default": "false" }
1197
1233
  },
1234
+ {
1235
+ "name": "no-collapse",
1236
+ "value": { "type": "boolean", "default": "false" }
1237
+ },
1198
1238
  {
1199
1239
  "name": "short",
1200
1240
  "value": { "type": "boolean", "default": "false" }
@@ -1211,6 +1251,7 @@
1211
1251
  { "name": "sender", "type": "string" },
1212
1252
  { "name": "avatar", "type": "string" },
1213
1253
  { "name": "outbound", "type": "boolean" },
1254
+ { "name": "noCollapse", "type": "boolean" },
1214
1255
  { "name": "short", "type": "boolean" },
1215
1256
  { "name": "defaultDisplay", "type": "'text' | 'html'" },
1216
1257
  { "name": "htmlNodes", "type": "Node[]" },
@@ -1503,10 +1544,7 @@
1503
1544
  "name": "empty-state-icon",
1504
1545
  "value": { "type": "string", "default": "\"data_alert\"" }
1505
1546
  },
1506
- {
1507
- "name": "hide-checkboxes",
1508
- "value": { "type": "boolean", "default": "true" }
1509
- },
1547
+ { "name": "hide-checkboxes", "value": { "type": "boolean" } },
1510
1548
  { "name": "filters", "value": { "type": "[]", "default": "[]" } },
1511
1549
  {
1512
1550
  "name": "method",
@@ -1515,7 +1553,12 @@
1515
1553
  {
1516
1554
  "name": "no-initial-load",
1517
1555
  "value": { "type": "boolean", "default": "false" }
1518
- }
1556
+ },
1557
+ {
1558
+ "name": "group-by",
1559
+ "value": { "type": "string", "default": "''" }
1560
+ },
1561
+ { "name": "groups", "value": { "type": "string", "default": "''" } }
1519
1562
  ],
1520
1563
  "slots": [
1521
1564
  { "name": "", "description": "The default slot." },
@@ -1547,6 +1590,9 @@
1547
1590
  { "name": "filters", "type": "[]" },
1548
1591
  { "name": "method", "type": "'GET' | 'POST'" },
1549
1592
  { "name": "noInitialLoad", "type": "boolean" },
1593
+ { "name": "groupBy", "type": "string" },
1594
+ { "name": "groups", "type": "string" },
1595
+ { "name": "selectAllButton", "type": "ZnButton" },
1550
1596
  { "name": "requestParams", "type": "Record<string, any>" },
1551
1597
  { "name": "changeEventListener" }
1552
1598
  ],
@@ -2622,6 +2668,7 @@
2622
2668
  "value": { "type": "boolean", "default": "false" }
2623
2669
  },
2624
2670
  { "name": "caption", "value": { "type": "string" } },
2671
+ { "name": "icon", "value": { "type": "string" } },
2625
2672
  { "name": "description", "value": { "type": "string" } },
2626
2673
  {
2627
2674
  "name": "navigation",
@@ -2645,6 +2692,7 @@
2645
2692
  { "name": "entityIdShow", "type": "boolean" },
2646
2693
  { "name": "transparent", "type": "boolean" },
2647
2694
  { "name": "caption", "type": "string" },
2695
+ { "name": "icon", "type": "string" },
2648
2696
  { "name": "description", "type": "string" },
2649
2697
  { "name": "navigation", "type": "array" },
2650
2698
  { "name": "fullWidth", "type": "boolean" },
@@ -3705,7 +3753,11 @@
3705
3753
  "value": { "type": "string", "default": "''" }
3706
3754
  },
3707
3755
  { "name": "date", "value": { "type": "string", "default": "''" } },
3708
- { "name": "body", "value": { "type": "string", "default": "''" } }
3756
+ { "name": "body", "value": { "type": "string", "default": "''" } },
3757
+ {
3758
+ "name": "collapse-at-lines",
3759
+ "value": { "type": "number", "default": "3" }
3760
+ }
3709
3761
  ],
3710
3762
  "slots": [
3711
3763
  { "name": "caption", "description": "The note's caption." },
@@ -3720,7 +3772,8 @@
3720
3772
  { "name": "color", "type": "typeof colors[number]" },
3721
3773
  { "name": "caption", "type": "string" },
3722
3774
  { "name": "date", "type": "string" },
3723
- { "name": "body", "type": "string" }
3775
+ { "name": "body", "type": "string" },
3776
+ { "name": "collapseAtLines", "type": "number" }
3724
3777
  ],
3725
3778
  "events": [
3726
3779
  {
@@ -3783,7 +3836,9 @@
3783
3836
  "name": "zn-order-table",
3784
3837
  "description": "Short summary of the component's intended use.\n---\n\n\n### **Events:**\n - **zn-event-name** - Emitted as an example.\n\n### **Slots:**\n - _default_ - The default slot.\n- **example** - An example slot.\n\n### **CSS Properties:**\n - **--example** - An example CSS custom property. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
3785
3838
  "doc-url": "",
3786
- "attributes": [{ "name": "data", "value": { "type": "Object" } }],
3839
+ "attributes": [
3840
+ { "name": "data", "value": { "type": "OrderTableData" } }
3841
+ ],
3787
3842
  "slots": [
3788
3843
  { "name": "", "description": "The default slot." },
3789
3844
  { "name": "example", "description": "An example slot." }
@@ -3792,7 +3847,10 @@
3792
3847
  { "name": "zn-event-name", "description": "Emitted as an example." }
3793
3848
  ],
3794
3849
  "js": {
3795
- "properties": [{ "name": "data", "type": "Object" }],
3850
+ "properties": [
3851
+ { "name": "data", "type": "OrderTableData" },
3852
+ { "name": "resizeEventHandler" }
3853
+ ],
3796
3854
  "events": [
3797
3855
  {
3798
3856
  "name": "zn-event-name",
@@ -3951,6 +4009,7 @@
3951
4009
  "attributes": [
3952
4010
  { "name": "basis-px", "value": { "type": "number" } },
3953
4011
  { "name": "caption", "value": { "type": "string" } },
4012
+ { "name": "icon", "value": { "type": "string" } },
3954
4013
  { "name": "description", "value": { "type": "string" } },
3955
4014
  { "name": "tabbed", "value": { "type": "boolean" } },
3956
4015
  { "name": "cosmic", "value": { "type": "boolean" } },
@@ -3970,6 +4029,7 @@
3970
4029
  "properties": [
3971
4030
  { "name": "basis", "type": "number" },
3972
4031
  { "name": "caption", "type": "string" },
4032
+ { "name": "icon", "type": "string" },
3973
4033
  { "name": "description", "type": "string" },
3974
4034
  { "name": "tabbed", "type": "boolean" },
3975
4035
  { "name": "cosmic", "type": "boolean" },
@@ -4709,6 +4769,13 @@
4709
4769
  "name": "disabled",
4710
4770
  "value": { "type": "boolean", "default": "false" }
4711
4771
  },
4772
+ {
4773
+ "name": "size",
4774
+ "value": {
4775
+ "type": "'small' | 'medium' | 'large'",
4776
+ "default": "'medium'"
4777
+ }
4778
+ },
4712
4779
  {
4713
4780
  "name": "getSymbol",
4714
4781
  "value": { "type": "(value: number) => string" }
@@ -4731,6 +4798,7 @@
4731
4798
  { "name": "precision", "type": "number" },
4732
4799
  { "name": "readonly", "type": "boolean" },
4733
4800
  { "name": "disabled", "type": "boolean" },
4801
+ { "name": "size", "type": "'small' | 'medium' | 'large'" },
4734
4802
  { "name": "getSymbol", "type": "(value: number) => string" },
4735
4803
  {
4736
4804
  "name": "validity",
package/dist/zn.d.ts CHANGED
@@ -1058,6 +1058,7 @@ declare module "components/button/button.component" {
1058
1058
  * @slot - The button's label.
1059
1059
  * @slot prefix - A presentational prefix icon or similar element.
1060
1060
  * @slot suffix - A presentational suffix icon or similar element.
1061
+ * @slot cancel - Slot for custom cancel button/content when autoClick is active.
1061
1062
  *
1062
1063
  * @csspart base - The component's base wrapper.
1063
1064
  * @csspart prefix - The container that wraps the prefix.
@@ -1074,7 +1075,10 @@ declare module "components/button/button.component" {
1074
1075
  };
1075
1076
  private readonly formControlController;
1076
1077
  private readonly hasSlotController;
1078
+ private _autoClickTimeout;
1079
+ private _loadingState;
1077
1080
  button: HTMLButtonElement;
1081
+ countdownContainer: HTMLElement[];
1078
1082
  color: 'default' | 'secondary' | 'error' | 'info' | 'success' | 'warning' | 'transparent' | 'star';
1079
1083
  size: 'content' | 'x-small' | 'small' | 'medium' | 'large';
1080
1084
  text: boolean;
@@ -1106,9 +1110,16 @@ declare module "components/button/button.component" {
1106
1110
  dataTarget: 'modal' | 'slide' | string;
1107
1111
  rel: string;
1108
1112
  tooltip: string;
1113
+ autoClick: boolean;
1114
+ autoClickDelay: number;
1115
+ loadingText: string;
1116
+ loadingTextPosition: 'left' | 'right' | 'center' | string;
1117
+ loading: boolean;
1109
1118
  get validity(): ValidityState;
1110
1119
  get validationMessage(): string;
1111
1120
  firstUpdated(): void;
1121
+ disconnectedCallback(): void;
1122
+ protected updated(changedProps: Map<string, any>): void;
1112
1123
  checkValidity(): boolean;
1113
1124
  getForm(): HTMLFormElement | null;
1114
1125
  reportValidity(): boolean;
@@ -1116,6 +1127,9 @@ declare module "components/button/button.component" {
1116
1127
  handleClick: () => void;
1117
1128
  private _isLink;
1118
1129
  private _isButton;
1130
+ setupAutoClick(): void;
1131
+ updateCountdownText(): void;
1132
+ teardownAutoClick(): void;
1119
1133
  protected render(): unknown;
1120
1134
  }
1121
1135
  }
@@ -2625,6 +2639,9 @@ declare module "components/data-table/data-table.component" {
2625
2639
  filters: [];
2626
2640
  method: 'GET' | 'POST';
2627
2641
  noInitialLoad: boolean;
2642
+ groupBy: string;
2643
+ groups: string;
2644
+ selectAllButton: ZnButton;
2628
2645
  private _initialLoad;
2629
2646
  private _lastTableContent;
2630
2647
  private resizeObserver;
@@ -2646,6 +2663,8 @@ declare module "components/data-table/data-table.component" {
2646
2663
  changeEventListener: (e: ZnFilterChangeEvent) => void;
2647
2664
  emptyState(): TemplateResult<1>;
2648
2665
  renderTable(data: Response): TemplateResult<1>;
2666
+ humanize(str: string): string;
2667
+ renderTableData(data: any): TemplateResult<1>;
2649
2668
  getTableHeader(): TemplateResult<1>;
2650
2669
  getTableFooter(): TemplateResult<1>;
2651
2670
  getRowsSelected(): TemplateResult<1> | null;
@@ -2670,6 +2689,7 @@ declare module "components/data-table/data-table.component" {
2670
2689
  private getRows;
2671
2690
  private getSelectedKeys;
2672
2691
  private updateKeys;
2692
+ private updateSelectAll;
2673
2693
  private updateModifyKeys;
2674
2694
  private updateDeleteKeys;
2675
2695
  private extractComparable;
@@ -2823,6 +2843,13 @@ declare module "components/note/note.component" {
2823
2843
  caption: string;
2824
2844
  date: string;
2825
2845
  body: string;
2846
+ collapseAtLines: number;
2847
+ private expanded;
2848
+ private _isOverflowing;
2849
+ private _toggleExpand;
2850
+ private _measureOverflow;
2851
+ protected firstUpdated(): void;
2852
+ protected updated(): void;
2826
2853
  protected render(): unknown;
2827
2854
  }
2828
2855
  }
@@ -3118,6 +3145,7 @@ declare module "components/header/header.component" {
3118
3145
  entityIdShow: boolean;
3119
3146
  transparent: boolean;
3120
3147
  caption: string;
3148
+ icon: string;
3121
3149
  description: string;
3122
3150
  navigation: never[];
3123
3151
  fullWidth: boolean;
@@ -3448,6 +3476,7 @@ declare module "components/panel/panel.component" {
3448
3476
  private readonly hasSlotController;
3449
3477
  basis: number;
3450
3478
  caption: string;
3479
+ icon: string;
3451
3480
  description: string;
3452
3481
  tabbed: boolean;
3453
3482
  cosmic: boolean;
@@ -3963,6 +3992,24 @@ declare module "components/progress-bar/index" {
3963
3992
  declare module "components/order-table/order-table.component" {
3964
3993
  import { type CSSResultGroup } from 'lit';
3965
3994
  import ZincElement from "internal/zinc-element";
3995
+ interface OrderTableData {
3996
+ headers: string[];
3997
+ items: {
3998
+ caption?: string;
3999
+ summary?: string;
4000
+ data: string[];
4001
+ sub?: {
4002
+ caption?: string;
4003
+ summary?: string;
4004
+ data: string[];
4005
+ }[];
4006
+ }[];
4007
+ tax?: string;
4008
+ discount?: string;
4009
+ total?: string;
4010
+ paid?: string;
4011
+ remaining?: string;
4012
+ }
3966
4013
  /**
3967
4014
  * @summary Short summary of the component's intended use.
3968
4015
  * @documentation https://zinc.style/components/order-table
@@ -3982,11 +4029,12 @@ declare module "components/order-table/order-table.component" {
3982
4029
  */
3983
4030
  export default class ZnOrderTable extends ZincElement {
3984
4031
  static styles: CSSResultGroup;
3985
- data: Object;
4032
+ data: OrderTableData;
3986
4033
  private isMobile;
3987
4034
  private modifiedData;
3988
- constructor();
3989
4035
  connectedCallback(): void;
4036
+ disconnectedCallback(): void;
4037
+ resizeEventHandler: () => void;
3990
4038
  render(): import("lit").TemplateResult<1>;
3991
4039
  getHeaders(): import("lit").TemplateResult<1>;
3992
4040
  getRows(): import("lit").TemplateResult<1>;
@@ -5300,6 +5348,7 @@ declare module "components/rating/rating.component" {
5300
5348
  precision: number;
5301
5349
  readonly: boolean;
5302
5350
  disabled: boolean;
5351
+ size: 'small' | 'medium' | 'large';
5303
5352
  getSymbol: (value: number) => string;
5304
5353
  /** Gets the validity state object */
5305
5354
  get validity(): ValidityState;
@@ -6210,8 +6259,8 @@ declare module "components/split-button/index" {
6210
6259
  }
6211
6260
  }
6212
6261
  declare module "components/content-block/content-block.component" {
6213
- import ZincElement from "internal/zinc-element";
6214
6262
  import type { PropertyValues } from 'lit';
6263
+ import ZincElement from "internal/zinc-element";
6215
6264
  interface TextRow {
6216
6265
  lines: string[];
6217
6266
  type: 'reply' | 'text';
@@ -6228,6 +6277,7 @@ declare module "components/content-block/content-block.component" {
6228
6277
  sender: string;
6229
6278
  avatar: string;
6230
6279
  outbound: boolean;
6280
+ noCollapse: boolean;
6231
6281
  short: boolean;
6232
6282
  defaultDisplay: 'text' | 'html';
6233
6283
  htmlNodes: Node[];