@furystack/shades-common-components 3.3.0 → 3.4.1

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 (101) hide show
  1. package/dist/components/button.js +2 -2
  2. package/dist/components/button.js.map +1 -1
  3. package/dist/components/command-palette/command-palette-manager.js +12 -5
  4. package/dist/components/command-palette/command-palette-manager.js.map +1 -1
  5. package/dist/components/command-palette/command-palette-suggestion-list.js +2 -4
  6. package/dist/components/command-palette/command-palette-suggestion-list.js.map +1 -1
  7. package/dist/components/command-palette/index.js +18 -5
  8. package/dist/components/command-palette/index.js.map +1 -1
  9. package/dist/components/data-grid/body.js +1 -2
  10. package/dist/components/data-grid/body.js.map +1 -1
  11. package/dist/components/data-grid/data-grid-row.js +3 -7
  12. package/dist/components/data-grid/data-grid-row.js.map +1 -1
  13. package/dist/components/data-grid/data-grid.js +4 -6
  14. package/dist/components/data-grid/data-grid.js.map +1 -1
  15. package/dist/components/data-grid/header.js +3 -5
  16. package/dist/components/data-grid/header.js.map +1 -1
  17. package/dist/components/data-grid/index.js +16 -3
  18. package/dist/components/data-grid/index.js.map +1 -1
  19. package/dist/components/grid.js +4 -9
  20. package/dist/components/grid.js.map +1 -1
  21. package/dist/components/index.js +33 -20
  22. package/dist/components/index.js.map +1 -1
  23. package/dist/components/{autocomplete.js → inputs/autocomplete.js} +1 -1
  24. package/dist/components/inputs/autocomplete.js.map +1 -0
  25. package/dist/components/inputs/index.js +20 -0
  26. package/dist/components/inputs/index.js.map +1 -0
  27. package/dist/components/inputs/input.js +112 -0
  28. package/dist/components/inputs/input.js.map +1 -0
  29. package/dist/components/inputs/text-area.js +76 -0
  30. package/dist/components/inputs/text-area.js.map +1 -0
  31. package/dist/components/loader.js +35 -46
  32. package/dist/components/loader.js.map +1 -1
  33. package/dist/components/modal.js +3 -5
  34. package/dist/components/modal.js.map +1 -1
  35. package/dist/components/noty-list.js +7 -7
  36. package/dist/components/noty-list.js.map +1 -1
  37. package/dist/components/paper.js +1 -1
  38. package/dist/components/paper.js.map +1 -1
  39. package/dist/components/skeleton.js +37 -0
  40. package/dist/components/skeleton.js.map +1 -0
  41. package/dist/components/suggest/index.js +18 -5
  42. package/dist/components/suggest/index.js.map +1 -1
  43. package/dist/components/suggest/suggest-manager.js +12 -5
  44. package/dist/components/suggest/suggest-manager.js.map +1 -1
  45. package/dist/components/suggest/suggestion-list.js +2 -4
  46. package/dist/components/suggest/suggestion-list.js.map +1 -1
  47. package/dist/components/wizard/index.js +2 -3
  48. package/dist/components/wizard/index.js.map +1 -1
  49. package/dist/index.js +17 -4
  50. package/dist/index.js.map +1 -1
  51. package/dist/services/collection-service.js +5 -3
  52. package/dist/services/collection-service.js.map +1 -1
  53. package/dist/services/index.js +21 -8
  54. package/dist/services/index.js.map +1 -1
  55. package/dist/services/noty-service.js +7 -2
  56. package/dist/services/noty-service.js.map +1 -1
  57. package/dist/services/theme-provider-service.js +27 -11
  58. package/dist/services/theme-provider-service.js.map +1 -1
  59. package/dist/utils/index.js +15 -2
  60. package/dist/utils/index.js.map +1 -1
  61. package/package.json +7 -8
  62. package/src/components/data-grid/header.tsx +1 -1
  63. package/src/components/index.ts +2 -2
  64. package/src/components/{autocomplete.tsx → inputs/autocomplete.tsx} +3 -3
  65. package/src/components/inputs/index.ts +3 -0
  66. package/src/components/inputs/input.tsx +195 -0
  67. package/src/components/inputs/text-area.tsx +117 -0
  68. package/src/components/loader.tsx +51 -54
  69. package/src/components/noty-list.tsx +4 -2
  70. package/src/components/skeleton.tsx +45 -0
  71. package/src/components/wizard/index.tsx +1 -1
  72. package/src/services/theme-provider-service.ts +21 -8
  73. package/tsconfig.tsbuildinfo +1 -1
  74. package/types/components/app-bar-link.d.ts +3 -2
  75. package/types/components/app-bar-link.d.ts.map +1 -1
  76. package/types/components/fab.d.ts +3 -2
  77. package/types/components/fab.d.ts.map +1 -1
  78. package/types/components/index.d.ts +2 -2
  79. package/types/components/index.d.ts.map +1 -1
  80. package/types/components/{autocomplete.d.ts → inputs/autocomplete.d.ts} +3 -3
  81. package/types/components/inputs/autocomplete.d.ts.map +1 -0
  82. package/types/components/inputs/index.d.ts +4 -0
  83. package/types/components/inputs/index.d.ts.map +1 -0
  84. package/types/components/inputs/input.d.ts +54 -0
  85. package/types/components/inputs/input.d.ts.map +1 -0
  86. package/types/components/inputs/text-area.d.ts +14 -0
  87. package/types/components/inputs/text-area.d.ts.map +1 -0
  88. package/types/components/loader.d.ts +12 -3
  89. package/types/components/loader.d.ts.map +1 -1
  90. package/types/components/noty-list.d.ts.map +1 -1
  91. package/types/components/skeleton.d.ts +8 -0
  92. package/types/components/skeleton.d.ts.map +1 -0
  93. package/types/services/theme-provider-service.d.ts +10 -11
  94. package/types/services/theme-provider-service.d.ts.map +1 -1
  95. package/dist/components/autocomplete.js.map +0 -1
  96. package/dist/components/input.js +0 -89
  97. package/dist/components/input.js.map +0 -1
  98. package/src/components/input.tsx +0 -148
  99. package/types/components/autocomplete.d.ts.map +0 -1
  100. package/types/components/input.d.ts +0 -22
  101. package/types/components/input.d.ts.map +0 -1
@@ -0,0 +1,54 @@
1
+ import { PartialElement } from '@furystack/shades';
2
+ import { Palette, Theme } from '../../services';
3
+ export interface TextInputProps extends PartialElement<HTMLInputElement> {
4
+ /**
5
+ * Callback that will be called when the input value changes
6
+ */
7
+ onTextChange?: (text: string) => void;
8
+ /**
9
+ * An optional label title element or string
10
+ */
11
+ labelTitle?: JSX.Element | string;
12
+ /**
13
+ * Optional props for the label element
14
+ */
15
+ labelProps?: PartialElement<HTMLLabelElement>;
16
+ /**
17
+ * Boolean that indicates if the field will be focused automatically
18
+ */
19
+ autofocus?: boolean;
20
+ /**
21
+ * The variant of the input
22
+ */
23
+ variant?: 'contained' | 'outlined';
24
+ /**
25
+ * The default color of the input (Error color will be used in case of invalid input value)
26
+ */
27
+ defaultColor?: keyof Palette;
28
+ /**
29
+ * Optional callback for the helper text
30
+ */
31
+ getHelperText?: (options: {
32
+ state: TextInputState;
33
+ }) => JSX.Element | string;
34
+ /**
35
+ * Optional callback for retrieving an icon element on the left side of the input field
36
+ */
37
+ getStartIcon?: (options: {
38
+ state: TextInputState;
39
+ }) => JSX.Element | string;
40
+ /**
41
+ * Optional callback for retrieving an icon element on the right side of the input field
42
+ */
43
+ getEndIcon?: (options: {
44
+ state: TextInputState;
45
+ }) => JSX.Element | string;
46
+ }
47
+ export declare type TextInputState = {
48
+ theme: Theme;
49
+ value: string;
50
+ focused: boolean;
51
+ validity: ValidityState;
52
+ };
53
+ export declare const Input: (props: TextInputProps, children: import("@furystack/shades").ChildrenList) => JSX.Element<any, any>;
54
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,cAAc,EAAiC,MAAM,mBAAmB,CAAA;AAExF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAE/C,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IACtE;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC;;OAEG;IACH,UAAU,CAAC,EAAE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;IAE7C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,CAAA;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAA;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,cAAc,CAAA;KAAE,KAAK,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;IAE5E;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,cAAc,CAAA;KAAE,KAAK,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;IAE3E;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,cAAc,CAAA;KAAE,KAAK,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;CAC1E;AAED,oBAAY,cAAc,GAAG;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,aAAa,CAAA;CACxB,CAAA;AAwDD,eAAO,MAAM,KAAK,sGAsFhB,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { PartialElement } from '@furystack/shades';
2
+ import { Theme } from '../../services';
3
+ export interface TextAreaProps extends PartialElement<HTMLTextAreaElement> {
4
+ labelTitle?: string;
5
+ labelProps?: PartialElement<HTMLLabelElement>;
6
+ autofocus?: boolean;
7
+ variant?: 'contained' | 'outlined';
8
+ }
9
+ export declare type TextAreaInputState = {
10
+ theme: Theme;
11
+ value?: string;
12
+ };
13
+ export declare const TextArea: (props: TextAreaProps, children: import("@furystack/shades").ChildrenList) => JSX.Element<any, any>;
14
+ //# sourceMappingURL=text-area.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-area.d.ts","sourceRoot":"","sources":["../../../src/components/inputs/text-area.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,cAAc,EAAS,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,KAAK,EAAwB,MAAM,gBAAgB,CAAA;AAG5D,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACxE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,CAAA;CACnC;AAED,oBAAY,kBAAkB,GAAG;IAC/B,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,QAAQ,qGAoGnB,CAAA"}
@@ -1,4 +1,13 @@
1
- export declare const Loader: (props: {
2
- style?: Partial<CSSStyleDeclaration> | undefined;
3
- }, children: import("@furystack/shades").ChildrenList) => JSX.Element<any, any>;
1
+ interface LoaderProps {
2
+ /**
3
+ * Style declaration for the loader
4
+ */
5
+ style?: Partial<CSSStyleDeclaration>;
6
+ /**
7
+ * The time to wait before the loader shows up
8
+ */
9
+ delay?: number;
10
+ }
11
+ export declare const Loader: (props: LoaderProps, children: import("@furystack/shades").ChildrenList) => JSX.Element<any, any>;
12
+ export {};
4
13
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/components/loader.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM;;+EA6DjB,CAAA"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/components/loader.tsx"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACpC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,MAAM,mGA6CjB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"noty-list.d.ts","sourceRoot":"","sources":["../../src/components/noty-list.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,0BAA0B,CAAA;AAKjE,eAAO,MAAM,sBAAsB,SAAU,SAAS,CAAC,MAAM,CAAC,qBAa7D,CAAA;AAED,eAAO,MAAM,aAAa;WAAkB,SAAS;eAAa,MAAM,IAAI;+EAoG1E,CAAA;AAEF,eAAO,MAAM,QAAQ,+FAoCnB,CAAA"}
1
+ {"version":3,"file":"noty-list.d.ts","sourceRoot":"","sources":["../../src/components/noty-list.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,0BAA0B,CAAA;AAKjE,eAAO,MAAM,sBAAsB,SAAU,SAAS,CAAC,MAAM,CAAC,qBAa7D,CAAA;AAED,eAAO,MAAM,aAAa;WAAkB,SAAS;eAAa,MAAM,IAAI;+EAsG1E,CAAA;AAEF,eAAO,MAAM,QAAQ,+FAoCnB,CAAA"}
@@ -0,0 +1,8 @@
1
+ export declare type SkeletonProps = {
2
+ /**
3
+ * The time to wait before the skeleton shows up
4
+ */
5
+ delay?: number;
6
+ };
7
+ export declare const Skeleton: (props: SkeletonProps, children: import("@furystack/shades").ChildrenList) => JSX.Element<any, any>;
8
+ //# sourceMappingURL=skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../src/components/skeleton.tsx"],"names":[],"mappings":"AAGA,oBAAY,aAAa,GAAG;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,QAAQ,qGAkCnB,CAAA"}
@@ -36,6 +36,15 @@ export interface Theme {
36
36
  background: Background;
37
37
  divider: Color;
38
38
  }
39
+ export declare class RgbColor {
40
+ r: number;
41
+ g: number;
42
+ b: number;
43
+ a: number;
44
+ constructor(r: number, g: number, b: number, a?: number);
45
+ update(key: 'r' | 'g' | 'b' | 'a', value: number): RgbColor;
46
+ toString(): string;
47
+ }
39
48
  /**
40
49
  * Service class for theme-related operations
41
50
  */
@@ -53,17 +62,7 @@ export declare class ThemeProviderService {
53
62
  * @param color The color string
54
63
  * @returns The parsed R,G,B, A values
55
64
  */
56
- getRgbFromColorString(color: string): {
57
- r: number;
58
- g: number;
59
- b: number;
60
- a?: undefined;
61
- } | {
62
- r: number;
63
- g: number;
64
- b: number;
65
- a: number;
66
- };
65
+ getRgbFromColorString(color: string): RgbColor;
67
66
  readonly theme: ObservableValue<Theme>;
68
67
  set(change: DeepPartial<Theme>): void;
69
68
  dispose(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"theme-provider-service.d.ts","sourceRoot":"","sources":["../../src/services/theme-provider-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAa,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAG1E,oBAAY,KAAK,GAAG,MAAM,CAAA;AAE1B,oBAAY,aAAa,GAAG;IAC1B,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,aAAa,CAAA;IACtB,SAAS,EAAE,aAAa,CAAA;IACxB,KAAK,EAAE,aAAa,CAAA;IACpB,OAAO,EAAE,aAAa,CAAA;IACtB,OAAO,EAAE,aAAa,CAAA;IACtB,IAAI,EAAE,aAAa,CAAA;CACpB;AAED,MAAM,WAAW,IAAI;IACnB,OAAO,EAAE,KAAK,CAAA;IACd,SAAS,EAAE,KAAK,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAA;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,KAAK,CAAA;IACb,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,KAAK,CAAA;IACf,QAAQ,EAAE,KAAK,CAAA;IACf,kBAAkB,EAAE,KAAK,CAAA;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAA;IACd,KAAK,EAAE,KAAK,CAAA;CACb;AAED,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,EAAE,WAAW,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,KAAK,CAAA;CACf;AAED;;GAEG;AACH,qBACa,oBAAoB;IAC/B;;;;;;OAMG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,SAAY,EAAE,IAAI,SAAY;IAMvE;;;;OAIG;IACI,qBAAqB,CAAC,KAAK,EAAE,MAAM;;;;;;;;;;;IA+B1C,SAAgB,KAAK,yBAAwC;IAEtD,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC;IAI9B,OAAO;CAGf"}
1
+ {"version":3,"file":"theme-provider-service.d.ts","sourceRoot":"","sources":["../../src/services/theme-provider-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAa,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAG1E,oBAAY,KAAK,GAAG,MAAM,CAAA;AAE1B,oBAAY,aAAa,GAAG;IAC1B,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,aAAa,CAAA;IACtB,SAAS,EAAE,aAAa,CAAA;IACxB,KAAK,EAAE,aAAa,CAAA;IACpB,OAAO,EAAE,aAAa,CAAA;IACtB,OAAO,EAAE,aAAa,CAAA;IACtB,IAAI,EAAE,aAAa,CAAA;CACpB;AAED,MAAM,WAAW,IAAI;IACnB,OAAO,EAAE,KAAK,CAAA;IACd,SAAS,EAAE,KAAK,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAA;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,KAAK,CAAA;IACb,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,KAAK,CAAA;IACf,QAAQ,EAAE,KAAK,CAAA;IACf,kBAAkB,EAAE,KAAK,CAAA;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAA;IACd,KAAK,EAAE,KAAK,CAAA;CACb;AAED,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,EAAE,WAAW,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,KAAK,CAAA;CACf;AAED,qBAAa,QAAQ;IACA,CAAC,EAAE,MAAM;IAAS,CAAC,EAAE,MAAM;IAAS,CAAC,EAAE,MAAM;IAAS,CAAC,EAAE,MAAM;gBAA/D,CAAC,EAAE,MAAM,EAAS,CAAC,EAAE,MAAM,EAAS,CAAC,EAAE,MAAM,EAAS,CAAC,GAAE,MAAU;IAE/E,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ;IAK3D,QAAQ,IAAI,MAAM;CAG1B;AAED;;GAEG;AACH,qBACa,oBAAoB;IAC/B;;;;;;OAMG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,SAAY,EAAE,IAAI,SAAY;IAMvE;;;;OAIG;IACI,qBAAqB,CAAC,KAAK,EAAE,MAAM;IA+B1C,SAAgB,KAAK,yBAAwC;IAEtD,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC;IAI9B,OAAO;CAGf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/components/autocomplete.tsx"],"names":[],"mappings":";;;AAAA,8CAA0D;AAC1D,mCAA2C;AAE9B,QAAA,YAAY,GAAG,IAAA,cAAK,EAG/B;IACA,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;QACtB,UAAU,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;KAC1D,CAAC;IACF,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAA;QACjC,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;SACvC;IACH,CAAC;IACD,aAAa,EAAE,oBAAoB;IACnC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC9B,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAA;QACjC,OAAO,CACL;YACE,8BAAC,aAAK,OACA,KAAK,CAAC,UAAU,EACpB,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE;oBACf,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,MAAa,CAAA;oBAClC,IAAI,KAAK,CAAC,MAAM,EAAE;wBAChB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;4BACtC,CAAC;4BAAC,EAAE,CAAC,MAA2B,CAAC,iBAAiB,CAAC,8BAA8B,CAAC,CAAA;4BAClF,OAAM;yBACP;qBACF;oBACD,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACvB,CAAC,GACD;YACF,4CAAU,EAAE,EAAE,UAAU,IACrB,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAC5B,0CAAQ,KAAK,EAAE,CAAC,GAAI,CACrB,CAAC,CACO,CACP,CACP,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
@@ -1,89 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Input = void 0;
4
- const shades_1 = require("@furystack/shades");
5
- const __1 = require("..");
6
- const promisify_animation_1 = require("../utils/promisify-animation");
7
- exports.Input = (0, shades_1.Shade)({
8
- shadowDomName: 'shade-input',
9
- getInitialState: ({ injector, props }) => ({
10
- theme: injector.getInstance(__1.ThemeProviderService).theme.getValue(),
11
- value: props.value,
12
- }),
13
- resources: ({ injector, updateState }) => [
14
- injector.getInstance(__1.ThemeProviderService).theme.subscribe((theme) => updateState({ theme })),
15
- ],
16
- render: ({ props, element, injector, getState, updateState }) => {
17
- var _a;
18
- const themeProvider = injector.getInstance(__1.ThemeProviderService);
19
- const { theme, value } = getState();
20
- const { palette } = theme;
21
- return ((0, shades_1.createComponent)("label", { ...props.labelProps, style: {
22
- display: 'flex',
23
- flexDirection: 'column',
24
- alignItems: 'flex-start',
25
- justifyContent: 'space-between',
26
- fontSize: '10px',
27
- color: props.disabled ? 'rgb(170, 170, 170)' : '#bbb',
28
- marginBottom: '1em',
29
- padding: '1em',
30
- ...(_a = props.labelProps) === null || _a === void 0 ? void 0 : _a.style,
31
- } },
32
- props.labelTitle,
33
- props.multiLine ? ((0, shades_1.createComponent)("div", { contentEditable: props.readOnly === true || props.disabled === true ? 'inherit' : 'true', ...props, style: {
34
- border: 'none',
35
- backgroundColor: 'transparent',
36
- outline: 'none',
37
- fontSize: '12px',
38
- width: '100%',
39
- textOverflow: 'ellipsis',
40
- ...props.style,
41
- } }, value)) : ((0, shades_1.createComponent)("input", { onchange: (ev) => {
42
- const newValue = ev.target.value;
43
- updateState({ value: newValue }, true);
44
- props.onTextChange && props.onTextChange(newValue);
45
- props.onchange && props.onchange(ev);
46
- }, onfocus: () => {
47
- if (!props.disabled) {
48
- (0, promisify_animation_1.promisifyAnimation)(element.querySelector('label'), [{ color: themeProvider.getTextColor(theme.background.default) }, { color: palette.primary.main }], {
49
- duration: 500,
50
- easing: 'cubic-bezier(0.455, 0.030, 0.515, 0.955)',
51
- fill: 'forwards',
52
- });
53
- (0, promisify_animation_1.promisifyAnimation)(element.querySelector('input'), [
54
- { boxShadow: '0px 0px 0px rgba(128,128,128,0.1)' },
55
- { boxShadow: `0px 3px 0px ${palette.primary.main}` },
56
- ], {
57
- duration: 200,
58
- fill: 'forwards',
59
- });
60
- }
61
- }, onblur: () => {
62
- if (!props.disabled) {
63
- (0, promisify_animation_1.promisifyAnimation)(element.querySelector('label'), [{ color: palette.primary.main }, { color: themeProvider.getTextColor(theme.background.default) }], {
64
- duration: 200,
65
- easing: 'cubic-bezier(0.455, 0.030, 0.515, 0.955)',
66
- fill: 'forwards',
67
- });
68
- (0, promisify_animation_1.promisifyAnimation)(element.querySelector('input'), [
69
- { boxShadow: '0px 3px 0px rgba(128,128,128,0.4)' },
70
- { boxShadow: '0px 0px 0px rgba(128,128,128,0.1)' },
71
- ], {
72
- duration: 400,
73
- fill: 'forwards',
74
- });
75
- }
76
- }, ...props, style: {
77
- color: 'inherit',
78
- border: 'none',
79
- backgroundColor: 'transparent',
80
- outline: 'none',
81
- fontSize: '12px',
82
- width: '100%',
83
- textOverflow: 'ellipsis',
84
- padding: '0.6em 0',
85
- ...props.style,
86
- }, value: value }))));
87
- },
88
- });
89
- //# sourceMappingURL=input.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/components/input.tsx"],"names":[],"mappings":"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"}
@@ -1,148 +0,0 @@
1
- import { Shade, PartialElement, createComponent } from '@furystack/shades'
2
- import { ThemeProviderService } from '..'
3
- import { Theme } from '../services'
4
- import { promisifyAnimation } from '../utils/promisify-animation'
5
-
6
- export interface InputProps extends PartialElement<HTMLInputElement> {
7
- onTextChange?: (text: string) => void
8
- labelTitle?: string
9
- multiLine?: false
10
- labelProps?: PartialElement<HTMLLabelElement>
11
- autofocus?: boolean
12
- }
13
-
14
- export interface TextAreaProps extends PartialElement<HTMLTextAreaElement> {
15
- labelTitle?: string
16
- multiLine: true
17
- labelProps?: PartialElement<HTMLLabelElement>
18
- autofocus?: boolean
19
- }
20
-
21
- export type TextInputProps = InputProps | TextAreaProps
22
-
23
- export type TextInputState = {
24
- theme: Theme
25
- value?: string
26
- }
27
-
28
- export const Input = Shade<TextInputProps, TextInputState>({
29
- shadowDomName: 'shade-input',
30
- getInitialState: ({ injector, props }) => ({
31
- theme: injector.getInstance(ThemeProviderService).theme.getValue(),
32
- value: props.value,
33
- }),
34
- resources: ({ injector, updateState }) => [
35
- injector.getInstance(ThemeProviderService).theme.subscribe((theme) => updateState({ theme })),
36
- ],
37
- render: ({ props, element, injector, getState, updateState }) => {
38
- const themeProvider = injector.getInstance(ThemeProviderService)
39
- const { theme, value } = getState()
40
- const { palette } = theme
41
-
42
- return (
43
- <label
44
- {...props.labelProps}
45
- style={{
46
- display: 'flex',
47
- flexDirection: 'column',
48
- alignItems: 'flex-start',
49
- justifyContent: 'space-between',
50
- fontSize: '10px',
51
- color: props.disabled ? 'rgb(170, 170, 170)' : '#bbb',
52
- marginBottom: '1em',
53
- padding: '1em',
54
- ...props.labelProps?.style,
55
- }}
56
- >
57
- {props.labelTitle}
58
- {props.multiLine ? (
59
- <div
60
- contentEditable={props.readOnly === true || props.disabled === true ? 'inherit' : 'true'}
61
- {...props}
62
- style={{
63
- border: 'none',
64
- backgroundColor: 'transparent',
65
- outline: 'none',
66
- fontSize: '12px',
67
- width: '100%',
68
- textOverflow: 'ellipsis',
69
- ...props.style,
70
- }}
71
- >
72
- {value}
73
- </div>
74
- ) : (
75
- <input
76
- onchange={(ev) => {
77
- const newValue = (ev.target as HTMLInputElement).value
78
- updateState({ value: newValue }, true)
79
- props.onTextChange && props.onTextChange(newValue)
80
- props.onchange && (props.onchange as any)(ev)
81
- }}
82
- onfocus={() => {
83
- if (!props.disabled) {
84
- promisifyAnimation(
85
- element.querySelector('label'),
86
- [{ color: themeProvider.getTextColor(theme.background.default) }, { color: palette.primary.main }],
87
- {
88
- duration: 500,
89
- easing: 'cubic-bezier(0.455, 0.030, 0.515, 0.955)',
90
- fill: 'forwards',
91
- },
92
- )
93
- promisifyAnimation(
94
- element.querySelector('input'),
95
- [
96
- { boxShadow: '0px 0px 0px rgba(128,128,128,0.1)' },
97
- { boxShadow: `0px 3px 0px ${palette.primary.main}` },
98
- ],
99
- {
100
- duration: 200,
101
- fill: 'forwards',
102
- },
103
- )
104
- }
105
- }}
106
- onblur={() => {
107
- if (!props.disabled) {
108
- promisifyAnimation(
109
- element.querySelector('label'),
110
- [{ color: palette.primary.main }, { color: themeProvider.getTextColor(theme.background.default) }],
111
- {
112
- duration: 200,
113
- easing: 'cubic-bezier(0.455, 0.030, 0.515, 0.955)',
114
- fill: 'forwards',
115
- },
116
- )
117
- promisifyAnimation(
118
- element.querySelector('input'),
119
- [
120
- { boxShadow: '0px 3px 0px rgba(128,128,128,0.4)' },
121
- { boxShadow: '0px 0px 0px rgba(128,128,128,0.1)' },
122
- ],
123
- {
124
- duration: 400,
125
- fill: 'forwards',
126
- },
127
- )
128
- }
129
- }}
130
- {...props}
131
- style={{
132
- color: 'inherit',
133
- border: 'none',
134
- backgroundColor: 'transparent',
135
- outline: 'none',
136
- fontSize: '12px',
137
- width: '100%',
138
- textOverflow: 'ellipsis',
139
- padding: '0.6em 0',
140
- ...props.style,
141
- }}
142
- value={value}
143
- />
144
- )}
145
- </label>
146
- )
147
- },
148
- })
@@ -1 +0,0 @@
1
- {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../src/components/autocomplete.tsx"],"names":[],"mappings":"AACA,OAAO,EAAS,UAAU,EAAE,MAAM,SAAS,CAAA;AAE3C,eAAO,MAAM,YAAY;;iBACiB,MAAM,EAAE;;sBAAsC,MAAM,KAAK,IAAI;+EAuCrG,CAAA"}
@@ -1,22 +0,0 @@
1
- import { PartialElement } from '@furystack/shades';
2
- import { Theme } from '../services';
3
- export interface InputProps extends PartialElement<HTMLInputElement> {
4
- onTextChange?: (text: string) => void;
5
- labelTitle?: string;
6
- multiLine?: false;
7
- labelProps?: PartialElement<HTMLLabelElement>;
8
- autofocus?: boolean;
9
- }
10
- export interface TextAreaProps extends PartialElement<HTMLTextAreaElement> {
11
- labelTitle?: string;
12
- multiLine: true;
13
- labelProps?: PartialElement<HTMLLabelElement>;
14
- autofocus?: boolean;
15
- }
16
- export declare type TextInputProps = InputProps | TextAreaProps;
17
- export declare type TextInputState = {
18
- theme: Theme;
19
- value?: string;
20
- };
21
- export declare const Input: (props: TextInputProps, children: import("@furystack/shades").ChildrenList) => JSX.Element<any, any>;
22
- //# sourceMappingURL=input.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/components/input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,cAAc,EAAmB,MAAM,mBAAmB,CAAA;AAE1E,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAGnC,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAClE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACxE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,IAAI,CAAA;IACf,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,oBAAY,cAAc,GAAG,UAAU,GAAG,aAAa,CAAA;AAEvD,oBAAY,cAAc,GAAG;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,KAAK,sGAwHhB,CAAA"}