@measured/puck-plugin-heading-analyzer 0.13.2-canary.7d861f5 → 0.14.0-canary.0337c8d

Sign up to get free protection for your applications and to get access to all the features.
package/README.md CHANGED
@@ -31,4 +31,4 @@ export function Page() {
31
31
 
32
32
  ## License
33
33
 
34
- MIT © [Measured Co.](https://github.com/measuredco)
34
+ MIT © [Measured Corporation Ltd](https://measured.co)
package/dist/index.css CHANGED
@@ -1,60 +1,76 @@
1
- /* css-module:/home/runner/work/puck/puck/packages/core/components/SidebarSection/styles.module.css/#css-module-data */
2
- ._SidebarSection_170gs_1 {
1
+ /* ../core/components/SidebarSection/styles.module.css */
2
+ .styles_SidebarSection {
3
3
  display: flex;
4
4
  position: relative;
5
5
  flex-direction: column;
6
- color: black;
6
+ color: var(--puck-color-black);
7
7
  }
8
- ._SidebarSection_170gs_1:last-of-type {
8
+ .styles_SidebarSection:last-of-type {
9
9
  flex-grow: 1;
10
10
  }
11
- ._SidebarSection-title_170gs_12 {
12
- background: white;
11
+ .styles_SidebarSection-title {
12
+ background: var(--puck-color-white);
13
13
  padding: 16px;
14
- border-bottom: 1px solid var(--puck-color-grey-8);
15
- border-top: 1px solid var(--puck-color-grey-8);
14
+ border-bottom: 1px solid var(--puck-color-grey-09);
15
+ border-top: 1px solid var(--puck-color-grey-09);
16
16
  overflow-x: auto;
17
17
  }
18
- ._SidebarSection--noBorderTop_170gs_20 > ._SidebarSection-title_170gs_12 {
18
+ .styles_SidebarSection--noBorderTop > .styles_SidebarSection-title {
19
19
  border-top: 0px;
20
20
  }
21
- ._SidebarSection-content_170gs_24 {
21
+ .styles_SidebarSection-content {
22
22
  padding: 16px;
23
23
  }
24
- ._SidebarSection--noPadding_170gs_28 > ._SidebarSection-content_170gs_24 {
24
+ .styles_SidebarSection--noPadding > .styles_SidebarSection-content {
25
25
  padding: 0px;
26
26
  }
27
- ._SidebarSection--noPadding_170gs_28 > ._SidebarSection-content_170gs_24:last-child {
27
+ .styles_SidebarSection--noPadding > .styles_SidebarSection-content:last-child {
28
28
  padding-bottom: 4px;
29
29
  }
30
- ._SidebarSection_170gs_1:last-of-type ._SidebarSection-content_170gs_24 {
30
+ .styles_SidebarSection:last-of-type .styles_SidebarSection-content {
31
31
  border-bottom: none;
32
32
  flex-grow: 1;
33
33
  }
34
- ._SidebarSection-breadcrumbLabel_170gs_41 {
35
- color: var(--puck-color-azure-3);
34
+ .styles_SidebarSection-breadcrumbLabel {
35
+ background: none;
36
+ border: 0;
37
+ border-radius: 2px;
38
+ color: var(--puck-color-azure-04);
39
+ cursor: pointer;
40
+ font: inherit;
36
41
  flex-shrink: 0;
42
+ padding: 0;
43
+ transition: color 50ms ease-in;
37
44
  }
38
- ._SidebarSection-breadcrumbLabel_170gs_41:hover {
39
- color: var(--puck-color-azure-4);
40
- cursor: pointer;
41
- text-decoration: underline;
45
+ .styles_SidebarSection-breadcrumbLabel:focus-visible {
46
+ outline: 2px solid var(--puck-color-azure-05);
47
+ outline-offset: 2px;
48
+ }
49
+ @media (hover: hover) and (pointer: fine) {
50
+ .styles_SidebarSection-breadcrumbLabel:hover {
51
+ color: var(--puck-color-azure-03);
52
+ transition: none;
53
+ }
42
54
  }
43
- ._SidebarSection-breadcrumbs_170gs_52 {
55
+ .styles_SidebarSection-breadcrumbLabel:active {
56
+ color: var(--puck-color-azure-02);
57
+ transition: none;
58
+ }
59
+ .styles_SidebarSection-breadcrumbs {
44
60
  align-items: center;
45
61
  display: flex;
46
62
  gap: 4px;
47
63
  }
48
- ._SidebarSection-breadcrumb_170gs_41 {
64
+ .styles_SidebarSection-breadcrumb {
49
65
  align-items: center;
50
66
  display: flex;
51
67
  gap: 4px;
52
68
  }
53
- ._SidebarSection-heading_170gs_64 {
69
+ .styles_SidebarSection-heading {
54
70
  padding-right: 16px;
55
71
  }
56
- ._SidebarSection-loadingOverlay_170gs_68 {
57
- background: white;
72
+ .styles_SidebarSection-loadingOverlay {
73
+ background: var(--puck-color-white);
58
74
  display: flex;
59
75
  justify-content: center;
60
76
  align-items: center;
@@ -68,55 +84,54 @@
68
84
  opacity: 0.8;
69
85
  }
70
86
 
71
- /* css-module:/home/runner/work/puck/puck/packages/core/components/Heading/styles.module.css/#css-module-data */
72
- ._Heading_1bvy5_1 {
87
+ /* ../core/components/Heading/styles.module.css */
88
+ .styles_Heading {
73
89
  display: block;
74
90
  color: var(--puck-color-black);
75
- font-family: var(--puck-font-stack);
76
91
  font-weight: 700;
77
92
  margin: 0;
78
93
  }
79
- ._Heading_1bvy5_1 b {
94
+ .styles_Heading b {
80
95
  font-weight: 700;
81
96
  }
82
- ._Heading--xxxxl_1bvy5_13 {
97
+ .styles_Heading--xxxxl {
83
98
  font-size: var(--puck-font-size-xxxxl);
84
99
  letter-spacing: 0.08ch;
85
100
  font-weight: 800;
86
101
  }
87
- ._Heading--xxxl_1bvy5_19 {
102
+ .styles_Heading--xxxl {
88
103
  font-size: var(--puck-font-size-xxxl);
89
104
  }
90
- ._Heading--xxl_1bvy5_23 {
105
+ .styles_Heading--xxl {
91
106
  font-size: var(--puck-font-size-xxl);
92
107
  }
93
- ._Heading--xl_1bvy5_27 {
108
+ .styles_Heading--xl {
94
109
  font-size: var(--puck-font-size-xl);
95
110
  }
96
- ._Heading--l_1bvy5_31 {
111
+ .styles_Heading--l {
97
112
  font-size: var(--puck-font-size-l);
98
113
  }
99
- ._Heading--m_1bvy5_35 {
114
+ .styles_Heading--m {
100
115
  font-size: var(--puck-font-size-m);
101
116
  }
102
- ._Heading--s_1bvy5_39 {
117
+ .styles_Heading--s {
103
118
  font-size: var(--puck-font-size-s);
104
119
  }
105
- ._Heading--xs_1bvy5_43 {
120
+ .styles_Heading--xs {
106
121
  font-size: var(--puck-font-size-xs);
107
122
  }
108
123
 
109
- /* css-module:/home/runner/work/puck/puck/packages/core/components/OutlineList/styles.module.css/#css-module-data */
110
- ._OutlineList_1nwoz_1 {
111
- color: var(--puck-color-grey-2);
112
- font-family: var(--puck-font-stack);
124
+ /* ../core/components/OutlineList/styles.module.css */
125
+ .styles_OutlineList {
126
+ color: var(--puck-color-grey-03);
127
+ font-family: var(--puck-font-family);
113
128
  margin: 0;
114
129
  padding-left: 16px;
115
130
  position: relative;
116
131
  list-style: none;
117
132
  }
118
- ._OutlineList_1nwoz_1::before {
119
- background: var(--puck-color-grey-7);
133
+ .styles_OutlineList::before {
134
+ background: var(--puck-color-grey-08);
120
135
  position: absolute;
121
136
  left: -1px;
122
137
  top: 0px;
@@ -124,12 +139,12 @@
124
139
  height: calc(100% - 9px);
125
140
  content: "";
126
141
  }
127
- ._OutlineListItem_1nwoz_20 {
142
+ .styles_OutlineListItem {
128
143
  position: relative;
129
144
  margin-bottom: 4px;
130
145
  }
131
- ._OutlineListItem_1nwoz_20::before {
132
- background: var(--puck-color-grey-7);
146
+ .styles_OutlineListItem::before {
147
+ background: var(--puck-color-grey-08);
133
148
  position: absolute;
134
149
  left: -17px;
135
150
  top: 9px;
@@ -137,10 +152,24 @@
137
152
  height: 1px;
138
153
  content: "";
139
154
  }
140
- ._OutlineListItem--clickable_1nwoz_35:hover {
141
- color: var(--puck-color-blue);
155
+ .styles_OutlineListItem--clickable {
142
156
  cursor: pointer;
157
+ transition: color 50ms ease-in;
158
+ }
159
+ .styles_OutlineListItem--clickable:focus-visible {
160
+ outline: 2px solid var(--puck-color-azure-05);
161
+ outline-offset: 2px;
162
+ }
163
+ @media (hover: hover) and (pointer: fine) {
164
+ .styles_OutlineListItem--clickable:hover {
165
+ color: var(--puck-color-azure-04);
166
+ transition: none;
167
+ }
168
+ }
169
+ .styles_OutlineListItem--clickable:active {
170
+ color: var(--puck-color-azure-03);
171
+ transition: none;
143
172
  }
144
- ._OutlineListItem_1nwoz_20 > ._OutlineList_1nwoz_1 {
173
+ .styles_OutlineListItem > .styles_OutlineList {
145
174
  margin: 8px 0;
146
175
  }
package/dist/index.d.ts CHANGED
@@ -1,10 +1,23 @@
1
- import { ReactElement, ReactNode } from 'react';
1
+ import { ReactNode, ReactElement } from 'react';
2
2
 
3
3
  type ItemSelector = {
4
4
  index: number;
5
5
  zone?: string;
6
6
  };
7
7
 
8
+ type iconTypes = "Smartphone" | "Monitor" | "Tablet";
9
+ type Viewport = {
10
+ width: number;
11
+ height?: number | "auto";
12
+ label?: string;
13
+ icon?: iconTypes | ReactNode;
14
+ };
15
+
16
+ type FieldOption = {
17
+ label: string;
18
+ value: string | number | boolean;
19
+ };
20
+ type FieldOptions = Array<FieldOption> | ReadonlyArray<FieldOption>;
8
21
  type BaseField = {
9
22
  label?: string;
10
23
  };
@@ -13,23 +26,19 @@ type TextField = BaseField & {
13
26
  };
14
27
  type NumberField = BaseField & {
15
28
  type: "number";
29
+ min?: number;
30
+ max?: number;
16
31
  };
17
32
  type TextareaField = BaseField & {
18
33
  type: "textarea";
19
34
  };
20
35
  type SelectField = BaseField & {
21
36
  type: "select";
22
- options: {
23
- label: string;
24
- value: string | number | boolean;
25
- }[];
37
+ options: FieldOptions;
26
38
  };
27
39
  type RadioField = BaseField & {
28
40
  type: "radio";
29
- options: {
30
- label: string;
31
- value: string | number | boolean;
32
- }[];
41
+ options: FieldOptions;
33
42
  };
34
43
  type ArrayField<Props extends {
35
44
  [key: string]: any;
@@ -42,6 +51,8 @@ type ArrayField<Props extends {
42
51
  };
43
52
  defaultItemProps?: Props[0];
44
53
  getItemSummary?: (item: Props[0], index?: number) => string;
54
+ max?: number;
55
+ min?: number;
45
56
  };
46
57
  type ObjectField<Props extends {
47
58
  [key: string]: any;
@@ -50,7 +61,7 @@ type ObjectField<Props extends {
50
61
  }> = BaseField & {
51
62
  type: "object";
52
63
  objectFields: {
53
- [SubPropName in keyof Props[0]]: Field<Props[0][SubPropName]>;
64
+ [SubPropName in keyof Props]: Field<Props[SubPropName]>;
54
65
  };
55
66
  };
56
67
  type Adaptor<AdaptorParams = {}, TableShape extends Record<string, any> = {}, PropShape = TableShape> = {
@@ -78,11 +89,15 @@ type ExternalField<Props extends {
78
89
  placeholder?: string;
79
90
  fetchList: (params: {
80
91
  query: string;
92
+ filters: Record<string, any>;
81
93
  }) => Promise<any[] | null>;
82
94
  mapProp?: (value: any) => Props;
95
+ mapRow?: (value: any) => Record<string, string | number>;
83
96
  getItemSummary: (item: Props, index?: number) => string;
84
97
  showSearch?: boolean;
85
98
  initialQuery?: string;
99
+ filterFields?: Record<string, Field>;
100
+ initialFilters?: Record<string, any>;
86
101
  };
87
102
  type CustomField<Props extends {
88
103
  [key: string]: any;
@@ -123,6 +138,14 @@ type UiState = {
123
138
  expanded?: boolean;
124
139
  }>;
125
140
  isDragging: boolean;
141
+ viewports: {
142
+ current: {
143
+ width: number;
144
+ height: number | "auto";
145
+ };
146
+ controlsVisible: boolean;
147
+ options: Viewport[];
148
+ };
126
149
  };
127
150
 
128
151
  type InputProps<F = Field<any>> = {
@@ -140,7 +163,7 @@ type RenderFunc<Props extends {
140
163
  [key: string]: any;
141
164
  } = {
142
165
  children: ReactNode;
143
- }> = React.FunctionComponent<Props>;
166
+ }> = (props: Props) => ReactElement;
144
167
  declare const overrideKeys: readonly ["header", "headerActions", "fields", "fieldLabel", "components", "componentItem", "outline", "puck", "preview"];
145
168
  type OverrideKey = (typeof overrideKeys)[number];
146
169
  type OverridesGeneric<Shape extends {
@@ -170,7 +193,10 @@ type Overrides = OverridesGeneric<{
170
193
  className?: string;
171
194
  }>;
172
195
  components: RenderFunc;
173
- componentItem: RenderFunc;
196
+ componentItem: RenderFunc<{
197
+ children: ReactNode;
198
+ name: string;
199
+ }>;
174
200
  outline: RenderFunc;
175
201
  puck: RenderFunc;
176
202
  }>;